<URL: http://bugs.freeciv.org/Ticket/Display.html?id=40242 >
2008/5/13 Marko Lindqvist: > > Checks for libpng are not working too well with some modern environments > > Attached patch improves situation: > 1) Using pkg-config to detect libpng > 2) If (1) fails, use old method, but prefer libpng12 over obsoleted name > libpng > 3) Avoid adding unnecessary (duplicate) flags to LDFLAGS This version contains only the essential part of the patch - changes to configure.ac are not really related and the version sent earlier even broke some compilations. - ML
diff -Nurd -X.diff_ignore freeciv/m4/win32-client.m4 freeciv/m4/win32-client.m4 --- freeciv/m4/win32-client.m4 2007-03-05 19:13:41.000000000 +0200 +++ freeciv/m4/win32-client.m4 2008-05-15 01:10:11.000000000 +0300 @@ -7,33 +7,42 @@ [ if test "$client" = "win32" || test "$client" = "yes" ; then if test "$MINGW32" = "yes"; then - AC_CHECK_LIB([z], [gzgets], + PKG_CHECK_MODULES([PNG], [libpng], + [ + CLIENT_LIBS="-lwsock32 -lcomctl32 -mwindows $PNG_LIBS" + CLIENT_CFLAGS="$PNG_CFLAGS" + ], + [ + AC_CHECK_LIB([z], [gzgets], [ AC_CHECK_HEADER([zlib.h], + [ + AC_CHECK_LIB([png12], [png_read_image],, [ - AC_CHECK_LIB([png], [png_read_image], - [ - AC_CHECK_HEADER([png.h], - [ - found_client=yes - client=win32 - CLIENT_LIBS="-lwsock32 -lcomctl32 -lpng -lz -mwindows" - ], - [ - FC_NO_CLIENT([win32], [libpng-dev is needed]) - ]) - ], - [ - FC_NO_CLIENT([win32], [libpng is needed]) - ], [-lz]) + AC_CHECK_LIB([png], [png_read_image],, + [ + FC_NO_CLIENT([win32], [libpng is needed]) + ]) + ]) + + AC_CHECK_HEADER([png.h], + [ + found_client=yes + client=win32 + CLIENT_LIBS="-lwsock32 -lcomctl32 -lpng -mwindows" ], [ - FC_NO_CLIENT([win32], [zlib-dev is needed]) + FC_NO_CLIENT([win32], [libpng-dev is needed]) ]) + ], + [ + FC_NO_CLIENT([win32], [zlib-dev is needed]) + ]) ], [ FC_NO_CLIENT([win32], [zlib is needed]) ]) + ]) else FC_NO_CLIENT([win32], [mingw32 is needed]) fi diff -Nurd -X.diff_ignore freeciv/m4/xaw-client.m4 freeciv/m4/xaw-client.m4 --- freeciv/m4/xaw-client.m4 2007-03-05 19:13:41.000000000 +0200 +++ freeciv/m4/xaw-client.m4 2008-05-15 01:10:11.000000000 +0300 @@ -22,11 +22,25 @@ fi dnl Check for libpng - AC_CHECK_LIB(png, png_read_image, [X_LIBS="$X_LIBS -lpng -lm"], - AC_MSG_ERROR([Could not find PNG library (libpng).]), [-lm -lz]) - AC_CHECK_HEADER(png.h, , + PKG_CHECK_MODULES([PNG], [libpng], + [ + X_LIBS="$X_LIBS $PNG_LIBS" + X_CFLAGS="$X_CFLAGS $PNG_CFLAGS" + ], + [ + AC_CHECK_LIB([png12], [png_read_image], [X_LIBS="$X_LIBS -lpng12 -lm"], + [ + AC_CHECK_LIB([png], [png_read_image], [X_LIBS="$X_LIBS -lpng -lm"], + [ + AC_MSG_ERROR([Could not find PNG library.]) + ]) + ]) + AC_CHECK_HEADER([png.h],, + [ AC_MSG_ERROR([libpng found but not png.h. -You may need to install a libpng \"development\" package.])) +You may need to install a libpng \"development\" package.]) + ]) + ]) dnl Try to get additional Xpm paths: FC_XPM_PATHS
_______________________________________________ Freeciv-dev mailing list Freeciv-dev@gna.org https://mail.gna.org/listinfo/freeciv-dev