diff options
author | Denis Kozadaev <denis@dilos.org> | 2020-01-30 22:13:12 +0300 |
---|---|---|
committer | Slávek Banko <slavek.banko@axis.cz> | 2020-03-08 16:03:56 +0100 |
commit | 6efc9a76c037352583f497a7f84e61648d7663b1 (patch) | |
tree | 6c7c51d25bbb49c31768c5a70407c96568cf95e6 /dilos/libraries/python-trinity/debian/rules | |
parent | ab6d82505c3a06a94ef7d8fd2585fce69db036b9 (diff) | |
download | tde-packaging-6efc9a76c037352583f497a7f84e61648d7663b1.tar.gz tde-packaging-6efc9a76c037352583f497a7f84e61648d7663b1.zip |
DilOS: python-trinity build pack
Signed-off-by: Denis Kozadaev <denis@dilos.org>
(cherry picked from commit 178fffe76f87c9c0fba6f1220ac8ea70837a7237)
Diffstat (limited to 'dilos/libraries/python-trinity/debian/rules')
-rwxr-xr-x | dilos/libraries/python-trinity/debian/rules | 176 |
1 files changed, 176 insertions, 0 deletions
diff --git a/dilos/libraries/python-trinity/debian/rules b/dilos/libraries/python-trinity/debian/rules new file mode 100755 index 000000000..34532b767 --- /dev/null +++ b/dilos/libraries/python-trinity/debian/rules @@ -0,0 +1,176 @@ +#!/usr/bin/make -f +# -*- makefile -*- + +# Uncomment this to turn on verbose mode. +#export DH_VERBOSE=1 + +DEB_HOST_MULTIARCH ?= $(shell dpkg-architecture -qDEB_HOST_MULTIARCH) + +DEB_CONFIGURE_INCLUDEDIR := /usr/include +DEB_CONFIGURE_MANDIR := /usr/share/man +DEB_CONFIGURE_PREFIX := /usr +DEB_CONFIGURE_INFODIR := /usr/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/dilos-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 /usr -o /usr/include -n /usr/lib/$(DEB_HOST_MULTIARCH) \ + -e python$* \ + -v /usr/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 /usr -o /usr/include -n /usr/lib \ + -e python$* \ + -v /usr/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/usr/lib/python-$$version/site-packages;\ + cp debian/pytdeconfig.py debian/python-trinity-trinity-dev/usr/lib/python-$$version/site-packages/;\ + cp build-$$version/pytdeconfig.py debian/python-trinity-trinity-dev/usr/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/usr/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/usr/lib/$(DEB_HOST_MULTIARCH) + ln -s /usr/lib/$(DEB_HOST_MULTIARCH)/trinity/libkonsolepart.so $(CURDIR)/debian/python-trinity-trinity/usr/lib/$(DEB_HOST_MULTIARCH) +# 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 /usr/lib/$(DEB_HOST_MULTIARCH) + 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 |