# This has to be exported to make some magic below work.
export DH_OPTIONS
-#DPKG_ARCH#
-
CFLAGS = -Wall -g
CONCURRENCY_LEVEL ?= 1
export CONCURRENCY_LEVEL
-LIBTYPE ?= UNSPEC
-
ifneq (,$(findstring noopt,$(DEB_BUILD_OPTIONS)))
CFLAGS += -O0
else
configure: configure-stamp
configure-stamp:
dh_testdir
-# # Add here commands to configure the package.
+# Add here commands to configure the package.
rm -f Doxyfile.local SConfig local_config.hh
scons prepare
# If needed, we could create new files 'Doxyfile.local',
# by 'scons deb' and 'scons debsrc'
touch configure-stamp
-build: #build-arch build-indep
+build: build-arch build-indep
-build-arch: build-arch-$(LIBTYPE)-stamp
-build-arch-$(LIBTYPE)-stamp: configure-stamp
+build-arch: build-arch-final build-arch-debug
+
+build-arch-final: build-arch-final-stamp
+build-arch-final-stamp: configure-stamp
# Add here commands to compile the arch part of the package.
- scons -j $(CONCURRENCY_LEVEL) default $(SCONS_OPTIONS)
+ scons -j $(CONCURRENCY_LEVEL) default final=1
+ scons $(destdir)/usr/lib final=1 PREFIX='$(destdir)/usr'
+ touch $@
+
+build-arch-debug: build-arch-debug-stamp
+build-arch-debug-stamp: configure-stamp
+# Add here commands to compile the arch part of the package.
+ scons -j $(CONCURRENCY_LEVEL) default LIBADDSUFFIX=_g OBJADDSUFFIX=_g
+ scons $(destdir)/usr/lib LIBADDSUFFIX=_g OBJADDSUFFIX=_g \
+ PREFIX='$(destdir)/usr' OBJINSTALLDIR='$$LIBINSTALLDIR/debug'
touch $@
build-indep: build-indep-stamp
build-indep-stamp: configure-stamp
# Add here commands to compile the indep part of the package.
scons -j $(CONCURRENCY_LEVEL) all_docs
+ scons all_docs
scons linklint
scons fixlinks
+ scons $(destdir)/usr/include $(destdir)/usr/share/doc \
+ PREFIX='$(destdir)/usr' \
+ DOCINSTALLDIR='$$PREFIX/share/doc/libsenf-doc/html' \
+ INCLUDEINSTALLDIR='$$PREFIX/include/senf'
+# Remove all the files not really needed from the documentation directories
+ find $(destdir)/usr/share/doc/libsenf-doc/html \
+ -type f ! -regex '.*\.\(html\|css\|png\|php\|idx\|tag\)' | xargs rm -f
+# We need to install the example sourcecode
+ find Examples \( -name "*.hh" -o -name "*.cc" \) -printf "%P\n" | \
+ while read src; do \
+ dir="$(destdir)/usr/share/doc/libsenf-doc/examples/$$(dirname "$$src")"; \
+ mkdir -p "$$dir"; \
+ cp "Examples/$$src" "$$dir"; \
+ done
touch $@
clean: debclean
# Add here commands to clean up after the build process.
-scons -c all
- -scons -c all LIBSENF=senf_g
+ -scons -c all LIBADDSUFFIX=_g OBJADDSUFFIX=_g
debclean:
dh_testdir
rm -f build-arch-*-stamp build-indep-stamp configure-stamp
dh_clean
-install: #install-indep install-arch
+install: install-arch install-indep
install-indep: build-indep
dh_testdir
dh_testroot
- dh_clean -k -i
+ dh_clean -k -i -Xdebian/tmp
dh_installdirs -i
# Add here commands to install the indep part of the package into
# debian/<package>-doc.
- scons $(destdir)/usr/include $(destdir)/usr/share/doc $(SCONS_OPTIONS) \
- PREFIX='$(destdir)/usr' \
- DOCINSTALLDIR='$$PREFIX/share/doc/libsenf-doc' \
- INCLUDEINSTALLDIR='$$PREFIX/include/senf'
-# We need to install the example sourcecode
- find Examples \( -name "*.hh" -o -name "*.cc" \) -printf "%P\n" | \
- while read src; do \
- dir="$(destdir)/usr/share/doc/libsenf-doc/examples/$$(dirname "$$src")"; \
- mkdir -p "$$dir"; \
- cp "Examples/$$src" "$$dir"; \
- done
dh_install -X.svn -i
install-arch: build-arch
dh_testdir
dh_testroot
- dh_clean -k -s
- dh_installdirs # options provided by DH_OPTIONS
+ dh_clean -k -s -Xdebian/tmp
+ dh_installdirs -s
# Add here commands to install the arch part of the package into
# debian/tmp.
- scons $(destdir)/usr/lib $(SCONS_OPTIONS) PREFIX='$(destdir)/usr'
- dh_install -X.svn # options provided by DH_OPTIONS
+ dh_install -X.svn -s
# Must not depend on anything. This is to be called by
# binary-arch/binary-indep
binary-indep: build-indep install-indep
$(MAKE) -f debian/rules DH_OPTIONS=-i binary-common
-binary-arch: binary-arch-final binary-arch-debug
-
-binary-arch-final:
- $(MAKE) -f debian/rules \
- DH_OPTIONS="-s -Nlibsenf-dbg" \
- SCONS_OPTIONS="final=1" \
- LIBTYPE="final" \
- binary-arch-common
-
-binary-arch-debug:
- $(MAKE) -f debian/rules \
- DH_OPTIONS="-plibsenf-dbg" \
- SCONS_OPTIONS="LIBSENF=senf_g" \
- LIBTYPE="debug" \
- binary-arch-common
-
-binary-arch-common: build-arch install-arch
- $(MAKE) -f debian/rules DH_OPTIONS="$(DH_OPTIONS)" binary-common
+binary-arch: build-arch install-arch
+ $(MAKE) -f debian/rules DH_OPTIONS=-s binary-common
binary: binary-arch binary-indep
.PHONY: build clean binary-indep binary-arch binary install install-indep install-arch \