169 lines
4.8 KiB
169 lines
4.8 KiB
#!/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)
|
|
|
|
include /usr/share/dpatch/dpatch.make
|
|
# 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)
|
|
|
|
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: patch-stamp
|
|
dh_testdir
|
|
mkdir -p build-$*
|
|
cd build-$* && python$* ../configure.py \
|
|
-c -u -k /opt/trinity -o /opt/trinity/include -n /opt/trinity/lib \
|
|
-v /opt/trinity/share/sip/trinity -j $(SPLIT)
|
|
touch $@
|
|
|
|
dbg-build-%/configure-stamp: patch-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 \
|
|
-v /opt/trinity/share/sip/trinity -j $(SPLIT)
|
|
touch $@
|
|
|
|
build: $(PYTHONS:%=build-%/build-stamp) $(DBG_PYTHONS:%=dbg-build-%/build-stamp)
|
|
|
|
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: unpatch
|
|
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_PYCENTRAL=nomove dh_pycentral
|
|
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 clean binary-indep binary-arch binary install install-indep install-arch configure
|