[opengm] 02/08: add package build dependencies and rules

Ghislain Vaillant ghisvail-guest at moszumanska.debian.org
Sun Nov 1 17:14:53 UTC 2015


This is an automated email from the git hooks/post-receive script.

ghisvail-guest pushed a commit to branch debian/sid
in repository opengm.

commit 615a9f1cc87d7dbb9e846b3722f478c24e4639b7
Author: Ghislain Antony Vaillant <ghisvail at gmail.com>
Date:   Tue Oct 20 20:16:01 2015 +0100

    add package build dependencies and rules
---
 debian/control                             | 136 +++++++++++++++++++++++------
 debian/libopengm-bin.install               |   1 +
 debian/libopengm-bin.lintian-overrides     |   1 +
 debian/libopengm-dev.install               |   1 +
 debian/libopengm-doc.doc-base              |   9 ++
 debian/libopengm-doc.install               |   1 +
 debian/opengm-converters.install           |   1 +
 debian/opengm-converters.lintian-overrides |   1 +
 debian/python-opengm-doc.doc-base          |  10 +++
 debian/python-opengm-doc.install           |   1 +
 debian/python-opengm.install               |   1 +
 debian/rules                               |  68 +++++++++++++--
 debian/source/local-options                |   1 +
 13 files changed, 198 insertions(+), 34 deletions(-)

diff --git a/debian/control b/debian/control
index 2f2ecbd..7fbec8e 100644
--- a/debian/control
+++ b/debian/control
@@ -1,49 +1,133 @@
 Source: opengm
-Section: unknown
+Maintainer: Debian Science Maintainers <debian-science-maintainers at lists.alioth.debian.org>
+Uploaders: Ghislain Antony Vaillant <ghisvail at gmail.com>
+Section: science
 Priority: extra
-Maintainer: Ghislain Antony Vaillant <ghisvail at gmail.com>
-Build-Depends: cmake, debhelper (>=9), python-all
+Build-Depends: cmake,
+               debhelper (>= 9),
+               dh-python,
+               libboost-dev,
+               libboost-graph-dev,
+               libboost-python-dev,
+               libhdf5-dev,
+               libvigraimpex-dev,
+               python,
+               python-nose,
+               python-numpy
+Build-Depends-Indep: doxygen,
+                     graphviz,
+                     python-sphinx
 Standards-Version: 3.9.6
+Vcs-Browser: https://anonscm.debian.org/cgit/debian-science/packages/clblas.git
+Vcs-Git: git://anonscm.debian.org/debian-science/packages/clblas.git
 Homepage: http://hci.iwr.uni-heidelberg.de/opengm2/
 X-Python-Version: >= 2.6
 
 Package: libopengm-bin
 Architecture: any
-Multi-Arch: foreign
-Depends: ${misc:Depends}, ${shlibs:Depends}
-Description: auto-generated package by debmake: bin
- This package contains the compiled binary executable.
+Depends: ${misc:Depends},
+         ${shlibs:Depends}
+Description: Commandline interface to OpenGM
+ OpenGM is a C++ template library for discrete factor graph models and
+ distributive operations on these models.
+ .
+ It includes state-of-the-art optimization and inference algorithms beyond
+ message passing. OpenGM handles large models efficiently, is modular and
+ extendible. The graphical model data structure, inference algorithms and
+ different encodings of functions inter-operate through well-defined
+ interfaces. The binary OpenGM file format is based on the HDF5 standard and
+ incorporates user extensions automatically.
  .
- This Debian binary package was auto-generated by the
- debmake(1) command provided by the debmake package.
+ This package contains the commandline interface to the OpenGM library.
 
 Package: libopengm-dev
+Architecture: all
 Section: libdevel
-Architecture: any
-Multi-Arch: same
 Depends: ${misc:Depends}
-Description: auto-generated package by debmake: dev
- This package contains the development files.
+Suggests: libopengm-doc
+Description: C++ template library for discrete factor graph models
+ OpenGM is a C++ template library for discrete factor graph models and
+ distributive operations on these models.
+ .
+ It includes state-of-the-art optimization and inference algorithms beyond
+ message passing. OpenGM handles large models efficiently, is modular and
+ extendible. The graphical model data structure, inference algorithms and
+ different encodings of functions inter-operate through well-defined
+ interfaces. The binary OpenGM file format is based on the HDF5 standard and
+ incorporates user extensions automatically.
+ .
+ This package contains the development headers for the OpenGM library.
 
 Package: libopengm-doc
-Section: doc
 Architecture: all
-Multi-Arch: foreign
+Section: doc
 Depends: ${misc:Depends}
