123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190 |
- my %defaulton = (
-
- '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,
- 'basic-auth' => 1,
- 'bearer-auth' => 1,
- 'digest-auth' => 1,
- 'kerberos-auth' => 1,
- 'negotiate-auth' => 1,
- 'aws' => 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,
-
- '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));
- }
- 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);
-
- }
- }
- 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;
- }
- }
|