1AC_PREREQ(2.54)
2# ---------------------------------------------------------------------
3# Initialisation
4# ---------------------------------------------------------------------
5AC_INIT(pango-graphite, 0.9.3, silgraphite-devel@lists.sourceforge.net)
6AC_CONFIG_SRCDIR(pangographite.cpp)
7AC_CONFIG_AUX_DIR(config)
8AC_REVISION($Revision: 1.7 $)
9AM_INIT_AUTOMAKE(foreign)
10AM_MAINTAINER_MODE
11
12# ---------------------------------------------------------------------
13# Enable options
14# ---------------------------------------------------------------------
15AC_ARG_ENABLE(examples,
16    AC_HELP_STRING([--enable-examples], [build experimental examples. (default=no)]),
17    [enable_examples=yes], [enable_examples=no])
18AC_ARG_ENABLE(querymod,
19    AC_HELP_STRING([--enable-querymod], [build custom pango-querymodules. (default=no)]),
20    [enable_querymod=yes], [enable_querymod=no])
21AC_ARG_ENABLE(debug,
22    AC_HELP_STRING([--enable-debug], [build with debugging. (default=no)]),
23    [enable_debug=yes], [enable_debug=no])
24AC_ARG_ENABLE(profile,
25    AC_HELP_STRING([--enable-profile], [allow profiling (default=no)]),
26    [enable_profile=yes], [enable_profile=no])
27AC_ARG_ENABLE(profilefn,
28    AC_HELP_STRING([--enable-profilefn], [allow functioncheck profiling (default=no)]),
29    [enable_profilefn=yes],[enable_profilefn=no])
30
31# ---------------------------------------------------------------------
32# Check Programs
33# ---------------------------------------------------------------------
34AC_LANG(C++)
35AC_PROG_CC
36AC_PROG_CXX
37AC_PROG_INSTALL
38AC_PROG_LIBTOOL
39
40AC_PATH_PROG(LSB_RELEASE, lsb_release, no)
41
42# ---------------------------------------------------------------------
43# Checks for libraries.
44# ---------------------------------------------------------------------
45
46# ---------------------------------------------------------------------
47# Checks for header files.
48# ---------------------------------------------------------------------
49AC_HEADER_STDC
50AC_CHECK_HEADERS([limits.h malloc.h memory.h stddef.h stdlib.h string.h])
51
52# ---------------------------------------------------------------------
53# Checks for typedefs, structures, and compiler characteristics.
54# ---------------------------------------------------------------------
55AC_C_BIGENDIAN
56AC_TYPE_SIZE_T
57AC_STRUCT_TM
58AC_CHECK_SIZEOF(wchar_t)
59AC_SUBST(SIZEOF_WCHAR_T)
60
61# ---------------------------------------------------------------------
62# Checks for library functions.
63# ---------------------------------------------------------------------
64AC_FUNC_ERROR_AT_LINE
65AC_FUNC_MALLOC
66AC_FUNC_MEMCMP
67AC_FUNC_REALLOC
68AC_FUNC_VPRINTF
69AC_CHECK_FUNCS([isascii memmove memset strcasecmp strchr strrchr strtoul])
70
71# ---------------------------------------------------------------------
72# Enable debug
73# ---------------------------------------------------------------------
74if test "$enable_debug" = yes; then
75  if test "$ac_cv_prog_cc_g" = yes; then
76    CFLAGS="$CFLAGS -g -O0 "
77  else
78    CFLAGS="$CFLAGS -O0 "
79  fi
80  if test "$ac_cv_prog_cxx_g" = yes; then
81    CXXFLAGS="$CXXFLAGS -g -O0 "
82  else
83    CXXFLAGS="$CXXFLAGS -O0 "
84  fi
85  CFLAGS="$CFLAGS -Werror -Wall "
86  CXXFLAGS="$CXXFLAGS -Werror -Wall "
87  AC_DEFINE(DEBUG)
88else
89  AC_DEFINE(NDEBUG)
90fi
91
92# ---------------------------------------------------------------------
93# Enable profile
94# ---------------------------------------------------------------------
95if test "$enable_profile" = yes; then
96  CFLAGS="$CFLAGS -pg "
97  CXXFLAGS="$CXXFLAGS -pg "
98fi
99if test "$enable_profilefn" = yes; then
100  CFLAGS="$CFLAGS -g -finstrument-functions "
101  CXXFLAGS="$CXXFLAGS -g -finstrument-functions "
102  LIBS="$LIBS -g -finstrument-functions -lfnccheck "
103fi
104
105
106
107# ---------------------------------------------------------------------
108# Find pkg-config
109# ---------------------------------------------------------------------
110PKG_PROG_PKG_CONFIG(0.14)
111PKG_CHECK_MODULES(GR2, silgraphite >= 2.2.0)
112#PKG_CHECK_MODULES(GR2_FT, silgraphite-ft)
113
114PANGO_MODULE_VERSION=`$PKG_CONFIG --variable=pango_module_version pango`
115PANGO_MAJOR_VERSION=`$PKG_CONFIG --modversion pango | sed -e 's/^\([[0-9]]\+\)\.\([[0-9]]\+\)\.\([[0-9]]\+\)/\1/'`
116PANGO_MINOR_VERSION=`$PKG_CONFIG --modversion pango | sed -e 's/^\([[0-9]]\+\)\.\([[0-9]]\+\)\.\([[0-9]]\+\)/\2/'`
117PANGO_MICRO_VERSION=`$PKG_CONFIG --modversion pango | sed -e 's/^\([[0-9]]\+\)\.\([[0-9]]\+\)\.\([[0-9]]\+\)/\3/'`
118AC_SUBST(PANGO_MODULE_VERSION)
119AC_SUBST(PANGO_MAJOR_VERSION)
120AC_SUBST(PANGO_MINOR_VERSION)
121AC_SUBST(PANGO_MICRO_VERSION)
122PKG_CHECK_MODULES(PANGO, glib-2.0 pango pangoft2 freetype2 fontconfig)
123AC_SUBST(PANGO_CFLAGS)
124AC_SUBST(PANGO_LIBS)
125if test "$enable_examples" = yes; then
126	PKG_CHECK_MODULES(GTK, gtk+-2.0)
127	AC_SUBST(GTK_CFLAGS)
128	AC_SUBST(GTK_LIBS)
129fi
130if test "x$enable_debug" = "xyes"; then
131  PANGO_DEBUG_FLAGS="-DPANGO_ENABLE_DEBUG"
132else
133  PANGO_DEBUG_FLAGS="-DG_DISABLE_CAST_CHECKS"
134
135  if test "x$enable_debug" = "xno"; then
136    PANGO_DEBUG_FLAGS="$GLIB_DEBUG_FLAGS -DG_DISABLE_ASSERT -DG_DISABLE_CHECKS"
137  fi
138fi
139AC_SUBST(PANGO_DEBUG_FLAGS)
140
141# ---------------------------------------------------------------------
142# Substitute variables into makefiles
143# ---------------------------------------------------------------------
144AC_SUBST(PANGO_DEBUG_CFLAGS)
145
146AM_CONDITIONAL(PANGOMODULE, test x$enable_pangomodule = xyes)
147AM_CONDITIONAL(PANGOQM, test x$enable_querymod = xyes)
148AM_CONDITIONAL(EXAMPLES, test x$enable_examples = xyes)
149
150# ---------------------------------------------------------------------
151# Distrib codename detection
152# ---------------------------------------------------------------------
153AC_MSG_CHECKING(if already have REL_CODENAME)
154if test -z "${REL_CODENAME}"; then
155	AC_MSG_RESULT(no)
156	AC_MSG_CHECKING(if have lsb_release)
157	if test "${LSB_RELEASE}" = "no"; then
158		AC_MSG_RESULT(no)
159		REL_CODENAME="unstable"
160	else
161		AC_MSG_RESULT(yes)
162		AC_MSG_CHECKING(if LSB_RELEASE is empty)
163		if test -z ${LSB_RELEASE}; then
164			AC_MSG_RESULT(yes)
165			REL_CODENAME="unstable"
166		else
167			AC_MSG_RESULT(no)
168			CODENAME=`${LSB_RELEASE} -c | sed -e 's/^\S*\s*//'`
169			AC_MSG_CHECKING(if release is sid)
170			if test ${CODENAME} = 'sid'; then
171				AC_MSG_RESULT(yes)
172				REL_CODENAME="unstable"
173			else
174				AC_MSG_RESULT(no, ${CODENAME})
175				REL_CODENAME=${CODENAME}
176			fi
177		fi
178	fi
179else
180	AC_MSG_RESULT(yes)
181fi
182
183AC_SUBST(REL_CODENAME)
184
185
186# ---------------------------------------------------------------------
187# Final output
188# ---------------------------------------------------------------------
189AC_CONFIG_FILES(Makefile)
190AC_OUTPUT
191