1 dnl Process this file with autoconf to produce a configure script.
5 AM_INIT_AUTOMAKE(geany, 0.19.1)
7 m4_ifdef([AM_SILENT_RULES],[AM_SILENT_RULES([yes])])
9 AM_CONFIG_HEADER(config.h)
18 # check for C++ compiler explicitly and fail if none is found, do this check
19 # after AC_PROG_CXX has set the CXX environment variable
20 which $CXX >/dev/null 2>&1
21 if test "x$?" != "x0"; then
22 AC_MSG_ERROR([No C++ compiler found. Please install a C++ compiler.])
33 LIBTOOL="$LIBTOOL --silent"
37 # Checks for header files.
38 AC_CHECK_HEADERS([fcntl.h fnmatch.h glob.h regex.h stdlib.h sys/time.h])
40 # Checks for typedefs, structures, and compiler characteristics.
45 # Checks for library functions.
46 AC_CHECK_FUNCS([gethostname ftruncate fgetpos mkstemp regcomp strerror strstr])
51 # get svn revision (try GIT first, then check for SVN)
53 GIT=`which git 2>/dev/null`
54 if test -d ".git" -a "x${GIT}" != "x" -a -x "${GIT}"
56 REVISION=r`git svn find-rev origin/trunk 2>/dev/null ||
57 git svn find-rev trunk 2>/dev/null || git svn find-rev HEAD 2>/dev/null ||
58 git svn find-rev master 2>/dev/null || echo 0`
60 if test "x${REVISION}" = "xr0"
62 SVN=`which svn 2>/dev/null`
63 if test -d ".svn" -a "x${SVN}" != "x" -a -x "${SVN}"
65 REVISION=r`$SVN info|grep 'Last Changed Rev'|cut -d' ' -f4`
68 if test "x${REVISION}" != "xr0"
70 # force debug mode for a SVN working copy
71 CFLAGS="-g -DGEANY_DEBUG $CFLAGS"
75 AC_DEFINE_UNQUOTED([REVISION], "$REVISION", [subversion revision number])
78 dnl Check for binary relocation support
79 dnl taken from Inkscape (Hongli Lai <h.lai@chello.nl>)
81 AC_ARG_ENABLE(binreloc,
82 [ --enable-binreloc compile with binary relocation support],
83 enable_binreloc=$enableval,enable_binreloc=no)
85 AC_MSG_CHECKING(whether binary relocation support should be enabled)
86 if test "$enable_binreloc" = "yes"; then
88 AC_MSG_CHECKING(for linker mappings at /proc/self/maps)
89 if test -e /proc/self/maps; then
93 AC_MSG_ERROR(/proc/self/maps is not available. Binary relocation cannot be enabled.)
97 elif test "$enable_binreloc" = "auto"; then
98 AC_MSG_RESULT(yes when available)
99 AC_MSG_CHECKING(for linker mappings at /proc/self/maps)
100 if test -e /proc/self/maps; then
104 AC_MSG_CHECKING(whether everything is installed to the same prefix)
105 if test "$bindir" = '${exec_prefix}/bin' -a "$sbindir" = '${exec_prefix}/sbin' -a \
106 "$datadir" = '${prefix}/share' -a "$libdir" = '${exec_prefix}/lib' -a \
107 "$libexecdir" = '${exec_prefix}/libexec' -a "$sysconfdir" = '${prefix}/etc'
112 AC_MSG_NOTICE(Binary relocation support will be disabled.)
121 elif test "$enable_binreloc" = "no"; then
124 AC_MSG_RESULT(no (unknown value "$enable_binreloc"))
127 if test "$enable_binreloc" = "yes"; then
128 AC_DEFINE(ENABLE_BINRELOC,,[Use AutoPackage?])
133 gtk_modules="gtk+-2.0 >= 2.8.0"
134 PKG_CHECK_MODULES(GTK, [$gtk_modules])
138 gio_modules="gio-2.0 >= 2.16"
139 PKG_CHECK_MODULES(GIO, [$gio_modules], have_gio=1, have_gio=0)
142 if test $have_gio = 1 ; then
143 AC_DEFINE(HAVE_GIO, 1, [Whether GIO is available])
146 # --disable-deprecated switch for GTK2 purification
147 AC_ARG_ENABLE(deprecated, [ --disable-deprecated Disable deprecated GTK functions. ],
148 [GTK_CFLAGS="$GTK_CFLAGS -DG_DISABLE_DEPRECATED -DGTK_DISABLE_DEPRECATED"], [])
151 AC_ARG_ENABLE(plugins, [AC_HELP_STRING([--disable-plugins], [compile without plugin support [default=no]])], , enable_plugins=yes)
153 if test "x$enable_plugins" = "xyes" ; then
154 AC_DEFINE(HAVE_PLUGINS, 1, [Define if plugins are enabled.])
155 AM_CONDITIONAL(PLUGINS, true)
157 AM_CONDITIONAL(PLUGINS, false)
160 # Use included GNU regex library
161 AC_ARG_ENABLE(gnu-regex, [AC_HELP_STRING([--enable-gnu-regex], [compile with included GNU regex library [default=no]])], , enable_gnu_regex=no)
163 if test "x$enable_gnu_regex" = "xyes" ; then
164 AC_DEFINE(USE_INCLUDED_REGEX, 1, [Define if included GNU regex code should be used.])
165 AC_DEFINE(HAVE_REGCOMP, 1, [Define if you have the 'regcomp' function.])
166 AM_CONDITIONAL(USE_INCLUDED_REGEX, true)
168 AM_CONDITIONAL(USE_INCLUDED_REGEX, false)
173 AC_CHECK_LIB(iberty, fnmatch, [], [
174 AC_MSG_ERROR([fnmatch does not present in libiberty. You need to update it, read http://www.geany.org/Support/CrossCompile for details.])
176 AC_DEFINE_UNQUOTED([WIN32], 1, [we are cross compiling for WIN32])
179 AC_DEFINE(HAVE_SOCKET, 1, [Define if you want to detect a running instance])
181 AM_CONDITIONAL(MINGW, true)
184 AM_CONDITIONAL(MINGW, false)
188 dnl skip check if already decided
189 if test "x$want_socket" = "x"; then
191 AC_ARG_ENABLE(socket, AC_HELP_STRING([--enable-socket],[enable if you want to detect a running instance [[default=yes]]]),
192 [want_socket="$enableval"], [want_socket="yes"])
194 if test "x$want_socket" = "xyes"; then
195 AC_DEFINE(HAVE_SOCKET, 1, [Define if you want to detect a running instance])
196 # this should bring in libsocket on Solaris:
197 AC_SEARCH_LIBS([connect],[socket],[],[],[])
201 dnl skip check if already decided
202 if test "x$want_vte" = "x"; then
204 AC_ARG_ENABLE(vte, AC_HELP_STRING([--enable-vte],
205 [enable if you want virtual terminal support [[default=yes]]]),
206 [want_vte="$enableval"], [want_vte="yes"])
207 if test "x$want_vte" = "xyes"; then
208 AC_DEFINE(HAVE_VTE, 1, [Define if you want VTE support])
210 AC_ARG_WITH(vte-module-path, AC_HELP_STRING([--with-vte-module-path=PATH],
211 [Path to a loadable libvte [[default=None]]]), [AC_DEFINE_UNQUOTED([VTE_MODULE_PATH],
212 ["$withval"], [Path to a loadable libvte])])
215 GTK_VERSION=`$PKG_CONFIG --modversion gtk+-2.0`
218 # GTK 2.10 printing support
219 $PKG_CONFIG --exists 'gtk+-2.0 >= 2.10.0'
220 if test "x$?" = "x0" ; then
221 enable_printing="yes"
223 enable_printing="no (GTK >= 2.10 necessary)"
227 # just for a laugh (it has absolutely no effect)
228 AC_ARG_ENABLE(the-force, AC_HELP_STRING([--enable-the-force],
229 [enable if you are Luke Skywalker and the force is with you [[default=no]]]), [be_luke="$enableval"], [be_luke="no"])
230 AC_MSG_CHECKING([whether the force is with you])
231 if test "x$be_luke" = "xyes"; then
238 GETTEXT_PACKAGE=geany
239 AC_SUBST(GETTEXT_PACKAGE)
240 AC_DEFINE_UNQUOTED(GETTEXT_PACKAGE,"$GETTEXT_PACKAGE", [Gettext package.])
242 if test -n "${LINGUAS}"
244 ALL_LINGUAS="${LINGUAS}"
246 if test -z "$conf_dir" ; then
249 ALL_LINGUAS=`cd "$conf_dir/po" 2>/dev/null && ls *.po 2>/dev/null | $AWK 'BEGIN { FS="."; ORS=" " } { print $1 }'`
253 # workaround for intltool bug (http://bugzilla.gnome.org/show_bug.cgi?id=490845)
254 if test "x$MSGFMT" = "xno"; then
255 AC_MSG_ERROR([msgfmt not found. Please install the gettext package.])
260 if test "x${datadir}" = 'x${prefix}/share' -o "x${datarootdir}" = 'x${prefix}/share'; then
261 if test "x${prefix}" = "xNONE"; then
262 prefix=${ac_default_prefix}
266 # Set ${docdir} if it is empty
267 if test -z "${docdir}"; then
268 docdir='${datadir}/doc/${PACKAGE}'
272 GEANY_DATA_DIR=`eval echo ${datarootdir}/geany`
273 AC_SUBST(GEANY_DATA_DIR)
275 # intltool hack to define install_sh on Debian/Ubuntu systems
276 if test "x$install_sh" = "x"; then
277 install_sh="`pwd`/install-sh"
286 icons/scalable/Makefile
288 tagmanager/include/Makefile
290 scintilla/include/Makefile
301 echo "----------------------------------------"
302 echo "Install Geany in : ${prefix}"
303 if test "x${build}" != "x" -a "x${target}" != "x"
305 echo "Building Geany on : ${build}"
306 echo "Building Geany for : ${target}"
308 echo "Using GTK version : ${GTK_VERSION}"
309 echo "Build with GTK printing support : ${enable_printing}"
310 echo "Build with plugin support : ${enable_plugins}"
311 echo "Use virtual terminal support : ${want_vte}"
312 echo "Use (UNIX domain) socket support : ${want_socket}"
313 if test "${REVISION}" != "-1"
315 echo "Compiling Subversion revision : ${REVISION}"
318 echo "Configuration is done OK."