ex_libs => add("-lsocket -lnsl -ldl"),
dso_scheme => "dlfcn",
thread_scheme => "pthreads",
+ },
+#### Solaris common with Sun C setups
+ "solaris-common-cc" => {
+ inherit_from => [ "solaris-common" ],
+ template => 1,
shared_target => "solaris",
shared_ldflag => "-Wl,-Bsymbolic",
shared_defflag => "-Wl,-M,",
shared_sonameflag=> "-Wl,-h,",
},
+#### Solaris common with GNU C setups
+ "solaris-common-gcc" => {
+ inherit_from => [ "solaris-common" ],
+ template => 1,
+ shared_target => "solaris-gcc", # The rest is on shared_info.pl
+ },
#### Solaris x86 with GNU C setups
"solaris-x86-gcc" => {
# NB. GNU C has to be configured to use GNU assembler, and not
# /usr/ccs/bin/as. Failure to comply will result in compile
# failures [at least] in 32-bit build.
- inherit_from => [ "solaris-common" ],
+ inherit_from => [ "solaris-common-gcc" ],
CC => "gcc",
CFLAGS => add_before(picker(default => "-Wall",
debug => "-O0 -g",
# code [thanks to inline assembler], I would actually recommend
# to consider using gcc shared build even with vendor compiler:-)
# -- <appro@openssl.org>
- inherit_from => [ "solaris-common" ],
+ inherit_from => [ "solaris-common-gcc" ],
CC => "gcc",
CFLAGS => add_before(picker(default => "-Wall",
debug => "-O0 -g",
# primarily because vendor assembler can't assemble our modules
# with -KPIC flag. As result it, assembly support, was not even
# available as option. But its lack means lack of side-channel
- # resistant code, which is incompatible with security by todays
+ # resistant code, which is incompatible with security by today's
# standards. Fortunately gcc is readily available prepackaged
# option, which we can firmly point at...
#
# Consider switching to solaris64-x86_64-gcc even here...
#
"solaris64-x86_64-cc" => {
- inherit_from => [ "solaris-common" ],
+ inherit_from => [ "solaris-common-cc" ],
CC => "cc",
CFLAGS => add_before(picker(debug => "-g",
release => "-xO5 -xdepend -xbuiltin")),
#### SPARC Solaris with GNU C setups
"solaris-sparcv7-gcc" => {
- inherit_from => [ "solaris-common" ],
+ inherit_from => [ "solaris-common-gcc" ],
CC => "gcc",
CFLAGS => add_before(picker(default => "-Wall",
debug => "-O0 -g",
# SC4.2 is ok, better than gcc even on bn as long as you tell it -xarch=v8
# SC5.0 note: Compiler common patch 107357-01 or later is required!
"solaris-sparcv7-cc" => {
- inherit_from => [ "solaris-common" ],
+ inherit_from => [ "solaris-common-cc" ],
CC => "cc",
CFLAGS => add_before(picker(debug => "-g",
release => "-xO5 -xdepend")),
# 32-bit message digests. (For the moment of this writing) HP C
# doesn't seem to "digest" too many local variables (they make "him"
# chew forever:-). For more details look-up MD32_XARRAY comment in
-# crypto/sha/sha_lcl.h.
+# crypto/sha/sha_local.h.
# - originally there were 32-bit hpux-parisc2-* targets. They were
# scrapped, because a) they were not interchangeable with other 32-bit
# targets; b) performance-critical 32-bit assembly modules implement
inherit_from => [ "linux-generic32" ],
cflags => add("-mabi=n32"),
cxxflags => add("-mabi=n32"),
- bn_ops => "SIXTY_FOUR_BIT RC4_CHAR",
+ bn_ops => "RC4_CHAR",
asm_arch => 'mips64',
perlasm_scheme => "n32",
multilib => "32",
CFLAGS => add(picker(release => "-fomit-frame-pointer")),
lib_cppflags => add("-DL_ENDIAN"),
bn_ops => "BN_LLONG",
- shared_target => "bsd-shared",
asm_arch => 'x86',
perlasm_scheme => "a.out",
},
shared_cflag => "-fPIC",
},
- "nextstep" => {
- inherit_from => [ "BASE_unix" ],
- CC => "cc",
- CFLAGS => "-O -Wall",
- unistd => "<libc.h>",
- bn_ops => "BN_LLONG",
- thread_scheme => "(unknown)",
- },
- "nextstep3.3" => {
- inherit_from => [ "BASE_unix" ],
- CC => "cc",
- CFLAGS => "-O3 -Wall",
- unistd => "<libc.h>",
- bn_ops => "BN_LLONG",
- thread_scheme => "(unknown)",
- },
-
#### SCO/Caldera targets.
#
# Originally we had like unixware-*, unixware-*-pentium, unixware-*-p6, etc.
module_ldflags => "-Wl,-G,-bsymbolic,-bnoentry",
shared_ldflag => "-Wl,-G,-bsymbolic,-bnoentry",
shared_defflag => "-Wl,-bE:",
+ shared_fipsflag => "-Wl,-binitfini:init:cleanup",
perl_platform => 'AIX',
},
"aix-gcc" => {
CFLAGS => picker(debug => "-O0 -g",
release => "-O"),
cflags => add(threads("-pthread")),
- ex_libs => threads("-pthread"),
+ ex_libs => add(threads("-pthread")),
bn_ops => "BN_LLONG RC4_CHAR",
asm_arch => 'ppc32',
perlasm_scheme => "aix32",
CFLAGS => picker(debug => "-O0 -g",
release => "-O"),
cflags => combine("-maix64", threads("-pthread")),
- ex_libs => threads("-pthread"),
+ ex_libs => add(threads("-pthread")),
bn_ops => "SIXTY_FOUR_BIT_LONG RC4_CHAR",
asm_arch => 'ppc64',
perlasm_scheme => "aix64",
cflags => combine("-q32 -qmaxmem=16384 -qro -qroconst",
threads("-qthreaded")),
cppflags => threads("-D_THREAD_SAFE"),
- ex_libs => threads("-lpthreads"),
+ ex_libs => add(threads("-lpthreads")),
bn_ops => "BN_LLONG RC4_CHAR",
asm_arch => 'ppc32',
perlasm_scheme => "aix32",
cflags => combine("-q64 -qmaxmem=16384 -qro -qroconst",
threads("-qthreaded")),
cppflags => threads("-D_THREAD_SAFE"),
- ex_libs => threads("-lpthreads"),
+ ex_libs => add(threads("-lpthreads")),
bn_ops => "SIXTY_FOUR_BIT_LONG RC4_CHAR",
asm_arch => 'ppc64',
perlasm_scheme => "aix64",
shared_target => "win-shared", # meaningless except it gives Configure a hint
thread_scheme => "winthreads",
dso_scheme => "win32",
- bn_ops => "EXPORT_VAR_AS_FN",
perl_platform => 'Windows::MSVC',
# additional parameter to build_scheme denotes install-path "flavour"
build_scheme => add("VC-common", { separator => undef }),
},
"VC-WIN32" => {
inherit_from => [ "VC-noCE-common" ],
- CFLAGS => add("/WX"),
AS => sub { vc_win32_info()->{AS} },
ASFLAGS => sub { vc_win32_info()->{ASFLAGS} },
asoutflag => sub { vc_win32_info()->{asoutflag} },
threads("-D_MT")),
lib_cppflags => "-DL_ENDIAN",
ex_libs => add("-lws2_32 -lgdi32 -lcrypt32"),
- bn_ops => "EXPORT_VAR_AS_FN",
thread_scheme => "winthreads",
dso_scheme => "win32",
shared_target => "mingw-shared",
lib_cppflags => "-DL_ENDIAN",
sys_id => "UEFI",
},
+ "UEFI-x86" => {
+ inherit_from => [ "UEFI" ],
+ asm_arch => 'x86',
+ perlasm_scheme => "win32n",
+ },
+ "UEFI-x86_64" => {
+ inherit_from => [ "UEFI" ],
+ asm_arch => 'x86_64',
+ perlasm_scheme => "nasm",
+ },
#### UWIN
"UWIN" => {
# Option "freeze" such as -std=gnu9x can't negatively interfere
# with future defaults for below two targets, because MacOS X
# for PPC has no future, it was discontinued by vendor in 2009.
- "darwin-ppc-cc" => {
+ "darwin-ppc-cc" => { inherit_from => [ "darwin-ppc" ] }, # Historic alias
+ "darwin-ppc" => {
inherit_from => [ "darwin-common" ],
cflags => add("-arch ppc -std=gnu9x -Wa,-force_cpusubtype_ALL"),
lib_cppflags => add("-DB_ENDIAN"),
asm_arch => 'ppc32',
perlasm_scheme => "osx32",
},
- "darwin64-ppc-cc" => {
+ "darwin64-ppc-cc" => { inherit_from => [ "darwin64-ppc" ] }, # Historic alias
+ "darwin64-ppc" => {
inherit_from => [ "darwin-common" ],
cflags => add("-arch ppc64 -std=gnu9x"),
lib_cppflags => add("-DB_ENDIAN"),
asm_arch => 'ppc64',
perlasm_scheme => "osx64",
},
- "darwin-i386-cc" => {
+ "darwin-i386-cc" => { inherit_from => [ "darwin-i386" ] }, # Historic alias
+ "darwin-i386" => {
inherit_from => [ "darwin-common" ],
CFLAGS => add(picker(release => "-fomit-frame-pointer")),
cflags => add("-arch i386"),
asm_arch => 'x86',
perlasm_scheme => "macosx",
},
- "darwin64-x86_64-cc" => {
+ "darwin64-x86_64-cc" => { inherit_from => [ "darwin64-x86_64" ] }, # Historic alias
+ "darwin64-x86_64" => {
inherit_from => [ "darwin-common" ],
CFLAGS => add("-Wall"),
cflags => add("-arch x86_64"),
debug => "/DEBUG/TRACEBACK",
release => "/NODEBUG/NOTRACEBACK"),
# Because of dso_cflags below, we can't set the generic |cflags| here,
- # as it can't be overriden, so we set separate C flags for libraries
+ # as it can't be overridden, so we set separate C flags for libraries
# and binaries instead.
bin_cflags => add("/NAMES=(AS_IS,SHORTENED)/EXTERN_MODEL=STRICT_REFDEF"),
lib_cflags => add("/NAMES=(AS_IS,SHORTENED)/EXTERN_MODEL=STRICT_REFDEF"),