Source: enigma
Version: 1.20-dfsg.1-2.1
Tags: patch upstream
User: helm...@debian.org
Usertags: rebootstrap

enigma fails to cross build from source, because it uses AC_RUN_IFELSE.
The particular uses can be implemented using AC_COMPILE_IFELSE though.
The attached patch does that. I hope that it makes enigma cross build,
but that's difficult to test as enigma does not build from source.
Please consider applying it. Please close this bug when removing
AC_RUN_IFELSE from configure.ac by any means (e.g. new upstream
release).

Helmut
--- enigma-1.20-dfsg.1.orig/configure.ac
+++ enigma-1.20-dfsg.1/configure.ac
@@ -154,14 +154,16 @@
 dnl ---------------------------------------
 if test "$MINGW32" = no; then
   AC_MSG_CHECKING([for SDL_ttf >=2.0.6])
-  AC_RUN_IFELSE([AC_LANG_SOURCE(
+  AC_COMPILE_IFELSE([AC_LANG_SOURCE(
       [[#include <SDL_ttf.h>
-        int main(int argc, char *argv[]) {
-        if (TTF_MAJOR_VERSION < 2)
-          return 1;
-        else if (TTF_MAJOR_VERSION == 2 && TTF_MINOR_VERSION == 0 && TTF_PATCHLEVEL < 6) 
-          return 1;
-        return 0;}]])],
+        #if TTF_MAJOR_VERSION < 2
+	#error too old
+	#else
+	#if TTF_MAJOR_VERSION == 2 && TTF_MINOR_VERSION == 0 && TTF_PATCHLEVEL < 6
+	#error too old
+	#endif
+	#endif
+        ]])],
     [AC_MSG_RESULT([found])],
     [AC_MSG_ERROR([SDL_ttf >= 2.0.6 not found.])])
 fi
@@ -206,12 +208,15 @@
   else
     AC_MSG_RESULT([not found])
     AC_MSG_CHECKING([for old Xerces release >=2.4])
-    AC_RUN_IFELSE([AC_LANG_PROGRAM([[#include <xercesc/util/XercesVersion.hpp>]],
-          [[if (XERCES_VERSION_MAJOR < 2)
-              return 1;
-            else if (XERCES_VERSION_MAJOR == 2 && XERCES_VERSION_MINOR < 4) 
-              return 1;
-            return 0;]])],
+    AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <xercesc/util/XercesVersion.hpp>]],
+          [[#if XERCES_VERSION_MAJOR < 2
+            #error too old
+            #else
+	    #if XERCES_VERSION_MAJOR == 2 && XERCES_VERSION_MINOR < 4
+	    #error too old
+	    #endif
+	    #endif
+            ]])],
         [AC_MSG_RESULT([found])],
         [AC_MSG_ERROR([Xerces >= 2.4 not found.])])
     AC_CHECK_LIB(xerces-c, main,,[AC_MSG_ERROR([xerces is required to compile Enigma])])

Reply via email to