[cig-commits] r7307 - in cs/spatialdata-0.1/trunk: . libsrc modulesrc/geocoords modulesrc/spatialdb modulesrc/utils tests/pytests/utils

leif at geodynamics.org leif at geodynamics.org
Tue Jun 19 14:20:45 PDT 2007


Author: leif
Date: 2007-06-19 14:20:45 -0700 (Tue, 19 Jun 2007)
New Revision: 7307

Modified:
   cs/spatialdata-0.1/trunk/configure.ac
   cs/spatialdata-0.1/trunk/libsrc/Makefile.am
   cs/spatialdata-0.1/trunk/modulesrc/geocoords/Makefile.am
   cs/spatialdata-0.1/trunk/modulesrc/spatialdb/Makefile.am
   cs/spatialdata-0.1/trunk/modulesrc/utils/Makefile.am
   cs/spatialdata-0.1/trunk/tests/pytests/utils/Makefile.am
Log:
Tweaked libtool LDFLAGS so that DLLs are built on Windows.  The trick
is to add "-no-undefined" -- see issue37.

In order for this to work, the external package 'proj' must be tweaked
in a similar fashion; i.e., "-no-undefined" must be added to
libproj_la_LDFLAGS (happily, they use Libtool as well).  Libtool
refuses to link a DLL against a static Libtool library.  This is
prudent, but in this case it would probably work (I think
'spatialdata' is the only code that calls 'proj' directly).

For the Python extension modules, I also added "-avoid-version" so
that we arrive at "geocoordsmodule.dll" instead of
"geocoordsmodule-0.dll".


Modified: cs/spatialdata-0.1/trunk/configure.ac
===================================================================
--- cs/spatialdata-0.1/trunk/configure.ac	2007-06-19 20:16:32 UTC (rev 7306)
+++ cs/spatialdata-0.1/trunk/configure.ac	2007-06-19 21:20:45 UTC (rev 7307)
@@ -47,7 +47,7 @@
 
 # ----------------------------------------------------------------------
 # PYTHON
