3 # Script for building YAZ from source to .deb-packages.
5 # Created by Morten Hendriksen <mgh@dbc.dk> based on sample
6 # debhelper script from Joey Hess. GPL copyright 1997 to 1999 by Joey Hess.
8 # Uncomment this to turn on verbose mode.
11 # This is the debhelper compatability version to use.
15 CONFIG_FLAGS=--with-xml2=/usr --enable-static --enable-shared --enable-tcpd --prefix=/usr
17 # Enable parallel builds if CONCURRENCY_LEVEL is set
18 ifdef CONCURRENCY_LEVEL
19 MCFLAGS=-j$(CONCURRENCY_LEVEL)
24 ifeq ($(YAZ_WITH_SSL),1)
26 SSL_FLAGS=--with-openssl
31 YAZSRCDIR?=$(shell pwd)
33 # Local library path for linking with right dependencies
34 LOCAL_LINK=-ldebian/yaz-runtime/usr/lib:debian/yaz-ssl/usr/lib
36 $(YAZSRCDIR)/configure: $(YAZSRCDIR)/configure.in
37 cd $(YAZSRCDIR); sh buildconf.sh
39 stamp-configure: $(YAZSRCDIR)/configure
44 cd build; $(YAZSRCDIR)/configure $(CONFIG_FLAGS) $(SSL_FLAGS)
48 stamp-build: stamp-configure
51 # Add here commands to compile the package.
52 $(MAKE) -C build $(MCFLAGS)
63 -rm -rf debian/yaz-runtime debian/yaz-ssl debian/yaz-devel \
64 debian/with-ssl debian/*.debhelper debian/substvars debian/shlibs.yaz-*
66 install: stamp-install
67 stamp-install: stamp-build
73 # Add here commands to install the package into debian/tmp.
74 -mkdirhier debian/tmp/usr
75 $(MAKE) -C build install prefix=`pwd`/debian/tmp/usr
79 # Build architecture-independent files here.
80 binary-indep: build install
83 dh_installdocs -p yaz-doc doc/*.html doc/*.pdf doc/*.png
84 dh_installchangelogs -p yaz-doc
87 dh_compress -p yaz-doc
88 dh_fixperms -p yaz-doc
89 dh_gencontrol -p yaz-doc
92 dh_builddeb -p yaz-doc
94 # Build architecture-dependent files here.
95 binary-arch: build install
98 ifeq ($(YAZ_WITH_SSL),1)
99 dh_movefiles -p yaz-ssl usr/bin/*ssl usr/lib/libyazssl*
101 dh_movefiles -p yaz-devel usr/share/aclocal usr/lib/*.a usr/lib/*.la usr/lib/*.so usr/include usr/bin/yaz-config usr/bin/yaz-comp
102 dh_movefiles -p yaz-runtime usr/lib usr/share/yaz usr/bin
103 dh_installexamples -p yaz-devel
105 cp LICENSE debian/copyright
106 cp CHANGELOG changelog
107 dh_installdocs --all README TODO changelog debian/copyright
115 dh_installdeb -p yaz-runtime
116 dh_installdeb -p yaz-devel
117 dh_installman -p yaz-devel doc/yaz-config.1
118 dh_undocumented -p yaz-devel yaz-comp.1
119 dh_installman -p yaz-runtime doc/yaz-client.1 doc/yaz-ztest.8 doc/yaz.7 doc/zoomsh.1
120 echo "libyaz 2 yaz-runtime (>= 1.9.3)" > debian/yaz-runtime/DEBIAN/shlibs
121 echo "libyazthread 2 yaz-runtime (>= 1.9.3)" >> debian/yaz-runtime/DEBIAN/shlibs
122 echo "libyazmalloc 2 yaz-runtime (>= 1.9.3)" >> debian/yaz-runtime/DEBIAN/shlibs
123 chmod 644 debian/yaz-runtime/DEBIAN/shlibs
124 dh_shlibdeps -p yaz-runtime $(LOCAL_LINK)
125 ifeq ($(YAZ_WITH_SSL),1)
126 dh_installdeb -p yaz-ssl
127 dh_installman -p yaz-ssl doc/yaz-client-ssl.1 doc/yaz-ztest-ssl.8
128 echo "libyazssl 2 yaz-ssl (>= 1.9.3)" >> debian/yaz-ssl/DEBIAN/shlibs
129 chmod 644 debian/yaz-ssl/DEBIAN/shlibs
130 dh_shlibdeps -p yaz-ssl $(LOCAL_LINK)
131 cat debian/postinst >> debian/yaz-ssl/DEBIAN/postinst
133 cat debian/postinst >> debian/yaz-runtime/DEBIAN/postinst
135 dh_gencontrol -p yaz-runtime
136 dh_md5sums -p yaz-runtime
138 dh_gencontrol -p yaz-devel
139 dh_md5sums -p yaz-devel
141 ifeq ($(YAZ_WITH_SSL),1)
142 dh_gencontrol -p yaz-ssl
143 dh_md5sums -p yaz-ssl
145 # Go kill those CVS-dirs before build
146 -find debian/tmp -type d -name CVS | xargs rm -rf
147 # For some reason it is necessary to remove empty-dirs in yaz-doc
148 -rm -rf debian/tmp/usr/include debian/tmp/usr/share/aclocal debian/tmp/usr/lib debian/tmp/usr/bin \
149 debian/tmp/usr/share/yaz
151 dh_builddeb -p yaz-runtime
152 dh_builddeb -p yaz-devel
153 ifeq ($(YAZ_WITH_SSL),1)
154 dh_builddeb -p yaz-ssl
158 binary: binary-indep binary-arch
159 .PHONY: build clean binary-indep binary-arch binary install install-stamp configure
162 # Conveniency target for building both SSL and non-ssl versions
164 # Non-ssl version and source
165 dpkg-buildpackage $(EXTRA_OPTS) -rfakeroot
167 -YAZ_WITH_SSL=1 dpkg-buildpackage $(EXTRA_OPTS) -rfakeroot -B