New Debian Policy
authorAdam Dickmeiss <adam@indexdata.dk>
Mon, 9 Feb 2004 12:38:57 +0000 (12:38 +0000)
committerAdam Dickmeiss <adam@indexdata.dk>
Mon, 9 Feb 2004 12:38:57 +0000 (12:38 +0000)
Makefile.am
debian/changelog
debian/compat [new file with mode: 0644]
debian/control
debian/libyaz-dev.install [new file with mode: 0644]
debian/libyaz.install [new file with mode: 0644]
debian/rules
debian/yaz-doc.install [new file with mode: 0644]
debian/yaz.install [new file with mode: 0644]

index b29227d..f54ec43 100644 (file)
@@ -1,6 +1,6 @@
 ## Copyright (C) 1994-2003, Index Data
 ## All rights reserved.
 ## Copyright (C) 1994-2003, Index Data
 ## All rights reserved.
-## $Id: Makefile.am,v 1.23 2003-10-27 12:21:21 adam Exp $
+## $Id: Makefile.am,v 1.24 2004-02-09 12:38:57 adam Exp $
 
 AUTOMAKE_OPTIONS = foreign 
 
 
 AUTOMAKE_OPTIONS = foreign 
 
@@ -22,6 +22,8 @@ dist-hook:
        cp $(srcdir)/debian/changelog $(distdir)/debian
        cp $(srcdir)/debian/rules $(distdir)/debian
        cp $(srcdir)/debian/postinst $(distdir)/debian
        cp $(srcdir)/debian/changelog $(distdir)/debian
        cp $(srcdir)/debian/rules $(distdir)/debian
        cp $(srcdir)/debian/postinst $(distdir)/debian
