File: rules

package info (click to toggle)
libxmlezout 1.06-2
  • links: PTS
  • area: main
  • in suites: squeeze
  • size: 208 kB
  • ctags: 14
  • sloc: ada: 789; makefile: 87
file content (108 lines) | stat: -rwxr-xr-x 3,359 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
#!/usr/bin/make -f
# Debian build script for XML EZ OUT - Copyright (c) 2009 Xavier Grave

include /usr/share/quilt/quilt.make

ADA_SOURCES=$(wildcard mckae*.ad[sb])

aliversion := $(shell sed -n -r 's/^Package: libxmlezout(.*)-dev$$/\1/p' debian/control)
soversion := $(shell sed -n -r 's/^Package: libxmlezout([^-]+)$$/\1/p' debian/control)
soname := libxmlezout.so.$(soversion)
regexp := ^Version: ([^.]+)\.([^.]+)-(.*)
major := $(shell dpkg-parsechangelog | grep "^Version: " |  sed -r 's/$(regexp)/\1/')
minor := $(shell dpkg-parsechangelog | grep "^Version: " |  sed -r 's/$(regexp)/\2/')
upload := $(shell dpkg-parsechangelog | grep "^Version: " |  sed -r 's/$(regexp)/\3/')
mtnversion := xmlezout-$(major).$(minor)
mtnbase := base_debian.db
branch := com.mckae.xml_ez_out
orig_dir := libxmlezout-$(major).$(minor).orig
orig_tgz := libxmlezout_$(major).$(minor).orig.tar.gz

CPUS := $(shell getconf _NPROCESSORS_ONLN)

gen-orig-source:
	if [ ! -e ../$(mtnbase) ]; then \
                mtn -d../$(mtnbase) db init; \
        fi; \
	mtn -d../$(mtnbase) pull www.ada-france.org '$(branch)'; \
	cd .. && \
        mtn -d$(mtnbase) co -rt:$(mtnversion) -b$(branch) $(orig_dir) && \
        rm -r $(orig_dir)/_MTN && \
        tar czf $(orig_tgz) $(orig_dir) && \
        rm -r $(orig_dir)

build: patch build-stamp
build-stamp: static-lib shared-lib
	touch $@

static-lib:libxmlezout.a

shared-lib:$(soname)

clean:pre-wathever-checks
	rm -f build-stamp
	rm -f libxmlezout.a $(soname) libxmlezout.so
	rm -Rf debian/obj-shared debian/obj-static
	dh_clean -a -i
	$(MAKE) -f debian/rules unpatch

pre-wathever-checks:
	dh_testdir
	dh_testroot

libxmlezout$(aliversion)-dev: build-stamp pre-wathever-checks
	dh_installdirs -p$@ \
		/usr/lib \
		/usr/share/ada/adainclude/xmlezout \
		/usr/lib/ada/adalib/xmlezout
	dh_install -p$@ libxmlezout.a /usr/lib/ada/adalib/xmlezout
	dh_install -p$@ debian/obj-shared/*.ali /usr/lib/ada/adalib/xmlezout
	dh_install -p$@ $(ADA_SOURCES) /usr/share/ada/adainclude/xmlezout
	dh_install -p$@ debian/xmlezout.gpr /usr/share/ada/adainclude/
	dh_link -p$@ usr/lib/libxmlezout.so.$(soversion) usr/lib/libxmlezout.so
	dh_strip -p$@ -X.a

libxmlezout$(soversion): build-stamp pre-wathever-checks
	dh_installdirs -p$@ /usr/lib
	dh_install -p$@ libxmlezout.so.$(soversion) /usr/lib
	dh_installman -p$@ debian/xml_ez_out.7
	dh_strip -p$@ --dbg-package=libxmlezout-dbg

binary:binary-arch binary-indep

binary-arch: libxmlezout$(soversion) libxmlezout$(aliversion)-dev
	dh_installchangelogs -a
	dh_installdocs -a
	dh_compress -a
	dh_fixperms -a
	dh_makeshlibs -a
	dh_installdeb -a
	dh_shlibdeps -a -Llibxmlezout$(soversion) -ldebian/libxmlezout$(soversion)/usr/lib
	dh_gencontrol -a
	dh_md5sums -a
	dh_builddeb -a

binary-indep:

patch:
	-quilt push -a

libxmlezout.a:$(ADA_SOURCES)
	gnatmake -p -j$(CPUS) -Pdebian/build_xmlezout.gpr \
	-XLIBRARY_KIND=static -XOBJ_DIR=obj-static

libxmlezout.so.$(soversion):$(ADA_SOURCES)
	gnatmake -p -j$(CPUS) -Pdebian/build_xmlezout.gpr \
	-XLIBRARY_KIND=dynamic -XSONAME=$(soname) -XOBJ_DIR=obj-shared

show_rules_env:
	@echo ADA_SOURCES=$(ADA_SOURCES)
	@echo aliversion=$(aliversion)
	@echo soversion=$(soversion)
	@echo soname=$(soname)
	@echo major=$(major)
	@echo minor=$(minor)
	@echo upload=$(upload)
	@echo mtncersion=$(mtnversion)
	@echo orig_dir=$(orig_dir)
	@echo orig_tgz=$(orig_tgz)