File: rules

package info (click to toggle)
semweb 1.05%2Bdfsg-4
  • links: PTS, VCS
  • area: main
  • in suites: squeeze
  • size: 4,000 kB
  • ctags: 2,832
  • sloc: cs: 14,483; makefile: 176; perl: 20; sh: 11; ansic: 7
file content (89 lines) | stat: -rwxr-xr-x 2,313 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
#!/usr/bin/make -f
export DH_VERBOSE=1

DEB_VERSION = $(shell dpkg-parsechangelog | grep ^Vers | cut -d\  -f2)
VERSION = $(shell echo $(DEB_VERSION) | sed 's,-.*,,' | sed 's,+dfsg.*,,')
DEB_CLI_ABI_VERSION = 1.0
DEB_CLI_API_VERSION = 1.0.5
LIBS =  bin_generics/SemWeb.dll \
	bin_generics/SemWeb.PostgreSQLStore.dll \
	bin_generics/SemWeb.MySQLStore.dll \
	bin_generics/SemWeb.SqliteStore.dll \
	bin_generics/SemWeb.SQLServerStore.dll

include /usr/share/cli-common/cli.make
include /usr/share/quilt/quilt.make

override_dh_auto_build:
	# unpack signing key
	cd debian && uudecode < semweb.snk.uu

	# compile
	dh_auto_build -- PROFILE=DOTNET2 $(LIBS)

	# sign libs
	for LIB in $(LIBS); do \
		sn -R $$LIB debian/semweb.snk; \
	done

override_dh_auto_install:
	# pkg-config
	mkdir -p $(CURDIR)/debian/tmp/usr/lib/pkgconfig
	cp debian/semweb.pc $(CURDIR)/debian/tmp/usr/lib/pkgconfig/
	mv $(CURDIR)/debian/tmp/usr/lib/pkgconfig/semweb.pc \
	   $(CURDIR)/debian/tmp/usr/lib/pkgconfig/semweb-$(DEB_CLI_ABI_VERSION).pc
	perl -pe 's/#VERSION#/$(VERSION)/' -i \
	  $(CURDIR)/debian/tmp/usr/lib/pkgconfig/semweb-$(DEB_CLI_ABI_VERSION).pc
	perl -pe 's/#DEB_CLI_ABI_VERSION#/$(DEB_CLI_ABI_VERSION)/' -i \
	  $(CURDIR)/debian/tmp/usr/lib/pkgconfig/semweb-$(DEB_CLI_ABI_VERSION).pc
	dh_auto_install

override_dh_makeclilibs:
	dh_makeclilibs -i -m $(DEB_CLI_API_VERSION)

build: build-stamp
build-stamp: $(QUILT_STAMPFN)
	dh build

	# build API docs
	#for LIB in $(LIBS); do \
	#	mdoc update -i $$LIB -o $(CURDIR)/bin_generics/monodocer; \
	#done
	mdoc update -o $(CURDIR)/bin_generics/monodocer \
	  bin_generics/SemWeb.dll
	mdoc assemble -o $(CURDIR)/bin_generics/SemWeb \
	  -f ecma $(CURDIR)/bin_generics/monodocer

	touch $@

install: install-stamp
install-stamp: build-stamp
	dh install
	touch $@

binary: binary-indep
binary-indep: install
	dh $@

clean: unpatch
	# clean up our signing key
	rm -f debian/semweb.snk
	# clean up our API docs
	rm -f bin_generics/SemWeb.tree \
	      bin_generics/SemWeb.zip
	rm -rf bin_generics/monodocer
	
	# workaround for broken "make clean"
	[ -d bin_generics/ ] || mkdir bin_generics/
	for FILE in $(LIBS) \
	  bin_generics/SemWeb.Sparql.dll \
	  bin_generics/rdfstorage.exe \
	  bin_generics/rdfquery.exe \
	  bin_generics/euler.exe; do \
		touch $$FILE; \
	done

	dh $@

%:
	dh $@