Merge changes from main unstable branch
[geda-gaf.git] / configure.ac
blob01a65e1eabef57d303d6d183ff2363a8f385bccc
1 dnl                                                      -*-Autoconf-*-
2 dnl Process this file with autoconf to generate configure.
3 dnl
4 dnl The AX_* macros are defined in files in the top-level m4
5 dnl directory.
7 #####################################################################
8 # Set up configuration system
9 #####################################################################
11 AC_INIT([gEDA/gaf], [1.7.1], [geda-bug@seul.org], [geda-gaf])
12 AC_PREREQ([2.60])
14 AC_CONFIG_SRCDIR([libgeda/src/libgeda.c])
15 AC_CONFIG_AUX_DIR([build-tools])
16 AC_CONFIG_MACRO_DIR([m4])
17 AC_CONFIG_HEADER([config.h])
19 AM_INIT_AUTOMAKE
21 AC_GNU_SOURCE # FIXME for some reason this is needed?
23 #####################################################################
24 # Do version number magic
25 #####################################################################
27 AX_GIT_VERSION([20110619])
29 # This is used for keeping the ChangeLog files up-to-date
30 AC_SUBST([CHANGELOG_BASE], [1.0-20070526])
32 #####################################################################
33 # Windows/MinGW/Cygwin support
34 #####################################################################
36 AX_WINDOWS_FLAGS
38 #####################################################################
39 # Check for compiling & linking tools
40 #####################################################################
42 AC_PROG_CC
43 AC_PROG_CPP
45 AC_LIBTOOL_WIN32_DLL
46 AC_DISABLE_STATIC
47 AC_PROG_LIBTOOL
49 AM_PROG_CC_C_O
50 AX_GCC_FLAGS([-Wall])
52 AC_PROG_MKDIR_P
53 AM_PROG_LEX
54 AX_PROG_AWK
55 AX_PROG_GROFF
56 AC_PATH_PROGS([M4], [gm4 m4], [m4])
58 #####################################################################
59 # Internationalisation
60 #####################################################################
62 AM_NLS
63 AM_GNU_GETTEXT
64 AM_GNU_GETTEXT_VERSION([0.16])
65 AX_DESKTOP_I18N
67 #####################################################################
68 # Check for libraries that use pkg-config
69 #####################################################################
71 PKG_PROG_PKG_CONFIG
73 AX_CHECK_GUILE([1.8.0])
75 PKG_CHECK_MODULES(GLIB, [glib-2.0 >= 2.12.0], ,
76   AC_MSG_ERROR([GLib 2.12.0 or later is required.]))
78 PKG_CHECK_MODULES(GTK, [gtk+-2.0 >= 2.10.0], ,
79   AC_MSG_ERROR([GTK+ 2.10.0 or later is required.]))
81 PKG_CHECK_MODULES(GDK_PIXBUF, [gdk-pixbuf-2.0 >= 0.15.0], ,
82   AC_MSG_ERROR([GDK_PIXBUF 0.15.0 or later is required.]))
84 PKG_CHECK_MODULES(CAIRO, [cairo >= 1.2.0], ,
85   AC_MSG_ERROR([CAIRO 1.2.0 or later is required.]))
87 #####################################################################
88 # Header files & particular functions
89 #####################################################################
91 AC_HEADER_SYS_WAIT
93 # FIXME these checks are obsolete, because every plausible platform
94 # provides what they check for.
95 AC_HEADER_STDC
97 # FIXME these checks may be pointless for one of three reasons: every
98 # even vaguely sane libc implementation provides them; we don't use
99 # any of their functions in favour of GLib alternatives; or we don't
100 # provide an alternative, so the build will fail anyway.
101 AC_CHECK_HEADERS([stdlib.h string.h unistd.h])
103 # FIXME since we don't have a sensible alternative, if these headers
104 # are missing we should fail. Also need to remove HAVE_ERRNO_H tests
105 # in the C source code, since if we *don't* have it the build will
106 # fail anyway.
107 AC_CHECK_HEADERS([errno.h fcntl.h])
109 # FIXME On a system without locale.h, the user may have just disabled NLS
110 # to be able to build.  But are there known systems with working NLS but
111 # without a locale.h?  We do need to include locale.h on some systems
112 # to be able to build gschem/src/gschem.c
113 AC_CHECK_HEADERS([locale.h])
115 # Check for rint in math library. FIXME do we actually need to test
116 # this? Should we use lrint instead?
117 AC_CHECK_LIB([m], [lrint],
118              AC_DEFINE([HAVE_LRINT], 1,
119                        [If your math library has lrint in it, define this]))
121 AC_CHECK_FUNCS([chown getlogin])
123 # Check if the getopt header is present
124 AC_CHECK_HEADERS([getopt.h])
125 # Check for getopt_long
126 # On FreeBSD the 'gnugetopt' library is needed.
127 AC_SEARCH_LIBS([getopt_long], [gnugetopt],
128                AC_DEFINE([HAVE_GETOPT_LONG], 1,
129                          [Define to 1 if you have the `getopt_long' function.]))
131 # Check for misc features of awk
132 AX_AWK_FEATURES
134 #####################################################################
135 # Optional things
136 #####################################################################
138 # Assertions
139 AX_OPTION_ASSERT
140 # API documentation
141 AX_OPTION_DOXYGEN
142 # XDG desktop files
143 AX_OPTION_XDG_DATA
144 # KDE 3 desktop files
145 AX_OPTION_KDE3_DATA
146 # XDG database updates
147 AX_OPTION_XDG_DB
148 # libstroke support
149 AX_OPTION_STROKE
150 # gattrib
151 AX_OPTION_GATTRIB
153 #####################################################################
154 # Tool-specific setup
155 #####################################################################
157 # Where should data files be installed/searched for?
158 AX_DATA_DIRS
159 # Where should PCB footprints be searched for?
160 AX_PCB_DIRS
161 # Set up libgeda with the correct ld version number
162 AX_LIBGEDA([40:0:0])
164 #####################################################################
165 # Generate output
166 #####################################################################
168 AC_CONFIG_FILES([Makefile
169                  intl/Makefile
171                  libgeda/Makefile
172                  libgeda/libgeda.pc
173                  libgeda/po/domain.mak
174                  libgeda/po/Makefile.in
175                  libgeda/shell/Makefile
176                  libgeda/data/Makefile
177                  libgeda/docs/Makefile
178                  libgeda/docs/images/Makefile
179                  libgeda/include/Makefile
180                  libgeda/lib/Makefile
181                  libgeda/scheme/Makefile
182                  libgeda/share/Makefile
183                  libgeda/src/Makefile
185                  gschem/Makefile
186                  gschem/po/Makefile.in
187                  gschem/docs/Makefile
188                  gschem/include/Makefile
189                  gschem/scripts/Makefile
190                  gschem/src/Makefile
191                  gschem/examples/Makefile
192                  gschem/lib/Makefile
193                  gschem/data/Makefile
194                  gschem/bitmap/Makefile
195                  gschem/tests/Makefile
196                  gschem/scheme/Makefile
198                  gattrib/Makefile
199                  gattrib/po/Makefile.in
200                  gattrib/design/Makefile
201                  gattrib/docs/Makefile
202                  gattrib/include/Makefile
203                  gattrib/lib/Makefile
204                  gattrib/lib/system-gattribrc
205                  gattrib/src/Makefile
206                  gattrib/data/Makefile
208                  gsymcheck/docs/Makefile
209                  gsymcheck/include/Makefile
210                  gsymcheck/lib/Makefile
211                  gsymcheck/lib/system-gsymcheckrc
212                  gsymcheck/src/Makefile
213                  gsymcheck/tests/Makefile
214                  gsymcheck/Makefile
216                  gnetlist/Makefile
217                  gnetlist/src/Makefile
218                  gnetlist/include/Makefile
219                  gnetlist/scheme/Makefile
220                  gnetlist/examples/Makefile
221                  gnetlist/tests/Makefile
222                  gnetlist/tests/hierarchy/Makefile
223                  gnetlist/tests/hierarchy2/Makefile
224                  gnetlist/tests/drc2/Makefile
225                  gnetlist/tests/common/Makefile
226                  gnetlist/docs/Makefile
227                  gnetlist/docs/vams/Makefile
228                  gnetlist/examples/vams/Makefile
229                  gnetlist/examples/vams/vhdl/Makefile
230                  gnetlist/examples/vams/vhdl/basic-vhdl/Makefile
231                  gnetlist/examples/vams/vhdl/new-vhdl/Makefile
232                  gnetlist/examples/switcap/Makefile
233                  gnetlist/lib/Makefile
234                  gnetlist/utils/Makefile
235                  gnetlist/scripts/Makefile
236                  gnetlist/scripts/annotate.sh
237                  gnetlist/scripts/bom_xref.sh
238                  gnetlist/scripts/bompp.sh
239                  gnetlist/scripts/sw2asc
240                  gnetlist/lib/system-gnetlistrc
242                  utils/Makefile
243                  utils/docs/Makefile
244                  utils/examples/Makefile
245                  utils/examples/gmk_sym/Makefile
246                  utils/examples/gsch2pcb/Makefile
247                  utils/examples/tragesym/Makefile
248                  utils/gschlas/Makefile
249                  utils/gxyrs/Makefile
250                  utils/include/Makefile
251                  utils/lib/Makefile
252                  utils/lib/system-gschlasrc
253                  utils/scripts/Makefile
254                  utils/src/Makefile
255                  utils/tests/Makefile
256                  utils/tests/gxyrs/Makefile
257                  utils/tests/gxyrs/inputs/Makefile
258                  utils/tests/gxyrs/outputs/Makefile
259                  utils/tests/refdes_renum/Makefile
260                  utils/tests/refdes_renum/inputs/Makefile
261                  utils/tests/refdes_renum/outputs/Makefile
263                  symbols/Makefile
264                  symbols/documentation/Makefile
266                  docs/Makefile
267                  docs/scheme-api/Makefile
268                  docs/scripts/Makefile
269                  docs/toplevel/Makefile
270                  docs/toplevel/gedadocs.html
271                  docs/wiki/Makefile
272                  docs/wiki/images/smileys/Makefile
273                  docs/wiki/images/Makefile
274                  docs/wiki/images/interwiki/Makefile
275                  docs/wiki/media/geda/Makefile
276                  docs/wiki/media/wiki/Makefile
277                  docs/wiki/media/tragesym/tragesym/Makefile
278                  docs/wiki/media/tragesym/Makefile
279                  docs/wiki/media/Makefile
280                  docs/wiki/media/devel_tips/Makefile
282                  examples/Makefile
283                  examples/RF_Amp/Makefile
284                  examples/RF_Amp/model/Makefile
285                  examples/RF_Amp/sym/Makefile
286                  examples/TwoStageAmp/Makefile
287                  examples/gTAG/Makefile
288                  examples/lightning_detector/Makefile
290 AC_OUTPUT