#!/usr/bin/make -f
-# -*- makefile -*-
-# Sample debian/rules that uses debhelper.
-# This file was originally written by Joey Hess and Craig Small.
-# As a special exception, when this file is copied by dh-make into a
-# dh-make output file, you may use that output file without restriction.
-# This special exception was added by Craig Small in version 0.37 of dh-make.
+# See debhelper(7) (uncomment to enable)
+# output every command that modifies files on the build system.
+#export DH_VERBOSE = 1
-# Uncomment this to turn on verbose mode.
-#export DH_VERBOSE=1
+# see FEATURE AREAS in dpkg-buildflags(1)
+export DEB_BUILD_MAINT_OPTIONS = hardening=+all
-CFLAGS = -Wall -g
+# see ENVIRONMENT in dpkg-buildflags(1)
+# package maintainers to append CFLAGS
+#export DEB_CFLAGS_MAINT_APPEND = -Wall -pedantic
+# package maintainers to append LDFLAGS
+#export DEB_LDFLAGS_MAINT_APPEND = -Wl,--as-needed
-ifneq (,$(findstring noopt,$(DEB_BUILD_OPTIONS)))
- CFLAGS += -O0
-else
- CFLAGS += -Os
-endif
-config.status:
+configure: configure-stamp
+configure-stamp:
dh_testdir
- # Add here commands to configure the package.
- cd src/ && ./configure
+ cd src && ./configure --no-manpage --prefix=/usr --sysconfdir=/etc --examplesdir=/usr/share/anytun/examples && cd ..
+ touch configure-stamp
-build: build-stamp
+build: build-arch build-indep
-build-stamp: config.status
+build-arch: build-stamp
+build-indep: build-stamp
+
+build-stamp: configure-stamp
dh_testdir
- # Add here commands to compile the package.
- $(MAKE) --directory=$(CURDIR)/src
- cd src/man && $(MAKE)
+ cd src && $(MAKE) && cd ..
touch $@
clean:
dh_testdir
dh_testroot
- rm -f build-stamp
+ rm -f build-stamp configure-stamp
# Add here commands to clean up after the build process.
$(MAKE) --directory=$(CURDIR)/src distclean
install: build
dh_testdir
dh_testroot
- dh_clean -k
- dh_installdirs usr/bin usr/sbin usr/share/man/man8 etc/anytun etc/init.d/
+ dh_installdirs
# Add here commands to install the package into debian/anytun.
- install $(CURDIR)/src/anytun $(CURDIR)/debian/anytun/usr/sbin/
- install $(CURDIR)/src/anytun-config $(CURDIR)/debian/anytun/usr/bin/
- install $(CURDIR)/src/anytun-controld $(CURDIR)/debian/anytun/usr/bin/
- install $(CURDIR)/src/anytun-showtables $(CURDIR)/debian/anytun/usr/bin/
- # currently broken (known upstream):
- # install $(CURDIR)/src/anyrtpproxy/anyrtpproxy $(CURDIR)/debian/anytun/usr/bin/
- cp $(CURDIR)/src/man/*.8 $(CURDIR)/debian/anytun/usr/share/man/man8
- install $(CURDIR)/etc/init.d/anytun $(CURDIR)/debian/anytun/etc/init.d/
- cp -a $(CURDIR)/etc/anytun $(CURDIR)/debian/anytun/etc/
+ cd src && $(MAKE) DESTDIR=$(CURDIR)/debian/anytun install && cd ..
+ # Fix unusual path:
+ mv debian/anytun/usr/share/anytun/examples/anytun debian/anytun/usr/share/anytun/examples/config
+ echo "example configurations can be found at /usr/share/anytun/examples/config" > debian/anytun/etc/anytun/README
# Build architecture-independent files here.
-binary-indep: build install
+binary-indep: install
# We have nothing to do by default.
# Build architecture-dependent files here.
-binary-arch: build install
+binary-arch: install
dh_testdir
dh_testroot
- dh_installchangelogs
+ dh_installchangelogs ChangeLog
dh_installdocs
+ dh_installman doc/anytun.8 doc/anytun-config.8 doc/anytun-controld.8 doc/anytun-showtables.8
dh_installexamples
- dh_installman
+ dh_installinit
dh_link
dh_strip
dh_compress
+ mkdir -p debian/anytun/usr/share/lintian/overrides/
+ cp -av debian/overrides debian/anytun/usr/share/lintian/overrides/anytun
dh_fixperms
+ find debian/anytun -type f -name config -exec chmod 600 {} \;
+ find debian/anytun -type f -name post-up.sh -exec chmod 755 {} \;
+ chmod 600 debian/anytun/usr/share/anytun/examples/config/server/conf.d/*
dh_installdeb
dh_shlibdeps
dh_gencontrol
dh_builddeb
binary: binary-indep binary-arch
-.PHONY: build clean binary-indep binary-arch binary install
+.PHONY: build clean binary-indep binary-arch binary install configure