mirror of https://github.com/moparisthebest/curl
symbol-scan: use configure script knowledge about how to run the C preprocessor
This commit is contained in:
parent
e8bc33d0a3
commit
ef24ecde68
41
acinclude.m4
41
acinclude.m4
|
@ -3246,3 +3246,44 @@ AC_DEFUN([CURL_CHECK_PKGCONFIG], [
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
])
|
])
|
||||||
|
|
||||||
|
|
||||||
|
dnl CURL_GENERATE_CONFIGUREHELP_PM
|
||||||
|
dnl -------------------------------------------------
|
||||||
|
dnl Generate test harness configurehelp.pm module, defining and
|
||||||
|
dnl initializing some perl variables with values which are known
|
||||||
|
dnl when the configure script runs. For portability reasons, test
|
||||||
|
dnl harness needs information on how to run the C preprocessor.
|
||||||
|
|
||||||
|
AC_DEFUN([CURL_GENERATE_CONFIGUREHELP_PM], [
|
||||||
|
AC_REQUIRE([AC_PROG_CPP])dnl
|
||||||
|
tmp_cpp=`eval echo "$ac_cpp" 2>/dev/null`
|
||||||
|
if test -z "$tmp_cpp"; then
|
||||||
|
tmp_cpp='cpp'
|
||||||
|
fi
|
||||||
|
cat >./tests/configurehelp.pm <<_EOF
|
||||||
|
[@%:@] This is a generated file. Do not edit.
|
||||||
|
|
||||||
|
package configurehelp;
|
||||||
|
|
||||||
|
use strict;
|
||||||
|
use warnings;
|
||||||
|
use Exporter;
|
||||||
|
|
||||||
|
use vars qw(
|
||||||
|
@ISA
|
||||||
|
@EXPORT_OK
|
||||||
|
\$Cpreprocessor
|
||||||
|
);
|
||||||
|
|
||||||
|
@ISA = qw(Exporter);
|
||||||
|
|
||||||
|
@EXPORT_OK = qw(
|
||||||
|
\$Cpreprocessor
|
||||||
|
);
|
||||||
|
|
||||||
|
\$Cpreprocessor = '$tmp_cpp';
|
||||||
|
|
||||||
|
1;
|
||||||
|
_EOF
|
||||||
|
])
|
||||||
|
|
|
@ -293,6 +293,7 @@ for fname in .deps \
|
||||||
config.status \
|
config.status \
|
||||||
config.sub \
|
config.sub \
|
||||||
configure \
|
configure \
|
||||||
|
configurehelp.pm \
|
||||||
curl-config \
|
curl-config \
|
||||||
curlbuild.h \
|
curlbuild.h \
|
||||||
depcomp \
|
depcomp \
|
||||||
|
|
|
@ -2873,6 +2873,8 @@ AC_CONFIG_FILES([Makefile \
|
||||||
])
|
])
|
||||||
AC_OUTPUT
|
AC_OUTPUT
|
||||||
|
|
||||||
|
CURL_GENERATE_CONFIGUREHELP_PM
|
||||||
|
|
||||||
AC_MSG_NOTICE([Configured to build curl/libcurl:
|
AC_MSG_NOTICE([Configured to build curl/libcurl:
|
||||||
|
|
||||||
curl version: ${VERSION}
|
curl version: ${VERSION}
|
||||||
|
|
|
@ -21,16 +21,25 @@
|
||||||
#
|
#
|
||||||
###########################################################################
|
###########################################################################
|
||||||
#
|
#
|
||||||
# This script grew out of help from Przemysław Iskra and Bálint Szilakszi
|
# This script grew out of help from Przemyslaw Iskra and Balint Szilakszi
|
||||||
# a late evening in the #curl IRC channel on freenode.
|
# a late evening in the #curl IRC channel on freenode.
|
||||||
#
|
#
|
||||||
|
|
||||||
|
use strict;
|
||||||
|
use warnings;
|
||||||
|
|
||||||
|
#
|
||||||
|
# configurehelp perl module is generated by configure script
|
||||||
|
#
|
||||||
|
use configurehelp qw(
|
||||||
|
$Cpreprocessor
|
||||||
|
);
|
||||||
|
|
||||||
# we may get the dir root pointed out
|
# we may get the dir root pointed out
|
||||||
my $root=$ARGV[0] || ".";
|
my $root=$ARGV[0] || ".";
|
||||||
|
|
||||||
# need an include directory when building out-of-tree
|
# need an include directory when building out-of-tree
|
||||||
my $i=$ARGV[1];
|
my $i = ($ARGV[1]) ? "-I$ARGV[1] " : '';
|
||||||
$i="-I$i " if $i;
|
|
||||||
|
|
||||||
my $h = "$root/include/curl/curl.h";
|
my $h = "$root/include/curl/curl.h";
|
||||||
my $mh = "$root/include/curl/multi.h";
|
my $mh = "$root/include/curl/multi.h";
|
||||||
|
@ -39,7 +48,11 @@ my $verbose=0;
|
||||||
my $summary=0;
|
my $summary=0;
|
||||||
my $misses=0;
|
my $misses=0;
|
||||||
|
|
||||||
open H_IN, "-|", "cpp $i$h" || die "Cannot preprocess curl.h";
|
my @syms;
|
||||||
|
my %doc;
|
||||||
|
my %rem;
|
||||||
|
|
||||||
|
open H_IN, "-|", "$Cpreprocessor $i$h" || die "Cannot preprocess curl.h";
|
||||||
while ( <H_IN> ) {
|
while ( <H_IN> ) {
|
||||||
if ( /enum\s+(\S+\s+)?{/ .. /}/ ) {
|
if ( /enum\s+(\S+\s+)?{/ .. /}/ ) {
|
||||||
s/^\s+//;
|
s/^\s+//;
|
||||||
|
|
Loading…
Reference in New Issue