summaryrefslogtreecommitdiff
path: root/debian/rules
blob: 58640b2a5a13453649a07440ddc86d835682865f (plain)
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
#!/usr/bin/make -f

# Uncomment this to turn on verbose mode.
#export DH_VERBOSE=1

include /usr/share/dpatch/dpatch.make

# These are used for cross-compiling and for saving the configure script
# from having to guess our platform (since we know it already)
DEB_HOST_GNU_TYPE   ?= $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE)
DEB_BUILD_GNU_TYPE  ?= $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE)

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

confopts = --disable-subversion \
	--disable-xmltoman

config.status: patch configure-stamp
configure-stamp:
	dh_testdir
	[ ! -f ifplugd.spec ] || mv -f ifplugd.spec ifplugd.spec.ups
ifneq "$(wildcard /usr/share/misc/config.sub)" ""
	cp -f /usr/share/misc/config.sub config.sub
endif
ifneq "$(wildcard /usr/share/misc/config.guess)" ""
	cp -f /usr/share/misc/config.guess config.guess
endif
	[ ! -f doc/README.html ] || mv -f doc/README.html doc/README.html.ups
	[ ! -f doc/README ] || mv -f doc/README doc/README.ups
	./configure --host=$(DEB_HOST_GNU_TYPE) --build=$(DEB_BUILD_GNU_TYPE) --prefix=/usr --mandir=\$${prefix}/share/man --sysconfdir=/etc CFLAGS="$(CFLAGS)" LDFLAGS="-Wl,-z,defs" $(confopts)
	touch $@

build: build-stamp
build-stamp: patch-stamp config.status
	dh_testdir
	$(MAKE)
	# replace arbitrary paths with paths that make sense: (sick...)
	( cd doc; \
          sed "s%file://localhost/.*doc/README%file://localhost/usr/share/doc/README%" \
		< README > README.tmp; \
          mv README.tmp README \
        )
	touch $@

clean: clean-patched unpatch
clean-patched:
	dh_testdir
	dh_testroot
	rm -f build-stamp configure-stamp
	[ ! -f Makefile ] || $(MAKE) distclean
	[ ! -f doc/README.ups ] || mv -f doc/README.ups doc/README
	[ ! -f doc/README.html.ups ] || mv -f doc/README.html.ups doc/README.html
	rm -f config.guess config.sub
	[ ! -f ifplugd.spec.ups ] || mv -f ifplugd.spec.ups ifplugd.spec
	debconf-updatepo
	dh_clean

install: build
	dh_testdir
	dh_testroot
	dh_clean -k
	dh_installdirs
	$(MAKE) install DESTDIR=$(CURDIR)/debian/ifplugd
	# now handled by debconf:
	rm -f $(CURDIR)/debian/ifplugd/etc/ifplugd/ifplugd.conf
	install -m 755 debian/ifplugd.udev.agent $(CURDIR)/debian/ifplugd/lib/udev/ifplugd.agent
	install -m 644 debian/ifplugd.udev.rules $(CURDIR)/debian/ifplugd/etc/udev/ifplugd.rules
	mkdir -p $(CURDIR)/debian/ifplugd/etc/ifplugd/action.d/
	install -m 755 debian/ifplugd.action $(CURDIR)/debian/ifplugd/etc/ifplugd/
	install -m 755 debian/ifupdown.action $(CURDIR)/debian/ifplugd/etc/ifplugd/action.d/ifupdown
	install -m 755 debian/apm/ifplugd $(CURDIR)/debian/ifplugd/etc/apm/scripts.d/
	install -m 755 debian/ifstatus $(CURDIR)/debian/ifplugd/usr/sbin/

binary-indep: build install

binary-arch: build install
	dh_testdir
	dh_testroot
	dh_installchangelogs 
	dh_installdocs
	dh_installdebconf
	dh_installinit
	dh_installman
	dh_link
	dh_strip
	dh_compress
	dh_fixperms
	dh_installdeb
	dh_shlibdeps
	dh_gencontrol
	dh_md5sums
	dh_builddeb

binary: binary-indep binary-arch
.PHONY: build clean binary-indep binary-arch binary install patch unpatch