Source: ngraph-gtk
Version: 6.09.05-1
Tags: patch
User: [email protected]
Usertags: ftcbfs

ngraph-gtk fails to cross build from source for multiple reasons. The
immediate failure is due to using AC_CHECK_FILE. That macro is meant to
check for files on the host system, but it is being used for a build
system path. Please use test -e instead. Beyond that running the host
architecture ruby fails. While the host architecture ruby development
files are correctly dependend upon, the interpreter should be pulled
with a :native or :any annotation. The attached patch fixes all of the
above, but it does not make ngraph-gtk cross buildable. Please close
this bug anyway when addressing the issues above.

Beyond that, creating ngraph-math.lang fails, because it needs to run
the built ngraph-gtk. That's not easily fixable. Options:
 * Move that file to an Architecture: all package and skip building it
   in an arch-only build.
 * Include the generated ngraph-math.lang in the source package and
   build it at upload time.
 * Build-Depend on ngraph-gtk and run the system instance for creating
   the file.

None of these options are particularly attractive. I'm not sure they're
worth pursuing. In the mean time, the other issues have obvious fixes.

Helmut
--- ngraph-gtk-6.09.05/debian/changelog
+++ ngraph-gtk-6.09.05/debian/changelog
@@ -1,3 +1,12 @@
+ngraph-gtk (6.09.05-1.1) UNRELEASED; urgency=medium
+
+  * Non-maintainer upload.
+  * Improv cross building: (Closes: #-1)
+    + Annotate ruby interpreter dependency with :native.
+    + Do not abuse AC_CHECK_FILE for build system files.
+
+ -- Helmut Grohne <[email protected]>  Wed, 26 Jan 2022 19:30:27 +0100
+
 ngraph-gtk (6.09.05-1) unstable; urgency=medium
 
   * New upstream release
--- ngraph-gtk-6.09.05/debian/control
+++ ngraph-gtk-6.09.05/debian/control
@@ -2,7 +2,7 @@
 Section: graphics
 Priority: optional
 Maintainer: Hiroyuki Ito <[email protected]>
-Build-Depends: debhelper (>= 12.0.0), debhelper-compat (= 13), libgtk-3-dev, 
libgsl-dev, libreadline-dev, ruby (>= 1:2.0.0), ruby-dev (>= 1:2.0.0), 
libgtksourceview-4-dev
+Build-Depends: debhelper (>= 12.0.0), debhelper-compat (= 13), libgtk-3-dev, 
libgsl-dev, libreadline-dev, ruby:native (>= 1:2.0.0), ruby-dev (>= 1:2.0.0), 
libgtksourceview-4-dev
 Rules-Requires-Root: no
 Standards-Version: 4.6.0
 Vcs-Git: https://salsa.debian.org/hito-guest/ngraph-gtk/
--- ngraph-gtk-6.09.05/debian/patches/cross.patch
+++ ngraph-gtk-6.09.05/debian/patches/cross.patch
@@ -0,0 +1,11 @@
+--- ngraph-gtk-6.09.05.orig/configure.ac
++++ ngraph-gtk-6.09.05/configure.ac
+@@ -88,7 +88,7 @@
+ AC_CHECK_PROG(RUBY, ruby, yes, no)
+ if test $RUBY = yes; then
+     [ruby_incrudedir=`ruby -e 'puts(RbConfig::CONFIG["rubyhdrdir"])'`]
+-    AC_CHECK_FILE($ruby_incrudedir/ruby.h, [have_ruby_dev=yes])
++    AS_IF([test -e "$ruby_incrudedir/ruby.h"], [have_ruby_dev=yes])
+     [RUBY_DLEXT=`ruby -e 'puts(RbConfig::CONFIG["DLEXT"])'`]
+     AC_SUBST(RUBY_DLEXT)
+ fi
--- ngraph-gtk-6.09.05/debian/patches/series
+++ ngraph-gtk-6.09.05/debian/patches/series
@@ -0,0 +1 @@
+cross.patch

Reply via email to