X-Git-Url: https://git.openssl.org/?p=openssl.git;a=blobdiff_plain;f=Configurations%2F10-main.conf;h=08bb839de5e4cf3e19796c7d1293928ded37909d;hp=ca53937bdde88a1ae866bb79d716bf03bca25729;hb=f720194cbc174806fe1ce9c349edd249d8076c02;hpb=3a1548643f3f9ef6905e31bcde8603a525789abc diff --git a/Configurations/10-main.conf b/Configurations/10-main.conf index ca53937bdd..08bb839de5 100644 --- a/Configurations/10-main.conf +++ b/Configurations/10-main.conf @@ -53,14 +53,14 @@ my $vc_wince_info = {}; sub vc_wince_info { unless (%$vc_wince_info) { # sanity check - $die->('%OSVERSION% is not defined') if (!defined($ENV{'OSVERSION'})); - $die->('%PLATFORM% is not defined') if (!defined($ENV{'PLATFORM'})); - $die->('%TARGETCPU% is not defined') if (!defined($ENV{'TARGETCPU'})); + $die->('%OSVERSION% is not defined') if (!defined(env('OSVERSION'))); + $die->('%PLATFORM% is not defined') if (!defined(env('PLATFORM'))); + $die->('%TARGETCPU% is not defined') if (!defined(env('TARGETCPU'))); # # Idea behind this is to mimic flags set by eVC++ IDE... # - my $wcevers = $ENV{'OSVERSION'}; # WCENNN + my $wcevers = env('OSVERSION'); # WCENNN my $wcevernum; my $wceverdotnum; if ($wcevers =~ /^WCE([1-9])([0-9]{2})$/) { @@ -74,12 +74,12 @@ sub vc_wince_info { my $wcecdefs = "-D_WIN32_WCE=$wcevernum -DUNDER_CE=$wcevernum"; # -D_WIN32_WCE=NNN my $wcelflag = "/subsystem:windowsce,$wceverdotnum"; # ...,N.NN - my $wceplatf = $ENV{'PLATFORM'}; + my $wceplatf = env('PLATFORM'); $wceplatf =~ tr/a-z0-9 /A-Z0-9_/; $wcecdefs .= " -DWCE_PLATFORM_$wceplatf"; - my $wcetgt = $ENV{'TARGETCPU'}; # just shorter name... + my $wcetgt = env('TARGETCPU'); # just shorter name... SWITCH: for($wcetgt) { /^X86/ && do { $wcecdefs.=" -Dx86 -D_X86_ -D_i386_ -Di_386_"; $wcelflag.=" /machine:X86"; last; }; @@ -144,7 +144,7 @@ sub vms_info { return $vms_info; } -%targets = ( +my %targets = ( #### Basic configs that should work on any 32-bit box "gcc" => { @@ -208,7 +208,7 @@ sub vms_info { # gcc shared build with Sun C. Given that gcc generates faster # code [thanks to inline assembler], I would actually recommend # to consider using gcc shared build even with vendor compiler:-) - # + # -- inherit_from => [ "solaris-common", asm("x86_64_asm") ], cc => "gcc", cflags => add_before(picker(default => "-m64 -Wall -DL_ENDIAN", @@ -218,7 +218,7 @@ sub vms_info { bn_ops => "SIXTY_FOUR_BIT_LONG", perlasm_scheme => "elf", shared_cflag => "-fPIC", - shared_ldflag => "-m64 -shared -static-libgcc", + shared_ldflag => "-shared -static-libgcc", multilib => "/64", }, @@ -243,12 +243,12 @@ sub vms_info { release => "-xO5 -xdepend -xbuiltin"), threads("-D_REENTRANT")), thread_scheme => "pthreads", - lflags => add("-xarch=generic64",threads("-mt")), + lflags => add(threads("-mt")), ex_libs => add(threads("-lpthread")), bn_ops => "SIXTY_FOUR_BIT_LONG", perlasm_scheme => "elf", shared_cflag => "-KPIC", - shared_ldflag => "-xarch=generic64 -G -dy -z text", + shared_ldflag => "-G -dy -z text", multilib => "/64", }, @@ -278,7 +278,6 @@ sub vms_info { inherit_from => [ "solaris-sparcv9-gcc" ], cflags => sub { my $f=join(" ",@_); $f =~ s/\-m32/-m64/; $f; }, bn_ops => "BN_LLONG RC4_CHAR", - shared_ldflag => "-m64 -shared", multilib => "/64", }, @@ -311,9 +310,7 @@ sub vms_info { "solaris64-sparcv9-cc" => { inherit_from => [ "solaris-sparcv7-cc", asm("sparcv9_asm") ], cflags => add_before("-xarch=v9"), - lflags => add_before("-xarch=v9"), bn_ops => "BN_LLONG RC4_CHAR", - shared_ldflag => "-xarch=v9 -G -dy -z text", multilib => "/64", }, @@ -332,7 +329,6 @@ sub vms_info { perlasm_scheme => "n32", dso_scheme => "dlfcn", shared_target => "irix-shared", - shared_ldflag => "-mabi=n32", shared_extension => ".so.\$(SHLIB_VERSION_NUMBER)", multilib => "32", }, @@ -349,7 +345,6 @@ sub vms_info { perlasm_scheme => "n32", dso_scheme => "dlfcn", shared_target => "irix-shared", - shared_ldflag => "-n32", shared_extension => ".so.\$(SHLIB_VERSION_NUMBER)", multilib => "32", }, @@ -367,7 +362,6 @@ sub vms_info { perlasm_scheme => "64", dso_scheme => "dlfcn", shared_target => "irix-shared", - shared_ldflag => "-mabi=64", shared_extension => ".so.\$(SHLIB_VERSION_NUMBER)", multilib => "64", }, @@ -384,7 +378,6 @@ sub vms_info { perlasm_scheme => "64", dso_scheme => "dlfcn", shared_target => "irix-shared", - shared_ldflag => "-64", shared_extension => ".so.\$(SHLIB_VERSION_NUMBER)", multilib => "64", }, @@ -416,7 +409,6 @@ sub vms_info { # targets; b) performance-critical 32-bit assembly modules implement # even PA-RISC 2.0-specific code paths, which are chosen at run-time, # thus adequate performance is provided even with PA-RISC 1.1 build. -# "hpux-parisc-gcc" => { inherit_from => [ "BASE_unix" ], cc => "gcc", @@ -456,9 +448,6 @@ sub vms_info { }, # More attempts at unified 10.X and 11.X targets for HP C compiler. - # - # Chris Ruemmler - # Kevin Steves "hpux-parisc-cc" => { inherit_from => [ "BASE_unix" ], cc => "cc", @@ -493,7 +482,7 @@ sub vms_info { dso_scheme => "dlfcn", shared_target => "hpux-shared", shared_cflag => "+Z", - shared_ldflag => "+DD64 -b", + shared_ldflag => "-b", shared_extension => ".sl.\$(SHLIB_VERSION_NUMBER)", multilib => "/pa20_64", }, @@ -512,12 +501,10 @@ sub vms_info { dso_scheme => "dlfcn", shared_target => "hpux-shared", shared_cflag => "+Z", - shared_ldflag => "+DD32 -b", + shared_ldflag => "-b", shared_extension => ".so.\$(SHLIB_VERSION_NUMBER)", multilib => "/hpux32", }, - # Frank Geurts has patiently assisted - # with debugging of the following config. "hpux64-ia64-cc" => { inherit_from => [ "BASE_unix", asm("ia64_asm") ], cc => "cc", @@ -531,7 +518,7 @@ sub vms_info { dso_scheme => "dlfcn", shared_target => "hpux-shared", shared_cflag => "+Z", - shared_ldflag => "+DD64 -b", + shared_ldflag => "-b", shared_extension => ".so.\$(SHLIB_VERSION_NUMBER)", multilib => "/hpux64", }, @@ -566,7 +553,7 @@ sub vms_info { dso_scheme => "dlfcn", shared_target => "hpux-shared", shared_cflag => "-fpic", - shared_ldflag => "-mlp64 -shared", + shared_ldflag => "-shared", shared_extension => ".so.\$(SHLIB_VERSION_NUMBER)", multilib => "/hpux64", }, @@ -647,14 +634,12 @@ sub vms_info { inherit_from => [ "linux-generic64", asm("ppc64_asm") ], cflags => add("-m64 -DB_ENDIAN"), perlasm_scheme => "linux64", - shared_ldflag => add("-m64"), multilib => "64", }, "linux-ppc64le" => { inherit_from => [ "linux-generic64", asm("ppc64_asm") ], cflags => add("-m64 -DL_ENDIAN"), perlasm_scheme => "linux64le", - shared_ldflag => add("-m64"), }, "linux-armv4" => { @@ -701,7 +686,6 @@ sub vms_info { cflags => add("-mabi=ilp32"), bn_ops => "SIXTY_FOUR_BIT RC4_CHAR", perlasm_scheme => "linux64", - shared_ldflag => add("-mabi=ilp32"), }, "linux-mips32" => { @@ -710,7 +694,6 @@ sub vms_info { inherit_from => [ "linux-generic32", asm("mips32_asm") ], cflags => add("-mabi=32 -DBN_DIV3W"), perlasm_scheme => "o32", - shared_ldflag => add("-mabi=32"), }, # mips32 and mips64 below refer to contemporary MIPS Architecture # specifications, MIPS32 and MIPS64, rather than to kernel bitness. @@ -719,14 +702,12 @@ sub vms_info { cflags => add("-mabi=n32 -DBN_DIV3W"), bn_ops => "SIXTY_FOUR_BIT RC4_CHAR", perlasm_scheme => "n32", - shared_ldflag => add("-mabi=n32"), multilib => "32", }, "linux64-mips64" => { inherit_from => [ "linux-generic64", asm("mips64_asm") ], cflags => add("-mabi=64 -DBN_DIV3W"), perlasm_scheme => "64", - shared_ldflag => add("-mabi=64"), multilib => "64", }, @@ -757,7 +738,6 @@ sub vms_info { release => "-fomit-frame-pointer")), bn_ops => "BN_LLONG", perlasm_scheme => "elf", - shared_ldflag => add("-m32"), }, "linux-x86-clang" => { inherit_from => [ "linux-x86" ], @@ -770,7 +750,6 @@ sub vms_info { cflags => add("-m64 -DL_ENDIAN"), bn_ops => "SIXTY_FOUR_BIT_LONG", perlasm_scheme => "elf", - shared_ldflag => add("-m64"), multilib => "64", }, "linux-x86_64-clang" => { @@ -784,7 +763,6 @@ sub vms_info { cflags => add("-mx32 -DL_ENDIAN"), bn_ops => "SIXTY_FOUR_BIT", perlasm_scheme => "elf32", - shared_ldflag => add("-mx32"), multilib => "x32", }, @@ -797,7 +775,6 @@ sub vms_info { inherit_from => [ "linux-generic64", asm("s390x_asm") ], cflags => add("-m64 -DB_ENDIAN"), perlasm_scheme => "64", - shared_ldflag => add("-m64"), multilib => "64", }, "linux32-s390x" => { @@ -821,13 +798,10 @@ sub vms_info { cflags => add("-m31 -Wa,-mzarch -DB_ENDIAN"), bn_asm_src => sub { my $r=join(" ",@_); $r=~s|asm/s390x\.S|bn_asm.c|; $r; }, perlasm_scheme => "31", - shared_ldflag => add("-m31"), multilib => "/highgprs", }, #### SPARC Linux setups - # Ray Miller has - # patiently assisted with debugging of following two configs. "linux-sparcv8" => { inherit_from => [ "linux-generic32", asm("sparcv8_asm") ], cflags => add("-mcpu=v8 -DB_ENDIAN -DBN_DIV2W"), @@ -837,14 +811,12 @@ sub vms_info { # but -Wa,-Av8plus should do the trick no matter what. inherit_from => [ "linux-generic32", asm("sparcv9_asm") ], cflags => add("-m32 -mcpu=ultrasparc -Wa,-Av8plus -DB_ENDIAN -DBN_DIV2W"), - shared_ldflag => add("-m32"), }, "linux64-sparcv9" => { # GCC 3.1 is a requirement inherit_from => [ "linux-generic64", asm("sparcv9_asm") ], cflags => add("-m64 -mcpu=ultrasparc -DB_ENDIAN"), bn_ops => "BN_LLONG RC4_CHAR", - shared_ldflag => add("-m64"), multilib => "64", }, @@ -1101,8 +1073,7 @@ sub vms_info { # and './Configure unixware-7 -Kpentium_pro' or whatever appropriate. # Note that not all targets include assembler support. Mostly because of # lack of motivation to support out-of-date platforms with out-of-date -# compiler drivers and assemblers. Tim Rice has -# patiently assisted to debug most of it. +# compiler drivers and assemblers. # # UnixWare 2.0x fails destest with -O. "unixware-2.0" => { @@ -1149,7 +1120,7 @@ sub vms_info { shared_cflag => "-fPIC", shared_extension => ".so.\$(SHLIB_VERSION_NUMBER)", }, -# SCO 5 - Ben Laurie says the -O breaks the SCO cc. +# SCO 5 - Ben Laurie says the -O breaks the SCO cc. "sco5-cc" => { inherit_from => [ "BASE_unix", asm("x86_elf_asm") ], cc => "cc", @@ -1212,7 +1183,7 @@ sub vms_info { perlasm_scheme => "aix64", dso_scheme => "dlfcn", shared_target => "aix-shared", - shared_ldflag => "-maix64 -shared -static-libgcc -Wl,-G", + shared_ldflag => "-shared -static-libgcc -Wl,-G", shared_extension => ".so.\$(SHLIB_VERSION_NUMBER)", arflags => "-X64", }, @@ -1230,7 +1201,7 @@ sub vms_info { perlasm_scheme => "aix32", dso_scheme => "dlfcn", shared_target => "aix-shared", - shared_ldflag => "-q32 -G", + shared_ldflag => "-G", shared_extension => ".so.\$(SHLIB_VERSION_NUMBER)", arflags => "-X 32", }, @@ -1248,7 +1219,7 @@ sub vms_info { perlasm_scheme => "aix64", dso_scheme => "dlfcn", shared_target => "aix-shared", - shared_ldflag => "-q64 -G", + shared_ldflag => "-G", shared_extension => ".so.\$(SHLIB_VERSION_NUMBER)", arflags => "-X 64", }, @@ -1263,18 +1234,6 @@ sub vms_info { thread_scheme => "(unknown)", }, -# OS/390 Unix an EBCDIC-based Unix system on IBM mainframe -# You need to compile using the c89.sh wrapper in the tools directory, because the -# IBM compiler does not like the -L switch after any object modules. -# - "OS390-Unix" => { - inherit_from => [ "BASE_unix" ], - cc => "c89.sh", - cflags => "-O -DB_ENDIAN -DCHARSET_EBCDIC -DNO_SYS_PARAM_H -D_ALL_SOURCE", - bn_ops => "THIRTY_TWO_BIT RC4_CHAR", - thread_scheme => "(unknown)", - }, - #### Visual C targets # # Win64 targets, WIN64I denotes IA-64 and WIN64A - AMD64 @@ -1290,7 +1249,7 @@ sub vms_info { inherit_from => [ "BASE_Windows" ], template => 1, cc => "cl", - cflags => "-W3 -wd4090 -Gs0 -GF -Gy -nologo -DOPENSSL_SYS_WIN32 -DWIN32_LEAN_AND_MEAN -DL_ENDIAN -D_CRT_SECURE_NO_DEPRECATE", + cflags => "-W3 -wd4090 -Gs0 -GF -Gy -nologo -DOPENSSL_SYS_WIN32 -DWIN32_LEAN_AND_MEAN -DL_ENDIAN -D_CRT_SECURE_NO_DEPRECATE -D_WINSOCK_DEPRECATED_NO_WARNINGS", defines => add(sub { my @defs = (); unless ($disabled{"zlib-dynamic"}) { my $zlib = @@ -1389,6 +1348,7 @@ sub vms_info { # configure with 'perl Configure VC-WIN32 -DUNICODE -D_UNICODE' inherit_from => [ "VC-noCE-common", asm("x86_asm"), sub { $disabled{shared} ? () : "uplink_common" } ], + cflags => add("-WX"), as => sub { vc_win32_info()->{as} }, asflags => sub { vc_win32_info()->{asflags} }, asoutflag => sub { vc_win32_info()->{asoutflag} }, @@ -1415,9 +1375,9 @@ sub vms_info { picker(default => combine('/W3 /WX /GF /Gy /nologo -DUNICODE -D_UNICODE -DOPENSSL_SYS_WINCE -DWIN32_LEAN_AND_MEAN -DL_ENDIAN -DDSO_WIN32 -DNO_CHMOD -DOPENSSL_SMALL_FOOTPRINT', sub { vc_wince_info()->{cflags}; }, - sub { defined($ENV{'WCECOMPAT'}) + sub { defined(env('WCECOMPAT')) ? '-I$(WCECOMPAT)/include' : (); }, - sub { defined($ENV{'PORTSDK_LIBPATH'}) + sub { defined(env('PORTSDK_LIBPATH')) ? '-I$(PORTSDK_LIBPATH)/../../include' : (); }, sub { `cl 2>&1` =~ /Version ([0-9]+)\./ && $1>=14 ? ($disabled{shared} ? " /MT" : " /MD") @@ -1426,7 +1386,7 @@ sub vms_info { release => "/O1i"), lflags => combine("/nologo /opt:ref", sub { vc_wince_info()->{lflags}; }, - sub { defined($ENV{PORTSDK_LIBPATH}) + sub { defined(env('PORTSDK_LIBPATH')) ? "/entry:mainCRTstartup" : (); }), sys_id => "WINCE", bn_ops => "BN_LLONG EXPORT_VAR_AS_FN", @@ -1434,9 +1394,9 @@ sub vms_info { my @ex_libs = (); push @ex_libs, 'ws2.lib' unless $disabled{sock}; push @ex_libs, 'crypt32.lib'; - if (defined($ENV{WCECOMPAT})) { + if (defined(env('WCECOMPAT'))) { my $x = '$(WCECOMPAT)/lib'; - if (-f "$x/$ENV{TARGETCPU}/wcecompatex.lib") { + if (-f "$x/env('TARGETCPU')/wcecompatex.lib") { $x .= '/$(TARGETCPU)/wcecompatex.lib'; } else { $x .= '/wcecompatex.lib'; @@ -1444,9 +1404,9 @@ sub vms_info { push @ex_libs, $x; } push @ex_libs, '$(PORTSDK_LIBPATH)/portlib.lib' - if (defined($ENV{'PORTSDK_LIBPATH'})); + if (defined(env('PORTSDK_LIBPATH'))); push @ex_libs, ' /nodefaultlib coredll.lib corelibc.lib' - if ($ENV{'TARGETCPU'} eq "X86"); + if (env('TARGETCPU') eq "X86"); return @ex_libs; }), build_scheme => add("VC-WCE", { separator => undef }), @@ -1537,7 +1497,6 @@ sub vms_info { dso_scheme => "dlfcn", shared_target => "cygwin-shared", shared_cflag => "-D_WINDLL", - shared_ldflag => "-shared", shared_extension => ".dll", }, "Cygwin-x86_64" => { @@ -1553,7 +1512,6 @@ sub vms_info { dso_scheme => "dlfcn", shared_target => "cygwin-shared", shared_cflag => "-D_WINDLL", - shared_ldflag => "-shared", shared_extension => ".dll", }, # Backward compatibility for those using this target @@ -1592,7 +1550,6 @@ sub vms_info { ranlib => "ranlib -c", shared_target => "darwin-shared", shared_cflag => "-fPIC", - shared_ldflag => "-dynamiclib", shared_extension => ".\$(SHLIB_VERSION_NUMBER).dylib", }, # Option "freeze" such as -std=gnu9x can't negatively interfere @@ -1602,14 +1559,12 @@ sub vms_info { inherit_from => [ "darwin-common", asm("ppc32_asm") ], cflags => add("-arch ppc -std=gnu9x -DB_ENDIAN -Wa,-force_cpusubtype_ALL"), perlasm_scheme => "osx32", - shared_ldflag => "-arch ppc -dynamiclib", }, "darwin64-ppc-cc" => { inherit_from => [ "darwin-common", asm("ppc64_asm") ], cflags => add("-arch ppc64 -std=gnu9x -DB_ENDIAN"), bn_ops => "SIXTY_FOUR_BIT_LONG RC4_CHAR", perlasm_scheme => "osx64", - shared_ldflag => "-arch ppc64 -dynamiclib", }, "darwin-i386-cc" => { inherit_from => [ "darwin-common", asm("x86_asm") ], @@ -1617,14 +1572,12 @@ sub vms_info { release => "-fomit-frame-pointer")), bn_ops => "BN_LLONG RC4_INT", perlasm_scheme => "macosx", - shared_ldflag => "-arch i386 -dynamiclib", }, "darwin64-x86_64-cc" => { inherit_from => [ "darwin-common", asm("x86_64_asm") ], cflags => add("-arch x86_64 -DL_ENDIAN -Wall"), bn_ops => "SIXTY_FOUR_BIT_LONG", perlasm_scheme => "macosx", - shared_ldflag => "-arch x86_64 -dynamiclib", }, #### iPhoneOS/iOS @@ -1746,35 +1699,29 @@ sub vms_info { #### uClinux "uClinux-dist" => { inherit_from => [ "BASE_unix" ], - cc => "$ENV{'CC'}", - cflags => combine("\$(CFLAGS)", - threads("-D_REENTRANT")), - plib_lflags => "\$(LDFLAGS)", + cc => sub { env('CC') }, + cflags => combine(threads("-D_REENTRANT")), ex_libs => add("\$(LDLIBS)"), bn_ops => "BN_LLONG", thread_scheme => "pthreads", - dso_scheme => "$ENV{'LIBSSL_dlfcn'}", + dso_scheme => sub { env('LIBSSL_dlfcn') }, shared_target => "linux-shared", shared_cflag => "-fPIC", - shared_ldflag => "-shared", shared_extension => ".so.\$(SHLIB_VERSION_NUMBER)", - ranlib => "$ENV{'RANLIB'}", + ranlib => sub { env('RANLIB') }, }, "uClinux-dist64" => { inherit_from => [ "BASE_unix" ], - cc => "$ENV{'CC'}", - cflags => combine("\$(CFLAGS)", - threads("-D_REENTRANT")), - plib_lflags => "\$(LDFLAGS)", + cc => sub { env('CC') }, + cflags => combine(threads("-D_REENTRANT")), ex_libs => add("\$(LDLIBS)"), bn_ops => "SIXTY_FOUR_BIT_LONG", thread_scheme => "pthreads", - dso_scheme => "$ENV{'LIBSSL_dlfcn'}", + dso_scheme => sub { env('LIBSSL_dlfcn') }, shared_target => "linux-shared", shared_cflag => "-fPIC", - shared_ldflag => "-shared", shared_extension => ".so.\$(SHLIB_VERSION_NUMBER)", - ranlib => "$ENV{'RANLIB'}", + ranlib => sub { env('RANLIB') }, }, ##### VMS