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