Bug#1000718: libarmadillo-dev: Patch update

João Rodrigues joao.pedro.rodrigues at ist.utl.pt
Tue Nov 30 19:41:35 GMT 2021


Package: libarmadillo-dev
Version: 1:10.7.4+dfsg-1
Followup-For: Bug #1000718

Dear Maintainer,

I received a helpful comment, which alerted to the fact that external
packages do in fact depend on architecture-dependent headers.
Hence, moved the headers to their own architecture, rather than being
shared.

--BR, João Rodrigues


-- System Information:
Debian Release: 11.1
  APT prefers stable-updates
  APT policy: (500, 'stable-updates'), (500, 'stable-security'), (500, 'stable')
Architecture: amd64 (x86_64)
Foreign Architectures: armhf

Kernel: Linux 5.10.0-9-amd64 (SMP w/1 CPU thread)
Kernel taint flags: TAINT_OOT_MODULE, TAINT_UNSIGNED_MODULE
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8), LANGUAGE=en_US:en
Shell: /bin/sh linked to /usr/bin/dash
Init: systemd (via /run/systemd/system)
LSM: AppArmor: enabled

Versions of packages libarmadillo-dev depends on:
ii  libarmadillo10  1:10.7.4+dfsg-1
ii  libarpack2-dev  3.8.0-1
ii  libsuperlu-dev  5.2.2+dfsg1-2

libarmadillo-dev recommends no packages.

Versions of packages libarmadillo-dev suggests:
pn  libitpp-dev  <none>

