summaryrefslogtreecommitdiffstats
path: root/debian/_base/libraries/python-trinity/debian/rules
diff options
context:
space:
mode:
Diffstat (limited to 'debian/_base/libraries/python-trinity/debian/rules')
-rwxr-xr-xdebian/_base/libraries/python-trinity/debian/rules172
1 files changed, 172 insertions, 0 deletions
diff --git a/debian/_base/libraries/python-trinity/debian/rules b/debian/_base/libraries/python-trinity/debian/rules
new file mode 100755
index 000000000..a8bd862cd
--- /dev/null
+++ b/debian/_base/libraries/python-trinity/debian/rules
@@ -0,0 +1,172 @@
+#!/usr/bin/make -f
+# -*- makefile -*-
+
+# Uncomment this to turn on verbose mode.
+#export DH_VERBOSE=1
+
+DEB_CONFIGURE_INCLUDEDIR := /opt/trinity/include
+DEB_CONFIGURE_MANDIR := /opt/trinity/share/man
+DEB_CONFIGURE_PREFIX := /opt/trinity
+DEB_CONFIGURE_INFODIR := /opt/trinity/share/info
+
+cdbs_configure_flags := --with-qt-dir=/usr/share/qt3 --disable-rpath --with-xinerama $(cdbs_kde_enable_final) $(cdbs_kde_enable_debug)
+
+DEB_DH_BUILDDEB_ARGS += -- -Z$(shell dpkg-deb --help | grep -q ":.* xz[,.]" \
+ && echo xz || echo bzip2)
+
+# This has to be exported to make some magic below work.
+export DH_OPTIONS
+export QTDIR=/usr/share/qt3
+export QMAKESPEC=$(QTDIR)/mkspecs/linux-g++
+
+CXXFLAGS = -Wall -g
+
+ifneq (,$(findstring noopt,$(DEB_BUILD_OPTIONS)))
+ CXXFLAGS += -O0
+else
+ CXXFLAGS += -O2
+endif
+
+PYTHONS := $(shell pyversions -vr debian/control)
+DBG_PYTHONS := $(shell pyversions -vd)
+
+DH_PYTHON2 = $(if $(wildcard /usr/bin/dh_python2),dh_python2,dh_python)
+
+GCCVER := $(shell gcc --version | sed -n '/^gcc (GCC)/s/.*(GCC) \(...\).*/\1/p')
+ifneq (,$(filter $(GCCVER),4.2 4.3))
+ SPLIT=20
+else
+ SPLIT=4
+endif
+
+.PRECIOUS: build-%/configure-stamp dbg-build-%/configure-stamp
+
+configure: $(PYTHONS:%=build-%/configure-stamp) $(DBG_PYTHONS:%=dbg-build-%/configure-stamp)
+
+build-%/configure-stamp:
+ dh_testdir
+ mkdir -p build-$*
+ cd build-$* && python$* ../configure.py \
+ -c -u -k /opt/trinity -o /opt/trinity/include -n /opt/trinity/lib \
+ -e python$* \
+ -v /opt/trinity/share/sip/trinity -j $(SPLIT)
+ touch $@
+
+dbg-build-%/configure-stamp:
+ dh_testdir
+ mkdir -p dbg-build-$*
+ cd dbg-build-$* && python$*-dbg ../configure.py \
+ -c -u -k /opt/trinity -o /opt/trinity/include -n /opt/trinity/lib \
+ -e python$* \
+ -v /opt/trinity/share/sip/trinity -j $(SPLIT)
+ touch $@
+
+build build-arch: $(PYTHONS:%=build-%/build-stamp) $(DBG_PYTHONS:%=dbg-build-%/build-stamp)
+build-indep:
+
+build-%/build-stamp: build-%/configure-stamp
+ dh_testdir
+ $(MAKE) -C build-$*
+ touch $@
+
+dbg-build-%/build-stamp: dbg-build-%/configure-stamp
+ dh_testdir
+ $(MAKE) -C dbg-build-$*
+ touch $@
+
+clean:
+ dh_testdir
+ dh_testroot
+ rm -f *-stamp
+ rm -rf $(PYTHONS:%=build-%) $(DBG_PYTHONS:%=dbg-build-%)
+
+# remove autogenerated *mod.sip files and clean up sources
+ for moddir in sip/*;\
+ do\
+ if [ -d $$moddir ]; then\
+ rm -f $$moddir/` basename $${moddir}`mod.sip;\
+ fi;\
+ done
+ dh_clean
+
+install: install-indep install-arch
+
+install-indep:
+ dh_testdir
+ dh_testroot
+ dh_clean -k -i
+ dh_installdirs -i
+ dh_install -i -X'\.diff$$' -X'\.in$$' -X'\.html$$'
+ for version in ${PYTHONS};\
+ do\
+ mkdir -p debian/python-trinity-trinity-dev/opt/trinity/lib/python-$$version/site-packages;\
+ cp debian/pytdeconfig.py debian/python-trinity-trinity-dev/opt/trinity/lib/python-$$version/site-packages/;\
+ cp build-$$version/pytdeconfig.py debian/python-trinity-trinity-dev/opt/trinity/lib/python-$$version/site-packages/pytdeconfig_nd.py;\
+ done
+ for version in ${DBG_PYTHONS};\
+ do\
+ cp dbg-build-$$version/pytdeconfig.py debian/python-trinity-trinity-dev/opt/trinity/lib/python-$$version/site-packages/pytdeconfig_d.py;\
+ done
+
+install-arch:
+ dh_testdir
+ dh_testroot
+ dh_clean -k -a
+ dh_installdirs -a
+ set -e; \
+ for version in ${PYTHONS};\
+ do\
+ $(MAKE) -C build-$$version install DESTDIR=$(CURDIR)/debian/tmp;\
+ done
+
+ set -e; \
+ for version in ${DBG_PYTHONS}; do \
+ $(MAKE) -C dbg-build-$$version install DESTDIR=$(CURDIR)/debian/python-trinity-trinity-dbg;\
+ done
+
+ dh_install -a --sourcedir=$(CURDIR)/debian/tmp
+
+ mkdir -p $(CURDIR)/debian/python-trinity-trinity/opt/trinity/lib/
+ ln -s /opt/trinity/lib/trinity/libkonsolepart.so $(CURDIR)/debian/python-trinity-trinity/opt/trinity/lib/
+ for i in $$(find debian/python-*-dbg -name '*.so'); do \
+ b=$$(basename $$i .so); \
+ mv $$i $$(dirname $$i)/$${b}_d.so; \
+ done
+ find debian/python-*-dbg ! -type d \
+ ! \( -name '*.so' -o -name '*config_d.py' \) | xargs rm -f
+
+ find debian/python-*-dbg -depth -type d -empty -exec rmdir {} \;
+
+
+# Must not depend on anything. This is to be called by
+# binary-arch/binary-indep
+# in another 'make' thread.
+binary-common:
+ dh_testdir
+ dh_testroot
+ dh_installchangelogs ChangeLog
+ dh_installdocs -A THANKS
+ dh_installexamples
+ dh_link
+ifeq (,$(findstring -i, $(DH_OPTIONS)))
+ DH_OPTIONS= dh_strip -ppython-trinity-trinity #--dbg-package=python-trinity-trinity-dbg
+endif
+ dh_compress -X.py -X.ui -X.dtd
+ dh_fixperms
+ ${DH_PYTHON2}
+ dh_installdeb
+ dh_shlibdeps -l /opt/trinity/lib
+ dh_gencontrol
+ dh_md5sums
+ dh_builddeb $(DEB_DH_BUILDDEB_ARGS)
+
+# Build architecture independant packages using the common target.
+binary-indep: install-indep
+ $(MAKE) -f debian/rules DH_OPTIONS=-i binary-common
+
+# Build architecture dependant packages using the common target.
+binary-arch: build install-arch
+ $(MAKE) -f debian/rules DH_OPTIONS=-a binary-common
+
+binary: binary-arch binary-indep
+.PHONY: build build-arch clean binary-indep binary-arch binary install install-indep install-arch configure