# -*- Mode: perl -*-
%targets=(
- BASE => {
+ DEFAULTS => {
template => 1,
cflags => "",
defines => [],
- debug_cflags => "",
- debug_defines => [],
- release_cflags => "",
- release_defines => [],
thread_cflags => "",
thread_defines => [],
+ apps_aux_src => "",
cpuid_asm_src => "mem_clr.c",
+ uplink_aux_src => "",
bn_asm_src => "bn_asm.c",
ec_asm_src => "",
des_asm_src => "des_enc.c fcrypt_b.c",
unistd => "<unistd.h>",
shared_target => "",
shared_cflag => "",
+ shared_defines => [],
shared_ldflag => "",
+ shared_rcflag => "",
shared_extension => "",
+
build_scheme => "unixmake",
- build_file => "Makefile",
+ build_file => "Makefile",
+ },
+
+ BASE_common => {
+ template => 1,
+ defines =>
+ [ sub {
+ unless ($disabled{zlib}) {
+ if (defined($disabled{"zlib-dynamic"})) {
+ return "ZLIB";
+ } else {
+ return "ZLIB_SHARED";
+ }
+ }
+ return (); }
+ ],
+ },
+
+ BASE_unix => {
+ inherit_from => [ "BASE_common" ],
+ template => 1,
+
+ ex_libs =>
+ sub {
+ unless ($disabled{zlib}) {
+ if (defined($disabled{"zlib-dynamic"})) {
+ if (defined($withargs{zlib_lib})) {
+ return "-L".$withargs{zlib_lib}." -lz";
+ } else {
+ return "-lz";
+ }
+ }
+ }
+ return (); },
+
+ build_scheme => "unixmake",
+ build_file => "Makefile",
+ },
+
+ BASE_Windows => {
+ inherit_from => [ "BASE_common" ],
+ template => 1,
+
+ ex_libs =>
+ sub {
+ unless ($disabled{zlib}) {
+ if (defined($disabled{"zlib-dynamic"})) {
+ return "zlib1.lib";
+ }
+ }
+ return (); },
+
+ build_scheme => [ "mk1mf" ],
+ },
+
+ BASE_VMS => {
+ inherit_from => [ "BASE_common" ],
+ template => 1,
+
+ ex_libs =>
+ sub {
+ unless ($disabled{zlib}) {
+ if (defined($disabled{"zlib-dynamic"})) {
+ if (defined($withargs{zlib_lib})) {
+ return $withargs{zlib_lib}.'GNV$LIBZSHR.EXE/SHARED'
+ } else {
+ return 'GNV$LIBZSHR/SHARE';
+ }
+ }
+ }
+ return (); },
+
+ build_file => "descrip.mms",
+ build_scheme => [ "unified", "VMS" ],
+ },
+
+ uplink_common => {
+ template => 1,
+ apps_aux_src => add("../ms/applink.c"),
+ uplink_aux_src => add("../ms/uplink.c"),
+ shared_defines => add("OPENSSL_USE_APPLINK", { separator => undef }),
+ },
+ x86_uplink => {
+ inherit_from => [ "uplink_common" ],
+ template => 1,
+ uplink_aux_src => add("uplink-x86.s"),
+ },
+ x86_64_uplink => {
+ inherit_from => [ "uplink_common" ],
+ template => 1,
+ uplink_aux_src => add("uplink-x86_64.s"),
+ },
+ ia64_uplink => {
+ inherit_from => [ "uplink_common" ],
+ template => 1,
+ uplink_aux_src => add("uplink-ia64.s"),
},
x86_asm => {
sha1_asm_src => "sha1-sparcv9.S sha256-sparcv9.S sha512-sparcv9.S",
cmll_asm_src => "camellia.c cmll_misc.c cmll_cbc.c cmllt4-sparcv9.s",
modes_asm_src => "ghash-sparcv9.s",
- poly1305_obj => "poly1305-sparcv9.S",
+ poly1305_asm_src=> "poly1305-sparcv9.S",
perlasm_scheme => "void"
},
sparcv8_asm => {
cpuid_asm_src => "s390xcap.c s390xcpuid.s",
bn_asm_src => "asm/s390x.S s390x-mont.S s390x-gf2m.s",
aes_asm_src => "aes-s390x.S aes-ctr.fake aes-xts.fake",
- sha1_asm_src => "sha1-s390x.s sha256-s390x.s sha512-s390x.s",
+ sha1_asm_src => "sha1-s390x.S sha256-s390x.S sha512-s390x.S",
rc4_asm_src => "rc4-s390x.s",
- modes_asm_src => "ghash-s390x.s",
- chacha_asm_src => "chacha-s390x.o",
- poly1305_asm_src=> "poly1305-s390x.o",
+ modes_asm_src => "ghash-s390x.S",
+ chacha_asm_src => "chacha-s390x.S",
+ poly1305_asm_src=> "poly1305-s390x.S",
},
armv4_asm => {
template => 1,
aes_asm_src => "aes_cbc.c aes-armv4.S bsaes-armv7.S aesv8-armx.S",
sha1_asm_src => "sha1-armv4-large.S sha256-armv4.S sha512-armv4.S",
modes_asm_src => "ghash-armv4.S ghashv8-armx.S",
+ chacha_asm_src => "chacha-armv4.S",
+ poly1305_asm_src=> "poly1305-armv4.S",
perlasm_scheme => "void"
},
aarch64_asm => {
aes_asm_src => "aes_core.c aes_cbc.c aesv8-armx.S vpaes-armv8.S",
sha1_asm_src => "sha1-armv8.S sha256-armv8.S sha512-armv8.S",
modes_asm_src => "ghashv8-armx.S",
+ chacha_asm_src => "chacha-armv8.S",
+ poly1305_asm_src=> "poly1305-armv8.S",
},
parisc11_asm => {
template => 1,
aes_asm_src => "aes_core.c aes_cbc.c aes-ppc.s vpaes-ppc.s aesp8-ppc.s",
sha1_asm_src => "sha1-ppc.s sha256-ppc.s sha512-ppc.s sha256p8-ppc.s sha512p8-ppc.s",
modes_asm_src => "ghashp8-ppc.s",
+ chacha_asm_src => "chacha-ppc.s",
+ poly1305_asm_src=> "poly1305-ppc.s poly1305-ppcfp.s",
},
ppc32_asm => {
inherit_from => [ "ppc64_asm" ],