Updated Dutch translation from Bert Timmerman. Thanks.
[geda-gaf.git] / geda / configure.ac
blob4fc55fdf2c5980d14dac6b530a430cad1ed4420e
1 # Process this file with autoconf to produce a configure script.
2 AC_INIT(configure.ac)
4 PACKAGE=geda
5 VERSION=20070216
6 echo Configuring $PACKAGE version $VERSION
8 # Initialize automake 
9 AM_INIT_AUTOMAKE($PACKAGE, $VERSION)
10 AM_CONFIG_HEADER([config.h])
12 #########################################################################
13 # Command line flags start
14
16
17 # Command line flags end
18 #########################################################################
20 #########################################################################
21
22 # Misc win32 / mingw checks and variables start
24 # Figure out if we are building on win32 and what environment.
25 case $host_os in
26   *mingw32* ) echo "Configuring for mingw"; MINGW=yes ;;
27 esac
29 if ! test "$MINGW" = "no" -o "$MINGW"x = x; then
30    MINGW_CFLAGS="-mms-bitfields -mwindows"
31    MINGW_LIBS="-lregex -liberty"
32    MINGW="yes"
33    PATHSEP=\\\\
34    OTHERPATHSEP=/
35 else
36    # Unix host
37    MINGW_CFLAGS=
38    MINGW_LIBS=
39    MINGW="no"
40    PATHSEP=/
41    OTHERPATHSEP=\\\\
44
45 # Misc win32 / mingw checks and variables end
46 #########################################################################
48 # Checks for programs.
49 AC_PROG_CC
50 AM_CONDITIONAL(CCISGCC, test "$GCC" = "yes")    
51 AC_PROG_CPP
52 AC_PROG_MAKE_SET
54 AC_ISC_POSIX
55 AC_PROG_CC
56 AM_PROG_CC_STDC
57 AC_HEADER_STDC
59 ############################################################################
60 # Check for mics things start
61
62 # Checking for rint in math library
63 AC_CHECK_LIB(m, rint, AC_DEFINE(HAS_RINT, 1, [If your math library has rint in it, define this]), no_RINT="yes")
65 # Checking for dynamic lib
66 AC_CHECK_LIB(dl, dlopen, DL_LIB="-ldl", DL_LIB="")
68 # Check for mics things start
69 ############################################################################
71 ############################################################################
72 # Check for X11 start
73
75 if test "$MINGW" = "no"
76 then
77    AC_PATH_X
78    AC_PATH_XTRA 
79     
80    X_EXTRA_LIBS="$X_EXTRA_LIBS"
81    X_LDFLAGS="$X_LDFLAGS $X_LIBS $X_EXTRA_LIBS $X_PRE_LIBS -lX11 -lm"
84
85 # Check for X11 end
86 ############################################################################
88 ############################################################################
89 # Check for gtk+ 2.2 start
90
92 # Check for pkg-config
93 AC_PATH_PROG(PKG_CONFIG, pkg-config, no)
94 if test $PKG_CONFIG = no; then
95    AC_MSG_ERROR([Cannot find pkg-config, make sure it is installed and in your PATH])
98 PKG_CHECK_MODULES(GTK22, gtk+-2.0 >= 2.2.0, GTK22="yes", no_GTK22="yes")
100 # This next bit of code figures out what gtk we need to use.
101 if test "$GTK22" = "yes" 
102 then
104    AC_DEFINE(HAS_GTK22, 1, [If gtk+ 2.2.x has been installed, define this])
105    GTK_CFLAGS=$GTK22_CFLAGS
106    GTK_LIBS=$GTK22_LIBS
107    GTK_VERSION=`$PKG_CONFIG gtk+-2.0 --modversion`
109    # Search for glib
110    PKG_CHECK_MODULES(GLIB22, glib-2.0 >= 2.2.0, GLIB22="yes", no_GLIB22="yes")
111    if test "$GLIB22" != "yes"
112    then
113        AC_MSG_ERROR([Cannot find glib 2.2.x, install it and rerun ./configure.])
114    fi
115    GLIB_CFLAGS=$GLIB22_CFLAGS
116    GLIB_LIBS=$GLIB22_LIBS
117    GLIB_VERSION=`$PKG_CONFIG glib-2.0 --modversion`
119 else
120    GTK_VERSION=""
123 if test "$GTK_VERSION" = ""
124 then
125    AC_MSG_ERROR([Cannot find gtk+ 2.2.x or later, please install gtk+.])
129 # Check for gtk+ 2.2 end
130 ############################################################################
132 #########################################################################
133 # Checks for header files start
136 AC_HEADER_STDC
137 AC_HEADER_SYS_WAIT
138 AC_HEADER_DIRENT
139 AC_CHECK_HEADERS(unistd.h string.h stdlib.h stdarg.h assert.h fcntl.h \
140                  errno.h)
142 AC_MSG_CHECKING([for optarg in unistd.h])
143 AC_TRY_COMPILE(
144 [#include <unistd.h>],
145 [ char *string = optarg; int i = optind; ],
146 optarg_found=yes,
147 optarg_found=no)
148 AC_MSG_RESULT($optarg_found)
149 if test $optarg_found = yes; then
150    AC_DEFINE(OPTARG_IN_UNISTD, 1, [Define if you have optarg in unistd.h])
153 # Checks for typedefs, structures, and compiler characteristics.
154 AC_C_CONST
156 # Checks for library functions.
157 AC_TYPE_SIGNAL
158 AC_CHECK_FUNCS(getcwd strstr vsnprintf snprintf)
161 # Checks for header files end
162 #########################################################################
164 #########################################################################
165 # gEDA/gaf specify setup start
168 # Defs for libary symbol files
170 # Expand the prefix variable
171 if eval "test x$prefix = xNONE"; then
172  dprefix=$ac_default_prefix
173 else
174  dprefix=$prefix
177 DATADIR=gEDA
178 GEDADATADIR=$datadir/$DATADIR
180 gedatopdir=$dprefix/share/$DATADIR
181 expandgedadatadir=`echo $gedatopdir`
183 # this has to be expanded ( no ${prefix} ) --
184 AC_DEFINE_UNQUOTED(GEDADATADIR, "$gedatopdir", [gEDA/gaf's data directory])
185 AC_DEFINE_UNQUOTED(VERSION, "$VERSION", [Currently running version of gEDA/gaf])
188 # gEDA/gaf specify things which need to setup
189 #########################################################################
191 # Finally create the final CFLAGS and LDFLAGS for use in the makefiles
192 GMANAGER_CFLAGS="$MINGW_CFLAGS $GTK_CFLAGS $X_CFLAGS"
193 GMANAGER_LDFLAGS="$MINGW_LIBS $GLIB_LIBS"
194 AC_SUBST(GMANAGER_CFLAGS)
195 AC_SUBST(GMANAGER_LDFLAGS)
196 AC_SUBST(GTK_LIBS)
198 dnl Checks for programs.
199 dnl Checks for libraries.
200 dnl Checks for header files.
201 AC_CHECK_HEADERS(time.h)
203 dnl Checks for typedefs, structures, and compiler characteristics.
204 dnl Checks for library functions.
205 AC_CHECK_FUNCS(nanosleep)
207 dnl Checks for Additional stuffs.
209 dnl Languages which your application supports
211 #########################################################################
214 # ------------- dmalloc -------------------
215 dnl dmalloc checks
216 with_dmalloc="no"
217 AC_MSG_CHECKING([if dmalloc debugging should be enabled])
218 AC_ARG_ENABLE([dmalloc],
219 [  --enable-dmalloc        Compile and link with dmalloc for malloc debugging [[default=no]]],
221 if test "X$enable_dmalloc" != "Xno" ; then
222         AC_MSG_RESULT([yes])
223         AC_CHECK_HEADER(dmalloc.h,,
224                 AC_ERROR([You have requested dmalloc debugging but dmalloc.h could not be found]))
225         AC_CHECK_LIB(dmalloc,main,,
226                 AC_ERROR([You have requested dmalloc debugging but -ldmalloc could not be found]))
227         DMALLOC_LIBS="-ldmalloc"
228         with_dmalloc="yes"
229 else
230         AC_MSG_RESULT([no])
231         DMALLOC_LIBS=""
235         AC_MSG_RESULT([no])
236         DMALLOC_LIBS=""
239 # ------------- ElectricFence -------------------
240 dnl ElectricFence checks
241 with_efence="no"
242 AC_MSG_CHECKING([if ElectricFence debugging should be enabled])
243 AC_ARG_ENABLE([efence],
244 [  --enable-efence         Link with ElectricFence for malloc debugging [[default=no]]],
246 if test "X$enable_efence" != "Xno" ; then
247         AC_MSG_RESULT([yes])
248         if test "X$with_dmalloc" = "Xyes" ; then
249                 AC_ERROR([You have requested both dmalloc and Electric Fence, however only 1 is allowed.])
250         fi
251         AC_CHECK_LIB(efence,main,,
252                 AC_ERROR([You have requested ElectricFence debugging but -lefence could not be found]))
253         with_efence="yes"
254 else
255         AC_MSG_RESULT([no])
259 AC_MSG_RESULT([no])
263 #########################################################################
265 ALL_LINGUAS=""
266 AM_GNU_GETTEXT
267 AM_GNU_GETTEXT_VERSION(0.12.1)
269 dnl Set PACKAGE_LOCALE_DIR in config.h.
270 if test "x${prefix}" = "xNONE"; then
271   AC_DEFINE_UNQUOTED(PACKAGE_LOCALE_DIR, "${ac_default_prefix}/${DATADIRNAME}/locale", [Package locale directory])
272 else
273   AC_DEFINE_UNQUOTED(PACKAGE_LOCALE_DIR, "${prefix}/${DATADIRNAME}/locale", [Package locale directory])
277 dnl Set PACKAGE SOURCE DIR in config.h.
278 packagesrcdir=`cd $srcdir && pwd`
280 dnl Set PACKAGE PREFIX
281 if test "x${prefix}" = "xNONE"; then
282   packageprefix=${ac_default_prefix}
283 else
284   packageprefix=${prefix}
287 dnl Set PACKAGE DATA & DOC DIR
288 packagedatadir=share/${PACKAGE}
289 packagedocdir=doc/${PACKAGE}
291 dnl Set PACKAGE DIRS in config.h.
292 packagepixmapsdir=${packagedatadir}/pixmaps
293 packagehelpdir=${packagedatadir}/help
294 packagemenudir=${packagedatadir}
296 dnl Subst PACKAGE_DATA_DIR.
297 NO_PREFIX_PACKAGE_DATA_DIR="${packagedatadir}"
298 AC_SUBST(NO_PREFIX_PACKAGE_DATA_DIR)
299 PACKAGE_DATA_DIR="${packageprefix}/${packagedatadir}"
300 AC_SUBST(PACKAGE_DATA_DIR)
302 dnl Subst PACKAGE_DOC_DIR.
303 NO_PREFIX_PACKAGE_DOC_DIR="${packagedocdir}"
304 AC_SUBST(NO_PREFIX_PACKAGE_DOC_DIR)
305 PACKAGE_DOC_DIR="${packageprefix}/${packagedocdir}"
306 AC_SUBST(PACKAGE_DOC_DIR)
308 dnl Subst PACKAGE_PIXMAPS_DIR.
309 NO_PREFIX_PACKAGE_PIXMAPS_DIR="${packagepixmapsdir}"
310 AC_SUBST(NO_PREFIX_PACKAGE_PIXMAPS_DIR)
311 PACKAGE_PIXMAPS_DIR="${packageprefix}/${packagepixmapsdir}"
312 AC_SUBST(PACKAGE_PIXMAPS_DIR)
314 dnl Subst PACKAGE_HELP_DIR.
315 NO_PREFIX_PACKAGE_HELP_DIR="${packagehelpdir}"
316 AC_SUBST(NO_PREFIX_PACKAGE_HELP_DIR)
317 PACKAGE_HELP_DIR="${packageprefix}/${packagehelpdir}"
318 AC_SUBST(PACKAGE_HELP_DIR)
320 dnl Subst PACKAGE_MENU_DIR.
321 NO_PREFIX_PACKAGE_MENU_DIR="${packagemenudir}"
322 AC_SUBST(NO_PREFIX_PACKAGE_MENU_DIR)
323 PACKAGE_MENU_DIR="${packageprefix}/${packagemenudir}"
324 AC_SUBST(PACKAGE_MENU_DIR)
326 AC_DEFINE_UNQUOTED(PACKAGE_DATA_DIR, "${packageprefix}/${packagedatadir}", [Package data directory])
327 AC_DEFINE_UNQUOTED(PACKAGE_DOC_DIR, "${packageprefix}/${packagedocdir}", [Package doc directory])
328 AC_DEFINE_UNQUOTED(PACKAGE_PIXMAPS_DIR, "${packageprefix}/${packagepixmapsdir}", [Package pixmap directory])
329 AC_DEFINE_UNQUOTED(PACKAGE_HELP_DIR, "${packageprefix}/${packagehelpdir}", [Package help directory])
330 AC_DEFINE_UNQUOTED(PACKAGE_MENU_DIR, "${packageprefix}/${packagemenudir}", [Package menu directroy])
331 AC_DEFINE_UNQUOTED(PACKAGE_SOURCE_DIR, "${packagesrcdir}", [Package source directory])
333 AC_OUTPUT([ Makefile 
334          m4/Makefile 
335          intl/Makefile 
336          po/Makefile.in 
337          include/Makefile
338          src/Makefile 
339          pixmaps/Makefile 
340          graphman/Makefile ])
342 AC_MSG_RESULT([
343 ** Configuration summary for $PACKAGE $VERSION:
345    GLIB library version:             $GLIB_VERSION
346    GTK+ library version:             $GTK_VERSION
347    mingw build:                      $MINGW
348    dmalloc debugging:                $with_dmalloc
349    ElectricFence debugging:          $with_efence