1 dnl Process this file with autoconf to produce a configure script.
4 AC_INIT([razor], [0.5.7], [ali@juiblex.co.uk])
6 AM_CONFIG_HEADER([config.h])
9 # libtool versioning - this applies to all libraries in this package
11 # See http://sources.redhat.com/autobook/autobook/autobook_91.html#SEC91 for details
26 AC_CHECK_HEADERS([sys/mman.h])
28 AC_CHECK_FUNCS([symlink chroot])
30 # Libtool supports a --disable-shared option to tell it to avoid
31 # building shared versions of libraries. In addition to this,we want
32 # to support building static versions of our executables. Libtool
33 # can do this (under the right circumstances) so we overload this
34 # switch for this purpose.
36 # The libtool option that we use (-static-libtool-libs) means to use
37 # static linking with libraries that supply a .la file and which
38 # include a non-empty value for "old_library". If the library doesn't
39 # include a .la file (they are deleted by some distributions), then
40 # this option will have no effect and likewise if old_library is set
41 # to '' (eg., if the library was build with --disable-static) then
42 # again -static-libtool-libs will have no effect.
44 # If old_library is set to a non-empty value, then specifying
45 # -static-libtool-libs will cause the link to fail if the old library
46 # cannot be found (libtool will not fallback to a shared library
47 # in these circumstances). This can happen with Fedora, for example,
48 # if a main mingw32 library package is installed but not the
49 # coresponding static sub-package. The solution is to either
50 # install the relevant static sub-packages or don't use --disable-shared.
51 AS_IF([test "$enable_shared" = no],[
52 LDFLAGS="$LDFLAGS -static-libtool-libs"
55 ac_compile="./libtool --mode=compile --tag=CC $ac_compile"
56 ac_link="./libtool --mode=link --tag=CC $ac_link"
62 AC_ARG_ENABLE([atomic],
63 [AS_HELP_STRING([--disable-atomic],
64 [disable atomic transactions])],
67 if test "$enable_atomic" = "yes"; then
68 AC_DEFINE([ENABLE_ATOMIC],[1],[Define if atomic transactions are wanted.])
69 AC_SUBST([RAZOR_HAVE_ATOMIC_ROLLBACK],
70 ['#define RAZOR_HAVE_ATOMIC_ROLLBACK 1'])
72 AC_SUBST([RAZOR_HAVE_ATOMIC_ROLLBACK],['#undef RAZOR_HAVE_ATOMIC_ROLLBACK'])
75 AC_MSG_CHECKING([for Microsoft Windows native API])
77 *mingw*) AC_DEFINE([MSWIN_API], 1,
78 [Define to 1 to use Microsoft Windows native API.])
79 EXTRA_LIBS='-lshell32 -lws2_32'
83 AC_MSG_RESULT([$mswin_api])
84 AM_CONDITIONAL(MSWIN_API, test "$mswin_api" = "yes")
87 if test "$enable_atomic" = "yes" -a "$mswin_api" = "yes"; then
88 AC_MSG_CHECKING([for Microsoft Windows Kernel Transaction Manager])
91 AC_LINK_IFELSE([AC_LANG_PROGRAM([dnl
94 ], [(void)CreateTransaction(NULL,0,0,0,0,0,NULL);])],
95 [have_windows_ktm="yes"; EXTRA_LIBS="-lktmw32 $EXTRA_LIBS"],
96 [have_windows_ktm="no"])
98 AC_MSG_RESULT([$have_windows_ktm])
100 have_windows_ktm="no"
102 if test "$have_windows_ktm" = "yes"; then
103 AC_DEFINE([HAVE_WINDOWS_KTM],[1],[Define if Windows KTM is available.])
107 AC_ARG_ENABLE(ansi, [ --enable-ansi enable -ansi -pedantic gcc flags],enable_ansi=$enableval,enable_ansi=no)
108 AC_ARG_ENABLE(verbose-mode, [ --enable-verbose-mode support verbose debug mode],enable_verbose_mode=$enableval,enable_verbose_mode=$USE_MAINTAINER_MODE)
110 if test "${enable_verbose_mode}" != no; then
111 # To get -rdynamic you pass -export-dynamic to libtool.
112 AC_DEFINE(BUILT_R_DYNAMIC,1,[whether -export-dynamic was passed to libtool])
113 R_DYNAMIC_LDFLAG=-export-dynamic
117 AC_SUBST(R_DYNAMIC_LDFLAG)
119 #### gcc warning flags
121 if test "x$GCC" = "xyes"; then
124 *[\ \ ]-Wall[\ \ ]*) ;;
125 *) CFLAGS="$CFLAGS -Wall -Wno-parentheses" ;;
129 *[\ \ ]-Wchar-subscripts[\ \ ]*) ;;
130 *) CFLAGS="$CFLAGS -Wchar-subscripts" ;;
134 *[\ \ ]-Wmissing-declarations[\ \ ]*) ;;
135 *) CFLAGS="$CFLAGS -Wmissing-declarations" ;;
139 *[\ \ ]-Wnested-externs[\ \ ]*) ;;
140 *) CFLAGS="$CFLAGS -Wnested-externs" ;;
144 *[\ \ ]-Wcast-align[\ \ ]*) ;;
145 *) CFLAGS="$CFLAGS -Wcast-align" ;;
149 *[\ \ ]-Wformat[\ \ ]*) ;;
150 *) CFLAGS="$CFLAGS -Wformat" ;;
154 *[\ \ ]-Wformat-security[\ \ ]*) ;;
155 *) CFLAGS="$CFLAGS -Wformat-security" ;;
158 if test "x$enable_ansi" = "xyes"; then
160 *[\ \ ]-ansi[\ \ ]*) ;;
161 *) CFLAGS="$CFLAGS -ansi" ;;
165 *[\ \ ]-D_POSIX_C_SOURCE*) ;;
166 *) CFLAGS="$CFLAGS -D_POSIX_C_SOURCE=199309L" ;;
170 *[\ \ ]-D_BSD_SOURCE[\ \ ]*) ;;
171 *) CFLAGS="$CFLAGS -D_BSD_SOURCE" ;;
175 *[\ \ ]-pedantic[\ \ ]*) ;;
176 *) CFLAGS="$CFLAGS -pedantic" ;;
183 # gcc default visibility stuff
186 AC_MSG_CHECKING(for -fvisibility)
188 #if defined(__GNUC__) && (__GNUC__ >= 4)
190 #error Need GCC 4.0 for visibility
192 int main () { return 0; }
195 if test "x$have_gcc4" = "xyes"; then
196 CFLAGS="$CFLAGS -fvisibility=hidden"
198 AC_MSG_RESULT($have_gcc4)
202 [AS_HELP_STRING([--without-curl], [disable support for curl])],
208 AS_IF([test "x$with_curl" != xno],
209 [PKG_CHECK_MODULES(CURL, [libcurl])
210 AC_DEFINE([HAVE_CURL], [1], [Define if you have curl])])
211 AC_SUBST(CURL_CFLAGS)
215 AC_ARG_WITH(zlib, [ --with-zlib=<dir> Use zlib from here],
218 CPPFLAGS="$CPPFLAGS -I$withval/include"
221 AC_CHECK_HEADERS(zlib.h, [AC_DEFINE(HAVE_ZLIB_H)],
222 [AC_MSG_ERROR([Can't find zlib.h. Please install zlib.])])
223 save_ldflags="$LDFLAGS"
224 LDFLAGS="$LDFLAGS -L$zlib/lib"
225 AC_CHECK_LIB(z, inflate, [ZLIB_LIBS="-L$zlib/lib -lz"],
226 [AC_MSG_ERROR([Can't find zlib library. Please install zlib.])])
227 LDFLAGS="$save_ldflags"
231 AC_ARG_WITH(expat, [ --with-expat=<dir> Use expat from here],
234 CPPFLAGS="$CPPFLAGS -I$withval/include"
237 AC_CHECK_HEADERS(expat.h, [AC_DEFINE(HAVE_EXPAT_H)],
238 [AC_MSG_ERROR([Can't find expat.h. Please install expat.])])
239 save_ldflags="$LDFLAGS"
240 LDFLAGS="$LDFLAGS -L$expat/lib"
241 AC_CHECK_LIB(expat, XML_ParserCreate, [EXPAT_LIBS="-L$expat/lib -lexpat"],
242 [AC_MSG_ERROR([Can't find expat library. Please install expat.])])
243 LDFLAGS="$save_ldflags"
247 AC_ARG_WITH(rpm, [ --with-rpm=<dir> Use rpm from here])
249 AS_IF([test "$with_rpm" != no],
250 [if test "$with_rpm" != yes; then
251 CPPFLAGS="$CPPFLAGS -I$with_rpm/include"
253 AC_CHECK_HEADERS(rpm/rpmlib.h, [],
254 [AC_MSG_ERROR([Can't find rpm/rpmlib.h. Please install rpm-devel or use --without-rpm.])])
255 save_ldflags="$LDFLAGS"
256 LDFLAGS="$LDFLAGS -L$with_rpm/lib"
257 AC_CHECK_LIB(rpm,rpmdbOpen,[RPM_LIBS="-L$with_rpm/lib -lrpm"],
258 [AC_MSG_ERROR([Can't find rpm library. Please install rpm-devel or use --without-rpm.])])
259 LDFLAGS="$save_ldflags"
260 AC_DEFINE([HAVE_RPMLIB], [1], [Define if you have librpm])])
262 AM_CONDITIONAL([HAVE_RPMLIB], [test -n "$RPM_LIBS"])
265 [AS_HELP_STRING([--without-lua], [disable support for lua])],
269 AS_IF([test "x$with_lua" != xno],
270 [PKG_CHECK_MODULES(LUA, [lua])
271 REQUIREMENTS="$REQUIREMENTS lua"
272 AC_DEFINE([HAVE_LUA], [1], [Define if you have lua])
273 AC_PATH_PROG(LUA, [lua], [no])
274 AS_IF([test "x$LUA" = xno],
275 [AC_MSG_ERROR([Can't find lua program. Please install lua-devel or use --without-lua.])])
276 AC_DEFINE_UNQUOTED([LUA_BINARY], ["$LUA"],
277 [Define to the location of the lua binary])])
280 AM_CONDITIONAL([HAVE_LUA], [test "x$with_lua" != xno])
282 AC_SUBST(REQUIREMENTS)
284 if test "x$GCC" = "xyes"; then
285 LDFLAGS="-Wl,--as-needed $LDFLAGS"
288 # *****************************
289 # Make available to Makefile.am
290 # *****************************
291 AC_SUBST(SYSCONFDIR, $sysconfdir)
293 # ********************
294 # Internationalisation
295 # ********************
297 IT_PROG_INTLTOOL([0.35.0])
298 GETTEXT_PACKAGE=razor
299 AC_SUBST([GETTEXT_PACKAGE])
301 AC_DEFINE_UNQUOTED([GETTEXT_PACKAGE],["$GETTEXT_PACKAGE"],[gettext domain])
311 librazor/types/Makefile
320 dnl ==========================================================================
327 libexecdir: ${libexecdir}
331 sysconfdir: ${sysconfdir}
332 localstatedir: ${localstatedir}
337 Maintainer mode: ${USE_MAINTAINER_MODE}
338 Building verbose mode: ${enable_verbose_mode}
339 Building gtk-doc: ${enable_gtk_doc}