1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122
|
#!/usr/bin/make -f
# -*- makefile -*-
DEB_HOST_ARCH_OS ?= $(shell dpkg-architecture -qDEB_HOST_ARCH_OS)
# Determine host architecture compiler
DEB_HOST_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE)
ifeq ($(origin CC),default)
CC := $(DEB_HOST_GNU_TYPE)-gcc
endif
# Determine build architecture compiler
DEB_BUILD_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE)
NATIVE_CC ?= $(DEB_BUILD_GNU_TYPE)-gcc
export SHELL = bash
ifneq (,$(filter parallel=%,$(DEB_BUILD_OPTIONS)))
NUMJOBS = $(patsubst parallel=%,%,$(filter parallel=%,$(DEB_BUILD_OPTIONS)))
# Do not mess with MAKEFLAGS until we transfer control to BSD make (see below)
BSD_MAKEFLAGS += -j$(NUMJOBS)
endif
DESTDIR = $(CURDIR)/debian/tmp
PATH := /usr/lib/freebsd:$(PATH)
PMAKE := \
MAKEFLAGS=$(BSD_MAKEFLAGS) \
MAKEOBJDIRPREFIX=$(CURDIR)/obj-deb \
CFLAGS="$(CFLAGS) -O2" \
DESTDIR="$(DESTDIR)" \
bmake -m /usr/share/mk-freebsd \
CC=$(CC) \
$(NULL)
PMAKE_UDEB := \
MAKEFLAGS=$(BSD_MAKEFLAGS) \
MAKEOBJDIRPREFIX=$(CURDIR)/obj-udeb \
CFLAGS="$(CFLAGS) -Os" \
DESTDIR="$(DESTDIR)-udeb" \
bmake -m /usr/share/mk-freebsd \
CC=$(CC) \
RESCUE=yes \
$(NULL)
clean:
dh_testdir
rm -rf obj-{deb,udeb} debian/tmp-udeb
rm -f include/machine/__get_elf_arch.h src/get_elf_arch src/host_elf_arch
dh_clean
# Build this for the build architecture, as it is executed during build
# to examine host_elf_arch
src/get_elf_arch:
$(NATIVE_CC) src/get_elf_arch.c -o src/get_elf_arch
# Build this for the host architecture.
src/host_elf_arch: src/host_elf_arch.c
include/machine/__get_elf_arch.h: src/get_elf_arch src/host_elf_arch
$^ src/host_elf_arch > $@
build: build-arch
build-arch: build-deb build-udeb
build-deb: include/machine/__get_elf_arch.h
$(PMAKE) obj
$(PMAKE)
build-udeb: include/machine/__get_elf_arch.h
$(PMAKE_UDEB) obj
$(PMAKE_UDEB)
build-indep:
:
install-arch: build-arch
dh_testdir
dh_testroot
dh_prep -a
dh_installdirs -a
mkdir -p $(DESTDIR){,-udeb}/{usr/,}lib
$(PMAKE) install
$(PMAKE_UDEB) install
echo "GROUP( libexpat.so )" > \
$(DESTDIR)/usr/lib/libbsdxml.so
ln -s $(DEB_HOST_GNU_TYPE)/libexpat.a \
$(DESTDIR)/usr/lib/libbsdxml.a
mkdir -p $(DESTDIR)/usr/lib/freebsd
install -m755 debian/local/scripts/bmake $(DESTDIR)/usr/lib/freebsd/
dh_install -a --list-missing
binary: binary-arch binary-indep
binary-arch: install-arch
dh_testdir
dh_testroot
dh_installchangelogs -a
dh_installdocs -a
# dh_installexamples
# dh_installinit
# dh_installcron
# dh_installinfo
# dh_installman
dh_link -a
dh_strip -a
dh_compress -a
dh_fixperms -a
# dh_perl
# dh_python
dh_makeshlibs -a
ifeq ($(DEB_HOST_ARCH_OS), kfreebsd)
dh_makeshlibs -plibfreebsd-glue-0 --add-udeb=libfreebsd-glue-0-udeb
endif
dh_installdeb -a
dh_shlibdeps -a
dh_gencontrol -a
dh_md5sums -a
dh_builddeb -a
binary-indep:
:
|