mirror of
https://github.com/curl/curl.git
synced 2024-12-27 06:59:43 +08:00
c09466abff
EGD is Entropy Gathering Daemon, a socket-based entropy source supported by pre-OpenSSL v1.1 versions and now deprecated. curl also deprecated it a while ago. Its detection in CMake was broken all along because OpenSSL libs were not linked at the point of feature check. Delete detection from both cmake and autotools, along with the related source snippet, and the `--with-egd-socket=` `./configure` option. Closes #11556
186 lines
4.3 KiB
Perl
Executable File
186 lines
4.3 KiB
Perl
Executable File
#!/usr/bin/perl
|
|
#***************************************************************************
|
|
# _ _ ____ _
|
|
# Project ___| | | | _ \| |
|
|
# / __| | | | |_) | |
|
|
# | (__| |_| | _ <| |___
|
|
# \___|\___/|_| \_\_____|
|
|
#
|
|
# Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
|
#
|
|
# This software is licensed as described in the file COPYING, which
|
|
# you should have received as part of this distribution. The terms
|
|
# are also available at https://curl.se/docs/copyright.html.
|
|
#
|
|
# You may opt to use, copy, modify, merge, publish, distribute and/or sell
|
|
# copies of the Software, and permit persons to whom the Software is
|
|
# furnished to do so, under the terms of the COPYING file.
|
|
#
|
|
# This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
|
|
# KIND, either express or implied.
|
|
#
|
|
# SPDX-License-Identifier: curl
|
|
#
|
|
###########################################################################
|
|
|
|
# these options are enabled by default in the sense that they will attempt to
|
|
# check for and use this feature without the configure flag
|
|
my %defaulton = (
|
|
# --enable-
|
|
'shared' => 1,
|
|
'static' => 1,
|
|
'fast-install' => 1,
|
|
'silent-rules' => 1,
|
|
'optimize' => 1,
|
|
'http' => 1,
|
|
'ftp' => 1,
|
|
'file' => 1,
|
|
'ldap' => 1,
|
|
'ldaps' => 1,
|
|
'rtsp' => 1,
|
|
'proxy' => 1,
|
|
'dict' => 1,
|
|
'telnet' => 1,
|
|
'tftp' => 1,
|
|
'pop3' => 1,
|
|
'imap' => 1,
|
|
'smb' => 1,
|
|
'smtp' => 1,
|
|
'gopher' => 1,
|
|
'mqtt' => 1,
|
|
'manual' => 1,
|
|
'libcurl-option' => 1,
|
|
'libgcc' => 1,
|
|
'ipv6' => 1,
|
|
'openssl-auto-load-config' => 1,
|
|
'versioned-symbols' => 1,
|
|
'symbol-hiding' => 1,
|
|
'threaded-resolver' => 1,
|
|
'pthreads' => 1,
|
|
'verbose' => 1,
|
|
'crypto-auth' => 1,
|
|
'ntlm' => 1,
|
|
'ntlm-wb' => 1,
|
|
'tls-srp' => 1,
|
|
'unix-sockets' => 1,
|
|
'cookies' => 1,
|
|
'socketpair' => 1,
|
|
'http-auth' => 1,
|
|
'doh' => 1,
|
|
'mime' => 1,
|
|
'dateparse' => 1,
|
|
'netrc' => 1,
|
|
'progress-meter' => 1,
|
|
'dnsshuffle' => 1,
|
|
'get-easy-options' => 1,
|
|
'alt-svc' => 1,
|
|
'hsts' => 1,
|
|
|
|
# --with-
|
|
'aix-soname' => 1,
|
|
'pic' => 1,
|
|
'zlib' => 1,
|
|
'zstd' => 1,
|
|
'brotli' => 1,
|
|
'random' => 1,
|
|
'ca-bundle' => 1,
|
|
'ca-path' => 1,
|
|
'libssh2' => 1,
|
|
'nghttp2' => 1,
|
|
'librtmp' => 1,
|
|
'libidn2' => 1,
|
|
'sysroot' => 1,
|
|
'lber-lib' => 1,
|
|
'ldap-lib' => 1,
|
|
|
|
);
|
|
|
|
|
|
sub configureopts {
|
|
my ($opts)=@_;
|
|
my %thisin;
|
|
my %thisout;
|
|
|
|
while($opts =~ s/--with-([^ =]*)//) {
|
|
$with{$1}++;
|
|
$used{$1}++;
|
|
$thisin{$1}++;
|
|
}
|
|
while($opts =~ s/--enable-([^ =]*)//) {
|
|
$with{$1}++;
|
|
$used{$1}++;
|
|
$thisin{$1}++;
|
|
}
|
|
|
|
while($opts =~ s/--without-([^ =]*)//) {
|
|
$without{$1}++;
|
|
$used{$1}++;
|
|
$thisout{$1}++;
|
|
}
|
|
while($opts =~ s/--disable-([^ =]*)//) {
|
|
$without{$1}++;
|
|
$used{$1}++;
|
|
$thisout{$1}++;
|
|
}
|
|
return join(" ", sort(keys %thisin), "/", sort(keys %thisout));
|
|
}
|
|
|
|
# run configure --help and check what available WITH/ENABLE options that exist
|
|
sub configurehelp {
|
|
open(C, "./configure --help|");
|
|
while(<C>) {
|
|
if($_ =~ /^ --(with|enable)-([a-z0-9-]+)/) {
|
|
$avail{$2}++;
|
|
}
|
|
}
|
|
close(C);
|
|
}
|
|
|
|
sub scanjobs {
|
|
|
|
my $jobs;
|
|
open(CI, "./scripts/cijobs.pl|");
|
|
while(<CI>) {
|
|
if($_ =~ /^\#\#\#/) {
|
|
$jobs++;
|
|
}
|
|
if($_ =~ /^configure: (.*)/) {
|
|
my $c= configureopts($1);
|
|
#print "C: $c\n";
|
|
}
|
|
}
|
|
close(CI);
|
|
}
|
|
|
|
configurehelp();
|
|
scanjobs();
|
|
|
|
print "Used configure options (with / without)\n";
|
|
for my $w (sort keys %used) {
|
|
printf " %s: %d %d%s\n", $w, $with{$w}, $without{$w},
|
|
$defaulton{$w} ? " (auto)":"";
|
|
}
|
|
|
|
print "Never used configure options\n";
|
|
for my $w (sort keys %avail) {
|
|
if(!$used{$w}) {
|
|
printf " %s%s\n", $w,
|
|
$defaulton{$w} ? " (auto)":"";
|
|
}
|
|
}
|
|
|
|
print "Never ENABLED configure options that aren't on by default\n";
|
|
for my $w (sort keys %avail) {
|
|
if(!$with{$w} && !$defaulton{$w}) {
|
|
printf " %s\n", $w;
|
|
}
|
|
}
|
|
|
|
|
|
print "ENABLED configure options that aren't available\n";
|
|
for my $w (sort keys %with) {
|
|
if(!$avail{$w}) {
|
|
printf " %s\n", $w;
|
|
}
|
|
}
|