]>
Commit | Line | Data |
---|---|---|
bcf1fa6b RR |
1 | dnl //////////////////////////////////////////////////////////////////////// |
2 | dnl | |
3 | dnl Top-level configure.in for wxWindows by Robert Roebling, Wolfram Gloger | |
4 | dnl and Martin Sperl. | |
5 | dnl | |
6 | dnl This script is under the wxWindows licence. | |
2904eefd | 7 | dnl $Id$ |
bcf1fa6b RR |
8 | dnl //////////////////////////////////////////////////////////////////////// |
9 | ||
c0c22f7f | 10 | |
bcf1fa6b RR |
11 | dnl AM_PATH_GTK([MINIMUM-VERSION, [ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND]]]) |
12 | dnl Test for GTK, and define GTK_CFLAGS and GTK_LIBS | |
13 | dnl | |
14 | AC_DEFUN(AM_PATH_GTK, | |
c2933500 | 15 | [dnl |
bcf1fa6b RR |
16 | dnl Get the cflags and libraries from the gtk-config script |
17 | dnl | |
f3cb6592 | 18 | AC_ARG_WITH(gtk-prefix,[**--with-gtk-prefix=PFX Prefix where GTK is installed], |
bcf1fa6b | 19 | gtk_config_prefix="$withval", gtk_config_prefix="") |
f3cb6592 | 20 | AC_ARG_WITH(gtk-exec-prefix,[**--with-gtk-exec-prefix=PFX Exec prefix where GTK is installed], |
bcf1fa6b RR |
21 | gtk_config_exec_prefix="$withval", gtk_config_exec_prefix="") |
22 | ||
23 | if test x$gtk_config_exec_prefix != x ; then | |
24 | gtk_config_args="$gtk_config_args --exec-prefix=$gtk_config_exec_prefix" | |
25 | if test x${GTK_CONFIG+set} != xset ; then | |
26 | GTK_CONFIG=$gtk_config_exec_prefix/bin/gtk-config | |
27 | fi | |
28 | fi | |
29 | if test x$gtk_config_prefix != x ; then | |
30 | gtk_config_args="$gtk_config_args --prefix=$gtk_config_prefix" | |
31 | if test x${GTK_CONFIG+set} != xset ; then | |
32 | GTK_CONFIG=$gtk_config_prefix/bin/gtk-config | |
33 | fi | |
34 | fi | |
35 | ||
36 | AC_PATH_PROG(GTK_CONFIG, gtk-config, no) | |
37 | min_gtk_version=ifelse([$1], ,0.99.7,$1) | |
38 | AC_MSG_CHECKING(for GTK - version >= $min_gtk_version) | |
39 | no_gtk="" | |
40 | if test "$GTK_CONFIG" != "no" ; then | |
41 | GTK_CFLAGS=`$GTK_CONFIG --cflags` | |
42 | GTK_LIBS=`$GTK_CONFIG --libs` | |
43 | ac_save_CFLAGS="$CFLAGS" | |
44 | ac_save_LIBS="$LIBS" | |
45 | CFLAGS="$CFLAGS $GTK_CFLAGS" | |
46 | LIBS="$LIBS $GTK_LIBS" | |
47 | dnl | |
48 | dnl Now check if the installed GTK is sufficiently new. (Also sanity | |
49 | dnl checks the results of gtk-config to some extent | |
50 | dnl | |
51 | AC_TRY_RUN([ | |
52 | #include <gtk/gtk.h> | |
53 | #include <stdio.h> | |
54 | ||
c2933500 | 55 | int |
bcf1fa6b RR |
56 | main () |
57 | { | |
58 | int major, minor, micro; | |
59 | ||
60 | if (sscanf("$min_gtk_version", "%d.%d.%d", &major, &minor, µ) != 3) { | |
61 | printf("%s, bad version string\n", "$min_gtk_version"); | |
62 | exit(1); | |
63 | } | |
64 | ||
d345e841 | 65 | if (gtk_minor_version == 1) return FALSE; |
f3855ef0 | 66 | |
bcf1fa6b | 67 | return !((gtk_major_version > major) || |
c2933500 VZ |
68 | ((gtk_major_version == major) && (gtk_minor_version > minor)) || |
69 | ((gtk_major_version == major) && (gtk_minor_version == minor) && (gtk_micro_version >= micro))); | |
bcf1fa6b RR |
70 | } |
71 | ],, no_gtk=yes,[echo $ac_n "cross compiling; assumed OK... $ac_c"]) | |
72 | CFLAGS="$ac_save_CFLAGS" | |
73 | LIBS="$ac_save_LIBS" | |
74 | else | |
75 | no_gtk=yes | |
76 | fi | |
77 | if test "x$no_gtk" = x ; then | |
78 | AC_MSG_RESULT(yes) | |
c2933500 | 79 | ifelse([$2], , :, [$2]) |
bcf1fa6b RR |
80 | else |
81 | AC_MSG_RESULT(no) | |
82 | GTK_CFLAGS="" | |
83 | GTK_LIBS="" | |
84 | ifelse([$3], , :, [$3]) | |
85 | fi | |
86 | AC_SUBST(GTK_CFLAGS) | |
87 | AC_SUBST(GTK_LIBS) | |
88 | ]) | |
89 | ||
90 | dnl ------------------------------------------------------------------------ | |
91 | dnl custom macros | |
92 | dnl ------------------------------------------------------------------------ | |
93 | ||
94 | AC_DEFUN(AC_OVERRIDES_PREPARE, | |
95 | [ | |
96 | rm -f ${OSTYPE}.system.cache.tmp | |
97 | touch ${OSTYPE}.system.cache.tmp | |
98 | touch ${OSTYPE}.system.cache | |
99 | ]) | |
100 | ||
101 | AC_DEFUN(AC_OVERRIDES_DONE, | |
102 | [ | |
103 | mv ${OSTYPE}.system.cache.tmp ${OSTYPE}.system.cache | |
104 | ]) | |
105 | ||
106 | dnl package,message,helpmessage,variable | |
107 | AC_DEFUN(AC_OVERRIDES, | |
108 | [ | |
109 | AC_MSG_CHECKING("for $2") | |
110 | AC_ARG_WITH($1,$3, | |
111 | [if test "x$with_$1" = xyes; then | |
112 | ac_cv_use_$1='$4="1"' | |
113 | else | |
114 | ac_cv_use_$1='$4="0"' | |
115 | fi], | |
116 | [ | |
117 | LINE=`grep "$4" ${OSTYPE}.system.cache` | |
118 | if test "x$LINE" != x ; then | |
119 | eval "DEFAULT_$LINE" | |
120 | fi | |
121 | ac_cv_use_$1='$4='$DEFAULT_$4 | |
122 | ]) | |
123 | eval "$ac_cv_use_$1" | |
124 | echo $ac_cv_use_$1 >> ${OSTYPE}.system.cache.tmp | |
125 | if test "$$4" = 1; then | |
126 | AC_MSG_RESULT(yes) | |
127 | else | |
128 | AC_MSG_RESULT(no) | |
129 | fi | |
130 | ]) | |
131 | ||
132 | dnl package,message,helpmessage,variable | |
133 | AC_DEFUN(AC_OVERRIDES_OLD, | |
134 | [ | |
135 | AC_MSG_CHECKING("for $2") | |
136 | AC_CACHE_VAL(ac_cv_use_$1, | |
137 | [ | |
138 | AC_ARG_WITH($1,$3, | |
139 | [if test "x$with_$1" = xyes; then | |
140 | ac_cv_use_$1='$4="1"' | |
141 | else | |
142 | ac_cv_use_$1='$4="0"' | |
143 | fi],[ac_cv_use_$1='$4=$DEFAULT_$4']) | |
144 | ]) | |
145 | eval "$ac_cv_use_$1" | |
146 | ||
147 | if test "$$4" = 1; then | |
148 | AC_MSG_RESULT(yes) | |
149 | else | |
150 | AC_MSG_RESULT(no) | |
151 | fi | |
152 | ]) | |
153 | ||
154 | AC_DEFUN(AC_PATH_FIND_INCLUDES, | |
155 | [ | |
156 | ac_find_includes= | |
157 | for ac_dir in $1; | |
158 | do | |
159 | if test -f "$ac_dir/$2"; then | |
160 | ac_find_includes=$ac_dir | |
161 | break | |
162 | fi | |
163 | done | |
164 | ]) | |
165 | ||
166 | AC_DEFUN(AC_PATH_FIND_LIBRARIES, | |
167 | [ | |
168 | ac_find_libraries= | |
169 | for ac_dir in $1; | |
170 | do | |
171 | for ac_extension in a so sl; do | |
172 | if test -f "$ac_dir/lib$2.$ac_extension"; then | |
173 | ac_find_libraries=$ac_dir | |
174 | break 2 | |
175 | fi | |
176 | done | |
177 | done | |
178 | ]) | |
179 | ||
180 | dnl Path to include, allready defined | |
181 | AC_DEFUN(AC_INCLUDE_PATH_EXIST, | |
182 | [ | |
183 | ac_path_to_include=$1 | |
184 | echo "$2" | grep "\-I$1" > /dev/null | |
185 | result=$? | |
186 | if test $result = 0; then | |
187 | ac_path_to_include="" | |
188 | else | |
c2933500 | 189 | ac_path_to_include="-I$1" |
bcf1fa6b RR |
190 | fi |
191 | ]) | |
192 | ||
193 | dnl Path to link, allready defined | |
194 | AC_DEFUN(AC_LINK_PATH_EXIST, | |
195 | [ | |
196 | echo "$2" | grep "\-L$1" > /dev/null | |
197 | result=$? | |
198 | if test $result = 0; then | |
199 | ac_path_to_link="" | |
200 | else | |
c2933500 | 201 | ac_path_to_link="-L$1" |
bcf1fa6b RR |
202 | fi |
203 | ]) | |
204 | ||
205 | dnl ------------------------------------------------------------------------ | |
206 | dnl Process this file with autoconf to produce a configure script. | |
207 | dnl ------------------------------------------------------------------------ | |
208 | ||
209 | AC_INIT(configure.in) | |
210 | ||
211 | dnl ------------------------------------------------------------------------ | |
212 | dnl Check platform | |
213 | dnl ------------------------------------------------------------------------ | |
214 | ||
215 | OS="${OSTYPE}" | |
216 | ||
217 | if test "x$OS" = "x"; then | |
218 | UNAME=`uname` | |
219 | AC_MSG_ERROR("The system variable OS has not been set" | |
220 | "please set is everytime befor compiling on this system" | |
221 | "A good example for this system would be:" | |
222 | "setenv OSTYPE $UNAME for csh as a SHELL" | |
223 | "EXPORT OSTYPE=$UNAME for sh as SHELL" | |
224 | "please set this and restart again." | |
225 | ) | |
226 | fi | |
227 | ||
228 | dnl ------------------------------------------------------------------------ | |
229 | dnl Set base directory | |
230 | dnl ------------------------------------------------------------------------ | |
231 | ||
232 | WXBASEDIR=`pwd` | |
233 | AC_SUBST(WXBASEDIR) | |
234 | ||
235 | dnl ------------------------------------------------------------------------ | |
236 | dnl search path for includes and libraries | |
237 | dnl ------------------------------------------------------------------------ | |
238 | ||
ebefb2f3 | 239 | dnl VZ: added standard locations for Xm.h for Irix, HP-UX and SunOS (19.02.99) |
bcf1fa6b | 240 | SEARCH_INCLUDE="\ |
ebefb2f3 VZ |
241 | /usr/Motif-1.2/include \ |
242 | /usr/Motif-2.1/include \ | |
243 | \ | |
244 | /usr/include/Motif1.2 \ | |
245 | /opt/xpm/include/X11 \ | |
246 | \ | |
bcf1fa6b | 247 | /usr/Motif1.2/include \ |
ebefb2f3 | 248 | /usr/dt/include \ |
db2150a1 | 249 | /usr/include/Xm \ |
c2933500 | 250 | \ |
bcf1fa6b RR |
251 | /usr/X11R6/include \ |
252 | /usr/X11R5/include \ | |
253 | /usr/X11R4/include \ | |
254 | \ | |
76153302 RR |
255 | /usr/X11R6/lib \ |
256 | /usr/X11R5/lib \ | |
257 | /usr/X11R4/lib \ | |
258 | \ | |
bcf1fa6b RR |
259 | /usr/include/X11R6 \ |
260 | /usr/include/X11R5 \ | |
261 | /usr/include/X11R4 \ | |
262 | \ | |
263 | /usr/local/X11R6/include \ | |
264 | /usr/local/X11R5/include \ | |
265 | /usr/local/X11R4/include \ | |
266 | \ | |
267 | /usr/local/include/X11R6 \ | |
268 | /usr/local/include/X11R5 \ | |
269 | /usr/local/include/X11R4 \ | |
270 | \ | |
271 | /usr/X11/include \ | |
272 | /usr/include/X11 \ | |
273 | /usr/local/X11/include \ | |
274 | /usr/local/include/X11 \ | |
275 | \ | |
276 | /usr/X386/include \ | |
277 | /usr/x386/include \ | |
278 | /usr/XFree86/include/X11 \ | |
279 | \ | |
280 | /usr/include \ | |
f3855ef0 RR |
281 | /usr/include/gtk \ |
282 | /usr/include/gdk \ | |
283 | /usr/include/glib \ | |
bcf1fa6b RR |
284 | /usr/local/include \ |
285 | /usr/unsupported/include \ | |
286 | /usr/athena/include \ | |
287 | /usr/local/x11r5/include \ | |
288 | /usr/lpp/Xamples/include \ | |
289 | \ | |
290 | /usr/local/include/gtk \ | |
d18ed59a | 291 | /usr/local/include/qt \ |
bcf1fa6b RR |
292 | /usr/include/qt \ |
293 | \ | |
294 | /usr/openwin/include \ | |
295 | /usr/openwin/share/include \ | |
296 | " | |
297 | ||
ebefb2f3 | 298 | SEARCH_LIB="`echo "$SEARCH_INCLUDE" | sed s/include/lib/g` " |
bcf1fa6b RR |
299 | |
300 | dnl ------------------------------------------------------------------------ | |
301 | dnl standard checks | |
302 | dnl ------------------------------------------------------------------------ | |
303 | ||
304 | dnl ################### | |
305 | dnl # checks programs # | |
306 | dnl ################### | |
307 | ||
308 | dnl C-compiler checks | |
309 | dnl ================= | |
310 | dnl use what compiler | |
311 | AC_PROG_CC | |
312 | dnl defines CC with the compiler to use | |
313 | dnl defines GCC with yes if using gcc | |
314 | dnl defines GCC empty if not using gcc | |
315 | dnl defines CFLAGS | |
316 | ||
317 | CFLAGS=`echo "$CFLAGS" | sed 's/-g//g'` | |
318 | ||
319 | dnl does compiler support -c and -o simultaniously | |
320 | AC_PROG_CC_C_O | |
c2933500 | 321 | dnl defines NO_MINUS_C_MINUS_O if compiler does not accept |
bcf1fa6b RR |
322 | dnl both switches simultaniously |
323 | dnl what is the c-preprocessor | |
324 | AC_PROG_CPP | |
325 | dnl defines CPP with the c-preprocessor | |
326 | dnl is -traditional needed for correct compilations | |
327 | AC_PROG_GCC_TRADITIONAL | |
328 | dnl adds -traditional for gcc if needed | |
329 | ||
330 | AC_LANG_SAVE | |
331 | ||
332 | dnl C++-compiler checks | |
333 | dnl =================== | |
334 | dnl use what compiler | |
335 | AC_PROG_CXX | |
336 | dnl defines CXX with the compiler to use | |
337 | dnl defines GXX with yes if using gxx | |
338 | dnl defines GXX empty if not using gxx | |
339 | dnl defines CXXFLAGS | |
340 | dnl what is the C++-preprocessor | |
341 | AC_PROG_CXXCPP | |
342 | dnl defines CXXCPP with the C++-preprocessor | |
343 | ||
344 | CXXFLAGS=`echo "$CXXFLAGS" | sed 's/-g//g'` | |
345 | ||
346 | AC_LANG_RESTORE | |
347 | ||
348 | dnl ranlib command | |
349 | dnl ============== | |
350 | AC_PROG_RANLIB | |
351 | dnl defines RANLIB with the appropriate command | |
352 | ||
353 | dnl ar command | |
354 | dnl ========== | |
355 | AC_CHECK_PROG(AR, ar, ar, ar) | |
356 | dnl defines AR with the appropriate command | |
357 | ||
358 | dnl install checks | |
359 | dnl ============== | |
360 | AC_PROG_INSTALL | |
361 | dnl defines INSTALL with the appropriate command | |
362 | ||
363 | dnl does ln -s works | |
364 | dnl ================ | |
365 | AC_PROG_LN_S | |
366 | dnl defines LN_S with the appropriate command | |
367 | ||
368 | dnl awk command | |
369 | dnl =========== | |
370 | AC_PROG_AWK | |
371 | dnl defines AWK with the appropriate command | |
372 | ||
5f0f31fe VZ |
373 | dnl strip command |
374 | dnl ============= | |
375 | AC_CHECK_PROG(STRIP, strip, strip, true) | |
376 | dnl defines STRIP as strip or nothing if not found | |
377 | ||
bcf1fa6b RR |
378 | dnl ############### |
379 | dnl # make checks # | |
380 | dnl ############### | |
381 | dnl check if VPATH works | |
382 | AC_MSG_CHECKING("make for VPATH support") | |
383 | dnl create Makefile | |
384 | cat - << EOF > confMake | |
385 | check : file | |
386 | cp \$? \$@ | |
387 | cp \$? final_file | |
388 | EOF | |
389 | ||
390 | if test ! -d sub ; then | |
391 | mkdir sub | |
392 | fi | |
393 | echo dummy > sub/file | |
394 | ${MAKE-make} -f confMake VPATH=sub 2> config.log > /dev/null | |
395 | RESULT=$? | |
851b9459 | 396 | rm -f sub/file check final_file confMake |
c2933500 | 397 | rmdir sub |
bcf1fa6b RR |
398 | if test "$RESULT" = 0; then |
399 | AC_MSG_RESULT(yes) | |
400 | else | |
401 | AC_MSG_RESULT(no) | |
402 | AC_MSG_ERROR( | |
403 | You need a make-utility that is able to use the variable | |
404 | VPATH correctly. | |
405 | If your version of make does not support VPATH correctly, | |
406 | please install GNU-make (possibly as gmake), and start | |
407 | configure with the following command: | |
408 | export MAKE=gmake; ./configure for sh-type shells | |
409 | setenv MAKE gmake; ./configure for csh-type shells | |
410 | Also please do remember to use gmake in this case every time | |
411 | you are trying to compile. | |
c2933500 | 412 | ) |
bcf1fa6b RR |
413 | fi |
414 | ||
415 | dnl #################### | |
416 | dnl # checks libraries # | |
417 | dnl #################### | |
418 | ||
419 | dnl find the X11 include and library files | |
420 | AC_PATH_XTRA | |
421 | dnl defines x_includes and x_libraries | |
422 | ||
423 | dnl ####################### | |
424 | dnl # checks header files # | |
425 | dnl ####################### | |
426 | AC_HEADER_DIRENT | |
427 | dnl defines DIR | |
428 | dnl defines MACRO HAVE_DIRENT_H if dirent.h exists | |
429 | dnl defines MACRO HAVE_SYS_NDIR_H if sys/ndir.h exists | |
430 | dnl defines MACRO HAVE_SYS_DIR_H if sys/dir.h exists | |
431 | dnl defines MACRO HAVE_NDIR_H if ndir.h exists | |
432 | AC_HEADER_STDC | |
433 | dnl defines STDC_HEADERS if ANSI-C header | |
434 | AC_HEADER_SYS_WAIT | |
435 | dnl defines HAVE_SYS_WAIT_H if sys/wait.h exist and is POSIX.1 | |
a4876ea4 | 436 | AC_CHECK_HEADERS(fcntl.h) |
bcf1fa6b | 437 | dnl defines HAVE_FCNTL_H |
a4876ea4 | 438 | AC_CHECK_HEADERS(limits.h) |
bcf1fa6b | 439 | dnl defines HAVE_LIMITS_h |
a4876ea4 | 440 | AC_CHECK_HEADERS(sys/file.h) |
bcf1fa6b | 441 | dnl defines HAVE_SYS_FILE_H |
a4876ea4 | 442 | AC_CHECK_HEADERS(sys/time.h) |
bcf1fa6b | 443 | dnl defines HAVE_SYS_TIME_H |
a4876ea4 | 444 | AC_CHECK_HEADERS(unistd.h) |
bcf1fa6b | 445 | dnl defines HAVE_UNISTD_H |
76ed42ef KB |
446 | AC_CHECK_HEADERS(wchar.h) |
447 | dnl defines HAVE_WCHAR_H | |
448 | AC_CHECK_HEADERS(wcstr.h) | |
449 | dnl defines HAVE_WCSTR_H | |
a4876ea4 KB |
450 | AC_CHECK_HEADERS(fnmatch.h) |
451 | dnl defines HAVE_FNMATCH_H | |
bcf1fa6b | 452 | dnl As it needs Linux 2.1.x for the moment: check whether the file exists (GL). |
a4876ea4 | 453 | AC_CHECK_HEADERS(linux/joystick.h) |
bcf1fa6b RR |
454 | GTK_JOYSTICK="" |
455 | if test "$ac_cv_header_linux_joystick_h" = "yes"; then | |
456 | GTK_JOYSTICK="gtk/joystick.cpp" | |
457 | fi | |
458 | AC_SUBST(GTK_JOYSTICK) | |
459 | ||
57493f9f VZ |
460 | dnl some systems (AIX) define some of string function in strings.h |
461 | AC_CHECK_HEADERS(strings.h) | |
462 | ||
463 | dnl ####################### | |
464 | dnl # check for functions # | |
465 | dnl ####################### | |
466 | ||
6a3ab8b1 KB |
467 | WCHAR_LINK= |
468 | dnl check for wcslen | |
469 | AC_CHECK_LIB(c,wcslen,, | |
470 | AC_CHECK_LIB(w,wcslen, | |
471 | WCHAR_LINK="-lw" ,AC_MSG_ERROR("Cannot find wcslen function."))) | |
472 | AC_SUBST(WCHAR_LINK) | |
473 | ||
35c9d958 KB |
474 | dnl check for vprintf/vsprintf() which are GNU extensions |
475 | AC_FUNC_VPRINTF | |
518b5d2f | 476 | |
57493f9f VZ |
477 | dnl check for vsnprintf() - a safe version of vsprintf() |
478 | AC_CHECK_FUNCS(vsnprintf, | |
479 | AC_DEFINE(HAVE_VSNPRINTF), | |
480 | AC_MSG_WARN(unsafe function sprintf will be used instead of snprintf) | |
481 | ) | |
482 | ||
483 | dnl check for vfork() (even if it's the same as fork() in modern Unices) | |
484 | AC_CHECK_FUNCS(vfork) | |
afb74891 | 485 | |
80cb83be | 486 | POSIX4_LINK= |
57493f9f VZ |
487 | AC_CHECK_FUNCS(nanosleep, AC_DEFINE(HAVE_NANOSLEEP), [ |
488 | AC_CHECK_LIB(posix4, nanosleep, [ | |
489 | AC_DEFINE(HAVE_NANOSLEEP) | |
490 | POSIX4_LINK="-lposix4" | |
491 | ], [ | |
492 | AC_CHECK_FUNCS(usleep, | |
493 | AC_DEFINE(HAVE_USLEEP), | |
494 | AC_MSG_WARN(Sleep() function will not work)) | |
495 | ]) | |
496 | ]) | |
518b5d2f VZ |
497 | |
498 | dnl check for uname (POSIX) and gethostname (BSD) | |
499 | AC_CHECK_FUNCS(uname gethostname, break) | |
35c9d958 | 500 | |
bcf1fa6b RR |
501 | dnl ################### |
502 | dnl # checks typedefs # | |
503 | dnl ################### | |
504 | AC_TYPE_GETGROUPS | |
505 | dnl defines GETGROUPS_T | |
506 | AC_TYPE_MODE_T | |
507 | dnl defines mode_t if not already defined | |
508 | AC_TYPE_OFF_T | |
509 | dnl defines off_t if not already defined | |
510 | AC_TYPE_PID_T | |
511 | dnl defines pid_t if not already defined | |
512 | AC_TYPE_SIGNAL | |
513 | dnl defines RETSIGTYPE for the correct return type of signal | |
514 | AC_TYPE_SIZE_T | |
515 | dnl defines size_t if not already defined | |
516 | AC_TYPE_UID_T | |
517 | dnl defines uid_t and gid_t if not already defined | |
518 | ||
519 | dnl ##################### | |
520 | dnl # checks structures # | |
521 | dnl ##################### | |
522 | ||
523 | AC_HEADER_STAT | |
c2933500 | 524 | dnl defines STAT_MACROS_BROKEN if S_ISDIR and S_ISREG |
bcf1fa6b RR |
525 | dnl do not work properly |
526 | AC_HEADER_TIME | |
527 | dnl defines TIME_WITH_SYS_TIME if time.h and sys/time.h can | |
528 | dnl both be included | |
c2933500 | 529 | AC_STRUCT_ST_BLKSIZE |
bcf1fa6b | 530 | dnl defines HAVE_ST_BLKSIZE if struct stat contains st_blksize |
c2933500 | 531 | AC_STRUCT_ST_BLOCKS |
bcf1fa6b | 532 | dnl defines HAVE_ST_BLOCKS if struct stat contains st_blocks |
c2933500 | 533 | AC_STRUCT_ST_RDEV |
bcf1fa6b RR |
534 | dnl defines HAVE_ST_RDEV if struct stat contains st_rdev |
535 | AC_STRUCT_TM | |
536 | dnl defines TM_IN_SYS_TIME if struct tm is not in time.h | |
537 | AC_STRUCT_TIMEZONE | |
538 | dnl defines HAVE_ST_BLKSIZE if struct tm contains tm_zone | |
539 | dnl otherwise | |
540 | dnl defines HAVE_TZNAME if external array tzname is found | |
541 | ||
542 | dnl ################################### | |
543 | dnl # checks compiler characteristics # | |
544 | dnl ################################### | |
bcf1fa6b RR |
545 | |
546 | AC_C_CONST | |
547 | dnl defines const to be empty if c-compiler does not support const fully | |
548 | AC_C_INLINE | |
549 | dnl defines inline to a sensible value for the c-compiler | |
550 | AC_C_CHAR_UNSIGNED | |
551 | dnl defines __CHAR_UNSIGNED__ if char is unsigned | |
552 | AC_C_LONG_DOUBLE | |
553 | dnl defines HAVE_LONGDOUBLE if compiler supports long double | |
554 | ||
555 | AC_C_BIGENDIAN | |
556 | dnl defines WORDS_BIGENDIAN if system is big endian | |
557 | ||
57493f9f VZ |
558 | dnl give some default values for cross-compiling |
559 | AC_CHECK_SIZEOF(int *, 4) | |
560 | AC_CHECK_SIZEOF(int, 4) | |
561 | AC_CHECK_SIZEOF(long, 4) | |
562 | AC_CHECK_SIZEOF(long long, 0) | |
563 | dnl defines the size of certain types of variables in SIZEOF_<TYPE> | |
bcf1fa6b | 564 | |
2d45abf1 VZ |
565 | dnl ###################### |
566 | dnl # check C++ features # | |
567 | dnl ###################### | |
568 | ||
569 | AC_LANG_SAVE | |
570 | AC_LANG_CPLUSPLUS | |
571 | ||
57493f9f VZ |
572 | dnl check for iostream (as opposed to iostream.h) standard header |
573 | AC_CHECK_HEADERS(iostream) | |
574 | if test "x$HAVE_IOSTREAM" = "x" ; then | |
575 | AC_DEFINE(wxUSE_IOSTREAMH) | |
576 | fi | |
577 | ||
2d45abf1 VZ |
578 | dnl Check for existence of builtin 'bool' data type |
579 | dnl | |
580 | dnl do nothing for cross-compilation - assume bool is not defined | |
581 | AC_MSG_CHECKING(if C++ compiler supports bool) | |
57493f9f VZ |
582 | AC_TRY_RUN([ |
583 | ||
584 | int main() | |
585 | { | |
586 | bool b = true; | |
587 | ||
588 | return 0; | |
589 | } | |
590 | ], | |
2d45abf1 VZ |
591 | AC_DEFINE(HAVE_BOOL) AC_MSG_RESULT(yes), |
592 | AC_MSG_RESULT(no), | |
593 | AC_MSG_RESULT(no assumed for cross-compilation)) | |
594 | ||
57493f9f VZ |
595 | dnl Check whether overloading on size_t/int parameter works |
596 | AC_MSG_CHECKING(if size_t and int are different types) | |
597 | AC_TRY_RUN([ | |
598 | #include <stdlib.h> | |
599 | ||
600 | void wxFoo(int i) { } | |
601 | void wxFoo(size_t n) { } | |
602 | ||
603 | int main() | |
604 | { | |
605 | int i; | |
606 | size_t n; | |
607 | wxFoo(0); | |
608 | wxFoo(1); | |
609 | wxFoo(0u); | |
610 | wxFoo(i); | |
611 | wxFoo(n); | |
612 | ||
613 | return 0; | |
614 | } | |
615 | ||
616 | ], | |
617 | AC_DEFINE(wxUSE_SIZE_T_STRING_OPERATOR) AC_MSG_RESULT(yes), | |
618 | AC_MSG_RESULT(no), | |
619 | AC_MSG_RESULT(no assumed for cross-compilation)) | |
620 | ||
2d45abf1 VZ |
621 | AC_LANG_RESTORE |
622 | ||
bcf1fa6b RR |
623 | dnl ############################ |
624 | dnl # checks library functions # | |
625 | dnl ############################ | |
626 | ||
627 | dnl ########################## | |
628 | dnl # checks system services # | |
629 | dnl ########################## | |
630 | ||
631 | ||
632 | AC_SYS_LONG_FILE_NAMES | |
633 | dnl defines HAVE_LONG_FILENAMES if filenames longer then | |
634 | dnl 14 chars are supported | |
635 | ||
636 | dnl AC_SYS_RESTARTABLE_SYSCALLS | |
c2933500 | 637 | dnl defines HAVE_RESTARTABLE_SYSCALLS if the system restarts a |
bcf1fa6b RR |
638 | dnl system call that is interrupted |
639 | dnl by a signal | |
c2933500 | 640 | |
bcf1fa6b RR |
641 | dnl ################# |
642 | dnl # checks PARSER # | |
643 | dnl ################# | |
644 | ||
645 | dnl YACC checks | |
646 | dnl =========== | |
647 | AC_PROG_YACC | |
648 | dnl defines YACC with the appropriate command | |
649 | ||
650 | dnl LEX checks | |
651 | dnl ========== | |
652 | AC_PROG_LEX | |
653 | dnl defines LEX with the appropriate command | |
654 | dnl defines LEXLIB with the appropriate library | |
655 | dnl what type is yytext | |
656 | AC_DECL_YYTEXT | |
657 | dnl defines YYTEXT_POINTER if yytext is char* | |
c2933500 | 658 | dnl defines LEX_OUTPUT_ROOT as to the base of the |
bcf1fa6b RR |
659 | dnl filename output by the lexer |
660 | ||
cd5bf2a6 RR |
661 | dnl ################################### |
662 | dnl ## Check for dynamic load module # | |
663 | dnl ################################### | |
664 | ||
665 | DL_LIBRARY= | |
666 | AC_CHECK_FUNCS(dlopen, AC_DEFINE(HAVE_LIBDL), | |
667 | [AC_CHECK_LIB(dl, dlopen, [AC_DEFINE(HAVE_LIBDL) DL_LIBRARY="-ldl"], | |
668 | [AC_CHECK_LIB(dld, dld_link, [AC_DEFINE(HAVE_DLD) DL_LIBRARY="-ldld"], | |
669 | [AC_CHECK_FUNCS(shl_load, AC_DEFINE(HAVE_SHL_LOAD) )] | |
670 | )] | |
671 | )] | |
672 | ) | |
673 | AC_SUBST(DL_LIBRARY) | |
674 | ||
675 | AC_CACHE_CHECK([for underscore before symbols], libltdl_cv_uscore, [ | |
676 | echo "main(){int i=1;} fnord(){int i=23; int ltuae=42;}" > conftest.c | |
677 | ${CC} -c conftest.c > /dev/null | |
678 | if (nm conftest.o | grep _fnord) > /dev/null; then | |
679 | libltdl_cv_uscore=yes | |
680 | else | |
681 | libltdl_cv_uscore=no | |
682 | fi | |
683 | rm -f conftest* | |
684 | ]) | |
685 | ||
686 | if test x"$libltdl_cv_uscore" = xyes; then | |
687 | if test x"$ac_cv_func_dlopen" = xyes || | |
688 | test x"$ac_cv_lib_dl_dlopen" = xyes ; then | |
689 | AC_CACHE_CHECK([whether we have to add an underscore for dlsym], | |
690 | libltdl_cv_need_uscore, [dnl | |
691 | AC_TRY_RUN([ | |
692 | #include <dlfcn.h> | |
693 | #include <stdio.h> | |
694 | fnord() { int i=42;} | |
695 | main() { void *self, *ptr1, *ptr2; self=dlopen(NULL,RTLD_LAZY); | |
696 | if(self) { ptr1=dlsym(self,"fnord"); ptr2=dlsym(self,"_fnord"); | |
c2933500 | 697 | if(ptr1 && !ptr2) exit(0); } exit(1); } |
cd5bf2a6 RR |
698 | ], libltdl_cv_need_uscore=no, libltdl_cv_need_uscore=yes, |
699 | libltdl_cv_need_uscore=no | |
700 | )]) | |
701 | fi | |
702 | fi | |
703 | ||
704 | if test x"$libltdl_cv_need_uscore" = xyes; then | |
705 | AC_DEFINE(NEED_USCORE) | |
706 | fi | |
707 | ||
708 | dnl ########################################## | |
709 | dnl ## Check for specific library functions # | |
710 | dnl ########################################## | |
711 | ||
712 | dnl Checks for library functions. | |
713 | AC_CHECK_FUNCS(strerror) | |
714 | ||
bcf1fa6b RR |
715 | dnl ------------------------------------------------------------------------ |
716 | dnl main includes | |
717 | dnl ------------------------------------------------------------------------ | |
718 | ||
719 | CHECK_INCLUDE="-I/usr/include $X_CFLAGS" | |
720 | CHECK_LIB="-L/lib -L/usr/lib $X_LIBS" | |
721 | ||
722 | dnl ------------------------------------------------------------------------ | |
723 | dnl host system | |
724 | dnl ------------------------------------------------------------------------ | |
725 | ||
726 | AC_CANONICAL_HOST | |
727 | canonical=$host | |
728 | configuration=$host_alias | |
729 | ||
730 | dnl ------------------------------------------------------------------------ | |
731 | dnl system settings | |
732 | dnl ------------------------------------------------------------------------ | |
733 | ||
734 | USE_UNIX=1 | |
735 | ||
bcf1fa6b RR |
736 | USE_LINUX= |
737 | USE_SGI= | |
738 | USE_HPUX= | |
739 | USE_SYSV= | |
740 | USE_SVR4= | |
741 | USE_AIX= | |
742 | USE_SUN= | |
743 | USE_SOLARIS= | |
744 | USE_SUNOS= | |
745 | USE_ALPHA= | |
746 | USE_OSF= | |
747 | USE_BSD= | |
748 | USE_FREEBSD= | |
749 | USE_VMS= | |
750 | USE_ULTRIX= | |
751 | USE_DATA_GENERAL= | |
752 | ||
f780dc86 | 753 | AC_DEFINE(__UNIX__) |
bcf1fa6b RR |
754 | case "${canonical}" in |
755 | *-hp-hpux* ) | |
756 | USE_HPUX=1 | |
757 | AC_DEFINE(__HPUX__) | |
758 | ;; | |
759 | *-*-linux* ) | |
760 | USE_LINUX=1 | |
761 | AC_DEFINE(__LINUX__) | |
e0e680d2 KB |
762 | TMP=`uname -m` |
763 | if test "x$TMP" = "xalpha" | |
764 | then | |
765 | USE_ALPHA=1 | |
766 | AC_DEFINE(__ALPHA__) | |
767 | fi | |
bcf1fa6b | 768 | ;; |
c2933500 | 769 | *-*-irix5* | *-*-irix6* ) |
bcf1fa6b RR |
770 | USE_SGI=1 |
771 | USE_SVR4=1 | |
772 | AC_DEFINE(__SGI__) | |
773 | AC_DEFINE(__SVR4__) | |
774 | ;; | |
c2933500 | 775 | *-*-solaris2* ) |
bcf1fa6b RR |
776 | USE_SUN=1 |
777 | USE_SOLARIS=1 | |
778 | USE_SVR4=1 | |
779 | AC_DEFINE(__SUN__) | |
780 | AC_DEFINE(__SOLARIS__) | |
781 | AC_DEFINE(__SVR4__) | |
782 | ;; | |
c2933500 | 783 | *-*-sunos4* ) |
bcf1fa6b RR |
784 | USE_SUN=1 |
785 | USE_SUNOS=1 | |
786 | USE_BSD=1 | |
787 | AC_DEFINE(__SUN__) | |
788 | AC_DEFINE(__SUNOS__) | |
789 | AC_DEFINE(__BSD__) | |
790 | ;; | |
791 | *-*-freebsd* | *-*-netbsd*) | |
792 | USE_BSD=1 | |
793 | USE_FREEBSD=1 | |
794 | AC_DEFINE(__FREEBSD__) | |
795 | AC_DEFINE(__BSD__) | |
796 | ;; | |
c2933500 | 797 | *-*-osf* ) |
bcf1fa6b RR |
798 | USE_ALPHA=1 |
799 | USE_OSF=1 | |
800 | AC_DEFINE(__ALPHA__) | |
801 | AC_DEFINE(__OSF__) | |
802 | ;; | |
c2933500 | 803 | *-*-dgux5* ) |
bcf1fa6b RR |
804 | USE_ALPHA=1 |
805 | USE_SVR4=1 | |
806 | AC_DEFINE(__ALPHA__) | |
807 | AC_DEFINE(__SVR4__) | |
808 | ;; | |
c2933500 | 809 | *-*-sysv5* ) |
bcf1fa6b RR |
810 | USE_SYSV=1 |
811 | USE_SVR4=1 | |
812 | AC_DEFINE(__SYSV__) | |
813 | AC_DEFINE(__SVR4__) | |
814 | ;; | |
c2933500 | 815 | *-*-aix* ) |
bcf1fa6b RR |
816 | USE_AIX=1 |
817 | USE_SYSV=1 | |
818 | USE_SVR4=1 | |
819 | AC_DEFINE(__AIX__) | |
820 | AC_DEFINE(__SYSV__) | |
821 | AC_DEFINE(__SVR4__) | |
822 | ;; | |
823 | *) | |
824 | AC_MSG_ERROR(I don't know your system type.) | |
825 | esac | |
826 | ||
827 | dnl ------------------------------------------------------------------------ | |
828 | dnl defaults for command options | |
829 | dnl ------------------------------------------------------------------------ | |
830 | ||
831 | AC_OVERRIDES_PREPARE | |
832 | ||
6fbf0513 | 833 | DEFAULT_wxUSE_GTK=1 |
8248314d VZ |
834 | DEFAULT_wxUSE_QT=0 |
835 | DEFAULT_wxUSE_MOTIF=0 | |
bcf1fa6b | 836 | |
8710cf5c | 837 | DEFAULT_wxUSE_THREADS=0 |
cb43b372 | 838 | |
8248314d VZ |
839 | DEFAULT_wxUSE_SHARED=1 |
840 | DEFAULT_wxUSE_OPTIMISE=1 | |
841 | DEFAULT_wxUSE_PROFILE=0 | |
842 | DEFAULT_wxUSE_DEBUG_FLAG=0 | |
843 | DEFAULT_wxUSE_DEBUG_INFO=0 | |
844 | DEFAULT_wxUSE_MEM_TRACING=0 | |
845 | DEFAULT_wxUSE_DMALLOC=0 | |
846 | DEFAULT_wxUSE_APPLE_IEEE=1 | |
847 | DEFAULT_wxUSE_IOSTREAMH=1 | |
848 | ||
849 | DEFAULT_wxUSE_ZLIB=1 | |
8248314d | 850 | DEFAULT_wxUSE_LIBPNG=1 |
e1929140 | 851 | DEFAULT_wxUSE_LIBJPEG=1 |
8710cf5c | 852 | DEFAULT_wxUSE_ODBC=1 |
8248314d | 853 | |
8248314d | 854 | DEFAULT_wxUSE_TIMEDATE=1 |
8248314d VZ |
855 | DEFAULT_wxUSE_INTL=1 |
856 | DEFAULT_wxUSE_CONFIG=1 | |
857 | DEFAULT_wxUSE_STREAMS=1 | |
7f3b7908 | 858 | DEFAULT_wxUSE_SOCKETS=1 |
8248314d | 859 | DEFAULT_wxUSE_SERIAL=1 |
eb9bbf52 | 860 | DEFAULT_wxUSE_DYNLIB_CLASS=1 |
8248314d VZ |
861 | |
862 | DEFAULT_wxUSE_AFM_FOR_POSTSCRIPT=1 | |
bcf1fa6b | 863 | DEFAULT_WX_NORMALIZED_PS_FONTS=1 |
8248314d | 864 | DEFAULT_wxUSE_POSTSCRIPT=1 |
bcf1fa6b | 865 | |
8248314d VZ |
866 | DEFAULT_wxUSE_IPC=1 |
867 | DEFAULT_wxUSE_RESOURCES=1 | |
8b53e5a2 | 868 | DEFAULT_wxUSE_CLIPBOARD=1 |
ff8bfdbb | 869 | DEFAULT_wxUSE_TOOLTIPS=1 |
ac57418f | 870 | DEFAULT_wxUSE_DRAG_AND_DROP=1 |
bcf1fa6b | 871 | |
8248314d VZ |
872 | DEFAULT_wxUSE_MDI_ARCHITECTURE=1 |
873 | DEFAULT_wxUSE_DOC_VIEW_ARCHITECTURE=1 | |
874 | DEFAULT_wxUSE_PRINTING_ARCHITECTURE=1 | |
bcf1fa6b | 875 | |
8248314d VZ |
876 | DEFAULT_wxUSE_PROLOGIO=1 |
877 | DEFAULT_wxUSE_WX_RESOURCES=1 | |
878 | DEFAULT_wxUSE_RPC=0 | |
e9aad10a | 879 | DEFAULT_wxUSE_HELP=1 |
bcf1fa6b | 880 | |
64ef3622 | 881 | DEFAULT_wxUSE_UNICODE=0 |
fb4e5803 VZ |
882 | DEFAULT_wxUSE_WCSRTOMBS=0 |
883 | ||
bcf1fa6b RR |
884 | dnl ---------------------------------------------------------------- |
885 | dnl toolkit options | |
886 | dnl ---------------------------------------------------------------- | |
887 | ||
888 | AC_OVERRIDES(gtk,gtk, | |
889 | **--with-gtk use GTK, | |
8248314d | 890 | wxUSE_GTK) |
bcf1fa6b RR |
891 | |
892 | AC_OVERRIDES(qt,qt, | |
893 | **--with-qt use Qt, | |
8248314d | 894 | wxUSE_QT) |
bcf1fa6b RR |
895 | |
896 | AC_OVERRIDES(motif,motif, | |
897 | **--with-motif use Motif/Lesstif, | |
8248314d | 898 | wxUSE_MOTIF) |
bcf1fa6b RR |
899 | |
900 | dnl ---------------------------------------------------------------- | |
901 | dnl compile options | |
902 | dnl ---------------------------------------------------------------- | |
903 | ||
904 | AC_OVERRIDES(shared,shared, | |
905 | **--with-shared create shared libraries, | |
8248314d | 906 | wxUSE_SHARED) |
bcf1fa6b RR |
907 | |
908 | AC_OVERRIDES(optimise,optimise, | |
909 | **--with-optimise create optimised code, | |
8248314d | 910 | wxUSE_OPTIMISE) |
bcf1fa6b RR |
911 | |
912 | AC_OVERRIDES(debug_flag,debug_flag, | |
913 | **--with-debug_flag create code with WXDEBUG define set to 1, | |
8248314d | 914 | wxUSE_DEBUG_FLAG) |
bcf1fa6b RR |
915 | |
916 | AC_OVERRIDES(debug_info,debug_info, | |
917 | **--with-debug_info create code with debuging information, | |
8248314d | 918 | wxUSE_DEBUG_INFO) |
bcf1fa6b | 919 | |
2904eefd KB |
920 | AC_OVERRIDES(debug_gdb,debug_gdb, |
921 | **--with-debug_gdb create code with extra GDB debuging information, | |
922 | wxUSE_DEBUG_GDB) | |
923 | ||
bcf1fa6b RR |
924 | AC_OVERRIDES(mem_tracing,mem_tracing, |
925 | **--with-mem_traing create code with memory tracing, | |
8248314d | 926 | wxUSE_MEM_TRACING) |
bcf1fa6b RR |
927 | |
928 | AC_OVERRIDES(dmalloc,dmalloc, | |
929 | **--with-dmalloc use dmalloc memory debug library (www.letters.com/dmalloc/), | |
8248314d | 930 | wxUSE_DMALLOC) |
bcf1fa6b RR |
931 | |
932 | AC_OVERRIDES(profile,profile, | |
933 | **--with-profile create code with profiling information, | |
8248314d | 934 | wxUSE_PROFILE) |
bcf1fa6b RR |
935 | |
936 | AC_OVERRIDES(apple_ieee, apple_ieee, | |
937 | **--with_apple_ieee use the Apple IEEE codec, | |
8248314d | 938 | wxUSE_APPLE_IEEE) |
bcf1fa6b | 939 | |
ac57418f RR |
940 | AC_OVERRIDES(threads,threads, |
941 | **--with-threads for enabling threads, | |
942 | wxUSE_THREADS) | |
943 | ||
eb9bbf52 VZ |
944 | AC_OVERRIDES(dynlib,dynlib, |
945 | **--with-dynlib to compile wxLibrary class, | |
946 | wxUSE_DYNLIB_CLASS) | |
947 | ||
bcf1fa6b RR |
948 | dnl ---------------------------------------------------------------- |
949 | dnl user options for libraries | |
950 | dnl ---------------------------------------------------------------- | |
951 | ||
952 | AC_OVERRIDES(zlib,zlib, | |
e1929140 | 953 | **--without-zlib don't use zlib for LZW comression, |
8248314d | 954 | wxUSE_ZLIB) |
bcf1fa6b | 955 | |
bcf1fa6b | 956 | AC_OVERRIDES(libpng,libpng, |
e1929140 | 957 | **--without-libpng don't use libpng (PNG image format), |
8248314d | 958 | wxUSE_LIBPNG) |
bcf1fa6b | 959 | |
2fff5f08 | 960 | AC_OVERRIDES(libjpeg,libjpeg, |
e1929140 | 961 | **--without-libjpeg don't use libjpeg (JPEG image format), |
2fff5f08 VS |
962 | wxUSE_LIBJPEG) |
963 | ||
bcf1fa6b RR |
964 | AC_OVERRIDES(odbc,odbc, |
965 | **--with-odbc use iODBC and wxODBC classes, | |
8248314d | 966 | wxUSE_ODBC) |
bcf1fa6b | 967 | |
bcf1fa6b RR |
968 | dnl ---------------------------------------------------------------- |
969 | dnl user options for non-GUI classes | |
970 | dnl ---------------------------------------------------------------- | |
971 | ||
972 | AC_OVERRIDES(timedate, timedate, | |
973 | **--with-timedate use wxTime and wxDate classes, | |
8248314d | 974 | wxUSE_TIMEDATE) |
bcf1fa6b | 975 | |
bcf1fa6b RR |
976 | AC_OVERRIDES(intl,intl, |
977 | **--with-intl use internationalization system, | |
8248314d | 978 | wxUSE_INTL) |
bcf1fa6b RR |
979 | |
980 | AC_OVERRIDES(config,config, | |
981 | **--with-config use wxConfig class, | |
8248314d | 982 | wxUSE_CONFIG) |
bcf1fa6b RR |
983 | |
984 | AC_OVERRIDES(streams,streams, | |
985 | **--with-streams use wxStream etc classes, | |
8248314d | 986 | wxUSE_STREAMS) |
bcf1fa6b RR |
987 | |
988 | AC_OVERRIDES(serial,serial, | |
989 | **--with-serial use class serialization, | |
8248314d | 990 | wxUSE_SERIAL) |
bcf1fa6b | 991 | |
35a4dab7 | 992 | AC_OVERRIDES(sockets,sockets, |
5f0f31fe | 993 | **--with-sockets use wxSocket etc classes, |
35a4dab7 GL |
994 | wxUSE_SOCKETS) |
995 | ||
bcf1fa6b RR |
996 | dnl ---------------------------------------------------------------- |
997 | dnl user options for PostScript | |
998 | dnl ---------------------------------------------------------------- | |
999 | ||
1000 | AC_OVERRIDES(afmfonts,afmfonts, | |
1001 | **--with-afmfonts use Adobe Font Metric Font table, | |
8248314d | 1002 | wxUSE_AFM_FOR_POSTSCRIPT) |
bcf1fa6b RR |
1003 | |
1004 | AC_OVERRIDES(normalized, normalized, | |
1005 | **--with-PS-normalized use normalized PS fonts, | |
1006 | WX_NORMALIZED_PS_FONTS) | |
1007 | ||
1008 | AC_OVERRIDES(postscript, postscript, | |
1009 | **--with-postscript use wxPostscriptDC device context, | |
8248314d | 1010 | wxUSE_POSTSCRIPT) |
bcf1fa6b | 1011 | |
fb4e5803 VZ |
1012 | dnl ---------------------------------------------------------------- |
1013 | dnl user options for wxString and Unicode | |
1014 | dnl ---------------------------------------------------------------- | |
1015 | ||
1016 | AC_OVERRIDES(unicode,unicode, | |
1017 | **--with-unicode compile wxString with Unicode support, | |
1018 | wxUSE_UNICODE) | |
1019 | ||
1020 | AC_OVERRIDES(wcsrtombs,wcsrtombs, | |
1021 | **--with-wcsrtombs use wcsrtombs instead of (buggy in GNU libc5) wcstombs, | |
1022 | wxUSE_WCSRTOMBS) | |
1023 | ||
bcf1fa6b RR |
1024 | dnl ---------------------------------------------------------------- |
1025 | dnl user options for Prolog and Resources | |
1026 | dnl ---------------------------------------------------------------- | |
1027 | ||
1028 | AC_OVERRIDES(wxresources,wxresources, | |
1029 | **--with-wxresources use wxWindows's resources, | |
8248314d | 1030 | wxUSE_WX_RESOURCES) |
bcf1fa6b RR |
1031 | |
1032 | AC_OVERRIDES(prologio,prologio, | |
1033 | **--with-prologio use Prolog IO library, | |
8248314d | 1034 | wxUSE_PROLOGIO) |
bcf1fa6b RR |
1035 | |
1036 | AC_OVERRIDES(rpc,RPC, | |
1037 | **--with-rpc use Prolog's remote procedure calls, | |
8248314d | 1038 | wxUSE_RPC) |
bcf1fa6b RR |
1039 | |
1040 | dnl ---------------------------------------------------------------- | |
1041 | dnl user options for misc stuff | |
1042 | dnl ---------------------------------------------------------------- | |
1043 | ||
1044 | AC_OVERRIDES(ipc,IPC, | |
1045 | **--with-ipc use interprocess communication (wxSocket etc.), | |
8248314d | 1046 | wxUSE_IPC) |
bcf1fa6b RR |
1047 | |
1048 | AC_OVERRIDES(resources,resources, | |
1049 | **--with-resources use X resources for saving information, | |
8248314d | 1050 | wxUSE_RESOURCES) |
bcf1fa6b RR |
1051 | |
1052 | AC_OVERRIDES(clipboard,clipboard, | |
1053 | **--with-clipboard use wxClipboard classes, | |
8248314d | 1054 | wxUSE_CLIPBOARD) |
bcf1fa6b | 1055 | |
ff8bfdbb VZ |
1056 | AC_OVERRIDES(tooltips,tooltips, |
1057 | **--with-tooltips use tooltips, | |
1058 | wxUSE_TOOLTIPS) | |
1059 | ||
bcf1fa6b RR |
1060 | AC_OVERRIDES(dnd,dnd, |
1061 | **--with-dnd use Drag'n'Drop classes, | |
ac57418f | 1062 | wxUSE_DRAG_AND_DROP) |
bcf1fa6b RR |
1063 | |
1064 | dnl ---------------------------------------------------------------- | |
1065 | dnl user options for architectures | |
1066 | dnl ---------------------------------------------------------------- | |
1067 | ||
1068 | AC_OVERRIDES(mdi,mdi, | |
1069 | **--with-mdi use multiple document interface architecture, | |
8248314d | 1070 | wxUSE_MDI_ARCHITECTURE) |
bcf1fa6b RR |
1071 | |
1072 | AC_OVERRIDES(docview,docview, | |
1073 | **--with-docview use document view architecture, | |
8248314d | 1074 | wxUSE_DOC_VIEW_ARCHITECTURE) |
bcf1fa6b RR |
1075 | |
1076 | AC_OVERRIDES(printarch,printarch, | |
1077 | **--with-printarch use printing architecture, | |
8248314d | 1078 | wxUSE_PRINTING_ARCHITECTURE) |
bcf1fa6b | 1079 | |
e9aad10a KB |
1080 | AC_OVERRIDES(help,help, |
1081 | **--with-help use help (using external browser at present), | |
1082 | wxUSE_HELP) | |
1083 | ||
bcf1fa6b RR |
1084 | dnl ---------------------------------------------------------------- |
1085 | dnl Unix, obviously | |
1086 | dnl ---------------------------------------------------------------- | |
1087 | ||
8248314d | 1088 | if test "$wxUSE_UNIX" = 1 ; then |
bcf1fa6b RR |
1089 | AC_DEFINE(__UNIX__) |
1090 | fi | |
1091 | ||
6d5977df KB |
1092 | dnl ---------------------------------------------------------------- |
1093 | dnl Linux: test for libc5/glibc2: glibc2 has gettext() included | |
1094 | dnl ---------------------------------------------------------------- | |
1095 | if test "$USE_LINUX" = 1; then | |
91845ada | 1096 | AC_CHECK_LIB(c,gettext,AC_DEFINE(wxHAVE_GLIBC2)) |
6d5977df KB |
1097 | fi |
1098 | ||
bcf1fa6b RR |
1099 | dnl ---------------------------------------------------------------- |
1100 | dnl search for toolkit (widget sets) | |
1101 | dnl ---------------------------------------------------------------- | |
1102 | ||
1103 | TOOLKIT= | |
1104 | TOOLKIT_DEF= | |
1105 | ||
1106 | GUI_TK_INCLUDE= | |
1107 | GUI_TK_LIBRARY= | |
1108 | GUI_TK_LINK= | |
1109 | ||
76153302 RR |
1110 | WX_LINK= |
1111 | ||
bcf1fa6b RR |
1112 | MAKEINCLUDE= |
1113 | ||
e5ea3f7a RR |
1114 | WXGTK12= |
1115 | ||
8248314d | 1116 | if test "$wxUSE_GTK" = 1; then |
d345e841 | 1117 | AM_PATH_GTK(1.0.0, [ |
bcf1fa6b RR |
1118 | GUI_TK_INCLUDE="$GTK_CFLAGS" |
1119 | GUI_TK_LIBRARY="$GTK_LIBS" | |
d345e841 | 1120 | ], AC_MSG_ERROR(Is gtk-config in path and GTK+ is version 1.2.X or 1.0.X?)) |
bcf1fa6b RR |
1121 | TOOLKIT=GTK |
1122 | TOOLKIT_DEF=__WXGTK__ | |
8710cf5c | 1123 | WX_LINK=-lwx_gtk2 |
bcf1fa6b | 1124 | MAKEINCLUDE=../gtk.inc |
e5ea3f7a RR |
1125 | AM_PATH_GTK(1.2.0, [ |
1126 | WXGTK12=1 | |
1127 | ], AC_MSG_RESULT(no)) | |
bcf1fa6b RR |
1128 | fi |
1129 | ||
8248314d | 1130 | if test "$wxUSE_QT" = 1; then |
bcf1fa6b RR |
1131 | AC_MSG_CHECKING(for Qt includes) |
1132 | AC_PATH_FIND_INCLUDES($SEARCH_INCLUDE,qapp.h) | |
1133 | if test "$ac_find_includes" != "" ; then | |
1134 | AC_MSG_RESULT(found $ac_find_includes) | |
1135 | AC_MSG_CHECKING(for Qt library) | |
1136 | AC_PATH_FIND_LIBRARIES($SEARCH_LIB,qt) | |
1137 | if test "$ac_find_libraries" != "" ; then | |
1138 | AC_INCLUDE_PATH_EXIST($ac_find_includes,$CHECK_INCLUDE) | |
1139 | AC_LINK_PATH_EXIST($ac_find_libraries,$CHECK_LIB) | |
1140 | CHECK_LINK="$CHECK_INCLUDE $ac_path_to_link" | |
1141 | CHECK_INCLUDE="$CHECK_INCLUDE $ac_path_to_include" | |
1142 | AC_MSG_RESULT(found Qt at $ac_find_libraries) | |
1143 | else | |
1144 | AC_MSG_ERROR(no) | |
1145 | fi | |
1146 | else | |
1147 | AC_MSG_ERROR(no) | |
1148 | fi | |
76153302 | 1149 | GUI_TK_LINK="-lX11 -lqt -lm" |
bcf1fa6b RR |
1150 | TOOLKIT=QT |
1151 | TOOLKIT_DEF=__WXQT__ | |
76153302 | 1152 | WX_LINK=-lwx_qt |
bcf1fa6b RR |
1153 | MAKEINCLUDE=../qt.inc |
1154 | fi | |
1155 | ||
8248314d | 1156 | if test "$wxUSE_MOTIF" = 1; then |
57493f9f VZ |
1157 | AC_MSG_CHECKING(for Motif/Lesstif includes) |
1158 | AC_PATH_FIND_INCLUDES($SEARCH_INCLUDE, Xm/Xm.h) | |
1159 | if test "$ac_find_includes" != "" ; then | |
1160 | AC_MSG_RESULT(found $ac_find_includes) | |
1161 | else | |
1162 | AC_MSG_RESULT(no) | |
1163 | AC_MSG_ERROR(please set CFLAGS to contain the location of Xm/Xm.h) | |
1164 | fi | |
c2933500 | 1165 | |
57493f9f VZ |
1166 | AC_MSG_CHECKING(for Motif/Lesstif library) |
1167 | AC_PATH_FIND_LIBRARIES($SEARCH_LIB, Xm) | |
1168 | if test "$ac_find_libraries" != "" ; then | |
1169 | AC_INCLUDE_PATH_EXIST($ac_find_includes, $CHECK_INCLUDE) | |
1170 | AC_LINK_PATH_EXIST($ac_find_libraries, $CHECK_LIB) | |
1171 | ||
1172 | CHECK_LINK="$CHECK_LIB $ac_path_to_link" | |
1173 | CHECK_INCLUDE="$CHECK_INCLUDE $ac_path_to_include" | |
1174 | AC_MSG_RESULT(found at $ac_find_libraries) | |
1175 | else | |
1176 | AC_MSG_RESULT(no) | |
1177 | AC_MSG_ERROR(please set LDFLAGS to contain the location of libXm) | |
1178 | fi | |
1179 | ||
1180 | AC_MSG_CHECKING(for Xt library) | |
1181 | AC_PATH_FIND_LIBRARIES($SEARCH_LIB,Xt) | |
1182 | if test "$ac_find_libraries" != "" ; then | |
1183 | AC_LINK_PATH_EXIST($ac_find_libraries,$CHECK_LIB) | |
1184 | CHECK_LINK="$CHECK_LIB $ac_path_to_link" | |
1185 | AC_MSG_RESULT(found at $ac_find_libraries) | |
1186 | else | |
1187 | AC_MSG_RESULT(no) | |
1188 | AC_MSG_ERROR(please set LDFLAGS to contain the location of libXt) | |
1189 | fi | |
1190 | ||
1191 | XPM_LINK="" | |
1192 | AC_MSG_CHECKING(for Xpm library) | |
1193 | AC_PATH_FIND_LIBRARIES($SEARCH_LIB,Xpm) | |
1194 | if test "$ac_find_libraries" != "" ; then | |
1195 | AC_LINK_PATH_EXIST($ac_find_libraries,$CHECK_LIB) | |
1196 | CHECK_LINK="$CHECK_LIB $ac_path_to_link" | |
1197 | XPM_LINK="-lXpm " | |
1198 | AC_DEFINE(wxHAVE_LIB_XPM) | |
1199 | AC_MSG_RESULT(found at $ac_find_libraries) | |
1200 | else | |
1201 | AC_MSG_RESULT(no) | |
1202 | AC_MSG_WARN(library will be compiled without support for images in XPM format) | |
1203 | fi | |
1204 | ||
5f991871 | 1205 | GUI_TK_LINK="-lXm $(XPM_LINK)-lXmu -lXt -lX11 -lm" |
57493f9f VZ |
1206 | GUI_TK_LIBRARY="$CHECK_LIB $GUI_TK_LINK" |
1207 | TOOLKIT=MOTIF | |
1208 | TOOLKIT_DEF=__WXMOTIF__ | |
1209 | WX_LINK=-lwx_motif2 | |
1210 | MAKEINCLUDE=../motif.inc | |
bcf1fa6b RR |
1211 | fi |
1212 | ||
1213 | if test "$TOOLKIT" = ""; then | |
c2933500 | 1214 | AC_MSG_ERROR(You must specify a toolkit: --with-gtk --with-qt --with-motif) |
bcf1fa6b RR |
1215 | fi |
1216 | ||
1217 | AC_SUBST(GUI_TK_INCLUDE) | |
1218 | AC_SUBST(GUI_TK_LIBRARY) | |
1219 | AC_SUBST(GUI_TK_LINK) | |
1220 | ||
76153302 RR |
1221 | AC_SUBST(WX_LINK) |
1222 | ||
bcf1fa6b RR |
1223 | AC_SUBST(TOOLKIT) |
1224 | AC_SUBST(TOOLKIT_DEF) | |
1225 | ||
1226 | AC_SUBST(MAKEINCLUDE) | |
1227 | ||
1228 | dnl ---------------------------------------------------------------- | |
1229 | dnl Register compile options for makefiles and setup.h | |
1230 | dnl ---------------------------------------------------------------- | |
1231 | ||
e5ea3f7a RR |
1232 | if test "$WXGTK12" = 1 ; then |
1233 | AC_DEFINE_UNQUOTED(__WXGTK12__,$WXGTK12) | |
1234 | fi | |
1235 | ||
8c739649 RR |
1236 | EXTRA_LINK= |
1237 | ||
bcf1fa6b | 1238 | WXDEBUG= |
2904eefd | 1239 | if test "$wxUSE_DEBUG_GDB" = 1 ; then |
5f0f31fe VZ |
1240 | wxUSE_DEBUG_INFO=1 |
1241 | WXDEBUG="-ggdb" | |
1242 | fi | |
1243 | ||
1244 | if test "$wxUSE_DEBUG_INFO" = 1 ; then | |
2904eefd KB |
1245 | WXDEBUG="-g" |
1246 | wxUSE_OPTIMISE=0 | |
bcf1fa6b | 1247 | fi |
5f0f31fe | 1248 | |
bcf1fa6b RR |
1249 | AC_SUBST(WXDEBUG) |
1250 | ||
8248314d VZ |
1251 | if test "$wxUSE_DEBUG_FLAG" = 1 ; then |
1252 | AC_DEFINE_UNQUOTED(WXDEBUG,$wxUSE_DEBUG_FLAG) | |
bcf1fa6b RR |
1253 | WXDEBUG_DEFINE="-D__WXDEBUG__" |
1254 | AC_SUBST(WXDEBUG_DEFINE) | |
f96aa4d9 RR |
1255 | else |
1256 | WXDEBUG_DEFINE="-DGTK_NO_CHECK_CASTS" | |
1257 | AC_SUBST(WXDEBUG_DEFINE) | |
bcf1fa6b RR |
1258 | fi |
1259 | ||
8248314d VZ |
1260 | if test "$wxUSE_MEM_TRACING" = 1 ; then |
1261 | AC_DEFINE_UNQUOTED(wxUSE_MEMORY_TRACING,$wxUSE_MEM_TRACING) | |
1262 | AC_DEFINE_UNQUOTED(wxUSE_GLOBAL_MEMORY_OPERATORS,$wxUSE_MEM_TRACING) | |
bcf1fa6b RR |
1263 | fi |
1264 | ||
8248314d | 1265 | if test "$wxUSE_DMALLOC" = 1 ; then |
bcf1fa6b RR |
1266 | EXTRA_LINK="$EXTRA_LINK -ldmalloc" |
1267 | fi | |
1268 | AC_SUBST(EXTRA_LINK) | |
1269 | ||
1270 | PROFILE= | |
8248314d | 1271 | if test "$wxUSE_PROFILE" = 1 ; then |
bcf1fa6b RR |
1272 | PROFILE="-pg" |
1273 | fi | |
1274 | AC_SUBST(PROFILE) | |
1275 | ||
1276 | CXXFLAGS=`echo "${CXXFLAGS}" | sed "s/\-O.//g" ` | |
1277 | CFLAGS=`echo "${CFLAGS}" | sed "s/\-O.//g" ` | |
8248314d | 1278 | if test "$wxUSE_OPTIMISE" = 0 ; then |
bcf1fa6b RR |
1279 | OPTIMISE= |
1280 | else | |
1281 | if test "$GCC" = yes ; then | |
1282 | OPTIMISE="-O2" | |
1283 | case "${canonical}" in | |
1284 | i586-*-*|i686-*-* ) | |
1285 | OPTIMISE="${OPTIMISE} " | |
1286 | ;; | |
1287 | esac | |
1288 | else | |
1289 | OPTIMISE="-O" | |
1290 | fi | |
1291 | fi | |
1292 | AC_SUBST(OPTIMISE) | |
1293 | ||
1294 | APPLE_IEEE=NONE | |
8248314d | 1295 | if test "$wxUSE_APPLE_IEEE" = 1 ; then |
bcf1fa6b | 1296 | APPLE_IEEE="APPLE_IEEE" |
8248314d | 1297 | AC_DEFINE_UNQUOTED(wxUSE_APPLE_IEEE,$wxUSE_APPLE_IEEE) |
bcf1fa6b RR |
1298 | fi |
1299 | ||
8248314d VZ |
1300 | wxUSE_IOSTREAMH=$DEFAULT_wxUSE_IOSTREAMH |
1301 | AC_DEFINE_UNQUOTED(wxUSE_IOSTREAMH,$wxUSE_IOSTREAMH) | |
bcf1fa6b RR |
1302 | |
1303 | dnl ---------------------------------------------------------------- | |
1304 | dnl Register library options for makefiles and setup.h | |
1305 | dnl ---------------------------------------------------------------- | |
1306 | ||
8248314d VZ |
1307 | if test "$wxUSE_ZLIB" = 1 ; then |
1308 | AC_DEFINE_UNQUOTED(wxUSE_ZLIB,$wxUSE_ZLIB) | |
ac57418f | 1309 | Z_C_SRC="\$(Z_C_SRC)" |
bcf1fa6b | 1310 | fi |
ac57418f | 1311 | AC_SUBST(Z_C_SRC) |
bcf1fa6b | 1312 | |
8248314d | 1313 | if test "$wxUSE_LIBPNG" = 1 ; then |
c2933500 | 1314 | AC_DEFINE_UNQUOTED(wxUSE_LIBPNG,$wxUSE_LIBPNG) |
ac57418f | 1315 | PNG_C_SRC="\$(PNG_C_SRC)" |
bcf1fa6b | 1316 | fi |
ac57418f | 1317 | AC_SUBST(PNG_C_SRC) |
bcf1fa6b | 1318 | |
2fff5f08 VS |
1319 | if test "$wxUSE_LIBJPEG" = 1 ; then |
1320 | AC_DEFINE_UNQUOTED(wxUSE_LIBJPEG,$wxUSE_LIBJPEG) | |
e1929140 | 1321 | JPEG_C_SRC="\$(JPEG_C_SRC)" |
2fff5f08 | 1322 | fi |
e1929140 RR |
1323 | AC_SUBST(JPEG_C_SRC) |
1324 | ||
1325 | JPEG_LINK="" | |
1326 | dnl if test "$wxUSE_LIBJPEG" = 1 ; then | |
1327 | dnl AC_DEFINE_UNQUOTED(wxUSE_LIBJPEG,$wxUSE_LIBJPEG) | |
1328 | dnl AC_CHECK_LIB(jpeg,main,,AC_MSG_ERROR("libjpeg is not available.")) | |
1329 | dnl JPEG_LINK="-ljpeg" | |
1330 | dnl fi | |
2fff5f08 VS |
1331 | AC_SUBST(JPEG_LINK) |
1332 | ||
84b46c35 | 1333 | IODBC_C_SRC="" |
8248314d | 1334 | if test "$wxUSE_ODBC" = 1 ; then |
c2933500 | 1335 | AC_DEFINE_UNQUOTED(wxUSE_ODBC,$wxUSE_ODBC) |
84b46c35 | 1336 | IODBC_C_SRC="\$(IODBC_C_SRC)" |
bcf1fa6b | 1337 | fi |
84b46c35 | 1338 | AC_SUBST(IODBC_C_SRC) |
bcf1fa6b | 1339 | |
7f3b7908 RR |
1340 | dnl ---------------------------------------------------------------- |
1341 | dnl thread support | |
1342 | dnl ---------------------------------------------------------------- | |
1343 | ||
1344 | dnl defines UNIX_THREAD it contains the source file to use for threads. (GL) | |
1345 | dnl defines THREADS_LINK it contains the thread library to link with. (GL) | |
1346 | dnl defines wxUSE_THREADS if thread support is activated. (GL) | |
1347 | ||
1348 | THREADS_LINK="" | |
1349 | UNIX_THREAD="" | |
1350 | ||
1351 | if test "$wxUSE_THREADS" = "1"; then | |
1352 | dnl find if POSIX threads are available | |
1353 | ||
1354 | dnl standard lib name is pthread | |
1355 | dnl We no longer test for pthread-0.7 as it breaks compilation on some | |
1356 | dnl glibc2 systems, especially for static linkage. | |
1357 | AC_CHECK_LIB(pthread, pthread_create, [ | |
1358 | UNIX_THREAD="unix/threadpsx.cpp" | |
1359 | THREADS_LINK="pthread" | |
1360 | ], [ | |
1361 | dnl thread functions are in libc_r under FreeBSD | |
1362 | AC_CHECK_LIB(c_r, pthread_create, [ | |
1363 | UNIX_THREAD="unix/threadpsx.cpp" | |
1364 | THREADS_LINK="c_r" | |
1365 | ], [ | |
1366 | dnl VZ: SGI threads are not supported currently | |
1367 | AC_CHECK_HEADER(sys/prctl.h, [ | |
1368 | UNIX_THREAD="gtk/threadsgi.cpp" | |
1369 | ]) | |
1370 | ]) | |
1371 | ]) | |
1372 | if test "$THREADS_LINK" != ""; then | |
1373 | AC_DEFINE(wxUSE_THREADS) | |
1374 | else | |
1375 | AC_MSG_WARN(No thread support on this system) | |
1376 | fi | |
1377 | fi | |
1378 | ||
1379 | if test -z "$UNIX_THREAD"; then | |
1380 | wxUSE_THREADS=0 | |
1381 | fi | |
1382 | ||
1383 | dnl do other tests only if we are using threads | |
1384 | if test "$wxUSE_THREADS" = "1"; then | |
1385 | ||
1386 | dnl define autoconf macro to check for given function in both pthread and | |
1387 | dnl posix4 libraries | |
1388 | dnl usage: AC_FUNC_THREAD(FUNCTION_NAME) | |
1389 | dnl VZ: TODO | |
1390 | dnl AC_DEFUN(AC_FUNC_THREAD, | |
1391 | dnl [ | |
1392 | dnl AC_CHECK_LIB($THREADS_LINK, $1, | |
1393 | dnl AC_DEFINE(HAVE_`'translit($1, `A-Z', 'a-z'), | |
1394 | dnl [AC_CHECK_LIB("posix4", $1, | |
1395 | dnl [AC_DEFINE(HAVE_`'translit($1, `A-Z', 'a-z')) | |
1396 | dnl POSIX4_LINK="-lposix4" | |
1397 | dnl ]) | |
1398 | dnl ]) | |
1399 | dnl ]) | |
1400 | ||
1401 | AC_CHECK_HEADERS(sched.h) | |
1402 | ||
1403 | AC_CHECK_LIB($THREADS_LINK, sched_yield, | |
1404 | AC_DEFINE(HAVE_SCHED_YIELD), | |
1405 | [AC_CHECK_LIB("posix4", sched_yield, | |
1406 | [AC_DEFINE(HAVE_SCHED_YIELD) POSIX4_LINK="-lposix4"], | |
1407 | AC_MSG_WARN(wxThread::Yield() will not work properly) | |
1408 | )] | |
1409 | ) | |
1410 | ||
1411 | dnl VZ: we should be checking for all of the following functions instead: | |
1412 | dnl 1. pthread_attr_getschedpolicy | |
1413 | dnl 2. sched_get_priority_min and sched_get_priority_max | |
1414 | dnl 3. pthread_attr_getschedparam and pthread_attr_setschedparam | |
1415 | dnl but it seems that if the first one is there, the other ones are too (of | |
1416 | dnl course the proper solution would be to implement AC_FUNC_THREAD above | |
1417 | dnl and do test for them all - anyone?) | |
1418 | AC_CHECK_LIB($THREADS_LINK, pthread_attr_getschedpolicy, | |
1419 | AC_DEFINE(HAVE_THREAD_PRIORITY_FUNCTIONS), | |
1420 | [AC_CHECK_LIB("posix4", pthread_attr_getschedpolicy, | |
1421 | [AC_DEFINE(HAVE_THREAD_PRIORITY_FUNCTIONS) POSIX4_LINK="-lposix4"], | |
1422 | AC_MSG_WARN(Setting thread priority will not work) | |
1423 | )] | |
1424 | ) | |
1425 | ||
1426 | AC_CHECK_LIB($THREADS_LINK, pthread_cancel, | |
1427 | AC_DEFINE(HAVE_PTHREAD_CANCEL), | |
1428 | AC_MSG_WARN(wxThread::Kill() will not work properly)) | |
1429 | ||
1430 | THREADS_LINK="-l$THREADS_LINK" | |
1431 | fi | |
1432 | ||
1433 | AC_SUBST(UNIX_THREAD) | |
1434 | AC_SUBST(THREADS_LINK) | |
1435 | AC_SUBST(POSIX4_LINK) | |
1436 | ||
bcf1fa6b RR |
1437 | dnl ---------------------------------------------------------------- |
1438 | dnl Register non-GUI class options for makefiles and setup.h | |
1439 | dnl ---------------------------------------------------------------- | |
1440 | ||
8248314d VZ |
1441 | if test "$wxUSE_CONFIG" = 1 ; then |
1442 | AC_DEFINE_UNQUOTED(wxUSE_CONFIG,$wxUSE_CONFIG) | |
bcf1fa6b RR |
1443 | fi |
1444 | ||
8248314d VZ |
1445 | if test "$wxUSE_TIMEDATE" = 1 ; then |
1446 | AC_DEFINE_UNQUOTED(wxUSE_TIMEDATE,$wxUSE_TIMEDATE) | |
bcf1fa6b RR |
1447 | fi |
1448 | ||
8248314d VZ |
1449 | if test "$wxUSE_INTL" = 1 ; then |
1450 | AC_DEFINE_UNQUOTED(wxUSE_INTL,$wxUSE_INTL) | |
bcf1fa6b RR |
1451 | fi |
1452 | ||
8248314d VZ |
1453 | if test "$wxUSE_STREAMS" = 1 ; then |
1454 | AC_DEFINE_UNQUOTED(wxUSE_STREAMS,$wxUSE_STREAMS) | |
bcf1fa6b RR |
1455 | fi |
1456 | ||
370ae202 | 1457 | if test "$wxUSE_SOCKETS" = 1 ; then |
7f3b7908 RR |
1458 | if test "$wxUSE_THREADS" = 1 ; then |
1459 | AC_DEFINE_UNQUOTED(wxUSE_SOCKETS,$wxUSE_SOCKETS) | |
1460 | else | |
1461 | AC_MSG_WARN(sockets or only supported with threads) | |
1462 | wxUSE_SOCKETS=0 | |
1463 | fi | |
370ae202 RR |
1464 | fi |
1465 | ||
8248314d VZ |
1466 | if test "$wxUSE_SERIAL" = 1 ; then |
1467 | AC_DEFINE_UNQUOTED(wxUSE_SERIAL,$wxUSE_SERIAL) | |
bcf1fa6b RR |
1468 | fi |
1469 | ||
57493f9f VZ |
1470 | dnl ------------------------------------------------------------------------ |
1471 | dnl wxSocket | |
1472 | dnl ------------------------------------------------------------------------ | |
1473 | ||
1474 | if test "$wxUSE_SOCKETS" = "1"; then | |
90e58684 RR |
1475 | AC_LANG_SAVE |
1476 | AC_LANG_CPLUSPLUS | |
57493f9f VZ |
1477 | dnl determine the type of third argument for getsockname |
1478 | AC_MSG_CHECKING(the type of the third argument of getsockname) | |
1479 | AC_TRY_COMPILE( | |
1480 | [#include <sys/socket.h>], | |
4875458c KB |
1481 | [socklen_t len; getsockname(0, NULL, &len);], |
1482 | AC_DEFINE(SOCKLEN_T, socklen_t) AC_MSG_RESULT(socklen_t), | |
1483 | AC_TRY_COMPILE( | |
1484 | [#include <sys/socket.h>], | |
1485 | [size_t len; getsockname(0, NULL, &len);], | |
1486 | AC_DEFINE(SOCKLEN_T, size_t) AC_MSG_RESULT(size_t), | |
1487 | AC_TRY_COMPILE( | |
1488 | [#include <sys/socket.h>], | |
1489 | [int len; getsockname(0, NULL, &len);], | |
1490 | AC_DEFINE(SOCKLEN_T, int) AC_MSG_RESULT(int), | |
1491 | AC_MSG_RESULT(unknown) | |
1492 | ) | |
57493f9f VZ |
1493 | ) |
1494 | ) | |
90e58684 | 1495 | AC_LANG_RESTORE |
57493f9f VZ |
1496 | fi |
1497 | ||
eb9bbf52 VZ |
1498 | dnl ------------------------------------------------------------------------ |
1499 | dnl wxLibrary class | |
1500 | dnl ------------------------------------------------------------------------ | |
1501 | ||
1502 | HAVE_DL_FUNCS=0 | |
1503 | if test "$wxUSE_DYNLIB_CLASS" = "1"; then | |
1504 | dnl the test is a bit complicated because we check for dlopen() both with | |
1505 | dnl and without -ldl | |
1506 | AC_CHECK_FUNCS(dlopen, | |
1507 | [AC_DEFINE(HAVE_DLOPEN) HAVE_DL_FUNCS=1], | |
1508 | [AC_CHECK_LIB(dl, dlopen, | |
1509 | [AC_DEFINE(HAVE_DLOPEN) HAVE_DL_FUNCS=1])]) | |
1510 | AC_CHECK_FUNCS(shl_load, [AC_DEFINE(HAVE_SHL_LOAD) HAVE_DL_FUNCS=1]) | |
1511 | ||
1512 | if test "$HAVE_DL_FUNCS" = 0; then | |
1513 | AC_MSG_WARN("--with-dynlib will be disabled because no function was found to load a shared library on this platform") | |
1514 | ||
1515 | wxUSE_DYNLIB_CLASS=0 | |
1516 | fi | |
1517 | fi | |
1518 | ||
1519 | if test "$wxUSE_DYNLIB_CLASS" = 1 ; then | |
1520 | AC_DEFINE_UNQUOTED(wxUSE_DYNLIB_CLASS,$wxUSE_DYNLIB_CLASS) | |
1521 | fi | |
1522 | ||
bcf1fa6b RR |
1523 | dnl ---------------------------------------------------------------- |
1524 | dnl Register Prolog and Resources options for makefiles and setup.h | |
1525 | dnl ---------------------------------------------------------------- | |
1526 | ||
8248314d VZ |
1527 | if test "$wxUSE_RPC" = 1 ; then |
1528 | AC_DEFINE_UNQUOTED(wxUSE_RPC,$wxUSE_RPC) | |
bcf1fa6b RR |
1529 | fi |
1530 | ||
8248314d VZ |
1531 | if test "$wxUSE_WX_RESOURCES" = 1 ; then |
1532 | AC_DEFINE_UNQUOTED(wxUSE_WX_RESOURCES,$wxUSE_WX_RESOURCES) | |
bcf1fa6b RR |
1533 | fi |
1534 | ||
8248314d VZ |
1535 | if test "$wxUSE_PROLOGIO" = 1 ; then |
1536 | AC_DEFINE_UNQUOTED(wxUSE_PROLOGIO) | |
bcf1fa6b RR |
1537 | fi |
1538 | ||
1539 | dnl ---------------------------------------------------------------- | |
1540 | dnl Register PostScript options for makefiles and setup.h | |
1541 | dnl ---------------------------------------------------------------- | |
1542 | ||
8248314d VZ |
1543 | if test "$wxUSE_POSTSCRIPT" = 1 ; then |
1544 | AC_DEFINE_UNQUOTED(wxUSE_POSTSCRIPT) | |
bcf1fa6b RR |
1545 | fi |
1546 | ||
8248314d | 1547 | AC_DEFINE_UNQUOTED(wxUSE_AFM_FOR_POSTSCRIPT,$wxUSE_AFM_FOR_POSTSCRIPT) |
bcf1fa6b RR |
1548 | |
1549 | AC_DEFINE_UNQUOTED(WX_NORMALIZED_PS_FONTS,$WX_NORMALIZED_PS_FONTS) | |
1550 | ||
1551 | dnl ---------------------------------------------------------------- | |
1552 | dnl Register architecture options for makefiles and setup.h | |
1553 | dnl ---------------------------------------------------------------- | |
1554 | ||
8248314d VZ |
1555 | if test "$wxUSE_MDI_ARCHITECTURE" = 1 ; then |
1556 | AC_DEFINE_UNQUOTED(wxUSE_MDI_ARCHITECTURE,$wxUSE_MDI_ARCHITECTURE) | |
bcf1fa6b RR |
1557 | fi |
1558 | ||
8248314d VZ |
1559 | if test "$wxUSE_DOC_VIEW_ARCHITECTURE" = 1 ; then |
1560 | AC_DEFINE_UNQUOTED(wxUSE_DOC_VIEW_ARCHITECTURE,$wxUSE_DOC_VIEW_ARCHITECTURE) | |
bcf1fa6b RR |
1561 | fi |
1562 | ||
8248314d VZ |
1563 | if test "$wxUSE_PRINTING_ARCHITECTURE" = 1 ; then |
1564 | AC_DEFINE_UNQUOTED(wxUSE_PRINTING_ARCHITECTURE,$wxUSE_PRINTING_ARCHITECTURE) | |
bcf1fa6b RR |
1565 | fi |
1566 | ||
fb4e5803 VZ |
1567 | dnl ---------------------------------------------------------------- |
1568 | dnl Register wxString options for makefiles and setup.h | |
1569 | dnl ---------------------------------------------------------------- | |
1570 | ||
1571 | if test "$wxUSE_UNICODE" = 1 ; then | |
1572 | AC_DEFINE_UNQUOTED(wxUSE_UNICODE) | |
1573 | fi | |
1574 | ||
1575 | if test "$wxUSE_WCSRTOMBS" = 1 ; then | |
1576 | AC_DEFINE_UNQUOTED(wxUSE_WCSRTOMBS) | |
1577 | fi | |
1578 | ||
bcf1fa6b RR |
1579 | dnl ---------------------------------------------------------------- |
1580 | dnl Register misc options for makefiles and setup.h | |
1581 | dnl ---------------------------------------------------------------- | |
1582 | ||
8248314d VZ |
1583 | if test "$wxUSE_IPC" = 1 ; then |
1584 | AC_DEFINE_UNQUOTED(wxUSE_IPC) | |
bcf1fa6b RR |
1585 | fi |
1586 | ||
8248314d VZ |
1587 | if test "$wxUSE_RESOURCES" = 1 ; then |
1588 | AC_DEFINE_UNQUOTED(wxUSE_RESOURCES,$wxUSE_RESOURCES) | |
bcf1fa6b RR |
1589 | fi |
1590 | ||
8248314d VZ |
1591 | if test "$wxUSE_CLIPBOARD" = 1 ; then |
1592 | AC_DEFINE_UNQUOTED(wxUSE_CLIPBOARD,$wxUSE_CLIPBOARD) | |
bcf1fa6b RR |
1593 | fi |
1594 | ||
ff8bfdbb | 1595 | if test "$wxUSE_TOOLTIPS" = 1 ; then |
6442ad7f | 1596 | if test "$wxUSE_MOTIF" = 1; then |
7f3b7908 | 1597 | AC_MSG_WARN(tooltips are not supported yet under Motif) |
6442ad7f VZ |
1598 | wxUSE_TOOLTIPS=0 |
1599 | fi | |
6442ad7f | 1600 | AC_DEFINE_UNQUOTED(wxUSE_TOOLTIPS,$wxUSE_TOOLTIPS) |
ff8bfdbb VZ |
1601 | fi |
1602 | ||
ac57418f | 1603 | if test "$wxUSE_DRAG_AND_DROP" = 1 ; then |
e5ea3f7a RR |
1604 | if test "$WXGTK12" = 1 ; then |
1605 | AC_DEFINE_UNQUOTED(wxUSE_DRAG_AND_DROP,$wxUSE_DRAG_AND_DROP) | |
1606 | else | |
7f3b7908 | 1607 | AC_MSG_WARN(drag and drop is only supported under GTK 1.2) |
e5ea3f7a RR |
1608 | wxUSE_DRAG_AND_DROP=0 |
1609 | fi | |
bcf1fa6b RR |
1610 | fi |
1611 | ||
1612 | dnl ---------------------------------------------------------------- | |
ac57418f | 1613 | dnl No effect yet |
bcf1fa6b RR |
1614 | dnl ---------------------------------------------------------------- |
1615 | ||
bcf1fa6b | 1616 | HELP=NONE |
8248314d | 1617 | if test "$wxUSE_HELP" = 1 ; then |
bcf1fa6b | 1618 | HELP="HELP" |
8248314d | 1619 | AC_DEFINE_UNQUOTED(wxUSE_HELP,$wxUSE_HELP) |
bcf1fa6b RR |
1620 | fi |
1621 | AC_SUBST(HELP) | |
1622 | ||
bcf1fa6b RR |
1623 | dnl ------------------------------------------------------------------------ |
1624 | dnl compiler options for shared libs | |
1625 | dnl ------------------------------------------------------------------------ | |
1626 | ||
1627 | PICFLAGS= | |
1628 | CREATE_SHARED= | |
1629 | case "${canonical}" in | |
bcf1fa6b | 1630 | *-hp-hpux* ) |
7cacdad3 | 1631 | if test "$GCC" != "yes" ; then |
bcf1fa6b RR |
1632 | CXXFLAGS="${CXXFLAGS} +a1 -z -Aa -D_HPUX_SOURCE" |
1633 | CFLAGS="${CFLAGS} -z -D_HPUX_SOURCE" | |
1634 | PICFLAGS="+z" | |
1635 | else | |
1636 | PICFLAGS="-fPIC" | |
1637 | fi | |
1638 | LDFLAGS="-Wl,+s" | |
1639 | CREATE_SHARED=sharedHpux | |
1640 | ;; | |
1641 | ||
1642 | *-*-linux* ) | |
1643 | PICFLAGS=-fPIC | |
1644 | CREATE_SHARED=sharedLinux | |
1645 | ;; | |
1646 | ||
c2933500 | 1647 | *-*-irix5* | *-*-irix6* ) |
bcf1fa6b RR |
1648 | # PICFLAGS can remain empty, as pic is the default |
1649 | LDFLAGS="-Wl,+s" | |
1650 | CREATE_SHARED=sharedIrix | |
1651 | AC_DEFINE(SVR4) | |
1652 | ;; | |
1653 | ||
c2933500 | 1654 | *-*-solaris2* ) |
7cacdad3 | 1655 | if test "$GCC" != "yes" ; then |
bcf1fa6b RR |
1656 | PICFLAGS="-KPIC" |
1657 | else | |
1658 | PICFLAGS="-fPIC" | |
1659 | fi | |
1660 | CREATE_SHARED=sharedSolaris2 | |
1661 | AC_DEFINE(SVR4) | |
1662 | ;; | |
1663 | ||
c2933500 | 1664 | *-*-sunos4* ) |
7cacdad3 | 1665 | if test "$GCC" != "yes" ; then |
bcf1fa6b RR |
1666 | PICFLAGS="-PIC" |
1667 | else | |
1668 | PICFLAGS="-fPIC" | |
1669 | fi | |
1670 | LDFLAGS="-Wl,+s" | |
1671 | CREATE_SHARED=sharedSunos4 | |
1672 | AC_DEFINE(BSD) | |
1673 | ;; | |
1674 | ||
1675 | *-*-freebsd* | *-*-netbsd*) | |
1676 | PICFLAGS=-fPIC | |
1677 | CREATE_SHARED=sharedBsd | |
1678 | AC_DEFINE(BSD) | |
1679 | ;; | |
1680 | ||
c2933500 | 1681 | *-*-osf* ) |
bcf1fa6b RR |
1682 | PICFLAGS="-fPIC" |
1683 | CREATE_SHARED=sharedOSF | |
1684 | ;; | |
1685 | ||
c2933500 | 1686 | *-*-dgux5* ) |
7cacdad3 | 1687 | if test "$GCC" != "yes" ; then |
bcf1fa6b RR |
1688 | PICFLAGS="-K PIC" |
1689 | else | |
1690 | PICFLAGS="-fPIC" | |
1691 | fi | |
1692 | CREATE_SHARED=sharedDgux | |
1693 | AC_DEFINE(SVR4) | |
1694 | ;; | |
1695 | ||
c2933500 | 1696 | *-*-sysv5* ) |
7cacdad3 | 1697 | if test "$GCC" != "yes" ; then |
bcf1fa6b RR |
1698 | PICFLAGS="-K PIC" |
1699 | else | |
1700 | PICFLAGS="-fPIC" | |
1701 | fi | |
1702 | CREATE_SHARED=sharedSysV | |
1703 | AC_DEFINE(SVR4) | |
1704 | ;; | |
1705 | ||
c2933500 | 1706 | *-*-aix* ) |
7cacdad3 | 1707 | if test "$GCC" != "yes" ; then |
bcf1fa6b RR |
1708 | PICFLAGS="-bM\:SRE" |
1709 | else | |
1bfcb0b6 | 1710 | PICFLAGS="-fPIC -D__SYSV__" |
bcf1fa6b RR |
1711 | fi |
1712 | CREATE_SHARED=sharedAIX | |
1713 | AC_DEFINE(SYSV) | |
1714 | ;; | |
1715 | ||
1716 | *) | |
1717 | CREATE_SHARED= | |
1718 | PICFLAGS= | |
1719 | esac | |
1720 | ||
1721 | if test "x$GCC" = xyes; then | |
cd5bf2a6 | 1722 | CFLAGS="${CFLAGS} -Wall -Wno-unused -Wno-uninitialized -D_REENTRANT -DLEX_SCANNER -DHAVE_LIBDL" |
bcf1fa6b RR |
1723 | fi |
1724 | ||
1725 | if test "x$GXX" = xyes; then | |
f6c6dd8c | 1726 | if test "$wxUSE_MOTIF" = 1; then |
06f46ad1 | 1727 | CXXFLAGS="${CXXFLAGS} -Wall -Wno-unused -D_REENTRANT" |
f6c6dd8c | 1728 | else |
06f46ad1 | 1729 | CXXFLAGS="${CXXFLAGS} -Wall -D_REENTRANT" |
f6c6dd8c | 1730 | fi |
bcf1fa6b RR |
1731 | fi |
1732 | ||
8248314d | 1733 | if test "$wxUSE_SHARED" != 1; then |
bcf1fa6b RR |
1734 | CREATE_SHARED= |
1735 | PICFLAGS= | |
1736 | fi | |
1737 | ||
1738 | AC_SUBST(OS) | |
1739 | AC_SUBST(PICFLAGS) | |
1740 | AC_SUBST(CREATE_SHARED) | |
1741 | ||
1742 | dnl ------------------------------------------------------------------------ | |
1743 | dnl finish and clean-up | |
1744 | dnl ------------------------------------------------------------------------ | |
1745 | ||
1746 | dnl add OS to list of configured | |
1747 | echo $OS >> system.list | |
1748 | ||
6442ad7f VZ |
1749 | TOOLKIT_DIR=`echo ${TOOLKIT} | tr "A-Z" "a-z"` |
1750 | AC_CONFIG_HEADER(./include/wx/${TOOLKIT_DIR}/setup.h:./setup/setup.hin) | |
1751 | ||
f3cb6592 | 1752 | AC_OUTPUT(./setup/substit ./wx-config:./wx-config.in,./setup/general/createall) |
bcf1fa6b RR |
1753 | |
1754 | AC_OVERRIDES_DONE | |
518b5d2f | 1755 |