X-Git-Url: http://git.indexdata.com/?p=yaz-moved-to-github.git;a=blobdiff_plain;f=debian%2Frules;h=d40d8a35060aed59bf4ef9d2930e07b6bf9416be;hp=d4ee863f9da0ca2ff85dcd5bf7267c9d90db8fc7;hb=c39a893dfdae5f792139177132e7e7a70e010aa7;hpb=fd4adcc80d442f84c6a1894e890b1b6ccd02615e diff --git a/debian/rules b/debian/rules index d4ee863..d40d8a3 100755 --- a/debian/rules +++ b/debian/rules @@ -1,15 +1,17 @@ #!/usr/bin/make -f -# Sample debian/rules that uses debhelper. -# GPL copyright 1997 to 1999 by Joey Hess. +# +# Script for building YAZ from source to .deb-packages. +# +# Created by Morten Hendriksen based on sample +# debhelper script from Joey Hess. GPL copyright 1997 to 1999 by Joey Hess. # Uncomment this to turn on verbose mode. #export DH_VERBOSE=1 # This is the debhelper compatability version to use. -export DH_COMPAT=1 +export DH_COMPAT=2 -export YAZ_WITH_SSL=1 -CONFIG_FLAGS=--enable-static --enable-shared --enable-tcpd --prefix=/usr +CONFIG_FLAGS=--with-xml2=/usr --enable-static --enable-shared --enable-tcpd --prefix=/usr --with-openssl # Enable parallel builds if CONCURRENCY_LEVEL is set ifdef CONCURRENCY_LEVEL @@ -18,43 +20,21 @@ else MCFLAGS= endif -ifeq ($(YAZ_WITH_SSL),1) -BUILD_SSL=1 -SSL_FLAGS=--with-openssl -DEVEL_NAME=yaz-devel-ssl -RUNTIME_NAME=yaz-runtime-ssl -else -SSL_FLAGS= -DEVEL_NAME=yaz-devel -RUNTIME_NAME=yaz-runtime -endif +YAZSRCDIR?=$(shell pwd) -ifdef DEB_YAZ_USE_CVS -YAZSRCDIR=$(shell pwd) -YAZ_VERSION=$(shell date -r$(YAZSRCDIR)/CVS +"CVS%Y%m%d") -else -YAZSRCDIR=$(shell pwd) -YAZ_VERSION=1.8.2 -endif +# Local library path for linking with right dependencies +LOCAL_LINK=-ldebian/libyaz/usr/lib -configure: stamp-configure -stamp-configure: -ifeq ($(BUILD_SSL),1) - cat debian/control.templ | sed -e "s/@YAZ_RUNTIME@/yaz-runtime-ssl/g; s/@YAZ_DEVEL@/yaz-devel-ssl/g; s/@YAZ_VERSION@/$(YAZ_VERSION)/g" > debian/control -else - cat debian/control.templ | sed -e "s/@YAZ_RUNTIME@/yaz-runtime/g; s/@YAZ_DEVEL@/yaz-devel/g; s/@YAZ_VERSION@/$(YAZ_VERSION)/g" > debian/control -endif - touch stamp-configure +$(YAZSRCDIR)/configure: $(YAZSRCDIR)/configure.in + cd $(YAZSRCDIR); sh buildconf.sh + +stamp-configure: $(YAZSRCDIR)/configure dh_testdir -rm -rf build mkdir build - cd build; $(YAZSRCDIR)/configure $(CONFIG_FLAGS) $(SSL_FLAGS) - -ifdef DEB_YAZ_USE_CVS - @echo "Now configured for using YAZ-CVS checkout with datestamp $(YAZ_VERSION)" -endif - + cd build; $(YAZSRCDIR)/configure $(CONFIG_FLAGS) + touch stamp-configure build: stamp-build stamp-build: stamp-configure @@ -66,19 +46,14 @@ stamp-build: stamp-configure touch stamp-build clean: -ifeq ($(BUILD_SSL),1) - cat debian/control.templ | sed -e "s/@YAZ_RUNTIME@/yaz-runtime-ssl/g; s/@YAZ_DEVEL@/yaz-devel-ssl/g; s/@YAZ_VERSION@/$(YAZ_VERSION)/g" > debian/control -else - cat debian/control.templ | sed -e "s/@YAZ_RUNTIME@/yaz-runtime/g; s/@YAZ_DEVEL@/yaz-devel/g; s/@YAZ_VERSION@/$(YAZ_VERSION)/g" > debian/control -endif dh_testdir #dh_testroot -rm -f stamp-* -rm -rf build dh_clean - -rm -rf debian/yaz-runtime debian/yaz-runtime-ssl debian/yaz-devel \ - debian/with-ssl debian/*.debhelper debian/substvars debian/shlibs.yaz-* + -rm -rf debian/libyaz debian/libyaz-dev \ + debian/*.debhelper debian/substvars debian/shlibs.yaz-* install: stamp-install stamp-install: stamp-build @@ -95,58 +70,80 @@ stamp-install: stamp-build # Build architecture-independent files here. binary-indep: build install -# We have nothing to do by default. + dh_testdir + dh_testroot + dh_installdocs -p yaz-doc doc/*.html doc/*.pdf doc/*.png + dh_installchangelogs -p yaz-doc + dh_link -p yaz-doc + dh_strip -p yaz-doc + dh_compress -p yaz-doc + dh_fixperms -p yaz-doc + dh_gencontrol -p yaz-doc + dh_md5sums -p yaz-doc + + dh_builddeb -p yaz-doc # Build architecture-dependent files here. binary-arch: build install dh_testdir dh_testroot - dh_movefiles -p $(DEVEL_NAME) usr/share/aclocal usr/lib/*.a usr/include usr/bin - dh_movefiles -p $(RUNTIME_NAME) usr/lib usr/share/yaz - dh_installexamples -p $(DEVEL_NAME) + dh_movefiles -p libyaz-dev usr/share/aclocal usr/lib/*.a usr/lib/*.la usr/lib/*.so usr/include usr/bin/yaz-config usr/bin/yaz-comp usr/share/yaz + dh_movefiles -p yaz usr/bin + dh_movefiles -p libyaz usr/lib + dh_installexamples -p libyaz-dev + + cp LICENSE debian/copyright + cp CHANGELOG changelog + dh_installdocs --all README TODO changelog debian/copyright - dh_installdocs -p yaz-doc doc/ - dh_installdocs --all README TODO LICENSE CHANGELOG dh_installchangelogs dh_link dh_strip dh_compress -a dh_fixperms -a -ifeq ($(BUILD_SSL),1) - dh_installdeb -a - #dh_makeshlibs -p $(RUNTIME_NAME) -V'libyaz 1 yaz-runtime-ssl' -V'libyazthread 1 yaz-runtime-ssl' - dh_shlibdeps -p $(RUNTIME_NAME) -- debian/$(RUNTIME_NAME)/usr/lib/*.so - dh_shlibdeps -p $(DEVEL_NAME) -- debian/$(DEVEL_NAME)/usr/bin/* - echo "libyaz 1 $(RUNTIME_NAME)" > debian/$(RUNTIME_NAME)/DEBIAN/shlibs - echo "libyazthread 1 $(RUNTIME_NAME)" >> debian/$(RUNTIME_NAME)/DEBIAN/shlibs - echo "libyazmalloc 1 $(RUNTIME_NAME)" >> debian/$(RUNTIME_NAME)/DEBIAN/shlibs - chmod 644 debian/$(RUNTIME_NAME)/DEBIAN/shlibs - -# dh_shlibdeps -a -- debian/yaz-runtime-ssl/usr/lib/*.so debian/yaz-runtime-ssl/usr/bin/* - dh_gencontrol -p $(DEVEL_NAME) -u-DDepends="$(RUNTIME_NAME)" - dh_gencontrol -p $(RUNTIME_NAME) -u-DConflicts=yaz-runtime - dh_gencontrol -a + dh_installdeb -p libyaz + dh_installdeb -p libyaz-dev + dh_installdeb -p yaz + + dh_installman -p libyaz-dev doc/yaz-config.8 + dh_undocumented -p libyaz-dev yaz-comp.1 + dh_installman -p libyaz doc/yaz.7 + dh_installman -p yaz doc/yaz-client.1 doc/yaz-ztest.8 doc/zoomsh.1 + dh_installman -p yaz doc/yaz-client-ssl.1 doc/yaz-ztest-ssl.8 + + echo "libyaz 2 libyaz (>= 2.0.2)" > debian/libyaz/DEBIAN/shlibs + echo "libyazthread 2 libyaz (>= 2.0.2)" >> debian/libyaz/DEBIAN/shlibs + echo "libyazmalloc 2 libyaz (>= 2.0.2)" >> debian/libyaz/DEBIAN/shlibs + echo "libyazssl 2 libyaz (>= 2.0.2)" >> debian/libyaz/DEBIAN/shlibs + chmod 644 debian/libyaz/DEBIAN/shlibs + dh_shlibdeps -p libyaz $(LOCAL_LINK) + cat debian/postinst >> debian/libyaz/DEBIAN/postinst + + dh_gencontrol -p libyaz + dh_md5sums -p libyaz + + dh_gencontrol -p libyaz-dev + dh_md5sums -p libyaz-dev + + dh_gencontrol -p yaz + dh_md5sums -p yaz -else - dh_installdeb -a - - #dh_makeshlibs -p $(RUNTIME_NAME) -V'libyaz 1 yaz-runtime' -V'libyazthread 1 yaz-runtime' - dh_makeshlibs -p $(RUNTIME_NAME) - dh_shlibdeps -a - - dh_gencontrol -a - dh_gencontrol -p $(RUNTIME_NAME) -u-DConflicts=yaz-runtime-ssl -endif - dh_md5sums -a # Go kill those CVS-dirs before build -find debian/tmp -type d -name CVS | xargs rm -rf # For some reason it is necessary to remove empty-dirs in yaz-doc -rm -rf debian/tmp/usr/include debian/tmp/usr/share/aclocal debian/tmp/usr/lib debian/tmp/usr/bin \ debian/tmp/usr/share/yaz - dh_builddeb + dh_builddeb -p libyaz + dh_builddeb -p libyaz-dev + dh_builddeb -p yaz binary: binary-indep binary-arch -.PHONY: build clean binary-indep binary-arch binary install install-stamp +.PHONY: build clean binary-indep binary-arch binary install install-stamp configure + +yazrelease: + # Conveniency target for building YAZ + dh_testdir + dpkg-buildpackage $(EXTRA_OPTS) -rfakeroot