-Description: auto-generated package by debmake: doc
- This package contains the documentation files.
+Description: API documentation for OpenGM
+ OpenGM is a C++ template library for discrete factor graph models and
+ distributive operations on these models.
+ .
+ It includes state-of-the-art optimization and inference algorithms beyond
+ message passing. OpenGM handles large models efficiently, is modular and
+ extendible. The graphical model data structure, inference algorithms and
+ different encodings of functions inter-operate through well-defined
+ interfaces. The binary OpenGM file format is based on the HDF5 standard and
+ incorporates user extensions automatically.
+ .
+ This package contains the API documentation for the OpenGM library.
+
+Package: opengm-converters
+Architecture: any
+Depends: ${misc:Depends},
+         ${shlibs:Depends}
+Description: Converters for the OpenGM data format
+ OpenGM is a C++ template library for discrete factor graph models and
+ distributive operations on these models.
+ .
+ It includes state-of-the-art optimization and inference algorithms beyond
+ message passing. OpenGM handles large models efficiently, is modular and
+ extendible. The graphical model data structure, inference algorithms and
+ different encodings of functions inter-operate through well-defined
+ interfaces. The binary OpenGM file format is based on the HDF5 standard and
+ incorporates user extensions automatically.
+ .
+ This package contains the converters for the OpenGM data format.
 
 Package: python-opengm
-Architecture: all
-Multi-Arch: foreign
+Architecture: any
+Multi-Arch: same
+Section: python
 Depends: ${misc:Depends},
-         ${python:Depends}
-Description: auto-generated package by debmake: python
- This package contains the python program.
+         ${python:Depends},
+         ${shlibs:Depends}
+Suggests: python-opengm-doc
+Description: Python interface to OpenGM
+ OpenGM is a C++ template library for discrete factor graph models and
+ distributive operations on these models.
+ .
+ It includes state-of-the-art optimization and inference algorithms beyond
+ message passing. OpenGM handles large models efficiently, is modular and
+ extendible. The graphical model data structure, inference algorithms and
+ different encodings of functions inter-operate through well-defined
+ interfaces. The binary OpenGM file format is based on the HDF5 standard and
+ incorporates user extensions automatically.
+ .
+ This package contains the Python interface to the OpenGM library.
 
 Package: python-opengm-doc
 Architecture: all
