]> git.saurik.com Git - wxWidgets.git/blob - configure.in
5ed268a1ff2836ba156507706945cf1bbe8ed04c
[wxWidgets.git] / configure.in
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, &micro) != 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 dnl VZ: added standard locations for Xm.h for Irix, HP-UX and SunOS (19.02.99)
239 SEARCH_INCLUDE="\
240 /usr/Motif-1.2/include \
241 /usr/Motif-2.1/include \
242 \
243 /usr/include/Motif1.2 \
244 /opt/xpm/include/X11 \
245 \
246 /usr/Motif1.2/include \
247 /usr/dt/include \
248 /usr/include/Xm \
249 \
250 /usr/X11R6/include \
251 /usr/X11R5/include \
252 /usr/X11R4/include \
253 \
254 /usr/X11R6/lib \
255 /usr/X11R5/lib \
256 /usr/X11R4/lib \
257 \
258 /usr/include/X11R6 \
259 /usr/include/X11R5 \
260 /usr/include/X11R4 \
261 \
262 /usr/local/X11R6/include \
263 /usr/local/X11R5/include \
264 /usr/local/X11R4/include \
265 \
266 /usr/local/include/X11R6 \
267 /usr/local/include/X11R5 \
268 /usr/local/include/X11R4 \
269 \
270 /usr/X11/include \
271 /usr/include/X11 \
272 /usr/local/X11/include \
273 /usr/local/include/X11 \
274 \
275 /usr/X386/include \
276 /usr/x386/include \
277 /usr/XFree86/include/X11 \
278 \
279 /usr/include \
280 /usr/include/gtk \
281 /usr/include/gdk \
282 /usr/include/glib \
283 /usr/local/include \
284 /usr/unsupported/include \
285 /usr/athena/include \
286 /usr/local/x11r5/include \
287 /usr/lpp/Xamples/include \
288 \
289 /usr/local/include/gtk \
290 /usr/local/include/qt \
291 /usr/include/qt \
292 \
293 /usr/openwin/include \
294 /usr/openwin/share/include \
295 "
296
297 SEARCH_LIB="`echo "$SEARCH_INCLUDE" | sed s/include/lib/g` "
298
299 dnl ------------------------------------------------------------------------
300 dnl standard checks
301 dnl ------------------------------------------------------------------------
302
303 dnl ###################
304 dnl # checks programs #
305 dnl ###################
306
307 dnl C-compiler checks
308 dnl =================
309 dnl use what compiler
310 AC_PROG_CC
311 dnl defines CC with the compiler to use
312 dnl defines GCC with yes if using gcc
313 dnl defines GCC empty if not using gcc
314 dnl defines CFLAGS
315
316 CFLAGS=`echo "$CFLAGS" | sed 's/-g//g'`
317
318 dnl does compiler support -c and -o simultaniously
319 AC_PROG_CC_C_O
320 dnl defines NO_MINUS_C_MINUS_O if compiler does not accept
321 dnl both switches simultaniously
322 dnl what is the c-preprocessor
323 AC_PROG_CPP
324 dnl defines CPP with the c-preprocessor
325 dnl is -traditional needed for correct compilations
326 AC_PROG_GCC_TRADITIONAL
327 dnl adds -traditional for gcc if needed
328
329 AC_LANG_SAVE
330
331 dnl C++-compiler checks
332 dnl ===================
333 dnl use what compiler
334 AC_PROG_CXX
335 dnl defines CXX with the compiler to use
336 dnl defines GXX with yes if using gxx
337 dnl defines GXX empty if not using gxx
338 dnl defines CXXFLAGS
339 dnl what is the C++-preprocessor
340 AC_PROG_CXXCPP
341 dnl defines CXXCPP with the C++-preprocessor
342
343 CXXFLAGS=`echo "$CXXFLAGS" | sed 's/-g//g'`
344
345 AC_LANG_RESTORE
346
347 dnl ranlib command
348 dnl ==============
349 AC_PROG_RANLIB
350 dnl defines RANLIB with the appropriate command
351
352 dnl ar command
353 dnl ==========
354 AC_CHECK_PROG(AR, ar, ar, ar)
355 dnl defines AR with the appropriate command
356
357 dnl install checks
358 dnl ==============
359 AC_PROG_INSTALL
360 dnl defines INSTALL with the appropriate command
361
362 dnl does ln -s works
363 dnl ================
364 AC_PROG_LN_S
365 dnl defines LN_S with the appropriate command
366
367 dnl awk command
368 dnl ===========
369 AC_PROG_AWK
370 dnl defines AWK with the appropriate command
371
372 dnl strip command
373 dnl =============
374 AC_CHECK_PROG(STRIP, strip, strip, true)
375 dnl defines STRIP as strip or nothing if not found
376
377 dnl ###############
378 dnl # make checks #
379 dnl ###############
380 dnl check if VPATH works
381 AC_MSG_CHECKING("make for VPATH support")
382 dnl create Makefile
383 cat - << EOF > confMake
384 check : file
385 cp \$? \$@
386 cp \$? final_file
387 EOF
388
389 if test ! -d sub ; then
390 mkdir sub
391 fi
392 echo dummy > sub/file
393 ${MAKE-make} -f confMake VPATH=sub 2> config.log > /dev/null
394 RESULT=$?
395 rm -f sub/file check final_file confMake
396 rmdir sub
397 if test "$RESULT" = 0; then
398 AC_MSG_RESULT(yes)
399 else
400 AC_MSG_RESULT(no)
401 AC_MSG_ERROR(
402 You need a make-utility that is able to use the variable
403 VPATH correctly.
404 If your version of make does not support VPATH correctly,
405 please install GNU-make (possibly as gmake), and start
406 configure with the following command:
407 export MAKE=gmake; ./configure for sh-type shells
408 setenv MAKE gmake; ./configure for csh-type shells
409 Also please do remember to use gmake in this case every time
410 you are trying to compile.
411 )
412 fi
413
414 dnl ####################
415 dnl # checks libraries #
416 dnl ####################
417
418 dnl find the X11 include and library files
419 AC_PATH_XTRA
420 dnl defines x_includes and x_libraries
421
422 dnl #######################
423 dnl # checks header files #
424 dnl #######################
425 AC_HEADER_DIRENT
426 dnl defines DIR
427 dnl defines MACRO HAVE_DIRENT_H if dirent.h exists
428 dnl defines MACRO HAVE_SYS_NDIR_H if sys/ndir.h exists
429 dnl defines MACRO HAVE_SYS_DIR_H if sys/dir.h exists
430 dnl defines MACRO HAVE_NDIR_H if ndir.h exists
431 AC_HEADER_STDC
432 dnl defines STDC_HEADERS if ANSI-C header
433 AC_HEADER_SYS_WAIT
434 dnl defines HAVE_SYS_WAIT_H if sys/wait.h exist and is POSIX.1
435 AC_CHECK_HEADERS(fcntl.h)
436 dnl defines HAVE_FCNTL_H
437 AC_CHECK_HEADERS(limits.h)
438 dnl defines HAVE_LIMITS_h
439 AC_CHECK_HEADERS(sys/file.h)
440 dnl defines HAVE_SYS_FILE_H
441 AC_CHECK_HEADERS(sys/time.h)
442 dnl defines HAVE_SYS_TIME_H
443 AC_CHECK_HEADERS(unistd.h)
444 dnl defines HAVE_UNISTD_H
445 AC_CHECK_HEADERS(fnmatch.h)
446 dnl defines HAVE_FNMATCH_H
447 dnl As it needs Linux 2.1.x for the moment: check whether the file exists (GL).
448 AC_CHECK_HEADERS(linux/joystick.h)
449 GTK_JOYSTICK=""
450 if test "$ac_cv_header_linux_joystick_h" = "yes"; then
451 GTK_JOYSTICK="gtk/joystick.cpp"
452 fi
453 AC_SUBST(GTK_JOYSTICK)
454
455 dnl check for vprintf/vsprintf() which are GNU extensions
456 AC_FUNC_VPRINTF
457
458 dnl check for several standard functions we use if they are available
459 AC_CHECK_FUNCS(vsnprintf vfork)
460
461 dnl check for usleep() and nanosleep() which is better in MT programs
462 dnl AC_CHECK_FUNCS(nanosleep, AC_DEFINE(HAVE_NANOSLEEP),
463 dnl [
464 dnl AC_CHECK_LIB(posix4, nanosleep,
465 dnl AC_DEFINE(HAVE_NANOSLEEP),
466 dnl AC_CHECK_FUNCS(usleep))
467 dnl ]
468 dnl )
469 AC_CHECK_FUNCS(nanosleep, AC_DEFINE(HAVE_NANOSLEEP),
470 [AC_CHECK_LIB(posix4, nanosleep, AC_DEFINE(HAVE_NANOSLEEP),
471 [AC_CHECK_FUNCS(usleep, AC_DEFINE(HAVE_USLEEP),
472 AC_MSG_WARN(Sleep() function will not work)
473 )]
474 )]
475 )
476
477 dnl check for uname (POSIX) and gethostname (BSD)
478 AC_CHECK_FUNCS(uname gethostname, break)
479
480 AC_LANG_SAVE
481 AC_LANG_CPLUSPLUS
482 AC_CHECK_HEADERS(iostream)
483 if test "x$HAVE_IOSTREAM" = "x" ; then
484 AC_DEFINE(wxUSE_IOSTREAMH)
485 fi
486 AC_LANG_RESTORE
487
488 dnl defines HAVE_IOSTREAM
489 dnl ###################
490 dnl # checks typedefs #
491 dnl ###################
492 AC_TYPE_GETGROUPS
493 dnl defines GETGROUPS_T
494 AC_TYPE_MODE_T
495 dnl defines mode_t if not already defined
496 AC_TYPE_OFF_T
497 dnl defines off_t if not already defined
498 AC_TYPE_PID_T
499 dnl defines pid_t if not already defined
500 AC_TYPE_SIGNAL
501 dnl defines RETSIGTYPE for the correct return type of signal
502 AC_TYPE_SIZE_T
503 dnl defines size_t if not already defined
504 AC_TYPE_UID_T
505 dnl defines uid_t and gid_t if not already defined
506
507 dnl #####################
508 dnl # checks structures #
509 dnl #####################
510
511 AC_HEADER_STAT
512 dnl defines STAT_MACROS_BROKEN if S_ISDIR and S_ISREG
513 dnl do not work properly
514 AC_HEADER_TIME
515 dnl defines TIME_WITH_SYS_TIME if time.h and sys/time.h can
516 dnl both be included
517 AC_STRUCT_ST_BLKSIZE
518 dnl defines HAVE_ST_BLKSIZE if struct stat contains st_blksize
519 AC_STRUCT_ST_BLOCKS
520 dnl defines HAVE_ST_BLOCKS if struct stat contains st_blocks
521 AC_STRUCT_ST_RDEV
522 dnl defines HAVE_ST_RDEV if struct stat contains st_rdev
523 AC_STRUCT_TM
524 dnl defines TM_IN_SYS_TIME if struct tm is not in time.h
525 AC_STRUCT_TIMEZONE
526 dnl defines HAVE_ST_BLKSIZE if struct tm contains tm_zone
527 dnl otherwise
528 dnl defines HAVE_TZNAME if external array tzname is found
529
530 dnl ###################################
531 dnl # checks compiler characteristics #
532 dnl ###################################
533 dnl AC_C_CROSS
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
547 AC_CHECK_SIZEOF(int *)
548 AC_CHECK_SIZEOF(int)
549 AC_CHECK_SIZEOF(long)
550 AC_CHECK_SIZEOF(long long)
551 dnl defines the size of certain types of variables in SIZEOF_???
552
553 dnl ############################
554 dnl # checks library functions #
555 dnl ############################
556
557 dnl ##########################
558 dnl # checks system services #
559 dnl ##########################
560
561
562 AC_SYS_LONG_FILE_NAMES
563 dnl defines HAVE_LONG_FILENAMES if filenames longer then
564 dnl 14 chars are supported
565
566 dnl AC_SYS_RESTARTABLE_SYSCALLS
567 dnl defines HAVE_RESTARTABLE_SYSCALLS if the system restarts a
568 dnl system call that is interrupted
569 dnl by a signal
570
571 dnl #################
572 dnl # checks PARSER #
573 dnl #################
574
575 dnl YACC checks
576 dnl ===========
577 AC_PROG_YACC
578 dnl defines YACC with the appropriate command
579
580 dnl LEX checks
581 dnl ==========
582 AC_PROG_LEX
583 dnl defines LEX with the appropriate command
584 dnl defines LEXLIB with the appropriate library
585 dnl what type is yytext
586 AC_DECL_YYTEXT
587 dnl defines YYTEXT_POINTER if yytext is char*
588 dnl defines LEX_OUTPUT_ROOT as to the base of the
589 dnl filename output by the lexer
590
591 dnl ###################################
592 dnl ## Check for dynamic load module #
593 dnl ###################################
594
595 DL_LIBRARY=
596 AC_CHECK_FUNCS(dlopen, AC_DEFINE(HAVE_LIBDL),
597 [AC_CHECK_LIB(dl, dlopen, [AC_DEFINE(HAVE_LIBDL) DL_LIBRARY="-ldl"],
598 [AC_CHECK_LIB(dld, dld_link, [AC_DEFINE(HAVE_DLD) DL_LIBRARY="-ldld"],
599 [AC_CHECK_FUNCS(shl_load, AC_DEFINE(HAVE_SHL_LOAD) )]
600 )]
601 )]
602 )
603 AC_SUBST(DL_LIBRARY)
604
605 AC_CACHE_CHECK([for underscore before symbols], libltdl_cv_uscore, [
606 echo "main(){int i=1;} fnord(){int i=23; int ltuae=42;}" > conftest.c
607 ${CC} -c conftest.c > /dev/null
608 if (nm conftest.o | grep _fnord) > /dev/null; then
609 libltdl_cv_uscore=yes
610 else
611 libltdl_cv_uscore=no
612 fi
613 rm -f conftest*
614 ])
615
616 if test x"$libltdl_cv_uscore" = xyes; then
617 if test x"$ac_cv_func_dlopen" = xyes ||
618 test x"$ac_cv_lib_dl_dlopen" = xyes ; then
619 AC_CACHE_CHECK([whether we have to add an underscore for dlsym],
620 libltdl_cv_need_uscore, [dnl
621 AC_TRY_RUN([
622 #include <dlfcn.h>
623 #include <stdio.h>
624 fnord() { int i=42;}
625 main() { void *self, *ptr1, *ptr2; self=dlopen(NULL,RTLD_LAZY);
626 if(self) { ptr1=dlsym(self,"fnord"); ptr2=dlsym(self,"_fnord");
627 if(ptr1 && !ptr2) exit(0); } exit(1); }
628 ], libltdl_cv_need_uscore=no, libltdl_cv_need_uscore=yes,
629 libltdl_cv_need_uscore=no
630 )])
631 fi
632 fi
633
634 if test x"$libltdl_cv_need_uscore" = xyes; then
635 AC_DEFINE(NEED_USCORE)
636 fi
637
638 dnl ##########################################
639 dnl ## Check for specific library functions #
640 dnl ##########################################
641
642 dnl Checks for library functions.
643 AC_CHECK_FUNCS(strerror)
644
645 dnl ------------------------------------------------------------------------
646 dnl main includes
647 dnl ------------------------------------------------------------------------
648
649 CHECK_INCLUDE="-I/usr/include $X_CFLAGS"
650 CHECK_LIB="-L/lib -L/usr/lib $X_LIBS"
651
652 dnl ------------------------------------------------------------------------
653 dnl host system
654 dnl ------------------------------------------------------------------------
655
656 AC_CANONICAL_HOST
657 canonical=$host
658 configuration=$host_alias
659
660 dnl ------------------------------------------------------------------------
661 dnl system settings
662 dnl ------------------------------------------------------------------------
663
664 USE_UNIX=1
665
666 USE_LINUX=
667 USE_SGI=
668 USE_HPUX=
669 USE_SYSV=
670 USE_SVR4=
671 USE_AIX=
672 USE_SUN=
673 USE_SOLARIS=
674 USE_SUNOS=
675 USE_ALPHA=
676 USE_OSF=
677 USE_BSD=
678 USE_FREEBSD=
679 USE_VMS=
680 USE_ULTRIX=
681 USE_DATA_GENERAL=
682
683 AC_DEFINE(__UNIX__)
684 case "${canonical}" in
685 *-hp-hpux* )
686 USE_HPUX=1
687 AC_DEFINE(__HPUX__)
688 ;;
689 *-*-linux* )
690 USE_LINUX=1
691 AC_DEFINE(__LINUX__)
692 TMP=`uname -m`
693 if test "x$TMP" = "xalpha"
694 then
695 USE_ALPHA=1
696 AC_DEFINE(__ALPHA__)
697 fi
698 ;;
699 *-*-irix5* | *-*-irix6* )
700 USE_SGI=1
701 USE_SVR4=1
702 AC_DEFINE(__SGI__)
703 AC_DEFINE(__SVR4__)
704 ;;
705 *-*-solaris2* )
706 USE_SUN=1
707 USE_SOLARIS=1
708 USE_SVR4=1
709 AC_DEFINE(__SUN__)
710 AC_DEFINE(__SOLARIS__)
711 AC_DEFINE(__SVR4__)
712 ;;
713 *-*-sunos4* )
714 USE_SUN=1
715 USE_SUNOS=1
716 USE_BSD=1
717 AC_DEFINE(__SUN__)
718 AC_DEFINE(__SUNOS__)
719 AC_DEFINE(__BSD__)
720 ;;
721 *-*-freebsd* | *-*-netbsd*)
722 USE_BSD=1
723 USE_FREEBSD=1
724 AC_DEFINE(__FREEBSD__)
725 AC_DEFINE(__BSD__)
726 ;;
727 *-*-osf* )
728 USE_ALPHA=1
729 USE_OSF=1
730 AC_DEFINE(__ALPHA__)
731 AC_DEFINE(__OSF__)
732 ;;
733 *-*-dgux5* )
734 USE_ALPHA=1
735 USE_SVR4=1
736 AC_DEFINE(__ALPHA__)
737 AC_DEFINE(__SVR4__)
738 ;;
739 *-*-sysv5* )
740 USE_SYSV=1
741 USE_SVR4=1
742 AC_DEFINE(__SYSV__)
743 AC_DEFINE(__SVR4__)
744 ;;
745 *-*-aix* )
746 USE_AIX=1
747 USE_SYSV=1
748 USE_SVR4=1
749 AC_DEFINE(__AIX__)
750 AC_DEFINE(__SYSV__)
751 AC_DEFINE(__SVR4__)
752 ;;
753 *)
754 AC_MSG_ERROR(I don't know your system type.)
755 esac
756
757 dnl ------------------------------------------------------------------------
758 dnl defaults for command options
759 dnl ------------------------------------------------------------------------
760
761 AC_OVERRIDES_PREPARE
762
763 DEFAULT_wxUSE_GTK=1
764 DEFAULT_wxUSE_QT=0
765 DEFAULT_wxUSE_MOTIF=0
766
767 DEFAULT_wxUSE_THREADS=0
768
769 DEFAULT_wxUSE_SHARED=1
770 DEFAULT_wxUSE_OPTIMISE=1
771 DEFAULT_wxUSE_PROFILE=0
772 DEFAULT_wxUSE_DEBUG_FLAG=0
773 DEFAULT_wxUSE_DEBUG_INFO=0
774 DEFAULT_wxUSE_MEM_TRACING=0
775 DEFAULT_wxUSE_DMALLOC=0
776 DEFAULT_wxUSE_APPLE_IEEE=1
777 DEFAULT_wxUSE_IOSTREAMH=1
778
779 DEFAULT_wxUSE_ZLIB=1
780 DEFAULT_wxUSE_LIBPNG=1
781 DEFAULT_wxUSE_LIBJPEG=0
782 DEFAULT_wxUSE_ODBC=1
783
784 DEFAULT_wxUSE_TIMEDATE=1
785 DEFAULT_wxUSE_INTL=1
786 DEFAULT_wxUSE_CONFIG=1
787 DEFAULT_wxUSE_STREAMS=1
788 DEFAULT_wxUSE_SOCKETS=1
789 DEFAULT_wxUSE_SERIAL=1
790 DEFAULT_wxUSE_DYNLIB_CLASS=1
791
792 DEFAULT_wxUSE_AFM_FOR_POSTSCRIPT=1
793 DEFAULT_WX_NORMALIZED_PS_FONTS=1
794 DEFAULT_wxUSE_POSTSCRIPT=1
795
796 DEFAULT_wxUSE_IPC=1
797 DEFAULT_wxUSE_RESOURCES=1
798 DEFAULT_wxUSE_CLIPBOARD=1
799 DEFAULT_wxUSE_TOOLTIPS=1
800 DEFAULT_wxUSE_DRAG_AND_DROP=1
801
802 DEFAULT_wxUSE_MDI_ARCHITECTURE=1
803 DEFAULT_wxUSE_DOC_VIEW_ARCHITECTURE=1
804 DEFAULT_wxUSE_PRINTING_ARCHITECTURE=1
805
806 DEFAULT_wxUSE_PROLOGIO=1
807 DEFAULT_wxUSE_WX_RESOURCES=1
808 DEFAULT_wxUSE_RPC=0
809 DEFAULT_wxUSE_HELP=1
810
811 DEFAULT_wxUSE_UNICODE=1
812 DEFAULT_wxUSE_WCSRTOMBS=0
813
814 dnl ----------------------------------------------------------------
815 dnl toolkit options
816 dnl ----------------------------------------------------------------
817
818 AC_OVERRIDES(gtk,gtk,
819 **--with-gtk use GTK,
820 wxUSE_GTK)
821
822 AC_OVERRIDES(qt,qt,
823 **--with-qt use Qt,
824 wxUSE_QT)
825
826 AC_OVERRIDES(motif,motif,
827 **--with-motif use Motif/Lesstif,
828 wxUSE_MOTIF)
829
830 dnl ----------------------------------------------------------------
831 dnl compile options
832 dnl ----------------------------------------------------------------
833
834 AC_OVERRIDES(shared,shared,
835 **--with-shared create shared libraries,
836 wxUSE_SHARED)
837
838 AC_OVERRIDES(optimise,optimise,
839 **--with-optimise create optimised code,
840 wxUSE_OPTIMISE)
841
842 AC_OVERRIDES(debug_flag,debug_flag,
843 **--with-debug_flag create code with WXDEBUG define set to 1,
844 wxUSE_DEBUG_FLAG)
845
846 AC_OVERRIDES(debug_info,debug_info,
847 **--with-debug_info create code with debuging information,
848 wxUSE_DEBUG_INFO)
849
850 AC_OVERRIDES(debug_gdb,debug_gdb,
851 **--with-debug_gdb create code with extra GDB debuging information,
852 wxUSE_DEBUG_GDB)
853
854 AC_OVERRIDES(mem_tracing,mem_tracing,
855 **--with-mem_traing create code with memory tracing,
856 wxUSE_MEM_TRACING)
857
858 AC_OVERRIDES(dmalloc,dmalloc,
859 **--with-dmalloc use dmalloc memory debug library (www.letters.com/dmalloc/),
860 wxUSE_DMALLOC)
861
862 AC_OVERRIDES(profile,profile,
863 **--with-profile create code with profiling information,
864 wxUSE_PROFILE)
865
866 AC_OVERRIDES(apple_ieee, apple_ieee,
867 **--with_apple_ieee use the Apple IEEE codec,
868 wxUSE_APPLE_IEEE)
869
870 AC_OVERRIDES(threads,threads,
871 **--with-threads for enabling threads,
872 wxUSE_THREADS)
873
874 AC_OVERRIDES(dynlib,dynlib,
875 **--with-dynlib to compile wxLibrary class,
876 wxUSE_DYNLIB_CLASS)
877
878 dnl ----------------------------------------------------------------
879 dnl user options for libraries
880 dnl ----------------------------------------------------------------
881
882 AC_OVERRIDES(zlib,zlib,
883 **--with-zlib use zlib for LZW comression,
884 wxUSE_ZLIB)
885
886 AC_OVERRIDES(libpng,libpng,
887 **--with-libpng use libpng (PNG image format),
888 wxUSE_LIBPNG)
889
890 AC_OVERRIDES(libjpeg,libjpeg,
891 **--with-libjpeg use libjpeg (JPEG image format),
892 wxUSE_LIBJPEG)
893
894 AC_OVERRIDES(odbc,odbc,
895 **--with-odbc use iODBC and wxODBC classes,
896 wxUSE_ODBC)
897
898 dnl ----------------------------------------------------------------
899 dnl user options for non-GUI classes
900 dnl ----------------------------------------------------------------
901
902 AC_OVERRIDES(timedate, timedate,
903 **--with-timedate use wxTime and wxDate classes,
904 wxUSE_TIMEDATE)
905
906 AC_OVERRIDES(intl,intl,
907 **--with-intl use internationalization system,
908 wxUSE_INTL)
909
910 AC_OVERRIDES(config,config,
911 **--with-config use wxConfig class,
912 wxUSE_CONFIG)
913
914 AC_OVERRIDES(streams,streams,
915 **--with-streams use wxStream etc classes,
916 wxUSE_STREAMS)
917
918 AC_OVERRIDES(serial,serial,
919 **--with-serial use class serialization,
920 wxUSE_SERIAL)
921
922 AC_OVERRIDES(sockets,sockets,
923 **--with-sockets use wxSocket etc classes,
924 wxUSE_SOCKETS)
925
926 dnl ----------------------------------------------------------------
927 dnl user options for PostScript
928 dnl ----------------------------------------------------------------
929
930 AC_OVERRIDES(afmfonts,afmfonts,
931 **--with-afmfonts use Adobe Font Metric Font table,
932 wxUSE_AFM_FOR_POSTSCRIPT)
933
934 AC_OVERRIDES(normalized, normalized,
935 **--with-PS-normalized use normalized PS fonts,
936 WX_NORMALIZED_PS_FONTS)
937
938 AC_OVERRIDES(postscript, postscript,
939 **--with-postscript use wxPostscriptDC device context,
940 wxUSE_POSTSCRIPT)
941
942 dnl ----------------------------------------------------------------
943 dnl user options for wxString and Unicode
944 dnl ----------------------------------------------------------------
945
946 AC_OVERRIDES(unicode,unicode,
947 **--with-unicode compile wxString with Unicode support,
948 wxUSE_UNICODE)
949
950 AC_OVERRIDES(wcsrtombs,wcsrtombs,
951 **--with-wcsrtombs use wcsrtombs instead of (buggy in GNU libc5) wcstombs,
952 wxUSE_WCSRTOMBS)
953
954 dnl ----------------------------------------------------------------
955 dnl user options for Prolog and Resources
956 dnl ----------------------------------------------------------------
957
958 AC_OVERRIDES(wxresources,wxresources,
959 **--with-wxresources use wxWindows's resources,
960 wxUSE_WX_RESOURCES)
961
962 AC_OVERRIDES(prologio,prologio,
963 **--with-prologio use Prolog IO library,
964 wxUSE_PROLOGIO)
965
966 AC_OVERRIDES(rpc,RPC,
967 **--with-rpc use Prolog's remote procedure calls,
968 wxUSE_RPC)
969
970 dnl ----------------------------------------------------------------
971 dnl user options for misc stuff
972 dnl ----------------------------------------------------------------
973
974 AC_OVERRIDES(ipc,IPC,
975 **--with-ipc use interprocess communication (wxSocket etc.),
976 wxUSE_IPC)
977
978 AC_OVERRIDES(resources,resources,
979 **--with-resources use X resources for saving information,
980 wxUSE_RESOURCES)
981
982 AC_OVERRIDES(clipboard,clipboard,
983 **--with-clipboard use wxClipboard classes,
984 wxUSE_CLIPBOARD)
985
986 AC_OVERRIDES(tooltips,tooltips,
987 **--with-tooltips use tooltips,
988 wxUSE_TOOLTIPS)
989
990 AC_OVERRIDES(dnd,dnd,
991 **--with-dnd use Drag'n'Drop classes,
992 wxUSE_DRAG_AND_DROP)
993
994 dnl ----------------------------------------------------------------
995 dnl user options for architectures
996 dnl ----------------------------------------------------------------
997
998 AC_OVERRIDES(mdi,mdi,
999 **--with-mdi use multiple document interface architecture,
1000 wxUSE_MDI_ARCHITECTURE)
1001
1002 AC_OVERRIDES(docview,docview,
1003 **--with-docview use document view architecture,
1004 wxUSE_DOC_VIEW_ARCHITECTURE)
1005
1006 AC_OVERRIDES(printarch,printarch,
1007 **--with-printarch use printing architecture,
1008 wxUSE_PRINTING_ARCHITECTURE)
1009
1010 AC_OVERRIDES(help,help,
1011 **--with-help use help (using external browser at present),
1012 wxUSE_HELP)
1013
1014 dnl ----------------------------------------------------------------
1015 dnl Unix, obviously
1016 dnl ----------------------------------------------------------------
1017
1018 if test "$wxUSE_UNIX" = 1 ; then
1019 AC_DEFINE(__UNIX__)
1020 fi
1021
1022 dnl ----------------------------------------------------------------
1023 dnl Linux: test for libc5/glibc2: glibc2 has gettext() included
1024 dnl ----------------------------------------------------------------
1025 if test "$USE_LINUX" = 1; then
1026 AC_CHECK_LIB(c,gettext,AC_DEFINE(wxHAVE_GLIBC2))
1027 fi
1028
1029 dnl ----------------------------------------------------------------
1030 dnl search for toolkit (widget sets)
1031 dnl ----------------------------------------------------------------
1032
1033 TOOLKIT=
1034 TOOLKIT_DEF=
1035
1036 GUI_TK_INCLUDE=
1037 GUI_TK_LIBRARY=
1038 GUI_TK_LINK=
1039
1040 WX_LINK=
1041
1042 MAKEINCLUDE=
1043
1044 if test "$wxUSE_GTK" = 1; then
1045 AM_PATH_GTK(1.0.4, [
1046 GUI_TK_INCLUDE="$GTK_CFLAGS"
1047 GUI_TK_LIBRARY="$GTK_LIBS"
1048 ], AC_MSG_ERROR(Is gtk-config in path and GTK+ is version 1.0.4 up-to 1.0.6?))
1049 TOOLKIT=GTK
1050 TOOLKIT_DEF=__WXGTK__
1051 WX_LINK=-lwx_gtk2
1052 MAKEINCLUDE=../gtk.inc
1053 fi
1054
1055 if test "$wxUSE_QT" = 1; then
1056 AC_MSG_CHECKING(for Qt includes)
1057 AC_PATH_FIND_INCLUDES($SEARCH_INCLUDE,qapp.h)
1058 if test "$ac_find_includes" != "" ; then
1059 AC_MSG_RESULT(found $ac_find_includes)
1060 AC_MSG_CHECKING(for Qt library)
1061 AC_PATH_FIND_LIBRARIES($SEARCH_LIB,qt)
1062 if test "$ac_find_libraries" != "" ; then
1063 AC_INCLUDE_PATH_EXIST($ac_find_includes,$CHECK_INCLUDE)
1064 AC_LINK_PATH_EXIST($ac_find_libraries,$CHECK_LIB)
1065 CHECK_LINK="$CHECK_INCLUDE $ac_path_to_link"
1066 CHECK_INCLUDE="$CHECK_INCLUDE $ac_path_to_include"
1067 AC_MSG_RESULT(found Qt at $ac_find_libraries)
1068 else
1069 AC_MSG_ERROR(no)
1070 fi
1071 else
1072 AC_MSG_ERROR(no)
1073 fi
1074 GUI_TK_LINK="-lX11 -lqt -lm"
1075 TOOLKIT=QT
1076 TOOLKIT_DEF=__WXQT__
1077 WX_LINK=-lwx_qt
1078 MAKEINCLUDE=../qt.inc
1079 fi
1080
1081 if test "$wxUSE_MOTIF" = 1; then
1082 AC_MSG_CHECKING(for Motif/Lesstif includes)
1083 AC_PATH_FIND_INCLUDES($SEARCH_INCLUDE,Xm/Xm.h)
1084 if test "$ac_find_includes" != "" ; then
1085 AC_MSG_RESULT(found $ac_find_includes)
1086 AC_MSG_CHECKING(for Motif/Lesstif library)
1087 AC_PATH_FIND_LIBRARIES($SEARCH_LIB,Xm)
1088 if test "$ac_find_libraries" != "" ; then
1089 AC_INCLUDE_PATH_EXIST($ac_find_includes,$CHECK_INCLUDE)
1090 AC_LINK_PATH_EXIST($ac_find_libraries,$CHECK_LIB)
1091 CHECK_LINK="$CHECK_LIB $ac_path_to_link"
1092 CHECK_INCLUDE="$CHECK_INCLUDE $ac_path_to_include"
1093 AC_MSG_RESULT(found at $ac_find_libraries)
1094 AC_MSG_CHECKING(for Xt library)
1095 AC_PATH_FIND_LIBRARIES($SEARCH_LIB,Xt)
1096 if test "$ac_find_libraries" != "" ; then
1097 AC_LINK_PATH_EXIST($ac_find_libraries,$CHECK_LIB)
1098 CHECK_LINK="$CHECK_LIB $ac_path_to_link"
1099 AC_MSG_RESULT(found at $ac_find_libraries)
1100 AC_MSG_CHECKING(for Xpm library)
1101 AC_PATH_FIND_LIBRARIES($SEARCH_LIB,Xpm)
1102 if test "$ac_find_libraries" != "" ; then
1103 AC_LINK_PATH_EXIST($ac_find_libraries,$CHECK_LIB)
1104 CHECK_LINK="$CHECK_LIB $ac_path_to_link"
1105 AC_MSG_RESULT(found at $ac_find_libraries)
1106 else
1107 AC_MSG_ERROR(no)
1108 fi
1109 else
1110 AC_MSG_ERROR(no)
1111 fi
1112 else
1113 AC_MSG_ERROR(no)
1114 fi
1115 else
1116 AC_MSG_ERROR(no)
1117 fi
1118
1119 GUI_TK_LINK="-lXm -lXpm -lXmu -lXt -lX11 -lm"
1120 GUI_TK_LIBRARY="$CHECK_LIB $GUI_TK_LINK"
1121 TOOLKIT=MOTIF
1122 TOOLKIT_DEF=__WXMOTIF__
1123 WX_LINK=-lwx_motif2
1124 MAKEINCLUDE=../motif.inc
1125 fi
1126
1127 if test "$TOOLKIT" = ""; then
1128 AC_MSG_ERROR(You must specify a toolkit: --with-gtk --with-qt --with-motif)
1129 fi
1130
1131 AC_SUBST(GUI_TK_INCLUDE)
1132 AC_SUBST(GUI_TK_LIBRARY)
1133 AC_SUBST(GUI_TK_LINK)
1134
1135 AC_SUBST(WX_LINK)
1136
1137 AC_SUBST(TOOLKIT)
1138 AC_SUBST(TOOLKIT_DEF)
1139
1140 AC_SUBST(MAKEINCLUDE)
1141
1142 dnl ----------------------------------------------------------------
1143 dnl Register compile options for makefiles and setup.h
1144 dnl ----------------------------------------------------------------
1145
1146 EXTRA_LINK=
1147
1148 WXDEBUG=
1149 if test "$wxUSE_DEBUG_GDB" = 1 ; then
1150 wxUSE_DEBUG_INFO=1
1151 WXDEBUG="-ggdb"
1152 fi
1153
1154 if test "$wxUSE_DEBUG_INFO" = 1 ; then
1155 WXDEBUG="-g"
1156 wxUSE_OPTIMISE=0
1157 fi
1158
1159 AC_SUBST(WXDEBUG)
1160
1161 if test "$wxUSE_DEBUG_FLAG" = 1 ; then
1162 AC_DEFINE_UNQUOTED(WXDEBUG,$wxUSE_DEBUG_FLAG)
1163 WXDEBUG_DEFINE="-D__WXDEBUG__"
1164 AC_SUBST(WXDEBUG_DEFINE)
1165 else
1166 WXDEBUG_DEFINE="-DGTK_NO_CHECK_CASTS"
1167 AC_SUBST(WXDEBUG_DEFINE)
1168 fi
1169
1170 if test "$wxUSE_MEM_TRACING" = 1 ; then
1171 AC_DEFINE_UNQUOTED(wxUSE_MEMORY_TRACING,$wxUSE_MEM_TRACING)
1172 AC_DEFINE_UNQUOTED(wxUSE_GLOBAL_MEMORY_OPERATORS,$wxUSE_MEM_TRACING)
1173 fi
1174
1175 if test "$wxUSE_DMALLOC" = 1 ; then
1176 EXTRA_LINK="$EXTRA_LINK -ldmalloc"
1177 fi
1178 AC_SUBST(EXTRA_LINK)
1179
1180 PROFILE=
1181 if test "$wxUSE_PROFILE" = 1 ; then
1182 PROFILE="-pg"
1183 fi
1184 AC_SUBST(PROFILE)
1185
1186 CXXFLAGS=`echo "${CXXFLAGS}" | sed "s/\-O.//g" `
1187 CFLAGS=`echo "${CFLAGS}" | sed "s/\-O.//g" `
1188 if test "$wxUSE_OPTIMISE" = 0 ; then
1189 OPTIMISE=
1190 else
1191 if test "$GCC" = yes ; then
1192 OPTIMISE="-O2"
1193 case "${canonical}" in
1194 i586-*-*|i686-*-* )
1195 OPTIMISE="${OPTIMISE} "
1196 ;;
1197 esac
1198 else
1199 OPTIMISE="-O"
1200 fi
1201 fi
1202 AC_SUBST(OPTIMISE)
1203
1204 APPLE_IEEE=NONE
1205 if test "$wxUSE_APPLE_IEEE" = 1 ; then
1206 APPLE_IEEE="APPLE_IEEE"
1207 AC_DEFINE_UNQUOTED(wxUSE_APPLE_IEEE,$wxUSE_APPLE_IEEE)
1208 fi
1209
1210 wxUSE_IOSTREAMH=$DEFAULT_wxUSE_IOSTREAMH
1211 AC_DEFINE_UNQUOTED(wxUSE_IOSTREAMH,$wxUSE_IOSTREAMH)
1212
1213 dnl ----------------------------------------------------------------
1214 dnl Register library options for makefiles and setup.h
1215 dnl ----------------------------------------------------------------
1216
1217 if test "$wxUSE_ZLIB" = 1 ; then
1218 AC_DEFINE_UNQUOTED(wxUSE_ZLIB,$wxUSE_ZLIB)
1219 Z_C_SRC="\$(Z_C_SRC)"
1220 fi
1221 AC_SUBST(Z_C_SRC)
1222
1223 if test "$wxUSE_LIBPNG" = 1 ; then
1224 AC_DEFINE_UNQUOTED(wxUSE_LIBPNG,$wxUSE_LIBPNG)
1225 PNG_C_SRC="\$(PNG_C_SRC)"
1226 fi
1227 AC_SUBST(PNG_C_SRC)
1228
1229 JPEG_LINK=""
1230 if test "$wxUSE_LIBJPEG" = 1 ; then
1231 AC_DEFINE_UNQUOTED(wxUSE_LIBJPEG,$wxUSE_LIBJPEG)
1232 AC_CHECK_LIB(jpeg,main,,AC_MSG_ERROR("libjpeg is not available."))
1233 JPEG_LINK="-ljpeg"
1234 fi
1235 AC_SUBST(JPEG_LINK)
1236
1237 IODBC_C_SRC=""
1238 if test "$wxUSE_ODBC" = 1 ; then
1239 AC_DEFINE_UNQUOTED(wxUSE_ODBC,$wxUSE_ODBC)
1240 IODBC_C_SRC="\$(IODBC_C_SRC)"
1241 fi
1242 AC_SUBST(IODBC_C_SRC)
1243
1244 dnl ----------------------------------------------------------------
1245 dnl Register non-GUI class options for makefiles and setup.h
1246 dnl ----------------------------------------------------------------
1247
1248 if test "$wxUSE_CONFIG" = 1 ; then
1249 AC_DEFINE_UNQUOTED(wxUSE_CONFIG,$wxUSE_CONFIG)
1250 fi
1251
1252 if test "$wxUSE_TIMEDATE" = 1 ; then
1253 AC_DEFINE_UNQUOTED(wxUSE_TIMEDATE,$wxUSE_TIMEDATE)
1254 fi
1255
1256 if test "$wxUSE_INTL" = 1 ; then
1257 AC_DEFINE_UNQUOTED(wxUSE_INTL,$wxUSE_INTL)
1258 fi
1259
1260 if test "$wxUSE_STREAMS" = 1 ; then
1261 AC_DEFINE_UNQUOTED(wxUSE_STREAMS,$wxUSE_STREAMS)
1262 fi
1263
1264 if test "$wxUSE_SOCKETS" = 1 ; then
1265 AC_DEFINE_UNQUOTED(wxUSE_SOCKETS,$wxUSE_SOCKETS)
1266 fi
1267
1268 if test "$wxUSE_SERIAL" = 1 ; then
1269 AC_DEFINE_UNQUOTED(wxUSE_SERIAL,$wxUSE_SERIAL)
1270 fi
1271
1272 dnl ------------------------------------------------------------------------
1273 dnl wxLibrary class
1274 dnl ------------------------------------------------------------------------
1275
1276 HAVE_DL_FUNCS=0
1277 if test "$wxUSE_DYNLIB_CLASS" = "1"; then
1278 dnl the test is a bit complicated because we check for dlopen() both with
1279 dnl and without -ldl
1280 AC_CHECK_FUNCS(dlopen,
1281 [AC_DEFINE(HAVE_DLOPEN) HAVE_DL_FUNCS=1],
1282 [AC_CHECK_LIB(dl, dlopen,
1283 [AC_DEFINE(HAVE_DLOPEN) HAVE_DL_FUNCS=1])])
1284 AC_CHECK_FUNCS(shl_load, [AC_DEFINE(HAVE_SHL_LOAD) HAVE_DL_FUNCS=1])
1285
1286 if test "$HAVE_DL_FUNCS" = 0; then
1287 AC_MSG_WARN("--with-dynlib will be disabled because no function was found to load a shared library on this platform")
1288
1289 wxUSE_DYNLIB_CLASS=0
1290 fi
1291 fi
1292
1293 if test "$wxUSE_DYNLIB_CLASS" = 1 ; then
1294 AC_DEFINE_UNQUOTED(wxUSE_DYNLIB_CLASS,$wxUSE_DYNLIB_CLASS)
1295 fi
1296
1297 dnl ----------------------------------------------------------------
1298 dnl Register Prolog and Resources options for makefiles and setup.h
1299 dnl ----------------------------------------------------------------
1300
1301 if test "$wxUSE_RPC" = 1 ; then
1302 AC_DEFINE_UNQUOTED(wxUSE_RPC,$wxUSE_RPC)
1303 fi
1304
1305 if test "$wxUSE_WX_RESOURCES" = 1 ; then
1306 AC_DEFINE_UNQUOTED(wxUSE_WX_RESOURCES,$wxUSE_WX_RESOURCES)
1307 fi
1308
1309 if test "$wxUSE_PROLOGIO" = 1 ; then
1310 AC_DEFINE_UNQUOTED(wxUSE_PROLOGIO)
1311 fi
1312
1313 dnl ----------------------------------------------------------------
1314 dnl Register PostScript options for makefiles and setup.h
1315 dnl ----------------------------------------------------------------
1316
1317 if test "$wxUSE_POSTSCRIPT" = 1 ; then
1318 AC_DEFINE_UNQUOTED(wxUSE_POSTSCRIPT)
1319 fi
1320
1321 AC_DEFINE_UNQUOTED(wxUSE_AFM_FOR_POSTSCRIPT,$wxUSE_AFM_FOR_POSTSCRIPT)
1322
1323 AC_DEFINE_UNQUOTED(WX_NORMALIZED_PS_FONTS,$WX_NORMALIZED_PS_FONTS)
1324
1325 dnl ----------------------------------------------------------------
1326 dnl Register architecture options for makefiles and setup.h
1327 dnl ----------------------------------------------------------------
1328
1329 if test "$wxUSE_MDI_ARCHITECTURE" = 1 ; then
1330 AC_DEFINE_UNQUOTED(wxUSE_MDI_ARCHITECTURE,$wxUSE_MDI_ARCHITECTURE)
1331 fi
1332
1333 if test "$wxUSE_DOC_VIEW_ARCHITECTURE" = 1 ; then
1334 AC_DEFINE_UNQUOTED(wxUSE_DOC_VIEW_ARCHITECTURE,$wxUSE_DOC_VIEW_ARCHITECTURE)
1335 fi
1336
1337 if test "$wxUSE_PRINTING_ARCHITECTURE" = 1 ; then
1338 AC_DEFINE_UNQUOTED(wxUSE_PRINTING_ARCHITECTURE,$wxUSE_PRINTING_ARCHITECTURE)
1339 fi
1340
1341 dnl ----------------------------------------------------------------
1342 dnl Register wxString options for makefiles and setup.h
1343 dnl ----------------------------------------------------------------
1344
1345 if test "$wxUSE_UNICODE" = 1 ; then
1346 AC_DEFINE_UNQUOTED(wxUSE_UNICODE)
1347 fi
1348
1349 if test "$wxUSE_WCSRTOMBS" = 1 ; then
1350 AC_DEFINE_UNQUOTED(wxUSE_WCSRTOMBS)
1351 fi
1352
1353 dnl ----------------------------------------------------------------
1354 dnl Register misc options for makefiles and setup.h
1355 dnl ----------------------------------------------------------------
1356
1357 if test "$wxUSE_IPC" = 1 ; then
1358 AC_DEFINE_UNQUOTED(wxUSE_IPC)
1359 fi
1360
1361 if test "$wxUSE_RESOURCES" = 1 ; then
1362 AC_DEFINE_UNQUOTED(wxUSE_RESOURCES,$wxUSE_RESOURCES)
1363 fi
1364
1365 if test "$wxUSE_CLIPBOARD" = 1 ; then
1366 AC_DEFINE_UNQUOTED(wxUSE_CLIPBOARD,$wxUSE_CLIPBOARD)
1367 fi
1368
1369 if test "$wxUSE_TOOLTIPS" = 1 ; then
1370 AC_DEFINE_UNQUOTED(wxUSE_TOOLTIPS,$wxUSE_TOOLTIPS)
1371 fi
1372
1373 if test "$wxUSE_DRAG_AND_DROP" = 1 ; then
1374 AC_DEFINE_UNQUOTED(wxUSE_DRAG_AND_DROP,$wxUSE_DRAG_AND_DROP)
1375 fi
1376
1377 dnl ----------------------------------------------------------------
1378 dnl No effect yet
1379 dnl ----------------------------------------------------------------
1380
1381 HELP=NONE
1382 if test "$wxUSE_HELP" = 1 ; then
1383 HELP="HELP"
1384 AC_DEFINE_UNQUOTED(wxUSE_HELP,$wxUSE_HELP)
1385 fi
1386 AC_SUBST(HELP)
1387
1388 dnl ----------------------------------------------------------------
1389 dnl thread support
1390 dnl ----------------------------------------------------------------
1391
1392 dnl defines UNIX_THREAD it contains the source file to use for threads. (GL)
1393 dnl defines THREADS_LINK it contains the thread library to link with. (GL)
1394 dnl defines wxUSE_THREADS if thread support is activated. (GL)
1395
1396 THREADS_LINK=""
1397 UNIX_THREAD=""
1398
1399 if test "$wxUSE_THREADS" = "1"; then
1400 dnl For glibc 2 users who have the old libc 5 too
1401
1402 AC_CHECK_LIB(pthread-0.7, pthread_create, [
1403 UNIX_THREAD="unix/threadpsx.cpp"
1404 THREADS_LINK="pthread-0.7"
1405 ],[
1406 AC_CHECK_HEADER(sys/prctl.h, [
1407 UNIX_THREAD="gtk/threadsgi.cpp"
1408 ])
1409
1410 dnl pthread_create is always available in pthread but it seems not to be
1411 dnl the case for pthread_setcanceltype.
1412
1413 AC_CHECK_LIB(pthread, pthread_setcanceltype, [
1414 UNIX_THREAD="unix/threadpsx.cpp"
1415 THREADS_LINK="pthread"
1416 ])
1417 ])
1418
1419 if test "x$THREADS_LINK" = "x"; then
1420 dnl thread functions are in libc_r under FreeBSD
1421 AC_CHECK_LIB(c_r, pthread_create,
1422 [
1423 UNIX_THREAD="unix/threadpsx.cpp"
1424 THREADS_LINK="c_r"
1425 ])
1426 fi
1427
1428 if test "$THREADS_LINK" != ""; then
1429 AC_DEFINE(wxUSE_THREADS)
1430 fi
1431 fi
1432
1433 if test -z "$UNIX_THREAD"; then
1434 wxUSE_THREADS=0
1435 fi
1436
1437 dnl do other tests only if we are using threads
1438 if test "$wxUSE_THREADS" = "1"; then
1439 THREADS_LINK2=""
1440
1441 AC_CHECK_HEADERS(sched.h)
1442
1443 AC_CHECK_LIB($THREADS_LINK, sched_yield,
1444 AC_DEFINE(HAVE_SCHED_YIELD),
1445 [AC_CHECK_LIB("posix4", sched_yield,
1446 [AC_DEFINE(HAVE_SCHED_YIELD) THREADS_LINK2="-lposix4"],
1447 AC_MSG_WARN(wxThread::Yield() will not work properly)
1448 )]
1449 )
1450
1451 AC_CHECK_LIB($THREADS_LINK, sched_get_priority_min,
1452 AC_DEFINE(HAVE_THREAD_PRIORITY_FUNCTIONS),
1453 [AC_CHECK_LIB("posix4", sched_get_priority_min,
1454 [AC_DEFINE(HAVE_THREAD_PRIORITY_FUNCTIONS) THREADS_LINK2="-lposix4"],
1455 AC_MSG_WARN(Setting thread priority will not work)
1456 )]
1457 )
1458
1459 AC_CHECK_LIB($THREADS_LINK, pthread_cancel,
1460 AC_DEFINE(HAVE_PTHREAD_CANCEL),
1461 AC_MSG_WARN(wxThread::Kill() will not work properly))
1462
1463 THREADS_LINK="-l$THREADS_LINK $THREADS_LINK2"
1464 fi
1465
1466 AC_SUBST(UNIX_THREAD)
1467 AC_SUBST(THREADS_LINK)
1468
1469 dnl ------------------------------------------------------------------------
1470 dnl compiler options for shared libs
1471 dnl ------------------------------------------------------------------------
1472
1473 PICFLAGS=
1474 CREATE_SHARED=
1475 case "${canonical}" in
1476 *-hp-hpux* )
1477 if test "$GCC" != "yes" ; then
1478 CXXFLAGS="${CXXFLAGS} +a1 -z -Aa -D_HPUX_SOURCE"
1479 CFLAGS="${CFLAGS} -z -D_HPUX_SOURCE"
1480 PICFLAGS="+z"
1481 else
1482 PICFLAGS="-fPIC"
1483 fi
1484 LDFLAGS="-Wl,+s"
1485 CREATE_SHARED=sharedHpux
1486 ;;
1487
1488 *-*-linux* )
1489 PICFLAGS=-fPIC
1490 CREATE_SHARED=sharedLinux
1491 ;;
1492
1493 *-*-irix5* | *-*-irix6* )
1494 # PICFLAGS can remain empty, as pic is the default
1495 LDFLAGS="-Wl,+s"
1496 CREATE_SHARED=sharedIrix
1497 AC_DEFINE(SVR4)
1498 ;;
1499
1500 *-*-solaris2* )
1501 if test "$GCC" != "yes" ; then
1502 PICFLAGS="-KPIC"
1503 else
1504 PICFLAGS="-fPIC"
1505 fi
1506 CREATE_SHARED=sharedSolaris2
1507 AC_DEFINE(SVR4)
1508 ;;
1509
1510 *-*-sunos4* )
1511 if test "$GCC" != "yes" ; then
1512 PICFLAGS="-PIC"
1513 else
1514 PICFLAGS="-fPIC"
1515 fi
1516 LDFLAGS="-Wl,+s"
1517 CREATE_SHARED=sharedSunos4
1518 AC_DEFINE(BSD)
1519 ;;
1520
1521 *-*-freebsd* | *-*-netbsd*)
1522 PICFLAGS=-fPIC
1523 CREATE_SHARED=sharedBsd
1524 AC_DEFINE(BSD)
1525 ;;
1526
1527 *-*-osf* )
1528 PICFLAGS="-fPIC"
1529 CREATE_SHARED=sharedOSF
1530 ;;
1531
1532 *-*-dgux5* )
1533 if test "$GCC" != "yes" ; then
1534 PICFLAGS="-K PIC"
1535 else
1536 PICFLAGS="-fPIC"
1537 fi
1538 CREATE_SHARED=sharedDgux
1539 AC_DEFINE(SVR4)
1540 ;;
1541
1542 *-*-sysv5* )
1543 if test "$GCC" != "yes" ; then
1544 PICFLAGS="-K PIC"
1545 else
1546 PICFLAGS="-fPIC"
1547 fi
1548 CREATE_SHARED=sharedSysV
1549 AC_DEFINE(SVR4)
1550 ;;
1551
1552 *-*-aix* )
1553 if test "$GCC" != "yes" ; then
1554 PICFLAGS="-bM\:SRE"
1555 else
1556 PICFLAGS="-fPIC"
1557 fi
1558 CREATE_SHARED=sharedAIX
1559 AC_DEFINE(SYSV)
1560 ;;
1561
1562 *)
1563 CREATE_SHARED=
1564 PICFLAGS=
1565 esac
1566
1567 if test "x$GCC" = xyes; then
1568 CFLAGS="${CFLAGS} -Wall -Wno-unused -Wno-uninitialized -D_REENTRANT -DLEX_SCANNER -DHAVE_LIBDL"
1569 fi
1570
1571 if test "x$GXX" = xyes; then
1572 if test "$wxUSE_MOTIF" = 1; then
1573 CXXFLAGS="${CXXFLAGS} -Wall -Wno-unused -D_REENTRANT"
1574 else
1575 CXXFLAGS="${CXXFLAGS} -Wall -D_REENTRANT"
1576 fi
1577 fi
1578
1579 if test "$wxUSE_SHARED" != 1; then
1580 CREATE_SHARED=
1581 PICFLAGS=
1582 fi
1583
1584 AC_SUBST(OS)
1585 AC_SUBST(PICFLAGS)
1586 AC_SUBST(CREATE_SHARED)
1587
1588 dnl ------------------------------------------------------------------------
1589 dnl finish and clean-up
1590 dnl ------------------------------------------------------------------------
1591
1592 dnl add OS to list of configured
1593 echo $OS >> system.list
1594
1595 AC_CONFIG_HEADER(./include/wx/gtk/setup.h:./setup/setup.hin)
1596 AC_OUTPUT(./setup/substit ./wx-config:./wx-config.in,./setup/general/createall)
1597
1598 AC_OVERRIDES_DONE
1599