ali@0: # -*- Autoconf -*- ali@0: # Process this file with autoconf to produce a configure script. ali@0: ali@5: AC_INIT([bookloupe],[1.50],[ali@juiblex.co.uk]) ali@0: AC_PREREQ(2.59) ali@0: AC_CONFIG_AUX_DIR([config]) ali@5: AC_CONFIG_SRCDIR([bookloupe/bookloupe.c]) ali@0: AC_CONFIG_FILES([Makefile ali@5: bl/Makefile ali@5: bookloupe/Makefile ali@0: test/Makefile ali@0: test/harness/Makefile ali@0: test/compatibility/Makefile ali@0: doc/Makefile ali@0: ]) ali@0: AM_INIT_AUTOMAKE(no-define) ali@0: AC_CANONICAL_HOST ali@0: ali@0: ################################################## ali@0: # Checks for programs. ali@0: ################################################## ali@0: AC_PROG_CC ali@0: LT_INIT ali@0: # Libtool supports a --disable-shared option to tell it to avoid ali@0: # building shared versions of libraries. We don't have any libraries ali@0: # but we do want to support building static versions of our executables. ali@0: # Libtool can do this (under the right circumstances) so we overload ali@0: # this switch for this purpose. ali@0: # ali@0: # The libtool option that we use (-static-libtool-libs) means to use ali@0: # static linking with libraries that supply a .la file and which ali@0: # include a non-empty value for "old_library". If the library doesn't ali@0: # include a .la file (they are deleted by some distributions), then ali@0: # this option will have no effect and likewise if old_library is set ali@0: # to '' (eg., if the library was build with --disable-static) then ali@0: # again -static-libtool-libs will have no effect. ali@0: # ali@0: # If old_library is set to a non-empty value, then specifying ali@0: # -static-libtool-libs will cause the link to fail if the old library ali@0: # cannot be found (libtool will not fallback to a shared library ali@0: # in these circumstances). This can happen with Fedora, for example, ali@0: # if a main mingw32 library package is installed but not the ali@0: # coresponding static sub-package. The solution is to either ali@0: # install the relevant static sub-packages or don't use --disable-shared. ali@0: AS_IF([test "$enable_shared" = no],[ ali@0: LDFLAGS="$LDFLAGS -static-libtool-libs" ali@0: ]) ali@0: PKG_PROG_PKG_CONFIG ali@0: ali@0: ################################################## ali@0: # Checks for header files. ali@0: ################################################## ali@0: ali@0: ################################################## ali@0: # Checks for typedefs, structures, and compiler characteristics. ali@0: ################################################## ali@0: ali@0: ################################################## ali@0: # Checks for libraries. ali@0: ################################################## ali@0: AC_MSG_CHECKING([whether to use glib]) ali@0: AC_ARG_WITH([glib],[AS_HELP_STRING([--without-glib], ali@0: [use internal re-invented wheel rather than glib2])]) ali@0: AS_IF([test "$with_glib" != no],[ ali@0: AC_MSG_RESULT([yes]) ali@0: PKG_CHECK_MODULES([GLIB],[glib-2.0]) ali@0: AC_DEFINE([HAVE_GLIB],[1],[Define if you have glib version 2.x]) ali@0: ],[ ali@0: AC_MSG_RESULT([no]) ali@0: ]) ali@0: AM_CONDITIONAL([HAVE_GLIB],[test "$with_glib" != no]) ali@0: ali@0: # NOTE: If we are using a static version of glib then we ali@0: # should define GLIB_STATIC_COMPILATION. This isn't needed ali@0: # when glib is built only for static use (in which case ali@0: # glibconfig.h will already define GLIB_STATIC_COMPILATION). ali@0: # It's not easy to tell if libtool will actually link with ali@0: # a static glib but luckily we don't currently need to; ali@0: # this pre-processor define only affects the behaviour of ali@0: # libraries which use glib and we don't have any. ali@0: ali@4: # Glib 2.30 (at least) doesn't include "-framework Carbon" in Libs.private ali@4: # which causes link to fail for static glib on Mac (gnome bug #668152). ali@4: # Test for this problem and implement a workaround. ali@4: AC_MSG_CHECKING([for Mac OS X Carbon support]) ali@4: AC_TRY_CPP([ ali@4: #include ali@4: #include ali@4: ],[have_carbon=yes],[have_carbon=no]) ali@4: AC_MSG_RESULT([$have_carbon]) ali@4: AS_IF([test "$have_glib" != no -a "$have_carbon" = yes],[ ali@4: AC_MSG_CHECKING([whether -framework Carbon is needed]) ali@4: save_CFLAGS="$CFLAGS" ali@4: save_LIBS="$LIBS" ali@4: CFLAGS="$GLIB_CFLAGS" ali@4: LIBS="$GLIB_LIBS" ali@4: AC_TRY_LINK([ ali@4: #include ali@4: ],[ ali@4: return !g_get_user_special_dir(G_USER_DIRECTORY_DESKTOP); ali@4: ],[framework_carbon=no],[framework_carbon=yes]) ali@4: CFLAGS="$save_CFLAGS" ali@4: LIBS="$save_LIBS" ali@4: AC_MSG_RESULT([$framework_carbon]) ali@4: AS_IF([test "$framework_carbon" = yes],[ ali@4: GLIB_LIBS="$GLIB_LIBS -framework Carbon" ali@4: ]) ali@4: ]) ali@4: ali@0: ################################################## ali@0: # Checks for library functions. ali@0: ################################################## ali@0: AC_CHECK_FUNCS_ONCE([mkstemp]) ali@0: ali@0: ################################################## ali@0: # Checks for processor independent files. ali@0: ################################################## ali@0: ali@0: ################################################## ali@0: # Generate the various configured files ali@0: ################################################## ali@0: AC_OUTPUT