File: rules

package info (click to toggle)
epm 4.2-11
  • links: PTS, VCS
  • area: main
  • in suites: bookworm, bullseye
  • size: 1,780 kB
  • sloc: ansic: 11,089; cpp: 1,596; makefile: 308
file content (96 lines) | stat: -rwxr-xr-x 2,540 bytes parent folder | download
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
#!/usr/bin/make -f

# Architecture.
include /usr/share/dpkg/architecture.mk

# Build and include setup?
ifeq ($(DEB_HOST_ARCH),amd64)
INCLUDE_SETUP=yes
else ifeq ($(DEB_HOST_ARCH),i386)
INCLUDE_SETUP=yes
else
INCLUDE_SETUP=no
endif
SETUP_LINK=g++ -fPIE -pie -Wl,-z,relro -Wl,-z,now -Os
SETUP_LIBS=libepm.a -Wl,-Bstatic -lfltk_images -lpng -lz -ljpeg -lfltk \
           -lXcursor -lXrender -lXext -lXfixes -Wl,-Bdynamic -lXft \
           -lfontconfig -lXinerama -lm -lX11 -ldl

# The FLTK static libs are built position-independent, so we need
# to enable the same for our setup tool.  It's easier to just enable
# it all around.
DEB_BUILD_MAINT_OPTIONS="hardening=+pie,+bindnow"

# Set build flags.  For wheezy+1, we will switch to using debhelper 9.
# For now, preserve compatibility with squeeze.
DPKG_EXPORT_BUILDFLAGS=1
-include /usr/share/dpkg/buildflags.mk

prefix=/usr

%:
	dh $@ --without autoreconf

override_dh_auto_configure:
	./configure --build=$(DEB_HOST_MULTIARCH) \
		--prefix=$(prefix) \
		--includedir=$(prefix)/include \
		--mandir=$(prefix)/share/man \
		--infodir=$(prefix)/share/info \
		--sysconfdir=/etc \
		--localstatedir=/var \
		--disable-option-checking \
		--disable-silent-rules \
		--libdir=$(prefix)/lib/$(DEB_HOST_MULTIARCH) \
		--disable-maintainer-mode \
		--disable-dependency-tracking \
		GZIP=/bin/gzip \

override_dh_auto_build:
	$(MAKE)
	mv doc/epm-book.html doc/epm-book.html.save
	cd doc && $(MAKE)

	# Rebuild setup and uninst to be as static as possible
	# XXX: on x86 and x86_64 only for now
ifeq ($(INCLUDE_SETUP),yes)
	$(SETUP_LINK) -o setup setup.o setup2.o gui-common.o $(SETUP_LIBS)
	$(SETUP_LINK) -o uninst uninst.o uninst2.o gui-common.o $(SETUP_LIBS)
endif

override_dh_auto_test:
	$(MAKE) test

override_dh_auto_clean:
	dh_auto_clean
	-cd doc && $(MAKE) clean
	[ ! -f Makefile ] || $(MAKE) distclean
	rm -f mkepmlist.o

	# Remove the EPM-built portable and native packages.
	rm -rf linux-2.6-*

	# Some minor cleanup issues
	-mv doc/epm-book.html.save doc/epm-book.html
	rm -f doc/Makefile epm.list
	rm -f macosx/setup.plist macosx/uninst.plist

	# Remove dir created when building
	rm -rf linux-4.9-x86_64

	dh_clean

override_dh_auto_install:
	dh_auto_install

	# Remove catX dirs.
	rm -rf debian/epm/usr/share/man/cat1
	rm -rf debian/epm/usr/share/man/cat5

	# Remove extra license file.
	rm -f debian/epm/usr/share/doc/epm/COPYING

	# Remove setup/uninst on unsupported arches.
ifneq ($(INCLUDE_SETUP),yes)
	rm -f debian/epm/usr/lib/epm/setup debian/epm/usr/lib/epm/uninst
endif