summaryrefslogtreecommitdiff
path: root/Configure
diff options
context:
space:
mode:
authorRichard Levitte <levitte@openssl.org>2020-03-02 10:50:24 +0100
committerRichard Levitte <levitte@openssl.org>2020-03-04 17:12:52 +0100
commitb16654a2810c91384d60f30683d83416866e72d2 (patch)
tree927856f8edcc69434d26dbee938a6c60bf4a431a /Configure
parent6caf63ec4871a578f6f99c668b67e495ccc2bbf6 (diff)
downloadopenssl-new-b16654a2810c91384d60f30683d83416866e72d2.tar.gz
config, Configure: move the check of removed crypto/ sub-systems
The 'config' script checked for a bunch of crypto/ sub-system directories, and added 'no-' options if they weren't there. We move it to 'Configure' in an effort to simplify 'config' for further work. Note: this is pretty much a historical thing. In modern OpenSSL, it's much simpler to edit the SUBDIRS statement in crypto/build.info. However, it's been claimed the there are those who still remove some of these sub-system sources. Reviewed-by: Matt Caswell <matt@openssl.org> (Merged from https://github.com/openssl/openssl/pull/11217)
Diffstat (limited to 'Configure')
-rwxr-xr-xConfigure13
1 files changed, 13 insertions, 0 deletions
diff --git a/Configure b/Configure
index 19b57d90b8..64e30fe2a0 100755
--- a/Configure
+++ b/Configure
@@ -265,6 +265,19 @@ if (grep /^reconf(igure)?$/, @argvcopy) {
$config{perlargv} = [ @argvcopy ];
+# Historical: if known directories in crypto/ have been removed, it means
+# that those sub-systems are disabled.
+# (the other option would be to removed them from the SUBDIRS statement in
+# crypto/build.info)
+# We reverse the input list for cosmetic purely reasons, to compensate that
+# 'unshift' adds at the front of the list (i.e. in reverse input order).
+foreach ( reverse sort( 'aes', 'aria', 'bf', 'camellia', 'cast', 'des', 'dh',
+ 'dsa', 'ec', 'hmac', 'idea', 'md2', 'md5', 'mdc2',
+ 'rc2', 'rc4', 'rc5', 'ripemd', 'rsa', 'seed', 'sha',
+ 'sm2', 'sm3', 'sm4') ) {
+ unshift @argvcopy, "no-$_" if ! -d catdir($srcdir, 'crypto', $_);
+}
+
# Collect version numbers
my %version = ();