From 007c80eae4e1f36e28a9645c485c14ec61baed4e Mon Sep 17 00:00:00 2001 From: Richard Levitte Date: Thu, 17 Mar 2016 23:01:21 +0100 Subject: [PATCH] Remove the remainder of util/mk1mf.pl and companion scripts This removes all scripts that deal with MINFO as well, since that's only used by mk1mf. Reviewed-by: Andy Polyakov --- CHANGES | 3 + Configure | 6 - Makefile.in | 10 +- apps/Makefile.in | 3 - crypto/Makefile.in | 4 - crypto/aes/Makefile.in | 3 - crypto/asn1/Makefile.in | 3 - crypto/async/Makefile.in | 3 - crypto/bf/Makefile.in | 3 - crypto/bio/Makefile.in | 3 - crypto/blake2/Makefile.in | 3 - crypto/bn/Makefile.in | 3 - crypto/buffer/Makefile.in | 3 - crypto/camellia/Makefile.in | 3 - crypto/cast/Makefile.in | 3 - crypto/chacha/Makefile.in | 3 - crypto/cmac/Makefile.in | 3 - crypto/cms/Makefile.in | 3 - crypto/comp/Makefile.in | 3 - crypto/conf/Makefile.in | 3 - crypto/ct/Makefile.in | 3 - crypto/des/Makefile.in | 3 - crypto/dh/Makefile.in | 3 - crypto/dsa/Makefile.in | 3 - crypto/dso/Makefile.in | 3 - crypto/ec/Makefile.in | 3 - crypto/engine/Makefile.in | 3 - crypto/err/Makefile.in | 3 - crypto/evp/Makefile.in | 3 - crypto/hmac/Makefile.in | 3 - crypto/idea/Makefile.in | 3 - crypto/kdf/Makefile.in | 3 - crypto/lhash/Makefile.in | 3 - crypto/md2/Makefile.in | 3 - crypto/md4/Makefile.in | 3 - crypto/md5/Makefile.in | 3 - crypto/mdc2/Makefile.in | 3 - crypto/modes/Makefile.in | 3 - crypto/objects/Makefile.in | 3 - crypto/ocsp/Makefile.in | 3 - crypto/pem/Makefile.in | 3 - crypto/pkcs12/Makefile.in | 3 - crypto/pkcs7/Makefile.in | 3 - crypto/poly1305/Makefile.in | 3 - crypto/rand/Makefile.in | 3 - crypto/rc2/Makefile.in | 3 - crypto/rc4/Makefile.in | 3 - crypto/rc5/Makefile.in | 3 - crypto/ripemd/Makefile.in | 3 - crypto/rsa/Makefile.in | 3 - crypto/seed/Makefile.in | 3 - crypto/sha/Makefile.in | 3 - crypto/srp/Makefile.in | 3 - crypto/stack/Makefile.in | 3 - crypto/ts/Makefile.in | 3 - crypto/txt_db/Makefile.in | 3 - crypto/ui/Makefile.in | 3 - crypto/whrlpool/Makefile.in | 3 - crypto/x509/Makefile.in | 3 - crypto/x509v3/Makefile.in | 3 - engines/Makefile.in | 4 - engines/afalg/Makefile.in | 3 - ssl/Makefile.in | 3 - test/Makefile.in | 3 - tools/Makefile.in | 3 - util/files.pl | 67 -- util/mk1mf.pl | 1458 ----------------------------------- util/mkfiles.pl | 150 ---- util/pl/Mingw32.pl | 104 --- util/pl/linux.pl | 104 --- util/pl/unix.pl | 210 ----- 71 files changed, 4 insertions(+), 2296 deletions(-) delete mode 100755 util/files.pl delete mode 100755 util/mk1mf.pl delete mode 100755 util/mkfiles.pl delete mode 100644 util/pl/Mingw32.pl delete mode 100644 util/pl/linux.pl delete mode 100644 util/pl/unix.pl diff --git a/CHANGES b/CHANGES index 08cd0a373f..d3d4ca9668 100644 --- a/CHANGES +++ b/CHANGES @@ -4,6 +4,9 @@ Changes between 1.0.2g and 1.1.0 [xx XXX xxxx] + *) Removed the mk1mf build scripts. + [Richard Levitte] + *) Headers are now wrapped, if necessary, with OPENSSL_NO_xxx, so it is always safe to #include a header now. [Rich Salz] diff --git a/Configure b/Configure index 67c401369c..e7f8fcde91 100755 --- a/Configure +++ b/Configure @@ -1778,7 +1778,6 @@ print OUT "1;\n"; close(OUT); -print "IsMK1MF =", ($builder eq "mk1mf" ? "yes" : "no"), "\n"; print "CC =$target{cc}\n"; print "CFLAG =$target{cflags} $config{cflags}\n"; print "SHARED_CFLAG =$target{shared_cflag}\n"; @@ -1870,11 +1869,6 @@ my %builders = ( run_dofile("util/domd", "util/domd.in"); chmod 0755, "util/domd"; }, - mk1mf => sub { - my $platform = shift; - # The only reason we do this is to have something to build MINFO from - build_Makefile(); - }, ); $builders{$builder}->($builder_platform, @builder_opts); diff --git a/Makefile.in b/Makefile.in index d101df1ca8..baaaf84432 100644 --- a/Makefile.in +++ b/Makefile.in @@ -465,19 +465,11 @@ clean: libclean rm -f speed.* .pure rm -f $(TARFILE) -makefile.one: files - $(PERL) util/mk1mf.pl >makefile.one; \ - sh util/do_ms.sh - -files: - $(PERL) $(TOP)/util/files.pl Makefile > $(TOP)/MINFO - @set -e; target=files; $(RECURSIVE_BUILD_CMD) - gentests: @(cd test && echo "generating dummy tests (if needed)..." && \ $(CLEARENV) && $(MAKE) -e $(BUILDENV) TESTS='$(TESTS)' OPENSSL_DEBUG_MEMORY=on generate ); -test: files tests +test: tests tests: build_tests @(cd test && echo "testing..." && \ diff --git a/apps/Makefile.in b/apps/Makefile.in index 6e8bdf5882..064496b6d4 100644 --- a/apps/Makefile.in +++ b/apps/Makefile.in @@ -75,9 +75,6 @@ scripts: $(SCRIPTS) openssl-vms.cnf: openssl.cnf $(PERL) $(TOP)/VMS/VMSify-conf.pl < openssl.cnf > openssl-vms.cnf -files: - $(PERL) $(TOP)/util/files.pl Makefile >> $(TOP)/MINFO - install: @[ -n "$(INSTALLTOP)" ] # should be set by top Makefile... @set -e; for i in $(EXE); \ diff --git a/crypto/Makefile.in b/crypto/Makefile.in index 9f26ef007a..60304acbc2 100644 --- a/crypto/Makefile.in +++ b/crypto/Makefile.in @@ -89,10 +89,6 @@ armv4cpuid.S: armv4cpuid.pl; $(PERL) armv4cpuid.pl $(PERLASM_SCHEME) $@ subdirs: @target=all; $(RECURSIVE_MAKE) -files: - $(PERL) $(TOP)/util/files.pl "CPUID_OBJ=$(CPUID_OBJ)" Makefile >> $(TOP)/MINFO - @target=files; $(RECURSIVE_MAKE) - # lib: $(LIB): are splitted to avoid end-less loop lib: $(LIB) @touch lib diff --git a/crypto/aes/Makefile.in b/crypto/aes/Makefile.in index 46566c3608..0dc96e4a3d 100644 --- a/crypto/aes/Makefile.in +++ b/crypto/aes/Makefile.in @@ -97,9 +97,6 @@ aes-armv4.o: aes-armv4.S bsaes-%.S: asm/bsaes-%.pl; $(PERL) $< $(PERLASM_SCHEME) $@ bsaes-armv7.o: bsaes-armv7.S -files: - $(PERL) $(TOP)/util/files.pl "AES_ENC=$(AES_ENC)" Makefile >> $(TOP)/MINFO - depend: $(TOP)/util/domd $(CFLAG) $(INCLUDES) -- $(PROGS) $(LIBSRC) diff --git a/crypto/asn1/Makefile.in b/crypto/asn1/Makefile.in index 86f805bc6f..fd8ffcfd99 100644 --- a/crypto/asn1/Makefile.in +++ b/crypto/asn1/Makefile.in @@ -68,9 +68,6 @@ lib: $(LIBOBJ) $(RANLIB) $(LIB) || echo Never mind. @touch lib -files: - $(PERL) $(TOP)/util/files.pl Makefile >> $(TOP)/MINFO - depend: $(TOP)/util/domd $(CFLAG) $(INCLUDES) -- $(PROGS) $(LIBSRC) diff --git a/crypto/async/Makefile.in b/crypto/async/Makefile.in index 97b5385c08..aa85749899 100644 --- a/crypto/async/Makefile.in +++ b/crypto/async/Makefile.in @@ -36,9 +36,6 @@ lib: $(LIBOBJ) $(RANLIB) $(LIB) || echo Never mind. @touch lib -files: - $(PERL) $(TOP)/util/files.pl Makefile >> $(TOP)/MINFO - links: @$(PERL) $(TOP)/util/mklink.pl ../../include/openssl $(EXHEADER) @$(PERL) $(TOP)/util/mklink.pl ../../test $(TEST) diff --git a/crypto/bf/Makefile.in b/crypto/bf/Makefile.in index 4a3d726e5d..a41b9d1969 100644 --- a/crypto/bf/Makefile.in +++ b/crypto/bf/Makefile.in @@ -42,9 +42,6 @@ lib: $(LIBOBJ) bf-586.s: asm/bf-586.pl ../perlasm/x86asm.pl ../perlasm/cbc.pl $(PERL) asm/bf-586.pl $(PERLASM_SCHEME) $(CFLAGS) $(PROCESSOR) $@ -files: - $(PERL) $(TOP)/util/files.pl Makefile >> $(TOP)/MINFO - depend: $(TOP)/util/domd $(CFLAG) $(INCLUDES) -- $(PROGS) $(LIBSRC) diff --git a/crypto/bio/Makefile.in b/crypto/bio/Makefile.in index 2bf8601ee8..12cf6c6792 100644 --- a/crypto/bio/Makefile.in +++ b/crypto/bio/Makefile.in @@ -46,9 +46,6 @@ lib: $(LIBOBJ) $(RANLIB) $(LIB) || echo Never mind. @touch lib -files: - $(PERL) $(TOP)/util/files.pl Makefile >> $(TOP)/MINFO - depend: $(TOP)/util/domd $(CFLAG) $(INCLUDES) -- $(PROGS) $(LIBSRC) diff --git a/crypto/blake2/Makefile.in b/crypto/blake2/Makefile.in index 452d1ea1e0..ebfaa045b2 100644 --- a/crypto/blake2/Makefile.in +++ b/crypto/blake2/Makefile.in @@ -30,9 +30,6 @@ lib: $(LIBOBJ) $(RANLIB) $(LIB) || echo Never mind. @touch lib -files: - $(PERL) $(TOP)/util/files.pl Makefile >> $(TOP)/MINFO - update: depend depend: diff --git a/crypto/bn/Makefile.in b/crypto/bn/Makefile.in index eb610e715c..420eebbc87 100644 --- a/crypto/bn/Makefile.in +++ b/crypto/bn/Makefile.in @@ -130,9 +130,6 @@ armv4-mont.o: armv4-mont.S armv4-gf2m.o: armv4-gf2m.S armv8-mont.o: armv8-mont.S -files: - $(PERL) $(TOP)/util/files.pl Makefile >> $(TOP)/MINFO - div: rm -f a.out gcc -I.. -g div.c ../../libcrypto.a diff --git a/crypto/buffer/Makefile.in b/crypto/buffer/Makefile.in index 09b3488f04..97e1094ddb 100644 --- a/crypto/buffer/Makefile.in +++ b/crypto/buffer/Makefile.in @@ -34,9 +34,6 @@ lib: $(LIBOBJ) $(RANLIB) $(LIB) || echo Never mind. @touch lib -files: - $(PERL) $(TOP)/util/files.pl Makefile >> $(TOP)/MINFO - depend: $(TOP)/util/domd $(CFLAG) $(INCLUDES) -- $(PROGS) $(LIBSRC) diff --git a/crypto/camellia/Makefile.in b/crypto/camellia/Makefile.in index cb62c91cb3..5a806e26fd 100644 --- a/crypto/camellia/Makefile.in +++ b/crypto/camellia/Makefile.in @@ -48,9 +48,6 @@ cmll-x86_64.s: asm/cmll-x86_64.pl cmllt4-sparcv9.S: asm/cmllt4-sparcv9.pl ../perlasm/sparcv9_modes.pl $(PERL) asm/cmllt4-sparcv9.pl $(PERLASM_SCHEME) $@ -files: - $(PERL) $(TOP)/util/files.pl Makefile >> $(TOP)/MINFO - depend: $(TOP)/util/domd $(CFLAG) $(INCLUDES) -- $(PROGS) $(LIBSRC) diff --git a/crypto/cast/Makefile.in b/crypto/cast/Makefile.in index f1ad0c7f3e..218c480d1a 100644 --- a/crypto/cast/Makefile.in +++ b/crypto/cast/Makefile.in @@ -42,9 +42,6 @@ lib: $(LIBOBJ) cast-586.s: asm/cast-586.pl ../perlasm/x86asm.pl ../perlasm/cbc.pl $(PERL) asm/cast-586.pl $(PERLASM_SCHEME) $(CLAGS) $(PROCESSOR) $@ -files: - $(PERL) $(TOP)/util/files.pl Makefile >> $(TOP)/MINFO - depend: $(TOP)/util/domd $(CFLAG) $(INCLUDES) -- $(PROGS) $(LIBSRC) diff --git a/crypto/chacha/Makefile.in b/crypto/chacha/Makefile.in index e728b4d93b..067fbed428 100644 --- a/crypto/chacha/Makefile.in +++ b/crypto/chacha/Makefile.in @@ -48,9 +48,6 @@ chacha-%.S: asm/chacha-%.pl; $(PERL) $< $(PERLASM_SCHEME) $@ chacha-armv4.o: chacha-armv4.S chacha-armv8.o: chacha-armv8.S -files: - $(PERL) $(TOP)/util/files.pl Makefile >> $(TOP)/MINFO - depend: $(TOP)/util/domd $(CFLAG) $(INCLUDES) -- $(PROGS) $(LIBSRC) diff --git a/crypto/cmac/Makefile.in b/crypto/cmac/Makefile.in index 5abc139068..1d6f0bd52c 100644 --- a/crypto/cmac/Makefile.in +++ b/crypto/cmac/Makefile.in @@ -34,9 +34,6 @@ lib: $(LIBOBJ) $(RANLIB) $(LIB) || echo Never mind. @touch lib -files: - $(PERL) $(TOP)/util/files.pl Makefile >> $(TOP)/MINFO - depend: $(TOP)/util/domd $(CFLAG) $(INCLUDES) -- $(PROGS) $(LIBSRC) diff --git a/crypto/cms/Makefile.in b/crypto/cms/Makefile.in index cf074eaa81..19a50b21e7 100644 --- a/crypto/cms/Makefile.in +++ b/crypto/cms/Makefile.in @@ -40,9 +40,6 @@ lib: $(LIBOBJ) $(RANLIB) $(LIB) || echo Never mind. @touch lib -files: - $(PERL) $(TOP)/util/files.pl Makefile >> $(TOP)/MINFO - depend: $(TOP)/util/domd $(CFLAG) $(INCLUDES) -- $(PROGS) $(LIBSRC) diff --git a/crypto/comp/Makefile.in b/crypto/comp/Makefile.in index 24c1231fcc..0673d469d9 100644 --- a/crypto/comp/Makefile.in +++ b/crypto/comp/Makefile.in @@ -37,9 +37,6 @@ lib: $(LIBOBJ) $(RANLIB) $(LIB) || echo Never mind. @touch lib -files: - $(PERL) $(TOP)/util/files.pl Makefile >> $(TOP)/MINFO - depend: $(TOP)/util/domd $(CFLAG) $(INCLUDES) -- $(LIBSRC) diff --git a/crypto/conf/Makefile.in b/crypto/conf/Makefile.in index e1bae369c2..5acaa1c403 100644 --- a/crypto/conf/Makefile.in +++ b/crypto/conf/Makefile.in @@ -37,9 +37,6 @@ lib: $(LIBOBJ) $(RANLIB) $(LIB) || echo Never mind. @touch lib -files: - $(PERL) $(TOP)/util/files.pl Makefile >> $(TOP)/MINFO - depend: $(TOP)/util/domd $(CFLAG) $(INCLUDES) -- $(LIBSRC) diff --git a/crypto/ct/Makefile.in b/crypto/ct/Makefile.in index 0daec36544..794efbc6d7 100644 --- a/crypto/ct/Makefile.in +++ b/crypto/ct/Makefile.in @@ -36,9 +36,6 @@ lib: $(LIBOBJ) $(RANLIB) $(LIB) || echo Never mind. @touch lib -files: - $(PERL) $(TOP)/util/files.pl Makefile >> $(TOP)/MINFO - depend: $(TOP)/util/domd $(CFLAG) $(INCLUDES) -- $(PROGS) $(LIBSRC) diff --git a/crypto/des/Makefile.in b/crypto/des/Makefile.in index 74c5862ab2..5f87f22bf7 100644 --- a/crypto/des/Makefile.in +++ b/crypto/des/Makefile.in @@ -63,9 +63,6 @@ des-586.s: asm/des-586.pl ../perlasm/x86asm.pl ../perlasm/cbc.pl crypt586.s: asm/crypt586.pl ../perlasm/x86asm.pl ../perlasm/cbc.pl $(PERL) asm/crypt586.pl $(PERLASM_SCHEME) $(CFLAGS) $@ -files: - $(PERL) $(TOP)/util/files.pl Makefile >> $(TOP)/MINFO - depend: $(TOP)/util/domd $(CFLAG) $(INCLUDES) -- $(PROGS) $(LIBSRC) diff --git a/crypto/dh/Makefile.in b/crypto/dh/Makefile.in index 9ac52eb1b4..fa2d769691 100644 --- a/crypto/dh/Makefile.in +++ b/crypto/dh/Makefile.in @@ -36,9 +36,6 @@ lib: $(LIBOBJ) $(RANLIB) $(LIB) || echo Never mind. @touch lib -files: - $(PERL) $(TOP)/util/files.pl Makefile >> $(TOP)/MINFO - depend: $(TOP)/util/domd $(CFLAG) $(INCLUDES) -- $(PROGS) $(LIBSRC) diff --git a/crypto/dsa/Makefile.in b/crypto/dsa/Makefile.in index a22dfa32b5..9f38d4eef5 100644 --- a/crypto/dsa/Makefile.in +++ b/crypto/dsa/Makefile.in @@ -36,9 +36,6 @@ lib: $(LIBOBJ) $(RANLIB) $(LIB) || echo Never mind. @touch lib -files: - $(PERL) $(TOP)/util/files.pl Makefile >> $(TOP)/MINFO - depend: $(TOP)/util/domd $(CFLAG) $(INCLUDES) -- $(PROGS) $(LIBSRC) diff --git a/crypto/dso/Makefile.in b/crypto/dso/Makefile.in index 58d0974507..8c517febce 100644 --- a/crypto/dso/Makefile.in +++ b/crypto/dso/Makefile.in @@ -36,9 +36,6 @@ lib: $(LIBOBJ) $(RANLIB) $(LIB) || echo Never mind. @touch lib -files: - $(PERL) $(TOP)/util/files.pl Makefile >> $(TOP)/MINFO - depend: $(TOP)/util/domd $(CFLAG) $(INCLUDES) -- $(PROGS) $(LIBSRC) diff --git a/crypto/ec/Makefile.in b/crypto/ec/Makefile.in index 4203b70f2e..cc5e4b671f 100644 --- a/crypto/ec/Makefile.in +++ b/crypto/ec/Makefile.in @@ -64,9 +64,6 @@ ecp_nistz256-%.S: asm/ecp_nistz256-%.pl; $(PERL) $< $(PERLASM_SCHEME) $@ ecp_nistz256-armv4.o: ecp_nistz256-armv4.S ecp_nistz256-armv8.o: ecp_nistz256-armv8.S -files: - $(PERL) $(TOP)/util/files.pl Makefile >> $(TOP)/MINFO - depend: $(TOP)/util/domd $(CFLAG) $(INCLUDES) -- $(PROGS) $(LIBSRC) diff --git a/crypto/engine/Makefile.in b/crypto/engine/Makefile.in index 8435e7576c..9f4edc6a4c 100644 --- a/crypto/engine/Makefile.in +++ b/crypto/engine/Makefile.in @@ -44,9 +44,6 @@ lib: $(LIBOBJ) $(RANLIB) $(LIB) || echo Never mind. @touch lib -files: - $(PERL) $(TOP)/util/files.pl Makefile >> $(TOP)/MINFO - depend: $(TOP)/util/domd $(CFLAG) $(INCLUDES) -- $(PROGS) $(LIBSRC) diff --git a/crypto/err/Makefile.in b/crypto/err/Makefile.in index f0051e8546..c12ea3ffd8 100644 --- a/crypto/err/Makefile.in +++ b/crypto/err/Makefile.in @@ -34,9 +34,6 @@ lib: $(LIBOBJ) $(RANLIB) $(LIB) || echo Never mind. @touch lib -files: - $(PERL) $(TOP)/util/files.pl Makefile >> $(TOP)/MINFO - depend: $(TOP)/util/domd $(CFLAG) $(INCLUDES) -- $(PROGS) $(LIBSRC) diff --git a/crypto/evp/Makefile.in b/crypto/evp/Makefile.in index 5b24ae5909..15080d018c 100644 --- a/crypto/evp/Makefile.in +++ b/crypto/evp/Makefile.in @@ -59,9 +59,6 @@ lib: $(LIBOBJ) $(RANLIB) $(LIB) || echo Never mind. @touch lib -files: - $(PERL) $(TOP)/util/files.pl Makefile >> $(TOP)/MINFO - depend: $(TOP)/util/domd $(CFLAG) $(INCLUDES) -- $(LIBSRC) diff --git a/crypto/hmac/Makefile.in b/crypto/hmac/Makefile.in index ab8acab143..2da801ccda 100644 --- a/crypto/hmac/Makefile.in +++ b/crypto/hmac/Makefile.in @@ -34,9 +34,6 @@ lib: $(LIBOBJ) $(RANLIB) $(LIB) || echo Never mind. @touch lib -files: - $(PERL) $(TOP)/util/files.pl Makefile >> $(TOP)/MINFO - depend: $(TOP)/util/domd $(CFLAG) $(INCLUDES) -- $(PROGS) $(LIBSRC) diff --git a/crypto/idea/Makefile.in b/crypto/idea/Makefile.in index b3aafcad79..61ab62b713 100644 --- a/crypto/idea/Makefile.in +++ b/crypto/idea/Makefile.in @@ -34,9 +34,6 @@ lib: $(LIBOBJ) $(RANLIB) $(LIB) || echo Never mind. @touch lib -files: - $(PERL) $(TOP)/util/files.pl Makefile >> $(TOP)/MINFO - depend: $(TOP)/util/domd $(CFLAG) $(INCLUDES) -- $(PROGS) $(LIBSRC) diff --git a/crypto/kdf/Makefile.in b/crypto/kdf/Makefile.in index a1e9584435..5ab2cbfe54 100644 --- a/crypto/kdf/Makefile.in +++ b/crypto/kdf/Makefile.in @@ -34,9 +34,6 @@ lib: $(LIBOBJ) $(RANLIB) $(LIB) || echo Never mind. @touch lib -files: - $(PERL) $(TOP)/util/files.pl Makefile >> $(TOP)/MINFO - tags: ctags $(SRC) diff --git a/crypto/lhash/Makefile.in b/crypto/lhash/Makefile.in index ff9000102c..9b9281f8ab 100644 --- a/crypto/lhash/Makefile.in +++ b/crypto/lhash/Makefile.in @@ -34,9 +34,6 @@ lib: $(LIBOBJ) $(RANLIB) $(LIB) || echo Never mind. @touch lib -files: - $(PERL) $(TOP)/util/files.pl Makefile >> $(TOP)/MINFO - depend: $(TOP)/util/domd $(CFLAG) $(INCLUDES) -- $(PROGS) $(LIBSRC) diff --git a/crypto/md2/Makefile.in b/crypto/md2/Makefile.in index 2692884a24..16bfea7bab 100644 --- a/crypto/md2/Makefile.in +++ b/crypto/md2/Makefile.in @@ -34,9 +34,6 @@ lib: $(LIBOBJ) $(RANLIB) $(LIB) || echo Never mind. @touch lib -files: - $(PERL) $(TOP)/util/files.pl Makefile >> $(TOP)/MINFO - depend: $(TOP)/util/domd $(CFLAG) $(INCLUDES) -- $(PROGS) $(LIBSRC) diff --git a/crypto/md4/Makefile.in b/crypto/md4/Makefile.in index b45b6ce64f..f63c611dae 100644 --- a/crypto/md4/Makefile.in +++ b/crypto/md4/Makefile.in @@ -35,9 +35,6 @@ lib: $(LIBOBJ) $(RANLIB) $(LIB) || echo Never mind. @touch lib -files: - $(PERL) $(TOP)/util/files.pl Makefile >> $(TOP)/MINFO - depend: $(TOP)/util/domd $(CFLAG) $(INCLUDES) -- $(PROGS) $(LIBSRC) diff --git a/crypto/md5/Makefile.in b/crypto/md5/Makefile.in index 9c3fb1f857..48ddab350b 100644 --- a/crypto/md5/Makefile.in +++ b/crypto/md5/Makefile.in @@ -52,9 +52,6 @@ md5-ia64.s: asm/md5-ia64.S md5-sparcv9.S: asm/md5-sparcv9.pl $(PERL) asm/md5-sparcv9.pl $(PERLASM_SCHEME) $@ -files: - $(PERL) $(TOP)/util/files.pl Makefile >> $(TOP)/MINFO - depend: $(TOP)/util/domd $(CFLAG) $(INCLUDES) -- $(PROGS) $(LIBSRC) diff --git a/crypto/mdc2/Makefile.in b/crypto/mdc2/Makefile.in index 3c2275b581..2f2ccf9e3f 100644 --- a/crypto/mdc2/Makefile.in +++ b/crypto/mdc2/Makefile.in @@ -34,9 +34,6 @@ lib: $(LIBOBJ) $(RANLIB) $(LIB) || echo Never mind. @touch lib -files: - $(PERL) $(TOP)/util/files.pl Makefile >> $(TOP)/MINFO - depend: $(TOP)/util/domd $(CFLAG) $(INCLUDES) -- $(PROGS) $(LIBSRC) diff --git a/crypto/modes/Makefile.in b/crypto/modes/Makefile.in index 581896d2ad..22ab8b9b0e 100644 --- a/crypto/modes/Makefile.in +++ b/crypto/modes/Makefile.in @@ -67,9 +67,6 @@ ghash-%.S: asm/ghash-%.pl; $(PERL) $< $(PERLASM_SCHEME) $@ ghash-armv4.o: ghash-armv4.S ghashv8-armx.o: ghashv8-armx.S -files: - $(PERL) $(TOP)/util/files.pl Makefile >> $(TOP)/MINFO - depend: $(TOP)/util/domd $(CFLAG) $(INCLUDES) -- $(PROGS) $(LIBSRC) diff --git a/crypto/objects/Makefile.in b/crypto/objects/Makefile.in index 64d138b2cf..f6c9f0a4fc 100644 --- a/crypto/objects/Makefile.in +++ b/crypto/objects/Makefile.in @@ -47,9 +47,6 @@ obj_xref.h: objxref.pl obj_xref.txt obj_mac.num $(PERL) objxref.pl obj_mac.num obj_xref.txt > obj_xref.h @sleep 1; touch obj_xref.h; sleep 1 -files: - $(PERL) $(TOP)/util/files.pl Makefile >> $(TOP)/MINFO - generate: obj_dat.h ../../include/openssl/obj_mac.h obj_xref.h depend: diff --git a/crypto/ocsp/Makefile.in b/crypto/ocsp/Makefile.in index 5ce7d88e02..0f8ae43065 100644 --- a/crypto/ocsp/Makefile.in +++ b/crypto/ocsp/Makefile.in @@ -37,9 +37,6 @@ lib: $(LIBOBJ) $(RANLIB) $(LIB) || echo Never mind. @touch lib -files: - $(PERL) $(TOP)/util/files.pl Makefile >> $(TOP)/MINFO - depend: $(TOP)/util/domd $(CFLAG) $(INCLUDES) -- $(LIBSRC) diff --git a/crypto/pem/Makefile.in b/crypto/pem/Makefile.in index a5222975ba..fab36638ba 100644 --- a/crypto/pem/Makefile.in +++ b/crypto/pem/Makefile.in @@ -37,9 +37,6 @@ lib: $(LIBOBJ) $(RANLIB) $(LIB) || echo Never mind. @touch lib -files: - $(PERL) $(TOP)/util/files.pl Makefile >> $(TOP)/MINFO - depend: $(TOP)/util/domd $(CFLAG) $(INCLUDES) -- $(LIBSRC) diff --git a/crypto/pkcs12/Makefile.in b/crypto/pkcs12/Makefile.in index 165ca2d5e0..abca0e72bf 100644 --- a/crypto/pkcs12/Makefile.in +++ b/crypto/pkcs12/Makefile.in @@ -40,9 +40,6 @@ lib: $(LIBOBJ) $(RANLIB) $(LIB) || echo Never mind. @touch lib -files: - $(PERL) $(TOP)/util/files.pl Makefile >> $(TOP)/MINFO - depend: $(TOP)/util/domd $(CFLAG) $(INCLUDES) -- $(PROGS) $(LIBSRC) diff --git a/crypto/pkcs7/Makefile.in b/crypto/pkcs7/Makefile.in index 49b78c58a2..b71d562894 100644 --- a/crypto/pkcs7/Makefile.in +++ b/crypto/pkcs7/Makefile.in @@ -41,9 +41,6 @@ lib: $(LIBOBJ) $(RANLIB) $(LIB) || echo Never mind. @touch lib -files: - $(PERL) $(TOP)/util/files.pl Makefile >> $(TOP)/MINFO - depend: $(TOP)/util/domd $(CFLAG) $(INCLUDES) -- $(PROGS) $(LIBSRC) diff --git a/crypto/poly1305/Makefile.in b/crypto/poly1305/Makefile.in index 03bde08091..0601bf734a 100644 --- a/crypto/poly1305/Makefile.in +++ b/crypto/poly1305/Makefile.in @@ -52,9 +52,6 @@ poly1305-%.S: asm/poly1305-%.pl; $(PERL) $< $(PERLASM_SCHEME) $@ poly1305-armv4.o: poly1305-armv4.S poly1305-armv8.o: poly1305-armv8.S -files: - $(PERL) $(TOP)/util/files.pl Makefile >> $(TOP)/MINFO - depend: $(TOP)/util/domd $(CFLAG) $(INCLUDES) -- $(PROGS) $(LIBSRC) diff --git a/crypto/rand/Makefile.in b/crypto/rand/Makefile.in index 095f0f002f..5442402432 100644 --- a/crypto/rand/Makefile.in +++ b/crypto/rand/Makefile.in @@ -36,9 +36,6 @@ lib: $(LIBOBJ) $(RANLIB) $(LIB) || echo Never mind. @touch lib -files: - $(PERL) $(TOP)/util/files.pl Makefile >> $(TOP)/MINFO - depend: $(TOP)/util/domd $(CFLAG) $(INCLUDES) -- $(PROGS) $(LIBSRC) diff --git a/crypto/rc2/Makefile.in b/crypto/rc2/Makefile.in index d124d0ba59..1a09360c38 100644 --- a/crypto/rc2/Makefile.in +++ b/crypto/rc2/Makefile.in @@ -34,9 +34,6 @@ lib: $(LIBOBJ) $(RANLIB) $(LIB) || echo Never mind. @touch lib -files: - $(PERL) $(TOP)/util/files.pl Makefile >> $(TOP)/MINFO - depend: $(TOP)/util/domd $(CFLAG) $(INCLUDES) -- $(PROGS) $(LIBSRC) diff --git a/crypto/rc4/Makefile.in b/crypto/rc4/Makefile.in index 0d4952c9ff..816ec2fb83 100644 --- a/crypto/rc4/Makefile.in +++ b/crypto/rc4/Makefile.in @@ -62,9 +62,6 @@ rc4-ia64.s: rc4-ia64.S # GNU make "catch all" rc4-%.s: asm/rc4-%.pl; $(PERL) $< $(PERLASM_SCHEME) $@ -files: - $(PERL) $(TOP)/util/files.pl Makefile >> $(TOP)/MINFO - depend: $(TOP)/util/domd $(CFLAG) $(INCLUDES) -- $(PROGS) $(LIBSRC) diff --git a/crypto/rc5/Makefile.in b/crypto/rc5/Makefile.in index a440fda5b0..554d0eff8b 100644 --- a/crypto/rc5/Makefile.in +++ b/crypto/rc5/Makefile.in @@ -42,9 +42,6 @@ lib: $(LIBOBJ) rc5-586.s: asm/rc5-586.pl ../perlasm/x86asm.pl ../perlasm/cbc.pl $(PERL) asm/rc5-586.pl $(PERLASM_SCHEME) $(CFLAGS) $@ -files: - $(PERL) $(TOP)/util/files.pl Makefile >> $(TOP)/MINFO - depend: $(TOP)/util/domd $(CFLAG) $(INCLUDES) -- $(PROGS) $(LIBSRC) diff --git a/crypto/ripemd/Makefile.in b/crypto/ripemd/Makefile.in index a0135b3079..4a870499b9 100644 --- a/crypto/ripemd/Makefile.in +++ b/crypto/ripemd/Makefile.in @@ -42,9 +42,6 @@ lib: $(LIBOBJ) rmd-586.s: asm/rmd-586.pl ../perlasm/x86asm.pl $(PERL) asm/rmd-586.pl $(PERLASM_SCHEME) $(CFLAGS) $@ -files: - $(PERL) $(TOP)/util/files.pl Makefile >> $(TOP)/MINFO - depend: $(TOP)/util/domd $(CFLAG) $(INCLUDES) -- $(PROGS) $(LIBSRC) diff --git a/crypto/rsa/Makefile.in b/crypto/rsa/Makefile.in index 0e2e2bf77e..5a8ecc45d2 100644 --- a/crypto/rsa/Makefile.in +++ b/crypto/rsa/Makefile.in @@ -40,9 +40,6 @@ lib: $(LIBOBJ) $(RANLIB) $(LIB) || echo Never mind. @touch lib -files: - $(PERL) $(TOP)/util/files.pl Makefile >> $(TOP)/MINFO - depend: $(TOP)/util/domd $(CFLAG) $(INCLUDES) -- $(PROGS) $(LIBSRC) diff --git a/crypto/seed/Makefile.in b/crypto/seed/Makefile.in index fe55942ca2..2ae714d032 100644 --- a/crypto/seed/Makefile.in +++ b/crypto/seed/Makefile.in @@ -35,9 +35,6 @@ lib: $(LIBOBJ) $(RANLIB) $(LIB) || echo Never mind. @touch lib -files: - $(PERL) $(TOP)/util/files.pl Makefile >> $(TOP)/MINFO - depend: $(TOP)/util/domd $(CFLAG) $(INCLUDES) -- $(PROGS) $(LIBSRC) diff --git a/crypto/sha/Makefile.in b/crypto/sha/Makefile.in index 9041c3cfa6..8f24feaf97 100644 --- a/crypto/sha/Makefile.in +++ b/crypto/sha/Makefile.in @@ -97,9 +97,6 @@ sha1-armv8.o: sha1-armv8.S sha256-armv8.o: sha256-armv8.S sha512-armv8.o: sha512-armv8.S -files: - $(PERL) $(TOP)/util/files.pl Makefile >> $(TOP)/MINFO - depend: $(TOP)/util/domd $(CFLAG) $(INCLUDES) -- $(PROGS) $(LIBSRC) diff --git a/crypto/srp/Makefile.in b/crypto/srp/Makefile.in index 8aa422a8e3..78e9a4f873 100644 --- a/crypto/srp/Makefile.in +++ b/crypto/srp/Makefile.in @@ -30,9 +30,6 @@ lib: $(LIBOBJ) $(RANLIB) $(LIB) || echo Never mind. @touch lib -files: - $(PERL) $(TOP)/util/files.pl Makefile >> $(TOP)/MINFO - depend: $(TOP)/util/domd $(CFLAG) $(INCLUDES) -- $(PROGS) $(LIBSRC) diff --git a/crypto/stack/Makefile.in b/crypto/stack/Makefile.in index fbce5a57bc..e127585f84 100644 --- a/crypto/stack/Makefile.in +++ b/crypto/stack/Makefile.in @@ -34,9 +34,6 @@ lib: $(LIBOBJ) $(RANLIB) $(LIB) || echo Never mind. @touch lib -files: - $(PERL) $(TOP)/util/files.pl Makefile >> $(TOP)/MINFO - depend: $(TOP)/util/domd $(CFLAG) $(INCLUDES) -- $(PROGS) $(LIBSRC) diff --git a/crypto/ts/Makefile.in b/crypto/ts/Makefile.in index 7f8648a8f8..64156b561e 100644 --- a/crypto/ts/Makefile.in +++ b/crypto/ts/Makefile.in @@ -44,9 +44,6 @@ lib: $(LIBOBJ) $(RANLIB) $(LIB) || echo Never mind. @touch lib -files: - $(PERL) $(TOP)/util/files.pl Makefile >> $(TOP)/MINFO - depend: $(TOP)/util/domd $(CFLAG) $(INCLUDES) -- $(LIBSRC) diff --git a/crypto/txt_db/Makefile.in b/crypto/txt_db/Makefile.in index e3810fa244..905ab41ab4 100644 --- a/crypto/txt_db/Makefile.in +++ b/crypto/txt_db/Makefile.in @@ -34,9 +34,6 @@ lib: $(LIBOBJ) $(RANLIB) $(LIB) || echo Never mind. @touch lib -files: - $(PERL) $(TOP)/util/files.pl Makefile >> $(TOP)/MINFO - depend: $(TOP)/util/domd $(CFLAG) $(INCLUDES) -- $(PROGS) $(LIBSRC) diff --git a/crypto/ui/Makefile.in b/crypto/ui/Makefile.in index 46ae052b4a..665cd2ee49 100644 --- a/crypto/ui/Makefile.in +++ b/crypto/ui/Makefile.in @@ -34,9 +34,6 @@ lib: $(LIBOBJ) $(RANLIB) $(LIB) || echo Never mind. @touch lib -files: - $(PERL) $(TOP)/util/files.pl Makefile >> $(TOP)/MINFO - depend: $(TOP)/util/domd $(CFLAG) $(INCLUDES) -- $(PROGS) $(LIBSRC) diff --git a/crypto/whrlpool/Makefile.in b/crypto/whrlpool/Makefile.in index 4e16f7d798..e6c64b77c5 100644 --- a/crypto/whrlpool/Makefile.in +++ b/crypto/whrlpool/Makefile.in @@ -47,9 +47,6 @@ wp-x86_64.s: asm/wp-x86_64.pl $(LIBOBJ): $(LIBSRC) -files: - $(PERL) $(TOP)/util/files.pl Makefile >> $(TOP)/MINFO - depend: $(TOP)/util/domd $(CFLAG) $(INCLUDES) -- $(PROGS) $(LIBSRC) diff --git a/crypto/x509/Makefile.in b/crypto/x509/Makefile.in index 4932622411..c1a173e5f0 100644 --- a/crypto/x509/Makefile.in +++ b/crypto/x509/Makefile.in @@ -48,9 +48,6 @@ lib: $(LIBOBJ) $(RANLIB) $(LIB) || echo Never mind. @touch lib -files: - $(PERL) $(TOP)/util/files.pl Makefile >> $(TOP)/MINFO - depend: $(TOP)/util/domd $(CFLAG) $(INCLUDES) -- $(PROGS) $(LIBSRC) diff --git a/crypto/x509v3/Makefile.in b/crypto/x509v3/Makefile.in index b6af01e688..5598ddbeaf 100644 --- a/crypto/x509v3/Makefile.in +++ b/crypto/x509v3/Makefile.in @@ -44,9 +44,6 @@ lib: $(LIBOBJ) $(RANLIB) $(LIB) || echo Never mind. @touch lib -files: - $(PERL) $(TOP)/util/files.pl Makefile >> $(TOP)/MINFO - depend: $(TOP)/util/domd $(CFLAG) $(INCLUDES) -- $(PROGS) $(LIBSRC) diff --git a/engines/Makefile.in b/engines/Makefile.in index 4c8ca99c06..e37c4e2be9 100644 --- a/engines/Makefile.in +++ b/engines/Makefile.in @@ -79,10 +79,6 @@ e_padlock-x86_64.s: asm/e_padlock-x86_64.pl subdirs: @target=all; $(RECURSIVE_MAKE) -files: - $(PERL) $(TOP)/util/files.pl Makefile >> $(TOP)/MINFO - @target=files; $(RECURSIVE_MAKE) - install: @[ -n "$(INSTALLTOP)" ] # should be set by top Makefile... @if [ -n "$(SHARED_LIBS)" ]; then \ diff --git a/engines/afalg/Makefile.in b/engines/afalg/Makefile.in index fb41993fbd..8a7408fbcb 100644 --- a/engines/afalg/Makefile.in +++ b/engines/afalg/Makefile.in @@ -53,9 +53,6 @@ install: depend: @[ -z "$(THIS)" ] || $(TOP)/util/domd $(CFLAG) $(INCLUDES) $(DEPFLAG) -- $(PROGS) $(LIBSRC) $(TESTLIBSRC) -files: - $(PERL) $(TOP)/util/files.pl Makefile >> $(TOP)/MINFO - clean: rm -f *.s *.o *.obj lib tags core .pure .nfs* *.old *.bak fluff *.so *.dll *.dylib diff --git a/ssl/Makefile.in b/ssl/Makefile.in index 28c427c282..26444ca429 100644 --- a/ssl/Makefile.in +++ b/ssl/Makefile.in @@ -68,9 +68,6 @@ shared: lib (cd ..; $(MAKE) $(SHARED_LIB)); \ fi -files: - $(PERL) $(TOP)/util/files.pl Makefile >> $(TOP)/MINFO - depend: $(TOP)/util/domd $(CFLAG) $(INCLUDES) -- $(PROGS) $(LIBSRC) diff --git a/test/Makefile.in b/test/Makefile.in index be4f0623f5..e10af0bdde 100644 --- a/test/Makefile.in +++ b/test/Makefile.in @@ -152,9 +152,6 @@ all: exe exe: $(EXE) dummytest$(EXE_EXT) -files: - $(PERL) $(TOP)/util/files.pl Makefile >> $(TOP)/MINFO - generate: $(SRC) $(SRC): @sh $(TOP)/util/point.sh dummytest.c $@ diff --git a/tools/Makefile.in b/tools/Makefile.in index 7b4f14e7e6..dec5f750cf 100644 --- a/tools/Makefile.in +++ b/tools/Makefile.in @@ -46,9 +46,6 @@ uninstall: $(RM) $(DESTDIR)$(OPENSSLDIR)/misc/$$i; \ done; -files: - $(PERL) $(TOP)/util/files.pl Makefile >> $(TOP)/MINFO - errors: depend: diff --git a/util/files.pl b/util/files.pl deleted file mode 100755 index 32e712586d..0000000000 --- a/util/files.pl +++ /dev/null @@ -1,67 +0,0 @@ -#!/usr/local/bin/perl -# -# used to generate the file MINFO for use by util/mk1mf.pl -# It is basically a list of all variables from the passed makefile -# - -while ($ARGV[0] =~ /^([^\s=]+)\s*=\s*(.*)$/) - { - $sym{$1} = $2; - shift; - } - -$s=""; -while (<>) - { - s|\R$||; - s/#.*//; - if (/^([^\s=]+)\s*=\s*(.*)$/) - { - $o=""; - ($s,$b)=($1,$2); - for (;;) - { - if ($b =~ /\\$/) - { - $b=$`; # Keep what is before the backslash - $o.=$b." "; - $b = "" unless defined($b = <>); - $b =~ s{\R$}{}; - } - else - { - $o.=$b." "; - last; - } - } - $o =~ s/^\s+//; - $o =~ s/\s+$//; - $o =~ s/\s+/ /g; - - $o =~ s/\$[({]([^)}]+)[)}]/$sym{$1}/g; - $sym{$s}=$o if !exists $sym{$s}; - } - } - -($pwd=`pwd`) =~ s{\R$}{}; - -if ($sym{'TOP'} eq ".") - { - $n=0; - $dir="."; - } -else { - $n=split(/\//,$sym{'TOP'}); - @_=split(/\//,$pwd); - $z=$#_-$n+1; - foreach $i ($z .. $#_) { $dir.=$_[$i]."/"; } - chop($dir); # Remove the last slash - } - -print "RELATIVE_DIRECTORY=$dir\n"; - -foreach (sort keys %sym) - { - print "$_=$sym{$_}\n"; - } -print "RELATIVE_DIRECTORY=\n"; diff --git a/util/mk1mf.pl b/util/mk1mf.pl deleted file mode 100755 index 0c525305b9..0000000000 --- a/util/mk1mf.pl +++ /dev/null @@ -1,1458 +0,0 @@ -#!/usr/bin/env perl -# A bit of an evil hack but it post processes the file ../MINFO which -# is generated by `make files` in the top directory. -# This script outputs one mega makefile that has no shell stuff or any -# funny stuff (if the target is not "copy"). -# If the target is "copy", then it tries to create a makefile that can be -# safely used with the -j flag and that is compatible with the top-level -# Makefile, in the sense that it uses the same options and assembler files etc. - -use Cwd; - -$INSTALLTOP="/usr/local"; -$OPENSSLDIR="/usr/local/ssl"; -$ENGINESDIR="/usr/local/lib/engines"; -$OPTIONS=""; -$ssl_version=""; -$banner="\t\@echo Building OpenSSL"; - -my $no_static_engine = 1; -my $engines = ""; -my @engines_obj = ""; -my $otherlibs = ""; -local $zlib_opt = 0; # 0 = no zlib, 1 = static, 2 = dynamic -local $zlib_lib = ""; -local $perl_asm = 0; # 1 to autobuild asm files from perl scripts - -local $fips_canister_path = ""; -my $fips_premain_dso_exe_path = ""; -my $fips_premain_c_path = ""; -my $fips_sha1_exe_path = ""; - -local $fipscanisterbuild = 0; - -my $fipscanisteronly = 0; - -my $fipslibdir = ""; -my $baseaddr = ""; - -my $ex_l_libs = ""; - -my $build_targets = "lib exe"; -my $libs_dep = "\$(O_CRYPTO) \$(O_SSL)"; - -# Options to import from top level Makefile - -my %mf_import = ( - VERSION => \$ssl_version, - OPTIONS => \$OPTIONS, - INSTALLTOP => \$INSTALLTOP, - OPENSSLDIR => \$OPENSSLDIR, - ENGINESDIR => \$ENGINESDIR, - PLATFORM => \$mf_platform, - CC => \$mf_cc, - CFLAG => \$mf_cflag, - CFLAG_Q => \$mf_cflag_q, - SHARED_CFLAG => \$mf_shared_cflag, - DEPFLAG => \$mf_depflag, - CPUID_OBJ => \$mf_cpuid_asm, - BN_ASM => \$mf_bn_asm, - DES_ENC => \$mf_des_asm, - AES_ENC => \$mf_aes_asm, - BF_ENC => \$mf_bf_asm, - CAST_ENC => \$mf_cast_asm, - RC4_ENC => \$mf_rc4_asm, - RC5_ENC => \$mf_rc5_asm, - MD5_ASM_OBJ => \$mf_md5_asm, - SHA1_ASM_OBJ => \$mf_sha_asm, - RMD160_ASM_OBJ => \$mf_rmd_asm, - WP_ASM_OBJ => \$mf_wp_asm, - CMLL_ENC => \$mf_cm_asm, - MODES_ASM_OBJ => \$mf_modes_asm, - ENGINES_ASM_OBJ=> \$mf_engines_asm, - PERLASM_SCHEME => \$mf_perlasm_scheme, - FIPSCANISTERONLY => \$mf_fipscanisteronly, - FIPSCANISTERINTERNAL => \$mf_fipscanisterinternal, - EC_ASM => \$mf_ec_asm, -); - -open(IN,") { - my ($mf_opt, $mf_ref); - while (($mf_opt, $mf_ref) = each %mf_import) { - if (/^$mf_opt\s*=\s*(.*)$/ && !defined($$mfref)) { - $$mf_ref = $1; - } - } -} -close(IN); - -if ($mf_fipscanisterinternal eq "y") { - $fips = 1; - $fipscanisterbuild = 1; - $fipscanisteronly = 1; -} - - -die "Makefile is not the toplevel Makefile!\n" if $ssl_version eq ""; - -$infile="MINFO"; - -%ops=( - "Mingw32", "GNU C++ - Windows NT or 9x", - "Mingw32-files", "Create files with DOS copy ...", - "linux-elf","Linux elf", - "FreeBSD","FreeBSD distribution", - "default","cc under unix", - "auto", "auto detect from top level Makefile", - "copy", "copy from top level Makefile" - ); - -$platform=""; -my $xcflags=""; -foreach (@ARGV) - { - if (!&read_options && !defined($ops{$_})) - { - print STDERR "unknown option - $_\n"; - print STDERR "usage: perl mk1mf.pl [options] [system]\n"; - print STDERR "\nwhere [system] can be one of the following\n"; - foreach $i (sort keys %ops) - { printf STDERR "\t%-10s\t%s\n",$i,$ops{$i}; } - print STDERR <<"EOF"; -and [options] can be one of - no-md2 no-md4 no-md5 no-sha no-mdc2 - Skip this digest - no-rmd160 - no-blake2 - No blake2 - no-rc2 no-rc4 no-rc5 no-idea no-des - Skip this symetric cipher - no-bf no-cast no-aes no-camellia no-seed - no-rsa no-dsa no-dh - Skip this public key cipher - no-ssl3 - Skip this version of SSL - just-ssl - remove all non-ssl keys/digest - no-asm - No x86 asm - no-srp - No SRP - no-ec - No EC - no-engine - No engine - no-egd - No EGD - no-hw - No hw - no-async - No Async (use NULL) - no-autoalginit - Don't auto load algorithms in libcrypto - no-autoerrinit - Don't auto load error strings for libcrypto or libssl - nasm - Use NASM for x86 asm - gaswin - Use GNU as with Mingw32 - no-socks - No socket code - no-err - No error strings - dll/shlib - Build shared libraries (MS) - debug - Debug build - profile - Profiling build - gcc - Use Gcc (unix) - -Values that can be set -TMP=tmpdir OUT=outdir SRC=srcdir BIN=binpath INC=header-outdir CC=C-compiler - --L -l - extra library flags (unix) -- - extra 'cc' flags, - added (MS), or replace (unix) -EOF - exit(1); - } - $platform=$_; - } -foreach (grep(!/^$/, split(/ /, $OPTIONS))) - { - print STDERR "unknown option - $_\n" if !&read_options; - } - -$no_mdc2=1 if ($no_des); - -$no_ssl3=1 if ($no_md5); -$no_ssl3=1 if ($no_rsa && $no_dh); - -$out_def="out"; -$inc_def="outinc"; -$tmp_def="tmp"; - -$perl="perl" unless defined $perl; -$mkdir="-mkdir" unless defined $mkdir; -$mv="mv" unless defined $mv; - -($ssl,$crypto)=("ssl","crypto"); -$ranlib="echo ranlib"; - -$cc=(defined($VARS{'CC'}))?$VARS{'CC'}:'cc'; -$src_dir=(defined($VARS{'SRC'}))?$VARS{'SRC'}: $platform eq 'copy' ? getcwd() : '.'; -$bin_dir=(defined($VARS{'BIN'}))?$VARS{'BIN'}:''; - -# $bin_dir.=$o causes a core dump on my sparc :-( - - -$NT=0; - -push(@INC,"util/pl","pl"); - -if ($platform eq "auto" || $platform eq 'copy') { - $orig_platform = $platform; - $platform = $mf_platform; - print STDERR "Imported platform $mf_platform\n"; -} - -if ($platform eq "Mingw32") - { - require 'Mingw32.pl'; - } -elsif ($platform eq "Mingw32-files") - { - require 'Mingw32f.pl'; - } -elsif ($platform eq "FreeBSD") - { - require 'unix.pl'; - $cflags='-DTERMIO -D_ANSI_SOURCE -O2 -fomit-frame-pointer'; - } -elsif ($platform eq "linux-elf") - { - require "unix.pl"; - require "linux.pl"; - $unix=1; - } -else - { - require "unix.pl"; - - $unix=1; - $cflags.=' -DTERMIO'; - } - -$out_dir=(defined($VARS{'OUT'}))?$VARS{'OUT'}:$out_def.($debug?".dbg":""); -$tmp_dir=(defined($VARS{'TMP'}))?$VARS{'TMP'}:$tmp_def.($debug?".dbg":""); -$inc_dir=(defined($VARS{'INC'}))?$VARS{'INC'}:$inc_def; - -$bin_dir=$bin_dir.$o unless ((substr($bin_dir,-1,1) eq $o) || ($bin_dir eq '')); - -$cflags= "$xcflags$cflags" if $xcflags ne ""; - -$cflags.=" -DOPENSSL_NO_IDEA" if $no_idea; -$cflags.=" -DOPENSSL_NO_AES" if $no_aes; -$cflags.=" -DOPENSSL_NO_CAMELLIA" if $no_camellia; -$cflags.=" -DOPENSSL_NO_SEED" if $no_seed; -$cflags.=" -DOPENSSL_NO_RC2" if $no_rc2; -$cflags.=" -DOPENSSL_NO_RC4" if $no_rc4; -$cflags.=" -DOPENSSL_NO_RC5" if $no_rc5; -$cflags.=" -DOPENSSL_NO_MD2" if $no_md2; -$cflags.=" -DOPENSSL_NO_MD4" if $no_md4; -$cflags.=" -DOPENSSL_NO_MD5" if $no_md5; -$cflags.=" -DOPENSSL_NO_RMD160" if $no_ripemd; -$cflags.=" -DOPENSSL_NO_MDC2" if $no_mdc2; -$cflags.=" -DOPENSSL_NO_BF" if $no_bf; -$cflags.=" -DOPENSSL_NO_CAST" if $no_cast; -$cflags.=" -DOPENSSL_NO_DES" if $no_des; -$cflags.=" -DOPENSSL_NO_RSA" if $no_rsa; -$cflags.=" -DOPENSSL_NO_DSA" if $no_dsa; -$cflags.=" -DOPENSSL_NO_DH" if $no_dh; -$cflags.=" -DOPENSSL_NO_WHIRLPOOL" if $no_whirlpool; -$cflags.=" -DOPENSSL_NO_SOCK" if $no_sock; -$cflags.=" -DOPENSSL_NO_SSL3" if $no_ssl3; -$cflags.=" -DOPENSSL_NO_SRP" if $no_srp; -$cflags.=" -DOPENSSL_NO_CMS" if $no_cms; -$cflags.=" -DOPENSSL_NO_ERR" if $no_err; -$cflags.=" -DOPENSSL_NO_EC" if $no_ec; -$cflags.=" -DOPENSSL_NO_GOST" if $no_gost; -$cflags.=" -DOPENSSL_NO_ENGINE" if $no_engine; -$cflags.=" -DOPENSSL_NO_HW" if $no_hw; -$cflags.=" -DOPENSSL_NO_ASYNC" if $no_async; -$cflags.=" -DOPENSSL_NO_AUTOALGINIT" if $no_autoalginit; -$cflags.=" -DOPENSSL_NO_AUTOERRINIT" if $no_autoerrinit; -$cflags.=" -DOPENSSL_FIPS" if $fips; -$cflags.=" -DOPENSSL_NO_EC2M" if $no_ec2m; -$cflags.=" -DZLIB" if $zlib_opt; -$cflags.=" -DZLIB_SHARED" if $zlib_opt == 2; -$cflags.=" -DOPENSSL_PIC"; -$cflags.=" -DOPENSSL_NO_COMP" if $no_comp; - -if ($no_static_engine) - { - $cflags .= " -DOPENSSL_NO_STATIC_ENGINE"; - } -else - { - $cflags .= " -DOPENSSL_NO_DYNAMIC_ENGINE"; - } - -#$cflags.=" -DRSAref" if $rsaref ne ""; - -## if ($unix) -## { $cflags="$c_flags" if ($c_flags ne ""); } -##else - { $cflags="$c_flags$cflags" if ($c_flags ne ""); } - -if ($orig_platform eq 'copy') { - $cflags = "$mf_cflag $mf_shared_cflag"; - $cc = $mf_cc; -} - -$ex_libs="$l_flags$ex_libs" if ($l_flags ne ""); - - -%shlib_ex_cflags=("SSL" => " -DOPENSSL_BUILD_SHLIBSSL", - "CRYPTO" => " -DOPENSSL_BUILD_SHLIBCRYPTO"); - -if ($msdos) - { - $banner ="\t\@echo Make sure you have run 'perl Configure $platform' in the\n"; - $banner.="\t\@echo top level directory, if you don't have perl, you will\n"; - $banner.="\t\@echo need to probably edit crypto/bn/bn.h, check the\n"; - $banner.="\t\@echo documentation for details.\n"; - } - -# have to do this to allow $(CC) under unix -$link="$bin_dir$link" if ($link !~ /^\$/); - -$INSTALLTOP =~ s|/|$o|g; -$OPENSSLDIR =~ s|/|$o|g; - -############################################# -# We parse in input file and 'store' info for later printing. -open(IN,"<$infile") || die "unable to open $infile:$!\n"; -$_=; -for (;;) - { - s/\s*$//; # was chop, didn't work in mixture of perls for Windows... - - ($key,$val)=/^([^=]+)=(.*)/; - if ($key eq "RELATIVE_DIRECTORY") - { - if ($lib ne "") - { - if ($fips && $dir =~ /^fips/) - { - $uc = "FIPS"; - } - else - { - $uc=$lib; - $uc =~ s/^lib(.*)\.a/$1/; - $uc =~ tr/a-z/A-Z/; - } - if (($uc ne "FIPS") || $fipscanisterbuild) - { - $lib_nam{$uc}=$uc; - $lib_obj{$uc}.=$libobj." "; - } - } - last if ($val eq "FINISHED"); - $lib=""; - $libobj=""; - $dir=$val; - } - - if ($key eq "ZLIB_INCLUDE") - { $cflags .= " $val" if $val ne "";} - - if ($key eq "LIBZLIB") - { $zlib_lib = "$val" if $val ne "";} - - if ($key eq "EX_LIBS") - { $ex_libs .= " $val" if $val ne "";} - - # There was a condition here before: - # !$fipscanisteronly || $dir =~ /^fips/ - # It currently fills no function and needs to be rewritten anyway, so - # removed for now. - if ($dir eq "test" && $key eq "EXE") - { - foreach my $t (split /\s+/, $val) { - $test.=&var_add($dir,$t, 0) if $t; } - } - - if ($key eq "EXE_OBJ") - { $e_exe.=&var_add($dir,$val, 0); } - - if ($key eq "LIB") - { - $lib=$val; - $lib =~ s/^.*\/([^\/]+)$/$1/; - } - if ($key eq "LIBNAME" && $no_static_engine) - { - $lib=$val; - $lib =~ s/^.*\/([^\/]+)$/$1/; - $otherlibs .= " $lib"; - } - - if ($key eq "HEADER") - { $header.=&var_add($dir,$val, 1); } - - if ($key eq "LIBOBJ") - { - if ($dir ne "engines" || !$no_static_engine) - { $libobj=&var_add($dir,$val, 0); } - else - { push(@engines_obj,split(/\s+/,&var_add($dir,$val,0))); } - } - if ($key eq "LIBNAMES" && $dir eq "engines" && $no_static_engine) - { $engines.=$val } - - if ($key eq "FIPS_EX_OBJ") - { - $fips_ex_obj=&var_add("crypto",$val,0); - } - - if ($key eq "FIPSLIBDIR") - { - $fipslibdir=$val; - $fipslibdir =~ s/\/$//; - $fipslibdir =~ s/\//$o/g; - } - - if ($key eq "BASEADDR") - { $baseaddr=$val;} - - if (!($_=)) - { $_="RELATIVE_DIRECTORY=FINISHED\n"; } - } -close(IN); - -if ($orig_platform eq 'copy') - { - # Remove opensslconf.h so it doesn't get updated if we configure a - # different branch. - $header =~ s/[^ ]+\/opensslconf.h//; - } - -if ($fips) - { - - foreach (split " ", $fips_ex_obj) - { - $fips_exclude_obj{$1} = 1 if (/\/([^\/]*)$/); - } - foreach (split " ", - "$mf_cpuid_asm $mf_aes_asm $mf_sha_asm $mf_bn_asm " . - "$mf_des_asm $mf_modes_asm") - { - s/\.o//; - $fips_exclude_obj{$_} = 1; - } - my @ltmp = split " ", $lib_obj{"CRYPTO"}; - - - $lib_obj{"CRYPTO"} = ""; - - foreach(@ltmp) - { - if (/\/([^\/]*)$/ && exists $fips_exclude_obj{$1}) - { - if ($fipscanisterbuild) - { - $lib_obj{"FIPS"} .= "$_ "; - } - } - elsif (!$fipscanisteronly) - { - $lib_obj{"CRYPTO"} .= "$_ "; - } - } - - } - -if ($fipscanisterbuild) - { - $fips_canister_path = "\$(LIB_D)${o}fipscanister.lib" if $fips_canister_path eq ""; - $fips_premain_c_path = "\$(LIB_D)${o}fips_premain.c"; - } -else - { - if ($fips_canister_path eq "") - { - $fips_canister_path = "\$(FIPSLIB_D)${o}fipscanister.lib"; - } - - if ($fips_premain_c_path eq "") - { - $fips_premain_c_path = "\$(FIPSLIB_D)${o}fips_premain.c"; - } - } - -if ($fips) - { - if ($fips_sha1_exe_path eq "") - { - $fips_sha1_exe_path = - "\$(BIN_D)${o}fips_standalone_sha1$exep"; - } - } - else - { - $fips_sha1_exe_path = ""; - } - -if ($fips_premain_dso_exe_path eq "") - { - $fips_premain_dso_exe_path = "\$(BIN_D)${o}fips_premain_dso$exep"; - } - -# $ex_build_targets .= "\$(BIN_D)${o}\$(E_PREMAIN_DSO)$exep" if ($fips); - -if ($fips) - { - if (!$shlib) - { - $build_targets .= " \$(LIB_D)$o$crypto_compat \$(PREMAIN_DSO_EXE)"; - $ex_l_libs .= " \$(O_FIPSCANISTER)"; - $ex_libs_dep .= " \$(O_FIPSCANISTER)" if $fipscanisterbuild; - } - if ($fipscanisterbuild) - { - $fipslibdir = "\$(LIB_D)"; - } - else - { - if ($fipslibdir eq "") - { - open (IN, "util/fipslib_path.txt") || fipslib_error(); - $fipslibdir = ; - close IN; - $fipslibdir = "" unless defined($fipslibdir); - $fipslibdir =~ s{\R$}{}; - fipslib_error() if ($fipslibdir eq ""); - } - fips_check_files($fipslibdir, - "fipscanister.lib", "fipscanister.lib.sha1", - "fips_premain.c", "fips_premain.c.sha1"); - } - } - -if ($fipscanisteronly) - { - $build_targets = "\$(O_FIPSCANISTER) \$(T_EXE)"; - $libs_dep = ""; - } - -$cp2 = $cp unless defined $cp2; - -$extra_install= <<"EOF"; - \$(CP) \"include${o}openssl${o}*.\[ch\]\" \"\$(INSTALLTOP)${o}include${o}openssl\" - \$(CP) \"\$(BIN_D)$o\$(E_EXE)$exep \$(INSTALLTOP)${o}bin\" - \$(MKDIR) \"\$(OPENSSLDIR)\" - \$(CP) apps${o}openssl.cnf \"\$(OPENSSLDIR)\" -EOF - -if ($fipscanisteronly) - { - $extra_install = <<"EOF"; - \$(CP) \"\$(O_FIPSCANISTER)\" \"\$(INSTALLTOP)${o}lib\" - \$(CP) \"\$(O_FIPSCANISTER).sha1\" \"\$(INSTALLTOP)${o}lib\" - \$(CP2) \"fips${o}fips_premain.c\" \"\$(INSTALLTOP)${o}lib\" - \$(CP) \"fips${o}fips_premain.c.sha1\" \"\$(INSTALLTOP)${o}lib\" - \$(CP) \"include${o}openssl${o}fips.h\" \"\$(INSTALLTOP)${o}include${o}openssl\" - \$(CP) \"include${o}openssl${o}fips_rand.h\" \"\$(INSTALLTOP)${o}include${o}openssl\" - \$(CP) "\$(BIN_D)${o}fips_standalone_sha1$exep" \"\$(INSTALLTOP)${o}bin\" - \$(CP) \"util${o}fipslink.pl\" \"\$(INSTALLTOP)${o}bin\" -EOF - } -elsif ($shlib) - { - $extra_install .= <<"EOF"; - \$(CP) \"\$(O_SSL)\" \"\$(INSTALLTOP)${o}bin\" - \$(CP) \"\$(O_CRYPTO)\" \"\$(INSTALLTOP)${o}bin\" - \$(CP) \"\$(L_SSL)\" \"\$(INSTALLTOP)${o}lib\" - \$(CP) \"\$(L_CRYPTO)\" \"\$(INSTALLTOP)${o}lib\" -EOF - if ($no_static_engine) - { - $extra_install .= <<"EOF" - \$(MKDIR) \"\$(INSTALLTOP)${o}lib${o}engines\" - \$(CP) \"\$(E_SHLIB)\" \"\$(INSTALLTOP)${o}lib${o}engines\" -EOF - } - } -else - { - $extra_install .= <<"EOF"; - \$(CP) \"\$(O_SSL)\" \"\$(INSTALLTOP)${o}lib\" - \$(CP) \"\$(O_CRYPTO)\" \"\$(INSTALLTOP)${o}lib\" -EOF - $ex_libs .= " $zlib_lib" if $zlib_opt == 1; - } - -my $asm_def = $orig_platform eq 'copy' ? "" : "ASM=$bin_dir$asm"; - -$cflags =~ s/\((ENGINESDIR|OPENSSLDIR)\)/\(${1}_QQ\)/g; -(my $cflags_q = $cflags) =~ s/([\\"])/\\$1/g; -(my $INSTALLTOP_Q = $INSTALLTOP) =~ s/([\\"])/\\$1/g; -(my $INSTALLTOP_QQ = $INSTALLTOP_Q) =~ s/\\/\\\\/g; -(my $OPENSSLDIR_Q = $OPENSSLDIR) =~ s/([\\"])/\\$1/g; -(my $OPENSSLDIR_QQ = $OPENSSLDIR_Q) =~ s/\\/\\\\/g; -(my $ENGINESDIR_Q = $ENGINESDIR) =~ s/([\\"])/\\$1/g; -(my $ENGINESDIR_QQ = $ENGINESDIR_Q) =~ s/\\/\\\\/g; - -$defs= <<"EOF"; -# N.B. You MUST use -j on FreeBSD. -# This makefile has been automatically generated from the OpenSSL distribution. -# This single makefile will build the complete OpenSSL distribution and -# by default leave the 'interesting' output files in .${o}out and the stuff -# that needs deleting in .${o}tmp. -# The file was generated by running 'make makefile.one', which -# does a 'make files', which writes all the environment variables from all -# the makefiles to the file call MINFO. This file is used by -# util${o}mk1mf.pl to generate makefile.one. -# The 'makefile per directory' system suites me when developing this -# library and also so I can 'distribute' indervidual library sections. -# The one monster makefile better suits building in non-unix -# environments. - -EOF - -$defs .= $preamble if defined $preamble; - -$defs.= <<"EOF"; -INSTALLTOP=$INSTALLTOP -INSTALLTOP_QQ=$INSTALLTOP_QQ -OPENSSLDIR=$OPENSSLDIR -OPENSSLDIR_QQ=$OPENSSLDIR_QQ -ENGINESDIR=$ENGINESDIR -ENGINESDIR_QQ=$ENGINESDIR_QQ - -# Set your compiler options -PLATFORM=$platform -CC=$bin_dir${cc} -CFLAG=$cflags -CFLAG_Q=$cflags_q -APP_CFLAG=$app_cflag -LIB_CFLAG=$lib_cflag -SHLIB_CFLAG=$shl_cflag -APP_EX_OBJ=$app_ex_obj -SHLIB_EX_OBJ=$shlib_ex_obj -# add extra libraries to this define, for solaris -lsocket -lnsl would -# be added -EX_LIBS=$ex_libs - -# The OpenSSL directory -SRC_D=$src_dir - -LINK_CMD=$link -LFLAGS=$lflags -RSC=$rsc -FIPSLINK=\$(PERL) util${o}fipslink.pl - -# The output directory for everything interesting -OUT_D=$out_dir -# The output directory for all the temporary muck -TMP_D=$tmp_dir - -PERL=$perl -PERLASM_SCHEME=$mf_perlasm_scheme -CP=$cp -CP2=$cp2 -RM=$rm -MV=$mv -RANLIB=$ranlib -MKDIR=$mkdir -MKLIB=$bin_dir$mklib -MLFLAGS=$mlflags -$asm_def - -# FIPS validated module and support file locations - -E_PREMAIN_DSO=fips_premain_dso - -FIPSLIB_D=$fipslibdir -BASEADDR=$baseaddr -FIPS_PREMAIN_SRC=$fips_premain_c_path -O_FIPSCANISTER=$fips_canister_path -FIPS_SHA1_EXE=$fips_sha1_exe_path -PREMAIN_DSO_EXE=$fips_premain_dso_exe_path - -###################################################### -# You should not need to touch anything below this point -###################################################### - -E_EXE=openssl -SSL=$ssl -CRYPTO=$crypto - -# BIN_D - Binary output directory -# TEST_D - Binary test file output directory -# LIB_D - library output directory -# ENG_D - dynamic engine output directory -# Note: if you change these point to different directories then uncomment out -# the lines around the 'NB' comment below. -# -BIN_D=\$(OUT_D) -TEST_D=\$(OUT_D) -LIB_D=\$(OUT_D) -ENG_D=\$(OUT_D) - -# INCL_D - local library directory -# OBJ_D - temp object file directory -OBJ_D=\$(TMP_D) -INCL_D=\$(TMP_D) - -O_SSL= \$(LIB_D)$o$plib\$(SSL)$shlibp -O_CRYPTO= \$(LIB_D)$o$plib\$(CRYPTO)$shlibp -SO_SSL= $plib\$(SSL)$so_shlibp -SO_CRYPTO= $plib\$(CRYPTO)$so_shlibp -L_SSL= \$(LIB_D)$o$plib\$(SSL)$libp -L_CRYPTO= \$(LIB_D)$o$plib\$(CRYPTO)$libp - -L_LIBS= \$(L_SSL) \$(L_CRYPTO) $ex_l_libs - -###################################################### -# Don't touch anything below this point -###################################################### - -INC=-I\$(SRC_D)${o}include -I\$(INCL_D) -I\$(SRC_D)${o}crypto${o}include -APP_CFLAGS=\$(INC) \$(CFLAG) \$(APP_CFLAG) -LIB_CFLAGS=\$(INC) \$(CFLAG) \$(LIB_CFLAG) -SHLIB_CFLAGS=\$(INC) \$(CFLAG) \$(LIB_CFLAG) \$(SHLIB_CFLAG) -LIBS_DEP=$libs_dep - -############################################# -EOF - -$rules=<<"EOF"; -all: banner \$(TMP_D) \$(BIN_D) \$(TEST_D) \$(LIB_D) headers \$(FIPS_SHA1_EXE) $build_targets - -banner: -$banner - -\$(TMP_D): - \$(MKDIR) \"\$(TMP_D)\" -# NB: uncomment out these lines if BIN_D, TEST_D and LIB_D are different -#\$(BIN_D): -# \$(MKDIR) \$(BIN_D) -# -#\$(TEST_D): -# \$(MKDIR) \$(TEST_D) - -\$(LIB_D): - \$(MKDIR) \"\$(LIB_D)\" - -# This needs to be invoked once, when the makefile is first constructed, or -# after cleaning. -init: \$(TMP_D) \$(LIB_D) \$(BIN_D) \$(TEST_D) headers - -headers: \$(HEADER) - -lib: \$(LIBS_DEP) \$(E_SHLIB) - -exe: apps tools testapps -apps: \$(BIN_D)$o\$(E_EXE)$exep \$(BIN_D)${o}CA.pl -testapps: \$(T_EXE) -tools: \$(BIN_D)${o}c_rehash - -install: all - \$(MKDIR) \"\$(INSTALLTOP)\" - \$(MKDIR) \"\$(INSTALLTOP)${o}bin\" - \$(MKDIR) \"\$(INSTALLTOP)${o}include\" - \$(MKDIR) \"\$(INSTALLTOP)${o}include${o}openssl\" - \$(MKDIR) \"\$(INSTALLTOP)${o}lib\" - \$(MKDIR) \"\$(INSTALLTOP)${o}lib${o}engines\" -$extra_install - -clean: - \$(RM) \$(TMP_D)$o*.* - -vclean: - \$(RM) \$(TMP_D)$o*.* - \$(RM) \$(OUT_D)$o*.* - -reallyclean: - \$(RM) -rf \$(TMP_D) - \$(RM) -rf \$(BIN_D) - \$(RM) -rf \$(TEST_D) - \$(RM) -rf \$(LIB_D) - -EOF - -$rules .= &do_rehash_rule("rehash.time", "apps tools"); -$rules .= &do_test_rule("test", "rehash.time", "run_tests.pl"); - -$rules .= <<"EOF"; -crypto${o}buildinf.h : MINFO - \$(PERL) util${o}mkbuildinf.pl "\$(CC) \$(CFLAG_Q)" "\$(PLATFORM)" > crypto${o}buildinf.h -$(OBJ_D)${o}cversion${obj} : crypto${o}buildinf.h -EOF - -# Strip off trailing ' ' -foreach (keys %lib_obj) { $lib_obj{$_}=&clean_up_ws($lib_obj{$_}); } -$test=&clean_up_ws($test); -$e_exe=&clean_up_ws($e_exe); -$header=&clean_up_ws($header); - -$defs.=&do_defs("HEADER",$header,"\$(INCL_D)",""); -$rules.=&do_copy_rule("\$(INCL_D)",$header,""); - -$defs.=&do_defs("T_OBJ",$test,"\$(OBJ_D)",$obj); -$rules.=&do_compile_rule("\$(OBJ_D)",$test,"\$(APP_CFLAGS)"); - -$defs.=&do_defs("E_OBJ",$e_exe,"\$(OBJ_D)",$obj); -$rules.=&do_compile_rule("\$(OBJ_D)",$e_exe,'-DMONOLITH $(APP_CFLAGS)'); - -# Special case rules for fips_start and fips_end fips_premain_dso - -if ($fips) - { - if ($fipscanisterbuild) - { - $rules.=&cc_compile_target("\$(OBJ_D)${o}fips_start$obj", - "fips${o}fips_canister.c", - "-DFIPS_START \$(SHLIB_CFLAGS)"); - $rules.=&cc_compile_target("\$(OBJ_D)${o}fips_end$obj", - "fips${o}fips_canister.c", "\$(SHLIB_CFLAGS)"); - } - $rules.=&cc_compile_target("\$(OBJ_D)${o}fips_standalone_sha1$obj", - "fips${o}sha${o}fips_standalone_sha1.c", - "\$(APP_CFLAGS)"); - $rules.=&cc_compile_target("\$(OBJ_D)${o}\$(E_PREMAIN_DSO)$obj", - "fips${o}fips_premain.c", - "-DFINGERPRINT_PREMAIN_DSO_LOAD \$(APP_CFLAGS)"); - } - -sub fix_asm - { - my($asm, $dir) = @_; - - $asm = " $asm"; - $asm =~ s/\s+/ $dir\//g; - $asm =~ s/\.o//g; - $asm =~ s/^ //; - - return $asm . ' '; - } - -if ($orig_platform eq 'copy') { - $lib_obj{CRYPTO} .= fix_asm($mf_md5_asm, 'crypto/md5'); - $lib_obj{CRYPTO} .= fix_asm($mf_bn_asm, 'crypto/bn'); - # cpuid is included by the crypto dir - #$lib_obj{CRYPTO} .= fix_asm($mf_cpuid_asm, 'crypto'); - # AES asm files end up included by the aes dir itself - #$lib_obj{CRYPTO} .= fix_asm($mf_aes_asm, 'crypto/aes'); - $lib_obj{CRYPTO} .= fix_asm($mf_sha_asm, 'crypto/sha'); - $lib_obj{CRYPTO} .= fix_asm($mf_engines_asm, 'engines'); - $lib_obj{CRYPTO} .= fix_asm($mf_rc4_asm, 'crypto/rc4'); - $lib_obj{CRYPTO} .= fix_asm($mf_modes_asm, 'crypto/modes'); - $lib_obj{CRYPTO} .= fix_asm($mf_ec_asm, 'crypto/ec'); -} - -foreach (values %lib_nam) - { - $lib_obj=$lib_obj{$_}; - local($slib)=$shlib; - - $defs.=&do_defs(${_}."OBJ",$lib_obj,"\$(OBJ_D)",$obj); - $lib=($slib)?" \$(SHLIB_CFLAGS)".$shlib_ex_cflags{$_}:" \$(LIB_CFLAGS)"; - $rules.=&do_compile_rule("\$(OBJ_D)",$lib_obj{$_},$lib); - } - -$defs.=&do_defs("T_EXE",$test,"\$(TEST_D)",$exep); -foreach (split(/\s+/,$test)) - { - my $t_libs; - $t=&bname($_); - my $ltype; - # Check to see if test program is FIPS - if ($fips && /fips/) - { - # If fips perform static link to - # $(O_FIPSCANISTER) - $t_libs = "\$(O_FIPSCANISTER)"; - $ltype = 2; - } - else - { - $t_libs = "\$(L_LIBS)"; - $ltype = 0; - } - - $tt="\$(OBJ_D)${o}$t${obj}"; - $rules.=&do_link_rule("\$(TEST_D)$o$t$exep",$tt,"\$(LIBS_DEP)","$t_libs \$(EX_LIBS)", $ltype); - } - -$defs.=&do_defs("E_SHLIB",$engines . $otherlibs,"\$(ENG_D)",$shlibp); - -foreach (split(/\s+/,$engines)) - { - my $engine = $_; - my @objs = grep {/e_$engine/} @engines_obj; - $rules.=&do_compile_rule("\$(OBJ_D)",join(" ",@objs),$lib); - map {$_=~s/.*\/([^\/]+)$/\$(OBJ_D)${o}$1$obj/} @objs; - $rules.= &do_lib_rule(join(" ",@objs),"\$(ENG_D)$o$engine$shlibp","",$shlib,""); - } - - - -$rules.= &do_lib_rule("\$(SSLOBJ)","\$(O_SSL)",$ssl,$shlib,"\$(SO_SSL)"); -#$rules.= &do_lib_rule("\$(CRYPTOOBJ)","\$(O_CRYPTO)",$crypto,$shlib,"\$(SO_CRYPTO)"); - -foreach (split(" ",$otherlibs)) - { - my $uc = $_; - $uc =~ tr /a-z/A-Z/; - $rules.= &do_lib_rule("\$(${uc}OBJ)","\$(ENG_D)$o$_$shlibp", "", $shlib, ""); - - } - -if ($fips) - { - if ($shlib) - { - $rules.= &do_lib_rule("\$(CRYPTOOBJ) \$(O_FIPSCANISTER)", - "\$(O_CRYPTO)", "$crypto", - $shlib, "\$(SO_CRYPTO)", "\$(BASEADDR)"); - } - else - { - $rules.= &do_lib_rule("\$(CRYPTOOBJ)", - "\$(O_CRYPTO)",$crypto,$shlib,"\$(SO_CRYPTO)", ""); - $rules.= &do_lib_rule("\$(CRYPTOOBJ) \$(O_FIPSCANISTER)", - "\$(LIB_D)$o$crypto_compat",$crypto,$shlib,"\$(SO_CRYPTO)", ""); - } - } - else - { - $rules.= &do_lib_rule("\$(CRYPTOOBJ)","\$(O_CRYPTO)",$crypto,$shlib, - "\$(SO_CRYPTO)"); - } - -if ($fips) - { - if ($fipscanisterbuild) - { - $rules.= &do_rlink_rule("\$(O_FIPSCANISTER)", - "\$(OBJ_D)${o}fips_start$obj", - "\$(FIPSOBJ)", - "\$(OBJ_D)${o}fips_end$obj", - "\$(FIPS_SHA1_EXE)", ""); - # FIXME - $rules.=&do_link_rule("\$(FIPS_SHA1_EXE)", - "\$(OBJ_D)${o}fips_standalone_sha1$obj \$(OBJ_D)${o}sha1dgst$obj $sha1_asm_obj", - "","\$(EX_LIBS)", 1); - } - else - { - $rules.=&do_link_rule("\$(FIPS_SHA1_EXE)", - "\$(OBJ_D)${o}fips_standalone_sha1$obj \$(O_FIPSCANISTER)", - "","", 1); - - } - $rules.=&do_link_rule("\$(PREMAIN_DSO_EXE)","\$(OBJ_D)${o}\$(E_PREMAIN_DSO)$obj \$(CRYPTOOBJ) \$(O_FIPSCANISTER)","","\$(EX_LIBS)", 1); - - } - -$rules.=&do_link_rule("\$(BIN_D)$o\$(E_EXE)$exep","\$(E_OBJ)","\$(LIBS_DEP)","\$(L_LIBS) \$(EX_LIBS)", ($fips && !$shlib) ? 2 : 0); - -$rules.=&do_dofile_rule("\$(BIN_D)","c_rehash","tools/c_rehash.in"); -$rules.=&do_dofile_rule("\$(BIN_D)","CA.pl","apps/CA.pl.in"); - -print $defs; - -if ($platform eq "linux-elf") { - print <<"EOF"; -# Generate perlasm output files -%.cpp: - (cd \$(\@D)/..; PERL=perl make -f Makefile asm/\$(\@F)) -EOF -} -print "###################################################################\n"; -print $rules; - -############################################### -# strip off any trailing .[och] and append the relative directory -# also remembering to do nothing if we are in one of the dropped -# directories -sub var_add - { - local($dir,$val,$keepext)=@_; - local(@a,$_,$ret); - - return("") if $no_engine && $dir =~ /\/engine/; - return("") if $no_hw && $dir =~ /\/hw/; - return("") if $no_idea && $dir =~ /\/idea/; - return("") if $no_aes && $dir =~ /\/aes/; - return("") if $no_camellia && $dir =~ /\/camellia/; - return("") if $no_seed && $dir =~ /\/seed/; - return("") if $no_rc2 && $dir =~ /\/rc2/; - return("") if $no_rc4 && $dir =~ /\/rc4/; - return("") if $no_rc5 && $dir =~ /\/rc5/; - return("") if $no_rsa && $dir =~ /\/rsa/; - return("") if $no_rsa && $dir =~ /^rsaref/; - return("") if $no_dsa && $dir =~ /\/dsa/; - return("") if $no_dh && $dir =~ /\/dh/; - return("") if $no_ec && $dir =~ /\/ec/; - return("") if $no_cms && $dir =~ /\/cms/; - return("") if $no_comp && $dir =~ /\/comp/; - return("") if !$fips && $dir =~ /^fips/; - if ($no_des && $dir =~ /\/des/) - { - if ($val =~ /read_pwd/) - { return("$dir/read_pwd "); } - else - { return(""); } - } - return("") if $no_mdc2 && $dir =~ /\/mdc2/; - return("") if $no_sock && $dir =~ /\/proxy/; - return("") if $no_bf && $dir =~ /\/bf/; - return("") if $no_cast && $dir =~ /\/cast/; - return("") if $no_whirlpool && $dir =~ /\/whrlpool/; - - $val =~ s/^\s*(.*)\s*$/$1/; - @a=split(/\s+/,$val); - grep(s/\.[och]$//,@a) unless $keepext; - - @a=grep(!/^e_.*_3d$/,@a) if $no_des; - @a=grep(!/^e_.*_d$/,@a) if $no_des; - @a=grep(!/^e_.*_ae$/,@a) if $no_idea; - @a=grep(!/^e_.*_i$/,@a) if $no_aes; - @a=grep(!/^e_.*_r2$/,@a) if $no_rc2; - @a=grep(!/^e_.*_r5$/,@a) if $no_rc5; - @a=grep(!/^e_.*_bf$/,@a) if $no_bf; - @a=grep(!/^e_.*_c$/,@a) if $no_cast; - @a=grep(!/^e_rc4$/,@a) if $no_rc4; - @a=grep(!/^e_camellia$/,@a) if $no_camellia; - @a=grep(!/^e_seed$/,@a) if $no_seed; - - #@a=grep(!/(^s3_)|(^s23_)/,@a) if $no_ssl3; - - @a=grep(!/(_sock$)|(_acpt$)|(_conn$)|(^pxy_)/,@a) if $no_sock; - - @a=grep(!/(^md2)|(_md2$)/,@a) if $no_md2; - @a=grep(!/(^md4)|(_md4$)/,@a) if $no_md4; - @a=grep(!/(^md5)|(_md5$)/,@a) if $no_md5; - @a=grep(!/(rmd)|(ripemd)/,@a) if $no_ripemd; - @a=grep(!/(^blake)/,@a) if $no_blake2; - - @a=grep(!/(^d2i_r_)|(^i2d_r_)/,@a) if $no_rsa; - @a=grep(!/(^p_open$)/,@a) if $no_rsa; - - @a=grep(!/(m_dss$)|(m_dss1$)/,@a) if $no_dsa; - @a=grep(!/(^d2i_s_)|(^i2d_s_)|(_dsap$)/,@a) if $no_dsa; - - @a=grep(!/^n_pkey$/,@a) if $no_rsa || $no_rc4; - - @a=grep(!/_dhp$/,@a) if $no_dh; - - @a=grep(!/_mdc2$/,@a) if $no_mdc2; - - @a=grep(!/(srp)/,@a) if $no_srp; - - @a=grep(!/^engine$/,@a) if $no_engine; - @a=grep(!/^hw$/,@a) if $no_hw; - @a=grep(!/(^rsa$)|(^genrsa$)/,@a) if $no_rsa; - @a=grep(!/(^dsa$)|(^gendsa$)|(^dsaparam$)/,@a) if $no_dsa; - @a=grep(!/(^dh$)|(^gendh$)/,@a) if $no_dh; - - grep($_="$dir/$_",@a); - @a=grep(!/(^|\/)s_/,@a) if $no_sock; - @a=grep(!/(^|\/)bio_sock/,@a) if $no_sock; - $ret=join(' ',@a)." "; - return($ret); - } - -# change things so that each 'token' is only separated by one space -sub clean_up_ws - { - local($w)=@_; - - $w =~ s/^\s*(.*)\s*$/$1/; - $w =~ s/\s+/ /g; - return($w); - } - -sub do_defs - { - local($var,$files,$location,$postfix)=@_; - local($_,$ret,$pf); - local(*OUT,$tmp,$t); - - $files =~ s/\//$o/g if $o ne '/'; - $ret="$var="; - $n=1; - $Vars{$var}.=""; - foreach (split(/ /,$files)) - { - $orig=$_; - $_=&bname($_) unless /^\$/; - if ($n++ == 2) - { - $n=0; - $ret.="\\\n\t"; - } - if (($_ =~ /bss_file/) && ($postfix eq ".h")) - { $pf=".c"; } - else { $pf=$postfix; } - if ($_ =~ /BN_ASM/) { $t="$_ "; } - elsif ($_ =~ /BNCO_ASM/){ $t="$_ "; } - elsif ($_ =~ /AES_ASM/){ $t="$_ "; } - elsif ($_ =~ /DES_ENC/) { $t="$_ "; } - elsif ($_ =~ /BF_ENC/) { $t="$_ "; } - elsif ($_ =~ /CAST_ENC/){ $t="$_ "; } - elsif ($_ =~ /RC4_ENC/) { $t="$_ "; } - elsif ($_ =~ /RC5_ENC/) { $t="$_ "; } - elsif ($_ =~ /MD5_ASM/) { $t="$_ "; } - elsif ($_ =~ /SHA1_ASM/){ $t="$_ "; } - elsif ($_ =~ /RMD160_ASM/){ $t="$_ "; } - elsif ($_ =~ /WHIRLPOOL_ASM/){ $t="$_ "; } - elsif ($_ =~ /CPUID_ASM/){ $t="$_ "; } - else { $t="$location${o}$_$pf "; } - - $Vars{$var}.="$t "; - $ret.=$t; - } - chomp($ret); # Does this actually do something? /RL - $ret.="\n\n"; - return($ret); - } - -# return the name with the leading path removed -sub bname - { - local($ret)=@_; - $ret =~ s/^.*[\\\/]([^\\\/]+)$/$1/; - return($ret); - } - -# return the leading path -sub dname - { - my $ret=shift; - $ret =~ s/(^.*)[\\\/][^\\\/]+$/$1/; - return($ret); - } - -############################################################## -# do a rule for each file that says 'compile' to new direcory -# compile the files in '$files' into $to -sub do_compile_rule - { - local($to,$files,$ex)=@_; - local($ret,$_,$n,$d,$s); - - $files =~ s/\//$o/g if $o ne '/'; - foreach (split(/\s+/,$files)) - { - $n=&bname($_); - $d=&dname($_); - if (-f "${_}.c") - { - $ret.=&cc_compile_target("$to${o}$n$obj","${_}.c",$ex) - } - elsif (-f ($s="${d}${o}asm${o}${n}.pl") or - ($s=~s/sha256/sha512/ and -f $s) or - -f ($s="${d}${o}${n}.pl")) - { - $ret.=&perlasm_compile_target("$to${o}$n$obj",$s,$n); - } - elsif (-f ($s="${d}${o}asm${o}${n}.S") or - -f ($s="${d}${o}${n}.S")) - { - $ret.=&Sasm_compile_target("$to${o}$n$obj",$s,$n); - } - elsif (defined &special_compile_target and - ($s=special_compile_target($_))) - { - $ret.=$s; - } - else { die "no rule for $_"; } - } - return($ret); - } - -############################################################## -# do a rule for each file that says 'compile' to new direcory -sub perlasm_compile_target - { - my($target,$source,$bname)=@_; - - return platform_perlasm_compile_target($target, $source, $bname) - if defined &platform_perlasm_compile_target; - - my($ret); - $bname =~ s/(.*)\.[^\.]$/$1/; - $ret ="\$(TMP_D)$o$bname$asm_suffix: $source\n"; - $ret.="\t\$(PERL) $source $asmtype \$(CFLAG) \$\@\n"; - if ($fipscanisteronly) - { - $ret .= "\t\$(PERL) util$o.pl . \$@ norunasm \$(CFLAG)\n"; - } - $ret .= "\n"; - $ret.="$target: \$(TMP_D)$o$bname$asm_suffix\n"; - $ret.="\t\$(ASM) $afile\$\@ \$(TMP_D)$o$bname$asm_suffix\n\n"; - return($ret); - } - -sub Sasm_compile_target - { - my($target,$source,$bname)=@_; - my($ret); - - $bname =~ s/(.*)\.[^\.]$/$1/; - $ret ="\$(TMP_D)$o$bname.asm: $source\n"; - $ret.="\t\$(CC) -E \$(CFLAG) $source >\$\@\n"; - $ret.="\t\$(PERL) util\\fipsas.pl . \$@ norunasm \$(CFLAG)\n" if $fipscanisteronly; - $ret.="\n"; - $ret.="$target: \$(TMP_D)$o$bname.asm\n"; - $ret.="\t\$(ASM) $afile\$\@ \$(TMP_D)$o$bname.asm\n\n"; - return($ret); - } - -sub cc_compile_target - { - local($target,$source,$ex_flags)=@_; - local($ret); - - $target =~ s/\//$o/g if $o ne "/"; - $source =~ s/\//$o/g if $o ne "/"; - $ret ="$target: \$(SRC_D)$o$source\n\t"; - $ret.="\$(CC)"; - $ret.= " -MMD" if $orig_platform eq "copy"; - $ret.= " ${ofile}$target $ex_flags -c \$(SRC_D)$o$source\n\n"; - $target =~ s/\.o$/.d/; - $ret.=".sinclude \"$target\"\n\n" if $orig_platform eq "copy"; - return($ret); - } - -############################################################## -sub do_asm_rule - { - local($target,$src)=@_; - local($ret,@s,@t,$i); - - $target =~ s/\//$o/g if $o ne "/"; - $src =~ s/\//$o/g if $o ne "/"; - - @t=split(/\s+/,$target); - @s=split(/\s+/,$src); - - - for ($i=0; $i<=$#s; $i++) - { - my $objfile = $t[$i]; - my $srcfile = $s[$i]; - - if ($perl_asm == 1) - { - my $plasm = $objfile; - $plasm =~ s/${obj}/.pl/; - $ret.="$srcfile: $plasm\n"; - $ret.="\t\$(PERL) $plasm $asmtype \$(CFLAG) $srcfile\n\n"; - } - - $ret.="$objfile: $srcfile\n"; - $ret.="\t\$(ASM) $afile$objfile \$(SRC_D)$o$srcfile\n\n"; - } - return($ret); - } - -sub do_shlib_rule - { - local($n,$def)=@_; - local($ret,$nn); - local($t); - - ($nn=$n) =~ tr/a-z/A-Z/; - $ret.="$n.dll: \$(${nn}OBJ)\n"; - if ($vc && $w32) - { - $ret.="\t\$(MKSHLIB) $efile$n.dll $def @<<\n \$(${nn}OBJ_F)\n<<\n"; - } - $ret.="\n"; - return($ret); - } - -# do a rule for each file that says 'copy' to new direcory on change -sub do_copy_rule - { - local($to,$files,$p)=@_; - local($ret,$_,$n,$pp); - - - $files =~ s/\//$o/g if $o ne '/'; - foreach (split(/\s+/,$files)) - { - $n=&bname($_); - if ($n =~ /bss_file/) - { $pp=".c"; } - else { $pp=$p; } - $ret.="$to${o}$n$pp: \$(SRC_D)$o$_$pp\n\t\$(PERL) \$(SRC_D)${o}util${o}copy-if-different.pl \"\$(SRC_D)$o$_$pp\" \"$to${o}$n$pp\"\n\n"; - } - return($ret); - } - -sub do_dofile_rule - { - (my $to, my $file, my $tmpl) = @_; - - $file =~ s|/|$o|g if $o ne '/'; - return <<"EOF"; -$to${o}$file: $tmpl - \$(PERL) "-I." "-Mconfigdata" util/dofile.pl "$tmpl" > "$to${o}$file.new" - \$(MV) "$to${o}$file.new" "$to${o}$file" -EOF - } - -# Options picked up from the OPTIONS line in the top level Makefile -# generated by Configure. - -sub read_options - { - # Many options are handled in a similar way. In particular - # no-xxx sets zero or more scalars to 1. - # Process these using the %valid_options hash containing the option - # name and reference to the scalars to set. In some cases the option - # needs no special handling and can be ignored: this is done by - # setting the value to 0. - - my %valid_options = ( - "no-rc2" => \$no_rc2, - "no-rc4" => \$no_rc4, - "no-rc5" => \$no_rc5, - "no-idea" => \$no_idea, - "no-aes" => \$no_aes, - "no-camellia" => \$no_camellia, - "no-seed" => \$no_seed, - "no-des" => \$no_des, - "no-bf" => \$no_bf, - "no-cast" => \$no_cast, - "no-md2" => \$no_md2, - "no-md4" => \$no_md4, - "no-md5" => \$no_md5, - "no-rmd160" => \$no_ripemd, - "no-blake2" => \$no_blake2, - "no-mdc2" => \$no_mdc2, - "no-whirlpool" => \$no_whirlpool, - "no-patents" => - [\$no_rc2, \$no_rc4, \$no_rc5, \$no_idea, \$no_rsa], - "no-rsa" => \$no_rsa, - "no-dsa" => \$no_dsa, - "no-dh" => \$no_dh, - "no-asm" => \$no_asm, - "nasm" => \$nasm, - "gaswin" => \$gaswin, - "no-ssl3" => \$no_ssl3, - "no-ssl3-method" => 0, - "no-weak-ssl-ciphers" => 0, - "no-srp" => \$no_srp, - "no-cms" => \$no_cms, - "no-ec2m" => \$no_ec2m, - "no-ec_nistp_64_gcc_128" => 0, - "no-err" => \$no_err, - "no-sock" => \$no_sock, - "no-ec" => \$no_ec, - "no-gost" => \$no_gost, - "no-engine" => \$no_engine, - "no-egd" => 0, - "no-heartbeats" => 0, - "no-hw" => \$no_hw, - "no-async" => \$no_async, - "no-autoalginit" => \$no_autoalginit, - "no-autoerrinit" => \$no_autoerrinit, - "just-ssl" => - [\$no_rc2, \$no_idea, \$no_des, \$no_bf, \$no_cast, - \$no_md2, \$no_mdc2, \$no_dsa, \$no_dh, - \$no_err, \$no_ripemd, \$no_rc5, - \$no_aes, \$no_camellia, \$no_seed, \$no_srp], - "rsaref" => 0, - "gcc" => \$gcc, - "debug" => \$debug, - "--debug" => \$debug, - "--classic" => 0, - "profile" => \$profile, - "shlib" => \$shlib, - "dll" => \$shlib, - "shared" => 0, - "no-sctp" => 0, - "no-srtp" => 0, - "no-gmp" => 0, - "no-rfc3779" => 0, - "no-montasm" => 0, - "no-shared" => 0, - "no-store" => 0, - "no-zlib" => 0, - "no-zlib-dynamic" => 0, - "no-ssl-trace" => 0, - "no-unit-test" => 0, - "no-comp" => \$no_comp, - "no-deprecated" => 0, - "no-ocb" => 0, - "no-crypto-mdebug" => 0, - "no-crypto-mdebug-backtrace" => 0, - "fips" => \$fips, - "fipscanisterbuild" => [\$fips, \$fipscanisterbuild], - "fipscanisteronly" => [\$fips, \$fipscanisterbuild, \$fipscanisteronly], - "fipscheck" => [\$fips, \$fipscanisterbuild, \$fipscanisteronly], - ); - - if (exists $valid_options{$_}) - { - my $r = $valid_options{$_}; - if ( ref $r eq "SCALAR") - { $$r = 1;} - elsif ( ref $r eq "ARRAY") - { - my $r2; - foreach $r2 (@$r) - { - $$r2 = 1; - } - } - } - elsif (/^enable-zlib$/) { $zlib_opt = 1 if $zlib_opt == 0 } - elsif (/^enable-zlib-dynamic$/) - { - $zlib_opt = 2; - } - elsif (/^no-static-engine/ or /^enable-dynamic-engine/) - { - $no_static_engine = 1; - } - elsif (/^no-dynamic-engine/ or /^enable-static-engine/) - { - $no_static_engine = 0; - } - # There are also enable-xxx options which correspond to - # the no-xxx. Since the scalars are enabled by default - # these can be ignored. - elsif (/^enable-/) - { - my $t = $_; - $t =~ s/^enable/no/; - if (exists $valid_options{$t}) - {return 1;} - return 0; - } - elsif (/^([^=]*)=(.*)$/){ $VARS{$1}=$2; } - elsif (/^-[lL].*$/) { $l_flags.="$_ "; } - elsif ((!/^-help/) && (!/^-h/) && (!/^-\?/) && /^-.*$/) - { $c_flags.="$_ "; } - else { return(0); } - return(1); - } - -sub fipslib_error - { - print STDERR "***FIPS module directory sanity check failed***\n"; - print STDERR "FIPS module build failed, or was deleted\n"; - print STDERR "Please rebuild FIPS module.\n"; - exit 1; - } - -sub fips_check_files - { - my $dir = shift @_; - my $ret = 1; - if (!-d $dir) - { - print STDERR "FIPS module directory $dir does not exist\n"; - fipslib_error(); - } - foreach (@_) - { - if (!-f "$dir${o}$_") - { - print STDERR "FIPS module file $_ does not exist!\n"; - $ret = 0; - } - } - fipslib_error() if ($ret == 0); - } diff --git a/util/mkfiles.pl b/util/mkfiles.pl deleted file mode 100755 index 0e4f71e04d..0000000000 --- a/util/mkfiles.pl +++ /dev/null @@ -1,150 +0,0 @@ -#!/usr/local/bin/perl -# -# This is a hacked version of files.pl for systems that can't do a 'make files'. -# Do a perl util/mkminfo.pl >MINFO to build MINFO -# Written by Steve Henson 1999. - -# List of directories to process - -my @dirs = ( -".", -"crypto", -"crypto/md2", -"crypto/md4", -"crypto/md5", -"crypto/sha", -"crypto/mdc2", -"crypto/hmac", -"crypto/ripemd", -"crypto/des", -"crypto/rc2", -"crypto/rc4", -"crypto/rc5", -"crypto/idea", -"crypto/bf", -"crypto/cast", -"crypto/aes", -"crypto/camellia", -"crypto/seed", -"crypto/modes", -"crypto/cmac", -"crypto/bn", -"crypto/rsa", -"crypto/dsa", -"crypto/dso", -"crypto/dh", -"crypto/ec", -"crypto/buffer", -"crypto/bio", -"crypto/stack", -"crypto/lhash", -"crypto/rand", -"crypto/err", -"crypto/objects", -"crypto/evp", -"crypto/asn1", -"crypto/pem", -"crypto/x509", -"crypto/x509v3", -"crypto/cms", -"crypto/conf", -"crypto/txt_db", -"crypto/pkcs7", -"crypto/pkcs12", -"crypto/comp", -"crypto/engine", -"crypto/ocsp", -"crypto/ui", -#"crypto/store", -"crypto/whrlpool", -"crypto/ts", -"crypto/srp", -"crypto/ct", -"crypto/async", -"crypto/chacha", -"crypto/poly1305", -"crypto/blake2", -"crypto/kdf", -"ssl", -"apps", -"engines", -"test", -"tools" -); - -%top; - -my $fipscanisteronly = 0; - -foreach (@dirs) { - next if ($fipscanisteronly && !(-d $_)); - &files_dir ($_, "Makefile"); -} - -exit(0); - -sub files_dir -{ -my ($dir, $makefile) = @_; - -my %sym; - -open (IN, "$dir/$makefile") || die "Can't open $dir/$makefile"; - -my $s=""; - -while () - { - s|\R$||; - s/#.*//; - if (/^([^\s=]+)\s*=\s*(.*)$/) - { - $o=""; - ($s,$b)=($1,$2); - for (;;) - { - if ($b =~ /\\$/) - { - $b=$`; - $o.=$b." "; - $b = "" unless defined($b = ); - $b =~ s{\R$}{}; - } - else - { - $o.=$b." "; - last; - } - } - $o =~ s/^\s+//; - $o =~ s/\s+$//; - $o =~ s/\s+/ /g; - - $o =~ s/\$[({]([^)}]+)[)}]/$top{$1} or $sym{$1}/ge; - $sym{$s}=($top{$s} or $o); - } - } - -print "RELATIVE_DIRECTORY=$dir\n"; - -foreach (sort keys %sym) - { - print "$_=$sym{$_}\n"; - } -if ($dir eq "." && defined($sym{"BUILDENV"})) - { - foreach (split(' ',$sym{"BUILDENV"})) - { - /^(.+)=/; - $top{$1}=$sym{$1}; - } - } - -print "RELATIVE_DIRECTORY=\n"; - -close (IN); -if ($dir eq "." && $sym{FIPSCANISTERONLY} eq "y") - { - $fipscanisteronly = 1; - } -} diff --git a/util/pl/Mingw32.pl b/util/pl/Mingw32.pl deleted file mode 100644 index 55c85f6447..0000000000 --- a/util/pl/Mingw32.pl +++ /dev/null @@ -1,104 +0,0 @@ -#!/usr/local/bin/perl -# -# Mingw32.pl -- Mingw -# - -$o='/'; -$cp='cp'; -$rm='rm -f'; -$mkdir='gmkdir'; - -$o='\\'; -$cp='copy'; -$rm='del'; -$mkdir='mkdir'; - -# C compiler stuff - -$cc='gcc'; -if ($debug) - { $cflags="-DL_ENDIAN -DDSO_WIN32 -g2 -ggdb"; } -else - { $cflags="-DL_ENDIAN -DDSO_WIN32 -fomit-frame-pointer -O3 -mcpu=i486 -Wall"; } - -if ($gaswin and !$no_asm) - { - $bn_asm_obj='$(OBJ_D)\bn-win32.o'; - $bn_asm_src='crypto/bn/asm/bn-win32.s'; - $bnco_asm_obj='$(OBJ_D)\co-win32.o'; - $bnco_asm_src='crypto/bn/asm/co-win32.s'; - $des_enc_obj='$(OBJ_D)\d-win32.o $(OBJ_D)\y-win32.o'; - $des_enc_src='crypto/des/asm/d-win32.s crypto/des/asm/y-win32.s'; - $bf_enc_obj='$(OBJ_D)\b-win32.o'; - $bf_enc_src='crypto/bf/asm/b-win32.s'; -# $cast_enc_obj='$(OBJ_D)\c-win32.o'; -# $cast_enc_src='crypto/cast/asm/c-win32.s'; - $rc4_enc_obj='$(OBJ_D)\r4-win32.o'; - $rc4_enc_src='crypto/rc4/asm/r4-win32.s'; - $rc5_enc_obj='$(OBJ_D)\r5-win32.o'; - $rc5_enc_src='crypto/rc5/asm/r5-win32.s'; - $md5_asm_obj='$(OBJ_D)\m5-win32.o'; - $md5_asm_src='crypto/md5/asm/m5-win32.s'; - $rmd160_asm_obj='$(OBJ_D)\rm-win32.o'; - $rmd160_asm_src='crypto/ripemd/asm/rm-win32.s'; - $sha1_asm_obj='$(OBJ_D)\s1-win32.o'; - $sha1_asm_src='crypto/sha/asm/s1-win32.s'; - $cflags.=" -DBN_ASM -DMD5_ASM -DSHA1_ASM -DOPENSSL_BN_ASM_PART_WORDS"; - } - - -$obj='.o'; -$ofile='-o '; - -# EXE linking stuff -$link='${CC}'; -$lflags='${CFLAGS}'; -$efile='-o '; -$exep=''; -$ex_libs="-lws2_32 -lgdi32"; - -# static library stuff -$mklib='ar r'; -$mlflags=''; -$ranlib='ranlib'; -$plib='lib'; -$libp=".a"; -$shlibp=".a"; -$lfile=''; - -$asm='as'; -$afile='-o '; -#$bn_asm_obj=""; -#$bn_asm_src=""; -#$des_enc_obj=""; -#$des_enc_src=""; -#$bf_enc_obj=""; -#$bf_enc_src=""; - -sub do_lib_rule - { - local($obj,$target,$name,$shlib)=@_; - local($ret,$_,$Name); - - $target =~ s/\//$o/g if $o ne '/'; - $target="$target"; - ($Name=$name) =~ tr/a-z/A-Z/; - - $ret.="$target: \$(${Name}OBJ)\n"; - $ret.="\tif exist $target \$(RM) $target\n"; - $ret.="\t\$(MKLIB) $target \$(${Name}OBJ)\n"; - $ret.="\t\$(RANLIB) $target\n\n"; - } - -sub do_link_rule - { - local($target,$files,$dep_libs,$libs)=@_; - local($ret,$_); - - $file =~ s/\//$o/g if $o ne '/'; - $n=&bname($target); - $ret.="$target: $files $dep_libs\n"; - $ret.="\t\$(LINK_CMD) ${efile}$target \$(LFLAGS) $files $libs\n\n"; - return($ret); - } -1; diff --git a/util/pl/linux.pl b/util/pl/linux.pl deleted file mode 100644 index cb5dd59c29..0000000000 --- a/util/pl/linux.pl +++ /dev/null @@ -1,104 +0,0 @@ -#!/usr/local/bin/perl -# -# linux.pl - the standard unix makefile stuff. -# - -$o='/'; -$cp='/bin/cp'; -$rm='/bin/rm -f'; - -# C compiler stuff - -$cc='gcc'; -if ($debug) - { $cflags="-g2 -ggdb -DREF_DEBUG"; } -elsif ($profile) - { $cflags="-pg -O3"; } -else - { $cflags="-O3 -fomit-frame-pointer"; } - -if (!$no_asm) - { - $bn_asm_obj='$(OBJ_D)/bn86-elf.o'; - $bn_asm_src='crypto/bn/asm/bn86unix.cpp'; - $bnco_asm_obj='$(OBJ_D)/co86-elf.o'; - $bnco_asm_src='crypto/bn/asm/co86unix.cpp'; - $des_enc_obj='$(OBJ_D)/dx86-elf.o $(OBJ_D)/yx86-elf.o'; - $des_enc_src='crypto/des/asm/dx86unix.cpp crypto/des/asm/yx86unix.cpp'; - $bf_enc_obj='$(OBJ_D)/bx86-elf.o'; - $bf_enc_src='crypto/bf/asm/bx86unix.cpp'; - $cast_enc_obj='$(OBJ_D)/cx86-elf.o'; - $cast_enc_src='crypto/cast/asm/cx86unix.cpp'; - $rc4_enc_obj='$(OBJ_D)/rx86-elf.o'; - $rc4_enc_src='crypto/rc4/asm/rx86unix.cpp'; - $rc5_enc_obj='$(OBJ_D)/r586-elf.o'; - $rc5_enc_src='crypto/rc5/asm/r586unix.cpp'; - $md5_asm_obj='$(OBJ_D)/mx86-elf.o'; - $md5_asm_src='crypto/md5/asm/mx86unix.cpp'; - $rmd160_asm_obj='$(OBJ_D)/rm86-elf.o'; - $rmd160_asm_src='crypto/ripemd/asm/rm86unix.cpp'; - $sha1_asm_obj='$(OBJ_D)/sx86-elf.o'; - $sha1_asm_src='crypto/sha/asm/sx86unix.cpp'; - $cflags.=" -DBN_ASM -DMD5_ASM -DSHA1_ASM -DOPENSSL_BN_ASM_PART_WORDS"; - } - -$cflags.=" -DTERMIO -DL_ENDIAN -m486 -Wall"; - -if ($shlib) - { - $shl_cflag=" -DPIC -fpic"; - $shlibp=".so.$ssl_version"; - $so_shlibp=".so"; - } - -sub do_shlib_rule - { - local($obj,$target,$name,$shlib,$so_name)=@_; - local($ret,$_,$Name); - - $target =~ s/\//$o/g if $o ne '/'; - ($Name=$name) =~ tr/a-z/A-Z/; - - $ret.="$target: \$(${Name}OBJ)\n"; - $ret.="\t\$(RM) target\n"; - $ret.="\tgcc \${CFLAGS} -shared -Wl,-soname,$target -o $target \$(${Name}OBJ)\n"; - ($t=$target) =~ s/(^.*)\/[^\/]*$/$1/; - if ($so_name ne "") - { - $ret.="\t\$(RM) \$(LIB_D)$o$so_name\n"; - $ret.="\tln -s $target \$(LIB_D)$o$so_name\n\n"; - } - } - -sub do_link_rule - { - local($target,$files,$dep_libs,$libs)=@_; - local($ret,$_); - - $file =~ s/\//$o/g if $o ne '/'; - $n=&bname($target); - $ret.="$target: $files $dep_libs\n"; - $ret.="\t\$(LINK_CMD) ${efile}$target \$(LFLAGS) $files $libs\n\n"; - return($ret); - } - -sub do_asm_rule - { - local($target,$src)=@_; - local($ret,@s,@t,$i); - - $target =~ s/\//$o/g if $o ne "/"; - $src =~ s/\//$o/g if $o ne "/"; - - @s=split(/\s+/,$src); - @t=split(/\s+/,$target); - - for ($i=0; $i<=$#s; $i++) - { - $ret.="$t[$i]: $s[$i]\n"; - $ret.="\tgcc -E -DELF \$(SRC_D)$o$s[$i]|\$(AS) $afile$t[$i]\n\n"; - } - return($ret); - } - -1; diff --git a/util/pl/unix.pl b/util/pl/unix.pl deleted file mode 100644 index 8d9f25a484..0000000000 --- a/util/pl/unix.pl +++ /dev/null @@ -1,210 +0,0 @@ -#!/usr/local/bin/perl -# -# unix.pl - the standard unix makefile stuff. -# - -$o='/'; -$cp='/bin/cp'; -$rm='/bin/rm -f'; - -# C compiler stuff - -if ($gcc) - { - $cc='gcc'; - if ($debug) - { $cflags="-g2 -ggdb"; } - else - { $cflags="-O3 -fomit-frame-pointer"; } - } -else - { - $cc='cc'; - if ($debug) - { $cflags="-g"; } - else - { $cflags="-O"; } - } -$obj='.o'; -$asm_suffix='.s'; -$ofile='-o '; - -# EXE linking stuff -$link='${CC}'; -$lflags='${CFLAG}'; -$efile='-o '; -$exep=''; -$ex_libs=""; - -# static library stuff -$mklib='ar r'; -$mlflags=''; -$ranlib=&which("ranlib") or $ranlib="true"; -$plib='lib'; -$libp=".a"; -$shlibp=".a"; -$lfile=''; - -$asm='as'; -$afile='-o '; -$bn_asm_obj=""; -$bn_asm_src=""; -$des_enc_obj=""; -$des_enc_src=""; -$bf_enc_obj=""; -$bf_enc_src=""; - -%perl1 = ( - 'md5-x86_64' => 'crypto/md5', - 'x86_64-mont' => 'crypto/bn', - 'x86_64-mont5' => 'crypto/bn', - 'x86_64-gf2m' => 'crypto/bn', - 'aes-x86_64' => 'crypto/aes', - 'vpaes-x86_64' => 'crypto/aes', - 'bsaes-x86_64' => 'crypto/aes', - 'aesni-x86_64' => 'crypto/aes', - 'aesni-sha1-x86_64' => 'crypto/aes', - 'sha1-x86_64' => 'crypto/sha', - 'e_padlock-x86_64' => 'engines', - 'rc4-x86_64' => 'crypto/rc4', - 'rc4-md5-x86_64' => 'crypto/rc4', - 'ghash-x86_64' => 'crypto/modes', - 'aesni-gcm-x86_64' => 'crypto/modes', - 'aesni-sha256-x86_64' => 'crypto/aes', - 'rsaz-x86_64' => 'crypto/bn', - 'rsaz-avx2' => 'crypto/bn', - 'aesni-mb-x86_64' => 'crypto/aes', - 'sha1-mb-x86_64' => 'crypto/sha', - 'sha256-mb-x86_64' => 'crypto/sha', - 'ecp_nistz256-x86_64' => 'crypto/ec', - 'wp-x86_64' => 'crypto/whrlpool', - 'cmll-x86_64' => 'crypto/camellia', - ); - -# If I were feeling more clever, these could probably be extracted -# from makefiles. -sub platform_perlasm_compile_target - { - local($target, $source, $bname) = @_; - - for $p (keys %perl1) - { -# FIXME: export CC so rsaz-avx2 can test for it, since BSD make does -# not export variables, unlike GNU make. But this also requires fixing -# the .s.o rule to use CC! - if ($target eq "\$(OBJ_D)/$p.o") - { - return << "EOF"; -\$(TMP_D)/$p.s: $perl1{$p}/asm/$p.pl - \$(PERL) $perl1{$p}/asm/$p.pl \$(PERLASM_SCHEME) \$@ -EOF - } - } - if ($target eq '$(OBJ_D)/x86_64cpuid.o') - { - return << 'EOF'; -$(TMP_D)/x86_64cpuid.s: crypto/x86_64cpuid.pl - $(PERL) crypto/x86_64cpuid.pl $(PERLASM_SCHEME) $@ -EOF - } - elsif ($target eq '$(OBJ_D)/sha256-x86_64.o') - { - return << 'EOF'; -$(TMP_D)/sha256-x86_64.s: crypto/sha/asm/sha512-x86_64.pl - $(PERL) crypto/sha/asm/sha512-x86_64.pl $(PERLASM_SCHEME) $@ -EOF - } - elsif ($target eq '$(OBJ_D)/sha512-x86_64.o') - { - return << 'EOF'; -$(TMP_D)/sha512-x86_64.s: crypto/sha/asm/sha512-x86_64.pl - $(PERL) crypto/sha/asm/sha512-x86_64.pl $(PERLASM_SCHEME) $@ -EOF - } - elsif ($target eq '$(OBJ_D)/sha512-x86_64.o') - { - return << 'EOF'; -$(TMP_D)/sha512-x86_64.s: crypto/sha/asm/sha512-x86_64.pl - $(PERL) crypto/sha/asm/sha512-x86_64.pl $(PERLASM_SCHEME) $@ -EOF - } - - die $target; - } - -sub special_compile_target - { - local($target) = @_; - - if ($target eq 'crypto/bn/x86_64-gcc') - { - return << "EOF"; -\$(TMP_D)/x86_64-gcc.o: crypto/bn/asm/x86_64-gcc.c - \$(CC) \$(LIB_CFLAGS) -c -o \$@ crypto/bn/asm/x86_64-gcc.c -EOF - } - return undef; - } - -sub do_lib_rule - { - local($obj,$target,$name,$shlib)=@_; - local($ret,$_,$Name); - - $target =~ s/\//$o/g if $o ne '/'; - $target="$target"; - ($Name=$name) =~ tr/a-z/A-Z/; - - $ret.="$target: \$(${Name}OBJ)\n"; - $ret.="\t\$(RM) $target\n"; - $ret.="\t\$(MKLIB) $target \$(${Name}OBJ)\n"; - $ret.="\t\$(RANLIB) $target\n\n"; - } - -sub do_link_rule - { - local($target,$files,$dep_libs,$libs)=@_; - local($ret,$_); - - $file =~ s/\//$o/g if $o ne '/'; - $n=&bname($target); - $ret.="$target: $files $dep_libs\n"; - $ret.="\t\$(LINK_CMD) ${efile}$target \$(LFLAGS) $files $libs\n\n"; - return($ret); - } - -sub which - { - my ($name)=@_; - my $path; - foreach $path (split /:/, $ENV{PATH}) - { - if (-x "$path/$name") - { - return "$path/$name"; - } - } - } - -sub do_rehash_rule { - my ($target, $deps) = @_; - my $ret = <<"EOF"; -$target: $deps - touch $target -EOF - return $ret -} -sub do_test_rule { - my ($target, $deps, $test_cmd) = @_; - my $ret = <<"EOF"; -$target: $deps force.$target - TOP=. BIN_D=\$(BIN_D) TEST_D=\$(TEST_D) OPENSSL_ENGINES=$(ENG_D) \\ - PERL=\$(PERL) \$(PERL) test/$test_cmd \$(TESTS) -force.$target: - -EOF - return $ret; -} - - -1; -- 2.34.1