ali@0
|
1 |
# -*- Autoconf -*-
|
ali@0
|
2 |
# Process this file with autoconf to produce a configure script.
|
ali@0
|
3 |
|
ali@19
|
4 |
AC_INIT([bookloupe],[1.52],[ali@juiblex.co.uk])
|
ali@0
|
5 |
AC_PREREQ(2.59)
|
ali@0
|
6 |
AC_CONFIG_AUX_DIR([config])
|
ali@5
|
7 |
AC_CONFIG_SRCDIR([bookloupe/bookloupe.c])
|
ali@0
|
8 |
AC_CONFIG_FILES([Makefile
|
ali@5
|
9 |
bl/Makefile
|
ali@5
|
10 |
bookloupe/Makefile
|
ali@0
|
11 |
test/Makefile
|
ali@0
|
12 |
test/harness/Makefile
|
ali@0
|
13 |
test/compatibility/Makefile
|
ali@0
|
14 |
doc/Makefile
|
ali@0
|
15 |
])
|
ali@0
|
16 |
AM_INIT_AUTOMAKE(no-define)
|
ali@0
|
17 |
AC_CANONICAL_HOST
|
ali@0
|
18 |
|
ali@0
|
19 |
##################################################
|
ali@0
|
20 |
# Checks for programs.
|
ali@0
|
21 |
##################################################
|
ali@0
|
22 |
AC_PROG_CC
|
ali@0
|
23 |
LT_INIT
|
ali@0
|
24 |
# Libtool supports a --disable-shared option to tell it to avoid
|
ali@0
|
25 |
# building shared versions of libraries. We don't have any libraries
|
ali@0
|
26 |
# but we do want to support building static versions of our executables.
|
ali@0
|
27 |
# Libtool can do this (under the right circumstances) so we overload
|
ali@0
|
28 |
# this switch for this purpose.
|
ali@0
|
29 |
#
|
ali@0
|
30 |
# The libtool option that we use (-static-libtool-libs) means to use
|
ali@0
|
31 |
# static linking with libraries that supply a .la file and which
|
ali@0
|
32 |
# include a non-empty value for "old_library". If the library doesn't
|
ali@0
|
33 |
# include a .la file (they are deleted by some distributions), then
|
ali@0
|
34 |
# this option will have no effect and likewise if old_library is set
|
ali@0
|
35 |
# to '' (eg., if the library was build with --disable-static) then
|
ali@0
|
36 |
# again -static-libtool-libs will have no effect.
|
ali@0
|
37 |
#
|
ali@0
|
38 |
# If old_library is set to a non-empty value, then specifying
|
ali@0
|
39 |
# -static-libtool-libs will cause the link to fail if the old library
|
ali@0
|
40 |
# cannot be found (libtool will not fallback to a shared library
|
ali@0
|
41 |
# in these circumstances). This can happen with Fedora, for example,
|
ali@0
|
42 |
# if a main mingw32 library package is installed but not the
|
ali@0
|
43 |
# coresponding static sub-package. The solution is to either
|
ali@0
|
44 |
# install the relevant static sub-packages or don't use --disable-shared.
|
ali@0
|
45 |
AS_IF([test "$enable_shared" = no],[
|
ali@0
|
46 |
LDFLAGS="$LDFLAGS -static-libtool-libs"
|
ali@0
|
47 |
])
|
ali@9
|
48 |
LT_OUTPUT
|
ali@9
|
49 |
ac_compile="./libtool --mode=compile --tag=CC $ac_compile"
|
ali@9
|
50 |
ac_link="./libtool --mode=link --tag=CC $ac_link"
|
ali@0
|
51 |
PKG_PROG_PKG_CONFIG
|
ali@0
|
52 |
|
ali@0
|
53 |
##################################################
|
ali@0
|
54 |
# Checks for header files.
|
ali@0
|
55 |
##################################################
|
ali@0
|
56 |
|
ali@0
|
57 |
##################################################
|
ali@0
|
58 |
# Checks for typedefs, structures, and compiler characteristics.
|
ali@0
|
59 |
##################################################
|
ali@0
|
60 |
|
ali@0
|
61 |
##################################################
|
ali@0
|
62 |
# Checks for libraries.
|
ali@0
|
63 |
##################################################
|
ali@14
|
64 |
PKG_CHECK_MODULES([GLIB],[glib-2.0 >= 2.18])
|
ali@0
|
65 |
|
ali@4
|
66 |
# Glib 2.30 (at least) doesn't include "-framework Carbon" in Libs.private
|
ali@4
|
67 |
# which causes link to fail for static glib on Mac (gnome bug #668152).
|
ali@4
|
68 |
# Test for this problem and implement a workaround.
|
ali@4
|
69 |
AC_MSG_CHECKING([for Mac OS X Carbon support])
|
ali@4
|
70 |
AC_TRY_CPP([
|
ali@4
|
71 |
#include <Carbon/Carbon.h>
|
ali@4
|
72 |
#include <CoreServices/CoreServices.h>
|
ali@4
|
73 |
],[have_carbon=yes],[have_carbon=no])
|
ali@4
|
74 |
AC_MSG_RESULT([$have_carbon])
|
ali@4
|
75 |
AS_IF([test "$have_glib" != no -a "$have_carbon" = yes],[
|
ali@4
|
76 |
AC_MSG_CHECKING([whether -framework Carbon is needed])
|
ali@4
|
77 |
save_CFLAGS="$CFLAGS"
|
ali@4
|
78 |
save_LIBS="$LIBS"
|
ali@4
|
79 |
CFLAGS="$GLIB_CFLAGS"
|
ali@4
|
80 |
LIBS="$GLIB_LIBS"
|
ali@4
|
81 |
AC_TRY_LINK([
|
ali@4
|
82 |
#include <glib.h>
|
ali@4
|
83 |
],[
|
ali@4
|
84 |
return !g_get_user_special_dir(G_USER_DIRECTORY_DESKTOP);
|
ali@4
|
85 |
],[framework_carbon=no],[framework_carbon=yes])
|
ali@4
|
86 |
CFLAGS="$save_CFLAGS"
|
ali@4
|
87 |
LIBS="$save_LIBS"
|
ali@4
|
88 |
AC_MSG_RESULT([$framework_carbon])
|
ali@4
|
89 |
AS_IF([test "$framework_carbon" = yes],[
|
ali@4
|
90 |
GLIB_LIBS="$GLIB_LIBS -framework Carbon"
|
ali@4
|
91 |
])
|
ali@4
|
92 |
])
|
ali@4
|
93 |
|
ali@9
|
94 |
# If we are using a static version of glib then we should define
|
ali@9
|
95 |
# GLIB_STATIC_COMPILATION. This isn't needed when glib is built
|
ali@9
|
96 |
# only for static use (in which case glibconfig.h will already
|
ali@9
|
97 |
# define GLIB_STATIC_COMPILATION).
|
ali@9
|
98 |
AS_IF([test "$enable_shared" = no],[
|
ali@9
|
99 |
AC_MSG_CHECKING([whether GLIB_STATIC_COMPILATION needs to be defined])
|
ali@9
|
100 |
save_CFLAGS="$CFLAGS"
|
ali@9
|
101 |
save_LIBS="$LIBS"
|
ali@9
|
102 |
CFLAGS="$GLIB_CFLAGS"
|
ali@9
|
103 |
LIBS="$GLIB_LIBS"
|
ali@9
|
104 |
AC_TRY_LINK([
|
ali@9
|
105 |
#include <glib.h>
|
ali@9
|
106 |
],[
|
ali@9
|
107 |
return glib_major_version!=2;
|
ali@9
|
108 |
],[static_compilation=no],[static_compilation=yes])
|
ali@9
|
109 |
CFLAGS="$save_CFLAGS"
|
ali@9
|
110 |
LIBS="$save_LIBS"
|
ali@9
|
111 |
AC_MSG_RESULT([$static_compilation])
|
ali@9
|
112 |
AS_IF([test "$static_compilation" = yes],[
|
ali@9
|
113 |
GLIB_CFLAGS="$GLIB_CFLAGS -DGLIB_STATIC_COMPILATION"
|
ali@9
|
114 |
])
|
ali@9
|
115 |
])
|
ali@9
|
116 |
|
ali@0
|
117 |
##################################################
|
ali@0
|
118 |
# Checks for library functions.
|
ali@0
|
119 |
##################################################
|
ali@9
|
120 |
save_CFLAGS="$CFLAGS"
|
ali@9
|
121 |
save_LIBS="$LIBS"
|
ali@9
|
122 |
CFLAGS="$GLIB_CFLAGS"
|
ali@9
|
123 |
LIBS="$GLIB_LIBS"
|
ali@9
|
124 |
AC_CHECK_FUNCS([g_mkdtemp mkdtemp],[break])
|
ali@9
|
125 |
CFLAGS="$save_CFLAGS"
|
ali@9
|
126 |
LIBS="$save_LIBS"
|
ali@0
|
127 |
|
ali@0
|
128 |
##################################################
|
ali@0
|
129 |
# Checks for processor independent files.
|
ali@0
|
130 |
##################################################
|
ali@0
|
131 |
|
ali@0
|
132 |
##################################################
|
ali@0
|
133 |
# Generate the various configured files
|
ali@0
|
134 |
##################################################
|
ali@0
|
135 |
AC_OUTPUT
|