Source: le Version: 1.16.5-0.1 Tags: patch upstream User: debian-cr...@lists.debian.org Usertags: ftcbfs
le fails to cross build from source, because it uses AC_RUN_IFELSE to figure out what ncurses' bool type actually is. Fortunately, all that we know can be determined using compile test bisection (AC_RUN_IFELSE/AC_CHECK_SIZEOF). Please consider applying the attached patch to make le cross buildable. Helmut
--- le-1.16.5.orig/acinclude.m4 +++ le-1.16.5/acinclude.m4 @@ -250,35 +250,33 @@ old_CFLAGS="$CFLAGS" LIBS="$LIBS $CURSES_LIBS" CFLAGS="$CFLAGS $CURSES_INCLUDES" - AC_RUN_IFELSE([AC_LANG_SOURCE([[ + AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[ #ifdef USE_NCURSES_H # include <ncurses.h> #else # include <curses.h> #endif - int main() - { - FILE *fp = fopen("cf_test.out", "w"); - if (fp != 0) { - bool x = TRUE; - if ((-x) >= 0) - fputs("unsigned ", fp); - if (sizeof(x) == sizeof(int)) fputs("int", fp); - else if (sizeof(x) == sizeof(char)) fputs("char", fp); - else if (sizeof(x) == sizeof(short))fputs("short",fp); - else if (sizeof(x) == sizeof(long)) fputs("long", fp); - else fputs("unknown",fp); - fclose(fp); - } - return(0); - } - ]])],[ac_cv_curses_bool="`cat cf_test.out`" - case "$ac_cv_curses_bool" in - *unknown*) ac_cv_curses_bool=unknown;; - esac - ],[ac_cv_curses_bool=unknown - ac_cv_curses_bool=unknown],[]) - rm -f cf_test.out + ]],[[bool x = TRUE; int check[(-x) >= 0 ? 1 : -1];]])],[bool_sign=unsigned],[bool_sign=signed]) + AC_CHECK_SIZEOF([bool],,[ + #ifdef USE_NCURSES_H + # include <ncurses.h> + #else + # include <curses.h> + #endif + ]) + AC_CHECK_SIZEOF([int]) + AC_CHECK_SIZEOF([char]) + AC_CHECK_SIZEOF([short]) + AC_CHECK_SIZEOF([long]) + AS_IF([test "$ac_cv_sizeof_bool" = "$ac_cv_sizeof_int"], + [ac_cv_curses_bool="$bool_sign int"], + [test "$ac_cv_curses_bool" = "$ac_cv_curses_char"], + [ac_cv_curses_bool="$bool_sign char"], + [test "$ac_cv_curses_bool" = "$ac_cv_curses_short"], + [ac_cv_curses_bool="$bool_sign short"], + [test "$ac_cv_curses_bool" = "$ac_cv_curses_long"], + [ac_cv_curses_bool="$bool_sign long"], + [ac_cv_curses_bool=unknown]) LIBS="$old_LIBS" CFLAGS="$old_CFLAGS" ])