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