-Multi-Arch: foreign
-Depends: ${misc:Depends}
-Description: auto-generated package by debmake: data
- This package contains the architecture independent data.
+Section: doc
+Depends: ${misc:Depends},
+         ${sphinxdoc:Depends}
+Description: documentation for the Python interface to OpenGM
+ OpenGM is a C++ template library for discrete factor graph models and
+ distributive operations on these models.
+ .
+ It includes state-of-the-art optimization and inference algorithms beyond
+ message passing. OpenGM handles large models efficiently, is modular and
+ extendible. The graphical model data structure, inference algorithms and
+ different encodings of functions inter-operate through well-defined
+ interfaces. The binary OpenGM file format is based on the HDF5 standard and
+ incorporates user extensions automatically.
+ .
+ This package contains the documentation for the Python interface to the
+ OpenGM library.
diff --git a/debian/libopengm-bin.install b/debian/libopengm-bin.install
new file mode 100644
index 0000000..8c27952
--- /dev/null
+++ b/debian/libopengm-bin.install
@@ -0,0 +1 @@
+usr/bin/opengm*
diff --git a/debian/libopengm-bin.lintian-overrides b/debian/libopengm-bin.lintian-overrides
new file mode 100644
index 0000000..7d0772d
--- /dev/null
+++ b/debian/libopengm-bin.lintian-overrides
@@ -0,0 +1 @@
+libopengm-bin: binary-without-manpage *
diff --git a/debian/libopengm-dev.install b/debian/libopengm-dev.install
new file mode 100644
index 0000000..e43b95c
--- /dev/null
+++ b/debian/libopengm-dev.install
@@ -0,0 +1 @@
+usr/include
diff --git a/debian/libopengm-doc.doc-base b/debian/libopengm-doc.doc-base
new file mode 100644
index 0000000..8f982a6
--- /dev/null
+++ b/debian/libopengm-doc.doc-base
@@ -0,0 +1,9 @@
+Document: libopengm-doc
+Title: API documentation for OpenGM
+Author: The OpenGM developers
+Abstract: This is the reference documentation for the OpenGM library.
+Section: Programming
+
+Format: HTML
+Index: /usr/share/doc/libopengm-doc/html/index.html
+Files: /usr/share/doc/libopengm-doc/html/*.html
diff --git a/debian/libopengm-doc.install b/debian/libopengm-doc.install
new file mode 100644
index 0000000..aaef076
--- /dev/null
+++ b/debian/libopengm-doc.install
@@ -0,0 +1 @@
+usr/share/doc/opengm/html usr/share/doc/libopengm-doc
diff --git a/debian/opengm-converters.install b/debian/opengm-converters.install
new file mode 100644
index 0000000..6af85c0
--- /dev/null
+++ b/debian/opengm-converters.install
@@ -0,0 +1 @@
+usr/bin/converter/* usr/bin
diff --git a/debian/opengm-converters.lintian-overrides b/debian/opengm-converters.lintian-overrides
new file mode 100644
index 0000000..6ced006
--- /dev/null
+++ b/debian/opengm-converters.lintian-overrides
@@ -0,0 +1 @@
+opengm-converters: binary-without-manpage *
diff --git a/debian/python-opengm-doc.doc-base b/debian/python-opengm-doc.doc-base
new file mode 100644
index 0000000..c233a2f
--- /dev/null
+++ b/debian/python-opengm-doc.doc-base
@@ -0,0 +1,10 @@
+Document: python-opengm-doc
+Title: Documentation for the Python interface to OpenGM
+Author: The OpenGM developers
+Abstract: This is the reference documentation for the Python interface to the
+ OpenGM library.
+Section: Programming
+
+Format: HTML
+Index: /usr/share/doc/python-opengm-doc/html/index.html
+Files: /usr/share/doc/python-opengm-doc/html/*.html
diff --git a/debian/python-opengm-doc.install b/debian/python-opengm-doc.install
new file mode 100644
index 0000000..8e36c20
--- /dev/null
+++ b/debian/python-opengm-doc.install
@@ -0,0 +1 @@
+usr/share/doc/python-opengm/html usr/share/doc/python-opengm-doc
diff --git a/debian/python-opengm.install b/debian/python-opengm.install
new file mode 100644
index 0000000..607c065
--- /dev/null
+++ b/debian/python-opengm.install
@@ -0,0 +1 @@
+usr/lib/python*
diff --git a/debian/rules b/debian/rules
index c536edb..7060220 100755
--- a/debian/rules
+++ b/debian/rules
@@ -1,13 +1,65 @@
 #!/usr/bin/make -f
-# You must remove unused comment lines for the released package.
+
+# Uncomment this to turn on verbose mode.
 #export DH_VERBOSE = 1
-#export DEB_BUILD_MAINT_OPTIONS = hardening=+all
-#export DEB_CFLAGS_MAINT_APPEND  = -Wall -pedantic
-#export DEB_LDFLAGS_MAINT_APPEND = -Wl,--as-needed
+
+# Hardening options.
+export DEB_BUILD_MAINT_OPTIONS = hardening=+all
+export DEB_CFLAGS_MAINT_APPEND = -Wall -pedantic
+export DEB_LDFLAGS_MAINT_APPEND = -Wl,--as-needed
+
+# Build options.
+BUILD_OPTIONS = \
+	-DBUILD_EXAMPLES=OFF \
+	-DBUILD_TUTORIALS=OFF \
+	-DBUILD_COMMANDLINE=ON \
+	-DWITH_BOOST=ON \
+	-DWITH_HDF5=ON \
+	-DWITH_OPENMP=ON \
+	-DWITH_VIGRA=ON \
+	-DBUILD_CONVERTER=ON \
+	-DBUILD_PYTHON_WRAPPER=ON
+
+# Disable build of testsuite if nocheck is passed.
+ifeq (,$(filter nocheck,$(DEB_BUILD_OPTIONS)))
+	BUILD_OPTIONS += -DBUILD_TESTING=ON
+else
+	BUILD_OPTIONS += -DBUILD_TESTING=OFF
+endif
 
 %:
-	dh $@ --with python2 
+	dh $@ --parallel --with python2 
+
+override_dh_auto_configure-arch:
+	dh_auto_configure -- \
+		$(BUILD_OPTIONS) \
+		-DBUILD_DOCS=OFF \
+		-DBUILD_PYTHON_DOCS=OFF
+
+override_dh_auto_configure-indep:
+	dh_auto_configure -- \
+		$(BUILD_OPTIONS) \
+		-DBUILD_DOCS=ON \
+		-DBUILD_PYTHON_DOCS=ON
+
+override_dh_auto_install-arch:
+	dh_auto_install --arch
+	dh_numpy --package=python-opengm
+
+override_dh_auto_test-arch:
+ifeq (,$(filter nocheck,$(DEB_BUILD_OPTIONS)))
+	# Run library testsuite.
+	cd obj-* && \
+	CTEST_OUTPUT_ON_FAILURE=1 ctest --force-new-ctest-process
+	# Run Python testsuite.
+	cd obj-* && \
+	make test-python-wrapper
+endif
+
+override_dh_auto_test-indep:
+	# Pass.
 
-#override_dh_auto_configure:
-#	dh_auto_configure -- \
-#	      -DCMAKE_LIBRARY_ARCHITECTURE="$(DEB_TARGET_MULTIARCH)"
+override_dh_installdocs-indep:
+	dh_installdocs --indep
+	dh_doxygen --package=libopengm-doc
+	dh_sphinxdoc --package=python-opengm-doc
diff --git a/debian/source/local-options b/debian/source/local-options
new file mode 100644
index 0000000..4aceb10
--- /dev/null
+++ b/debian/source/local-options
@@ -0,0 +1 @@
+unapply-patches

-- 
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/debian-science/packages/opengm.git



More information about the debian-science-commits mailing list