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
|
#! /usr/bin/make -f
export DH_OPTIONS
NUM_CPUS = $(shell getconf _NPROCESSORS_ONLN 2>/dev/null)
PARALLEL = $(subst parallel=,,$(filter parallel=%,$(DEB_BUILD_OPTIONS)))
NJOBS = -j$(or $(PARALLEL),$(NUM_CPUS),1)
DEB_BUILD_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE)
DEB_HOST_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE)
DEB_HOST_ARCH ?= $(shell dpkg-architecture -qDEB_HOST_ARCH)
DEB_HOST_MULTIARCH ?= $(shell dpkg-architecture -qDEB_HOST_MULTIARCH)
HARD_CPPFLAGS = -D_FORTIFY_SOURCE=2
HARD_CFLAGS = -Wformat=2
HARD_LDFLAGS = -Wl,-z,now
ifneq (,$(filter-out $(DEB_HOST_ARCH), alpha hppa arm))
HARD_CFLAGS += -fstack-protector --param ssp-buffer-size=4
endif
ifneq (,$(filter-out $(DEB_HOST_ARCH), ia64 hppa avr32))
HARD_LDFLAGS += -Wl,-z,relro
endif
# Keep dpkg-buildpackage the hell out of messing with our compile flags,
# we should trust upstream to know better than it what to use here.
# We do append -g for release builds though, for the detached -dbg package,
# and also now the hardening flags too as appropriate.
CPPFLAGS = $(HARD_CPPFLAGS)
CFLAGS = $(HARD_CFLAGS) -g
CXXFLAGS = $(HARD_CFLAGS) -g
LDFLAGS = $(HARD_LDFLAGS)
ifneq (,$(findstring noopt,$(DEB_BUILD_OPTIONS)))
CFLAGS = -Wall -g -O0
endif
ifeq (,$(findstring nostrip,$(DEB_BUILD_OPTIONS)))
INSTALL_PROGRAM += -s
endif
objdir = objs
clean:
dh_testdir
dh_testroot
$(RM) build-stamp install-stamp
$(RM) -r $(objdir)
dh_clean
$(objdir)/config.status: configure
dh_testdir
mkdir -p $(objdir)
cd $(objdir) && ../configure --disable-maintainer-mode \
--host=$(DEB_HOST_GNU_TYPE) \
--build=$(DEB_BUILD_GNU_TYPE) \
--libdir=\$${prefix}/lib/$(DEB_HOST_MULTIARCH) \
--enable-static \
--prefix=/usr \
CPPFLAGS="$(CPPFLAGS)" \
CFLAGS="$(CFLAGS)" \
CXXFLAGS="$(CXXFLAGS)" \
LDFLAGS="$(LDFLAGS)"
build: build-arch
build-arch: build-stamp
build-indep:
build-stamp: $(objdir)/config.status
dh_testdir
$(MAKE) $(NJOBS) -C $(objdir)
touch $@
install: install-stamp
install-stamp: build-arch
dh_testdir
$(MAKE) -C $(objdir) install DESTDIR=$(CURDIR)/debian/tmp
touch $@
binary: binary-arch
binary-arch: DH_OPTIONS = -a
binary-arch: install
dh_testdir
dh_testroot
dh_install --sourcedir=debian/tmp
dh_installdocs
dh_installchangelogs CHANGES
dh_strip --dbg-package=libogg-dbg
dh_compress
dh_fixperms
dh_makeshlibs -- -c0
dh_installdeb
dh_shlibdeps
dh_gencontrol
dh_md5sums
dh_builddeb
binary-indep:
.PHONY: clean build build-arch build-indep install binary binary-arch binary-indep
|