]>
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 | ||
35c9d958 KB |
467 | dnl check for vprintf/vsprintf() which are GNU extensions |
468 | AC_FUNC_VPRINTF | |
518b5d2f | 469 | |
57493f9f VZ |
470 | dnl check for vsnprintf() - a safe version of vsprintf() |
471 | AC_CHECK_FUNCS(vsnprintf, | |
472 | AC_DEFINE(HAVE_VSNPRINTF), | |
473 | AC_MSG_WARN(unsafe function sprintf will be used instead of snprintf) | |
474 | ) | |
475 | ||
476 | dnl check for vfork() (even if it's the same as fork() in modern Unices) | |
477 | AC_CHECK_FUNCS(vfork) | |
afb74891 | 478 | |
80cb83be | 479 | POSIX4_LINK= |
57493f9f VZ |
480 | AC_CHECK_FUNCS(nanosleep, AC_DEFINE(HAVE_NANOSLEEP), [ |
481 | AC_CHECK_LIB(posix4, nanosleep, [ | |
482 | AC_DEFINE(HAVE_NANOSLEEP) | |
483 | POSIX4_LINK="-lposix4" | |
484 | ], [ | |
485 | AC_CHECK_FUNCS(usleep, | |
486 | AC_DEFINE(HAVE_USLEEP), | |
487 | AC_MSG_WARN(Sleep() function will not work)) | |
488 | ]) | |
489 | ]) | |
518b5d2f VZ |
490 | |
491 | dnl check for uname (POSIX) and gethostname (BSD) | |
492 | AC_CHECK_FUNCS(uname gethostname, break) | |
35c9d958 | 493 | |
bcf1fa6b RR |
494 | dnl ################### |
495 | dnl # checks typedefs # | |
496 | dnl ################### | |
497 | AC_TYPE_GETGROUPS | |
498 | dnl defines GETGROUPS_T | |
499 | AC_TYPE_MODE_T | |
500 | dnl defines mode_t if not already defined | |
501 | AC_TYPE_OFF_T | |
502 | dnl defines off_t if not already defined | |
503 | AC_TYPE_PID_T | |
504 | dnl defines pid_t if not already defined | |
505 | AC_TYPE_SIGNAL | |
506 | dnl defines RETSIGTYPE for the correct return type of signal | |
507 | AC_TYPE_SIZE_T | |
508 | dnl defines size_t if not already defined | |
509 | AC_TYPE_UID_T | |
510 | dnl defines uid_t and gid_t if not already defined | |
511 | ||
512 | dnl ##################### | |
513 | dnl # checks structures # | |
514 | dnl ##################### | |
515 | ||
516 | AC_HEADER_STAT | |
c2933500 | 517 | dnl defines STAT_MACROS_BROKEN if S_ISDIR and S_ISREG |
bcf1fa6b RR |
518 | dnl do not work properly |
519 | AC_HEADER_TIME | |
520 | dnl defines TIME_WITH_SYS_TIME if time.h and sys/time.h can | |
521 | dnl both be included | |
c2933500 | 522 | AC_STRUCT_ST_BLKSIZE |
bcf1fa6b | 523 | dnl defines HAVE_ST_BLKSIZE if struct stat contains st_blksize |
c2933500 | 524 | AC_STRUCT_ST_BLOCKS |
bcf1fa6b | 525 | dnl defines HAVE_ST_BLOCKS if struct stat contains st_blocks |
c2933500 | 526 | AC_STRUCT_ST_RDEV |
bcf1fa6b RR |
527 | dnl defines HAVE_ST_RDEV if struct stat contains st_rdev |
528 | AC_STRUCT_TM | |
529 | dnl defines TM_IN_SYS_TIME if struct tm is not in time.h | |
530 | AC_STRUCT_TIMEZONE | |
531 | dnl defines HAVE_ST_BLKSIZE if struct tm contains tm_zone | |
532 | dnl otherwise | |
533 | dnl defines HAVE_TZNAME if external array tzname is found | |
534 | ||
535 | dnl ################################### | |
536 | dnl # checks compiler characteristics # | |
537 | dnl ################################### | |
bcf1fa6b RR |
538 | |
539 | AC_C_CONST | |
540 | dnl defines const to be empty if c-compiler does not support const fully | |
541 | AC_C_INLINE | |
542 | dnl defines inline to a sensible value for the c-compiler | |
543 | AC_C_CHAR_UNSIGNED | |
544 | dnl defines __CHAR_UNSIGNED__ if char is unsigned | |
545 | AC_C_LONG_DOUBLE | |
546 | dnl defines HAVE_LONGDOUBLE if compiler supports long double | |
547 | ||
548 | AC_C_BIGENDIAN | |
549 | dnl defines WORDS_BIGENDIAN if system is big endian | |
550 | ||
57493f9f VZ |
551 | dnl give some default values for cross-compiling |
552 | AC_CHECK_SIZEOF(int *, 4) | |
553 | AC_CHECK_SIZEOF(int, 4) | |
554 | AC_CHECK_SIZEOF(long, 4) | |
555 | AC_CHECK_SIZEOF(long long, 0) | |
556 | dnl defines the size of certain types of variables in SIZEOF_<TYPE> | |
bcf1fa6b | 557 | |
2d45abf1 VZ |
558 | dnl ###################### |
559 | dnl # check C++ features # | |
560 | dnl ###################### | |
561 | ||
562 | AC_LANG_SAVE | |
563 | AC_LANG_CPLUSPLUS | |
564 | ||
57493f9f VZ |
565 | dnl check for iostream (as opposed to iostream.h) standard header |
566 | AC_CHECK_HEADERS(iostream) | |
567 | if test "x$HAVE_IOSTREAM" = "x" ; then | |
568 | AC_DEFINE(wxUSE_IOSTREAMH) | |
569 | fi | |
570 | ||
2d45abf1 VZ |
571 | dnl Check for existence of builtin 'bool' data type |
572 | dnl | |
573 | dnl do nothing for cross-compilation - assume bool is not defined | |
574 | AC_MSG_CHECKING(if C++ compiler supports bool) | |
57493f9f VZ |
575 | AC_TRY_RUN([ |
576 | ||
577 | int main() | |
578 | { | |
579 | bool b = true; | |
580 | ||
581 | return 0; | |
582 | } | |
583 | ], | |
2d45abf1 VZ |
584 | AC_DEFINE(HAVE_BOOL) AC_MSG_RESULT(yes), |
585 | AC_MSG_RESULT(no), | |
586 | AC_MSG_RESULT(no assumed for cross-compilation)) | |
587 | ||
57493f9f VZ |
588 | dnl Check whether overloading on size_t/int parameter works |
589 | AC_MSG_CHECKING(if size_t and int are different types) | |
590 | AC_TRY_RUN([ | |
591 | #include <stdlib.h> | |
592 | ||
593 | void wxFoo(int i) { } | |
594 | void wxFoo(size_t n) { } | |
595 | ||
596 | int main() | |
597 | { | |
598 | int i; | |
599 | size_t n; | |
600 | wxFoo(0); | |
601 | wxFoo(1); | |
602 | wxFoo(0u); | |
603 | wxFoo(i); | |
604 | wxFoo(n); | |
605 | ||
606 | return 0; | |
607 | } | |
608 | ||
609 | ], | |
610 | AC_DEFINE(wxUSE_SIZE_T_STRING_OPERATOR) AC_MSG_RESULT(yes), | |
611 | AC_MSG_RESULT(no), | |
612 | AC_MSG_RESULT(no assumed for cross-compilation)) | |
613 | ||
2d45abf1 VZ |
614 | AC_LANG_RESTORE |
615 | ||
bcf1fa6b RR |
616 | dnl ############################ |
617 | dnl # checks library functions # | |
618 | dnl ############################ | |
619 | ||
620 | dnl ########################## | |
621 | dnl # checks system services # | |
622 | dnl ########################## | |
623 | ||
624 | ||
625 | AC_SYS_LONG_FILE_NAMES | |
626 | dnl defines HAVE_LONG_FILENAMES if filenames longer then | |
627 | dnl 14 chars are supported | |
628 | ||
629 | dnl AC_SYS_RESTARTABLE_SYSCALLS | |
c2933500 | 630 | dnl defines HAVE_RESTARTABLE_SYSCALLS if the system restarts a |
bcf1fa6b RR |
631 | dnl system call that is interrupted |
632 | dnl by a signal | |
c2933500 | 633 | |
bcf1fa6b RR |
634 | dnl ################# |
635 | dnl # checks PARSER # | |
636 | dnl ################# | |
637 | ||
638 | dnl YACC checks | |
639 | dnl =========== | |
640 | AC_PROG_YACC | |
641 | dnl defines YACC with the appropriate command | |
642 | ||
643 | dnl LEX checks | |
644 | dnl ========== | |
645 | AC_PROG_LEX | |
646 | dnl defines LEX with the appropriate command | |
647 | dnl defines LEXLIB with the appropriate library | |
648 | dnl what type is yytext | |
649 | AC_DECL_YYTEXT | |
650 | dnl defines YYTEXT_POINTER if yytext is char* | |
c2933500 | 651 | dnl defines LEX_OUTPUT_ROOT as to the base of the |
bcf1fa6b RR |
652 | dnl filename output by the lexer |
653 | ||
cd5bf2a6 RR |
654 | dnl ################################### |
655 | dnl ## Check for dynamic load module # | |
656 | dnl ################################### | |
657 | ||
658 | DL_LIBRARY= | |
659 | AC_CHECK_FUNCS(dlopen, AC_DEFINE(HAVE_LIBDL), | |
660 | [AC_CHECK_LIB(dl, dlopen, [AC_DEFINE(HAVE_LIBDL) DL_LIBRARY="-ldl"], | |
661 | [AC_CHECK_LIB(dld, dld_link, [AC_DEFINE(HAVE_DLD) DL_LIBRARY="-ldld"], | |
662 | [AC_CHECK_FUNCS(shl_load, AC_DEFINE(HAVE_SHL_LOAD) )] | |
663 | )] | |
664 | )] | |
665 | ) | |
666 | AC_SUBST(DL_LIBRARY) | |
667 | ||
668 | AC_CACHE_CHECK([for underscore before symbols], libltdl_cv_uscore, [ | |
669 | echo "main(){int i=1;} fnord(){int i=23; int ltuae=42;}" > conftest.c | |
670 | ${CC} -c conftest.c > /dev/null | |
671 | if (nm conftest.o | grep _fnord) > /dev/null; then | |
672 | libltdl_cv_uscore=yes | |
673 | else | |
674 | libltdl_cv_uscore=no | |
675 | fi | |
676 | rm -f conftest* | |
677 | ]) | |
678 | ||
679 | if test x"$libltdl_cv_uscore" = xyes; then | |
680 | if test x"$ac_cv_func_dlopen" = xyes || | |
681 | test x"$ac_cv_lib_dl_dlopen" = xyes ; then | |
682 | AC_CACHE_CHECK([whether we have to add an underscore for dlsym], | |
683 | libltdl_cv_need_uscore, [dnl | |
684 | AC_TRY_RUN([ | |
685 | #include <dlfcn.h> | |
686 | #include <stdio.h> | |
687 | fnord() { int i=42;} | |
688 | main() { void *self, *ptr1, *ptr2; self=dlopen(NULL,RTLD_LAZY); | |
689 | if(self) { ptr1=dlsym(self,"fnord"); ptr2=dlsym(self,"_fnord"); | |
c2933500 | 690 | if(ptr1 && !ptr2) exit(0); } exit(1); } |
cd5bf2a6 RR |
691 | ], libltdl_cv_need_uscore=no, libltdl_cv_need_uscore=yes, |
692 | libltdl_cv_need_uscore=no | |
693 | )]) | |
694 | fi | |
695 | fi | |
696 | ||
697 | if test x"$libltdl_cv_need_uscore" = xyes; then | |
698 | AC_DEFINE(NEED_USCORE) | |
699 | fi | |
700 | ||
701 | dnl ########################################## | |
702 | dnl ## Check for specific library functions # | |
703 | dnl ########################################## | |
704 | ||
705 | dnl Checks for library functions. | |
706 | AC_CHECK_FUNCS(strerror) | |
707 | ||
bcf1fa6b RR |
708 | dnl ------------------------------------------------------------------------ |
709 | dnl main includes | |
710 | dnl ------------------------------------------------------------------------ | |
711 | ||
712 | CHECK_INCLUDE="-I/usr/include $X_CFLAGS" | |
713 | CHECK_LIB="-L/lib -L/usr/lib $X_LIBS" | |
714 | ||
715 | dnl ------------------------------------------------------------------------ | |
716 | dnl host system | |
717 | dnl ------------------------------------------------------------------------ | |
718 | ||
719 | AC_CANONICAL_HOST | |
720 | canonical=$host | |
721 | configuration=$host_alias | |
722 | ||
723 | dnl ------------------------------------------------------------------------ | |
724 | dnl system settings | |
725 | dnl ------------------------------------------------------------------------ | |
726 | ||
727 | USE_UNIX=1 | |
728 | ||
bcf1fa6b RR |
729 | USE_LINUX= |
730 | USE_SGI= | |
731 | USE_HPUX= | |
732 | USE_SYSV= | |
733 | USE_SVR4= | |
734 | USE_AIX= | |
735 | USE_SUN= | |
736 | USE_SOLARIS= | |
737 | USE_SUNOS= | |
738 | USE_ALPHA= | |
739 | USE_OSF= | |
740 | USE_BSD= | |
741 | USE_FREEBSD= | |
742 | USE_VMS= | |
743 | USE_ULTRIX= | |
744 | USE_DATA_GENERAL= | |
745 | ||
f780dc86 | 746 | AC_DEFINE(__UNIX__) |
bcf1fa6b RR |
747 | case "${canonical}" in |
748 | *-hp-hpux* ) | |
749 | USE_HPUX=1 | |
750 | AC_DEFINE(__HPUX__) | |
751 | ;; | |
752 | *-*-linux* ) | |
753 | USE_LINUX=1 | |
754 | AC_DEFINE(__LINUX__) | |
e0e680d2 KB |
755 | TMP=`uname -m` |
756 | if test "x$TMP" = "xalpha" | |
757 | then | |
758 | USE_ALPHA=1 | |
759 | AC_DEFINE(__ALPHA__) | |
760 | fi | |
bcf1fa6b | 761 | ;; |
c2933500 | 762 | *-*-irix5* | *-*-irix6* ) |
bcf1fa6b RR |
763 | USE_SGI=1 |
764 | USE_SVR4=1 | |
765 | AC_DEFINE(__SGI__) | |
766 | AC_DEFINE(__SVR4__) | |
767 | ;; | |
c2933500 | 768 | *-*-solaris2* ) |
bcf1fa6b RR |
769 | USE_SUN=1 |
770 | USE_SOLARIS=1 | |
771 | USE_SVR4=1 | |
772 | AC_DEFINE(__SUN__) | |
773 | AC_DEFINE(__SOLARIS__) | |
774 | AC_DEFINE(__SVR4__) | |
775 | ;; | |
c2933500 | 776 | *-*-sunos4* ) |
bcf1fa6b RR |
777 | USE_SUN=1 |
778 | USE_SUNOS=1 | |
779 | USE_BSD=1 | |
780 | AC_DEFINE(__SUN__) | |
781 | AC_DEFINE(__SUNOS__) | |
782 | AC_DEFINE(__BSD__) | |
783 | ;; | |
784 | *-*-freebsd* | *-*-netbsd*) | |
785 | USE_BSD=1 | |
786 | USE_FREEBSD=1 | |
787 | AC_DEFINE(__FREEBSD__) | |
788 | AC_DEFINE(__BSD__) | |
789 | ;; | |
c2933500 | 790 | *-*-osf* ) |
bcf1fa6b RR |
791 | USE_ALPHA=1 |
792 | USE_OSF=1 | |
793 | AC_DEFINE(__ALPHA__) | |
794 | AC_DEFINE(__OSF__) | |
795 | ;; | |
c2933500 | 796 | *-*-dgux5* ) |
bcf1fa6b RR |
797 | USE_ALPHA=1 |
798 | USE_SVR4=1 | |
799 | AC_DEFINE(__ALPHA__) | |
800 | AC_DEFINE(__SVR4__) | |
801 | ;; | |
c2933500 | 802 | *-*-sysv5* ) |
bcf1fa6b RR |
803 | USE_SYSV=1 |
804 | USE_SVR4=1 | |
805 | AC_DEFINE(__SYSV__) | |
806 | AC_DEFINE(__SVR4__) | |
807 | ;; | |
c2933500 | 808 | *-*-aix* ) |
bcf1fa6b RR |
809 | USE_AIX=1 |
810 | USE_SYSV=1 | |
811 | USE_SVR4=1 | |
812 | AC_DEFINE(__AIX__) | |
813 | AC_DEFINE(__SYSV__) | |
814 | AC_DEFINE(__SVR4__) | |
815 | ;; | |
816 | *) | |
817 | AC_MSG_ERROR(I don't know your system type.) | |
818 | esac | |
819 | ||
820 | dnl ------------------------------------------------------------------------ | |
821 | dnl defaults for command options | |
822 | dnl ------------------------------------------------------------------------ | |
823 | ||
824 | AC_OVERRIDES_PREPARE | |
825 | ||
6fbf0513 | 826 | DEFAULT_wxUSE_GTK=1 |
8248314d VZ |
827 | DEFAULT_wxUSE_QT=0 |
828 | DEFAULT_wxUSE_MOTIF=0 | |
bcf1fa6b | 829 | |
8710cf5c | 830 | DEFAULT_wxUSE_THREADS=0 |
cb43b372 | 831 | |
8248314d VZ |
832 | DEFAULT_wxUSE_SHARED=1 |
833 | DEFAULT_wxUSE_OPTIMISE=1 | |
834 | DEFAULT_wxUSE_PROFILE=0 | |
835 | DEFAULT_wxUSE_DEBUG_FLAG=0 | |
836 | DEFAULT_wxUSE_DEBUG_INFO=0 | |
837 | DEFAULT_wxUSE_MEM_TRACING=0 | |
838 | DEFAULT_wxUSE_DMALLOC=0 | |
839 | DEFAULT_wxUSE_APPLE_IEEE=1 | |
840 | DEFAULT_wxUSE_IOSTREAMH=1 | |
841 | ||
842 | DEFAULT_wxUSE_ZLIB=1 | |
8248314d | 843 | DEFAULT_wxUSE_LIBPNG=1 |
e1929140 | 844 | DEFAULT_wxUSE_LIBJPEG=1 |
8710cf5c | 845 | DEFAULT_wxUSE_ODBC=1 |
8248314d | 846 | |
8248314d | 847 | DEFAULT_wxUSE_TIMEDATE=1 |
8248314d VZ |
848 | DEFAULT_wxUSE_INTL=1 |
849 | DEFAULT_wxUSE_CONFIG=1 | |
850 | DEFAULT_wxUSE_STREAMS=1 | |
d28e1977 | 851 | DEFAULT_wxUSE_SOCKETS=1 |
8248314d | 852 | DEFAULT_wxUSE_SERIAL=1 |
eb9bbf52 | 853 | DEFAULT_wxUSE_DYNLIB_CLASS=1 |
8248314d VZ |
854 | |
855 | DEFAULT_wxUSE_AFM_FOR_POSTSCRIPT=1 | |
bcf1fa6b | 856 | DEFAULT_WX_NORMALIZED_PS_FONTS=1 |
8248314d | 857 | DEFAULT_wxUSE_POSTSCRIPT=1 |
bcf1fa6b | 858 | |
8248314d VZ |
859 | DEFAULT_wxUSE_IPC=1 |
860 | DEFAULT_wxUSE_RESOURCES=1 | |
8b53e5a2 | 861 | DEFAULT_wxUSE_CLIPBOARD=1 |
ff8bfdbb | 862 | DEFAULT_wxUSE_TOOLTIPS=1 |
ac57418f | 863 | DEFAULT_wxUSE_DRAG_AND_DROP=1 |
bcf1fa6b | 864 | |
8248314d VZ |
865 | DEFAULT_wxUSE_MDI_ARCHITECTURE=1 |
866 | DEFAULT_wxUSE_DOC_VIEW_ARCHITECTURE=1 | |
867 | DEFAULT_wxUSE_PRINTING_ARCHITECTURE=1 | |
bcf1fa6b | 868 | |
8248314d VZ |
869 | DEFAULT_wxUSE_PROLOGIO=1 |
870 | DEFAULT_wxUSE_WX_RESOURCES=1 | |
871 | DEFAULT_wxUSE_RPC=0 | |
e9aad10a | 872 | DEFAULT_wxUSE_HELP=1 |
bcf1fa6b | 873 | |
64ef3622 | 874 | DEFAULT_wxUSE_UNICODE=0 |
fb4e5803 VZ |
875 | DEFAULT_wxUSE_WCSRTOMBS=0 |
876 | ||
bcf1fa6b RR |
877 | dnl ---------------------------------------------------------------- |
878 | dnl toolkit options | |
879 | dnl ---------------------------------------------------------------- | |
880 | ||
881 | AC_OVERRIDES(gtk,gtk, | |
882 | **--with-gtk use GTK, | |
8248314d | 883 | wxUSE_GTK) |
bcf1fa6b RR |
884 | |
885 | AC_OVERRIDES(qt,qt, | |
886 | **--with-qt use Qt, | |
8248314d | 887 | wxUSE_QT) |
bcf1fa6b RR |
888 | |
889 | AC_OVERRIDES(motif,motif, | |
890 | **--with-motif use Motif/Lesstif, | |
8248314d | 891 | wxUSE_MOTIF) |
bcf1fa6b RR |
892 | |
893 | dnl ---------------------------------------------------------------- | |
894 | dnl compile options | |
895 | dnl ---------------------------------------------------------------- | |
896 | ||
897 | AC_OVERRIDES(shared,shared, | |
898 | **--with-shared create shared libraries, | |
8248314d | 899 | wxUSE_SHARED) |
bcf1fa6b RR |
900 | |
901 | AC_OVERRIDES(optimise,optimise, | |
902 | **--with-optimise create optimised code, | |
8248314d | 903 | wxUSE_OPTIMISE) |
bcf1fa6b RR |
904 | |
905 | AC_OVERRIDES(debug_flag,debug_flag, | |
906 | **--with-debug_flag create code with WXDEBUG define set to 1, | |
8248314d | 907 | wxUSE_DEBUG_FLAG) |
bcf1fa6b RR |
908 | |
909 | AC_OVERRIDES(debug_info,debug_info, | |
910 | **--with-debug_info create code with debuging information, | |
8248314d | 911 | wxUSE_DEBUG_INFO) |
bcf1fa6b | 912 | |
2904eefd KB |
913 | AC_OVERRIDES(debug_gdb,debug_gdb, |
914 | **--with-debug_gdb create code with extra GDB debuging information, | |
915 | wxUSE_DEBUG_GDB) | |
916 | ||
bcf1fa6b RR |
917 | AC_OVERRIDES(mem_tracing,mem_tracing, |
918 | **--with-mem_traing create code with memory tracing, | |
8248314d | 919 | wxUSE_MEM_TRACING) |
bcf1fa6b RR |
920 | |
921 | AC_OVERRIDES(dmalloc,dmalloc, | |
922 | **--with-dmalloc use dmalloc memory debug library (www.letters.com/dmalloc/), | |
8248314d | 923 | wxUSE_DMALLOC) |
bcf1fa6b RR |
924 | |
925 | AC_OVERRIDES(profile,profile, | |
926 | **--with-profile create code with profiling information, | |
8248314d | 927 | wxUSE_PROFILE) |
bcf1fa6b RR |
928 | |
929 | AC_OVERRIDES(apple_ieee, apple_ieee, | |
930 | **--with_apple_ieee use the Apple IEEE codec, | |
8248314d | 931 | wxUSE_APPLE_IEEE) |
bcf1fa6b | 932 | |
ac57418f RR |
933 | AC_OVERRIDES(threads,threads, |
934 | **--with-threads for enabling threads, | |
935 | wxUSE_THREADS) | |
936 | ||
eb9bbf52 VZ |
937 | AC_OVERRIDES(dynlib,dynlib, |
938 | **--with-dynlib to compile wxLibrary class, | |
939 | wxUSE_DYNLIB_CLASS) | |
940 | ||
bcf1fa6b RR |
941 | dnl ---------------------------------------------------------------- |
942 | dnl user options for libraries | |
943 | dnl ---------------------------------------------------------------- | |
944 | ||
945 | AC_OVERRIDES(zlib,zlib, | |
e1929140 | 946 | **--without-zlib don't use zlib for LZW comression, |
8248314d | 947 | wxUSE_ZLIB) |
bcf1fa6b | 948 | |
bcf1fa6b | 949 | AC_OVERRIDES(libpng,libpng, |
e1929140 | 950 | **--without-libpng don't use libpng (PNG image format), |
8248314d | 951 | wxUSE_LIBPNG) |
bcf1fa6b | 952 | |
2fff5f08 | 953 | AC_OVERRIDES(libjpeg,libjpeg, |
e1929140 | 954 | **--without-libjpeg don't use libjpeg (JPEG image format), |
2fff5f08 VS |
955 | wxUSE_LIBJPEG) |
956 | ||
bcf1fa6b RR |
957 | AC_OVERRIDES(odbc,odbc, |
958 | **--with-odbc use iODBC and wxODBC classes, | |
8248314d | 959 | wxUSE_ODBC) |
bcf1fa6b | 960 | |
bcf1fa6b RR |
961 | dnl ---------------------------------------------------------------- |
962 | dnl user options for non-GUI classes | |
963 | dnl ---------------------------------------------------------------- | |
964 | ||
965 | AC_OVERRIDES(timedate, timedate, | |
966 | **--with-timedate use wxTime and wxDate classes, | |
8248314d | 967 | wxUSE_TIMEDATE) |
bcf1fa6b | 968 | |
bcf1fa6b RR |
969 | AC_OVERRIDES(intl,intl, |
970 | **--with-intl use internationalization system, | |
8248314d | 971 | wxUSE_INTL) |
bcf1fa6b RR |
972 | |
973 | AC_OVERRIDES(config,config, | |
974 | **--with-config use wxConfig class, | |
8248314d | 975 | wxUSE_CONFIG) |
bcf1fa6b RR |
976 | |
977 | AC_OVERRIDES(streams,streams, | |
978 | **--with-streams use wxStream etc classes, | |
8248314d | 979 | wxUSE_STREAMS) |
bcf1fa6b RR |
980 | |
981 | AC_OVERRIDES(serial,serial, | |
982 | **--with-serial use class serialization, | |
8248314d | 983 | wxUSE_SERIAL) |
bcf1fa6b | 984 | |
35a4dab7 | 985 | AC_OVERRIDES(sockets,sockets, |
5f0f31fe | 986 | **--with-sockets use wxSocket etc classes, |
35a4dab7 GL |
987 | wxUSE_SOCKETS) |
988 | ||
bcf1fa6b RR |
989 | dnl ---------------------------------------------------------------- |
990 | dnl user options for PostScript | |
991 | dnl ---------------------------------------------------------------- | |
992 | ||
993 | AC_OVERRIDES(afmfonts,afmfonts, | |
994 | **--with-afmfonts use Adobe Font Metric Font table, | |
8248314d | 995 | wxUSE_AFM_FOR_POSTSCRIPT) |
bcf1fa6b RR |
996 | |
997 | AC_OVERRIDES(normalized, normalized, | |
998 | **--with-PS-normalized use normalized PS fonts, | |
999 | WX_NORMALIZED_PS_FONTS) | |
1000 | ||
1001 | AC_OVERRIDES(postscript, postscript, | |
1002 | **--with-postscript use wxPostscriptDC device context, | |
8248314d | 1003 | wxUSE_POSTSCRIPT) |
bcf1fa6b | 1004 | |
fb4e5803 VZ |
1005 | dnl ---------------------------------------------------------------- |
1006 | dnl user options for wxString and Unicode | |
1007 | dnl ---------------------------------------------------------------- | |
1008 | ||
1009 | AC_OVERRIDES(unicode,unicode, | |
1010 | **--with-unicode compile wxString with Unicode support, | |
1011 | wxUSE_UNICODE) | |
1012 | ||
1013 | AC_OVERRIDES(wcsrtombs,wcsrtombs, | |
1014 | **--with-wcsrtombs use wcsrtombs instead of (buggy in GNU libc5) wcstombs, | |
1015 | wxUSE_WCSRTOMBS) | |
1016 | ||
bcf1fa6b RR |
1017 | dnl ---------------------------------------------------------------- |
1018 | dnl user options for Prolog and Resources | |
1019 | dnl ---------------------------------------------------------------- | |
1020 | ||
1021 | AC_OVERRIDES(wxresources,wxresources, | |
1022 | **--with-wxresources use wxWindows's resources, | |
8248314d | 1023 | wxUSE_WX_RESOURCES) |
bcf1fa6b RR |
1024 | |
1025 | AC_OVERRIDES(prologio,prologio, | |
1026 | **--with-prologio use Prolog IO library, | |
8248314d | 1027 | wxUSE_PROLOGIO) |
bcf1fa6b RR |
1028 | |
1029 | AC_OVERRIDES(rpc,RPC, | |
1030 | **--with-rpc use Prolog's remote procedure calls, | |
8248314d | 1031 | wxUSE_RPC) |
bcf1fa6b RR |
1032 | |
1033 | dnl ---------------------------------------------------------------- | |
1034 | dnl user options for misc stuff | |
1035 | dnl ---------------------------------------------------------------- | |
1036 | ||
1037 | AC_OVERRIDES(ipc,IPC, | |
1038 | **--with-ipc use interprocess communication (wxSocket etc.), | |
8248314d | 1039 | wxUSE_IPC) |
bcf1fa6b RR |
1040 | |
1041 | AC_OVERRIDES(resources,resources, | |
1042 | **--with-resources use X resources for saving information, | |
8248314d | 1043 | wxUSE_RESOURCES) |
bcf1fa6b RR |
1044 | |
1045 | AC_OVERRIDES(clipboard,clipboard, | |
1046 | **--with-clipboard use wxClipboard classes, | |
8248314d | 1047 | wxUSE_CLIPBOARD) |
bcf1fa6b | 1048 | |
ff8bfdbb VZ |
1049 | AC_OVERRIDES(tooltips,tooltips, |
1050 | **--with-tooltips use tooltips, | |
1051 | wxUSE_TOOLTIPS) | |
1052 | ||
bcf1fa6b RR |
1053 | AC_OVERRIDES(dnd,dnd, |
1054 | **--with-dnd use Drag'n'Drop classes, | |
ac57418f | 1055 | wxUSE_DRAG_AND_DROP) |
bcf1fa6b RR |
1056 | |
1057 | dnl ---------------------------------------------------------------- | |
1058 | dnl user options for architectures | |
1059 | dnl ---------------------------------------------------------------- | |
1060 | ||
1061 | AC_OVERRIDES(mdi,mdi, | |
1062 | **--with-mdi use multiple document interface architecture, | |
8248314d | 1063 | wxUSE_MDI_ARCHITECTURE) |
bcf1fa6b RR |
1064 | |
1065 | AC_OVERRIDES(docview,docview, | |
1066 | **--with-docview use document view architecture, | |
8248314d | 1067 | wxUSE_DOC_VIEW_ARCHITECTURE) |
bcf1fa6b RR |
1068 | |
1069 | AC_OVERRIDES(printarch,printarch, | |
1070 | **--with-printarch use printing architecture, | |
8248314d | 1071 | wxUSE_PRINTING_ARCHITECTURE) |
bcf1fa6b | 1072 | |
e9aad10a KB |
1073 | AC_OVERRIDES(help,help, |
1074 | **--with-help use help (using external browser at present), | |
1075 | wxUSE_HELP) | |
1076 | ||
bcf1fa6b RR |
1077 | dnl ---------------------------------------------------------------- |
1078 | dnl Unix, obviously | |
1079 | dnl ---------------------------------------------------------------- | |
1080 | ||
8248314d | 1081 | if test "$wxUSE_UNIX" = 1 ; then |
bcf1fa6b RR |
1082 | AC_DEFINE(__UNIX__) |
1083 | fi | |
1084 | ||
6d5977df KB |
1085 | dnl ---------------------------------------------------------------- |
1086 | dnl Linux: test for libc5/glibc2: glibc2 has gettext() included | |
1087 | dnl ---------------------------------------------------------------- | |
1088 | if test "$USE_LINUX" = 1; then | |
91845ada | 1089 | AC_CHECK_LIB(c,gettext,AC_DEFINE(wxHAVE_GLIBC2)) |
6d5977df KB |
1090 | fi |
1091 | ||
bcf1fa6b RR |
1092 | dnl ---------------------------------------------------------------- |
1093 | dnl search for toolkit (widget sets) | |
1094 | dnl ---------------------------------------------------------------- | |
1095 | ||
1096 | TOOLKIT= | |
1097 | TOOLKIT_DEF= | |
1098 | ||
1099 | GUI_TK_INCLUDE= | |
1100 | GUI_TK_LIBRARY= | |
1101 | GUI_TK_LINK= | |
1102 | ||
76153302 RR |
1103 | WX_LINK= |
1104 | ||
bcf1fa6b RR |
1105 | MAKEINCLUDE= |
1106 | ||
8248314d | 1107 | if test "$wxUSE_GTK" = 1; then |
d345e841 | 1108 | AM_PATH_GTK(1.0.0, [ |
bcf1fa6b RR |
1109 | GUI_TK_INCLUDE="$GTK_CFLAGS" |
1110 | GUI_TK_LIBRARY="$GTK_LIBS" | |
d345e841 | 1111 | ], AC_MSG_ERROR(Is gtk-config in path and GTK+ is version 1.2.X or 1.0.X?)) |
bcf1fa6b RR |
1112 | TOOLKIT=GTK |
1113 | TOOLKIT_DEF=__WXGTK__ | |
8710cf5c | 1114 | WX_LINK=-lwx_gtk2 |
bcf1fa6b RR |
1115 | MAKEINCLUDE=../gtk.inc |
1116 | fi | |
1117 | ||
8248314d | 1118 | if test "$wxUSE_QT" = 1; then |
bcf1fa6b RR |
1119 | AC_MSG_CHECKING(for Qt includes) |
1120 | AC_PATH_FIND_INCLUDES($SEARCH_INCLUDE,qapp.h) | |
1121 | if test "$ac_find_includes" != "" ; then | |
1122 | AC_MSG_RESULT(found $ac_find_includes) | |
1123 | AC_MSG_CHECKING(for Qt library) | |
1124 | AC_PATH_FIND_LIBRARIES($SEARCH_LIB,qt) | |
1125 | if test "$ac_find_libraries" != "" ; then | |
1126 | AC_INCLUDE_PATH_EXIST($ac_find_includes,$CHECK_INCLUDE) | |
1127 | AC_LINK_PATH_EXIST($ac_find_libraries,$CHECK_LIB) | |
1128 | CHECK_LINK="$CHECK_INCLUDE $ac_path_to_link" | |
1129 | CHECK_INCLUDE="$CHECK_INCLUDE $ac_path_to_include" | |
1130 | AC_MSG_RESULT(found Qt at $ac_find_libraries) | |
1131 | else | |
1132 | AC_MSG_ERROR(no) | |
1133 | fi | |
1134 | else | |
1135 | AC_MSG_ERROR(no) | |
1136 | fi | |
76153302 | 1137 | GUI_TK_LINK="-lX11 -lqt -lm" |
bcf1fa6b RR |
1138 | TOOLKIT=QT |
1139 | TOOLKIT_DEF=__WXQT__ | |
76153302 | 1140 | WX_LINK=-lwx_qt |
bcf1fa6b RR |
1141 | MAKEINCLUDE=../qt.inc |
1142 | fi | |
1143 | ||
8248314d | 1144 | if test "$wxUSE_MOTIF" = 1; then |
57493f9f VZ |
1145 | AC_MSG_CHECKING(for Motif/Lesstif includes) |
1146 | AC_PATH_FIND_INCLUDES($SEARCH_INCLUDE, Xm/Xm.h) | |
1147 | if test "$ac_find_includes" != "" ; then | |
1148 | AC_MSG_RESULT(found $ac_find_includes) | |
1149 | else | |
1150 | AC_MSG_RESULT(no) | |
1151 | AC_MSG_ERROR(please set CFLAGS to contain the location of Xm/Xm.h) | |
1152 | fi | |
c2933500 | 1153 | |
57493f9f VZ |
1154 | AC_MSG_CHECKING(for Motif/Lesstif library) |
1155 | AC_PATH_FIND_LIBRARIES($SEARCH_LIB, Xm) | |
1156 | if test "$ac_find_libraries" != "" ; then | |
1157 | AC_INCLUDE_PATH_EXIST($ac_find_includes, $CHECK_INCLUDE) | |
1158 | AC_LINK_PATH_EXIST($ac_find_libraries, $CHECK_LIB) | |
1159 | ||
1160 | CHECK_LINK="$CHECK_LIB $ac_path_to_link" | |
1161 | CHECK_INCLUDE="$CHECK_INCLUDE $ac_path_to_include" | |
1162 | AC_MSG_RESULT(found at $ac_find_libraries) | |
1163 | else | |
1164 | AC_MSG_RESULT(no) | |
1165 | AC_MSG_ERROR(please set LDFLAGS to contain the location of libXm) | |
1166 | fi | |
1167 | ||
1168 | AC_MSG_CHECKING(for Xt library) | |
1169 | AC_PATH_FIND_LIBRARIES($SEARCH_LIB,Xt) | |
1170 | if test "$ac_find_libraries" != "" ; then | |
1171 | AC_LINK_PATH_EXIST($ac_find_libraries,$CHECK_LIB) | |
1172 | CHECK_LINK="$CHECK_LIB $ac_path_to_link" | |
1173 | AC_MSG_RESULT(found at $ac_find_libraries) | |
1174 | else | |
1175 | AC_MSG_RESULT(no) | |
1176 | AC_MSG_ERROR(please set LDFLAGS to contain the location of libXt) | |
1177 | fi | |
1178 | ||
1179 | XPM_LINK="" | |
1180 | AC_MSG_CHECKING(for Xpm library) | |
1181 | AC_PATH_FIND_LIBRARIES($SEARCH_LIB,Xpm) | |
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 | XPM_LINK="-lXpm " | |
1186 | AC_DEFINE(wxHAVE_LIB_XPM) | |
1187 | AC_MSG_RESULT(found at $ac_find_libraries) | |
1188 | else | |
1189 | AC_MSG_RESULT(no) | |
1190 | AC_MSG_WARN(library will be compiled without support for images in XPM format) | |
1191 | fi | |
1192 | ||
5f991871 | 1193 | GUI_TK_LINK="-lXm $(XPM_LINK)-lXmu -lXt -lX11 -lm" |
57493f9f VZ |
1194 | GUI_TK_LIBRARY="$CHECK_LIB $GUI_TK_LINK" |
1195 | TOOLKIT=MOTIF | |
1196 | TOOLKIT_DEF=__WXMOTIF__ | |
1197 | WX_LINK=-lwx_motif2 | |
1198 | MAKEINCLUDE=../motif.inc | |
bcf1fa6b RR |
1199 | fi |
1200 | ||
1201 | if test "$TOOLKIT" = ""; then | |
c2933500 | 1202 | AC_MSG_ERROR(You must specify a toolkit: --with-gtk --with-qt --with-motif) |
bcf1fa6b RR |
1203 | fi |
1204 | ||
1205 | AC_SUBST(GUI_TK_INCLUDE) | |
1206 | AC_SUBST(GUI_TK_LIBRARY) | |
1207 | AC_SUBST(GUI_TK_LINK) | |
1208 | ||
76153302 RR |
1209 | AC_SUBST(WX_LINK) |
1210 | ||
bcf1fa6b RR |
1211 | AC_SUBST(TOOLKIT) |
1212 | AC_SUBST(TOOLKIT_DEF) | |
1213 | ||
1214 | AC_SUBST(MAKEINCLUDE) | |
1215 | ||
1216 | dnl ---------------------------------------------------------------- | |
1217 | dnl Register compile options for makefiles and setup.h | |
1218 | dnl ---------------------------------------------------------------- | |
1219 | ||
8c739649 RR |
1220 | EXTRA_LINK= |
1221 | ||
bcf1fa6b | 1222 | WXDEBUG= |
2904eefd | 1223 | if test "$wxUSE_DEBUG_GDB" = 1 ; then |
5f0f31fe VZ |
1224 | wxUSE_DEBUG_INFO=1 |
1225 | WXDEBUG="-ggdb" | |
1226 | fi | |
1227 | ||
1228 | if test "$wxUSE_DEBUG_INFO" = 1 ; then | |
2904eefd KB |
1229 | WXDEBUG="-g" |
1230 | wxUSE_OPTIMISE=0 | |
bcf1fa6b | 1231 | fi |
5f0f31fe | 1232 | |
bcf1fa6b RR |
1233 | AC_SUBST(WXDEBUG) |
1234 | ||
8248314d VZ |
1235 | if test "$wxUSE_DEBUG_FLAG" = 1 ; then |
1236 | AC_DEFINE_UNQUOTED(WXDEBUG,$wxUSE_DEBUG_FLAG) | |
bcf1fa6b RR |
1237 | WXDEBUG_DEFINE="-D__WXDEBUG__" |
1238 | AC_SUBST(WXDEBUG_DEFINE) | |
f96aa4d9 RR |
1239 | else |
1240 | WXDEBUG_DEFINE="-DGTK_NO_CHECK_CASTS" | |
1241 | AC_SUBST(WXDEBUG_DEFINE) | |
bcf1fa6b RR |
1242 | fi |
1243 | ||
8248314d VZ |
1244 | if test "$wxUSE_MEM_TRACING" = 1 ; then |
1245 | AC_DEFINE_UNQUOTED(wxUSE_MEMORY_TRACING,$wxUSE_MEM_TRACING) | |
1246 | AC_DEFINE_UNQUOTED(wxUSE_GLOBAL_MEMORY_OPERATORS,$wxUSE_MEM_TRACING) | |
bcf1fa6b RR |
1247 | fi |
1248 | ||
8248314d | 1249 | if test "$wxUSE_DMALLOC" = 1 ; then |
bcf1fa6b RR |
1250 | EXTRA_LINK="$EXTRA_LINK -ldmalloc" |
1251 | fi | |
1252 | AC_SUBST(EXTRA_LINK) | |
1253 | ||
1254 | PROFILE= | |
8248314d | 1255 | if test "$wxUSE_PROFILE" = 1 ; then |
bcf1fa6b RR |
1256 | PROFILE="-pg" |
1257 | fi | |
1258 | AC_SUBST(PROFILE) | |
1259 | ||
1260 | CXXFLAGS=`echo "${CXXFLAGS}" | sed "s/\-O.//g" ` | |
1261 | CFLAGS=`echo "${CFLAGS}" | sed "s/\-O.//g" ` | |
8248314d | 1262 | if test "$wxUSE_OPTIMISE" = 0 ; then |
bcf1fa6b RR |
1263 | OPTIMISE= |
1264 | else | |
1265 | if test "$GCC" = yes ; then | |
1266 | OPTIMISE="-O2" | |
1267 | case "${canonical}" in | |
1268 | i586-*-*|i686-*-* ) | |
1269 | OPTIMISE="${OPTIMISE} " | |
1270 | ;; | |
1271 | esac | |
1272 | else | |
1273 | OPTIMISE="-O" | |
1274 | fi | |
1275 | fi | |
1276 | AC_SUBST(OPTIMISE) | |
1277 | ||
1278 | APPLE_IEEE=NONE | |
8248314d | 1279 | if test "$wxUSE_APPLE_IEEE" = 1 ; then |
bcf1fa6b | 1280 | APPLE_IEEE="APPLE_IEEE" |
8248314d | 1281 | AC_DEFINE_UNQUOTED(wxUSE_APPLE_IEEE,$wxUSE_APPLE_IEEE) |
bcf1fa6b RR |
1282 | fi |
1283 | ||
8248314d VZ |
1284 | wxUSE_IOSTREAMH=$DEFAULT_wxUSE_IOSTREAMH |
1285 | AC_DEFINE_UNQUOTED(wxUSE_IOSTREAMH,$wxUSE_IOSTREAMH) | |
bcf1fa6b RR |
1286 | |
1287 | dnl ---------------------------------------------------------------- | |
1288 | dnl Register library options for makefiles and setup.h | |
1289 | dnl ---------------------------------------------------------------- | |
1290 | ||
8248314d VZ |
1291 | if test "$wxUSE_ZLIB" = 1 ; then |
1292 | AC_DEFINE_UNQUOTED(wxUSE_ZLIB,$wxUSE_ZLIB) | |
ac57418f | 1293 | Z_C_SRC="\$(Z_C_SRC)" |
bcf1fa6b | 1294 | fi |
ac57418f | 1295 | AC_SUBST(Z_C_SRC) |
bcf1fa6b | 1296 | |
8248314d | 1297 | if test "$wxUSE_LIBPNG" = 1 ; then |
c2933500 | 1298 | AC_DEFINE_UNQUOTED(wxUSE_LIBPNG,$wxUSE_LIBPNG) |
ac57418f | 1299 | PNG_C_SRC="\$(PNG_C_SRC)" |
bcf1fa6b | 1300 | fi |
ac57418f | 1301 | AC_SUBST(PNG_C_SRC) |
bcf1fa6b | 1302 | |
2fff5f08 VS |
1303 | if test "$wxUSE_LIBJPEG" = 1 ; then |
1304 | AC_DEFINE_UNQUOTED(wxUSE_LIBJPEG,$wxUSE_LIBJPEG) | |
e1929140 | 1305 | JPEG_C_SRC="\$(JPEG_C_SRC)" |
2fff5f08 | 1306 | fi |
e1929140 RR |
1307 | AC_SUBST(JPEG_C_SRC) |
1308 | ||
1309 | JPEG_LINK="" | |
1310 | dnl if test "$wxUSE_LIBJPEG" = 1 ; then | |
1311 | dnl AC_DEFINE_UNQUOTED(wxUSE_LIBJPEG,$wxUSE_LIBJPEG) | |
1312 | dnl AC_CHECK_LIB(jpeg,main,,AC_MSG_ERROR("libjpeg is not available.")) | |
1313 | dnl JPEG_LINK="-ljpeg" | |
1314 | dnl fi | |
2fff5f08 VS |
1315 | AC_SUBST(JPEG_LINK) |
1316 | ||
84b46c35 | 1317 | IODBC_C_SRC="" |
8248314d | 1318 | if test "$wxUSE_ODBC" = 1 ; then |
c2933500 | 1319 | AC_DEFINE_UNQUOTED(wxUSE_ODBC,$wxUSE_ODBC) |
84b46c35 | 1320 | IODBC_C_SRC="\$(IODBC_C_SRC)" |
bcf1fa6b | 1321 | fi |
84b46c35 | 1322 | AC_SUBST(IODBC_C_SRC) |
bcf1fa6b | 1323 | |
bcf1fa6b RR |
1324 | dnl ---------------------------------------------------------------- |
1325 | dnl Register non-GUI class options for makefiles and setup.h | |
1326 | dnl ---------------------------------------------------------------- | |
1327 | ||
8248314d VZ |
1328 | if test "$wxUSE_CONFIG" = 1 ; then |
1329 | AC_DEFINE_UNQUOTED(wxUSE_CONFIG,$wxUSE_CONFIG) | |
bcf1fa6b RR |
1330 | fi |
1331 | ||
8248314d VZ |
1332 | if test "$wxUSE_TIMEDATE" = 1 ; then |
1333 | AC_DEFINE_UNQUOTED(wxUSE_TIMEDATE,$wxUSE_TIMEDATE) | |
bcf1fa6b RR |
1334 | fi |
1335 | ||
8248314d VZ |
1336 | if test "$wxUSE_INTL" = 1 ; then |
1337 | AC_DEFINE_UNQUOTED(wxUSE_INTL,$wxUSE_INTL) | |
bcf1fa6b RR |
1338 | fi |
1339 | ||
8248314d VZ |
1340 | if test "$wxUSE_STREAMS" = 1 ; then |
1341 | AC_DEFINE_UNQUOTED(wxUSE_STREAMS,$wxUSE_STREAMS) | |
bcf1fa6b RR |
1342 | fi |
1343 | ||
370ae202 RR |
1344 | if test "$wxUSE_SOCKETS" = 1 ; then |
1345 | AC_DEFINE_UNQUOTED(wxUSE_SOCKETS,$wxUSE_SOCKETS) | |
1346 | fi | |
1347 | ||
8248314d VZ |
1348 | if test "$wxUSE_SERIAL" = 1 ; then |
1349 | AC_DEFINE_UNQUOTED(wxUSE_SERIAL,$wxUSE_SERIAL) | |
bcf1fa6b RR |
1350 | fi |
1351 | ||
57493f9f VZ |
1352 | dnl ------------------------------------------------------------------------ |
1353 | dnl wxSocket | |
1354 | dnl ------------------------------------------------------------------------ | |
1355 | ||
1356 | if test "$wxUSE_SOCKETS" = "1"; then | |
1357 | dnl determine the type of third argument for getsockname | |
1358 | AC_MSG_CHECKING(the type of the third argument of getsockname) | |
1359 | AC_TRY_COMPILE( | |
1360 | [#include <sys/socket.h>], | |
4875458c KB |
1361 | [socklen_t len; getsockname(0, NULL, &len);], |
1362 | AC_DEFINE(SOCKLEN_T, socklen_t) AC_MSG_RESULT(socklen_t), | |
1363 | AC_TRY_COMPILE( | |
1364 | [#include <sys/socket.h>], | |
1365 | [size_t len; getsockname(0, NULL, &len);], | |
1366 | AC_DEFINE(SOCKLEN_T, size_t) AC_MSG_RESULT(size_t), | |
1367 | AC_TRY_COMPILE( | |
1368 | [#include <sys/socket.h>], | |
1369 | [int len; getsockname(0, NULL, &len);], | |
1370 | AC_DEFINE(SOCKLEN_T, int) AC_MSG_RESULT(int), | |
1371 | AC_MSG_RESULT(unknown) | |
1372 | ) | |
57493f9f VZ |
1373 | ) |
1374 | ) | |
1375 | fi | |
1376 | ||
eb9bbf52 VZ |
1377 | dnl ------------------------------------------------------------------------ |
1378 | dnl wxLibrary class | |
1379 | dnl ------------------------------------------------------------------------ | |
1380 | ||
1381 | HAVE_DL_FUNCS=0 | |
1382 | if test "$wxUSE_DYNLIB_CLASS" = "1"; then | |
1383 | dnl the test is a bit complicated because we check for dlopen() both with | |
1384 | dnl and without -ldl | |
1385 | AC_CHECK_FUNCS(dlopen, | |
1386 | [AC_DEFINE(HAVE_DLOPEN) HAVE_DL_FUNCS=1], | |
1387 | [AC_CHECK_LIB(dl, dlopen, | |
1388 | [AC_DEFINE(HAVE_DLOPEN) HAVE_DL_FUNCS=1])]) | |
1389 | AC_CHECK_FUNCS(shl_load, [AC_DEFINE(HAVE_SHL_LOAD) HAVE_DL_FUNCS=1]) | |
1390 | ||
1391 | if test "$HAVE_DL_FUNCS" = 0; then | |
1392 | AC_MSG_WARN("--with-dynlib will be disabled because no function was found to load a shared library on this platform") | |
1393 | ||
1394 | wxUSE_DYNLIB_CLASS=0 | |
1395 | fi | |
1396 | fi | |
1397 | ||
1398 | if test "$wxUSE_DYNLIB_CLASS" = 1 ; then | |
1399 | AC_DEFINE_UNQUOTED(wxUSE_DYNLIB_CLASS,$wxUSE_DYNLIB_CLASS) | |
1400 | fi | |
1401 | ||
bcf1fa6b RR |
1402 | dnl ---------------------------------------------------------------- |
1403 | dnl Register Prolog and Resources options for makefiles and setup.h | |
1404 | dnl ---------------------------------------------------------------- | |
1405 | ||
8248314d VZ |
1406 | if test "$wxUSE_RPC" = 1 ; then |
1407 | AC_DEFINE_UNQUOTED(wxUSE_RPC,$wxUSE_RPC) | |
bcf1fa6b RR |
1408 | fi |
1409 | ||
8248314d VZ |
1410 | if test "$wxUSE_WX_RESOURCES" = 1 ; then |
1411 | AC_DEFINE_UNQUOTED(wxUSE_WX_RESOURCES,$wxUSE_WX_RESOURCES) | |
bcf1fa6b RR |
1412 | fi |
1413 | ||
8248314d VZ |
1414 | if test "$wxUSE_PROLOGIO" = 1 ; then |
1415 | AC_DEFINE_UNQUOTED(wxUSE_PROLOGIO) | |
bcf1fa6b RR |
1416 | fi |
1417 | ||
1418 | dnl ---------------------------------------------------------------- | |
1419 | dnl Register PostScript options for makefiles and setup.h | |
1420 | dnl ---------------------------------------------------------------- | |
1421 | ||
8248314d VZ |
1422 | if test "$wxUSE_POSTSCRIPT" = 1 ; then |
1423 | AC_DEFINE_UNQUOTED(wxUSE_POSTSCRIPT) | |
bcf1fa6b RR |
1424 | fi |
1425 | ||
8248314d | 1426 | AC_DEFINE_UNQUOTED(wxUSE_AFM_FOR_POSTSCRIPT,$wxUSE_AFM_FOR_POSTSCRIPT) |
bcf1fa6b RR |
1427 | |
1428 | AC_DEFINE_UNQUOTED(WX_NORMALIZED_PS_FONTS,$WX_NORMALIZED_PS_FONTS) | |
1429 | ||
1430 | dnl ---------------------------------------------------------------- | |
1431 | dnl Register architecture options for makefiles and setup.h | |
1432 | dnl ---------------------------------------------------------------- | |
1433 | ||
8248314d VZ |
1434 | if test "$wxUSE_MDI_ARCHITECTURE" = 1 ; then |
1435 | AC_DEFINE_UNQUOTED(wxUSE_MDI_ARCHITECTURE,$wxUSE_MDI_ARCHITECTURE) | |
bcf1fa6b RR |
1436 | fi |
1437 | ||
8248314d VZ |
1438 | if test "$wxUSE_DOC_VIEW_ARCHITECTURE" = 1 ; then |
1439 | AC_DEFINE_UNQUOTED(wxUSE_DOC_VIEW_ARCHITECTURE,$wxUSE_DOC_VIEW_ARCHITECTURE) | |
bcf1fa6b RR |
1440 | fi |
1441 | ||
8248314d VZ |
1442 | if test "$wxUSE_PRINTING_ARCHITECTURE" = 1 ; then |
1443 | AC_DEFINE_UNQUOTED(wxUSE_PRINTING_ARCHITECTURE,$wxUSE_PRINTING_ARCHITECTURE) | |
bcf1fa6b RR |
1444 | fi |
1445 | ||
fb4e5803 VZ |
1446 | dnl ---------------------------------------------------------------- |
1447 | dnl Register wxString options for makefiles and setup.h | |
1448 | dnl ---------------------------------------------------------------- | |
1449 | ||
1450 | if test "$wxUSE_UNICODE" = 1 ; then | |
1451 | AC_DEFINE_UNQUOTED(wxUSE_UNICODE) | |
1452 | fi | |
1453 | ||
1454 | if test "$wxUSE_WCSRTOMBS" = 1 ; then | |
1455 | AC_DEFINE_UNQUOTED(wxUSE_WCSRTOMBS) | |
1456 | fi | |
1457 | ||
bcf1fa6b RR |
1458 | dnl ---------------------------------------------------------------- |
1459 | dnl Register misc options for makefiles and setup.h | |
1460 | dnl ---------------------------------------------------------------- | |
1461 | ||
8248314d VZ |
1462 | if test "$wxUSE_IPC" = 1 ; then |
1463 | AC_DEFINE_UNQUOTED(wxUSE_IPC) | |
bcf1fa6b RR |
1464 | fi |
1465 | ||
8248314d VZ |
1466 | if test "$wxUSE_RESOURCES" = 1 ; then |
1467 | AC_DEFINE_UNQUOTED(wxUSE_RESOURCES,$wxUSE_RESOURCES) | |
bcf1fa6b RR |
1468 | fi |
1469 | ||
8248314d VZ |
1470 | if test "$wxUSE_CLIPBOARD" = 1 ; then |
1471 | AC_DEFINE_UNQUOTED(wxUSE_CLIPBOARD,$wxUSE_CLIPBOARD) | |
bcf1fa6b RR |
1472 | fi |
1473 | ||
ff8bfdbb | 1474 | if test "$wxUSE_TOOLTIPS" = 1 ; then |
6442ad7f VZ |
1475 | if test "$wxUSE_MOTIF" = 1; then |
1476 | AC_MSG_WARN(tooltips are not supported yet under Motif, sorry) | |
1477 | wxUSE_TOOLTIPS=0 | |
1478 | fi | |
1479 | ||
1480 | AC_DEFINE_UNQUOTED(wxUSE_TOOLTIPS,$wxUSE_TOOLTIPS) | |
ff8bfdbb VZ |
1481 | fi |
1482 | ||
ac57418f RR |
1483 | if test "$wxUSE_DRAG_AND_DROP" = 1 ; then |
1484 | AC_DEFINE_UNQUOTED(wxUSE_DRAG_AND_DROP,$wxUSE_DRAG_AND_DROP) | |
bcf1fa6b RR |
1485 | fi |
1486 | ||
1487 | dnl ---------------------------------------------------------------- | |
ac57418f | 1488 | dnl No effect yet |
bcf1fa6b RR |
1489 | dnl ---------------------------------------------------------------- |
1490 | ||
bcf1fa6b | 1491 | HELP=NONE |
8248314d | 1492 | if test "$wxUSE_HELP" = 1 ; then |
bcf1fa6b | 1493 | HELP="HELP" |
8248314d | 1494 | AC_DEFINE_UNQUOTED(wxUSE_HELP,$wxUSE_HELP) |
bcf1fa6b RR |
1495 | fi |
1496 | AC_SUBST(HELP) | |
1497 | ||
bcf1fa6b RR |
1498 | dnl ---------------------------------------------------------------- |
1499 | dnl thread support | |
1500 | dnl ---------------------------------------------------------------- | |
1501 | ||
91845ada VZ |
1502 | dnl defines UNIX_THREAD it contains the source file to use for threads. (GL) |
1503 | dnl defines THREADS_LINK it contains the thread library to link with. (GL) | |
1504 | dnl defines wxUSE_THREADS if thread support is activated. (GL) | |
1505 | ||
bcf1fa6b | 1506 | THREADS_LINK="" |
ac57418f | 1507 | UNIX_THREAD="" |
bcf1fa6b | 1508 | |
d18ed59a | 1509 | if test "$wxUSE_THREADS" = "1"; then |
5e0b1434 VZ |
1510 | dnl find if POSIX threads are available |
1511 | ||
08ee61e9 KB |
1512 | dnl standard lib name is pthread |
1513 | dnl We no longer test for pthread-0.7 as it breaks compilation on some | |
1514 | dnl glibc2 systems, especially for static linkage. | |
1515 | AC_CHECK_LIB(pthread, pthread_create, [ | |
5e0b1434 VZ |
1516 | UNIX_THREAD="unix/threadpsx.cpp" |
1517 | THREADS_LINK="pthread" | |
1518 | ], [ | |
1519 | dnl thread functions are in libc_r under FreeBSD | |
1520 | AC_CHECK_LIB(c_r, pthread_create, [ | |
1521 | UNIX_THREAD="unix/threadpsx.cpp" | |
1522 | THREADS_LINK="c_r" | |
1523 | ], [ | |
1524 | dnl VZ: SGI threads are not supported currently | |
1525 | AC_CHECK_HEADER(sys/prctl.h, [ | |
1526 | UNIX_THREAD="gtk/threadsgi.cpp" | |
1527 | ]) | |
1528 | ]) | |
1529 | ]) | |
ac57418f | 1530 | if test "$THREADS_LINK" != ""; then |
5e0b1434 VZ |
1531 | AC_DEFINE(wxUSE_THREADS) |
1532 | else | |
1533 | AC_MSG_WARN(No thread support on this system) | |
ac57418f | 1534 | fi |
bcf1fa6b RR |
1535 | fi |
1536 | ||
1537 | if test -z "$UNIX_THREAD"; then | |
d18ed59a | 1538 | wxUSE_THREADS=0 |
bcf1fa6b RR |
1539 | fi |
1540 | ||
91845ada VZ |
1541 | dnl do other tests only if we are using threads |
1542 | if test "$wxUSE_THREADS" = "1"; then | |
72914c56 | 1543 | |
903b682c VZ |
1544 | dnl define autoconf macro to check for given function in both pthread and |
1545 | dnl posix4 libraries | |
1546 | dnl usage: AC_FUNC_THREAD(FUNCTION_NAME) | |
1547 | dnl VZ: TODO | |
1548 | dnl AC_DEFUN(AC_FUNC_THREAD, | |
1549 | dnl [ | |
1550 | dnl AC_CHECK_LIB($THREADS_LINK, $1, | |
1551 | dnl AC_DEFINE(HAVE_`'translit($1, `A-Z', 'a-z'), | |
1552 | dnl [AC_CHECK_LIB("posix4", $1, | |
1553 | dnl [AC_DEFINE(HAVE_`'translit($1, `A-Z', 'a-z')) | |
1554 | dnl POSIX4_LINK="-lposix4" | |
1555 | dnl ]) | |
1556 | dnl ]) | |
1557 | dnl ]) | |
1558 | ||
72914c56 VZ |
1559 | AC_CHECK_HEADERS(sched.h) |
1560 | ||
91845ada VZ |
1561 | AC_CHECK_LIB($THREADS_LINK, sched_yield, |
1562 | AC_DEFINE(HAVE_SCHED_YIELD), | |
1563 | [AC_CHECK_LIB("posix4", sched_yield, | |
80cb83be | 1564 | [AC_DEFINE(HAVE_SCHED_YIELD) POSIX4_LINK="-lposix4"], |
91845ada VZ |
1565 | AC_MSG_WARN(wxThread::Yield() will not work properly) |
1566 | )] | |
1567 | ) | |
1568 | ||
903b682c VZ |
1569 | dnl VZ: we should be checking for all of the following functions instead: |
1570 | dnl 1. pthread_attr_getschedpolicy | |
1571 | dnl 2. sched_get_priority_min and sched_get_priority_max | |
1572 | dnl 3. pthread_attr_getschedparam and pthread_attr_setschedparam | |
1573 | dnl but it seems that if the first one is there, the other ones are too (of | |
1574 | dnl course the proper solution would be to implement AC_FUNC_THREAD above | |
1575 | dnl and do test for them all - anyone?) | |
1576 | AC_CHECK_LIB($THREADS_LINK, pthread_attr_getschedpolicy, | |
91845ada | 1577 | AC_DEFINE(HAVE_THREAD_PRIORITY_FUNCTIONS), |
903b682c | 1578 | [AC_CHECK_LIB("posix4", pthread_attr_getschedpolicy, |
80cb83be | 1579 | [AC_DEFINE(HAVE_THREAD_PRIORITY_FUNCTIONS) POSIX4_LINK="-lposix4"], |
91845ada VZ |
1580 | AC_MSG_WARN(Setting thread priority will not work) |
1581 | )] | |
1582 | ) | |
1583 | ||
1584 | AC_CHECK_LIB($THREADS_LINK, pthread_cancel, | |
1585 | AC_DEFINE(HAVE_PTHREAD_CANCEL), | |
1586 | AC_MSG_WARN(wxThread::Kill() will not work properly)) | |
1587 | ||
80cb83be | 1588 | THREADS_LINK="-l$THREADS_LINK" |
91845ada VZ |
1589 | fi |
1590 | ||
bcf1fa6b RR |
1591 | AC_SUBST(UNIX_THREAD) |
1592 | AC_SUBST(THREADS_LINK) | |
80cb83be | 1593 | AC_SUBST(POSIX4_LINK) |
bcf1fa6b | 1594 | |
bcf1fa6b RR |
1595 | dnl ------------------------------------------------------------------------ |
1596 | dnl compiler options for shared libs | |
1597 | dnl ------------------------------------------------------------------------ | |
1598 | ||
1599 | PICFLAGS= | |
1600 | CREATE_SHARED= | |
1601 | case "${canonical}" in | |
bcf1fa6b | 1602 | *-hp-hpux* ) |
7cacdad3 | 1603 | if test "$GCC" != "yes" ; then |
bcf1fa6b RR |
1604 | CXXFLAGS="${CXXFLAGS} +a1 -z -Aa -D_HPUX_SOURCE" |
1605 | CFLAGS="${CFLAGS} -z -D_HPUX_SOURCE" | |
1606 | PICFLAGS="+z" | |
1607 | else | |
1608 | PICFLAGS="-fPIC" | |
1609 | fi | |
1610 | LDFLAGS="-Wl,+s" | |
1611 | CREATE_SHARED=sharedHpux | |
1612 | ;; | |
1613 | ||
1614 | *-*-linux* ) | |
1615 | PICFLAGS=-fPIC | |
1616 | CREATE_SHARED=sharedLinux | |
1617 | ;; | |
1618 | ||
c2933500 | 1619 | *-*-irix5* | *-*-irix6* ) |
bcf1fa6b RR |
1620 | # PICFLAGS can remain empty, as pic is the default |
1621 | LDFLAGS="-Wl,+s" | |
1622 | CREATE_SHARED=sharedIrix | |
1623 | AC_DEFINE(SVR4) | |
1624 | ;; | |
1625 | ||
c2933500 | 1626 | *-*-solaris2* ) |
7cacdad3 | 1627 | if test "$GCC" != "yes" ; then |
bcf1fa6b RR |
1628 | PICFLAGS="-KPIC" |
1629 | else | |
1630 | PICFLAGS="-fPIC" | |
1631 | fi | |
1632 | CREATE_SHARED=sharedSolaris2 | |
1633 | AC_DEFINE(SVR4) | |
1634 | ;; | |
1635 | ||
c2933500 | 1636 | *-*-sunos4* ) |
7cacdad3 | 1637 | if test "$GCC" != "yes" ; then |
bcf1fa6b RR |
1638 | PICFLAGS="-PIC" |
1639 | else | |
1640 | PICFLAGS="-fPIC" | |
1641 | fi | |
1642 | LDFLAGS="-Wl,+s" | |
1643 | CREATE_SHARED=sharedSunos4 | |
1644 | AC_DEFINE(BSD) | |
1645 | ;; | |
1646 | ||
1647 | *-*-freebsd* | *-*-netbsd*) | |
1648 | PICFLAGS=-fPIC | |
1649 | CREATE_SHARED=sharedBsd | |
1650 | AC_DEFINE(BSD) | |
1651 | ;; | |
1652 | ||
c2933500 | 1653 | *-*-osf* ) |
bcf1fa6b RR |
1654 | PICFLAGS="-fPIC" |
1655 | CREATE_SHARED=sharedOSF | |
1656 | ;; | |
1657 | ||
c2933500 | 1658 | *-*-dgux5* ) |
7cacdad3 | 1659 | if test "$GCC" != "yes" ; then |
bcf1fa6b RR |
1660 | PICFLAGS="-K PIC" |
1661 | else | |
1662 | PICFLAGS="-fPIC" | |
1663 | fi | |
1664 | CREATE_SHARED=sharedDgux | |
1665 | AC_DEFINE(SVR4) | |
1666 | ;; | |
1667 | ||
c2933500 | 1668 | *-*-sysv5* ) |
7cacdad3 | 1669 | if test "$GCC" != "yes" ; then |
bcf1fa6b RR |
1670 | PICFLAGS="-K PIC" |
1671 | else | |
1672 | PICFLAGS="-fPIC" | |
1673 | fi | |
1674 | CREATE_SHARED=sharedSysV | |
1675 | AC_DEFINE(SVR4) | |
1676 | ;; | |
1677 | ||
c2933500 | 1678 | *-*-aix* ) |
7cacdad3 | 1679 | if test "$GCC" != "yes" ; then |
bcf1fa6b RR |
1680 | PICFLAGS="-bM\:SRE" |
1681 | else | |
1bfcb0b6 | 1682 | PICFLAGS="-fPIC -D__SYSV__" |
bcf1fa6b RR |
1683 | fi |
1684 | CREATE_SHARED=sharedAIX | |
1685 | AC_DEFINE(SYSV) | |
1686 | ;; | |
1687 | ||
1688 | *) | |
1689 | CREATE_SHARED= | |
1690 | PICFLAGS= | |
1691 | esac | |
1692 | ||
1693 | if test "x$GCC" = xyes; then | |
cd5bf2a6 | 1694 | CFLAGS="${CFLAGS} -Wall -Wno-unused -Wno-uninitialized -D_REENTRANT -DLEX_SCANNER -DHAVE_LIBDL" |
bcf1fa6b RR |
1695 | fi |
1696 | ||
1697 | if test "x$GXX" = xyes; then | |
f6c6dd8c | 1698 | if test "$wxUSE_MOTIF" = 1; then |
06f46ad1 | 1699 | CXXFLAGS="${CXXFLAGS} -Wall -Wno-unused -D_REENTRANT" |
f6c6dd8c | 1700 | else |
06f46ad1 | 1701 | CXXFLAGS="${CXXFLAGS} -Wall -D_REENTRANT" |
f6c6dd8c | 1702 | fi |
bcf1fa6b RR |
1703 | fi |
1704 | ||
8248314d | 1705 | if test "$wxUSE_SHARED" != 1; then |
bcf1fa6b RR |
1706 | CREATE_SHARED= |
1707 | PICFLAGS= | |
1708 | fi | |
1709 | ||
1710 | AC_SUBST(OS) | |
1711 | AC_SUBST(PICFLAGS) | |
1712 | AC_SUBST(CREATE_SHARED) | |
1713 | ||
1714 | dnl ------------------------------------------------------------------------ | |
1715 | dnl finish and clean-up | |
1716 | dnl ------------------------------------------------------------------------ | |
1717 | ||
1718 | dnl add OS to list of configured | |
1719 | echo $OS >> system.list | |
1720 | ||
6442ad7f VZ |
1721 | TOOLKIT_DIR=`echo ${TOOLKIT} | tr "A-Z" "a-z"` |
1722 | AC_CONFIG_HEADER(./include/wx/${TOOLKIT_DIR}/setup.h:./setup/setup.hin) | |
1723 | ||
f3cb6592 | 1724 | AC_OUTPUT(./setup/substit ./wx-config:./wx-config.in,./setup/general/createall) |
bcf1fa6b RR |
1725 | |
1726 | AC_OVERRIDES_DONE | |
518b5d2f | 1727 |