]> git.saurik.com Git - wxWidgets.git/blob - aclocal.m4
fix for stupid segfault
[wxWidgets.git] / aclocal.m4
1 dnl aclocal.m4 generated automatically by aclocal 1.4
2
3 dnl Copyright (C) 1994, 1995-8, 1999 Free Software Foundation, Inc.
4 dnl This file is free software; the Free Software Foundation
5 dnl gives unlimited permission to copy and/or distribute it,
6 dnl with or without modifications, as long as this notice is preserved.
7
8 dnl This program is distributed in the hope that it will be useful,
9 dnl but WITHOUT ANY WARRANTY, to the extent permitted by law; without
10 dnl even the implied warranty of MERCHANTABILITY or FITNESS FOR A
11 dnl PARTICULAR PURPOSE.
12
13 dnl AM_PATH_GTK([MINIMUM-VERSION, [ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND [, MODULES]]]])
14 dnl Test for GTK, and define GTK_CFLAGS and GTK_LIBS
15 dnl
16 AC_DEFUN(AM_PATH_GTK,
17 [dnl
18 dnl Get the cflags and libraries from the gtk-config script
19 dnl
20 AC_ARG_WITH(gtk-prefix,[ --with-gtk-prefix=PFX Prefix where GTK is installed (optional)],
21 gtk_config_prefix="$withval", gtk_config_prefix="")
22 AC_ARG_WITH(gtk-exec-prefix,[ --with-gtk-exec-prefix=PFX Exec prefix where GTK is installed (optional)],
23 gtk_config_exec_prefix="$withval", gtk_config_exec_prefix="")
24 AC_ARG_ENABLE(gtktest, [ --disable-gtktest Do not try to compile and run a test GTK program],
25 , enable_gtktest=yes)
26
27 for module in . $4
28 do
29 case "$module" in
30 gthread)
31 gtk_config_args="$gtk_config_args gthread"
32 ;;
33 esac
34 done
35
36 if test x$gtk_config_exec_prefix != x ; then
37 gtk_config_args="$gtk_config_args --exec-prefix=$gtk_config_exec_prefix"
38 if test x${GTK_CONFIG+set} != xset ; then
39 GTK_CONFIG=$gtk_config_exec_prefix/bin/gtk-config
40 fi
41 fi
42 if test x$gtk_config_prefix != x ; then
43 gtk_config_args="$gtk_config_args --prefix=$gtk_config_prefix"
44 if test x${GTK_CONFIG+set} != xset ; then
45 GTK_CONFIG=$gtk_config_prefix/bin/gtk-config
46 fi
47 fi
48
49 AC_PATH_PROG(GTK_CONFIG, gtk-config, no)
50 min_gtk_version=ifelse([$1], ,0.99.7,$1)
51 AC_MSG_CHECKING(for GTK - version >= $min_gtk_version)
52 no_gtk=""
53 if test "$GTK_CONFIG" = "no" ; then
54 no_gtk=yes
55 else
56 GTK_CFLAGS=`$GTK_CONFIG $gtk_config_args --cflags`
57 GTK_LIBS=`$GTK_CONFIG $gtk_config_args --libs`
58 gtk_config_major_version=`$GTK_CONFIG $gtk_config_args --version | \
59 sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\1/'`
60 gtk_config_minor_version=`$GTK_CONFIG $gtk_config_args --version | \
61 sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\2/'`
62 gtk_config_micro_version=`$GTK_CONFIG $gtk_config_args --version | \
63 sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\3/'`
64 if test "x$enable_gtktest" = "xyes" ; then
65 ac_save_CFLAGS="$CFLAGS"
66 ac_save_LIBS="$LIBS"
67 CFLAGS="$CFLAGS $GTK_CFLAGS"
68 LIBS="$GTK_LIBS $LIBS"
69 dnl
70 dnl Now check if the installed GTK is sufficiently new. (Also sanity
71 dnl checks the results of gtk-config to some extent
72 dnl
73 rm -f conf.gtktest
74 AC_TRY_RUN([
75 #include <gtk/gtk.h>
76 #include <stdio.h>
77 #include <stdlib.h>
78
79 int
80 main ()
81 {
82 int major, minor, micro;
83 char *tmp_version;
84
85 system ("touch conf.gtktest");
86
87 /* HP/UX 9 (%@#!) writes to sscanf strings */
88 tmp_version = g_strdup("$min_gtk_version");
89 if (sscanf(tmp_version, "%d.%d.%d", &major, &minor, &micro) != 3) {
90 printf("%s, bad version string\n", "$min_gtk_version");
91 exit(1);
92 }
93
94 if ((gtk_major_version != $gtk_config_major_version) ||
95 (gtk_minor_version != $gtk_config_minor_version) ||
96 (gtk_micro_version != $gtk_config_micro_version))
97 {
98 printf("\n*** 'gtk-config --version' returned %d.%d.%d, but GTK+ (%d.%d.%d)\n",
99 $gtk_config_major_version, $gtk_config_minor_version, $gtk_config_micro_version,
100 gtk_major_version, gtk_minor_version, gtk_micro_version);
101 printf ("*** was found! If gtk-config was correct, then it is best\n");
102 printf ("*** to remove the old version of GTK+. You may also be able to fix the error\n");
103 printf("*** by modifying your LD_LIBRARY_PATH enviroment variable, or by editing\n");
104 printf("*** /etc/ld.so.conf. Make sure you have run ldconfig if that is\n");
105 printf("*** required on your system.\n");
106 printf("*** If gtk-config was wrong, set the environment variable GTK_CONFIG\n");
107 printf("*** to point to the correct copy of gtk-config, and remove the file config.cache\n");
108 printf("*** before re-running configure\n");
109 }
110 #if defined (GTK_MAJOR_VERSION) && defined (GTK_MINOR_VERSION) && defined (GTK_MICRO_VERSION)
111 else if ((gtk_major_version != GTK_MAJOR_VERSION) ||
112 (gtk_minor_version != GTK_MINOR_VERSION) ||
113 (gtk_micro_version != GTK_MICRO_VERSION))
114 {
115 printf("*** GTK+ header files (version %d.%d.%d) do not match\n",
116 GTK_MAJOR_VERSION, GTK_MINOR_VERSION, GTK_MICRO_VERSION);
117 printf("*** library (version %d.%d.%d)\n",
118 gtk_major_version, gtk_minor_version, gtk_micro_version);
119 }
120 #endif /* defined (GTK_MAJOR_VERSION) ... */
121 else
122 {
123 if ((gtk_major_version > major) ||
124 ((gtk_major_version == major) && (gtk_minor_version > minor)) ||
125 ((gtk_major_version == major) && (gtk_minor_version == minor) && (gtk_micro_version >= micro)))
126 {
127 return 0;
128 }
129 else
130 {
131 printf("\n*** An old version of GTK+ (%d.%d.%d) was found.\n",
132 gtk_major_version, gtk_minor_version, gtk_micro_version);
133 printf("*** You need a version of GTK+ newer than %d.%d.%d. The latest version of\n",
134 major, minor, micro);
135 printf("*** GTK+ is always available from ftp://ftp.gtk.org.\n");
136 printf("***\n");
137 printf("*** If you have already installed a sufficiently new version, this error\n");
138 printf("*** probably means that the wrong copy of the gtk-config shell script is\n");
139 printf("*** being found. The easiest way to fix this is to remove the old version\n");
140 printf("*** of GTK+, but you can also set the GTK_CONFIG environment to point to the\n");
141 printf("*** correct copy of gtk-config. (In this case, you will have to\n");
142 printf("*** modify your LD_LIBRARY_PATH enviroment variable, or edit /etc/ld.so.conf\n");
143 printf("*** so that the correct libraries are found at run-time))\n");
144 }
145 }
146 return 1;
147 }
148 ],, no_gtk=yes,[echo $ac_n "cross compiling; assumed OK... $ac_c"])
149 CFLAGS="$ac_save_CFLAGS"
150 LIBS="$ac_save_LIBS"
151 fi
152 fi
153 if test "x$no_gtk" = x ; then
154 AC_MSG_RESULT(yes)
155 ifelse([$2], , :, [$2])
156 else
157 AC_MSG_RESULT(no)
158 if test "$GTK_CONFIG" = "no" ; then
159 echo "*** The gtk-config script installed by GTK could not be found"
160 echo "*** If GTK was installed in PREFIX, make sure PREFIX/bin is in"
161 echo "*** your path, or set the GTK_CONFIG environment variable to the"
162 echo "*** full path to gtk-config."
163 else
164 if test -f conf.gtktest ; then
165 :
166 else
167 echo "*** Could not run GTK test program, checking why..."
168 CFLAGS="$CFLAGS $GTK_CFLAGS"
169 LIBS="$LIBS $GTK_LIBS"
170 AC_TRY_LINK([
171 #include <gtk/gtk.h>
172 #include <stdio.h>
173 ], [ return ((gtk_major_version) || (gtk_minor_version) || (gtk_micro_version)); ],
174 [ echo "*** The test program compiled, but did not run. This usually means"
175 echo "*** that the run-time linker is not finding GTK or finding the wrong"
176 echo "*** version of GTK. If it is not finding GTK, you'll need to set your"
177 echo "*** LD_LIBRARY_PATH environment variable, or edit /etc/ld.so.conf to point"
178 echo "*** to the installed location Also, make sure you have run ldconfig if that"
179 echo "*** is required on your system"
180 echo "***"
181 echo "*** If you have an old version installed, it is best to remove it, although"
182 echo "*** you may also be able to get things to work by modifying LD_LIBRARY_PATH"
183 echo "***"
184 echo "*** If you have a RedHat 5.0 system, you should remove the GTK package that"
185 echo "*** came with the system with the command"
186 echo "***"
187 echo "*** rpm --erase --nodeps gtk gtk-devel" ],
188 [ echo "*** The test program failed to compile or link. See the file config.log for the"
189 echo "*** exact error that occured. This usually means GTK was incorrectly installed"
190 echo "*** or that you have moved GTK since it was installed. In the latter case, you"
191 echo "*** may want to edit the gtk-config script: $GTK_CONFIG" ])
192 CFLAGS="$ac_save_CFLAGS"
193 LIBS="$ac_save_LIBS"
194 fi
195 fi
196 GTK_CFLAGS=""
197 GTK_LIBS=""
198 ifelse([$3], , :, [$3])
199 fi
200 AC_SUBST(GTK_CFLAGS)
201 AC_SUBST(GTK_LIBS)
202 rm -f conf.gtktest
203 ])
204
205 dnl AM_PATH_GTK_2_0([MINIMUM-VERSION, [ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND [, MODULES]]]])
206 dnl Test for GTK, and define GTK_CFLAGS and GTK_LIBS
207 dnl
208 AC_DEFUN(AM_PATH_GTK_2_0,
209 [dnl
210 dnl Get the cflags and libraries from the gtk-config-2.0 script
211 dnl
212 AC_ARG_WITH(gtk-prefix,[ --with-gtk-prefix=PFX Prefix where GTK is installed (optional)],
213 gtk_config_prefix="$withval", gtk_config_prefix="")
214 AC_ARG_WITH(gtk-exec-prefix,[ --with-gtk-exec-prefix=PFX Exec prefix where GTK is installed (optional)],
215 gtk_config_exec_prefix="$withval", gtk_config_exec_prefix="")
216 AC_ARG_ENABLE(gtktest, [ --disable-gtktest Do not try to compile and run a test GTK program],
217 , enable_gtktest=yes)
218
219 for module in . $4
220 do
221 case "$module" in
222 gthread)
223 gtk_config_args="$gtk_config_args gthread"
224 ;;
225 esac
226 done
227
228 if test x$gtk_config_exec_prefix != x ; then
229 gtk_config_args="$gtk_config_args --exec-prefix=$gtk_config_exec_prefix"
230 if test x${GTK_CONFIG_2_0+set} != xset ; then
231 GTK_CONFIG_2_0=$gtk_config_exec_prefix/bin/gtk-config-2.0
232 fi
233 fi
234 if test x$gtk_config_prefix != x ; then
235 gtk_config_args="$gtk_config_args --prefix=$gtk_config_prefix"
236 if test x${GTK_CONFIG_2_0+set} != xset ; then
237 GTK_CONFIG_2_0=$gtk_config_prefix/bin/gtk-config-2.0
238 fi
239 fi
240
241 AC_PATH_PROG(GTK_CONFIG_2_0, gtk-config-2.0, no)
242 min_gtk_version=ifelse([$1], ,1.3.1,$1)
243 AC_MSG_CHECKING(for GTK - version >= $min_gtk_version)
244 no_gtk=""
245 if test "$GTK_CONFIG_2_0" = "no" ; then
246 no_gtk=yes
247 else
248 GTK_CFLAGS=`$GTK_CONFIG_2_0 $gtk_config_args --cflags`
249 GTK_LIBS=`$GTK_CONFIG_2_0 $gtk_config_args --libs`
250 gtk_config_major_version=`$GTK_CONFIG_2_0 $gtk_config_args --version | \
251 sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\1/'`
252 gtk_config_minor_version=`$GTK_CONFIG_2_0 $gtk_config_args --version | \
253 sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\2/'`
254 gtk_config_micro_version=`$GTK_CONFIG_2_0 $gtk_config_args --version | \
255 sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\3/'`
256 if test "x$enable_gtktest" = "xyes" ; then
257 ac_save_CFLAGS="$CFLAGS"
258 ac_save_LIBS="$LIBS"
259 CFLAGS="$CFLAGS $GTK_CFLAGS"
260 LIBS="$GTK_LIBS $LIBS"
261 dnl
262 dnl Now check if the installed GTK is sufficiently new. (Also sanity
263 dnl checks the results of gtk-config-2.0 to some extent
264 dnl
265 rm -f conf.gtktest
266 AC_TRY_RUN([
267 #include <gtk/gtk.h>
268 #include <stdio.h>
269 #include <stdlib.h>
270
271 int
272 main ()
273 {
274 int major, minor, micro;
275 char *tmp_version;
276
277 system ("touch conf.gtktest");
278
279 /* HP/UX 9 (%@#!) writes to sscanf strings */
280 tmp_version = g_strdup("$min_gtk_version");
281 if (sscanf(tmp_version, "%d.%d.%d", &major, &minor, &micro) != 3) {
282 printf("%s, bad version string\n", "$min_gtk_version");
283 exit(1);
284 }
285
286 if ((gtk_major_version != $gtk_config_major_version) ||
287 (gtk_minor_version != $gtk_config_minor_version) ||
288 (gtk_micro_version != $gtk_config_micro_version))
289 {
290 printf("\n*** 'gtk-config-2.0 --version' returned %d.%d.%d, but GTK+ (%d.%d.%d)\n",
291 $gtk_config_major_version, $gtk_config_minor_version, $gtk_config_micro_version,
292 gtk_major_version, gtk_minor_version, gtk_micro_version);
293 printf ("*** was found! If gtk-config-2.0 was correct, then it is best\n");
294 printf ("*** to remove the old version of GTK+. You may also be able to fix the error\n");
295 printf("*** by modifying your LD_LIBRARY_PATH enviroment variable, or by editing\n");
296 printf("*** /etc/ld.so.conf. Make sure you have run ldconfig if that is\n");
297 printf("*** required on your system.\n");
298 printf("*** If gtk-config-2.0 was wrong, set the environment variable GTK_CONFIG_2_0\n");
299 printf("*** to point to the correct copy of gtk-config-2.0, and remove the file config.cache\n");
300 printf("*** before re-running configure\n");
301 }
302 #if defined (GTK_MAJOR_VERSION) && defined (GTK_MINOR_VERSION) && defined (GTK_MICRO_VERSION)
303 else if ((gtk_major_version != GTK_MAJOR_VERSION) ||
304 (gtk_minor_version != GTK_MINOR_VERSION) ||
305 (gtk_micro_version != GTK_MICRO_VERSION))
306 {
307 printf("*** GTK+ header files (version %d.%d.%d) do not match\n",
308 GTK_MAJOR_VERSION, GTK_MINOR_VERSION, GTK_MICRO_VERSION);
309 printf("*** library (version %d.%d.%d)\n",
310 gtk_major_version, gtk_minor_version, gtk_micro_version);
311 }
312 #endif /* defined (GTK_MAJOR_VERSION) ... */
313 else
314 {
315 if ((gtk_major_version > major) ||
316 ((gtk_major_version == major) && (gtk_minor_version > minor)) ||
317 ((gtk_major_version == major) && (gtk_minor_version == minor) && (gtk_micro_version >= micro)))
318 {
319 return 0;
320 }
321 else
322 {
323 printf("\n*** An old version of GTK+ (%d.%d.%d) was found.\n",
324 gtk_major_version, gtk_minor_version, gtk_micro_version);
325 printf("*** You need a version of GTK+ newer than %d.%d.%d. The latest version of\n",
326 major, minor, micro);
327 printf("*** GTK+ is always available from ftp://ftp.gtk.org.\n");
328 printf("***\n");
329 printf("*** If you have already installed a sufficiently new version, this error\n");
330 printf("*** probably means that the wrong copy of the gtk-config-2.0 shell script is\n");
331 printf("*** being found. The easiest way to fix this is to remove the old version\n");
332 printf("*** of GTK+, but you can also set the GTK_CONFIG_2_0 environment to point to the\n");
333 printf("*** correct copy of gtk-config-2.0. (In this case, you will have to\n");
334 printf("*** modify your LD_LIBRARY_PATH enviroment variable, or edit /etc/ld.so.conf\n");
335 printf("*** so that the correct libraries are found at run-time))\n");
336 }
337 }
338 return 1;
339 }
340 ],, no_gtk=yes,[echo $ac_n "cross compiling; assumed OK... $ac_c"])
341 CFLAGS="$ac_save_CFLAGS"
342 LIBS="$ac_save_LIBS"
343 fi
344 fi
345 if test "x$no_gtk" = x ; then
346 AC_MSG_RESULT(yes (version $gtk_config_major_version.$gtk_config_minor_version.$gtk_config_micro_version))
347 ifelse([$2], , :, [$2])
348 else
349 AC_MSG_RESULT(no)
350 if test "$GTK_CONFIG_2_0" = "no" ; then
351 echo "*** The gtk-config-2.0 script installed by GTK could not be found"
352 echo "*** If GTK was installed in PREFIX, make sure PREFIX/bin is in"
353 echo "*** your path, or set the GTK_CONFIG_2_0 environment variable to the"
354 echo "*** full path to gtk-config-2.0."
355 else
356 if test -f conf.gtktest ; then
357 :
358 else
359 echo "*** Could not run GTK test program, checking why..."
360 CFLAGS="$CFLAGS $GTK_CFLAGS"
361 LIBS="$LIBS $GTK_LIBS"
362 AC_TRY_LINK([
363 #include <gtk/gtk.h>
364 #include <stdio.h>
365 ], [ return ((gtk_major_version) || (gtk_minor_version) || (gtk_micro_version)); ],
366 [ echo "*** The test program compiled, but did not run. This usually means"
367 echo "*** that the run-time linker is not finding GTK or finding the wrong"
368 echo "*** version of GTK. If it is not finding GTK, you'll need to set your"
369 echo "*** LD_LIBRARY_PATH environment variable, or edit /etc/ld.so.conf to point"
370 echo "*** to the installed location Also, make sure you have run ldconfig if that"
371 echo "*** is required on your system"
372 echo "***"
373 echo "*** If you have an old version installed, it is best to remove it, although"
374 echo "*** you may also be able to get things to work by modifying LD_LIBRARY_PATH"
375 echo "***"
376 echo "*** If you have a RedHat 5.0 system, you should remove the GTK package that"
377 echo "*** came with the system with the command"
378 echo "***"
379 echo "*** rpm --erase --nodeps gtk gtk-devel" ],
380 [ echo "*** The test program failed to compile or link. See the file config.log for the"
381 echo "*** exact error that occured. This usually means GTK was incorrectly installed"
382 echo "*** or that you have moved GTK since it was installed. In the latter case, you"
383 echo "*** may want to edit the gtk-config-2.0 script: $GTK_CONFIG_2_0" ])
384 CFLAGS="$ac_save_CFLAGS"
385 LIBS="$ac_save_LIBS"
386 fi
387 fi
388 GTK_CFLAGS=""
389 GTK_LIBS=""
390 ifelse([$3], , :, [$3])
391 fi
392 AC_SUBST(GTK_CFLAGS)
393 AC_SUBST(GTK_LIBS)
394 rm -f conf.gtktest
395 ])
396
397