[libterralib] 04/08: * Re-organise rules to build multi-arch stuff from generated *.in files. * Add additional libs provided by terralib back

Alastair McKinstry mckinstry at moszumanska.debian.org
Fri Aug 7 07:57:31 UTC 2015


This is an automated email from the git hooks/post-receive script.

mckinstry pushed a commit to branch master
in repository libterralib.

commit 52ec04e84e75c5cdf314c95c89aff0793b559400
Author: Alastair McKinstry <mckinstry at debian.org>
Date:   Mon Aug 3 01:25:17 2015 +0100

    * Re-organise rules to build multi-arch stuff from generated *.in files.
    * Add additional libs provided by terralib back
---
 debian/TODO                       |  5 ++++-
 debian/changelog                  |  2 ++
 debian/libterralib-dev.install    |  4 ----
 debian/libterralib-dev.install.in | 17 +++++++++++++++
 debian/libterralib-dev.links.in   | 13 +++++++++++
 debian/libterralib.pc.in          | 11 ++++++++++
 debian/libterralib3.install.in    | 13 +++++++++++
 debian/patches/build-fix.patch    | 25 ++++++++++++++++++++++
 debian/patches/series             |  3 ++-
 debian/rules                      | 45 +++++++++++++++------------------------
 10 files changed, 104 insertions(+), 34 deletions(-)

diff --git a/debian/TODO b/debian/TODO
index 0f9a328..f63dc48 100644
--- a/debian/TODO
+++ b/debian/TODO
@@ -1,2 +1,5 @@
+TODO:
+=====
 
