#!/usr/bin/make -f # $Id: rules,v 1.21 2016/02/01 00:45:45 tom Exp $ # Uncomment this to turn on verbose mode. #export DH_VERBOSE=1 # These are used for cross-compiling and for saving the configure script # from having to guess our platform (since we know it already) DEB_HOST_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE) DEB_BUILD_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE) # packages PACKAGES.indep = libcdk5-doc PACKAGES.arch = libcdk5-dev libcdk5 CFLAGS = TARGET = $(CURDIR)/debian P_SHARED = $(CURDIR)/t/shared P_STATIC = $(CURDIR)/t/static verbose = # -v LOG = @echo "**" configure = ../../configure \ --disable-echo \ --host=$(DEB_HOST_GNU_TYPE) \ --build=$(DEB_BUILD_GNU_TYPE) \ --prefix=/usr \ --mandir=\$${prefix}/share/man \ --with-screen=ncursesw6 \ --with-versioned-syms \ --with-libname=cdk \ --disable-rpath-hack ifneq (,$(findstring noopt,$(DEB_BUILD_OPTIONS))) CFLAGS += -O0 else CFLAGS += -O2 endif ifeq (,$(findstring nostrip,$(DEB_BUILD_OPTIONS))) INSTALL_PROGRAM += -s endif .PHONY: all config build install binary clean config-indep config-arch \ build-indep build-arch install-indep install-arch binary-indep \ binary-arch all: build config: config-indep config-arch build: build-indep build-arch install: install-indep install-arch binary: binary-indep binary-arch clean: dh_testdir dh_testroot dh_clean $(verbose) rm -rf t config-indep: $(PACKAGES.indep:%=config-%-stamp) config-arch: $(PACKAGES.arch:%=config-%-stamp) build-indep: $(PACKAGES.indep:%=build-%-stamp) build-arch: $(PACKAGES.arch:%=build-%-stamp) install-indep: $(PACKAGES.indep:%=install-%-stamp) install-arch: $(PACKAGES.arch:%=install-%-stamp) binary-indep: install-indep ifneq ($(PACKAGES.indep),) rm -f $(PACKAGES.indep:%=install-%-stamp) dh_testdir dh_testroot dh_installdocs $(verbose) $(PACKAGES.indep:%=-p%) dh_installman $(verbose) $(PACKAGES.indep:%=-p%) dh_installexamples $(verbose) $(PACKAGES.indep:%=-p%) dh_installchangelogs $(verbose) $(PACKAGES.indep:%=-p%) -k CHANGES dh_compress $(verbose) $(PACKAGES.indep:%=-p%) dh_fixperms $(verbose) $(PACKAGES.indep:%=-p%) dh_installdeb $(verbose) $(PACKAGES.indep:%=-p%) dh_gencontrol $(verbose) $(PACKAGES.indep:%=-p%) dh_md5sums $(verbose) $(PACKAGES.indep:%=-p%) dh_builddeb $(verbose) $(PACKAGES.indep:%=-p%) endif binary-arch: install-arch ifneq ($(PACKAGES.arch),) rm -f $(PACKAGES.arch:%=install-%-stamp) dh_testdir dh_testroot dh_link $(verbose) $(PACKAGES.arch:%=-p%) dh_installdocs $(verbose) $(PACKAGES.arch:%=-p%) dh_installchangelogs $(verbose) $(PACKAGES.arch:%=-p%) -k CHANGES dh_installmenu $(verbose) $(PACKAGES.arch:%=-p%) dh_strip $(verbose) $(PACKAGES.arch:%=-p%) dh_compress $(verbose) $(PACKAGES.arch:%=-p%) dh_fixperms $(verbose) $(PACKAGES.arch:%=-p%) dh_makeshlibs $(verbose) $(PACKAGES.arch:%=-p%) dh_installdeb $(verbose) $(PACKAGES.arch:%=-p%) dh_shlibdeps $(verbose) $(PACKAGES.arch:%=-p%) dh_gencontrol $(verbose) $(PACKAGES.arch:%=-p%) dh_md5sums $(verbose) $(PACKAGES.arch:%=-p%) dh_builddeb $(verbose) $(PACKAGES.arch:%=-p%) endif #------------------------------------------------------------------------------ config-libcdk5-stamp : $(LOG) "configuring libcdk5" dh_testdir rm -rf $(P_SHARED) mkdir -p $(P_SHARED) cd $(P_SHARED); CFLAGS="$(CFLAGS)" \ $(configure) --with-shared --with-versioned-syms rm -rf $(P_STATIC) mkdir -p $(P_STATIC) cd $(P_STATIC); CFLAGS="$(CFLAGS)" \ $(configure) touch $@ build-libcdk5-stamp : config-libcdk5-stamp $(LOG) "building libcdk5" dh_testdir $(MAKE) -C $(P_SHARED) all $(MAKE) -C $(P_STATIC) all touch $@ install-libcdk5-stamp : build-libcdk5-stamp $(LOG) "installing libcdk5" dh_testdir dh_testroot dh_prep $(verbose) -plibcdk5 dh_installdirs $(verbose) -plibcdk5 $(MAKE) -C $(P_SHARED) DESTDIR=$(TARGET)/libcdk5 installCDKLibrary # remove -config file also in -dev package rm -rf $(TARGET)/libcdk5/usr/bin touch $@ #------------------------------------------------------------------------------ config-libcdk5-dev-stamp : config-libcdk5-stamp touch $@ build-libcdk5-dev-stamp : build-libcdk5-stamp touch $@ install-libcdk5-dev-stamp : install-libcdk5-stamp $(LOG) "installing libcdk5-dev" dh_testdir dh_testroot dh_prep $(verbose) -plibcdk5-dev dh_installdirs $(verbose) -plibcdk5-dev $(MAKE) -C $(P_SHARED) DESTDIR=$(TARGET)/libcdk5-dev installCDKHeaderFiles $(MAKE) -C $(P_STATIC) DESTDIR=$(TARGET)/libcdk5-dev install.libs # get the symbolic link, but not the actual file $(MAKE) -C $(P_SHARED) DESTDIR=$(TARGET)/libcdk5-dev install.libs find $(TARGET)/libcdk5-dev/usr/lib -type f -name '*.so*' -exec rm -f {} \; touch $@ #------------------------------------------------------------------------------ config-libcdk5-doc-stamp : config-libcdk5-stamp touch $@ build-libcdk5-doc-stamp : build-libcdk5-stamp touch $@ install-libcdk5-doc-stamp : install-libcdk5-stamp $(LOG) "installing libcdk5-doc" dh_testdir dh_testroot dh_prep $(verbose) -plibcdk5-doc dh_installdirs $(verbose) -plibcdk5-doc $(MAKE) -C $(P_SHARED) DESTDIR=$(TARGET)/libcdk5-doc installCDKManPages dh_installexamples $(verbose) -plibcdk5-doc examples demos touch $@