#!/usr/bin/make -f # # Based on the work by Marcus Brinkmann # Rewritten by Guillem Jover # pkg := gnumach pkg_dbg := gnumach-dbg pkg_dev := gnumach-dev DEB_BUILD_GNU_TYPE := $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE) DEB_HOST_GNU_TYPE := $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE) CFLAGS = -Wall -g -pipe ifneq (,$(findstring noopt,$(DEB_BUILD_OPTIONS))) CFLAGS += -O0 else CFLAGS += -O2 endif # disabled: # ncr5380, ncr53c400, ncr53c406a # hpj2577, hpj2573, hp27248b, hp2585, atp drivers := --enable-floppy \ --enable-ide \ \ --enable-advansys \ --enable-buslogic \ --enable-u1434f \ --enable-ultrastor \ --enable-aha152x --enable-aha2825 \ --enable-aha1542 \ --enable-aha1740 \ --enable-aic7xxx \ --enable-futuredomain \ --enable-in2000 \ --enable-pas16 \ --enable-seagate \ --enable-t128 --enable-t128f --enable-t228 \ --enable-ncr53c7xx \ --enable-eatapio \ --enable-wd7000 \ --enable-eata \ --enable-am53c974 --enable-am79c974 \ --enable-dtc3280 --enable-dtc3180 \ --enable-ncr53c8xx --enable-dc390w --enable-dc390u --enable-dc390f \ --enable-dc390t --enable-dc390 \ --enable-ppa \ --enable-qlogicfas \ --enable-qlogicisp \ --enable-gdth \ \ --enable-de4x5 --enable-de425 --enable-de434 \ --enable-de435 --enable-de450 --enable-de500 \ --enable-eexpresspro100 \ --enable-epic100 \ --enable-hp100 \ --enable-ne2kpci \ --enable-pcnet32 \ --enable-rtl8139 --enable-rtl8129 \ --enable-viarhine \ --enable-elcp --enable-tulip \ --enable-yellowfin \ \ --enable-starfire \ --enable-sundance \ --enable-winbond-840 \ --enable-hamachi \ --enable-intel-gige \ --enable-natsami \ --enable-myson803 \ --enable-ns820 \ \ --enable-ac3200 \ --enable-ul32 \ \ --enable-at1700 \ --enable-ul \ --enable-epic \ --enable-wd80x3 \ --enable-3c503 --enable-el2 \ --enable-hplan --enable-hplanplus \ --enable-seeq8005 \ --enable-e2100 \ --enable-ne2000 --enable-ne1000 \ --enable-at1500 --enable-ne2100 \ --enable-fmv18x \ --enable-eth16i --enable-eth32 \ --enable-el3 --enable-3c509 --enable-3c579 \ --enable-vortex --enable-3c59x --enable-3c90x \ --enable-3c515 \ --enable-znet --enable-znote \ --enable-eexpress --enable-eexpresspro \ --enable-depca --enable-de100 --enable-de101 --enable-de200 \ --enable-de201 --enable-de202 --enable-de210 --enable-de422 \ --enable-ewrk3 --enable-de203 --enable-de204 --enable-de205 \ --enable-apricot \ --enable-el1 --enable-3c501 \ --enable-wavelan \ --enable-el16 --enable-3c507 \ --enable-elplus --enable-3c505 \ --enable-de600 --enable-de620 \ --enable-skg16 \ --enable-ni52 --enable-ni65 \ --enable-lance \ --enable-tlan patch:: # XXX: Should be removed once the autoconf patch is in upstream test -f i386/linux/configure.ac || \ cp i386/linux/Drivers.in i386/linux/configure.ac include debian/patch.mk configure: patch stamp-configure stamp-configure: dh_testdir -mkdir build cd build && ../configure $(drivers) \ --build=$(DEB_BUILD_GNU_TYPE) --host=$(DEB_HOST_GNU_TYPE) touch stamp-configure configure-dbg: patch stamp-configure-dbg stamp-configure-dbg: dh_testdir -mkdir build-dbg cd build-dbg && ../configure --enable-kdb $(drivers) \ --build=$(DEB_BUILD_GNU_TYPE) --host=$(DEB_HOST_GNU_TYPE) touch stamp-configure-dbg all build: build-gnumach: stamp-build-gnumach stamp-build-gnumach: configure dh_testdir $(MAKE) -C build $(MAKE) -C build/doc touch stamp-build-gnumach build-gnumach-dbg: stamp-build-gnumach-dbg stamp-build-gnumach-dbg: configure-dbg dh_testdir $(MAKE) -C build-dbg touch stamp-build-gnumach-dbg clean:: dh_testdir -rm -f machine stamp-build stamp-configure -rm -rf build build-dbg -rm -f core `find . \( -name '*.orig' -o -name '*.rej' -o -name '*~' \ -o -name '*.bak' -o -name '#*#' -o -name '.*.orig' \ -o -name '.*.rej' -o -name '.SUMS' -o -size 0 \) -print` # XXX: Should be removed once the autoconf patch is in upstream rm -f i386/linux/configure.ac dh_clean install-gnumach: build-gnumach dh_testdir dh_testroot dh_clean -p$(pkg) -k dh_installdirs -p$(pkg) $(MAKE) -C build install-kernel \ prefix=$(CURDIR)/debian/$(pkg)/usr \ exec_prefix=$(CURDIR)/debian/$(pkg) install-gnumach-dev: build-gnumach dh_testdir dh_testroot dh_clean -p$(pkg_dev) -k dh_installdirs -p$(pkg_dev) $(MAKE) -C build install-headers \ prefix=$(CURDIR)/debian/$(pkg_dev)/usr \ exec_prefix=$(CURDIR)/debian/$(pkg_dev) \ includedir=\$${prefix}/include install-gnumach-dbg: build-gnumach-dbg dh_testdir dh_testroot dh_clean -p$(pkg_dbg) -k dh_installdirs -p$(pkg_dbg) $(MAKE) -C build-dbg install-kernel \ prefix=$(CURDIR)/debian/$(pkg_dbg)/usr \ exec_prefix=$(CURDIR)/debian/$(pkg_dbg) mv debian/$(pkg_dbg)/boot/gnumach debian/$(pkg_dbg)/boot/gnumach-dbg binary: binary-indep binary-arch binary-indep: binary-arch: install-gnumach install-gnumach-dev install-gnumach-dbg dh_testdir dh_testroot dh_installdocs -a dh_installchangelogs -a -k ChangeLog dh_installinfo -a dh_link -a dh_strip -a -N$(pkg_dbg) dh_compress -p$(pkg) boot/gnumach dh_compress -p$(pkg_dbg) boot/gnumach-dbg dh_compress -p$(pkg_dev) dh_fixperms -a dh_installdeb -a dh_gencontrol -a dh_md5sums -a dh_builddeb -a .PHONY: build clean configure binary binary-indep binary-arch