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