-CIT_PYTHON_INCDIR
+CIT_PYTHON_SYSCONFIG
 
 # PROJ4
 AC_CHECK_LIB(proj, pj_init_plus, [

Modified: cs/spatialdata-0.1/trunk/libsrc/Makefile.am
===================================================================
--- cs/spatialdata-0.1/trunk/libsrc/Makefile.am	2007-06-19 20:16:32 UTC (rev 7306)
+++ cs/spatialdata-0.1/trunk/libsrc/Makefile.am	2007-06-19 21:20:45 UTC (rev 7307)
@@ -35,14 +35,15 @@
 	spatialdb/SimpleIOAscii.cc \
 	spatialdb/cspatialdb.cc	
 
-libspatialdata_la_LDFLAGS =
+libspatialdata_la_LDFLAGS = -no-undefined
 
 CPPFLAGS += -DDATADIR="$(pkgdatadir)/geocoords"
 
 INCLUDES = -I$(top_builddir)/include
 
 libspatialdata_la_LIBADD = \
-	-lproj
+	-lproj \
+	$(PYTHON_BLDLIBRARY) $(PYTHON_LIBS) $(PYTHON_SYSLIBS)
 
 
 # End of file 

Modified: cs/spatialdata-0.1/trunk/modulesrc/geocoords/Makefile.am
===================================================================
--- cs/spatialdata-0.1/trunk/modulesrc/geocoords/Makefile.am	2007-06-19 20:16:32 UTC (rev 7306)
+++ cs/spatialdata-0.1/trunk/modulesrc/geocoords/Makefile.am	2007-06-19 21:20:45 UTC (rev 7307)
@@ -15,7 +15,7 @@
 
 subpkgpyexec_LTLIBRARIES = geocoordsmodule.la
 
-geocoordsmodule_la_LDFLAGS = -module
+geocoordsmodule_la_LDFLAGS = -module -no-undefined -avoid-version
 
 geocoordsmodule_la_SOURCES = geocoords.pyxe
 
@@ -23,7 +23,8 @@
 	geocoords.c geocoords_embed.cpp geocoords_embed.h
 
 geocoordsmodule_la_LIBADD = \
-	$(top_builddir)/libsrc/libspatialdata.la
+	$(top_builddir)/libsrc/libspatialdata.la \
+	$(PYTHON_BLDLIBRARY) $(PYTHON_LIBS) $(PYTHON_SYSLIBS)
 
 INCLUDES += -I$(PYTHON_INCDIR)
 

Modified: cs/spatialdata-0.1/trunk/modulesrc/spatialdb/Makefile.am
===================================================================
--- cs/spatialdata-0.1/trunk/modulesrc/spatialdb/Makefile.am	2007-06-19 20:16:32 UTC (rev 7306)
+++ cs/spatialdata-0.1/trunk/modulesrc/spatialdb/Makefile.am	2007-06-19 21:20:45 UTC (rev 7307)
@@ -15,7 +15,7 @@
 
 subpkgpyexec_LTLIBRARIES = spatialdbmodule.la
 
-spatialdbmodule_la_LDFLAGS = -module
+spatialdbmodule_la_LDFLAGS = -module -no-undefined -avoid-version
 
 spatialdbmodule_la_SOURCES = spatialdb.pyxe
 
@@ -23,7 +23,8 @@
 	spatialdb.c spatialdb_embed.cpp spatialdb_embed.h
 
 spatialdbmodule_la_LIBADD = \
-	$(top_builddir)/libsrc/libspatialdata.la
+	$(top_builddir)/libsrc/libspatialdata.la \
+	$(PYTHON_BLDLIBRARY) $(PYTHON_LIBS) $(PYTHON_SYSLIBS)
 
 INCLUDES += -I$(PYTHON_INCDIR)
 

Modified: cs/spatialdata-0.1/trunk/modulesrc/utils/Makefile.am
===================================================================
--- cs/spatialdata-0.1/trunk/modulesrc/utils/Makefile.am	2007-06-19 20:16:32 UTC (rev 7306)
+++ cs/spatialdata-0.1/trunk/modulesrc/utils/Makefile.am	2007-06-19 21:20:45 UTC (rev 7307)
@@ -20,18 +20,21 @@
 INCLUDES += -I$(PYTHON_INCDIR)
 
 # simple array
-simplearraymodule_la_LDFLAGS = -module
+simplearraymodule_la_LDFLAGS = -module -no-undefined -avoid-version
 simplearraymodule_la_SOURCES = simplearray.pyxe
 nodist_simplearraymodule_la_SOURCES = \
 	simplearray.c simplearray_embed.cpp simplearray_embed.h
+simplearraymodule_la_LIBADD = \
+	$(PYTHON_BLDLIBRARY) $(PYTHON_LIBS) $(PYTHON_SYSLIBS)
 
 # utils
-utilsmodule_la_LDFLAGS = -module
+utilsmodule_la_LDFLAGS = -module -no-undefined -avoid-version
 utilsmodule_la_SOURCES = utils.pyxe
 nodist_utilsmodule_la_SOURCES = \
 	utils.c utils_embed.cpp utils_embed.h
 utilsmodule_la_LIBADD = \
-	$(top_builddir)/libsrc/libspatialdata.la
+	$(top_builddir)/libsrc/libspatialdata.la \
+	$(PYTHON_BLDLIBRARY) $(PYTHON_LIBS) $(PYTHON_SYSLIBS)
 
 # simple array targets
 simplearray.pyx simplearray_embed.cpp  simplearray_embed.h: simplearray.pyxe

Modified: cs/spatialdata-0.1/trunk/tests/pytests/utils/Makefile.am
===================================================================
--- cs/spatialdata-0.1/trunk/tests/pytests/utils/Makefile.am	2007-06-19 20:16:32 UTC (rev 7306)
+++ cs/spatialdata-0.1/trunk/tests/pytests/utils/Makefile.am	2007-06-19 21:20:45 UTC (rev 7307)
@@ -23,8 +23,11 @@
 # module
 subpkgpyexec_LTLIBRARIES = testcppmodule.la
 
-testcppmodule_la_LDFLAGS = -module
+testcppmodule_la_LDFLAGS = -module -no-undefined -avoid-version
+testcppmodule_la_LIBADD = \
+	$(PYTHON_BLDLIBRARY) $(PYTHON_LIBS) $(PYTHON_SYSLIBS)
 
+
 testcppmodule_la_SOURCES = testcpp.pyxe
 
 nodist_testcppmodule_la_SOURCES = \



More information about the cig-commits mailing list