-- no debconf information
-------------- next part --------------
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 2a039aa4..ddbe8bd5 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -635,7 +635,7 @@ configure_file(${PROJECT_SOURCE_DIR}/cmake_aux/InstallFiles/ArmadilloConfigVersi
 
 # Install the export set for use with the install-tree
 install(EXPORT ArmadilloLibraryDepends DESTINATION
-  "${CMAKE_INSTALL_DATADIR}/Armadillo/CMake"
+  "${CMAKE_INSTALL_LIBDIR}/cmake/armadillo"
   COMPONENT dev)
 
 
@@ -644,7 +644,7 @@ install(EXPORT ArmadilloLibraryDepends DESTINATION
 # and install it
 set(ARMADILLO_INCLUDE_DIRS "${CMAKE_INSTALL_FULL_INCLUDEDIR}")
 set(ARMADILLO_LIB_DIR      "${CMAKE_INSTALL_FULL_LIBDIR}")
-set(ARMADILLO_CMAKE_DIR    "${CMAKE_INSTALL_FULL_DATADIR}/Armadillo/CMake")
+set(ARMADILLO_CMAKE_DIR    "${CMAKE_INSTALL_FULL_LIBDIR}/cmake/armadillo")
 
 
 message(STATUS "Generating '${PROJECT_BINARY_DIR}/InstallFiles/ArmadilloConfig.cmake'")
diff --git a/debian/compat b/debian/compat
deleted file mode 100644
index f599e28b..00000000
--- a/debian/compat
+++ /dev/null
@@ -1 +0,0 @@
-10
diff --git a/debian/control b/debian/control
index 5729d27a..649322e4 100644
--- a/debian/control
+++ b/debian/control
@@ -2,7 +2,7 @@ Source: armadillo
 Priority: optional
 Maintainer: Debian Science Maintainers <debian-science-maintainers at lists.alioth.debian.org>
 Uploaders: Kumar Appaiah <akumar at debian.org>
-Build-Depends: debhelper (>= 7), libblas-dev, liblapack-dev, cmake, libarpack2-dev, dpkg-dev (>= 1.16.1~), libsuperlu-dev (>= 5.2), quilt
+Build-Depends: debhelper-compat ( = 12), libblas-dev, liblapack-dev, cmake, libarpack2-dev, dpkg-dev (>= 1.16.1~), libsuperlu-dev (>= 5.2), quilt, libstdc++6
 Standards-Version: 4.5.1
 Section: libs
 Homepage: http://arma.sourceforge.net/
@@ -12,6 +12,7 @@ Vcs-Browser: https://salsa.debian.org/science-team/armadillo
 Package: libarmadillo-dev
 Section: libdevel
 Architecture: any
+Multi-Arch: same
 Suggests: libitpp-dev
 Depends: libarmadillo10 (= ${binary:Version}), ${misc:Depends}, libarpack2-dev, libhdf5-dev, libsuperlu-dev (>= 5.2)
 Replaces: libarmadillo-doc (<= 1.1.2-1)
@@ -28,6 +29,7 @@ Description: streamlined C++ linear algebra library - Headers
 Package: libarmadillo10
 Section: libs
 Architecture: any
+Multi-Arch: same
 Depends: ${shlibs:Depends}, ${misc:Depends}
 Description: streamlined C++ linear algebra library
  Armadillo is a streamlined C++ linear algebra library (matrix maths)
diff --git a/debian/libarmadillo-dev.install b/debian/libarmadillo-dev.install
index 8e9208ed..e13c447c 100644
--- a/debian/libarmadillo-dev.install
+++ b/debian/libarmadillo-dev.install
@@ -1,3 +1,4 @@
-usr/include/* usr/include
-usr/lib/lib*.so usr/lib
-usr/share/Armadillo/CMake/*.cmake usr/share/doc/libarmadillo-dev
+usr/include/*/*
+usr/lib/*/*.so
+usr/lib/*/pkgconfig
+usr/lib/*/cmake
diff --git a/debian/libarmadillo10.install b/debian/libarmadillo10.install
index d90fa028..3de3b10a 100644
--- a/debian/libarmadillo10.install
+++ b/debian/libarmadillo10.install
@@ -1 +1 @@
-usr/lib/*.so.* usr/lib
+usr/lib/*/*.so.*
diff --git a/debian/rules b/debian/rules
index 1456401b..30a33f75 100755
--- a/debian/rules
+++ b/debian/rules
@@ -1,66 +1,24 @@
 #!/usr/bin/make -f
-# -*- makefile -*-
+# See debhelper(7) (uncomment to enable)
+# output every command that modifies files on the build system.
+#export DH_VERBOSE = 1
 
-DPKG_EXPORT_BUILDFLAGS = 1
-include /usr/share/dpkg/buildflags.mk
-include /usr/share/quilt/quilt.make
-CFLAGS+=$(CPPFLAGS)
-CXXFLAGS+=$(CPPFLAGS)
+include /usr/share/dpkg/architecture.mk
 
-build: build-arch build-indep
-build-arch: build-stamp
-build-indep: build-stamp
+# see FEATURE AREAS in dpkg-buildflags(1)
+#export DEB_BUILD_MAINT_OPTIONS = hardening=+all
 
-build-stamp:
-	dh_testdir
-	dh_auto_configure --buildsystem=cmake --builddirectory=. -- -D INSTALL_LIB_DIR=lib -D CMAKE_INpppSTALL_PREFIX_INITIALIZED_TO_DEFAULT:BOOL=ON  . # specified to install to the debian/tmp directory.
-	$(MAKE)
-	touch $@
+# see ENVIRONMENT in dpkg-buildflags(1)
+# package maintainers to append CFLAGS
+#export DEB_CFLAGS_MAINT_APPEND  = -Wall -pedantic
+# package maintainers to append LDFLAGS
+#export DEB_LDFLAGS_MAINT_APPEND = -Wl,--as-needed
 
-clean:
-	dh_testdir
-	dh_testroot
-	rm -f build-stamp
-	rm -rf debian/doc_gen
-	[ ! -f Makefile ] || $(MAKE) clean
-	rm -f config.guess config.sub Makefile
-	rm -f CMakeCache.txt cmake_install.cmake
-	rm -rf CMakeFiles
-	rm -f install_manifest.txt include/armadillo_bits/config.hpp examples/Makefile
-	rm -f ArmadilloConfig.cmake ArmadilloConfigVersion.cmake 
-	rm -rf InstallFiles tmp *.o a.out
-	dh_clean  --exclude ./src/include/armadillo_bits/dgemm_proto.hpp.orig
+%:
+	dh $@ --buildsystem=cmake
 
-install: build
-	dh_testdir
-	dh_testroot
-	dh_prep --exclude ./src/include/armadillo_bits/dgemm_proto.hpp.orig
-	dh_installdirs
-	$(MAKE) prefix=$(CURDIR)/debian/tmp/usr install DESTDIR=debian/tmp
-
-binary-arch: build install
-	dh_testdir -a
-	dh_testroot -a
-	dh_installchangelogs -a
-	dh_installdocs -a
-	dh_installexamples -a
-	dh_install -a --sourcedir=debian/tmp
-	mkdir -p debian/libarmadillo-dev/usr/lib/${DEB_HOST_MULTIARCH}/pkgconfig/
-	cp debian/tmp/usr/lib/pkgconfig/armadillo.pc debian/libarmadillo-dev/usr/lib/${DEB_HOST_MULTIARCH}/pkgconfig/
-	dh_installman -a
-	dh_link -a
-	dh_strip -a
-	dh_compress -a -X.cpp
-	dh_fixperms -a
-	dh_makeshlibs -a -V
-	dh_installdeb -a
-	dh_shlibdeps -a
-	dh_gencontrol -a
-	dh_md5sums -a
-	dh_builddeb -a
-
-binary-indep: build install
-# Currently no arch-independent packages
-
-binary: binary-indep binary-arch
-.PHONY: build clean binary-arch binary install
+# dh_make generated override targets
+# This is example for Cmake (See https://bugs.debian.org/641051 )
+override_dh_auto_configure:
+	dh_auto_configure -- \
+	-DCMAKE_INSTALL_INCLUDEDIR=include/$(DEB_HOST_MULTIARCH)


More information about the debian-science-maintainers mailing list