Source: autogen
Version: 1:5.18.16-2
Severity: important
Tags: patch upstream
User: debian-cr...@lists.debian.org
Usertags: ftcbfs

autogen fails to cross build from source. It used to build previously
and this is important for cross bootstrapping Debian architectures.

1. config/ag_macros.m4 lacks a crucial comma in an application of
   AC_RUN_IFELSE. This causes arguments to be shifted. With the bug,
   presence of strcspn is misdetected everywhere and for cross
   compilation, the build simply fails.

2. build-aux/run-ag.sh hard codes some path for AGexe, which makes the
   build unable to find a working autogen.

3. The relevant callers of run-ag.sh fail to pass the corret AGexe.

Please consider applying the attached patch.

Helmut
--- autogen-5.18.16.orig/config/ag_macros.m4
+++ autogen-5.18.16/config/ag_macros.m4
@@ -428,7 +428,7 @@
    char zRej@<:@@:>@ = reject;
    char zAcc@<:@@:>@ = "a-ok-eject";
    return strcspn( zAcc, zRej ) - 5;
-}] )]
+}] )],
     [ag_cv_run_strcspn=yes],[ag_cv_run_strcspn=no],[ag_cv_run_strcspn=no]
   ) # end of RUN_IFELSE
   ]) # end of AC_CACHE_VAL for ag_cv_run_strcspn
--- autogen-5.18.16.orig/build-aux/run-ag.sh
+++ autogen-5.18.16/build-aux/run-ag.sh
@@ -25,7 +25,6 @@
 # any containing directory must be created. The target is created with a
 # very old time stamp.
 #
-AGexe=/u/bkorb/tools/ag/autogen-bld/agen5/.libs/autogen
 find_exe() {
   eval local exe=\${$1}
   test -x "$exe" && return 0
--- autogen-5.18.16.orig/getdefs/Makefile.am
+++ autogen-5.18.16/getdefs/Makefile.am
@@ -32,7 +32,7 @@
 SUBDIRS         = test
 EXTRA_DIST      = opts.def $(gdsrcs)
 AG_ENV          =  top_builddir="$(top_builddir)" top_srcdir="$(top_srcdir)" \
-	VERBOSE="$(V)"
+	VERBOSE="$(V)" AGexe="$(AGexe)"
 RUN_AG          = $(AG_ENV) $(SHELL) "${top_srcdir}/build-aux/run-ag.sh"
 
 all : gen
--- autogen-5.18.16.orig/xml2ag/Makefile.am
+++ autogen-5.18.16/xml2ag/Makefile.am
@@ -37,7 +37,7 @@
 AM_CPPFLAGS     = @INCLIST@ $(LIBXML2_CFLAGS)
 AM_CFLAGS       = @WARN_CFLAGS@
 AG_ENV          =  top_builddir="$(top_builddir)" top_srcdir="$(top_srcdir)" \
-	VERBOSE="$(V)"
+	VERBOSE="$(V)" AGexe="$(AGexe)"
 RUN_AG       = $(AG_ENV) $(SHELL) "${top_srcdir}/build-aux/run-ag.sh"
 DOC_TIMEOUT     = -DLEVEL=section --timeout=`expr $(AG_TIMEOUT) '*' 3`
 

Reply via email to