#!/usr/bin/make -f # debian/rules for the Debian mesa package # Copyright © 2006 Thierry Reding # Uncomment this to turn on verbose mode. #export DH_VERBOSE=1 STAMP_DIR = debian/stamp QUILT_STAMPFN = $(STAMP_DIR)/patch include /usr/share/quilt/quilt.make CFLAGS = -Wall -g ifneq (,$(findstring noopt,$(DEB_BUILD_OPTIONS))) CFLAGS += -O0 else CFLAGS += -O2 endif ifeq (,$(findstring nostrip,$(DEB_BUILD_OPTIONS))) INSTALL_PROGRAM += -s endif DEB_BUILD_ARCH ?= $(shell dpkg-architecture -qDEB_BUILD_ARCH) DEB_BUILD_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE) DEB_BUILD_DIR ?= $(CURDIR)/obj-$(DEB_BUILD_GNU_TYPE) export DEB_BUILD_ARCH # choose which configurations to build SWX11_GLU_CONFIGS = DRI_CONFIGS = include debian/scripts/choose-configs # build the following configurations by default CONFIGS = $(SWX11_GLU_CONFIGS) \ $(DRI_CONFIGS) \ debian-osmesa \ debian-osmesa-static \ debian-osmesa16 \ debian-osmesa16-static \ debian-osmesa32 \ debian-osmesa32-static STAMP = $(STAMP_DIR)/$(DEB_BUILD_GNU_TYPE) BUILD_STAMPS = $(addprefix $(STAMP)-build-, $(CONFIGS)) INSTALL_STAMPS = $(addprefix $(STAMP)-install-, $(CONFIGS)) \ $(STAMP_DIR)/install-source # list the configurations that will built configs: @echo Building the following configurations: $(CONFIGS) $(STAMP_DIR): dh_testdir mkdir -p $@ $(QUILT_STAMPFN): $(STAMP_DIR) build: $(BUILD_STAMPS) $(STAMP)-build-%: patch dh_testdir mkdir -p $(DEB_BUILD_DIR)/$* find $(CURDIR)/* -maxdepth 0 -not -path '$(DEB_BUILD_DIR)*' | \ xargs cp -rlf -t $(DEB_BUILD_DIR)/$* ln -sf $* $(DEB_BUILD_DIR)/$*/configs/current cd $(DEB_BUILD_DIR)/$* && $(MAKE) touch $@ pre-install: dh_testdir dh_testroot dh_clean -k --exclude ./Makefile.orig --exclude configs/CVS/Root.bak rm -rf $(INSTALL_STAMPS) install: pre-install $(INSTALL_STAMPS) $(STAMP)-install-%: $(STAMP)-build-% # Add here commands to install the package into debian/tmp cd $(DEB_BUILD_DIR)/$* && $(MAKE) install DESTDIR=$(CURDIR)/debian/tmp touch $@ $(STAMP_DIR)/install-source: # install Mesa source for mesa-swx11-source package chmod a+x debian/scripts/install-source.sh debian/scripts/install-source.sh touch $@ clean: unpatch dh_testdir dh_testroot dh_clean --exclude ./Makefile.orig rm -rf $(DEB_BUILD_DIR) $(STAMP_DIR) # Build architecture-independent files here. binary-indep: build install dh_testdir dh_testroot dh_installchangelogs -i dh_installdocs -i dh_installexamples -i dh_install --sourcedir=debian/tmp --list-missing -i dh_installman -i dh_link -i dh_compress -i dh_fixperms -i dh_installdeb -i dh_gencontrol -i dh_md5sums -i dh_builddeb -i # Build architecture-dependent files here. binary-arch: build install dh_testdir dh_testroot dh_installchangelogs -s dh_installdocs -s dh_installexamples -s dh_install --sourcedir=debian/tmp --list-missing -s dh_installman -s dh_link -s dh_strip -plibgl1-mesa-swx11 --dbg-package=libgl1-mesa-swx11-dbg dh_strip -plibgl1-mesa-glx --dbg-package=libgl1-mesa-glx-dbg dh_strip -plibgl1-mesa-dri --dbg-package=libgl1-mesa-dri-dbg dh_strip -s dh_compress -s dh_fixperms -s dh_makeshlibs -s dh_installdeb -s dh_shlibdeps -s dh_gencontrol -s dh_md5sums -s dh_builddeb -s binary: binary-indep binary-arch .PHONY: configs build clean binary-indep binary-arch binary install configure