File: rules

package info (click to toggle)
beid 3.5.2.dfsg-10
  • links: PTS, VCS
  • area: main
  • in suites: squeeze
  • size: 147,240 kB
  • ctags: 34,507
  • sloc: cpp: 149,944; ansic: 41,577; java: 8,927; cs: 6,528; sh: 2,426; perl: 1,866; xml: 805; python: 463; makefile: 263; lex: 92
file content (133 lines) | stat: -rwxr-xr-x 6,008 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
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
123
124
125
126
127
128
129
130
131
132
133
#!/usr/bin/make -f
TOPDIR=$(shell pwd)

#export DH_VERBOSE=1
CFLAGS=-Wall -g
ifeq ($(findstring noopt,$(DEB_BUILD_OPTIONS)),)
	CFLAGS+=-O2
endif
CXXFLAGS=$(CFLAGS)

export JAVA_HOME=/usr/lib/jvm/default-java
export CFLAGS
export CXXFLAGS

#ifneq (,$(filter parallel=%,$(DEB_BUILD_OPTIONS)))
#	NUMJOBS = $(patsubst parallel=%,%,$(filter parallel=%,$(DEB_BUILD_OPTIONS)))
#else
NUMJOBS = 1
#endif

stampdir:
	mkdir stampdir

clean:
	dh_testdir
	dh_testroot
	# Clean out 2.6
	[ ! -f $(CURDIR)/_src/beid-2.6/Makefile ] || cd $(CURDIR)/_src/beid-2.6/ $(MAKE) distclean
	-rm -Rf stampdir
	-rm -Rf _src/beid-2.6/.sconf_temp
	-find _src/beid-2.6/ -name *.pyc -exec rm -f {} \;
	-find _src/beid-2.6/ -type d -name cache -exec rm -Rf {} \;
	-rm _src/beid-2.6/config.log
	# Clean out 3.5
	[ ! -f $(CURDIR)/_src/eidmw/Makefile ] || $(MAKE) -f $(CURDIR)/_src/eidmw/Makefile distclean
	find _src/eidmw/eidlibJava -name '*.class' -exec rm -f {} \;
	-rm _src/eidmw/bin/eidmw_*.qm
	[ ! -f $(CURDIR)/_src/eidmw/jar/beid35libJava.jar.orig ] || mv -f $(CURDIR)/_src/eidmw/jar/beid35libJava.jar.orig $(CURDIR)/_src/eidmw/jar/beid35libJava.jar
	-rm -Rf _src/eidmw/_DocsExternal/*
	dh_clean

HOSTNAME=$(shell hostname --fqdn)
build: build-arch build-indep
build-arch: stampdir/build-arch-stamp
stampdir/build-arch-stamp: stampdir
	dh_testdir
	[ -f $(CURDIR)/_src/eidmw/jar/beid35libJava.jar.orig ] || cp -a $(CURDIR)/_src/eidmw/jar/beid35libJava.jar $(CURDIR)/_src/eidmw/jar/beid35libJava.jar.orig
	# Build 2.6 version of middleware
	cd _src/beid-2.6 && scons --cache-disable prefix=/usr confdir=/etc/
	# Build 3.5 version of middleware
	# needed for libxerces with -p because be unhappy if exists.
	mkdir -p  _src/eidmw/eidlibJava/class
	cd _src/eidmw && chmod +x configure && ./configure --prefix=/usr CFLAGS="$(CFLAGS)" CXXFLAGS="$(CXXFLAGS)"
	cd _src/eidmw && $(MAKE) -j$(NUMJOBS)
	# Done. Hopefully.
	touch stampdir/build-arch-stamp

build-indep: stampdir/build-indep-stamp
stampdir/build-indep-stamp: stampdir
	dh_testdir
	mkdir -p _src/eidmw/_DocsExternal/C++_Api
	cd _src/eidmw/_DocsInternal/API && doxygen DoxySDK.cfg
	cd _src/eidmw/_DocsInternal/API && doxygen DoxySDK_java.cfg
	touch stampdir/build-indep-stamp

install: stampdir/install-stamp
stampdir/install-stamp: stampdir build
	dh_testdir
	dh_testroot
	dh_installdirs
	# Install 2.6. This needs to be done manually, since SCons' DESTDIR
	# support is non-existent.
	install -d debian/tmp/usr/lib debian/tmp/usr/bin debian/tmp/usr/include/beid/opensc debian/tmp/usr/share/locale debian/tmp/usr/share/beid/certs debian/tmp/usr/share/beid/crl debian/tmp/etc debian/tmp/usr/share/applications debian/tmp/usr/share/icons debian/tmp/usr/lib/pkcs11
	cp -a _src/beid-2.6/src/newpkcs11/src/pkcs11/libbeidpkcs11.so* _src/beid-2.6/src/beidcommlib/libbeidcomm.so* _src/beid-2.6/src/winscarp/libbeidpcsclite.so* _src/beid-2.6/src/eidlib/libbeid.so* _src/beid-2.6/src/eidlibjni/libbeidlibjni.so* _src/beid-2.6/src/beidcommon/libbeidcommon.so* _src/beid-2.6/src/newpkcs11/src/libopensc/libbeidlibopensc.so* debian/tmp/usr/lib
	cp -a _src/beid-2.6/src/newpkcs11/src/tools/beid-pkcs11-tool _src/beid-2.6/src/newpkcs11/src/tools/beid-tool _src/beid-2.6/src/Belpic\ PCSC\ Service/beidpcscd _src/beid-2.6/src/beidservicecrl/beidcrld debian/tmp/usr/bin
	cp -a _src/beid-2.6/src/newpkcs11/config.h _src/beid-2.6/src/eidlib/eidlib.h _src/beid-2.6/src/eidlib/eiddefines.h _src/beid-2.6/src/eidlib/eiderrors.h debian/tmp/usr/include/beid
	cp -a _src/beid-2.6/src/newpkcs11/etc/beidbase.conf debian/tmp/etc
	# The following are symlinks, which we do *not* want to see persisting.
	cp -pR _src/beid-2.6/src/newpkcs11/src/include/opensc/* debian/tmp/usr/include/beid/opensc
	cp -a _src/beid-2.6/src/newpkcs11/etc/Belgian_eID_PKCS11_java.cfg debian/tmp/usr/lib/pkcs11
	# Install 3.5
	cd _src/eidmw && $(MAKE) INSTALL_ROOT=$(CURDIR)/debian/tmp install
	# Why does this build system suck so much?
	cp -a _src/eidmw/misc/beid/beid-pkcs11-*.html debian/tmp/usr/share/beid/
	cp -a _src/eidmw/install/beid.conf.3.5 debian/tmp/etc/beid.conf
	cp -a _src/eidmw/install/beidgui35.desktop debian/tmp/usr/share/applications
	cp -a _src/eidmw/install/eid35.png debian/tmp/usr/share/icons
	mkdir -p debian/tmp/usr/share/doc/beid-docs
	cp -a _src/eidmw/_DocsExternal/C++_Api/html debian/tmp/usr/share/doc/beid-docs/C++
	cp -a _src/eidmw/_DocsExternal/Java_Api/html debian/tmp/usr/share/doc/beid-docs/Java
	cp -a _src/eidmw/bin/beidgui debian/tmp/usr/bin
	cp -a _src/eidmw/bin/eidmw_*.qm debian/tmp/usr/share/beid
	cp -a _src/eidmw/bin/beiddialogsQTsrv debian/tmp/usr/bin
	cp -a _src/eidmw/lib/lib* debian/tmp/usr/lib
	#Strip rpath from executables
	find debian/tmp/usr/bin -type f -perm /111 -print0 | xargs -0 chrpath -d
	dh_lintian
	dh_install --sourcedir=debian/tmp
	dh_installmenu
	dh_installman -p beid-tools _src/beid-2.6/src/newpkcs11/docs/beid-tool.1 _src/beid-2.6/src/newpkcs11/docs/beid-pkcs11-tool.1
	touch stampdir/install-stamp

binary: stampdir/binary-stamp
stampdir/binary-stamp: stampdir install
	dh_testdir -a
	dh_testroot -a
	dh_installman -a
	dh_installchangelogs -a
	dh_installinit -p beid-tools --name=beid
	dh_strip -p libbeidlibopensc2 --dbg-package=libbeidlibopensc2-dbg
	dh_strip -p libbeid2 --dbg-package=libbeid2-dbg
	# The upstream build system either already strips these, or does
	# not provide debugging symbols to begin with. Will investigate
	# later.
	#dh_strip -p libbeidlib3 --dbg-package=libbeidlib3-dbg
	dh_strip -a
	dh_link -a
	dh_installdocs -a
	dh_compress -a
	dh_fixperms -a
	dh_makeshlibs -V -p libbeidlibopensc2 -Pdebian/libbeidlibopensc2
	dh_makeshlibs -V -p libbeid2 -Pdebian/libbeid2
	dh_makeshlibs -V -p libbeidlib3 -Pdebian/libbeidlib3
	dh_installdeb -a
	dh_shlibdeps -ldebian/tmp/usr/lib -Llibeid2 -Llibbelpic2 -Llibbeidlib3
	dh_gencontrol -a
	dh_md5sums -a
	dh_builddeb -a
	touch stampdir/binary-stamp

binary-arch: stampdir/binary-stamp
binary-indep: stampdir/binary-stamp
.PHONY: belpic-build belpic-binary binary install belpic-install build binary-arch