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