Rework perl5 compiler and linker flags
This fixes perl on cygwin. Probably on other platforms too.
This commit is contained in:
parent
6704501aad
commit
5690323b8f
2 changed files with 37 additions and 10 deletions
|
|
@ -24,7 +24,7 @@
|
|||
TARGET =
|
||||
CC = @CC@
|
||||
CXX = @CXX@
|
||||
CFLAGS = @PLATFLAGS@
|
||||
CFLAGS = @BOOST_CPPFLAGS@ @PLATFLAGS@
|
||||
prefix = @prefix@
|
||||
exec_prefix= @exec_prefix@
|
||||
SRCS =
|
||||
|
|
@ -217,6 +217,9 @@ PERL5_INCLUDE= @PERL5EXT@
|
|||
# Extra Perl specific dynamic linking options
|
||||
PERL5_DLNK = @PERL5DYNAMICLINKING@
|
||||
PERL5_CCFLAGS = @PERL5CCFLAGS@
|
||||
PERL5_CCDLFLAGS = @PERL5CCDLFLAGS@
|
||||
PERL5_CCCDLFLAGS = @PERL5CCCDLFLAGS@
|
||||
PERL5_LDFLAGS = @PERL5LDFLAGS@
|
||||
PERL = @PERL@
|
||||
PERL5_LIB = -L$(PERL5_INCLUDE) -l@PERL5LIB@ @LIBS@ $(SYSLIBS)
|
||||
PERL5_SCRIPT = $(RUNME).pl
|
||||
|
|
@ -227,8 +230,8 @@ PERL5_SCRIPT = $(RUNME).pl
|
|||
|
||||
perl5: $(SRCS)
|
||||
$(SWIG) -perl5 $(SWIGOPT) $(INTERFACEPATH)
|
||||
$(CC) -c -Dbool=char $(CCSHARED) $(CFLAGS) $(SRCS) $(ISRCS) $(INCLUDES) $(PERL5_CCFLAGS) -I$(PERL5_INCLUDE)
|
||||
$(LDSHARED) $(CFLAGS) $(OBJS) $(IOBJS) $(PERL5_DLNK) $(LIBS) -o $(LIBPREFIX)$(TARGET)$(SO)
|
||||
$(CC) -c -Dbool=char $(CCSHARED) $(CFLAGS) $(SRCS) $(ISRCS) $(INCLUDES) $(PERL5_CCFLAGS) $(PERL5_CCCDLFLAGS) -I$(PERL5_INCLUDE)
|
||||
$(LDSHARED) $(CFLAGS) $(PERL5_CCDLFLAGS) $(OBJS) $(IOBJS) $(PERL5_LDFLAGS) $(PERL5_DLNK) $(LIBS) -o $(LIBPREFIX)$(TARGET)$(SO)
|
||||
|
||||
# ----------------------------------------------------------------
|
||||
# Build a Perl5 dynamically loadable module (C++)
|
||||
|
|
@ -236,8 +239,8 @@ perl5: $(SRCS)
|
|||
|
||||
perl5_cpp: $(SRCS)
|
||||
$(SWIG) -perl5 -c++ $(SWIGOPT) $(INTERFACEPATH)
|
||||
$(CXX) -c $(CCSHARED) $(CFLAGS) $(SRCS) $(CXXSRCS) $(ICXXSRCS) $(INCLUDES) $(PERL5_CCFLAGS) -I$(PERL5_INCLUDE)
|
||||
$(CXXSHARED) $(CFLAGS) $(OBJS) $(IOBJS) $(PERL5_DLNK) $(LIBS) $(CPP_DLLIBS) -o $(LIBPREFIX)$(TARGET)$(SO)
|
||||
$(CXX) -c $(CCSHARED) $(CFLAGS) $(SRCS) $(CXXSRCS) $(ICXXSRCS) $(INCLUDES) $(PERL5_CCFLAGS) $(PERL5_CCCDLFLAGS) -I$(PERL5_INCLUDE)
|
||||
$(CXXSHARED) $(CFLAGS) $(PERL5_CCDLFLAGS) $(OBJS) $(IOBJS) $(PERL5_LDFLAGS) $(PERL5_DLNK) $(LIBS) $(CPP_DLLIBS) -o $(LIBPREFIX)$(TARGET)$(SO)
|
||||
|
||||
# ----------------------------------------------------------------
|
||||
# Build a module from existing XS C source code. (ie. from xsubpp).
|
||||
|
|
|
|||
34
configure.ac
34
configure.ac
|
|
@ -847,7 +847,7 @@ fi
|
|||
AC_MSG_CHECKING(for Perl5 header files)
|
||||
if test -n "$PERL"; then
|
||||
PERL5DIR=`($PERL -e 'use Config; print $Config{archlib}, "\n";') 2>/dev/null`
|
||||
if test "$PERL5DIR" != ""; then
|
||||
if test -n "$PERL5DIR" ; then
|
||||
dirs="$PERL5DIR $PERL5DIR/CORE"
|
||||
PERL5EXT=none
|
||||
for i in $dirs; do
|
||||
|
|
@ -863,19 +863,40 @@ if test -n "$PERL"; then
|
|||
fi
|
||||
|
||||
AC_MSG_CHECKING(for Perl5 library)
|
||||
PERL5LIB=`($PERL -e 'use Config; $_=$Config{libperl}; s/^lib//; s/$Config{_a}$//; print $_, "\n"') 2>/dev/null`
|
||||
if test "$PERL5LIB" = "" ; then
|
||||
PERL5LIB=`($PERL -e 'use Config; $_=$Config{libperl}; s/^lib//; s/$Config{_a}$//; s/\.$Config{so}.*//; print $_, "\n"') 2>/dev/null`
|
||||
if test -z "$PERL5LIB" ; then
|
||||
AC_MSG_RESULT(not found)
|
||||
else
|
||||
AC_MSG_RESULT($PERL5LIB)
|
||||
fi
|
||||
AC_MSG_CHECKING(for Perl5 compiler options)
|
||||
AC_MSG_CHECKING(for Perl5 ccflags)
|
||||
PERL5CCFLAGS=`($PERL -e 'use Config; print $Config{ccflags}, "\n"' | sed "s/-Wdeclaration-after-statement//" | sed "s/-I/$ISYSTEM/") 2>/dev/null`
|
||||
if test "$PERL5CCFLAGS" = "" ; then
|
||||
if test -z "$PERL5CCFLAGS" ; then
|
||||
AC_MSG_RESULT(not found)
|
||||
else
|
||||
AC_MSG_RESULT($PERL5CCFLAGS)
|
||||
fi
|
||||
AC_MSG_CHECKING(for Perl5 ccdlflags)
|
||||
PERL5CCDLFLAGS=`($PERL -e 'use Config; print $Config{ccdlflags}, "\n"') 2>/dev/null`
|
||||
if test -z "$PERL5CCDLFLAGS" ; then
|
||||
AC_MSG_RESULT(not found)
|
||||
else
|
||||
AC_MSG_RESULT($PERL5CCDLFLAGS)
|
||||
fi
|
||||
AC_MSG_CHECKING(for Perl5 cccdlflags)
|
||||
PERL5CCCDLFLAGS=`($PERL -e 'use Config; print $Config{cccdlflags}, "\n"') 2>/dev/null`
|
||||
if test -z "$PERL5CCCDLFLAGS" ; then
|
||||
AC_MSG_RESULT(not found)
|
||||
else
|
||||
AC_MSG_RESULT($PERL5CCCDLFLAGS)
|
||||
fi
|
||||
AC_MSG_CHECKING(for Perl5 ldflags)
|
||||
PERL5LDFLAGS=`($PERL -e 'use Config; print $Config{ldflags}, "\n"') 2>/dev/null`
|
||||
if test -z "$PERL5LDFLAGS" ; then
|
||||
AC_MSG_RESULT(not found)
|
||||
else
|
||||
AC_MSG_RESULT($PERL5LDFLAGS)
|
||||
fi
|
||||
else
|
||||
AC_MSG_RESULT(unable to determine perl5 configuration)
|
||||
PERL5EXT=$PERL5DIR
|
||||
|
|
@ -896,6 +917,9 @@ AC_SUBST(PERL5EXT)
|
|||
AC_SUBST(PERL5DYNAMICLINKING)
|
||||
AC_SUBST(PERL5LIB)
|
||||
AC_SUBST(PERL5CCFLAGS)
|
||||
AC_SUBST(PERL5CCDLFLAGS)
|
||||
AC_SUBST(PERL5CCCDLFLAGS)
|
||||
AC_SUBST(PERL5LDFLAGS)
|
||||
|
||||
#----------------------------------------------------------------
|
||||
# Look for Octave
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue