Add an explicit list of options that can be disabled, enabled, ...
Configure has, so far, had no control at all of which 'no-' options it can be given. This means that, for example, someone could configure with something absurd like 'no-stack' and then watch the build crumble to dust... or file a bug report. This introduces some sanity into the possible choices. The added list comes from looking for the explicit ones used in Configure, and from grepping after OPENSSL_NO_ in all source files. Reviewed-by: Rich Salz <rsalz@openssl.org>
This commit is contained in:
parent
15db6a40d3
commit
8b527be2db
89
Configure
89
Configure
@ -796,6 +796,86 @@ my $default_ranlib;
|
|||||||
my $perl;
|
my $perl;
|
||||||
my $fips=0;
|
my $fips=0;
|
||||||
|
|
||||||
|
# Explicitelly known options that are possible to disable. They can
|
||||||
|
# be regexps, and will be used like this: /^no-${option}$/
|
||||||
|
# For developers: keep it sorted alphabetically
|
||||||
|
|
||||||
|
my @disablables = (
|
||||||
|
"aes",
|
||||||
|
"asm",
|
||||||
|
"bf",
|
||||||
|
"camellia",
|
||||||
|
"capieng",
|
||||||
|
"cast",
|
||||||
|
"cmac",
|
||||||
|
"cms",
|
||||||
|
"comp",
|
||||||
|
"ct",
|
||||||
|
"deprecated",
|
||||||
|
"des",
|
||||||
|
"dgram",
|
||||||
|
"dh",
|
||||||
|
"dsa",
|
||||||
|
"dso",
|
||||||
|
"dtls1?",
|
||||||
|
"dynamic[-_]engine",
|
||||||
|
"ec",
|
||||||
|
"ec2m",
|
||||||
|
"ec_nistp_64_gcc_128",
|
||||||
|
"engine",
|
||||||
|
"err", # Really???
|
||||||
|
"gmp",
|
||||||
|
"gost",
|
||||||
|
"heartbeats",
|
||||||
|
"hmac",
|
||||||
|
"hw(-.+)?",
|
||||||
|
"idea",
|
||||||
|
"jpake",
|
||||||
|
"locking", # Really???
|
||||||
|
"md2",
|
||||||
|
"md4",
|
||||||
|
"md5",
|
||||||
|
"mdc2",
|
||||||
|
"md[-_]ghost94",
|
||||||
|
"nextprotoneg",
|
||||||
|
"ocb",
|
||||||
|
"ocsp",
|
||||||
|
"posix-io",
|
||||||
|
"psk",
|
||||||
|
"rc2",
|
||||||
|
"rc4",
|
||||||
|
"rc5",
|
||||||
|
"rdrand",
|
||||||
|
"rfc3779",
|
||||||
|
"rijndael", # Old AES name
|
||||||
|
"rmd160",
|
||||||
|
"rsa",
|
||||||
|
"scrypt",
|
||||||
|
"sct",
|
||||||
|
"sctp",
|
||||||
|
"seed",
|
||||||
|
"sha",
|
||||||
|
"shared",
|
||||||
|
"sock",
|
||||||
|
"srp",
|
||||||
|
"srtp",
|
||||||
|
"sse2",
|
||||||
|
"ssl",
|
||||||
|
"ssl3",
|
||||||
|
"ssl3-method",
|
||||||
|
"ssl-trace",
|
||||||
|
"static-engine",
|
||||||
|
"stdio",
|
||||||
|
"store",
|
||||||
|
"threads",
|
||||||
|
"tls",
|
||||||
|
"tls1",
|
||||||
|
"unit-test",
|
||||||
|
"whirlpool",
|
||||||
|
"zlib",
|
||||||
|
"zlib-dynamic",
|
||||||
|
);
|
||||||
|
|
||||||
# All of the following is disabled by default (RC5 was enabled before 0.9.8):
|
# All of the following is disabled by default (RC5 was enabled before 0.9.8):
|
||||||
|
|
||||||
my %disabled = ( # "what" => "comment" [or special keyword "experimental"]
|
my %disabled = ( # "what" => "comment" [or special keyword "experimental"]
|
||||||
@ -878,6 +958,15 @@ PROCESS_ARGS:
|
|||||||
s /^zlib$/enable-zlib/;
|
s /^zlib$/enable-zlib/;
|
||||||
s /^zlib-dynamic$/enable-zlib-dynamic/;
|
s /^zlib-dynamic$/enable-zlib-dynamic/;
|
||||||
|
|
||||||
|
if (/^(no|disable|enable|experimental)-(.+)$/)
|
||||||
|
{
|
||||||
|
my $word = $2;
|
||||||
|
if (!grep { $word =~ /^${_}$/ } @disablables)
|
||||||
|
{
|
||||||
|
warn "Unsupported option ${word}, ignored...\n";
|
||||||
|
next;
|
||||||
|
}
|
||||||
|
}
|
||||||
if (/^no-(.+)$/ || /^disable-(.+)$/)
|
if (/^no-(.+)$/ || /^disable-(.+)$/)
|
||||||
{
|
{
|
||||||
if (!($disabled{$1} eq "experimental"))
|
if (!($disabled{$1} eq "experimental"))
|
||||||
|
Loading…
x
Reference in New Issue
Block a user