Source: isomaster
Version: 1.3.13-1
Tags: patch
User: [email protected]
Usertags: rebootstrap

isomaster fails to cross build from source, because it uses the build
architecture toolchain. The easiest way of passing cross compilers to
make is using dh_auto_build with the makefile buildsystem. In this case,
some build steps are performed during make install. So it actually is
easier to use dpkg's buildtools.mk. Then the upstream build system hard
codes pkg-config. After fixing all of that, isomaster cross builds
successfully. Please consider applying the attached patch.

Helmut
diff --minimal -Nru isomaster-1.3.13/debian/changelog 
isomaster-1.3.13/debian/changelog
--- isomaster-1.3.13/debian/changelog   2016-01-03 17:05:45.000000000 +0100
+++ isomaster-1.3.13/debian/changelog   2018-06-09 07:55:01.000000000 +0200
@@ -1,3 +1,12 @@
+isomaster (1.3.13-1.1) UNRELEASED; urgency=medium
+
+  * Non-maintainer upload.
+  * Fix FTCBFS: (Closes: #-1)
+    + cross.patch: Make pkg-config substitutable.
+    + Let dpkg's buildtools.mk supply cross tool environment variables.
+
+ -- Helmut Grohne <[email protected]>  Sat, 09 Jun 2018 07:55:01 +0200
+
 isomaster (1.3.13-1) unstable; urgency=low
 
   * New upstream release (Closes: #795377)
diff --minimal -Nru isomaster-1.3.13/debian/patches/cross.patch 
isomaster-1.3.13/debian/patches/cross.patch
--- isomaster-1.3.13/debian/patches/cross.patch 1970-01-01 01:00:00.000000000 
+0100
+++ isomaster-1.3.13/debian/patches/cross.patch 2018-06-09 07:55:01.000000000 
+0200
@@ -0,0 +1,28 @@
+--- isomaster-1.3.13.orig/Makefile
++++ isomaster-1.3.13/Makefile
+@@ -47,11 +47,12 @@
+ export INSTALL ?= install
+ export CP      ?= cp
+ export ECHO    ?= echo
++export PKG_CONFIG ?= pkg-config
+ 
+ VERSION = 1.3.13
+ 
+ # -DDEBUG and -g only used during development
+-CFLAGS += -Wall -pedantic -std=gnu99 -Wundef -Wcast-align -W -Wpointer-arith 
-Wwrite-strings -Wno-unused-parameter `pkg-config --cflags gtk+-2.0`
++CFLAGS += -Wall -pedantic -std=gnu99 -Wundef -Wcast-align -W -Wpointer-arith 
-Wwrite-strings -Wno-unused-parameter `$(PKG_CONFIG) --cflags gtk+-2.0`
+ ifndef WITHOUT_NLS
+       CFLAGS += -DENABLE_NLS
+ endif
+@@ -72,9 +73,9 @@
+ isomaster: $(OBJECTS) lib iniparser
+       @echo 'Linking isomaster'
+ ifndef USE_SYSTEM_INIPARSER
+-      $(CC) $(LDFLAGS) $(OBJECTS) bk/bk.a iniparser-2.17/libiniparser.a -o 
isomaster `pkg-config --libs gtk+-2.0`
++      $(CC) $(LDFLAGS) $(OBJECTS) bk/bk.a iniparser-2.17/libiniparser.a -o 
isomaster `$(PKG_CONFIG) --libs gtk+-2.0`
+ else
+-      $(CC) $(LDFLAGS) $(OBJECTS) bk/bk.a -liniparser -o isomaster 
`pkg-config --libs gtk+-2.0`
++      $(CC) $(LDFLAGS) $(OBJECTS) bk/bk.a -liniparser -o isomaster 
`$(PKG_CONFIG) --libs gtk+-2.0`
+ endif
+ 
+ # static pattern rule
diff --minimal -Nru isomaster-1.3.13/debian/patches/series 
isomaster-1.3.13/debian/patches/series
--- isomaster-1.3.13/debian/patches/series      2016-01-03 16:21:36.000000000 
+0100
+++ isomaster-1.3.13/debian/patches/series      2018-06-09 07:55:01.000000000 
+0200
@@ -3,3 +3,4 @@
 desktopfile.diff
 gpl-path.diff
 tidybkdoc.diff
+cross.patch
diff --minimal -Nru isomaster-1.3.13/debian/rules isomaster-1.3.13/debian/rules
--- isomaster-1.3.13/debian/rules       2016-01-03 16:44:40.000000000 +0100
+++ isomaster-1.3.13/debian/rules       2018-06-09 07:55:01.000000000 +0200
@@ -1,7 +1,9 @@
 #!/usr/bin/make -f
 export PREFIX=/usr
 DPKG_EXPORT_BUILDFLAGS = 1
+DPKG_EXPORT_BUILDTOOLS = 1
 include /usr/share/dpkg/default.mk
+-include /usr/share/dpkg/buildtools.mk
 export DEB_BUILD_MAINT_OPTIONS = hardening=+all
 
 %:

Reply via email to