<URL: http://bugs.freeciv.org/Ticket/Display.html?id=40134 >
2008/3/8 Marko Lindqvist: > > ggz.m4 sets hardcoded include & library paths to CFLAGS & LDFLAGS. > This causes native headers to be used instead of cross-compiler ones. Actually, this might be problem only when target has *no* ggz. If it does, one just have to give correct --with-ggz-dir -option. Attached patch makes it possible to turn off ggz.m4 path modifications completely with --without-ggz-dir. Reindentation causes patch to look much more complex than it actually is. Only real change to AC_GGZ_INIT is addition of line "if test "x$ac_ggz_prefix" != "xno" ; then" and respective "fi". Jason: You may want to take something like this to upstream ggz.m4. - ML
diff -Nurd -X.diff_ignore freeciv/m4/ggz.m4 freeciv/m4/ggz.m4 --- freeciv/m4/ggz.m4 2008-04-23 00:49:10.000000000 +0300 +++ freeciv/m4/ggz.m4 2008-05-03 18:20:58.000000000 +0300 @@ -52,8 +52,9 @@ dnl AC_GGZ_REMOVEDUPS - eliminate duplicate list elements dnl -# Version number of this script -# serial 0014 +# Version number of this script. +# First part is upstream (ggz) version and second Freeciv modifications. +# serial 0014.1 dnl ------------------------------------------------------------------------ dnl Find a directory containing a single file @@ -138,62 +139,63 @@ [ ac_ggz_prefix="$withval" ]) -if test "x${prefix}" = "xNONE"; then - ac_ggz_prefix_incdir="${ac_default_prefix}/include" - ac_ggz_prefix_libdir="${ac_default_prefix}/lib" - ac_ggz_prefix_bindir="${ac_default_prefix}/bin" - ac_ggz_prefix_etcdir="${ac_default_prefix}/etc" -else - unq_includedir="${includedir}" - unq_libdir="${libdir}" - unq_bindir="${bindir}" - unq_sysconfdir="${sysconfdir}" +if test "x$ac_ggz_prefix" != "xno" ; then + if test "x${prefix}" = "xNONE"; then + ac_ggz_prefix_incdir="${ac_default_prefix}/include" + ac_ggz_prefix_libdir="${ac_default_prefix}/lib" + ac_ggz_prefix_bindir="${ac_default_prefix}/bin" + ac_ggz_prefix_etcdir="${ac_default_prefix}/etc" + else + unq_includedir="${includedir}" + unq_libdir="${libdir}" + unq_bindir="${bindir}" + unq_sysconfdir="${sysconfdir}" - eval unq_includedir=`echo $unq_includedir` - eval unq_includedir=`echo $unq_includedir` - eval unq_libdir=`echo $unq_libdir` - eval unq_libdir=`echo $unq_libdir` - eval unq_bindir=`echo $unq_bindir` - eval unq_bindir=`echo $unq_bindir` - eval unq_sysconfdir=`echo $unq_sysconfdir` - eval unq_sysconfdir=`echo $unq_sysconfdir` + eval unq_includedir=`echo $unq_includedir` + eval unq_includedir=`echo $unq_includedir` + eval unq_libdir=`echo $unq_libdir` + eval unq_libdir=`echo $unq_libdir` + eval unq_bindir=`echo $unq_bindir` + eval unq_bindir=`echo $unq_bindir` + eval unq_sysconfdir=`echo $unq_sysconfdir` + eval unq_sysconfdir=`echo $unq_sysconfdir` - ac_ggz_prefix_incdir="${unq_includedir}" - ac_ggz_prefix_libdir="${unq_libdir}" - ac_ggz_prefix_bindir="${unq_bindir}" - ac_ggz_prefix_etcdir="${unq_sysconfdir}" -fi -ac_ggz_stdinc="$ac_ggz_prefix_incdir" -ac_ggz_stdlib="$ac_ggz_prefix_libdir" -ac_ggz_stdbin="$ac_ggz_prefix_bindir" -ac_ggz_stdetc="$ac_ggz_prefix_etcdir/ggzd" -if test "x$ac_ggz_prefix" != "x"; then - ac_ggz_stdinc="$ac_ggz_stdinc $ac_ggz_prefix/include" - ac_ggz_stdlib="$ac_ggz_stdlib $ac_ggz_prefix/lib $ac_ggz_prefix/lib64" - ac_ggz_stdbin="$ac_ggz_stdbin $ac_ggz_prefix/bin" - ac_ggz_stdetc="$ac_ggz_stdetc $ac_ggz_prefix/etc/ggzd" -fi -if test "x$1" = "xdefaults" || test "x$2" = "xdefaults"; then - ac_ggz_stdinc="$ac_ggz_stdinc /usr/local/include /usr/include" - ac_ggz_stdlib="$ac_ggz_stdlib /usr/local/lib /usr/local/lib64 /usr/lib /usr/lib64" - ac_ggz_stdbin="$ac_ggz_stdbin /usr/local/bin /usr/bin" - ac_ggz_stdetc="$ac_ggz_stdetc /usr/local/etc/ggzd /etc/ggzd" -fi -if test "x$1" = "xexport" || test "x$2" = "xexport"; then - CPPFLAGS="$CPPFLAGS -I ${ac_ggz_prefix_incdir} -I /usr/local/include" - LDFLAGS="$LDFLAGS -L${ac_ggz_prefix_libdir} -L/usr/local/lib" -fi + ac_ggz_prefix_incdir="${unq_includedir}" + ac_ggz_prefix_libdir="${unq_libdir}" + ac_ggz_prefix_bindir="${unq_bindir}" + ac_ggz_prefix_etcdir="${unq_sysconfdir}" + fi + ac_ggz_stdinc="$ac_ggz_prefix_incdir" + ac_ggz_stdlib="$ac_ggz_prefix_libdir" + ac_ggz_stdbin="$ac_ggz_prefix_bindir" + ac_ggz_stdetc="$ac_ggz_prefix_etcdir/ggzd" + if test "x$ac_ggz_prefix" != "x"; then + ac_ggz_stdinc="$ac_ggz_stdinc $ac_ggz_prefix/include" + ac_ggz_stdlib="$ac_ggz_stdlib $ac_ggz_prefix/lib $ac_ggz_prefix/lib64" + ac_ggz_stdbin="$ac_ggz_stdbin $ac_ggz_prefix/bin" + ac_ggz_stdetc="$ac_ggz_stdetc $ac_ggz_prefix/etc/ggzd" + fi + if test "x$1" = "xdefaults" || test "x$2" = "xdefaults"; then + ac_ggz_stdinc="$ac_ggz_stdinc /usr/local/include /usr/include" + ac_ggz_stdlib="$ac_ggz_stdlib /usr/local/lib /usr/local/lib64 /usr/lib /usr/lib64" + ac_ggz_stdbin="$ac_ggz_stdbin /usr/local/bin /usr/bin" + ac_ggz_stdetc="$ac_ggz_stdetc /usr/local/etc/ggzd /etc/ggzd" + fi + if test "x$1" = "xexport" || test "x$2" = "xexport"; then + CPPFLAGS="$CPPFLAGS -I ${ac_ggz_prefix_incdir} -I /usr/local/include" + LDFLAGS="$LDFLAGS -L${ac_ggz_prefix_libdir} -L/usr/local/lib" + fi -save_cflags=$CFLAGS -save_cxxflags=$CXXFLAGS -if test "x$GCC" = xyes; then + save_cflags=$CFLAGS + save_cxxflags=$CXXFLAGS + if test "x$GCC" = xyes; then CFLAGS="-Wall -Werror" AC_COMPILE_IFELSE([AC_LANG_PROGRAM( [[void signedness(void){char c;if(c==-1)c=0;}]])], [], [save_cflags="$save_cflags -fsigned-char" save_cxxflags="$save_cxxflags -fsigned-char"]) -else + else AC_COMPILE_IFELSE([AC_LANG_PROGRAM( [[#if defined(__SUNPRO_C) || (__SUNPRO_C >= 0x550) #else @@ -203,9 +205,10 @@ save_cxxflags="$save_cxxflags -xchar=signed"], []) + fi + CFLAGS=$save_cflags + CXXFLAGS=$save_cxxflags fi -CFLAGS=$save_cflags -CXXFLAGS=$save_cxxflags ]) dnl ------------------------------------------------------------------------ @@ -1042,7 +1045,12 @@ AC_DEFUN([AC_GGZ_CHECK], [ AC_GGZ_INIT([defaults]) - AC_GGZ_LIBGGZ([try_ggz="yes"], [try_ggz="no"]) + + if test x$ac_ggz_prefix != xno ; then + AC_GGZ_LIBGGZ([try_ggz="yes"], [try_ggz="no"]) + else + try_ggz=no + fi if test "$try_ggz" = "yes"; then # For now, version 0.0.14 is required. This could be an additional
_______________________________________________ Freeciv-dev mailing list Freeciv-dev@gna.org https://mail.gna.org/listinfo/freeciv-dev