From dbf4023f60d7e0627bdc81941e4dddcbd9e77986 Mon Sep 17 00:00:00 2001 From: kramm Date: Mon, 12 Jul 2004 14:56:39 +0000 Subject: [PATCH] python interface compilation is now controlled by autoconf. --- Makefile.common.in | 4 +++- configure.in | 36 +++++++++++++++++++++++++++++++++++- lib/python/Makefile.in | 12 ++++-------- 3 files changed, 42 insertions(+), 10 deletions(-) diff --git a/Makefile.common.in b/Makefile.common.in index cbd8a68..7ce2f0d 100755 --- a/Makefile.common.in +++ b/Makefile.common.in @@ -19,13 +19,15 @@ SCC=$(LIBTOOL) @CXX@ -c $(DEFS) $(INCLUDES) @CPPFLAGS@ @CXXFLAGS@ SL=$(LIBTOOL) --mode=link @CC@ $(DEFS) -rpath $(libdir) SLL=$(LIBTOOL) --mode=link @CXX@ $(DEFS) -rpath $(libdir) LIBS= @LDFLAGS@ @LIBS@ - transform = @program_transform_name@ +PYTHON_LIB=@PYTHON_LIB@ +PYTHON_INCLUDES=@PYTHON_INCLUDES@ # libtool stuff OBJEXT=@OBJEXT@ EXEEXT=@EXEEXT@ E=$(EXEEXT) +SLEXT=@SLEXT@ ECHO=@ECHO@ RANLIB=@RANLIB@ STRIP=@STRIP@ diff --git a/configure.in b/configure.in index 84fb50d..177cad9 100644 --- a/configure.in +++ b/configure.in @@ -86,9 +86,14 @@ dnl Checks for system services RFX_CHECK_MING +SLEXT="so" if test "x${MINGW}" != "xyes"; then AC_DEFINE_UNQUOTED(O_BINARY, 0) + SLEXT="dll" fi +export SLEXT +AC_SUBST(SLEXT) + # The following tries to make use of includes and libraries in # /usr/local, too. Notice: A -I/usr/local/include might break # things (MingW, cross-compiling etc.) in the same way as -I/usr/include, @@ -221,12 +226,41 @@ export JPEG2SWF PNG2SWF='png2swf$(E)' export PNG2SWF -if test "x" = "x"; then +# ------------------------------------------------------------------ + +AC_MSG_CHECKING([for Python.h and PIL]) +# should we support python versions below 2.2? +if test -f "/usr/lib/python2.2/site-packages/PIL/_imaging.so" -a -f "/usr/include/python2.2/Python.h";then + PY_VERSION=2.2 +fi +if test -f "/usr/lib/python2.3/site-packages/PIL/_imaging.so" -a -f "/usr/include/python2.3/Python.h";then + PY_VERSION=2.3 +fi +if test -f "/usr/lib/python2.4/site-packages/PIL/_imaging.so" -a -f "/usr/include/python2.4/Python.h";then + PY_VERSION=2.4 +fi + +if test "x$PY_VERSION" "!=" "x"; then pythonrfxswf="lib/python/Makefile" + if test "x$PYTHON_LIB" = "x";then + PYTHON_LIB="-lpython$PY_VERSION /usr/lib/python$PY_VERSION/site-packages/PIL/_imaging.so" + fi + if test "x$PYTHON_INCLUDES" = "x";then + PYTHON_INCLUDES="-I/usr/include/python$PY_VERSION" + fi + export PYTHON_INCLUDES PYTHON_LIB + AC_SUBST(PYTHON_LIB) + AC_SUBST(PYTHON_INCLUDES) + AC_MSG_RESULT(yes) else echo all install uninstall clean: > lib/python/Makefile + echo "* No usable python installation found" + echo "* Not compiling the python interface" + AC_MSG_RESULT(nope) fi +# ------------------------------------------------------------------ + if test "x${DISABLEPDF2SWF}" = "xtrue"; then echo "***************************************************" echo "The following headers/libraries are missing: " ${MISSINGLIBS} diff --git a/lib/python/Makefile.in b/lib/python/Makefile.in index a68205d..75240c6 100644 --- a/lib/python/Makefile.in +++ b/lib/python/Makefile.in @@ -3,10 +3,6 @@ srcdir = @srcdir@ top_srcdir = @top_srcdir@ include ../../Makefile.common -#LIB=-L/usr/lib/python2.2/config/ -lpython2.2 -PYTHON_LIB=-lpython2.3 /usr/lib/python2.3/site-packages/PIL/_imaging.so -PYTHON_INCLUDES=-I/usr/include/python2.3 - all: mypython swfpython SWF.so testmem primitives.o: primitives.c primitives.h @@ -30,16 +26,16 @@ SWF.o: SWF.c pyutils.h primitives.h taglist.h $(C) -Wall -Wno-unused -fPIC $(PYTHON_INCLUDES) -c SWF.c -o SWF.o SWF.so: SWF.o taglist.o tag.o image.o tags.o tagmap.o action.o primitives.o pyutils.o ../librfxswf.a Makefile - $(L) -g -shared SWF.o tagmap.o taglist.o tag.o image.o tags.o action.o primitives.o pyutils.o -o SWF.so ../librfxswf.a $(PYTHON_LIB) -ljpeg -lz -lt1 -lfreetype + $(L) -g -shared SWF.o tagmap.o taglist.o tag.o image.o tags.o action.o primitives.o pyutils.o -o SWF.so $(PYTHON_LIB) ../librfxswf.a $(LIBS) mypython: mypython.c Makefile - $(L) -Wno-redundant-decls -g $(PYTHON_INCLUDES) mypython.c -o mypython $(PYTHON_LIB) -ldl -lm -lpthread -lutil + $(L) -Wno-redundant-decls -g $(PYTHON_INCLUDES) mypython.c -o mypython $(PYTHON_LIB) swfpython: swfpython.c Makefile primitives.o tagmap.o taglist.o tag.o tags.o action.o pyutils.o SWF.o - $(L) -Wno-redundant-decls -g $(PYTHON_INCLUDES) swfpython.c -o swfpython $(PYTHON_LIB) -ldl -lm -lpthread -lutil ../librfxswf.a $(PYTHON_LIB) -ljpeg -lz -lt1 -lfreetype + $(L) -Wno-redundant-decls -g $(PYTHON_INCLUDES) swfpython.c -o swfpython $(PYTHON_LIB) ../librfxswf.a $(LIBS) testmem: testmem.c Makefile - $(L) $(PYTHON_INCLUDES) testmem.c -o testmem $(PYTHON_LIB) -ldl -lm -lpthread -lutil + $(L) $(PYTHON_INCLUDES) testmem.c -o testmem $(PYTHON_LIB) $(LIBS) test: test6 -- 1.7.10.4