-- libjpeg: Depend on external jpeg instead ?
+* Add debian symbols files.
+* Build *.a as non-PIC code
diff --git a/debian/changelog b/debian/changelog
index c172d97..fad0222 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -12,6 +12,8 @@ libterralib (4.3.0+dfsg.2-1) UNRELEASED; urgency=medium
     (closes: #701143)
   * Update copyright file using copyright-format 1.0.
   * Build-Depend on libdxflib, libqwt-dev, libshp-dev
+  * Re-organise rules to build multi-arch stuff from generated *.in files.
+  * Add additional libs provided by terralib back
 
  -- Bas Couwenberg <sebastic at debian.org>  Sun, 02 Aug 2015 01:08:50 +0200
 
diff --git a/debian/libterralib-dev.install b/debian/libterralib-dev.install
deleted file mode 100644
index e2a1fb9..0000000
--- a/debian/libterralib-dev.install
+++ /dev/null
@@ -1,4 +0,0 @@
-src/terralib/dtm/*.h       usr/include/terralib/dtm
-src/terralib/functions/*.h usr/include/terralib/functions
-src/terralib/kernel/*.h    usr/include/terralib/kernel
-src/terralib/stat/*.h      usr/include/terralib/stat
diff --git a/debian/libterralib-dev.install.in b/debian/libterralib-dev.install.in
new file mode 100644
index 0000000..d09b84f
--- /dev/null
+++ b/debian/libterralib-dev.install.in
@@ -0,0 +1,17 @@
+Release/libterralib.a      usr/lib/@DEB_HOST_MULTIARCH@
+Release/libte_functions.a  usr/lib/@DEB_HOST_MULTIARCH@
+Release/libterralibpdi.a      usr/lib/@DEB_HOST_MULTIARCH@
+Release/libte_utils.a      usr/lib/@DEB_HOST_MULTIARCH@
+Release/libshapelib.a      usr/lib/@DEB_HOST_MULTIARCH@
+Release/libte_shapelib.a      usr/lib/@DEB_HOST_MULTIARCH@
+Release/libte_mysql.a      usr/lib/@DEB_HOST_MULTIARCH@
+Release/libte_postgresql.a      usr/lib/@DEB_HOST_MULTIARCH@
+Release/libspl.a      usr/lib/@DEB_HOST_MULTIARCH@
+Release/libte_spl.a      usr/lib/@DEB_HOST_MULTIARCH@
+Release/libte_dxf.a      usr/lib/@DEB_HOST_MULTIARCH@
+Release/libstat.a      usr/lib/@DEB_HOST_MULTIARCH@
+src/terralib/dtm/*.h       usr/include/terralib/dtm
+src/terralib/functions/*.h usr/include/terralib/functions
+src/terralib/kernel/*.h    usr/include/terralib/kernel
+src/terralib/stat/*.h      usr/include/terralib/stat
+debian/libterralib.pc		usr/lib/@DEB_HOST_MULTIARCH@/pkgconfig
diff --git a/debian/libterralib-dev.links.in b/debian/libterralib-dev.links.in
new file mode 100644
index 0000000..2225751
--- /dev/null
+++ b/debian/libterralib-dev.links.in
@@ -0,0 +1,13 @@
+/usr/lib/@DEB_HOST_MULTIARCH@/libterralib.so.3.6.1      usr/lib/@DEB_HOST_MULTIARCH@/libterralib.so
+/usr/lib/@DEB_HOST_MULTIARCH@/libterralibpdi.so.3.6.1      usr/lib/@DEB_HOST_MULTIARCH@/libterralibpdi.so
+/usr/lib/@DEB_HOST_MULTIARCH@/libte_utils.so.3.6.1      usr/lib/@DEB_HOST_MULTIARCH@/libte_utils.so
+/usr/lib/@DEB_HOST_MULTIARCH@/libte_functions.so.3.6.1      usr/lib/@DEB_HOST_MULTIARCH@/libte_functions.so
+/usr/lib/@DEB_HOST_MULTIARCH@/libte_shapelib.so.3.6.1      usr/lib/@DEB_HOST_MULTIARCH@/libte_shapelib.so
+/usr/lib/@DEB_HOST_MULTIARCH@/libshapelib.so.3.6.1      usr/lib/@DEB_HOST_MULTIARCH@/libshapelib.so
+/usr/lib/@DEB_HOST_MULTIARCH@/libte_mysql.so.3.6.1              usr/lib/@DEB_HOST_MULTIARCH@/libte_mysql.so
+/usr/lib/@DEB_HOST_MULTIARCH@/libte_dxf.so.3.6.1                usr/lib/@DEB_HOST_MULTIARCH@/libte_dxf.so
+/usr/lib/@DEB_HOST_MULTIARCH@/libte_spl.so.3.6.1                usr/lib/@DEB_HOST_MULTIARCH@/libte_spl.so
+/usr/lib/@DEB_HOST_MULTIARCH@/libspl.so.3.6.1                   usr/lib/@DEB_HOST_MULTIARCH@/libspl.so
+/usr/lib/@DEB_HOST_MULTIARCH@/libte_postgresql.so.3.6.1         usr/lib/@DEB_HOST_MULTIARCH@/libte_postgresql.so
+/usr/lib/@DEB_HOST_MULTIARCH@/libte_utils.so.3.6.1              usr/lib/@DEB_HOST_MULTIARCH@/libte_utils.so
+/usr/lib/@DEB_HOST_MULTIARCH@/libstat.so.3.6.1                  usr/lib/@DEB_HOST_MULTIARCH@/libstat.so
diff --git a/debian/libterralib.pc.in b/debian/libterralib.pc.in
new file mode 100644
index 0000000..382685f
--- /dev/null
+++ b/debian/libterralib.pc.in
@@ -0,0 +1,11 @@
+prefix=@PREFIX@
+exec_prefix=${prefix}
+libdir=/usr/lib/@DEB_HOST_MULTIARCH@
+includedir=${prefix}/include/terralib
+
+Name: libterralib
+Description: C++ library for Geographical Information Systems
+Version: @VERSION@
+Libs: -L${libdir} -lterralib
+Cflags: -I${includedir}/terralib
+Libs.private: -lz -ljpeg  -lpthread -lproj -lgeotiff -ltiff -ldxflib -lshp -lqwt
diff --git a/debian/libterralib3.install.in b/debian/libterralib3.install.in
new file mode 100644
index 0000000..5e648a6
--- /dev/null
+++ b/debian/libterralib3.install.in
@@ -0,0 +1,13 @@
+Release/linux-g++/libterralib.so.*      usr/lib/@DEB_HOST_MULTIARCH@
+Release/linux-g++/libterralibpdi.so.*      usr/lib/@DEB_HOST_MULTIARCH@
+Release/linux-g++/libte_utils.so.*      usr/lib/@DEB_HOST_MULTIARCH@
+Release/linux-g++/libte_functions.so.*      usr/lib/@DEB_HOST_MULTIARCH@
+Release/linux-g++/libte_shapelib.so.*	usr/lib/@DEB_HOST_MULTIARCH@		
+Release/linux-g++/libshapelib.so.*	usr/lib/@DEB_HOST_MULTIARCH@		
+Release/linux-g++/libte_mysql.so.*		usr/lib/@DEB_HOST_MULTIARCH@
+Release/linux-g++/libte_dxf.so.*		usr/lib/@DEB_HOST_MULTIARCH@
+Release/linux-g++/libspl.so.*			usr/lib/@DEB_HOST_MULTIARCH@
+Release/linux-g++/libte_spl.so.*		usr/lib/@DEB_HOST_MULTIARCH@
+Release/linux-g++/libte_postgresql.so.*		usr/lib/@DEB_HOST_MULTIARCH@
+Release/linux-g++/libte_utils.so.*		usr/lib/@DEB_HOST_MULTIARCH@
+Release/linux-g++/libstat.so.*			usr/lib/@DEB_HOST_MULTIARCH@
diff --git a/debian/patches/build-fix.patch b/debian/patches/build-fix.patch
new file mode 100644
index 0000000..7d8a910
--- /dev/null
+++ b/debian/patches/build-fix.patch
@@ -0,0 +1,25 @@
+Index: libterralib-4.3.0+dfsg.2/build/qt4/image_processing/image_processing.pro
+===================================================================
+--- libterralib-4.3.0+dfsg.2.orig/build/qt4/image_processing/image_processing.pro
++++ libterralib-4.3.0+dfsg.2/build/qt4/image_processing/image_processing.pro
+@@ -13,7 +13,7 @@ win32 {
+ 	LIBS += -lzlibdll
+ }
+ unix:LIBS += -lz -lpthread
+-LIBS += -lterralibtiff
++LIBS += -lgeotiff
+ INCLUDEPATH = \
+   $${TERRALIB_SRC_DIR}/terralib/kernel \
+   $${TERRALIB_SRC_DIR}/terralib/functions \
+Index: libterralib-4.3.0+dfsg.2/build/qt4/te_dxf/te_dxf.pro
+===================================================================
+--- libterralib-4.3.0+dfsg.2.orig/build/qt4/te_dxf/te_dxf.pro
++++ libterralib-4.3.0+dfsg.2/build/qt4/te_dxf/te_dxf.pro
+@@ -28,6 +28,6 @@ SOURCES	+= $${SRCPATH}/tedxflayer.cpp \
+ 	$${SRCPATH}/TeDXFDriver.cpp \
+ 	$${SRCPATH}/TeDXFDriverFactory.cpp 
+ 	
+-LIBS += -ldxf -lterralib
++LIBS += -ldxflib -lterralib
+ 
+ include (../install_cfg.pri)
diff --git a/debian/patches/series b/debian/patches/series
index dea468e..378116c 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -1,4 +1,5 @@
 geotiff.patch
 kfreebsd-build.patch
-pkg-config.patch
+# pkg-config.patch
 clang-fix.patch
+build-fix.patch
diff --git a/debian/rules b/debian/rules
index b5e98ce..5c7438c 100755
--- a/debian/rules
+++ b/debian/rules
@@ -10,44 +10,33 @@ export DH_VERBOSE=1
 export QT_SELECT=5
 
 DEB_HOST_MULTIARCH ?= $(shell dpkg-architecture -qDEB_HOST_MULTIARCH)
+AUTOGENERATED:= libterralib-dev.links libterralib.install libterralib-dev.install libterralib.pc 
 
 # To enable all, uncomment following line
 DEB_BUILD_MAINT_OPTIONS:= hardening=+all
 DEB_CFLAGS_MAINT_APPEND:= -Wall -pedantic
 export DEB_BUILD_MAINT_OPTIONS
 export DEB_CFLAGS_MAINT_APPEND
+CXXFLAGS:= $(shell dpkg-buildflags --get CXXFLAGS)
+CXXFLAGS:= '$(CXXFLAGS) -fpermissive -I/usr/include/geotiff -I/usr/include/dxflib -I/usr/incluce/qwt'
 
 override_dh_auto_build:
 	find examples -type f -exec chmod 644 {} \;
-	cd build/qt4/terralib     && qmake QMAKE_CXXFLAGS=-fpermissive terralib.pro     && $(MAKE)
-	cd build/qt4/te_functions && qmake QMAKE_CXXFLAGS=-fpermissive te_functions.pro && $(MAKE)
-	cd build/qt4/te_utils     && qmake QMAKE_CXXFLAGS=-fpermissive te_utils.pro     && $(MAKE)
-	ar rcs libterralib.a     Release/linux-g++/obj/terralib/*.o
-	ar rcs libte_functions.a Release/linux-g++/obj/te_functions/*.o
-	ar rcs libte_utils.a     Release/linux-g++/obj/te_utils/*.o
-
-override_dh_auto_install:
-	dh_install
-	# Install into Multarch directories
-	dh_install -p libterralib3 Release/linux-g++/libterralib.so.*      usr/lib/$(DEB_HOST_MULTIARCH)
-	dh_install -p libterralib3 Release/linux-g++/libte_utils.so.*      usr/lib/$(DEB_HOST_MULTIARCH)
-	dh_install -p libterralib3 Release/linux-g++/libte_functions.so.*  usr/lib/$(DEB_HOST_MULTIARCH)
-	dh_install -p libterralib-dev libterralib.a                        usr/lib/$(DEB_HOST_MULTIARCH)
-	dh_install -p libterralib-dev libte_utils.a                        usr/lib/$(DEB_HOST_MULTIARCH)
-	dh_install -p libterralib-dev libte_functions.a                    usr/lib/$(DEB_HOST_MULTIARCH)
-	dh_install -p libterralib-dev Release/linux-g++/libterralib.so     usr/lib/$(DEB_HOST_MULTIARCH)
-	dh_install -p libterralib-dev Release/linux-g++/libte_utils.so     usr/lib/$(DEB_HOST_MULTIARCH)
-	dh_install -p libterralib-dev Release/linux-g++/libte_functions.so usr/lib/$(DEB_HOST_MULTIARCH)
-	# nasty hack.
-	mkdir -p debian/libterralib-dev/usr/lib/$(DEB_HOST_MULTIARCH)/pkgconfig
-	sed -e 's/@DEB_HOST_MULTIARCH@/$(DEB_HOST_MULTIARCH)/' <  libterralib.pc >  debian/libterralib-dev/usr/lib/$(DEB_HOST_MULTIARCH)/pkgconfig/libterralib.pc
+	for f in ${AUTOGENERATED} ; do \
+                sed -e 's%@DEB_HOST_MULTIARCH@%${DEB_HOST_MULTIARCH}%g' < debian/$$f.in  > debian/$$f ; \
+                done
+	for d in terralib te_functions te_utils image_processing libspl PostgreSQL MySQL shapelib stat te_dxf te_shapelib te_spl  ; do \
+		( cd build/qt4/$$d  && qmake QMAKE_CXXFLAGS=$(CXXFLAGS) $$d.pro     && $(MAKE) ) ; \
+		done
+	for d in terralib te_functions te_utils terralibpdi shapelib te_shapelib te_mysql te_spl spl te_postgresql te_dxf stat ; do \
+		ar rcs Release/lib$$d.a Release/linux-g++/obj/$$d/*.o ;\
+		done
 
 override_dh_clean:
 	dh_clean
-	rm -f lib*.a
 	rm -rf Release
-	find . -name '.cvsignore' -exec rm {} \;
-	$(MAKE) -C build/qt4/terralib distclean || echo "terralib already clean"
-	$(MAKE) -C build/qt4/te_utils distclean || echo "te_utils already clean"
-	$(MAKE) -C build/qt4/te_functions distclean || echo "te_functions already clean"
-
+	rm -f $(patsubst %, debian/%, ${AUTOGENERATED})
+	find . -name '.cvsignore' -delete
+	for d in terralib te_functions te_utils image_processing libspl PostgreSQL MySQL shapelib stat te_dxf te_shapelib te_spl  ; do \
+		( $(MAKE) -C build/qt4/$$d distclean || echo "$$d already clean" ) ; \
+		done

-- 
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-grass/libterralib.git



More information about the Pkg-grass-devel mailing list