aboutsummaryrefslogtreecommitdiff
path: root/Configure
diff options
context:
space:
mode:
authorRichard Levitte <levitte@openssl.org>2018-03-07 22:44:59 +0100
committerRichard Levitte <levitte@openssl.org>2018-03-08 17:24:02 +0100
commit2ab92ae9dca7c4a9dc3b8468333b10aff7629c5a (patch)
tree8aa74fb30da8a2dce76828f648c6d04891b29f85 /Configure
parent72d7f221ee7a3909496c240bab85770b48b515dd (diff)
downloadopenssl-2ab92ae9dca7c4a9dc3b8468333b10aff7629c5a.zip
openssl-2ab92ae9dca7c4a9dc3b8468333b10aff7629c5a.tar.gz
openssl-2ab92ae9dca7c4a9dc3b8468333b10aff7629c5a.tar.bz2
config: Pass diverse flags to Configure via the environment
Passing flags "discovered" by 'config' on the command line to 'Configure' mixes them up with flags given by the user. That is contrary to their intention, so they need to be passed in a different manner. Enter the environment variables __CNF_CPPDEFINES, __CNF_CPPINCLUDES, __CNF_CPPFLAGS, __CNF_CFLAGS, __CNF_CXXFLAGS, __CNF_LDFLAGS, and __CNF_LDLIBS, initialised by 'config', and then used by Configure to initialise these %config values: defines, includes, cppflags, cflags, cxxflags, lflags, and ex_libs. Reviewed-by: Andy Polyakov <appro@openssl.org> (Merged from https://github.com/openssl/openssl/pull/5534)
Diffstat (limited to 'Configure')
-rwxr-xr-xConfigure9
1 files changed, 9 insertions, 0 deletions
diff --git a/Configure b/Configure
index 368b899..f0a88f8 100755
--- a/Configure
+++ b/Configure
@@ -584,6 +584,15 @@ my %target_attr_translate =(
rm => 'RM',
);
+# Initialisers coming from 'config' scripts
+$config{defines} = [ split(/$list_separator_re/, env('__CNF_CPPDEFINES')) ],
+$config{includes} = [ split(/$list_separator_re/, env('__CNF_CPPINCLUDES')) ],
+$config{cppflags} = [ env('__CNF_CPPFLAGS') || () ],
+$config{cflags} = [ env('__CNF_CFLAGS') || () ],
+$config{cxxflags} = [ env('__CNF_CXXFLAGS') || () ],
+$config{lflags} = [ env('__CNF_LDFLAGS') || () ],
+$config{ex_libs} = [ env('__CNF_LDLIBS') || () ],
+
$config{openssl_api_defines}=[];
$config{openssl_algorithm_defines}=[];
$config{openssl_thread_defines}=[];