From unknown Fri Aug 15 14:47:35 2025 Content-Disposition: inline Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-Mailer: MIME-tools 5.509 (Entity 5.509) Content-Type: text/plain; charset=utf-8 From: bug#12058 <12058@debbugs.gnu.org> To: bug#12058 <12058@debbugs.gnu.org> Subject: Status: AM_PATH_SDL does not find SDL framework installations on Mac OSX Reply-To: bug#12058 <12058@debbugs.gnu.org> Date: Fri, 15 Aug 2025 21:47:35 +0000 retitle 12058 AM_PATH_SDL does not find SDL framework installations on Mac = OSX reassign 12058 automake submitter 12058 David Lowe severity 12058 normal tag 12058 notabug thanks From debbugs-submit-bounces@debbugs.gnu.org Thu Jul 26 11:23:02 2012 Received: (at submit) by debbugs.gnu.org; 26 Jul 2012 15:23:02 +0000 Received: from localhost ([127.0.0.1]:41153 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1SuPu2-0006Pu-0l for submit@debbugs.gnu.org; Thu, 26 Jul 2012 11:23:02 -0400 Received: from eggs.gnu.org ([208.118.235.92]:56638) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1SuPNe-0005fR-Rx for submit@debbugs.gnu.org; Thu, 26 Jul 2012 10:49:35 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1SuPH0-0007hC-M7 for submit@debbugs.gnu.org; Thu, 26 Jul 2012 10:42:43 -0400 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org X-Spam-Level: X-Spam-Status: No, score=-6.9 required=5.0 tests=BAYES_00,RCVD_IN_DNSWL_HI, T_DKIM_INVALID autolearn=unavailable version=3.3.2 Received: from lists.gnu.org ([208.118.235.17]:34422) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1SuPH0-0007h6-HP for submit@debbugs.gnu.org; Thu, 26 Jul 2012 10:42:42 -0400 Received: from eggs.gnu.org ([208.118.235.92]:40813) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1SuPGu-0005uj-L3 for bug-automake@gnu.org; Thu, 26 Jul 2012 10:42:42 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1SuPGp-0007eU-86 for bug-automake@gnu.org; Thu, 26 Jul 2012 10:42:36 -0400 Received: from nm18.access.bullet.mail.sp2.yahoo.com ([98.139.44.145]:47626) by eggs.gnu.org with smtp (Exim 4.71) (envelope-from ) id 1SuPGo-0007eE-I5 for bug-automake@gnu.org; Thu, 26 Jul 2012 10:42:31 -0400 Received: from [98.139.44.99] by nm18.access.bullet.mail.sp2.yahoo.com with NNFMP; 26 Jul 2012 14:42:29 -0000 Received: from [98.139.44.69] by tm4.access.bullet.mail.sp2.yahoo.com with NNFMP; 26 Jul 2012 14:42:29 -0000 Received: from [127.0.0.1] by omp1006.access.mail.sp2.yahoo.com with NNFMP; 26 Jul 2012 14:42:29 -0000 X-Yahoo-Newman-Id: 166036.19626.bm@omp1006.access.mail.sp2.yahoo.com Received: (qmail 45479 invoked from network); 26 Jul 2012 14:42:28 -0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.com; s=s1024; t=1343313748; bh=uWCLxab7vbgelNGN4Ol/Z5lYH4lJnvEV5W9qExAaKfA=; h=X-Yahoo-Newman-Property:X-YMail-OSG:X-Yahoo-SMTP:Received:Subject:From:Content-Type:Message-Id:Date:To:Mime-Version:X-Mailer; b=Sjjz3Mrfj1GDhkQ/nAMqOy42wROkgPTDPZjpiIU3cJ9exuJpZ410No7QxFmXrkiaA1h/jhh6LG9fAjr/mz/wZpC2dbpMVyRLXT12YhTjE32w7pyBjO8v8q9F/hTJpaYrdvhHBnyMgSagfhJxXY0E7RsBbhtmFlPzVnjG9yVng9g= X-Yahoo-Newman-Property: ymail-3 X-YMail-OSG: qGQlEsMVM1kBFot4uc4k3zY3IK4AJ1C5CWxuC39V9msKklD 1j.oDjv15U.eN0oiV_XWWYWNjMuovtcOHRlRerLJdBTr94oA9oLzb4KNN1y4 0rJfprRMjGojcwDUze_ryqv31uLtRiQFT4nfawZ2QQpilgmmyMVpEDZTH6D8 ux9thUQGcZi3NrS2I9KDddazz98F6yRShfRqZ2nr6XhhO5wuxOkXLzi_lDya zefVugwPsxapVuGs9x6iEHOGyX7nVfusEERgyCMw28kM1G3PcASxWtYdK66H Y5vL6UJhBy6VBdTyTO2eKlYuJaK2S3JCq0xkxEnKCmcV987XHyhxCuDqvyyZ TaV7uZO_xtkeQVua55ALkGl2y1_PNLweDfAFFZsSsDq7XG7px6Dk.s6tEwar MPOqxKI6wM1.szT3ppN94MoPcEwVTlyWAzOvgyPTicrsbQhOv5qDLg5f32ZM Z52_Wyr8uNO6rKncbVRbY8BY9xtKzoAsQT1DSK_oCR4glUh7sFTGbH6HxnEi xUjb_BnIPCLGAr3yINx.9_zv4N0JtS7.GynMoGbqCPENraZ74gB7JLpxXPZh aSdK_9Fb1Igrwoi9htaW1d3RMvoZ3VkLpjMJr X-Yahoo-SMTP: rSO8RVWswBD3VrxnhZXE7luKEihATUly30WhwHPsPDdG1K.7 Received: from [10.0.1.9] (doctorjlowe@98.119.78.216 with plain) by smtp104.vzn.mail.ne1.yahoo.com with SMTP; 26 Jul 2012 07:42:26 -0700 PDT Subject: AM_PATH_SDL does not find SDL framework installations on Mac OSX From: David Lowe Content-Type: multipart/mixed; boundary=Apple-Mail-35--65674759 Message-Id: <7E7A8AA7-972D-4244-A120-36778E65E8CF@verizon.net> Date: Thu, 26 Jul 2012 07:42:25 -0700 To: bug-automake@gnu.org Mime-Version: 1.0 (Apple Message framework v1084) X-Mailer: Apple Mail (2.1084) X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6 (newer, 3) X-Received-From: 208.118.235.17 X-Spam-Score: -6.1 (------) X-Debbugs-Envelope-To: submit X-Mailman-Approved-At: Thu, 26 Jul 2012 11:23:00 -0400 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.13 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: debbugs-submit-bounces@debbugs.gnu.org Errors-To: debbugs-submit-bounces@debbugs.gnu.org X-Spam-Score: -6.1 (------) --Apple-Mail-35--65674759 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset=us-ascii Background information: on OSX, the preferred distribution = method for libraries is the 'framework' which is a click-and-draggable = object that contains headers and libraries together. The standard = location for these is: /Library/Frameworks/ I have the latest version of officially provided SDL runtime = libraries here: Darlene-Lowes-Mac-mini:/ (222) $ ls /Library/Frameworks/SDL* /Library/Frameworks/SDL.framework: Headers Resources SDL Versions /Library/Frameworks/SDL_image.framework: Frameworks Headers Resources SDL_image Versions /Library/Frameworks/SDL_mixer.framework: Frameworks Headers Resources SDL_mixer Versions However, automake ignores them, leading to: checking for sdl-config... no checking for SDL - version >=3D 1.1.4... no *** The sdl-config script installed by SDL could not be found *** If SDL was installed in PREFIX, make sure PREFIX/bin is in *** your path, or set the SDL_CONFIG environment variable to the *** full path to sdl-config. configure: error: specified client 'sdl' not configurable (SDL >=3D = 1.1.4 is needed (www.libsdl.org)) The above portion of a log came from a recent attempt to install = Freeciv-SDL from source. I will attach the full copies of configure.ac = and Makefile.am that were generated during that attempt, as i don't know = enough to be sure what i could trim out without removing useful = information. In any case, the failure is repeatable across a range of = versions of OSX with these frameworks. I did once grab the SDL sources = and do the usual configure/make. The resulting installation does not = create a framework, but automake does find the libraries. --Apple-Mail-35--65674759 Content-Disposition: attachment; filename=configure.ac Content-Type: application/octet-stream; name="configure.ac" Content-Transfer-Encoding: 7bit dnl configure.ac for freeciv dnl Process this file with autoconf to produce a configure script. dnl Initialize with some random file to ensure the source is here. AC_INIT([freeciv], m4_esyscmd([./fc_version | tr -d '\n'])) AC_PREREQ(2.59) AC_CONFIG_SRCDIR([common/game.c]) AC_CONFIG_AUX_DIR(bootstrap) # This can't be quoted or automake will fail AC_CONFIG_MACRO_DIR([m4]) AC_CONFIG_HEADERS([fc_config.h]) AC_CANONICAL_HOST dnl Replace AC_GNU_SOURCE with AC_USE_SYSTEM_EXTENSIONS when minimum dnl autoconf version 2.61 AC_GNU_SOURCE AC_C_BIGENDIAN BUG_URL="http://gna.org/projects/freeciv/" WIKI_URL="http://www.freeciv.org/" MAIL_ADDRESS="freeciv-dev AT gna.org" AC_DEFINE(FC_CONFIG_H, 1, [Configuration autogenerated]) AC_DEFINE_UNQUOTED([BUG_URL], ["$BUG_URL"], [Bug reporting URL]) AC_DEFINE(META_URL, "http://meta.freeciv.org/metaserver.phtml", [Meta server URL]) AC_DEFINE_UNQUOTED([WIKI_URL], ["$WIKI_URL"], [Informational URL]) AC_DEFINE(DEFAULT_SOCK_PORT, 5556, [Connection TCP Port]) AC_SUBST([BUG_URL]) AC_SUBST([WIKI_URL]) AC_SUBST([MAIL_ADDRESS]) dnl client/server should always have the same major and minor versions dnl different patch versions are compatible VERSION_SCRIPT_SILENT=yes m4_include(fc_version) VERSION_WITHOUT_LABEL=${MAJOR_VERSION}.${MINOR_VERSION}.${PATCH_VERSION} VERSION=${VERSION_WITHOUT_LABEL}${VERSION_LABEL} AC_DEFINE_UNQUOTED([MAJOR_VERSION], [$MAJOR_VERSION], [Major version]) AC_DEFINE_UNQUOTED([MINOR_VERSION], [$MINOR_VERSION], [Minor version]) AC_DEFINE_UNQUOTED([PATCH_VERSION], [$PATCH_VERSION], [Patch version]) AC_DEFINE_UNQUOTED([VERSION_LABEL], ["${VERSION_LABEL}"], [Version label]) AC_DEFINE_UNQUOTED([VERSION_STRING], ["${MAJOR_VERSION}.${MINOR_VERSION}.${PATCH_VERSION}${VERSION_LABEL}"], [Version string]) AC_DEFINE_UNQUOTED([IS_DEVEL_VERSION], [$IS_DEVEL_VERSION], [Is this a devel version]) AC_DEFINE_UNQUOTED([IS_BETA_VERSION], [$IS_BETA_VERSION], [Is this a beta version]) AC_DEFINE_UNQUOTED([NEXT_STABLE_VERSION], ["$NEXT_STABLE_VERSION"], [Version number of next release]) AC_DEFINE_UNQUOTED([RELEASE_MONTH], [$RELEASE_MONTH], [Month next version will be released]) AC_SUBST([MAJOR_VERSION]) AC_SUBST([MINOR_VERSION]) AC_DEFINE_UNQUOTED([NETWORK_CAPSTRING_MANDATORY], ["$NETWORK_CAPSTRING_MANDATORY"], [Network capability string]) AC_SUBST([NETWORK_CAPSTRING_MANDATORY]) AC_DEFINE_UNQUOTED([NETWORK_CAPSTRING_OPTIONAL], ["$NETWORK_CAPSTRING_OPTIONAL"], [Additional optional network capabilities]) AC_SUBST([NETWORK_CAPSTRING_OPTIONAL]) AC_DEFINE_UNQUOTED([DATASUBDIR], ["$DATASUBDIR"], [Version specific subdir for default data path]) AC_SUBST([DATASUBDIR]) AC_DEFINE_UNQUOTED([FREECIV_DISTRIBUTOR], ["$FREECIV_DISTRIBUTOR"], [Distribution this freeciv is built for]) dnl Initialize automake stuff AM_INIT_AUTOMAKE([dist-bzip2 dist-zip]) dnl Use Automake 1.11 silent rules by default if available dnl verbose build using make V=1 ifdef([AM_SILENT_RULES],[AM_SILENT_RULES([yes])]) UTILITY_LIBS= dnl AC_PROG_SED is available only in autoconf 2.60 and later. With older dnl autoconf, assume that 'sed' is ok. This is needed for the configuration dnl of the clients, database setting and the mapimg toolkits. ifdef([AC_PROG_SED], [AC_PROG_SED], [SED=sed]) dnl set default values fcdb_all=no fcdb_mysql=no fcdb_postgres=no fcdb_sqlite3=no dnl checks for databases dnl all: Autodetect as many as possible [default]. dnl mysql: use mysql database dnl postgres: use postgres database dnl comma-separated-list: Detect these or abort. AC_ARG_ENABLE(fcdb, [ --enable-fcdb[=no/all/mysql/postgres/sqlite3] database backends [[default=no]] (no, or list)], [databases=${enableval}], [databases=no]) for db in $(echo $databases | $SED 's/,/ /g') ; do if test "x$db" = "xall" ; then fcdb_all=yes elif test "x$db" = "xno" ; then fcdb_all=no elif test "x$db" = "xmysql" ; then fcdb_mysql=yes elif test "x$db" = "xpostgres" ; then fcdb_postgres=yes elif test "x$db" = "xsqlite3" ; then fcdb_sqlite3=yes else AC_MSG_ERROR([bad value ${db} for --enable-fcdb]) fi done dnl checks for database mysql dnl sets FCDB_MYSQL(conditional), FCDB_MYSQL_CFLAGS, FCDB_MYSQL_LDFLAGS FC_FCDB_MYSQL dnl checks for database postgres dnl sets FCDB_POSTGRES(conditional), FCDB_POSTGRES_CFLAGS, FCDB_POSTGRES_LDFLAGS FC_FCDB_POSTGRES dnl checks for database sqlite3 dnl sets FCDB_SQLITE3(conditional), FCDB_SQLITE3_CFLAGS, FCDB_SQLITE3_LDFLAGS FC_FCDB_SQLITE3 dnl check if a database backend is available if test "x$fcdb_mysql" = "xyes" || test "x$fcdb_postgres" = "xyes" \ || test "x$fcdb_sqlite3" = "xyes"; then enable_fcdb=yes AC_DEFINE(HAVE_FCDB,1,[ ]) else enable_fcdb=no fi AM_CONDITIONAL(FCDB_DB, test "x$enable_fcdb" = "xyes") dnl no=do not compile server, yes=compile server, *=error AC_ARG_ENABLE(server, [ --disable-server do not compile the server], [case "${enableval}" in yes) server=yes ;; no) server=no ;; *) AC_MSG_ERROR(bad value ${enableval} for --disable-server) ;; esac], [server=yes]) AM_CONDITIONAL(SERVER, test x$server = xyes) dnl yes - Support for IPv6 required dnl no - Legacy IPv4 support dnl test - Try to enable IPv6 support AC_ARG_ENABLE(ipv6, [ --enable-ipv6=yes/no/test use IPv6 [[test]]], [case "${enableval}" in yes|no|test) ipv6=${enableval} ;; *) AC_MSG_ERROR(bad value ${enableval} for --enable-ipv6) ;; esac], [ipv6=test]) if test x$ipv6 != xno ; then enable_ipv6=yes dnl We check some functions (getaddrinfo) twice. Once unconditionally dnl to get HAVE_xxx always correctly set. We need separate check here to dnl correcly disable IPv6 when function is not available. AC_CHECK_FUNCS([getaddrinfo inet_pton inet_ntop getnameinfo], [], [enable_ipv6=no]) if test x$enable_ipv6 = xyes ; then AC_MSG_CHECKING([for AF_INET6]) AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[ #include #include ]], [[return AF_INET6;]])], [AC_MSG_RESULT([yes])], [AC_MSG_RESULT([no]) enable_ipv6=no]) fi if test x$enable_ipv6 = xno && test x$ipv6 = xyes ; then AC_MSG_ERROR([Cannot enable IPv6 functionality]) fi if test x$enable_ipv6 = xyes ; then AC_DEFINE([IPV6_SUPPORT], [1], [IPv6 Support built in]) fi fi AC_ARG_WITH(readline, [ --with-readline support fancy command line editing], WITH_READLINE=$withval, dnl yes/no - required to use / never use WITH_READLINE="maybe" dnl maybe - use if found [default] ) FOLLOWTAG=${DEFAULT_FOLLOW_TAG} AC_ARG_WITH([followtag], [ --with-followtag version tag to follow], [FOLLOWTAG=${withval}]) AC_DEFINE_UNQUOTED([FOLLOWTAG], ["${FOLLOWTAG}"], [Version tag to follow]) dnl set default values mapimg_all=auto mapimg_magickwand=no dnl map images dnl all: Autodetect as many as possible [default]. dnl no: No additional toolkits. dnl magickwand: compile magickwand (imagemagick) support. dnl comma-separated-list: Detect these or abort. AC_ARG_ENABLE(mapimg, [ --enable-mapimg[=no/auto/magickwand] additional map image toolkits to compile [[default=auto]] (no, or list)], [toolkits=${enableval}], [enable_mapimg=auto]) for toolkit in $(echo $toolkits | $SED 's/,/ /g') ; do if test "x$toolkit" = "xauto" ; then enable_mapimg=auto elif test "x$toolkit" = "xno" ; then enable_mapimg=no else enable_mapimg=selected fi if test "x$toolkit" = "xmagickwand" ; then mapimg_magickwand=yes fi done dnl checks for MagickWand mapimg support dnl sets MAPIMG_WAND_CFLAGS, MAPIMG_WAND_LIBS FC_MAPIMG_MAGICKWAND dnl no: Do not compile client. dnl auto: Autodetect one. dnl all: Autodetect as many as possible. dnl comma-separated-list: Detect these or abort. AC_ARG_ENABLE(client, [ --enable-client[=auto/all/gtk2/gtk3/sdl/xaw/qt/stub] clients to compile [[auto]] (or list for multiple) maintained clients: gtk3/gtk2/sdl/xaw/stub clients in development: qt], [clients=${enableval}], [client=auto]) gui_gtk2=no gui_gtk3=no gui_sdl=no gui_xaw=no gui_qt=no gui_beos=no gui_stub=no for gui in $(echo $clients | $SED 's/,/ /g') ; do if test "x$gui" = "xno" ; then client=no elif test "x$gui" = "xauto" ; then client=auto elif test "x$gui" = "xall" ; then client=all else if test "x$gui" = "xgtk2" || test "x$gui" = "xgtk2.0" || test "x$gui" = "xgtk20" || test "x$gui" = "xgtk-2.0" ; then gui_gtk2=yes elif test "x$gui" = "xgtk3" || test "x$gui" = "xgtk3.0" || test "x$gui" = "xgtk30" || test "x$gui" = "xgtk-3.0" ; then gui_gtk3=yes elif test "x$gui" = "xgtk" ; then AC_MSG_WARN([for requested client 'gtk' enabled gtk3-client, that has changed since earlier versions]) gui_gtk3=yes else if test ! -d "${srcdir}/client/gui-$gui" ; then AC_MSG_ERROR(bad value ${gui} for --enable-client) fi eval "gui_$gui=yes" fi client=yes fi done AC_ARG_WITH(xaw, [ --with-xaw use the Xaw widget set for the xaw client], WITH_XAW=1 ) AC_ARG_WITH(xaw3d, [ --with-xaw3d use the Xaw3d widget set for the xaw client], WITH_XAW3D=1 ) if test "x$WITH_XAW" != "x" && test "x$WITH_XAW3D" != "x" ; then AC_MSG_ERROR(Cannot use both --with-xaw and --with-xaw3d at the same time) fi AC_ARG_ENABLE([svnrev], [ --enable-svnrev get svn revision to version information], [case "${enableval}" in yes) svnrev=true ;; no) svnrev=false ;; *) AC_MSG_ERROR([bad value ${enableval} for --enable-svnrev]) ;; esac], [svnrev=false]) AM_CONDITIONAL([SVNREV], [test x$svnrev = xtrue]) if test x$svnrev = xtrue ; then AC_DEFINE([SVNREV], [1], [Get svn revision information to version number]) fi AC_ARG_ENABLE(make_data, [ --disable-make-data do not recurse make into data directories (ok to disable unless you will 'make install')], [case "${enableval}" in yes) make_data=true ;; no) make_data=false ;; *) AC_MSG_ERROR(bad value ${enableval} for --disable-make-data) ;; esac], [make_data=true]) AM_CONDITIONAL(MAKE_DATA, test x$make_data = xtrue) AC_ARG_ENABLE(make_include, [ --enable-make-include force make to recurse into include directory (useful for 'make tags')], [case "${enableval}" in yes) make_include=true ;; no) make_include=false ;; *) AC_MSG_ERROR(bad value ${enableval} for --enable-make-include) ;; esac], [make_include=false]) AM_CONDITIONAL(MAKE_CLIENT_INCLUDE, test "$make_include" = "true") AC_ARG_WITH(efence, [ --with-efence use Electric Fence, malloc debugger ], WITH_EFENCE=1 ) AC_ARG_ENABLE([aimodules], [ --enable-aimodules support for ai modules [[yes/no/experimental]] [[default=no]]], [case "${enableval}" in yes) enable_aimodules=yes ;; no) enable_aimodules=no ;; experimental) enable_aimodules=yes exp_aimodules=yes ;; *) AC_MSG_ERROR([bad value ${enable_aimodules} for --enable-aimodules]) ;; esac], [enable_aimodules=no]) aimoduledir="${libdir}/fcai" AC_SUBST(aimoduledir) AM_CONDITIONAL(AI_MODULES, test "x$enable_aimodules" = "xyes") if test $enable_aimodules = yes ; then if test x$enable_shared != xyes ; then AC_MSG_ERROR([cannot enable ai module support if also build of shared libraries is not enabled with --enable-shared]) fi LIBS_TMP="$LIBS" LIBS="$LIBS -lltdl" AC_MSG_CHECKING([whether can build modules]) AC_LINK_IFELSE([AC_LANG_PROGRAM([[#include ]], [[lt_dlopenext(NULL);]])], [AC_MSG_RESULT([yes])], [AC_MSG_RESULT([no]) AC_MSG_ERROR([cannot build loadable AI modules as requested])]) LIBS="$LIBS_TMP" SERVER_LIBS="${SERVER_LIBS} -lltdl" AC_DEFINE_UNQUOTED([AI_MODULES], [1], [Directory for ai modules]) CPPFLAGS="${CPPFLAGS} -DAI_MODULEDIR=\"\\\"${aimoduledir}\\\"\"" fi AM_CONDITIONAL(EXP_AI_MODULES, test "x$exp_aimodules" = "xyes") AC_ARG_ENABLE([ai-static], [ --enable-ai-static statically link listed modules to server], [static_modules="${enableval}"], [static_modules="classic"]) ai_mod_static_classic=no ai_mod_static_threaded=no for module in $(echo $static_modules | $SED 's/,/ /g') ; do if test "x$module" = "xclassic" ; then ai_mod_static_classic=yes AC_DEFINE([AI_MOD_STATIC_CLASSIC], [1], [classic ai module statically linked]) elif test "x$module" = "xthreaded" ; then ai_mod_static_threaded=yes AC_DEFINE([AI_MOD_STATIC_THREADED], [1], [threaded ai module statically linked]) else AC_MSG_ERROR([bad value ${module} for --enable-ai-static]) fi done AM_CONDITIONAL([AI_MOD_STATIC_CLASSIC], [test "x$ai_mod_static_classic" = "xyes" || test "x$enable_aimodules" != "xyes"]) AM_CONDITIONAL([AI_MOD_STATIC_THREADED], [test "x$ai_mod_static_threaded" = "xyes"]) dnl Checks for programs. AC_PROG_AWK AC_PROG_CC AC_PROG_CPP AC_PROG_LN_S AC_DISABLE_SHARED dnl Replace AC_PROG_LIBTOOL with LT_INIT when minimum libtool dnl version 2.2 AC_PROG_LIBTOOL LIBTOOL="$LIBTOOL --preserve-dup-deps" AC_SUBST(LIBTOOL) AC_CHECK_TOOL(AR, ar) if test -z $AR; then AC_MSG_ERROR([*** 'ar' missing. Install binutils, fix your \$PATH, or set \$AR manually. ***]) fi AC_PROG_CXX FC_WORKING_CXX AC_CHECK_PROG(UNAME,uname,uname,:) dnl Programs already checked by AM_INIT_AUTOMAKE: dnl AC_PROG_MAKE_SET dnl Check for libiconv (which is usually included in glibc, but may be dnl distributed separately). The libcharset check must come after the dnl iconv check. This whole thing must come before the gettext check below. AM_ICONV AM_LIBCHARSET AM_LANGINFO_CODESET if test "$am_cv_func_iconv" != yes; then AC_MSG_ERROR([Iconv is missing. You can get libiconv from http://gnu.org/, \ or try using --with-libiconv-prefix.]) fi LIBS="$LIBS $LIBICONV" dnl Autoconf >= 2.60 defines localedir. For older versions of autoconf, we dnl have to define it here, so that it can be used in po/Makefile. dnl You cannot use localedir above this line or it will fail for old ac's. if test -z "$localedir"; then localedir="$datadir/locale" AC_SUBST(localedir) fi dnl I18n support ALL_LINGUAS="ar bg cs ca da de el en_GB eo es et fa fi fr ga gd he hu it ja ko lt nl nb no pl pt pt_BR ro ru sr sv tr uk zh_CN" AC_ARG_ENABLE([nls], [ --disable-nls do not add localization support], [case "${enableval}" in yes) USE_NLS=yes ;; no) USE_NLS=no ;; dnl NLS disabled, but 'make dist' allowed. That dist will lack dnl all generated localization files. no-gmo-dist) USE_NLS=no FORCE_DIST=yes ;; *) AC_MSG_ERROR([bad value ${enableval} for --enable-nls]) ;; esac], [USE_NLS=yes]) if test "$USE_NLS" = "yes" ; then AM_GLIB_GNU_GETTEXT dnl AM_GLIB_GNU_GETTEXT doesn't have all features we want dnl or they don't behave correctly. dnl Old gettext binaries don't understand plurals. (ngettext, msgid_plural) dnl and there are some problems with missing ngettext. dnl Is that ngettext part still true? AM_GLIB_GNU_GETTEXT does check for it have_working_ngettext=0 AC_CHECK_LIB(c, ngettext, [AC_MSG_CHECKING(whether libc's ngettext works at runtime) FC_CHECK_NGETTEXT_RUNTIME(,have_working_ngettext=1,)],) if test "$have_working_ngettext" = "0"; then AC_CHECK_LIB(intl, ngettext, [AC_MSG_CHECKING(whether libintl's ngettext works at runtime) FC_CHECK_NGETTEXT_RUNTIME("-lintl",have_working_ngettext=1,)],) fi if test "$have_working_ngettext" = "0"; then AC_MSG_ERROR(I haven't found a working ngettext function in your system. Try --disable-nls. Read ABOUT-NLS.) fi if test "$IS_BETA_VERSION" = "1" || test "$IS_DEVEL_VERSION" = "1"; then AC_MSG_CHECKING(for GNU xgettext version >= 0.10.36) xgettext_version=`$XGETTEXT --version 2>&1 | grep GNU | head -n 1 | sed 's/"/ /g'` AC_RUN_IFELSE([AC_LANG_SOURCE([[ #include const char *version = "$xgettext_version"; int main() { const char *p = version; int major = 0, minor = 0, patch = 0; while (*p != '\0' && (*p < '0' || *p > '9')) { p++; } if (*p == '\0') { return 1; } sscanf(p, "%d.%d.%d", &major, &minor, &patch); if (major < 1 && (minor < 10 || (minor == 10 && patch < 36))) { return 1; } return 0; } ]])],[AC_MSG_RESULT(yes) ],[ AC_MSG_RESULT(no) AC_MSG_WARN(You may have problems with creating pox files. \ Please update your gettext package.) ],[echo error ]) AC_MSG_CHECKING(for GNU msgfmt version >= 0.10.35) msgfmt_version=`$MSGFMT --version 2>&1 | grep GNU | head -n 1 | sed 's/"/ /g'` AC_RUN_IFELSE([AC_LANG_SOURCE([[ #include const char *version = "$msgfmt_version"; int main() { const char *p = version; int major = 0, minor = 0, patch = 0; while (*p != '\0' && (*p < '0' || *p > '9')) { p++; } if (*p == '\0') { return 1; } sscanf(p, "%d.%d.%d", &major, &minor, &patch); if (major < 1 && (minor < 10 || (minor == 10 && patch < 35))) { return 1; } return 0; } ]])],[AC_MSG_RESULT(yes) ],[ AC_MSG_RESULT(no) AC_MSG_ERROR(You are unable to create *.gmo files. This is development version which doesn't include them. Please update your gettext package. We recommend you versions >= 0.10.38. Or use --disable-nls instead.) ],[echo error ]) fi else dnl Setup POFILES even when NLS disabled. dnl AM_GLIB_GNU_GETTEXT does this when NLS enabled. for lang in $ALL_LINGUAS; do POFILES="$POFILES $lang.po" done AC_SUBST([POFILES]) fi PKG_PROG_PKG_CONFIG PKG_CHECK_MODULES([CURL], [libcurl],, [AC_MSG_ERROR([libcurl development files required])]) UTILITY_CFLAGS="${UTILITY_CFLAGS} ${CURL_CFLAGS}" UTILITY_LIBS="${UTILITY_LIBS} ${CURL_LIBS}" dnl Set debug flags supported by compiler EXTRA_DEBUG_CFLAGS="" EXTRA_DEBUG_CXXFLAGS="" EXTRA_DEBUG_LDFLAGS="" dnl check debugging FC_DEBUG dnl check profiling FC_GPROF AC_C99_VARIADIC_MACROS AC_C99_VARIABLE_ARRAYS AC_C99_INITIALIZERS AC_C99_STDINT_H dnl BeOS-specific settings if test x`$UNAME -s` = xBeOS ; then AC_DEFINE(SOCKET_ZERO_ISNT_STDIN, 1, [BeOS-specific setting]) CFLAGS="$CFLAGS -Wno-multichar" LDFLAGS="$LDFLAGS -x none" if test x$enable_debug = xyes ; then CFLAGS="$CFLAGS -gdwarf-2" LDFLAGS="$LDFLAGS -gdwarf-2" fi # We used to set ARFLAGS here, but under recent versions of automake this # broke compilation on other systems. Setting ARFLAGS shouldn't be # necessary with a working automake. fi dnl Defaults MINGW32=no AMIGA=no HOST_PATH_SEPARATOR=":" dnl Settings specific to host OS case "$host_os" in *mingw32*) dnl Windows-specific settings MINGW32=yes AC_CHECK_TOOL([WINDRES], [windres]) if test -z $WINDRES; then AC_MSG_ERROR([*** 'windres' missing. Install binutils, fix your \$PATH, or set \$WINDRES manually. ***]) fi HOST_PATH_SEPARATOR=";" AC_DEFINE([SOCKET_ZERO_ISNT_STDIN], [1], [Mingw32-specific setting - stdin]) AC_DEFINE([ALWAYS_ROOT], [1], [Can execute program as root - Mingw32]) AC_DEFINE([WIN32_NATIVE], [1], [Mingw32-specific setting - native]) AC_DEFINE([HAVE_WINSOCK], [1], [Mingw32-specific setting - winsock]) AC_DEFINE([NONBLOCKING_SOCKETS], [1], [nonblocking sockets support]) LIBS="$LIBS -lwsock32" ;; *skyos*) dnl SkyOS specific settings AC_DEFINE([ALWAYS_ROOT], [1], [Can execute program as root - SkyOS]) ;; *haiku*) dnl Haiku specific settings AC_DEFINE([ALWAYS_ROOT], [1], [Can execute program as root - Haiku]) LIBS="$LIBS -lnetwork" ;; *amigaos*) AMIGA=yes AC_DEFINE([ALWAYS_ROOT], [1], [Can execute program as root - Amiga]) ;; esac dnl Autoconf provides path separator for build system. dnl Use that instead of our own guess in case of native build. if test x$build = x$host ; then HOST_PATH_SEPARATOR=$PATH_SEPARATOR fi dnl note this has to match the path installed by po/Makefile if test x"$MINGW32" != "xyes"; then CPPFLAGS="$CPPFLAGS -DLOCALEDIR=\"\\\"$localedir\\\"\"" else AC_DEFINE_UNQUOTED(LOCALEDIR, "./share/locale", [Locale directory (windows)]) fi CPPFLAGS="$CPPFLAGS -DBINDIR=\"\\\"$bindir\\\"\"" COMMON_LIBS=-lm dnl Check for zlib AC_CHECK_LIB(z, gzgets, [AC_DEFINE(HAVE_LIBZ, 1, [zlib is available]) UTILITY_LIBS="${UTILITY_LIBS} -lz" COMMON_LIBS="$COMMON_LIBS -lz"], AC_MSG_ERROR([Could not find zlib library.])) AC_CHECK_HEADER(zlib.h, , AC_MSG_ERROR([zlib found but not zlib.h. You may need to install a zlib devel package.])) AC_PATH_PROG(GZIP, gzip, "no") if test "$GZIP" = "no"; then AC_MSG_ERROR([You need the gzip program for compilation.]) fi dnl Check for bzip2 compression AC_CHECK_LIB(bz2, BZ2_bzReadOpen, [AC_CHECK_HEADERS([bzlib.h], [AC_DEFINE(HAVE_LIBBZ2, 1, [libbzip2 is available]) UTILITY_LIBS="${UTILITY_LIBS} -lbz2"])]) dnl Check for xz compression AC_CHECK_LIB(lzma, lzma_code, [AC_CHECK_HEADERS([lzma.h], [AC_DEFINE(HAVE_LIBLZMA, 1, [liblzma is available]) UTILITY_LIBS="${UTILITY_LIBS} -llzma"])]) AC_SUBST([UTILITY_CFLAGS]) AC_SUBST([UTILITY_LIBS]) AC_SUBST([COMMON_LIBS]) dnl Check thread implementation AC_MSG_CHECKING([for threads implementation]) thread_impl=none AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include ]], [[return pthread_create(NULL, NULL, NULL, NULL);]])], [AC_DEFINE([HAVE_PTHREAD], [1], [Use pthreads as thread implementation]) thread_impl=pthreads AC_MSG_RESULT([pthreads]) AC_DEFINE([HAVE_THREAD_COND], [1], [Has thread condition variable implementation]) CFLAGS="$CFLAGS -pthread" LIBS="$LIBS -lpthread"]) if test "x$thread_impl" = "xnone" ; then AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include ]], [[CreateThread(NULL, 0, NULL, NULL, 0, NULL);]])], [AC_DEFINE([HAVE_WINTHREADS], [1], [Use Windows threads as thread implementation]) thread_impl=windows AC_MSG_RESULT([windows])]) fi if test "x$thread_impl" = "xnone" ; then AC_MSG_ERROR([No usable thread implementation available]) fi dnl Check and choose clients if test "x$client" != "xno"; then dnl if specified --with-xaw or --with-xaw3d, assume --enable-client=xaw if test -n "$WITH_XAW" || test -n "$WITH_XAW3D"; then if test "x$client" = "xauto" ; then gui_xaw=yes client=yes elif test "x$client" = "xall" ; then gui_xaw=yes fi fi dnl if need to guess client, announce checking if test "x$client" = "xauto"; then AS_MESSAGE([checking for which client to compile:...]) elif test "x$client" = "xall" ; then AS_MESSAGE([checking for which clients to compile:...]) fi dnl Gtk-3.0-specific overrides FC_GTK3_CLIENT dnl Gtk-2.0-specific overrides FC_GTK2_CLIENT dnl SDL-specific overrides FC_SDL_CLIENT dnl Xaw-specific overrides FC_XAW_CLIENT dnl QT-specific overrides FC_QT_CLIENT dnl BeOS-specific overrides if test "x$gui_beos" = "xyes" || test "x$client" = "xall" test "x$client" = "xauto" ; then AC_MSG_CHECKING([will compile gui-beos]) if test x`$UNAME -s` = xBeOS ; then AC_MSG_RESULT([yes]) gui_beos=yes if test "x$client" = "xauto" ; then client=yes fi GUI_beos_CFLAGS= GUI_beos_LIBS="-Lgui-beos/lib -lBdhGame -lBdhDialog -lBdh -ltranslation -lbe -lroot" else AC_MSG_RESULT([no]) if test "x$gui_beos" = "xyes" ; then AC_MSG_ERROR(The BeOS client is only available on BeOS.) fi fi fi dnl Stub-specific overrides if test "x$gui_stub" = "xyes" || test "x$client" = "xall" ; then found_client=yes if test "x$found_client" = "xyes"; then gui_stub=yes if test "x$client" = "xauto" ; then client=yes fi GUI_stub_LIBS="-lm" elif test "x$gui_stub" = "xyes"; then AC_MSG_ERROR(specified client 'stub' not configurable) fi fi dnl If client still "auto", error out since we couldn't guess it if test "x$client" = "xauto" ; then AC_MSG_ERROR(could not guess which client to compile) fi dnl Check for sound support, sets SOUND_CFLAGS, SOUND_LIBS, AUDIO_SDL FC_CHECK_SOUND() fi if test "x$client" = "xall" ; then if test "x$gui_gtk2" = "xyes" || test "x$gui_gtk3" = "xyes" || test "x$gui_sdl" = "xyes" || test "x$gui_xaw" = "xyes" || test "x$gui_qt" = "xyes" || test "x$gui_beos" = "xyes" || test "x$gui_stub" = "xyes" ; then client=yes else client=no fi fi dnl Check for GGZ if test "x$gui_gtk2" = "xyes" || test "x$gui_gtk3" = "xyes" ; then AC_GGZ_CHECK("gtk") if test "x$gui_gtk2" = "xyes" ; then GUI_gtk2_LIBS="$GUI_gtk2_LIBS $LIB_GGZ_GTK" fi if test "x$gui_gtk3" = "xyes" ; then GUI_gtk3_LIBS="$GUI_gtk3_LIBS $LIB_GGZ_GTK" fi else AC_GGZ_CHECK fi if test "$ggz_server" = "yes" ; then AC_CHECK_FUNCS([chdir mkdtemp]) fi FC_LD_FLAGS(["-Wl,-rpath=${lib_prefix}"], [], [LDFLAGS]) AM_CONDITIONAL([CLIENT], [test "x$client" = "xyes"]) dnl freeciv-modpack checks AC_ARG_ENABLE([fcmp], [ --enable-fcmp[[=no/yes/gtk/gtk2/gtk3/qt/all/auto]] build freeciv-modpack-program [[default=auto]]], [fc_mp=${enableval}], [fc_mp=auto]) fcmp_gtk=no fcmp_gtk2=no fcmp_gtk3=no fcmp_qt=no for mp in $(echo $fc_mp | $SED 's/,/ /g') ; do if test "x$mp" = "xno" ; then modinst=no elif test "x$mp" = "xauto" || test "x$mp" = "xyes" ; then modinst=auto elif test "x$mp" = "xall" ; then modinst=all else if test "x$mp" = "xgtk2" || test "x$mp" = "xgtk2.0" || test "x$mp" = "xgtk20" || test "x$mp" = "xgtk-2.0" ; then req_fcmp_gtk2=yes elif test "x$mp" = "xgtk3" || test "x$mp" = "xgtk3.0" || test "x$mp" = "xgtk30" || test "x$mp" = "xgtk-3.0" ; then req_fcmp_gtk3=yes elif test "x$mp" = "xgtk" ; then req_fcmp_gtk=yes elif test "x$mp" = "xqt" ; then req_fcmp_qt=yes elif test "x$mp" != "xyes" ; then AC_MSG_ERROR(bad value ${mp} for --enable-fcmp) fi fi done if test "x$req_fcmp_gtk2" = "xyes" && test "x$req_fcmp_gtk3" = "xyes" ; then AC_MSG_ERROR([Cannot build both gtk2 and gtk3 version of modpack installer]) fi if test "x$req_fcmp_gtk3" = "xyes" || test "x$req_fcmp_gtk" = "xyes" || test "x$modinst" = "xall" || test "x$modinst" = "xauto" ; then AM_PATH_GTK_3_0([3.0.0], [ PKG_CHECK_MODULES([GTHREAD], [gthread-2.0], [ fcmp_gtk3=yes MP_gtk_CFLAGS="$GTK3_CFLAGS $GHTREAD_CFLAGS" MP_gtk_LIBS="$GTK3_LIBS $GTHREAD_LIBS" if test "x$MINGW32" = "xyes"; then dnl Required to compile gtk3 on Windows platform MP_gtk_CFLAGS="$MP_gtk_CFLAGS -mms-bitfields" MP_gtk_LDFLAGS="$MP_gtk_LDFLAGS -mwindows" fi if test "x$modinst" = "xauto" ; then modinst=found fi ])]) fi if test "x$req_fcmp_gtk3" = "xyes" && test "x$fcmp_gtk3" != "xyes" ; then AC_MSG_ERROR([Cannot build gtk3-version of freeciv-modpack as requested]) fi if test "x$req_fcmp_gtk2" = "xyes" || ( test "x$fcmp_gtk3" != "xyes" && test "x$req_fcmp_gtk" = "xyes") || test "x$modinst" = "xauto" || test "x$modinst" = "xall" ; then AM_PATH_GTK_2_0([2.12.0], [ PKG_CHECK_MODULES([GTHREAD], [gthread-2.0], [ fcmp_gtk2=yes MP_gtk_CFLAGS="$GTK2_CFLAGS $GTHREAD_CFLAGS" MP_gtk_LIBS="$GTK2_LIBS $GTHREAD_LIBS" if test "x$MINGW32" = "xyes"; then dnl Required to compile gtk2 on Windows platform MP_gtk_CFLAGS="$MP_gtk_CFLAGS -mms-bitfields" MP_gtk_LDFLAGS="$MP_gtk_LDFLAGS -mwindows" fi if test "x$modinst" = "xauto" ; then modinst=found fi ])]) fi if test "x$req_fcmp_gtk2" = "xyes" && test "x$fcmp_gtk2" != "xyes" ; then AC_MSG_ERROR([Cannot build gtk2-version of freeciv-modpack as requested]) fi if test "x$req_fcmp_gtk" = "xyes" && test "x$fcmp_gtk2" != "xyes" && test "x$fcmp_gtk3" != "xyes" ; then AC_MSG_ERROR([Cannot build gtk-version of freeciv-modpack as requested]) fi if test "x$req_fcmp_qt" = "xyes" || test "x$modinst" = "xauto" || test "x$modinst" = "xall" ; then if test "x$cxx_works" = "xyes" ; then FC_QT if test "x$fc_qt_usable" = "xtrue" ; then fcmp_qt=yes MP_qt_CPPFLAGS=$FC_QT_CPPFLAGS MP_qt_LIBS=$FC_QT_LIBS if test "x$modinst" = "xauto" ; then modinst=found fi fi fi fi if test "x$req_fcmp_qt" = "xyes" && test "x$fcmp_qt" != "xyes" ; then AC_MSG_ERROR([Cannot build Qt-version of freeciv-modpack as requested]) fi if test "x$modinst" != "xfound" && test "x$modinst" != "xno" && test "x$fcmp_gtk3" != "xyes" && test "x$fcmp_gtk2" != "xyes" && test "x$fcmp_qt" != "xyes" ;then AC_MSG_ERROR([Cannot build modpack installer with any gui]) fi if test "x$modinst" != "xno" && test "x$MINGW32" != "xyes" ; then dnl Hack to get a run-time icon -- not needed on Windows MP_gtk_CFLAGS="$MP_gtk_CFLAGS -DMPICON_PATH=\"\\\"$datadir/freeciv/misc/mpicon.png\\\"\"" fi AM_CONDITIONAL([MODINST], [test "x$modinst" != "xno"]) AM_CONDITIONAL([MODINST_GTK], [test "x$fcmp_gtk3" = "xyes" || test "x$fcmp_gtk2" = "xyes"]) AM_CONDITIONAL([MODINST_QT], [test "x$fcmp_qt" = "xyes"]) AC_SUBST([GUI_gtk2_CFLAGS]) AC_SUBST([GUI_gtk2_LIBS]) AC_SUBST([GUI_gtk2_LDFLAGS]) AC_SUBST([GUI_gtk3_CFLAGS]) AC_SUBST([GUI_gtk3_LIBS]) AC_SUBST([GUI_gtk3_LDFLAGS]) AC_SUBST([GUI_sdl_CFLAGS]) AC_SUBST([GUI_sdl_LIBS]) AC_SUBST([GUI_sdl_LDFLAGS]) AC_SUBST([GUI_xaw_CFLAGS]) AC_SUBST([GUI_xaw_LIBS]) AC_SUBST([GUI_xaw_LDFLAGS]) AC_SUBST([GUI_qt_CPPFLAGS]) AC_SUBST([GUI_qt_CFLAGS]) AC_SUBST([GUI_qt_CXXFLAGS]) AC_SUBST([GUI_qt_LIBS]) AC_SUBST([GUI_qt_LDFLAGS]) AC_SUBST([GUI_stub_CFLAGS]) AC_SUBST([GUI_stub_LIBS]) AC_SUBST([GUI_stub_LDFLAGS]) AC_SUBST([GUI_beos_CFLAGS]) AC_SUBST([GUI_beos_LIBS]) AC_SUBST([GUI_beos_LDFLAGS]) AC_SUBST([MP_gtk_CFLAGS]) AC_SUBST([MP_gtk_LIBS]) AC_SUBST([MP_gtk_LDFLAGS]) AC_SUBST([MP_qt_CPPFLAGS]) AC_SUBST([MP_qt_LIBS]) AC_SUBST([SOUND_CFLAGS]) AC_SUBST([SOUND_LIBS]) AC_SUBST([VERSION_WITHOUT_LABEL]) AC_SUBST([VERSION_LABEL]) AC_SUBST([HOST_PATH_SEPARATOR]) AM_CONDITIONAL(AUDIO_SDL, test "x$SDL_mixer" = "xyes") AM_CONDITIONAL(CLIENT_GUI_SDL, test "x$gui_sdl" = "xyes") AM_CONDITIONAL(CLIENT_GUI_GTK_2_0, test "x$gui_gtk2" = "xyes") AM_CONDITIONAL(CLIENT_GUI_GTK_3_0, test "x$gui_gtk3" = "xyes") AM_CONDITIONAL(CLIENT_GUI_XAW, test "x$gui_xaw" = "xyes") AM_CONDITIONAL(CLIENT_GUI_QT, test "x$gui_qt" = "xyes") AM_CONDITIONAL(CLIENT_GUI_STUB, test "x$gui_stub" = "xyes") AM_CONDITIONAL(CLIENT_GUI_BEOS, test "x$gui_beos" = "xyes") AM_CONDITIONAL(MINGW32, test x"$MINGW32" = "xyes") dnl Additional client libraires: if test "x$client" = "xyes"; then CLIENT_LIBS=" -lm " AC_SUBST(CLIENT_LIBS) fi dnl Checks for additional server libraries: if test "x$server" = "xyes"; then SERVER_LIBS="-lm ${SERVER_LIBS}" dnl Some systems (e.g., BeOS) need this lib AC_CHECK_LIB(bind, gethostbyaddr, SERVER_LIBS="-lbind $SERVER_LIBS") dnl Readline library and header files. FC_HAS_READLINE() AC_SUBST(SERVER_LIBS) fi AC_CHECK_LIB(nls,main) dnl Checks for header files. AC_HEADER_STDC AC_HEADER_SYS_WAIT AC_CHECK_HEADERS([fcntl.h sys/time.h sys/types.h unistd.h sys/utsname.h \ sys/file.h libintl.h signal.h strings.h execinfo.h]) AC_HEADER_STDBOOL dnl Avoid including the unix emulation layer if we build mingw executables dnl There would be type conflicts between winsock and bsd/unix includes if test "x$MINGW32" != "xyes"; then AC_CHECK_HEADERS(arpa/inet.h netdb.h netinet/in.h pwd.h sys/ioctl.h \ sys/select.h sys/signal.h sys/socket.h sys/termio.h \ sys/uio.h termios.h) fi if test "x$gui_xaw" = "xyes" ; then dnl Want to get appropriate -I flags: fc_save_CPPFLAGS="$CPPFLAGS" CPPFLAGS="$CPPFLAGS $GUI_xaw_CFLAGS" AC_CHECK_HEADER(X11/xpm.h, , AC_MSG_ERROR(need X11/xpm.h header; perhaps try/adjust --with-xpm-include)) CPPFLAGS="$fc_save_CPPFLAGS" fi dnl Checks for typedefs, structures, and compiler characteristics. AC_C_CONST AC_HEADER_TIME AC_STRUCT_TM AC_CHECK_TYPES(socklen_t, [], [], [#include #include ]) dnl Checks for library functions. AC_FUNC_FORK AC_FUNC_STRCOLL AC_FUNC_VPRINTF dnl Windows vsnprintf doesn't support argument reordering (see PR#12932) if test "x$MINGW32" != "xyes"; then AC_FUNC_VSNPRINTF AC_CHECK_FUNCS([vsnprintf]) fi AC_CHECK_FUNCS([bind connect fileno flock ftime gethostbyname gethostname \ getpwuid inet_aton select snooze strcasecmp strcasestr \ strerror strlcat strlcpy strncasecmp strstr uname usleep \ getline _strcoll stricoll _stricoll strcasecoll getaddrinfo \ backtrace]) AC_MSG_CHECKING(for working gettimeofday) FC_CHECK_GETTIMEOFDAY_RUNTIME(,AC_DEFINE(HAVE_GETTIMEOFDAY, 1, [Define if the gettimeofday function works and is sane.]),) dnl Check for extra socket libraries. dnl If the AC_CHECK_FUNCS check finds the function, we don't look any dnl further. This is rumoured to prevent choosing the wrong libs on IRIX. if test $ac_cv_func_gethostbyname = no; then AC_CHECK_LIB(nsl, gethostbyname, LIBS="-lnsl $LIBS") fi if test $ac_cv_func_connect = no; then AC_CHECK_LIB(socket, connect, LIBS="-lsocket $LIBS") fi if test $ac_cv_func_bind = no; then AC_CHECK_LIB(bind, gethostbyaddr, LIBS="-lbind $LIBS") fi dnl The use of both AC_FUNC_VSNPRINTF and AC_CHECK_FUNCS(vsnprintf) is dnl deliberate. dnl Windows fdopen does not work with sockets. if test "x$MINGW32" != "xyes"; then AC_CHECK_FUNCS(fdopen) fi dnl We would AC_CHECK_FUNCS for socket as well, except it is complicated dnl by the fact that the -lsocket is in X_EXTRA_LIBS and/or SERVER_LIBS, dnl and not in LIBS. dnl Now check if non blocking sockets are possible dnl (if fcntl or ioctl exists) AC_CHECK_FUNC(fcntl, [AC_DEFINE(HAVE_FCNTL, 1, [fcntl support]) AC_DEFINE(NONBLOCKING_SOCKETS, 1, [nonblocking sockets support])], [AC_CHECK_FUNC(ioctl, [AC_DEFINE(HAVE_IOCTL, 1, [ioctl support]) AC_DEFINE(NONBLOCKING_SOCKETS, 1, [nonblocking sockets support])])]) dnl Checks if SIGPIPE is usable AC_MSG_CHECKING([for SIGPIPE]) AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include ]], [[signal (SIGPIPE, SIG_IGN)]])],[AC_MSG_RESULT([yes]) AC_DEFINE(HAVE_SIGPIPE, 1, [sigpipe support])],[AC_MSG_RESULT([no])]) FC_CONF_PATH="$sysconfdir/freeciv" dnl export where the datadir is going to be installed FC_EXPAND_DIR(FREECIV_DATADIR, "$datadir/freeciv") if test x"$MINGW32" = xyes; then DEFAULT_DATA_PATH=".;data;~/.freeciv/$DATASUBDIR;$datadir/freeciv" DEFAULT_SAVE_PATH=".;~/.freeciv/saves" DEFAULT_SCENARIO_PATH=".;data/scenarios;~/.freeciv/$DATASUBDIR/scenarios;~/.freeciv/scenarios;$datadir/freeciv/scenarios" else DEFAULT_DATA_PATH=".:data:~/.freeciv/$DATASUBDIR:$datadir/freeciv" DEFAULT_SAVE_PATH=".:~/.freeciv/saves" DEFAULT_SCENARIO_PATH=".:data/scenarios:~/.freeciv/$DATASUBDIR/scenarios:~/.freeciv/scenarios:$datadir/freeciv/scenarios" fi CPPFLAGS="$CPPFLAGS -DFC_CONF_PATH=\"\\\"$FC_CONF_PATH\\\"\"" CPPFLAGS="$CPPFLAGS -DDEFAULT_DATA_PATH=\"\\\"$DEFAULT_DATA_PATH\\\"\"" CPPFLAGS="$CPPFLAGS -DDEFAULT_SAVES_PATH=\"\\\"$DEFAULT_SAVES_PATH\\\"\"" CPPFLAGS="$CPPFLAGS -DDEFAULT_SCENARIO_PATH=\"\\\"$DEFAULT_SCENARIO_PATH\\\"\"" dnl This has to be last library if test -n "$WITH_EFENCE"; then AC_CHECK_LIB(efence, malloc, [ if test "x$LIBS" = "x"; then LIBS = -lefence else LIBS="$LIBS -lefence" fi]) fi dnl Checks needed for Lua. Get rid of these if system lua is ever used. gl_FUNC_MKSTEMP if test x$gl_cv_func_working_mkstemp = xyes ; then AC_DEFINE([HAVE_MKSTEMP], [1], [Have working mkstemp]) fi AC_CHECK_FUNCS([isatty popen _longjmp]) AC_ARG_ENABLE([sys-lua], [ --enable-sys-lua use lua from system instead of one from freeciv tree [[false]]], [case "${enableval}" in yes) sys_lua=true ;; no) sys_lua=false ;; test) sys_lua=test ;; *) AC_MSG_ERROR([bad value ${enableval} for --enable-sys-lua]) ;; esac], [sys_lua=false]) dnl There's wide divergence on what the pkg-config file for Lua is called dnl See http://lua-users.org/lists/lua-l/2008-09/msg00184.html if test "x$sys_lua" = "xtrue" || test "x$sys_lua" = "xtest" ; then PKG_CHECK_MODULES([LUA], [lua5.1], [sys_lua=true], [PKG_CHECK_MODULES([LUA], [lua-5.1], [sys_lua=true], [PKG_CHECK_MODULES([LUA], [lua >= 5.1 lua < 5.2], [sys_lua=true], [if test "x$sys_lua" = "xtrue" ; then AC_MSG_ERROR([Use of included lua disabled, and no lua found from system]) fi sys_lua=false])])]) fi if test "x$sys_lua" = "xfalse" ; then LUA_CFLAGS="-I\$(top_srcdir)/dependencies/lua-5.1/src" LUA_LIBS="\$(top_builddir)/dependencies/lua-5.1/src/liblua.la" LUA_AS_DEPENDENCY="$LUA_LIBS" fi AC_SUBST([LUA_CFLAGS]) AC_SUBST([LUA_LIBS]) AC_SUBST([LUA_AS_DEPENDENCY]) AM_CONDITIONAL([SYS_LUA], [test "x$sys_lua" = "xtrue"]) if test x$enable_fcdb = xyes ; then LUASQL_CFLAGS="-I\$(top_srcdir)/dependencies/luasql-2.1.1/src" LUASQL_LIBS="" if test x$fcdb_mysql = xyes ; then LUASQL_LIBS="$LUASQL_LIBS \$(top_builddir)/dependencies/luasql-2.1.1/src/libluasql_mysql.la" fi if test x$fcdb_postgres = xyes ; then LUASQL_LIBS="$LUASQL_LIBS \$(top_builddir)/dependencies/luasql-2.1.1/src/libluasql_postgres.la" fi if test x$fcdb_sqlite3 = xyes ; then LUASQL_LIBS="$LUASQL_LIBS \$(top_builddir)/dependencies/luasql-2.1.1/src/libluasql_sqlite3.la" fi LUASQL_AS_DEPENDENCY="$LUASQL_LIBS" AC_SUBST([LUASQL_CFLAGS]) AC_SUBST([LUASQL_LIBS]) AC_SUBST([LUASQL_AS_DEPENDENCY]) fi TOLUA_CFLAGS="-I\$(top_srcdir)/dependencies/tolua-5.1/include" TOLUA_LIBS="\$(top_builddir)/dependencies/tolua-5.1/src/lib/libtolua.la" TOLUA_AS_DEPENDENCY="$TOLUA_LIBS" AC_SUBST([TOLUA_CFLAGS]) AC_SUBST([TOLUA_LIBS]) AC_SUBST([TOLUA_AS_DEPENDENCY]) TOLUA="\$(top_builddir)/dependencies/tolua-5.1/src/bin/tolua$EXEEXT" AC_SUBST([TOLUA]) AC_ARG_ENABLE([fcweb], [ --fcweb build fcweb version of server [[false]]], [case "${enableval}" in yes) fcweb=true ;; no) fcweb=false ;; *) AC_MSG_ERROR([bad value ${enableval} for --enable-fcweb]) ;; esac], [fcweb=false]) AM_CONDITIONAL([FREECIV_WEB], [test "x$fcweb" = "xtrue"]) if test "x$fcweb" = "xtrue" ; then AC_DEFINE([FREECIV_WEB], [1], [Build freeciv-web version]) fi dnl Freeciv uses a non-standard macro, Q_(), to handle cases of qualified dnl translatable strings and macro PL_() to handle plural forms. dnl Since the Gettext supplied Autoconf support dnl doesn't seem to have a way to add new keywords to its xgettext call, dnl we do the following. dnl The Gettext supplied Autoconf support starts with 'po/Makefile.in.in', dnl and builds 'po/Makefile.in' then 'po/Makefile'. In order for the dnl commonly used _() and N_() macros to work, there should be somewhere dnl in that 'po/Makefile' a call to xgettext with "--keyword=_" and dnl "--keyword=N_" as arguments. To support Q_() and PL_(), dnl the following simply replaces instances of dnl "--keyword=N_" with "--keyword=N_ --keyword=Q_ --keyword=PL_:1,2" dnl in the 'po/Makefile' file. AC_CONFIG_COMMANDS([fc_default-1],[[if test -f po/Makefile ; then if grep 'keyword=N_ --keyword=Q_ --keyword=PL_:1,2' po/Makefile >/dev/null 2>&1 ; then # has already been extended : else echo extending po/Makefile mv -f po/Makefile po/Makefile.tmp sed -e 's/--keyword=N_/--keyword=N_ --keyword=Q_ --keyword=PL_:1,2/g' po/Makefile.tmp > po/Makefile rm po/Makefile.tmp fi fi]],[[]]) dnl Vast quantities of meaningless errors from xgettext is also annoying. dnl We fix this by forcing xgettext to assume all files are C source files. AC_CONFIG_COMMANDS([fc_default-2],[[if test -f po/Makefile ; then if grep 'language=C --files-from=\$(srcdir)/POTFILES.in' po/Makefile >/dev/null 2>&1 ; then # has already been silenced : else echo silencing po/Makefile mv -f po/Makefile po/Makefile.tmp sed -e 's/--files-from=$(srcdir)\/POTFILES.in/--language=C --files-from=$(srcdir)\/POTFILES.in/' po/Makefile.tmp > po/Makefile rm po/Makefile.tmp fi fi]],[[]]) dnl Most of the C comments copied to freeciv.pot are spurious; dnl change to only copy those with prefix "TRANS:" dnl Also add --escape to the arguments to convert extended dnl characters to escape characters. AC_CONFIG_COMMANDS([fc_default-4],[[if test -f po/Makefile ; then if grep 'add-comments="TRANS:" --escape' po/Makefile >/dev/null 2>&1 ; then # has already been modified : else echo modifying po/Makefile add-comments/escape mv -f po/Makefile po/Makefile.tmp sed -e 's/add-comments/add-comments="TRANS:" --escape/' po/Makefile.tmp > po/Makefile rm po/Makefile.tmp fi fi]],[[]]) dnl The BeOS sys/uio.h is broken. This kludges it out of existence. dnl (This still causes lots of spurious changes to config.h on BeOS.) AC_CONFIG_COMMANDS([fc_default-5],[[if test x`uname -s` = xBeOS ; then if grep '#define HAVE_SYS_UIO_H 1' config.h >/dev/null 2>&1 ; then echo kluging config.h mv -f config.h config.h.tmp sed -e 's/#define HAVE_SYS_UIO_H 1/#undef HAVE_SYS_UIO_H/g' config.h.tmp > config.h rm config.h.tmp fi fi]],[[]]) CFLAGS="$EXTRA_DEBUG_CFLAGS $CFLAGS" CXXFLAGS="$EXTRA_DEBUG_CXXFLAGS $CXXFLAGS" LDFLAGS="$EXTRA_DEBUG_LDFLAGS $LDFLAGS" dnl Rebuild 'configure' whenever fc_version changes, if maintainer mode enabled. AC_SUBST([CONFIGURE_DEPENDENCIES], ["$CONFIGURE_DEPENDENCIES \$(top_srcdir)/fc_version"]) dnl Make sure that config.h changes when ever CPPFLAGS, CFLAGS or CXXFLAGS dnl change so everything gets rebuilt. LDFLAGS is not handled here dnl since change in it should not cause recompilation, only relinking. dnl Note: Variables are named FC_STORE_* instead of FC_*_STORE in order to dnl make them appear next to each other in fc_config.h. Also single-quotes are dnl used because some " may appear unescaped within the flag strings. AC_DEFINE_UNQUOTED([FC_STORE_CPPFLAGS], ['$CPPFLAGS'], [These are the CPPFLAGS used in compilation]) AC_DEFINE_UNQUOTED([FC_STORE_CFLAGS], ['$CFLAGS'], [These are the CFLAGS used in compilation]) AC_DEFINE_UNQUOTED([FC_STORE_CXXFLAGS], ['$CXXFLAGS'], [These are the CXXFLAGS used in compilation]) AC_CONFIG_FILES([Makefile data/Makefile data/civclient.dsc data/civserver.dsc data/civserver.room data/hex2t/Makefile data/amplio2/Makefile data/buildings/Makefile data/flags/Makefile data/misc/Makefile data/cimpletoon/Makefile data/trident/Makefile data/isophex/Makefile data/isotrident/Makefile data/stdsounds/Makefile data/default/Makefile data/classic/Makefile data/multiplayer/Makefile data/experimental/Makefile data/civ2civ3/Makefile data/civ1/Makefile data/civ2/Makefile data/scenarios/Makefile data/nation/Makefile data/themes/Makefile data/themes/gui-gtk-2.0/Makefile data/themes/gui-gtk-2.0/Freeciv/Makefile data/themes/gui-gtk-2.0/Freeciv/gtk-2.0/Makefile data/themes/gui-gtk-2.0/Freeciv/gtk-2.0/Arrows/Makefile data/themes/gui-gtk-2.0/Freeciv/gtk-2.0/Buttons/Makefile data/themes/gui-gtk-2.0/Freeciv/gtk-2.0/Check-Radio/Makefile data/themes/gui-gtk-2.0/Freeciv/gtk-2.0/Combo/Makefile data/themes/gui-gtk-2.0/Freeciv/gtk-2.0/Frame-Gap/Makefile data/themes/gui-gtk-2.0/Freeciv/gtk-2.0/Handles/Makefile data/themes/gui-gtk-2.0/Freeciv/gtk-2.0/Lines/Makefile data/themes/gui-gtk-2.0/Freeciv/gtk-2.0/ListHeaders/Makefile data/themes/gui-gtk-2.0/Freeciv/gtk-2.0/Menu-Menubar/Makefile data/themes/gui-gtk-2.0/Freeciv/gtk-2.0/Others/Makefile data/themes/gui-gtk-2.0/Freeciv/gtk-2.0/Panel/Makefile data/themes/gui-gtk-2.0/Freeciv/gtk-2.0/ProgressBar/Makefile data/themes/gui-gtk-2.0/Freeciv/gtk-2.0/Range/Makefile data/themes/gui-gtk-2.0/Freeciv/gtk-2.0/Scrollbars/Makefile data/themes/gui-gtk-2.0/Freeciv/gtk-2.0/Shadows/Makefile data/themes/gui-gtk-2.0/Freeciv/gtk-2.0/Spin/Makefile data/themes/gui-gtk-2.0/Freeciv/gtk-2.0/Tabs/Makefile data/themes/gui-gtk-2.0/Freeciv/gtk-2.0/Toolbar/Makefile data/themes/gui-gtk-3.0/Makefile data/themes/gui-gtk-3.0/Freeciv/Makefile data/themes/gui-gtk-3.0/Freeciv/gtk-3.0/Makefile data/themes/gui-gtk-3.0/Freeciv/gtk-3.0/Arrows/Makefile data/themes/gui-gtk-3.0/Freeciv/gtk-3.0/Buttons/Makefile data/themes/gui-gtk-3.0/Freeciv/gtk-3.0/Check-Radio/Makefile data/themes/gui-gtk-3.0/Freeciv/gtk-3.0/Combo/Makefile data/themes/gui-gtk-3.0/Freeciv/gtk-3.0/Frame-Gap/Makefile data/themes/gui-gtk-3.0/Freeciv/gtk-3.0/Handles/Makefile data/themes/gui-gtk-3.0/Freeciv/gtk-3.0/Lines/Makefile data/themes/gui-gtk-3.0/Freeciv/gtk-3.0/ListHeaders/Makefile data/themes/gui-gtk-3.0/Freeciv/gtk-3.0/Menu-Menubar/Makefile data/themes/gui-gtk-3.0/Freeciv/gtk-3.0/Others/Makefile data/themes/gui-gtk-3.0/Freeciv/gtk-3.0/Panel/Makefile data/themes/gui-gtk-3.0/Freeciv/gtk-3.0/ProgressBar/Makefile data/themes/gui-gtk-3.0/Freeciv/gtk-3.0/Range/Makefile data/themes/gui-gtk-3.0/Freeciv/gtk-3.0/Scrollbars/Makefile data/themes/gui-gtk-3.0/Freeciv/gtk-3.0/Shadows/Makefile data/themes/gui-gtk-3.0/Freeciv/gtk-3.0/Spin/Makefile data/themes/gui-gtk-3.0/Freeciv/gtk-3.0/Tabs/Makefile data/themes/gui-gtk-3.0/Freeciv/gtk-3.0/Toolbar/Makefile data/themes/gui-sdl/Makefile data/themes/gui-sdl/human/Makefile data/wonders/Makefile data/icons/Makefile utility/Makefile dependencies/Makefile dependencies/lua-5.1/Makefile dependencies/lua-5.1/src/Makefile dependencies/tolua-5.1/Makefile dependencies/tolua-5.1/src/Makefile dependencies/tolua-5.1/src/lib/Makefile dependencies/tolua-5.1/src/bin/Makefile dependencies/luasql-2.1.1/Makefile dependencies/luasql-2.1.1/src/Makefile dependencies/cvercmp/Makefile common/Makefile common/aicore/Makefile common/scriptcore/Makefile ai/Makefile ai/default/Makefile ai/stub/Makefile ai/threaded/Makefile tests/Makefile win32/Makefile client/Makefile client/agents/Makefile client/include/Makefile client/gui-sdl/Makefile client/gui-gtk-2.0/Makefile client/gui-gtk-3.0/Makefile client/gui-xaw/Makefile client/gui-qt/Makefile client/gui-stub/Makefile client/luascript/Makefile server/Makefile server/advisors/Makefile server/generator/Makefile server/scripting/Makefile tools/Makefile po/Makefile.in doc/Makefile doc/man/Makefile doc/man/freeciv-client.6 doc/man/freeciv-server.6 doc/man/freeciv-modpack.6 doc/ca/Makefile doc/de/Makefile doc/fr/Makefile doc/it/Makefile doc/ja/Makefile doc/nl/Makefile doc/sv/Makefile freeciv.spec:bootstrap/freeciv.spec.in data/Freeciv client/freeciv.desktop:bootstrap/freeciv.desktop.in server/freeciv-server.desktop:bootstrap/freeciv-server.desktop.in tools/freeciv-modpack.desktop:bootstrap/freeciv-modpack.desktop.in]) AC_CONFIG_FILES([fcgui:bootstrap/fcgui.in], [chmod +x fcgui]) AC_CONFIG_FILES([fcser:bootstrap/fcser.in], [chmod +x fcser]) if test "$USE_NLS" != "yes" ; then dnl Produced config.status will have constant value of FORCE_DIST, dnl but it still checks 'if test x$FORCE_DIST = xyes'. We cannot dnl do that check in configure when producing config.status. AC_CONFIG_COMMANDS([po/Makefile], [ dnl Usually glib-gettext.m4:AM_GLIB_GNU_GETTEXT outputs commands to dnl generate po/Makefile. dnl If NLS is disabled, we generate one here. rm -f po/Makefile dnl - Add nonls_warn as dependency to dist -target dnl - Remove dependencies from update-po, so it is never rebuilt dnl - Set list of distributed files (no generated files) sed -e 's/^dist distdir:.*/dist distdir: nonls_warn/' \ -e 's/^update-po:.*/update-po:/' \ -e 's/^DISTFILES =.*/DISTFILES = ChangeLog Makefile.in.in POTFILES.in POTFILES.skip \$(POFILES)/' \ po/Makefile.in > po/Makefile dnl Create nonls_warn target. echo >> po/Makefile echo nonls_warn: >> po/Makefile if test "x$FORCE_DIST" = "xyes" ; then echo " @echo Building dist without generated localization files!" >> po/Makefile else echo " @echo Cannot build dist with NLS disabled! && /bin/false" >> po/Makefile fi ], [FORCE_DIST=$FORCE_DIST]) fi AC_OUTPUT AC_MSG_NOTICE([ ****************** Configuration Summary ****************** == General build options == Shared libraries: $enable_shared Debugging support: $enable_debug Profiling support: $enable_gprof IPv6 support: $enable_ipv6 Map image toolkits: $enable_mapimg ppm: built-in MagickWand: $mapimg_magickwand == Client == Build freeciv client: $client Maintained client frontends: Gtk-3.0: $gui_gtk3 Gtk-2.0: $gui_gtk2 SDL: $gui_sdl Xaw: $gui_xaw Stub: $gui_stub In-development client frontends: (these are not yet ready for general use) QT: $gui_qt == Server == Build freeciv server: $server AI modules support: $enable_aimodules Database support: $enable_fcdb mysql: $fcdb_mysql postgres: $fcdb_postgres sqlite3: $fcdb_sqlite3 ]) --Apple-Mail-35--65674759 Content-Disposition: attachment; filename=Makefile.am Content-Type: application/octet-stream; name="Makefile.am" Content-Transfer-Encoding: 7bit ## Process this file with automake to produce Makefile.in ACLOCAL_AMFLAGS = -I m4 -I dependencies/m4 if CLIENT CSUBDIRS = client else CSUBDIRS = endif if SERVER SSUBDIRS = ai server else SSUBDIRS = endif if MAKE_DATA DSUBDIRS = data else DSUBDIRS = endif SUBDIRS = $(DSUBDIRS) dependencies utility common tests win32 $(SSUBDIRS) $(CSUBDIRS) po doc tools ## Automake should distribute config.rpath automatically - and new ## versions probably do. We still support versions that do not, so ## it's in the list below. ## It should also install it automatically when running autogen.sh. EXTRA_DIST= autogen.sh \ config.mac.h \ configure.ac \ diff_ignore \ bootstrap/fcgui.in \ bootstrap/fcser.in \ bootstrap/fc_svnrev_gen.h.in \ bootstrap/generate_svnrev.sh \ bootstrap/freeciv.desktop.in \ bootstrap/freeciv-server.desktop.in \ bootstrap/freeciv-modpack.desktop.in \ bootstrap/freeciv.spec.in \ bootstrap/config.rpath \ bootstrap/Makerules.mk \ m4/ac_path_lib.m4 \ m4/alsa.m4 \ m4/c99.m4 \ m4/codeset.m4 \ m4/compiler.m4 \ m4/debug.m4 \ m4/fcdb-mysql.m4 \ m4/fcdb-postgres.m4 \ m4/fcdb-sqlite3.m4 \ m4/freetype2.m4 \ m4/gettimeofday.m4 \ m4/ggz.m4 \ m4/glib-2.0.m4 \ m4/glibc21.m4 \ m4/glib-gettext.m4 \ m4/glib.m4 \ m4/gtk-2.0.m4 \ m4/gtk-3.0.m4 \ m4/gtk2-client.m4 \ m4/gtk3-client.m4 \ m4/iconv.m4 \ m4/imlib.m4 \ m4/isc-posix.m4 \ m4/lcmessage.m4 \ m4/lib-ld.m4 \ m4/lib-link.m4 \ m4/lib-prefix.m4 \ m4/locale.m4 \ m4/mysql.m4 \ m4/magickwand.m4 \ m4/mapimg-magickwand.m4 \ m4/ngettext.m4 \ m4/no-client.m4 \ m4/pkg.m4 \ m4/postgres.m4 \ m4/progtest.m4 \ m4/qt.m4 \ m4/qt-client.m4 \ m4/readline.m4 \ m4/sdl-client.m4 \ m4/sdl.m4 \ m4/sqlite3.m4 \ m4/sound.m4 \ m4/vsnprintf.m4 \ m4/xaw-client.m4 \ m4/x.m4 \ vms/config.h_vms \ vms/freeciv_h.vms \ vms/imlib_config.h_vms \ vms/readme.vms \ vms/vms_build.com \ scripts/mapimg2anim \ scripts/setup_auth_server.sh noinst_HEADERS= fc_version src-check: cd tests && $(MAKE) $(AM_MAKEFLAGS) src-check .PHONY: src-check --Apple-Mail-35--65674759 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset=us-ascii Relevant versions: automake: 1.10 SDL: 1.2.14 OSX: 10.6.8 Desired results: I would prefer that AM_PATH_SDL be upgraded to = find and use such frameworks. Failing that, it would be nice if someone = could suggest an alternate test so that the framework can be used in the = configure process of the Freeciv project.= --Apple-Mail-35--65674759-- From debbugs-submit-bounces@debbugs.gnu.org Thu Jul 26 14:45:13 2012 Received: (at 12058) by debbugs.gnu.org; 26 Jul 2012 18:45:13 +0000 Received: from localhost ([127.0.0.1]:41449 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1SuT3h-0004Gd-0u for submit@debbugs.gnu.org; Thu, 26 Jul 2012 14:45:13 -0400 Received: from mail-bk0-f44.google.com ([209.85.214.44]:54880) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1SuT3d-0004GQ-R0; Thu, 26 Jul 2012 14:45:11 -0400 Received: by bkty7 with SMTP id y7so1334490bkt.3 for ; Thu, 26 Jul 2012 11:38:16 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=message-id:date:from:mime-version:to:cc:subject:references :in-reply-to:content-type:content-transfer-encoding; bh=2ZfMqtJgShdtSxve9hjoMocxXWt6z7Wx/1qvlk0Zyl0=; b=XPK4H0CI3dVQHC2QmvtObZO8n1A/RVI4N0l8LC0rc8y2KKLXO3ZJZ9uzPeCCd5Q8IT J7MiLitBxhuLcckiDWcgJCdRtTiuD5S5WWn4fX6e7s5RjvIQaSTOAiQhKTLRo9dwecmd EBnKOjegUInciJgoaeCXOulTwmZ/cfWBZtFtDrDYSKw8Sk4QFUgbTIVqpGjRuUmoIFmD mSPvK5LmFYPoyUSQzs1bgNKTyvEzTs7/xmT/olsP90H1Kl/CdTwOpPd4gW/dhwIXElHZ +zFHa5qo4xTKY5anfatyFs3Ruo8zziKjEvzEdja9+2m70vPNEXMPnBgirmuWB2e9CKYg aREg== Received: by 10.204.157.135 with SMTP id b7mr14067298bkx.61.1343327896553; Thu, 26 Jul 2012 11:38:16 -0700 (PDT) Received: from [192.168.178.21] (host105-96-dynamic.4-87-r.retail.telecomitalia.it. [87.4.96.105]) by mx.google.com with ESMTPS id he8sm15067640bkc.3.2012.07.26.11.38.15 (version=SSLv3 cipher=OTHER); Thu, 26 Jul 2012 11:38:15 -0700 (PDT) Message-ID: <50118E95.8090405@gmail.com> Date: Thu, 26 Jul 2012 20:38:13 +0200 From: Stefano Lattarini MIME-Version: 1.0 To: David Lowe Subject: Re: bug#12058: AM_PATH_SDL does not find SDL framework installations on Mac OSX References: <7E7A8AA7-972D-4244-A120-36778E65E8CF@verizon.net> In-Reply-To: <7E7A8AA7-972D-4244-A120-36778E65E8CF@verizon.net> Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit X-Spam-Score: -2.6 (--) X-Debbugs-Envelope-To: 12058 Cc: control@debbugs.gnu.org, 12058@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.13 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: debbugs-submit-bounces@debbugs.gnu.org Errors-To: debbugs-submit-bounces@debbugs.gnu.org X-Spam-Score: -2.6 (--) close 12058 notabug thanks Hi Dave. On 07/26/2012 04:42 PM, David Lowe wrote: > Background information: on OSX, the preferred distribution method for > libraries is the 'framework' which is a click-and-draggable object > that contains headers and libraries together. The standard location > for these is: /Library/Frameworks/ > > I have the latest version of officially provided SDL runtime > libraries here: > > Darlene-Lowes-Mac-mini:/ (222) $ ls /Library/Frameworks/SDL* > /Library/Frameworks/SDL.framework: > Headers Resources SDL Versions > > /Library/Frameworks/SDL_image.framework: > Frameworks Headers Resources SDL_image Versions > > /Library/Frameworks/SDL_mixer.framework: > Frameworks Headers Resources SDL_mixer Versions > > However, automake ignores them, leading to: > > checking for sdl-config... no > checking for SDL - version >= 1.1.4... no > *** The sdl-config script installed by SDL could not be found > *** If SDL was installed in PREFIX, make sure PREFIX/bin is in > *** your path, or set the SDL_CONFIG environment variable to the > *** full path to sdl-config. > configure: error: specified client 'sdl' not configurable (SDL >= 1.1.4 is needed (www.libsdl.org)) > > The above portion of a log came from a recent attempt to install > Freeciv-SDL from source. I will attach the full copies of configure.ac > and Makefile.am that were generated during that attempt, as i don't > now enough to be sure what i could trim out without removing useful > information. In any case, the failure is repeatable across a range > of versions of OSX with these frameworks. I did once grab the SDL > sources and do the usual configure/make. The resulting installation > does not create a framework, but automake does find the libraries. > > Relevant versions: > > automake: 1.10 > SDL: 1.2.14 > OSX: 10.6.8 > > Desired results: I would prefer that AM_PATH_SDL be upgraded to > find and use such frameworks. Failing that, it would be nice if > someone could suggest an alternate test so that the framework > can be used in the configure process of the Freeciv project.= > Well, this problem has nothing to do with Automake, because the macro AM_PATH_SDL is *not* provided by Automake -- although the fact that the macro name starts with 'AM_' confusingly suggest otherwise. IMNSHO that choice of a name it is a serious mistake by whoever is defining/distributing that macro, for two reasons: 1. it gives the wrong impression that the macro is provided by or related to Automake -- not true. 2. It invades the 'AM_' namespace, that should be reserved for automake macros. Back to you problem: a google search *suggests* that AM_PATH_SDL is provided by the SDL project itself: So you might want to report the issue to them. Regards, and good luck, Stefano From debbugs-submit-bounces@debbugs.gnu.org Thu Jul 26 14:45:20 2012 Received: (at 12058) by debbugs.gnu.org; 26 Jul 2012 18:45:20 +0000 Received: from localhost ([127.0.0.1]:41454 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1SuT3n-0004H2-Ux for submit@debbugs.gnu.org; Thu, 26 Jul 2012 14:45:20 -0400 Received: from mail-bk0-f44.google.com ([209.85.214.44]:54880) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1SuT3l-0004GQ-Tr; Thu, 26 Jul 2012 14:45:18 -0400 Received: by mail-bk0-f44.google.com with SMTP id y7so1334490bkt.3 for ; Thu, 26 Jul 2012 11:38:25 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=message-id:date:from:mime-version:to:cc:subject:references :in-reply-to:content-type:content-transfer-encoding; bh=2ZfMqtJgShdtSxve9hjoMocxXWt6z7Wx/1qvlk0Zyl0=; b=vOnkLnHpleRvCMCj3QX84cdVD4H5WSQWRpFbh/ta/+ErtBKCRJcvZFdMdSxDHBr2xM sCpXUIKvPT7WJmJsgEHfUDW9CvTNX840BFVt2E2svPK6uXmkykExbCqA1GiF1vnbaTPT XoYrt7RZNIKkd8yIrA1UCvU9nCbwcTNd6bPednJp645tM/zfy9eV/3fjL+WPUJE3NGs2 C+BLP48ojJ+w3PjuEwlBePglZaRptQtV+1d8ZT0pJGI1v/wKiuG4v0tGtuKV847JFEQy bdq+OmGcHk7KYclCz62/jPVWYsMVM9FGFQ0n4VPy7QzHP51QS/+dWjvxvafNR49D+cnR VRoA== Received: by 10.204.154.73 with SMTP id n9mr14091810bkw.113.1343327905383; Thu, 26 Jul 2012 11:38:25 -0700 (PDT) Received: from [192.168.178.21] (host105-96-dynamic.4-87-r.retail.telecomitalia.it. [87.4.96.105]) by mx.google.com with ESMTPS id 14sm15066019bkq.12.2012.07.26.11.38.22 (version=SSLv3 cipher=OTHER); Thu, 26 Jul 2012 11:38:24 -0700 (PDT) Message-ID: <50118E9C.2000102@gmail.com> Date: Thu, 26 Jul 2012 20:38:20 +0200 From: Stefano Lattarini MIME-Version: 1.0 To: David Lowe Subject: Re: bug#12058: AM_PATH_SDL does not find SDL framework installations on Mac OSX References: <7E7A8AA7-972D-4244-A120-36778E65E8CF@verizon.net> In-Reply-To: <7E7A8AA7-972D-4244-A120-36778E65E8CF@verizon.net> Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit X-Spam-Score: -2.6 (--) X-Debbugs-Envelope-To: 12058 Cc: 12058@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.13 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: debbugs-submit-bounces@debbugs.gnu.org Errors-To: debbugs-submit-bounces@debbugs.gnu.org X-Spam-Score: -2.6 (--) close 12058 notabug thanks Hi Dave. On 07/26/2012 04:42 PM, David Lowe wrote: > Background information: on OSX, the preferred distribution method for > libraries is the 'framework' which is a click-and-draggable object > that contains headers and libraries together. The standard location > for these is: /Library/Frameworks/ > > I have the latest version of officially provided SDL runtime > libraries here: > > Darlene-Lowes-Mac-mini:/ (222) $ ls /Library/Frameworks/SDL* > /Library/Frameworks/SDL.framework: > Headers Resources SDL Versions > > /Library/Frameworks/SDL_image.framework: > Frameworks Headers Resources SDL_image Versions > > /Library/Frameworks/SDL_mixer.framework: > Frameworks Headers Resources SDL_mixer Versions > > However, automake ignores them, leading to: > > checking for sdl-config... no > checking for SDL - version >= 1.1.4... no > *** The sdl-config script installed by SDL could not be found > *** If SDL was installed in PREFIX, make sure PREFIX/bin is in > *** your path, or set the SDL_CONFIG environment variable to the > *** full path to sdl-config. > configure: error: specified client 'sdl' not configurable (SDL >= 1.1.4 is needed (www.libsdl.org)) > > The above portion of a log came from a recent attempt to install > Freeciv-SDL from source. I will attach the full copies of configure.ac > and Makefile.am that were generated during that attempt, as i don't > now enough to be sure what i could trim out without removing useful > information. In any case, the failure is repeatable across a range > of versions of OSX with these frameworks. I did once grab the SDL > sources and do the usual configure/make. The resulting installation > does not create a framework, but automake does find the libraries. > > Relevant versions: > > automake: 1.10 > SDL: 1.2.14 > OSX: 10.6.8 > > Desired results: I would prefer that AM_PATH_SDL be upgraded to > find and use such frameworks. Failing that, it would be nice if > someone could suggest an alternate test so that the framework > can be used in the configure process of the Freeciv project.= > Well, this problem has nothing to do with Automake, because the macro AM_PATH_SDL is *not* provided by Automake -- although the fact that the macro name starts with 'AM_' confusingly suggest otherwise. IMNSHO that choice of a name it is a serious mistake by whoever is defining/distributing that macro, for two reasons: 1. it gives the wrong impression that the macro is provided by or related to Automake -- not true. 2. It invades the 'AM_' namespace, that should be reserved for automake macros. Back to you problem: a google search *suggests* that AM_PATH_SDL is provided by the SDL project itself: So you might want to report the issue to them. Regards, and good luck, Stefano From debbugs-submit-bounces@debbugs.gnu.org Thu Jul 26 14:46:50 2012 Received: (at control) by debbugs.gnu.org; 26 Jul 2012 18:46:51 +0000 Received: from localhost ([127.0.0.1]:41467 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1SuT5G-0004JY-7a for submit@debbugs.gnu.org; Thu, 26 Jul 2012 14:46:50 -0400 Received: from mail-bk0-f44.google.com ([209.85.214.44]:50402) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1SuT5E-0004JR-6G for control@debbugs.gnu.org; Thu, 26 Jul 2012 14:46:49 -0400 Received: by bkty7 with SMTP id y7so1335194bkt.3 for ; Thu, 26 Jul 2012 11:39:55 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=message-id:date:from:mime-version:to:subject:content-type :content-transfer-encoding; bh=gMWh84J8I5JaOqnsZ09PpfLkfp0I5zvFcYq/rF7ccoE=; b=JCpVOOuiamMqCxqpywiEaXet5ENsCRZN0PqDdYVBJdgtB51MHt1U5hFi3MihIp5t8B smI2VGQwou9VYsMgjmBr0dPs1bFwdqt3jVeIMXu2oPGLqHmoJZpiSbtT0BlQvE4Er9kh kf+CZBT822UoLVv9oa9ny5Ie099l2PABvMtysdI7O/kx9/aa454ufx+APJiqBcWdId7K WJarAcBGMCYQ09O79ixGFkl+aclA9rimBGq7xgcjD/DChasRtdPIh7ZyyWdwHgO5VfP6 LUMj+s1oacCdPUNNL4PjkLtRTCJKfhOuP4ffD9L1pMafnWt4ouXIaD5bVrWeFsIjjwlw 6mTA== Received: by 10.204.130.156 with SMTP id t28mr14657459bks.33.1343327995412; Thu, 26 Jul 2012 11:39:55 -0700 (PDT) Received: from [192.168.178.21] (host105-96-dynamic.4-87-r.retail.telecomitalia.it. [87.4.96.105]) by mx.google.com with ESMTPS id hg13sm15069068bkc.7.2012.07.26.11.39.54 (version=SSLv3 cipher=OTHER); Thu, 26 Jul 2012 11:39:54 -0700 (PDT) Message-ID: <50118EF8.20907@gmail.com> Date: Thu, 26 Jul 2012 20:39:52 +0200 From: Stefano Lattarini MIME-Version: 1.0 To: control@debbugs.gnu.org Subject: 12058 notabug Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-Spam-Score: -2.6 (--) X-Debbugs-Envelope-To: control X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.13 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: debbugs-submit-bounces@debbugs.gnu.org Errors-To: debbugs-submit-bounces@debbugs.gnu.org X-Spam-Score: -2.6 (--) tags 12058 notabug close 12058 From debbugs-submit-bounces@debbugs.gnu.org Thu Jul 26 17:52:17 2012 Received: (at 12058) by debbugs.gnu.org; 26 Jul 2012 21:52:17 +0000 Received: from localhost ([127.0.0.1]:41879 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1SuVyf-0000yE-Bu for submit@debbugs.gnu.org; Thu, 26 Jul 2012 17:52:17 -0400 Received: from mail-wg0-f46.google.com ([74.125.82.46]:49437) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1SuVyZ-0000y2-HK for 12058@debbugs.gnu.org; Thu, 26 Jul 2012 17:52:12 -0400 Received: by wgbdq10 with SMTP id dq10so1983812wgb.15 for <12058@debbugs.gnu.org>; Thu, 26 Jul 2012 14:45:12 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:sender:in-reply-to:references:date :x-google-sender-auth:message-id:subject:from:to:cc:content-type; bh=338Ol+sincH8gTvw1/HY7tJWRZ4Il5QPSKAPszQN4HU=; b=Oy+62HbgYc2+vEt+2nyKfXZcPiHoXvV2F5aLo/uBS9EvKEIgYrOfnKjn+rTpgax8dn NPXLjwdaTuf5/j3d6977U5p97S4k3cXY22SX47+RkEJWNVFjcYx8qOKgR3h87WSKUW+d iDkt6gzL4i/Tv8uN2KIGiLsiBT2AMgjgB1JQWDUa7IO3v2hw48VRC50n3pKIo50bOVVw S/0EE12LlOQ0BdU7NfEjz6eOp70XCsk+FCnBGjlG+PtcfGMbMJCVT6E6mVQX8agQTDRu v5COs++BEwETQ0eDxyslKLvy5cw1WQd7RVUdmOn1wZXkXgsuTRCuOzS53e2JdRMH7Lw3 fjCw== MIME-Version: 1.0 Received: by 10.216.123.5 with SMTP id u5mr116473weh.117.1343339112525; Thu, 26 Jul 2012 14:45:12 -0700 (PDT) Received: by 10.194.62.172 with HTTP; Thu, 26 Jul 2012 14:45:12 -0700 (PDT) In-Reply-To: <50118E9C.2000102@gmail.com> References: <7E7A8AA7-972D-4244-A120-36778E65E8CF@verizon.net> <50118E9C.2000102@gmail.com> Date: Fri, 27 Jul 2012 07:45:12 +1000 X-Google-Sender-Auth: KHBeVgGciJWuVxh_BecD0OTXAeA Message-ID: Subject: Re: bug#12058: AM_PATH_SDL does not find SDL framework installations on Mac OSX From: Jack Kelly To: Stefano Lattarini Content-Type: text/plain; charset=ISO-8859-1 X-Spam-Score: -2.6 (--) X-Debbugs-Envelope-To: 12058 Cc: 12058@debbugs.gnu.org, David Lowe X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.13 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: debbugs-submit-bounces@debbugs.gnu.org Errors-To: debbugs-submit-bounces@debbugs.gnu.org X-Spam-Score: -2.6 (--) On Fri, Jul 27, 2012 at 4:38 AM, Stefano Lattarini wrote: > IMNSHO that choice of a name it is a serious mistake by whoever is > defining/distributing that macro, for two reasons: > > 1. it gives the wrong impression that the macro is provided > by or related to Automake -- not true. > > 2. It invades the 'AM_' namespace, that should be reserved > for automake macros. IIRC a number of packages used to define their own AM_PATH_FOO macros, all subtly different. This is before pkg-config came about, and before the AX_ namespace was widely used (available?). > Back to you problem: a google search *suggests* that AM_PATH_SDL is > provided by the SDL project itself: > > > > I don't have a mac handy so I can't go rummaging around in the .dmg, but if there's a sdl-config in the framework you've installed, you make be able to get freeciv to configure by passing an appropriate --with-sdl-prefix flag. So if you can make it configure, then the bug is with sdl.m4, which should be looking for frameworks on OSX, I suppose. You may be able to make it work with pkg-config (replace the call to AM_PATH_SDL with an appropriate PKG_CHECK_MODULES call), depending on whether the framework distributes sdl.pc and your PKG_CONFIG_PATH. From unknown Fri Aug 15 14:47:35 2025 Received: (at fakecontrol) by fakecontrolmessage; To: internal_control@debbugs.gnu.org From: Debbugs Internal Request Subject: Internal Control Message-Id: bug archived. Date: Fri, 24 Aug 2012 11:24:03 +0000 User-Agent: Fakemail v42.6.9 # This is a fake control message. # # The action: # bug archived. thanks # This fakemail brought to you by your local debbugs # administrator