+       cp $(srcdir)/debian/compat $(distdir)/debian
+       cp $(srcdir)/debian/*.install $(distdir)/debian
 
 rpm: $(PACKAGE)-$(VERSION).tar.gz
        cp $(PACKAGE)-$(VERSION).tar.gz /usr/src/redhat/SOURCES
 
 rpm: $(PACKAGE)-$(VERSION).tar.gz
        cp $(PACKAGE)-$(VERSION).tar.gz /usr/src/redhat/SOURCES
index 5ccde80..3c2d5d4 100644 (file)
@@ -1,3 +1,9 @@
+yaz (2.0.10-1) unstable; urgency=low
+
+  * Update Debian rules to newer policy.
+
+ -- Adam Dickmeiss <adam@indexdata.dk>  Mon,  9 Feb 2004 10:59:20 +0100
+
 yaz (2.0.9-6) unstable; urgency=low
 
   * Make the SRU server more picky WRT unknown params, etc.
 yaz (2.0.9-6) unstable; urgency=low
 
   * Make the SRU server more picky WRT unknown params, etc.
diff --git a/debian/compat b/debian/compat
new file mode 100644 (file)
index 0000000..b8626c4
--- /dev/null
@@ -0,0 +1 @@
+4
index 12154e9..22fb609 100644 (file)
@@ -1,24 +1,13 @@
 Source: yaz
 Source: yaz
-Standards-Version: 3.5.9.0
+Standards-Version: 3.6.1
 Maintainer: Adam Dickmeiss <adam@indexdata.dk>
 Priority: extra
 Maintainer: Adam Dickmeiss <adam@indexdata.dk>
 Priority: extra
-Build-Depends: docbook-utils, docbook, docbook-xml, docbook-dsssl, jade, jadetex,libxml2-dev, libssl-dev, libwrap0-dev
-
-Package: yaz
-Section: utils
-Architecture: any
-Depends: libyaz
-Conflicts: yaz-runtime, yaz-ssl
-Description: The YAZ Z39.50 toolkit (utilities)
- YAZ is a toolkit that allows you to develop software using the
- ANSI Z39.50/ISO23950 standard for information retrieval.
- .
- This packages includes utility programs.
+Build-Depends: docbook-utils, docbook, docbook-xml, docbook-dsssl, jade, jadetex,libxml2-dev, libssl-dev, libreadline4-dev, libwrap0-dev
 
 Package: libyaz
 Section: libs
 Architecture: any
 
 Package: libyaz
 Section: libs
 Architecture: any
-Depends: libssl0.9.6, ${shlibs:Depends}
+Depends: ${shlibs:Depends}
 Replaces: yaz-runtime, yaz-ssl
 Conflicts: yaz-runtime, yaz-ssl, idzebra (<= 1.3.4-2), php4-yaz (<= 4.1.2-5)
 Description: The YAZ Z39.50 toolkit (runtime files)
 Replaces: yaz-runtime, yaz-ssl
 Conflicts: yaz-runtime, yaz-ssl, idzebra (<= 1.3.4-2), php4-yaz (<= 4.1.2-5)
 Description: The YAZ Z39.50 toolkit (runtime files)
@@ -27,6 +16,17 @@ Description: The YAZ Z39.50 toolkit (runtime files)
  .
  This packages includes runtime files.
 
  .
  This packages includes runtime files.
 
+Package: yaz
+Section: utils
+Architecture: any
+Depends: ${shlibs:Depends}
+Conflicts: yaz-runtime, yaz-ssl
+Description: The YAZ Z39.50 toolkit (utilities)
+ YAZ is a toolkit that allows you to develop software using the
+ ANSI Z39.50/ISO23950 standard for information retrieval.
+ .
+ This packages includes utility programs.
+
 Package: yaz-doc
 Section: doc
 Architecture: all
 Package: yaz-doc
 Section: doc
 Architecture: all
@@ -37,7 +37,7 @@ Description: The YAZ Z39.50 toolkit (documentation)
  This packages includes documentation for YAZ in HTML and PDF.
 
 Package: libyaz-dev
  This packages includes documentation for YAZ in HTML and PDF.
 
 Package: libyaz-dev
-Depends: libyaz, libxml2-dev, libwrap0-dev
+Depends: libyaz (= ${Source-Version}), libxml2-dev, libwrap0-dev
 Replaces: yaz-devel
 Conflicts: yaz-devel
 Section: devel
 Replaces: yaz-devel
 Conflicts: yaz-devel
 Section: devel
diff --git a/debian/libyaz-dev.install b/debian/libyaz-dev.install
new file mode 100644 (file)
index 0000000..84e2186
--- /dev/null
@@ -0,0 +1,11 @@
+debian/tmp/usr/include/yaz/*
+debian/tmp/usr/lib/libyaz*.a
+debian/tmp/usr/lib/libyaz*.so
+debian/tmp/usr/lib/libyaz*.la
+debian/tmp/usr/bin/yaz-config
+debian/tmp/usr/bin/yaz-asncomp
+debian/tmp/usr/share/aclocal/yaz.m4
+debian/tmp/usr/share/yaz/z39.50
+debian/tmp/usr/share/yaz/ill
+debian/tmp/usr/share/man/man8/yaz-config.8
+debian/tmp/usr/share/man/man1/yaz-asncomp.1
diff --git a/debian/libyaz.install b/debian/libyaz.install
new file mode 100644 (file)
index 0000000..bb5700f
--- /dev/null
@@ -0,0 +1,3 @@
+debian/tmp/usr/lib/lib*.so.*
+debian/tmp/usr/share/yaz/etc/*
+debian/tmp/usr/share/man/man7/yaz.7
index c1c24d5..0b6631c 100755 (executable)
 #!/usr/bin/make -f
 #!/usr/bin/make -f
-# 
-# Script for building YAZ from source to .deb-packages.
-#
-# Created by Morten Hendriksen <mgh@dbc.dk> based on sample
-# debhelper script from Joey Hess. GPL copyright 1997 to 1999 by Joey Hess.
+# -*- makefile -*-
+# Sample debian/rules that uses debhelper.
+# GNU copyright 1997 to 1999 by Joey Hess.
 
 # Uncomment this to turn on verbose mode.
 #export DH_VERBOSE=1
 
 
 # Uncomment this to turn on verbose mode.
 #export DH_VERBOSE=1
 
-# This is the debhelper compatability version to use.
-export DH_COMPAT=2
 
 
-CONFIG_FLAGS=--with-xml2=/usr --enable-static --enable-shared --enable-tcpd --prefix=/usr --with-openssl
+# These are used for cross-compiling and for saving the configure script
+# from having to guess our platform (since we know it already)
+DEB_HOST_GNU_TYPE   ?= $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE)
+DEB_BUILD_GNU_TYPE  ?= $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE)
 
 
-# Enable parallel builds if CONCURRENCY_LEVEL is set
-ifdef CONCURRENCY_LEVEL
-MCFLAGS=-j$(CONCURRENCY_LEVEL)
-else
-MCFLAGS=
-endif
 
 
-YAZSRCDIR?=$(shell pwd)
+CFLAGS = -Wall -g
 
 
-# Local library path for linking with right dependencies
-LOCAL_LINK=-ldebian/libyaz/usr/lib
+ifneq (,$(findstring noopt,$(DEB_BUILD_OPTIONS)))
+       CFLAGS += -O0
+else
+       CFLAGS += -O2
+endif
+ifeq (,$(findstring nostrip,$(DEB_BUILD_OPTIONS)))
+       INSTALL_PROGRAM += -s
+endif
 
 
-$(YAZSRCDIR)/configure: $(YAZSRCDIR)/configure.in
-       cd $(YAZSRCDIR); sh buildconf.sh
+# shared library versions, option 1
+version=2.0.5
+major=2
+# option 2, assuming the library is created as src/.libs/libfoo.so.2.0.5 or so
+#version=`ls src/.libs/lib*.so.* | \
+# awk '{if (match($$0,/[0-9]+\.[0-9]+\.[0-9]+$$/)) print substr($$0,RSTART)}'`
+#major=`ls src/.libs/lib*.so.* | \
+# awk '{if (match($$0,/\.so\.[0-9]+$$/)) print substr($$0,RSTART+4)}'`
 
 
-stamp-configure: $(YAZSRCDIR)/configure
+config.status: configure
        dh_testdir
        dh_testdir
+       # Add here commands to configure the package.
+       CFLAGS="$(CFLAGS)" ./configure --host=$(DEB_HOST_GNU_TYPE) --build=$(DEB_BUILD_GNU_TYPE) --prefix=/usr --mandir=\$${prefix}/share/man --infodir=\$${prefix}/share/info --enable-shared --enable-static --enable-tcpd --with-openssl
 
 
-       -rm -rf build
-       mkdir build
-       cd build; $(YAZSRCDIR)/configure $(CONFIG_FLAGS)
-       touch stamp-configure
 
 
-build: stamp-build
-stamp-build: stamp-configure
+build: build-stamp
+build-stamp:  config.status
        dh_testdir
 
        # Add here commands to compile the package.
        dh_testdir
 
        # Add here commands to compile the package.
-       $(MAKE) -C build $(MCFLAGS)
+       $(MAKE)
 
 
-       touch stamp-build
+       touch build-stamp
 
 clean:
        dh_testdir
 
 clean:
        dh_testdir
-       #dh_testroot
-       -rm -f stamp-*
-       -rm -rf build
+       dh_testroot
+       rm -f build-stamp 
 
 
-       dh_clean
-       -rm -rf debian/libyaz debian/libyaz-dev \
-               debian/*.debhelper debian/substvars debian/shlibs.yaz-*
+       # Add here commands to clean up after the build process.
+       -$(MAKE) distclean
+ifneq "$(wildcard /usr/share/misc/config.sub)" ""
+       -cp -f /usr/share/misc/config.sub config.sub
+endif
+ifneq "$(wildcard /usr/share/misc/config.guess)" ""
+       -cp -f /usr/share/misc/config.guess config.guess
+endif
+
+       dh_clean 
 
 
-install: stamp-install
-stamp-install: stamp-build
+install: build
        dh_testdir
        dh_testroot
        dh_testdir
        dh_testroot
-       dh_clean -k -a
-       dh_installdirs -a
+       dh_clean -k 
+       dh_installdirs
 
 
-       # Add here commands to install the package into debian/tmp.
-       -mkdirhier debian/tmp/usr
-       $(MAKE) -C build install prefix=`pwd`/debian/tmp/usr
+       # Add here commands to install the package into debian/tmp
+       $(MAKE) install DESTDIR=$(CURDIR)/debian/tmp
 
 
-       touch stamp-install
 
 # Build architecture-independent files here.
 binary-indep: build install
 
 # Build architecture-independent files here.
 binary-indep: build install
-       dh_testdir
-       dh_testroot
-       dh_installdocs -p yaz-doc doc/*.html doc/*.pdf doc/*.png doc/*.css
-       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
+# We have nothing to do by default.
 
 # Build architecture-dependent files here.
 binary-arch: build install
        dh_testdir
        dh_testroot
 
 # Build architecture-dependent files here.
 binary-arch: build install
        dh_testdir
        dh_testroot
-       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-asncomp usr/share/yaz/ill usr/share/yaz/z39.50
-       dh_movefiles -p yaz usr/bin
-       dh_movefiles -p libyaz usr/lib usr/share/yaz/etc
-       dh_installexamples -p libyaz-dev
-
        cp LICENSE debian/copyright
        cp LICENSE debian/copyright
-       cp CHANGELOG changelog
-       dh_installdocs --all README TODO changelog debian/copyright
-
-       dh_installchangelogs
+       dh_installdocs -A README
+       dh_installchangelogs CHANGELOG
+       dh_installexamples
+       mv debian/tmp/usr/share/doc/yaz debian/tmp/usr/share/doc/yaz-doc
+       dh_install 
+#      dh_installmenu
+#      dh_installdebconf       
+#      dh_installlogrotate
+#      dh_installemacsen
+#      dh_installpam
+#      dh_installmime
+#      dh_installinit
+#      dh_installcron
+#      dh_installinfo
+       dh_installman
        dh_link
        dh_link
-
-       dh_installdeb -p libyaz
-       dh_installdeb -p libyaz-dev
-       dh_installdeb -p yaz
-
-       dh_installman -p libyaz-dev doc/yaz-config.8
-       dh_installman -p libyaz-dev doc/yaz-asncomp.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
-       dh_installman -p yaz doc/yaz-marcdump.1
-       dh_installman -p yaz doc/yaz-iconv.1
-
        dh_strip
        dh_strip
-       dh_compress -a
-       dh_fixperms -a
-
-       echo "libyaz 2 libyaz (>= 2.0.2)" > debian/libyaz/DEBIAN/shlibs
-       echo "libyazthread 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) 
-
-       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
-
-       # 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 -p libyaz
-       dh_builddeb -p libyaz-dev
-       dh_builddeb -p yaz
-
+       dh_compress
+       dh_fixperms
+#      dh_perl
+#      dh_python
+       dh_makeshlibs -V 'libyaz (>= 2.0.9)'
+       dh_installdeb
+       dh_shlibdeps  -l debian/libyaz/usr/lib
+       dh_gencontrol
+       dh_md5sums
+       dh_builddeb
 
 binary: binary-indep binary-arch
 
 binary: binary-indep binary-arch
-.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
+.PHONY: build clean binary-indep binary-arch binary install 
diff --git a/debian/yaz-doc.install b/debian/yaz-doc.install
new file mode 100644 (file)
index 0000000..011af89
--- /dev/null
@@ -0,0 +1 @@
+debian/tmp/usr/share/doc/yaz-doc
diff --git a/debian/yaz.install b/debian/yaz.install
new file mode 100644 (file)
index 0000000..77078ae
--- /dev/null
@@ -0,0 +1,14 @@
+debian/tmp/usr/bin/yaz-client
+debian/tmp/usr/bin/yaz-client-ssl
+debian/tmp/usr/bin/yaz-ztest
+debian/tmp/usr/bin/yaz-ztest-ssl
+debian/tmp/usr/bin/zoomsh
+debian/tmp/usr/bin/yaz-marcdump
+debian/tmp/usr/bin/yaz-iconv
+debian/tmp/usr/share/man/man1/yaz-client.1
+debian/tmp/usr/share/man/man1/yaz-client-ssl.1
+debian/tmp/usr/share/man/man8/yaz-ztest.8
+debian/tmp/usr/share/man/man8/yaz-ztest-ssl.8
+debian/tmp/usr/share/man/man1/zoomsh.1
+debian/tmp/usr/share/man/man1/yaz-marcdump.1
+debian/tmp/usr/share/man/man1/yaz-iconv.1