From 4dd9370e7ef5f44033ded839ffda94bf74fee3b9 Mon Sep 17 00:00:00 2001 From: Gard Spreemann Date: Thu, 23 Apr 2020 17:37:10 +0200 Subject: Simplify rules in order not to need dh-exec. --- debian/changelog | 3 ++- debian/compat | 2 +- debian/control | 2 +- debian/liblbfgsb-dev.install | 4 --- debian/liblbfgsb0.install | 4 --- debian/rules | 61 +++++++++++++++++++++++++++----------------- 6 files changed, 41 insertions(+), 35 deletions(-) mode change 100755 => 100644 debian/liblbfgsb-dev.install mode change 100755 => 100644 debian/liblbfgsb0.install diff --git a/debian/changelog b/debian/changelog index f3eca83..15ce2a3 100644 --- a/debian/changelog +++ b/debian/changelog @@ -3,8 +3,9 @@ lbfgsb (3.0+dfsg.3-8) UNRELEASED; urgency=medium * Relax compilation flags for tests to allow them to run on more architectures. * Standards-version 4.5.0. No changes needed. + * Avoid build-depending on dh-exec, requires dh 13. - -- Gard Spreemann Thu, 09 Apr 2020 13:02:08 +0200 + -- Gard Spreemann Thu, 23 Apr 2020 23:21:49 +0200 lbfgsb (3.0+dfsg.3-7) unstable; urgency=medium diff --git a/debian/compat b/debian/compat index 48082f7..b1bd38b 100644 --- a/debian/compat +++ b/debian/compat @@ -1 +1 @@ -12 +13 diff --git a/debian/control b/debian/control index 562d4c8..7c817b4 100644 --- a/debian/control +++ b/debian/control @@ -3,7 +3,7 @@ Maintainer: Gard Spreemann Section: math Priority: optional Standards-Version: 4.5.0 -Build-Depends: debhelper (>= 12), dh-exec, gfortran, libblas-dev, liblapack-dev +Build-Depends: debhelper (>= 13), gfortran, libblas-dev, liblapack-dev Rules-Requires-Root: no Homepage: http://users.iems.northwestern.edu/~nocedal/lbfgsb.html Vcs-Browser: https://git.nonempty.org/debian-lbfgsb diff --git a/debian/liblbfgsb-dev.install b/debian/liblbfgsb-dev.install old mode 100755 new mode 100644 index 15ec573..2d2db83 --- a/debian/liblbfgsb-dev.install +++ b/debian/liblbfgsb-dev.install @@ -1,6 +1,2 @@ -#!/usr/bin/dh-exec -# We need a dynamic .install file for Multi-Arch. -# See https://wiki.debian.org/Multiarch/Implementation - build/liblbfgsb.so usr/lib/${DEB_HOST_MULTIARCH}/ build/liblbfgsb.a usr/lib/${DEB_HOST_MULTIARCH}/ diff --git a/debian/liblbfgsb0.install b/debian/liblbfgsb0.install old mode 100755 new mode 100644 index 68cdc0a..0d8cfeb --- a/debian/liblbfgsb0.install +++ b/debian/liblbfgsb0.install @@ -1,5 +1 @@ -#!/usr/bin/dh-exec -# We need a dynamic .install file for Multi-Arch. -# See https://wiki.debian.org/Multiarch/Implementation - build/liblbfgsb.so.0 usr/lib/${DEB_HOST_MULTIARCH}/ diff --git a/debian/rules b/debian/rules index 043b897..60d2ed6 100755 --- a/debian/rules +++ b/debian/rules @@ -16,32 +16,45 @@ LDFLAGS_EX:=$(shell DEB_BUILD_MAINT_OPTIONS=$(MAINTOPTS_EX) dpkg-buildflags --ge %: dh $@ -override_dh_auto_build: - mkdir -p build - gfortran $(FCFLAGS) -fPIC -o build/lbfgsb.o -c lbfgsb.f - gfortran $(FCFLAGS) -fPIC -o build/timer.o -c timer.f +build/%.o: %.f + gfortran $(FCFLAGS) -fPIC -o $@ -c $< + +build/liblbfgsb.so: build/lbfgsb.o build/timer.o gfortran $(FCFLAGS) -shared $(LDFLAGS) -Wl,-soname,$(SONAME) \ - -o build/$(SONAME) build/lbfgsb.o build/timer.o \ - -lblas -llapack - ar cr build/liblbfgsb.a build/lbfgsb.o build/timer.o - ln -s $(SONAME) build/liblbfgsb.so - - gfortran $(FCFLAGS_EX) $(LDFLAGS_EX) \ - -o build/lbfgsb-examples_driver1_77 driver1.f -llbfgsb -Lbuild - gfortran $(FCFLAGS_EX) $(LDFLAGS_EX) \ - -o build/lbfgsb-examples_driver1_90 driver1.f90 -llbfgsb -Lbuild - gfortran $(FCFLAGS_EX) $(LDFLAGS_EX) \ - -o build/lbfgsb-examples_driver2_77 driver2.f -llbfgsb -Lbuild - gfortran $(FCFLAGS_EX) $(LDFLAGS_EX) \ - -o build/lbfgsb-examples_driver2_90 driver2.f90 -llbfgsb -Lbuild - gfortran $(FCFLAGS_EX) $(LDFLAGS_EX) \ - -o build/lbfgsb-examples_driver3_77 driver3.f -llbfgsb -Lbuild - gfortran $(FCFLAGS_EX) $(LDFLAGS_EX) \ - -o build/lbfgsb-examples_driver3_90 driver3.f90 -llbfgsb -Lbuild - -override_dh_auto_clean: + -o build/$(SONAME) $^ -lblas -llapack + ln -s $(SONAME) $@ + +build/liblbfgsb.a: build/lbfgsb.o build/timer.o + ar cr $@ $^ + +build/lbfgsb-examples_driver1_77: driver1.f build/liblbfgsb.so + gfortran $(FCFLAGS_EX) $(LDFLAGS_EX) -o $@ $< -llbfgsb -Lbuild + +build/lbfgsb-examples_driver1_90: driver1.f90 build/liblbfgsb.so + gfortran $(FCFLAGS_EX) $(LDFLAGS_EX) -o $@ $< -llbfgsb -Lbuild + +build/lbfgsb-examples_driver2_77: driver2.f build/liblbfgsb.so + gfortran $(FCFLAGS_EX) $(LDFLAGS_EX) -o $@ $< -llbfgsb -Lbuild + +build/lbfgsb-examples_driver2_90: driver2.f90 build/liblbfgsb.so + gfortran $(FCFLAGS_EX) $(LDFLAGS_EX) -o $@ $< -llbfgsb -Lbuild + +build/lbfgsb-examples_driver3_77: driver3.f build/liblbfgsb.so + gfortran $(FCFLAGS_EX) $(LDFLAGS_EX) -o $@ $< -llbfgsb -Lbuild + +build/lbfgsb-examples_driver3_90: driver3.f90 build/liblbfgsb.so + gfortran $(FCFLAGS_EX) $(LDFLAGS_EX) -o $@ $< -llbfgsb -Lbuild + +execute_before_dh_auto_build: + mkdir -p build + +override_dh_auto_build: build/liblbfgsb.so build/liblbfgsb.a \ + build/lbfgsb-examples_driver1_77 build/lbfgsb-examples_driver1_90 \ + build/lbfgsb-examples_driver2_77 build/lbfgsb-examples_driver2_90 \ + build/lbfgsb-examples_driver3_77 build/lbfgsb-examples_driver3_90 + +execute_before_dh_auto_clean: rm -rf build - dh_auto_clean override_dh_compress: dh_compress -X.pdf -X.f -X.f90 -Xoutput_ -- cgit v1.2.3