[I'm not on the list; please CC me responses.]
I just grabbed the CVS gaim and tried to compile it.
It failed when trying to link with -lperl. This should probably be
detected at configure-time. I have a pretty stock Debian testing
install here, and I know I need to install the perl-dev package, but
while I have the chance I'll let you know about this.
It seems other people have encountered this incongruency as recently as
last week:
http://sourceforge.net/mailarchive/forum.php?thread_id=1247371&forum_id=9587
Relevant output:
checking for perl... /usr/bin/perl
checking for Perl compile flags... ok
checking for Perl_eval_pv... no
Relevant code:
AC_PATH_PROG(perlpath, perl)
AC_MSG_CHECKING(for Perl compile flags)
This is fine, and then there's some (questionable) sed scripts, but then:
AC_CHECK_FUNCS(Perl_eval_pv)
The autoconf docs say:
# AC_CHECK_FUNCS checks for the existence of functions in the C standard
library.
# If found, the preprocessor macro HAVE_[function] is defined.
Well, I doubt a function like "Perl_eval_pv" will ever be in the C
standard library. :P
I think you mean to use something like AC_CHECK_LIB here.
Something like this in above the current enable_perl test may be sufficient:
if test "$enable_perl" = yes ; then
AC_CHECK_LIB(perl, perl_eval_pv, [], [enable_perl=no])
fi
Though that is probably not enough if you need the output from Perl's
wacky ExtUtils::Embed to get the proper library path.
In more recent xchat sources they do:
oldLIBS=$LIBS
LIBS="$LIBS $PERL_LDFLAGS"
AC_CHECK_FUNCS(eval_pv)
LIBS=$oldLIBS
So maybe you could modify something like that to conditionally detect
perl.
But in either case, that AC_CHECK_FUNCS is wrong, right?
(It's only used in perl.c, line 405, which appears to be
backwards-compatibility code for a version of perl before they got their
C namespace cleaned up.)
--
Evan Martin
ma...@cs...
http://neugierig.org
|