9fe2bb77c4
The "unified" build scheme revolves around small information files, build.info, which each describe their own bit of everything that needs to be built, using a mini-language described in Configurations/README. The information in build.info file contain references to source files and final result. Object files are not mentioned at all, they are simply from source files. Because of this, all the *_obj items in Configurations/*.conf are renamed to *_asm_src and the files listed in the values are change from object files to their corresponding source files. For the sake of the other build schemes, Configure generates corresponding *_obj entries in %target. Furthermore, the "unified" build scheme supports having a build directory tree separate from the source directry tree. All paths in a build.info file is assumed to be relative to its location, either within the source tree or within the build tree. Reviewed-by: Andy Polyakov <appro@openssl.org>
175 lines
5.9 KiB
Text
175 lines
5.9 KiB
Text
%targets=(
|
|
BASE => {
|
|
template => 1,
|
|
cpuid_asm_src => "mem_clr.c",
|
|
bn_asm_src => "bn_asm.c",
|
|
ec_asm_src => "",
|
|
des_asm_src => "des_enc.c fcrypt_b.c",
|
|
aes_asm_src => "aes_core.c aes_cbc.c",
|
|
bf_asm_src => "bf_enc.c",
|
|
md5_asm_src => "",
|
|
cast_asm_src => "c_enc.c",
|
|
rc4_asm_src => "rc4_enc.c rc4_skey.c",
|
|
rmd160_asm_src => "",
|
|
rc5_asm_src => "rc5_enc.c",
|
|
wp_asm_src => "wp_block.c",
|
|
cmll_asm_src => "camellia.c cmll_misc.c cmll_cbc.c",
|
|
modes_asm_src => "",
|
|
padlock_asm_src => "",
|
|
chacha_asm_src => "chacha_enc.c",
|
|
poly1305_asm_src => "",
|
|
|
|
unistd => "<unistd.h>",
|
|
shared_target => "",
|
|
shared_cflag => "",
|
|
shared_ldflag => "",
|
|
shared_extension => "",
|
|
build_scheme => "unixmake",
|
|
build_file => "Makefile",
|
|
},
|
|
|
|
x86_asm => {
|
|
template => 1,
|
|
cpuid_asm_src => "x86cpuid.s",
|
|
bn_asm_src => "bn-586.s co-586.s x86-mont.s x86-gf2m.s",
|
|
ec_asm_src => "ecp_nistz256.c ecp_nistz256-x86.s",
|
|
des_asm_src => "des-586.s crypt586.s",
|
|
aes_asm_src => "aes-586.s vpaes-x86.s aesni-x86.s",
|
|
bf_asm_src => "bf-586.s",
|
|
md5_asm_src => "md5-586.s",
|
|
cast_asm_src => "cast-586.s",
|
|
sha1_asm_src => "sha1-586.s sha256-586.s sha512-586.s",
|
|
rc4_asm_src => "rc4-586.s",
|
|
rmd160_asm_src => "rmd-586.s",
|
|
rc5_asm_src => "rc5-586.s",
|
|
wp_asm_src => "wp_block.c wp-mmx.s",
|
|
cmll_asm_src => "cmll-x86.s",
|
|
modes_asm_src => "ghash-x86.s",
|
|
padlock_asm_src => "e_padlock-x86.s",
|
|
},
|
|
x86_elf_asm => {
|
|
template => 1,
|
|
inherit_from => [ "x86_asm" ],
|
|
perlasm_scheme => "elf"
|
|
},
|
|
x86_64_asm => {
|
|
template => 1,
|
|
cpuid_asm_src => "x86_64cpuid.s",
|
|
bn_asm_src => "asm/x86_64-gcc.c x86_64-mont.s x86_64-mont5.s x86_64-gf2m.s rsaz_exp.c rsaz-x86_64.s rsaz-avx2.s",
|
|
ec_asm_src => "ecp_nistz256.c ecp_nistz256-x86_64.s",
|
|
aes_asm_src => "aes-x86_64.s vpaes-x86_64.s bsaes-x86_64.s aesni-x86_64.s aesni-sha1-x86_64.s aesni-sha256-x86_64.s aesni-mb-x86_64.s",
|
|
md5_asm_src => "md5-x86_64.s",
|
|
sha1_asm_src => "sha1-x86_64.s sha256-x86_64.s sha512-x86_64.s sha1-mb-x86_64.s sha256-mb-x86_64.s",
|
|
rc4_asm_src => "rc4-x86_64.s rc4-md5-x86_64.s",
|
|
wp_asm_src => "wp-x86_64.s",
|
|
cmll_asm_src => "cmll-x86_64.s cmll_misc.c",
|
|
modes_asm_src => "ghash-x86_64.s aesni-gcm-x86_64.s",
|
|
padlock_asm_src => "e_padlock-x86_64.s",
|
|
},
|
|
ia64_asm => {
|
|
template => 1,
|
|
cpuid_asm_src => "ia64cpuid.s",
|
|
bn_asm_src => "bn-ia64.s ia64-mont.s",
|
|
aes_asm_src => "aes_core.c aes_cbc.c aes-ia64.s",
|
|
md5_asm_src => "md5-ia64.s",
|
|
sha1_asm_src => "sha1-ia64.s sha256-ia64.s sha512-ia64.s",
|
|
rc4_asm_src => "rc4-ia64.s rc4_skey.s",
|
|
modes_asm_src => "ghash-ia64.s",
|
|
perlasm_scheme => "void"
|
|
},
|
|
sparcv9_asm => {
|
|
template => 1,
|
|
cpuid_asm_src => "sparcv9cap.s sparccpuid.s",
|
|
bn_asm_src => "bn-sparcv9.s sparcv9-mont.s sparcv9a-mont.s vis3-mont.s sparct4-mont.s sparcv9-gf2m.s",
|
|
ec_asm_src => "ecp_nistz256.c ecp_nistz256-sparcv9.s",
|
|
des_asm_src => "des_enc-sparc.s fcrypt_b.c dest4-sparcv9.s",
|
|
aes_asm_src => "aes_core.c aes_cbc.c aes-sparcv9.s aest4-sparcv9.s",
|
|
md5_asm_src => "md5-sparcv9.s",
|
|
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",
|
|
perlasm_scheme => "void"
|
|
},
|
|
sparcv8_asm => {
|
|
template => 1,
|
|
cpuid_asm_src => "",
|
|
bn_asm_src => "sparcv8.s",
|
|
des_asm_src => "des_enc-sparc.s fcrypt_b.c",
|
|
perlasm_scheme => "void"
|
|
},
|
|
alpha_asm => {
|
|
template => 1,
|
|
cpuid_asm_src => "alphacpuid.s",
|
|
bn_asm_src => "bn_asm.s alpha-mont.s",
|
|
sha1_asm_src => "sha1-alpha.s",
|
|
modes_asm_src => "ghash-alpha.s",
|
|
perlasm_scheme => "void"
|
|
},
|
|
mips32_asm => {
|
|
template => 1,
|
|
bn_asm_src => "bn-mips.s mips-mont.s",
|
|
aes_asm_src => "aes_cbc.c aes-mips.S",
|
|
sha1_asm_src => "sha1-mips.S sha256-mips.S",
|
|
},
|
|
mips64_asm => {
|
|
inherit_from => [ "mips32_asm" ],
|
|
template => 1,
|
|
sha1_asm_src => add("sha512-mips.S")
|
|
},
|
|
s390x_asm => {
|
|
template => 1,
|
|
cpuid_asm_src => "s390xcap.s s390xcpuid.s",
|
|
bn_asm_src => "bn-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",
|
|
rc4_asm_src => "rc4-s390x.s",
|
|
modes_asm_src => "ghash-s390x.s",
|
|
},
|
|
armv4_asm => {
|
|
template => 1,
|
|
cpuid_asm_src => "armcap.s armv4cpuid.s",
|
|
bn_asm_src => "bn_asm.s armv4-mont.s armv4-gf2m.s",
|
|
ec_asm_src => "ecp_nistz256.c ecp_nistz256-armv4.s",
|
|
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",
|
|
perlasm_scheme => "void"
|
|
},
|
|
aarch64_asm => {
|
|
template => 1,
|
|
cpuid_asm_src => "armcap.s arm64cpuid.s mem_clr.s",
|
|
ec_asm_src => "ecp_nistz256.c ecp_nistz256-armv8.s",
|
|
bn_asm_src => "bn_asm.s armv8-mont.s",
|
|
aes_asm_src => "aes_core.s aes_cbc.s aesv8-armx.s vpaes-armv8.s",
|
|
sha1_asm_src => "sha1-armv8.s sha256-armv8.s sha512-armv8.s",
|
|
modes_asm_src => "ghashv8-armx.s",
|
|
},
|
|
parisc11_asm => {
|
|
template => 1,
|
|
cpuid_asm_src => "pariscid.s",
|
|
bn_asm_src => "bn_asm.s parisc-mont.s",
|
|
aes_asm_src => "aes_core.c aes_cbc.c aes-parisc.s",
|
|
sha1_asm_src => "sha1-parisc.s sha256-parisc.s sha512-parisc.s",
|
|
rc4_asm_src => "rc4-parisc.s",
|
|
modes_asm_src => "ghash-parisc.s",
|
|
perlasm_scheme => "32"
|
|
},
|
|
parisc20_64_asm => {
|
|
template => 1,
|
|
inherit_from => [ "parisc11_asm" ],
|
|
perlasm_scheme => "64",
|
|
},
|
|
ppc64_asm => {
|
|
template => 1,
|
|
cpuid_asm_src => "ppccpuid.s ppccap.s",
|
|
bn_asm_src => "bn-ppc.s ppc-mont.s ppc64-mont.s",
|
|
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",
|
|
},
|
|
ppc32_asm => {
|
|
inherit_from => [ "ppc64_asm" ],
|
|
template => 1
|
|
},
|
|
);
|