Package: wnpp Severity: wishlist Tags: patch
* Package name : libucommon2 Version : 2.0.5 Upstream Author : David Sugar <dy...@gnutelephony.org> * URL : http://www.gnutelephony.org/index.php/UCommon * License : LGPL-3 Programming Lang: C++ Description : libuconfig2: A lightweight C++ library DESCRIPTION =========== UCommon is meant as a very light-weight C++ library to facilitate using C++ design patterns even for very deeply embedded applications, such as for systems using uclibc along with posix threading support. For this reason, UCommon disables language features that consume memory or introduce runtime overhead, such as rtti and exception handling, and assumes one will mostly be linking applications with other pure C based libraries rather than using the overhead of the standard C++ library and other similar class frameworks. UCommon introduces some Objective-C based design patterns, such as reference counted objects, memory pools, smart pointers, and offers dynamic typing through very light use of inline templates for pure type translation that are then tied to concrete base classes to avoid template instantiation issues. C++ auto-variable automation is also used to enable referenced objects to be deleted and threading locks to be released that are acquired automatically when methods return rather than requiring one to explicitly code for these things. UCommon depends on and when necessary will introduce some portable C replacement functions, especially for sockets, such as adding getaddrinfo for platforms which do not have it, or when threadsafe versions of existing C library functions are needed. Basic socket support for connecting to named destinations and multicast addresses, and binding to interfaces with IPV4 and IPV6 addresses is directly supported. Support for high resolution timing and Posix realtime clocks are also used when available. While UCommon has been influenced by GNU Common C++, it introduces some new concepts for handling of thread locking and synchronization. UCommon also builds all higher level thread synchronization objects directly from conditionals. Hence, on platforms which for example do not have rwlocks, barriers, or semaphores, these are still found in UCommon. A common and consistent call methodology is used for all locks, whether mutex, rw, or semaphore, based on whether used for exclusive or "shared" locking. UCommon requires some knowledge of compiler switches and options to disable language features, the C++ runtime and stdlibs, and associated C++ headers. The current version supports compiling with GCC, which is commonly found on GNU/Linux, OS/X, BSD based systems, and many other platforms; and the Sun Workshop compiler, which is offered as an example how to adapt UCommon for additional compilers. UCommon may also be built with GCC cross compiling for mingw32 for Microsoft Windows targets using the Redhat w32 pthread library. The minimum platform support for UCommon is a modern and working posix pthread threading library. UCommon does not support other non-posix threading models such as Microsoft Windows threads or non-preemtive threading libraries like GNU pth, so that we could optimize development efforts around Posix pthread exclusively. I further use a subset of posix threads to assure wider portability by avoiding more specialized features like process shared synchronization objects, pthread rwlocks and pthread semaphores, as these are not implemented on all platforms that I have found. The first three releases of UCommon were introduced in 1999-2000 as a pure "C" library for embedded targets, and had not seen an update in 7 years. Hence I have had the package name in use for a very long time. Work on what became UCommon 0.4 was originally intended as a refactoring effort for GNU Common C++ to better support IPV6, and became something different as entirely new code was written in 2006. I originally hoped to release UCommon in March of 2007 as a new package under the GNU GPL V3, but the license was unavoidably delayed. I may use UCommon to offer guidelines and code for further improving GNU Common C++ releases, I may merge the two packages, or I may make GNU Common C++ an extension library for UCommon. This has not been decided yet. ATTACHED PATCH ============== Attached is a patch against the plain 2.0.5 source, which adds all the debian files required to create the following packages: (Upstream source is not modified at all) libucommon2_2.0.5-1_i386.deb libucommon2-dbg_2.0.5-1_i386.deb libucommon2-dev_2.0.5-1_i386.deb libucommon2-doc_2.0.5-1_all.deb I'd take care about the packaing, but I am not an offical debian maintainer, so I'm left with filing the bug and and providing the patch. The packages are lintian-warning free. (Except, of course, they cannot close a ITP report) PREBUILD FILES ============== I'll put all the files, including a full populated source-tress under http://blog.coldtobi.de/1_coldtobis_blog/archive/254_libucommmon_for_debian.html
diff -Naur ucommon-2.0.5/debian/changelog libucommon2-2.0.5/debian/changelog --- ucommon-2.0.5/debian/changelog 1970-01-01 00:00:00.000000000 +0000 +++ libucommon2-2.0.5/debian/changelog 2009-06-11 16:07:15.000000000 +0200 @@ -0,0 +1,6 @@ +libucommon2 (2.0.5-1) unstable; urgency=low + + * Packaged for debian + * I'm not an Debian package maintainer, so there is no IPT to close... + + -- Tobias Frost <t...@coldtobi.de> Thu, 11 Jun 2009 12:30:18 +0200 diff -Naur ucommon-2.0.5/debian/compat libucommon2-2.0.5/debian/compat --- ucommon-2.0.5/debian/compat 1970-01-01 00:00:00.000000000 +0000 +++ libucommon2-2.0.5/debian/compat 2009-06-11 12:30:20.000000000 +0200 @@ -0,0 +1 @@ +7 diff -Naur ucommon-2.0.5/debian/control libucommon2-2.0.5/debian/control --- ucommon-2.0.5/debian/control 1970-01-01 00:00:00.000000000 +0000 +++ libucommon2-2.0.5/debian/control 2009-06-11 21:14:50.000000000 +0200 @@ -0,0 +1,226 @@ +Source: libucommon2 +Priority: extra +Maintainer: Tobias Frost <t...@coldtobi.de> +Build-Depends: debhelper (>= 7), autotools-dev, help2man, doxygen +Standards-Version: 3.8.1 +Section: libs +Homepage: http://www.gnutelephony.org/index.php/UCommon + +Package: libucommon2-doc +Section: doc +Depends: ${misc:Depends} +Architecture: all +Description: Documentation for libucommon, a light-weight C++ library + UCommon is meant as a very light-weight C++ library to facilitate using C++ + design patterns even for very deeply embedded applications, such as for systems + using uclibc along with posix threading support. For this reason, UCommon + disables language features that consume memory or introduce runtime overhead, + such as rtti and exception handling, and assumes one will mostly be linking + applications with other pure C based libraries rather than using the overhead + of the standard C++ library and other similar class frameworks. + . + UCommon introduces some Objective-C based design patterns, such as reference + counted objects, memory pools, smart pointers, and offers dynamic typing + through very light use of inline templates for pure type translation that are + then tied to concrete base classes to avoid template instantiation issues. C++ + auto-variable automation is also used to enable referenced objects to be + deleted and threading locks to be released that are acquired automatically when + methods return rather than requiring one to explicitly code for these things. + . + UCommon depends on and when necessary will introduce some portable C + replacement functions, especially for sockets, such as adding getaddrinfo for + platforms which do not have it, or when threadsafe versions of existing C + library functions are needed. Basic socket support for connecting to named + destinations and multicast addresses, and binding to interfaces with IPV4 and + IPV6 addresses is directly supported. Support for high resolution timing and + Posix realtime clocks are also used when available. + . + While UCommon has been influenced by GNU Common C++, it introduces some new + concepts for handling of thread locking and synchronization. UCommon also + builds all higher level thread synchronization objects directly from + conditionals. Hence, on platforms which for example do not have rwlocks, + barriers, or semaphores, these are still found in UCommon. A common and + consistent call methodology is used for all locks, whether mutex, rw, or + semaphore, based on whether used for exclusive or "shared" locking. + . + UCommon requires some knowledge of compiler switches and options to disable + language features, the C++ runtime and stdlibs, and associated C++ headers. The + current version supports compiling with GCC, which is commonly found on + GNU/Linux, OS/X, BSD based systems, and many other platforms; and the Sun + Workshop compiler, which is offered as an example how to adapt UCommon for + additional compilers. UCommon may also be built with GCC cross compiling for + mingw32 for Microsoft Windows targets using the Redhat w32 pthread library. + . + The minimum platform support for UCommon is a modern and working posix + pthread threading library. UCommon does not support other non-posix threading + models such as Microsoft Windows threads or non-preemtive threading libraries + like GNU pth, so that the developers could optimize development efforts around + Posix pthread exclusively. It further uses a subset of posix threads to assure + wider portability by avoiding more specialized features like process shared + synchronization objects, pthread rwlocks and pthread semaphores, as these are + not implemented on all platforms. + +Package: libucommon2-dev +Section: libdevel +Architecture: any +Depends: libucommon2 (= ${binary:Version}) +Suggests: libucommon2-dbg +Description: Development files for the libucommon, a light-weight C++ library + UCommon is meant as a very light-weight C++ library to facilitate using C++ + design patterns even for very deeply embedded applications, such as for systems + using uclibc along with posix threading support. For this reason, UCommon + disables language features that consume memory or introduce runtime overhead, + such as rtti and exception handling, and assumes one will mostly be linking + applications with other pure C based libraries rather than using the overhead + of the standard C++ library and other similar class frameworks. + . + UCommon introduces some Objective-C based design patterns, such as reference + counted objects, memory pools, smart pointers, and offers dynamic typing + through very light use of inline templates for pure type translation that are + then tied to concrete base classes to avoid template instantiation issues. C++ + auto-variable automation is also used to enable referenced objects to be + deleted and threading locks to be released that are acquired automatically when + methods return rather than requiring one to explicitly code for these things. + . + UCommon depends on and when necessary will introduce some portable C + replacement functions, especially for sockets, such as adding getaddrinfo for + platforms which do not have it, or when threadsafe versions of existing C + library functions are needed. Basic socket support for connecting to named + destinations and multicast addresses, and binding to interfaces with IPV4 and + IPV6 addresses is directly supported. Support for high resolution timing and + Posix realtime clocks are also used when available. + . + While UCommon has been influenced by GNU Common C++, it introduces some new + concepts for handling of thread locking and synchronization. UCommon also + builds all higher level thread synchronization objects directly from + conditionals. Hence, on platforms which for example do not have rwlocks, + barriers, or semaphores, these are still found in UCommon. A common and + consistent call methodology is used for all locks, whether mutex, rw, or + semaphore, based on whether used for exclusive or "shared" locking. + . + UCommon requires some knowledge of compiler switches and options to disable + language features, the C++ runtime and stdlibs, and associated C++ headers. The + current version supports compiling with GCC, which is commonly found on + GNU/Linux, OS/X, BSD based systems, and many other platforms; and the Sun + Workshop compiler, which is offered as an example how to adapt UCommon for + additional compilers. UCommon may also be built with GCC cross compiling for + mingw32 for Microsoft Windows targets using the Redhat w32 pthread library. + . + The minimum platform support for UCommon is a modern and working posix + pthread threading library. UCommon does not support other non-posix threading + models such as Microsoft Windows threads or non-preemtive threading libraries + like GNU pth, so that the developers could optimize development efforts around + Posix pthread exclusively. It further uses a subset of posix threads to assure + wider portability by avoiding more specialized features like process shared + synchronization objects, pthread rwlocks and pthread semaphores, as these are + not implemented on all platforms. + +Package: libucommon2 +Section: libs +Architecture: any +Depends: ${shlibs:Depends}, ${misc:Depends} +Description: A light-weight C++ library + UCommon is meant as a very light-weight C++ library to facilitate using C++ + design patterns even for very deeply embedded applications, such as for systems + using uclibc along with posix threading support. For this reason, UCommon + disables language features that consume memory or introduce runtime overhead, + such as rtti and exception handling, and assumes one will mostly be linking + applications with other pure C based libraries rather than using the overhead + of the standard C++ library and other similar class frameworks. + . + UCommon introduces some Objective-C based design patterns, such as reference + counted objects, memory pools, smart pointers, and offers dynamic typing + through very light use of inline templates for pure type translation that are + then tied to concrete base classes to avoid template instantiation issues. C++ + auto-variable automation is also used to enable referenced objects to be + deleted and threading locks to be released that are acquired automatically when + methods return rather than requiring one to explicitly code for these things. + . + UCommon depends on and when necessary will introduce some portable C + replacement functions, especially for sockets, such as adding getaddrinfo for + platforms which do not have it, or when threadsafe versions of existing C + library functions are needed. Basic socket support for connecting to named + destinations and multicast addresses, and binding to interfaces with IPV4 and + IPV6 addresses is directly supported. Support for high resolution timing and + Posix realtime clocks are also used when available. + . + While UCommon has been influenced by GNU Common C++, it introduces some new + concepts for handling of thread locking and synchronization. UCommon also + builds all higher level thread synchronization objects directly from + conditionals. Hence, on platforms which for example do not have rwlocks, + barriers, or semaphores, these are still found in UCommon. A common and + consistent call methodology is used for all locks, whether mutex, rw, or + semaphore, based on whether used for exclusive or "shared" locking. + . + UCommon requires some knowledge of compiler switches and options to disable + language features, the C++ runtime and stdlibs, and associated C++ headers. The + current version supports compiling with GCC, which is commonly found on + GNU/Linux, OS/X, BSD based systems, and many other platforms; and the Sun + Workshop compiler, which is offered as an example how to adapt UCommon for + additional compilers. UCommon may also be built with GCC cross compiling for + mingw32 for Microsoft Windows targets using the Redhat w32 pthread library. + . + The minimum platform support for UCommon is a modern and working posix + pthread threading library. UCommon does not support other non-posix threading + models such as Microsoft Windows threads or non-preemtive threading libraries + like GNU pth, so that the developers could optimize development efforts around + Posix pthread exclusively. It further uses a subset of posix threads to assure + wider portability by avoiding more specialized features like process shared + synchronization objects, pthread rwlocks and pthread semaphores, as these are + not implemented on all platforms. + +Package: libucommon2-dbg +Section: debug +Priority: extra +Architecture: any +Depends: libucommon2 (= ${Source-Version}) +Description: Debug-Symbols for the libucommon library, a light-weight C++ library + UCommon is meant as a very light-weight C++ library to facilitate using C++ + design patterns even for very deeply embedded applications, such as for systems + using uclibc along with posix threading support. For this reason, UCommon + disables language features that consume memory or introduce runtime overhead, + such as rtti and exception handling, and assumes one will mostly be linking + applications with other pure C based libraries rather than using the overhead + of the standard C++ library and other similar class frameworks. + . + UCommon introduces some Objective-C based design patterns, such as reference + counted objects, memory pools, smart pointers, and offers dynamic typing + through very light use of inline templates for pure type translation that are + then tied to concrete base classes to avoid template instantiation issues. C++ + auto-variable automation is also used to enable referenced objects to be + deleted and threading locks to be released that are acquired automatically when + methods return rather than requiring one to explicitly code for these things. + . + UCommon depends on and when necessary will introduce some portable C + replacement functions, especially for sockets, such as adding getaddrinfo for + platforms which do not have it, or when threadsafe versions of existing C + library functions are needed. Basic socket support for connecting to named + destinations and multicast addresses, and binding to interfaces with IPV4 and + IPV6 addresses is directly supported. Support for high resolution timing and + Posix realtime clocks are also used when available. + . + While UCommon has been influenced by GNU Common C++, it introduces some new + concepts for handling of thread locking and synchronization. UCommon also + builds all higher level thread synchronization objects directly from + conditionals. Hence, on platforms which for example do not have rwlocks, + barriers, or semaphores, these are still found in UCommon. A common and + consistent call methodology is used for all locks, whether mutex, rw, or + semaphore, based on whether used for exclusive or "shared" locking. + . + UCommon requires some knowledge of compiler switches and options to disable + language features, the C++ runtime and stdlibs, and associated C++ headers. The + current version supports compiling with GCC, which is commonly found on + GNU/Linux, OS/X, BSD based systems, and many other platforms; and the Sun + Workshop compiler, which is offered as an example how to adapt UCommon for + additional compilers. UCommon may also be built with GCC cross compiling for + mingw32 for Microsoft Windows targets using the Redhat w32 pthread library. + . + The minimum platform support for UCommon is a modern and working posix + pthread threading library. UCommon does not support other non-posix threading + models such as Microsoft Windows threads or non-preemtive threading libraries + like GNU pth, so that the developers could optimize development efforts around + Posix pthread exclusively. It further uses a subset of posix threads to assure + wider portability by avoiding more specialized features like process shared + synchronization objects, pthread rwlocks and pthread semaphores, as these are + not implemented on all platforms. + diff -Naur ucommon-2.0.5/debian/copyright libucommon2-2.0.5/debian/copyright --- ucommon-2.0.5/debian/copyright 1970-01-01 00:00:00.000000000 +0000 +++ libucommon2-2.0.5/debian/copyright 2009-06-11 16:16:58.000000000 +0200 @@ -0,0 +1,24 @@ +This package was debianized by Tobias Frost <t...@coldtobi.de> on +Thu, 11 Jun 2009 12:30:18 +0200. + +It was downloaded from http://ftp.gnu.org/pub/gnu/commoncpp/ + +Upstream Author: + + David Sugar <dy...@gnutelephony.org> + +Copyright: + + Copyright (C) 2006-2008 David Sugar, Tycho Softworks. + +License: + + GNU LESSER GENERAL PUBLIC LICENSE, Version 3 + +The Debian packaging is: + + Copyright (C) 2009 Tobias Frost <t...@coldtobi.de> + +and is licensed under the GPL version 3, +see `/usr/share/common-licenses/LGPL-3'. + diff -Naur ucommon-2.0.5/debian/dirs libucommon2-2.0.5/debian/dirs --- ucommon-2.0.5/debian/dirs 1970-01-01 00:00:00.000000000 +0000 +++ libucommon2-2.0.5/debian/dirs 2009-06-11 12:30:20.000000000 +0200 @@ -0,0 +1,2 @@ +usr/bin +usr/sbin diff -Naur ucommon-2.0.5/debian/docs libucommon2-2.0.5/debian/docs --- ucommon-2.0.5/debian/docs 1970-01-01 00:00:00.000000000 +0000 +++ libucommon2-2.0.5/debian/docs 2009-06-11 17:30:45.000000000 +0200 @@ -0,0 +1,4 @@ +NEWS +README +TODO +doc/html diff -Naur ucommon-2.0.5/debian/libucommon2-dev.dirs libucommon2-2.0.5/debian/libucommon2-dev.dirs --- ucommon-2.0.5/debian/libucommon2-dev.dirs 1970-01-01 00:00:00.000000000 +0000 +++ libucommon2-2.0.5/debian/libucommon2-dev.dirs 2009-06-11 12:30:20.000000000 +0200 @@ -0,0 +1,2 @@ +usr/lib +usr/include diff -Naur ucommon-2.0.5/debian/libucommon2-dev.install libucommon2-2.0.5/debian/libucommon2-dev.install --- ucommon-2.0.5/debian/libucommon2-dev.install 1970-01-01 00:00:00.000000000 +0000 +++ libucommon2-2.0.5/debian/libucommon2-dev.install 2009-06-11 13:00:10.000000000 +0200 @@ -0,0 +1,7 @@ +usr/include/* +usr/lib/lib*.a +usr/lib/lib*.so +usr/lib/pkgconfig/* +usr/lib/*.la +usr/lib/pkgconfig/* +usr/bin/ucommon-config diff -Naur ucommon-2.0.5/debian/libucommon2-dev.manpages libucommon2-2.0.5/debian/libucommon2-dev.manpages --- ucommon-2.0.5/debian/libucommon2-dev.manpages 1970-01-01 00:00:00.000000000 +0000 +++ libucommon2-2.0.5/debian/libucommon2-dev.manpages 2009-06-11 18:29:43.000000000 +0200 @@ -0,0 +1 @@ +debian/*.8 diff -Naur ucommon-2.0.5/debian/libucommon2.dirs libucommon2-2.0.5/debian/libucommon2.dirs --- ucommon-2.0.5/debian/libucommon2.dirs 1970-01-01 00:00:00.000000000 +0000 +++ libucommon2-2.0.5/debian/libucommon2.dirs 2009-06-11 12:30:20.000000000 +0200 @@ -0,0 +1 @@ +usr/lib diff -Naur ucommon-2.0.5/debian/libucommon2-doc.manpages libucommon2-2.0.5/debian/libucommon2-doc.manpages --- ucommon-2.0.5/debian/libucommon2-doc.manpages 1970-01-01 00:00:00.000000000 +0000 +++ libucommon2-2.0.5/debian/libucommon2-doc.manpages 2009-06-11 16:25:54.000000000 +0200 @@ -0,0 +1 @@ +doc/man/man3/*.3 diff -Naur ucommon-2.0.5/debian/libucommon2.install libucommon2-2.0.5/debian/libucommon2.install --- ucommon-2.0.5/debian/libucommon2.install 1970-01-01 00:00:00.000000000 +0000 +++ libucommon2-2.0.5/debian/libucommon2.install 2009-06-11 12:30:20.000000000 +0200 @@ -0,0 +1 @@ +usr/lib/lib*.so.* diff -Naur ucommon-2.0.5/debian/patches/00list libucommon2-2.0.5/debian/patches/00list --- ucommon-2.0.5/debian/patches/00list 1970-01-01 00:00:00.000000000 +0000 +++ libucommon2-2.0.5/debian/patches/00list 2009-06-11 18:45:44.000000000 +0200 @@ -0,0 +1,2 @@ +01_cleandocs.dpatch +02_Doxyfile_modifier.dpatch diff -Naur ucommon-2.0.5/debian/patches/01_cleandocs.dpatch libucommon2-2.0.5/debian/patches/01_cleandocs.dpatch --- ucommon-2.0.5/debian/patches/01_cleandocs.dpatch 1970-01-01 00:00:00.000000000 +0000 +++ libucommon2-2.0.5/debian/patches/01_cleandocs.dpatch 2009-06-11 13:56:17.000000000 +0200 @@ -0,0 +1,19 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run +## 00_cleandocs.dpatch by <t...@mordor.loewenhoehle.ip> +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: Cleaning the docs dir on dist-clean + +...@dpatch@ + +--- libucommon2-2.0.5/Makefile.in.orig 2009-06-11 13:32:41.000000000 +0200 ++++ libucommon2-2.0.5/Makefile.in 2009-06-11 13:34:01.000000000 +0200 +@@ -662,6 +662,8 @@ + distclean: distclean-recursive + -rm -f $(am__CONFIG_DISTCLEAN_FILES) + -rm -f Makefile ++ -rm -rf doc ++ + distclean-am: clean-am distclean-generic distclean-hdr \ + distclean-libtool distclean-tags + diff -Naur ucommon-2.0.5/debian/patches/02_Doxyfile_modifier.dpatch libucommon2-2.0.5/debian/patches/02_Doxyfile_modifier.dpatch --- ucommon-2.0.5/debian/patches/02_Doxyfile_modifier.dpatch 1970-01-01 00:00:00.000000000 +0000 +++ libucommon2-2.0.5/debian/patches/02_Doxyfile_modifier.dpatch 2009-06-11 19:00:21.000000000 +0200 @@ -0,0 +1,34 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run +## 01_doxyfile_adapt.dpatch by <t...@mordor.loewenhoehle.ip> +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: Changing doxygen config to make man pages. Do not build rtf and latex +## DP: docs. + +...@dpatch@ + +--- libucommon2-2.0.5/Doxyfile.orig 2009-06-11 18:56:09.000000000 +0200 ++++ libucommon2-2.0.5/Doxyfile 2009-06-11 18:57:24.000000000 +0200 +@@ -37,16 +37,19 @@ + GENERATE_HTMLHELP = YES + GENERATE_TREEVIEW = YES + TREEVIEW_WIDTH = 256 +-GENERATE_LATEX = YES ++GENERATE_LATEX = NO + COMPACT_LATEX = YES + PDF_HYPERLINKS = YES + USE_PDFLATEX = NO + LATEX_BATCHMODE = YES + LATEX_HIDE_INDICES = NO +-GENERATE_RTF = YES ++GENERATE_RTF = NO + COMPACT_RTF = YES + RTF_HYPERLINKS = NO +-GENERATE_MAN = NO ++GENERATE_MAN = YES ++MAN_OUTPUT = man ++MAN_EXTENSION = .3 ++MAN_LINKS = NO + GENERATE_XML = NO + GENERATE_PERLMOD = NO + ENABLE_PREPROCESSING = YES diff -Naur ucommon-2.0.5/debian/rules libucommon2-2.0.5/debian/rules --- ucommon-2.0.5/debian/rules 1970-01-01 00:00:00.000000000 +0000 +++ libucommon2-2.0.5/debian/rules 2009-06-11 18:24:46.000000000 +0200 @@ -0,0 +1,122 @@ +#!/usr/bin/make -f +# -*- makefile -*- +# Sample debian/rules that uses debhelper. +# This file was originally written by Joey Hess and Craig Small. +# As a special exception, when this file is copied by dh-make into a +# dh-make output file, you may use that output file without restriction. +# This special exception was added by Craig Small in version 0.37 of dh-make. + +# Uncomment this to turn on verbose mode. +#export DH_VERBOSE=1 + +include /usr/share/dpatch/dpatch.make + +CFLAGS += -Wall -g + +# 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) +ifneq ($(DEB_HOST_GNU_TYPE),$(DEB_BUILD_GNU_TYPE)) +CROSS= --build $(DEB_BUILD_GNU_TYPE) --host $(DEB_HOST_GNU_TYPE) +else +CROSS= --build $(DEB_BUILD_GNU_TYPE) +endif + +# 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)}'` + +config.status: configure patch + dh_testdir + # Add here commands to configure the package. +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 + ./configure $(CROSS) --prefix=/usr --mandir=\$${prefix}/share/man --infodir=\$${prefix}/share/info CFLAGS="$(CFLAGS)" LDFLAGS="-Wl,-z,defs" + + +build: build-stamp patch +build-stamp: config.status + dh_testdir + + # Add here commands to compile the package. + $(MAKE) + $(MAKE) doxy + touch $@ + +clean: unpatch + dh_testdir + dh_testroot + rm -f build-stamp + + # Add here commands to clean up after the build process. + [ ! -f Makefile ] || $(MAKE) distclean + rm -f config.sub config.guess + rm -rf doc + + dh_clean + +install: build + dh_testdir + dh_testroot + dh_prep + dh_installdirs + + # Add here commands to install the package into debian/tmp + $(MAKE) DESTDIR=$(CURDIR)/debian/tmp install + $(MAKE) DESTDIR=$(CURDIR)/debian/tmp install-html + + # create the man page + chmod +x ucommon-config + /usr/bin/help2man -N -S 'Debian GNU/Linux' -o debian/ucommon-config.8 ./ucommon-config \ + -n 'script to get information about the installed version of libucommon2' + + + +# Build architecture-independent files here. +binary-indep: install +# We have nothing to do by default. + +# Build architecture-dependent files here. +binary-arch: install + dh_testdir + dh_testroot + dh_installchangelogs ChangeLog + dh_installdocs + dh_installexamples + dh_install + find debian/ -type d -empty -delete +# dh_installmenu +# dh_installdebconf +# dh_installlogrotate +# dh_installemacsen +# dh_installpam +# dh_installmime +# dh_installinit +# dh_installcron +# dh_installinfo + dh_installman + dh_link + dh_strip --dbg-package=libucommon2-dbg + dh_compress + dh_fixperms +# dh_perl +# dh_python + dh_makeshlibs + dh_installdeb + dh_shlibdeps + dh_gencontrol + dh_md5sums + dh_builddeb + +binary: binary-indep binary-arch +.PHONY: build clean binary-indep binary-arch binary install diff -Naur ucommon-2.0.5/debian/ucommon-config.8 libucommon2-2.0.5/debian/ucommon-config.8 --- ucommon-2.0.5/debian/ucommon-config.8 1970-01-01 00:00:00.000000000 +0000 +++ libucommon2-2.0.5/debian/ucommon-config.8 2009-06-11 21:49:24.000000000 +0200 @@ -0,0 +1,33 @@ +.\" DO NOT MODIFY THIS FILE! It was generated by help2man 1.36. +.TH UCOMMON-CONFIG "1" "June 2009" "Debian GNU/Linux" "User Commands" +.SH NAME +ucommon-config \- script to get information about the installed version of libucommon2 +.SH SYNOPSIS +.B ucommon-config +[\fIOPTION\fR] +.SH DESCRIPTION +Known values for OPTION are: +.TP +\fB\-\-prefix\fR=\fIDIR\fR +change ucommon prefix [default /usr] +.TP +\fB\-\-exec\-prefix\fR=\fIDIR\fR +change ucommon exec prefix [default /usr] +.TP +\fB\-\-libs\fR +print library linking information +.TP +\fB\-\-clink\fR +print c model linking information +.TP +\fB\-\-cflags\fR +print pre\-processor and compiler flags +.TP +\fB\-\-model\fR +print the linking modek used +.TP +\fB\-\-help\fR +display this help and exit +.TP +\fB\-\-version\fR +output version information