143 lines
4.9 KiB

#! /usr/bin/make -f
DEB_QUILT_PATCHDIR_LINK :=
export QUILT_PATCHES=debian/patches
include /usr/share/cdbs/1/rules/debhelper.mk
override DEB_BUILDDIR := $(DEB_SRCDIR)
include debian/cdbs/debian-qt-kde.mk
DEB_BUILDDIR := $(DEB_SRCDIR)
include /usr/share/cdbs/1/rules/patchsys-quilt.mk
include /usr/share/cdbs/1/rules/utils.mk
DEB_CONFIGURE_INCLUDEDIR := /opt/trinity/include/tde
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)
###
ifneq (,$(shell dh_listpackages -s | grep libqt3-jni-trinity))
WITH_JAVA := --with-java=/usr/lib/jvm/default-java
else
WITH_JAVA := --without-java
WITHOUT_JAVA := 1
endif
###
DEB_CONFIGURE_EXTRA_FLAGS = $(WITH_JAVA) \
--prefix=/opt/trinity --with-extra-libs=/opt/trinity/lib \
DO_NOT_COMPILE='dcopc dcopperl kalyptus qtsharp xparts python'
DEB_COMPRESS_EXCLUDE += .java .ui .js .rb .map .wav .bmp .cpp .sk
DEB_DH_BUILDDEB_ARGS += -- -Z$(shell dpkg-deb --help | grep -q ":.* xz[,.]" \
&& echo xz || echo bzip2)
# These are not all the packages with libraries, but only those that
# need to be in DEB_SHLIBDEPS_INCLUDE...
PACKAGES_WITH_LIBS = libqt3-jni-trinity libsmokeqt1-trinity libsmokekde1-trinity libkjsembed1-trinity
# These packages do not ship files in /usr/lib so need not call ldconfig.
DEB_DH_MAKESHLIBS_ARGS_libtrinity-jni-trinity = -n
DEB_DH_MAKESHLIBS_ARGS_libqt0-ruby1.8-trinity = -n
DEB_DH_MAKESHLIBS_ARGS_libkorundum0-ruby1.8-trinity = -n
###
clean::
rm -f kjsembed/docs/embedding/simple-embed/Makefile
rm -f debian/stamp-install-dcopjava
[ ! -f Makefile ] || $(MAKE) -C dcopjava distclean
find . -name 'Makefile' -exec rm {} \;
# Just in case
rm -f $(DEB_SRCDIR)/dcopjava/dcopidl2java/dcopidl2java
rm -f $(DEB_SRCDIR)/dcopjava/dcopidl2java/dcopidl2java.all_cpp.o
rm -f $(DEB_SRCDIR)/dcopjava/binding/org/kde/DCOP/*.class
rm -rf $(DEB_SRCDIR)/dcopjava/binding/.libs
rm -f dcopjava/binding/client.lo
rm -f dcopjava/binding/libjavadcop.la
rm -f dcopjava/binding/org_kde_DCOP_Client.h
rm -f dcopjava/dcopidl2java/dcopidl2java.all_cpp.cpp
rm -f smoke/kde/qtdefines
rm -f smoke/kde/smokedata.cpp.diff
rm -f smoke/qt/qtdefines
rm -f smoke/qt/smokedata.cpp.diff
common-build-indep:: stamp-build-dcopjava
stamp-build-dcopjava:
ifndef WITHOUT_JAVA
# build dcopjava even though it's disabled upstream.
cd $(DEB_BUILDDIR) && \
$(MAKE) -C dcopjava
endif
touch debian/$@
stamp-install-dcopjava:
ifndef WITHOUT_JAVA
cd $(DEB_BUILDDIR) && \
$(MAKE) -C dcopjava install DESTDIR=$(CURDIR)/debian/tmp
endif
touch debian/$@
upstream_version=$(shell head -1 $(CURDIR)/debian/changelog | sed -e "s,.*:\([^-]*\).*,\1,")
common-install-arch::
# Move the python and ruby bindings to the correct directory
cp -Rp debian/tmp/usr/lib/* debian/tmp/opt/trinity/lib/
rm -rf debian/tmp/usr/lib/*
common-install-indep:: stamp-install-dcopjava
dh_link -i
ifndef WITHOUT_JAVA
# Fix up the Java packages so they conform to policy
mkdir -p debian/tmp/opt/trinity/share/java
(cd debian/tmp/opt/trinity/lib/java ; jar cvf ../../share/java/dcopjava-$(upstream_version).jar org/ )
cd debian/tmp/opt/trinity/lib/java; rm -rf org
ln -s dcopjava-$(upstream_version).jar debian/tmp/opt/trinity/share/java/dcopjava.jar
mv debian/tmp/opt/trinity/lib/java/qtjava.jar debian/tmp/opt/trinity/share/java/qtjava-$(upstream_version).jar
ln -s qtjava-$(upstream_version).jar debian/tmp/opt/trinity/share/java/qtjava.jar
mv debian/tmp/opt/trinity/lib/java/koala.jar debian/tmp/opt/trinity/share/java/koala-$(upstream_version).jar
ln -s koala-$(upstream_version).jar debian/tmp/opt/trinity/share/java/koala.jar
endif
common-install-arch:: stamp-install-dcopjava
dh_link -s
# Provide a Makefile for the example
$(if $(call cdbs_streq,$(DEB_BUILDDIR),$(DEB_SRCDIR)),,\
cp $(DEB_BUILDDIR)/kjsembed/docs/embedding/simple-embed/Makefile kjsembed/docs/embedding/simple-embed)
###
binary-install/python-dcop-trinity::
dh_pysupport -p$(cdbs_curpkg)
###
common-binary-post-install-arch::
for p in $(PACKAGES_WITH_USD_SYMLINK); do \
rm -f debian/$$p/opt/trinity/share/doc/$$p/copyright; \
rm -f debian/$$p/opt/trinity/share/doc/$$p/changelog.Debian; \
rm -f debian/$$p/opt/trinity/share/doc/$$p/changelog; \
done
common-binary-post-install-indep::
for p in $(PACKAGES_WITH_USD_SYMLINK); do \
rm -f debian/$$p/opt/trinity/share/doc/$$p/copyright; \
rm -f debian/$$p/opt/trinity/share/doc/$$p/changelog.Debian; \
rm -f debian/$$p/opt/trinity/share/doc/$$p/changelog; \
done
PACKAGES_WITH_USD_SYMLINK = tdebindings-java-trinity libtrinity-java-trinity libqt3-java-trinity \
libdcop3-java-trinity-dev libdcop3-java-trinity \
libsmokekde-trinity-dev libsmokeqt-trinity-dev \
kjscmd-trinity libkjsembed-trinity-dev