Source: spacenavd Version: 1.2-3 Tags: patch upstream User: [email protected] Usertags: ftcbfs
spacenavd fails to cross build from source, because it hard codes the build architecture compiler. It comes with a configure script. The most common way to communicate the architecture to a configure script is the --host option, but this configure script does not understand this option. I propose doing something weaker. The configure script could consume a CC environment variable or a --cc=... flag and use that value as compiler. Then, it also has to write it to the generated Makefile. Once doing so (and instructing debian/rules to pass a useful value), spacenavd just cross builds. Please propose this patch upstream as it will also benefit building spacenavd on other cross distributions such as Yocto or PtxDist. Helmut
diff --minimal -Nru spacenavd-1.2/debian/changelog spacenavd-1.2/debian/changelog --- spacenavd-1.2/debian/changelog 2024-06-02 04:56:00.000000000 +0200 +++ spacenavd-1.2/debian/changelog 2024-07-30 15:01:02.000000000 +0200 @@ -1,3 +1,10 @@ +spacenavd (1.2-3.1) UNRELEASED; urgency=medium + + * Non-maintainer upload. + * Fix FTCBFS: Allow passing a compiler to configure. (Closes: #-1) + + -- Helmut Grohne <[email protected]> Tue, 30 Jul 2024 15:01:02 +0200 + spacenavd (1.2-3) unstable; urgency=medium * Team upload. diff --minimal -Nru spacenavd-1.2/debian/patches/cross.patch spacenavd-1.2/debian/patches/cross.patch --- spacenavd-1.2/debian/patches/cross.patch 1970-01-01 01:00:00.000000000 +0100 +++ spacenavd-1.2/debian/patches/cross.patch 2024-07-30 15:01:02.000000000 +0200 @@ -0,0 +1,47 @@ +--- spacenavd-1.2.orig/Makefile.in ++++ spacenavd-1.2/Makefile.in +@@ -7,7 +7,6 @@ + + warn = -pedantic -Wall + +-CC ?= gcc + CFLAGS = $(warn) $(dbg) $(opt) -fno-strict-aliasing -fcommon \ + -I$(srcdir)/src -I/usr/local/include -MMD $(add_cflags) \ + `dpkg-buildflags --get CFLAGS` `dpkg-buildflags --get CPPFLAGS` +--- spacenavd-1.2.orig/configure ++++ spacenavd-1.2/configure +@@ -28,7 +28,7 @@ + check_header() { + printf "Looking for header: $1 ... " >&2 + echo "#include <$1>" >.chkhdr.c +- if cpp -I/usr/local/include .chkhdr.c >/dev/null 2>&1; then ++ if $CC -E -I/usr/local/include .chkhdr.c >/dev/null 2>&1; then + echo found >&2 + echo "#define HAVE_`basename $1 | tr '[:lower:]' '[:upper:]' | sed 's/\./_/g'`" + else +@@ -46,6 +46,7 @@ + XINPUT=yes + VER=1.2 + CFGDIR=/etc ++: "${CC:=gcc}" + + if [ -z "$VER" ]; then + VER=`git rev-parse --short HEAD` +@@ -88,6 +89,9 @@ + value=`echo $arg | sed 's/--cfgdir=//'` + CFGDIR=${value:-$cfgdir} + ;; ++ --cc=*) ++ CC=${arg#--cc=} ++ ;; + + --enable-opt) + OPT=yes;; +@@ -159,6 +163,7 @@ + echo "PREFIX = $PREFIX" >Makefile + echo "srcdir = $srcdir" >>Makefile + echo "ver = $VER" >>Makefile ++echo "CC = $CC" >>Makefile + + if [ "$DBG" = 'yes' ]; then + echo 'dbg = -g' >>Makefile diff --minimal -Nru spacenavd-1.2/debian/patches/series spacenavd-1.2/debian/patches/series --- spacenavd-1.2/debian/patches/series 2024-06-02 04:55:47.000000000 +0200 +++ spacenavd-1.2/debian/patches/series 2024-07-30 14:57:59.000000000 +0200 @@ -2,3 +2,4 @@ 0002-Use-run-instead-of-var-run.patch 0003-Sort-object-files-for-deterministic-linking.patch 0004-Do-not-use-time-field-of-input_event.patch +cross.patch diff --minimal -Nru spacenavd-1.2/debian/rules spacenavd-1.2/debian/rules --- spacenavd-1.2/debian/rules 2024-06-01 18:44:25.000000000 +0200 +++ spacenavd-1.2/debian/rules 2024-07-30 15:01:02.000000000 +0200 @@ -5,6 +5,8 @@ #export DH_VERBOSE=1 export DEB_BUILD_MAINT_OPTIONS = hardening=+all +DPKG_EXPORT_BUILDTOOLS = 1 +include /usr/share/dpkg/buildtools.mk DPKG_EXPORT_BUILDFLAGS = 1 include /usr/share/dpkg/buildflags.mk
-- debian-science-maintainers mailing list [email protected] https://alioth-lists.debian.net/cgi-bin/mailman/listinfo/debian-science-maintainers
