1 dnl ////////////////////////////////////////////////////////////////////////
3 dnl Top-level configure.in for wxWindows by Robert Roebling, Wolfram Gloger
6 dnl This script is under the wxWindows licence.
8 dnl ////////////////////////////////////////////////////////////////////////
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
15 dnl Get the cflags and libraries from the gtk-config script
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="")
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
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
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)
39 if test "$GTK_CONFIG" != "no" ; then
40 GTK_CFLAGS=`$GTK_CONFIG --cflags`
41 GTK_LIBS=`$GTK_CONFIG --libs`
42 ac_save_CFLAGS="$CFLAGS"
44 CFLAGS="$CFLAGS $GTK_CFLAGS"
45 LIBS="$LIBS $GTK_LIBS"
47 dnl Now check if the installed GTK is sufficiently new. (Also sanity
48 dnl checks the results of gtk-config to some extent
57 int major, minor, micro;
59 if (sscanf("$min_gtk_version", "%d.%d.%d", &major, &minor, µ) != 3) {
60 printf("%s, bad version string\n", "$min_gtk_version");
64 return !((gtk_major_version > major) ||
65 ((gtk_major_version == major) && (gtk_minor_version > minor)) ||
66 ((gtk_major_version == major) && (gtk_minor_version == minor) && (gtk_micro_version >= micro)));
68 ],, no_gtk=yes,[echo $ac_n "cross compiling; assumed OK... $ac_c"])
69 CFLAGS="$ac_save_CFLAGS"
74 if test "x$no_gtk" = x ; then
76 ifelse([$2], , :, [$2])
81 ifelse([$3], , :, [$3])
87 dnl ------------------------------------------------------------------------
89 dnl ------------------------------------------------------------------------
91 AC_DEFUN(AC_OVERRIDES_PREPARE,
93 rm -f ${OSTYPE}.system.cache.tmp
94 touch ${OSTYPE}.system.cache.tmp
95 touch ${OSTYPE}.system.cache
98 AC_DEFUN(AC_OVERRIDES_DONE,
100 mv ${OSTYPE}.system.cache.tmp ${OSTYPE}.system.cache
103 dnl package,message,helpmessage,variable
104 AC_DEFUN(AC_OVERRIDES,
106 AC_MSG_CHECKING("for $2")
108 [if test "x$with_$1" = xyes; then
109 ac_cv_use_$1='$4="1"'
111 ac_cv_use_$1='$4="0"'
114 LINE=`grep "$4" ${OSTYPE}.system.cache`
115 if test "x$LINE" != x ; then
118 ac_cv_use_$1='$4='$DEFAULT_$4
121 echo $ac_cv_use_$1 >> ${OSTYPE}.system.cache.tmp
122 if test "$$4" = 1; then
129 dnl package,message,helpmessage,variable
130 AC_DEFUN(AC_OVERRIDES_OLD,
132 AC_MSG_CHECKING("for $2")
133 AC_CACHE_VAL(ac_cv_use_$1,
136 [if test "x$with_$1" = xyes; then
137 ac_cv_use_$1='$4="1"'
139 ac_cv_use_$1='$4="0"'
140 fi],[ac_cv_use_$1='$4=$DEFAULT_$4'])
144 if test "$$4" = 1; then
151 AC_DEFUN(AC_PATH_FIND_INCLUDES,
156 if test -f "$ac_dir/$2"; then
157 ac_find_includes=$ac_dir
163 AC_DEFUN(AC_PATH_FIND_LIBRARIES,
168 for ac_extension in a so sl; do
169 if test -f "$ac_dir/lib$2.$ac_extension"; then
170 ac_find_libraries=$ac_dir
177 dnl Path to include, allready defined
178 AC_DEFUN(AC_INCLUDE_PATH_EXIST,
180 ac_path_to_include=$1
181 echo "$2" | grep "\-I$1" > /dev/null
183 if test $result = 0; then
184 ac_path_to_include=""
186 ac_path_to_include="-I$1"
190 dnl Path to link, allready defined
191 AC_DEFUN(AC_LINK_PATH_EXIST,
193 echo "$2" | grep "\-L$1" > /dev/null
195 if test $result = 0; then
198 ac_path_to_link="-L$1"
202 dnl ------------------------------------------------------------------------
203 dnl Process this file with autoconf to produce a configure script.
204 dnl ------------------------------------------------------------------------
206 AC_INIT(configure.in)
208 dnl ------------------------------------------------------------------------
210 dnl ------------------------------------------------------------------------
214 if test "x$OS" = "x"; then
216 AC_MSG_ERROR("The system variable OS has not been set"
217 "please set is everytime befor compiling on this system"
218 "A good example for this system would be:"
219 "setenv OSTYPE $UNAME for csh as a SHELL"
220 "EXPORT OSTYPE=$UNAME for sh as SHELL"
221 "please set this and restart again."
225 dnl ------------------------------------------------------------------------
226 dnl Set base directory
227 dnl ------------------------------------------------------------------------
232 dnl ------------------------------------------------------------------------
233 dnl search path for includes and libraries
234 dnl ------------------------------------------------------------------------
237 /usr/Motif1.2/include \
251 /usr/local/X11R6/include \
252 /usr/local/X11R5/include \
253 /usr/local/X11R4/include \
255 /usr/local/include/X11R6 \
256 /usr/local/include/X11R5 \
257 /usr/local/include/X11R4 \
261 /usr/local/X11/include \
262 /usr/local/include/X11 \
266 /usr/XFree86/include/X11 \
270 /usr/unsupported/include \
271 /usr/athena/include \
272 /usr/local/x11r5/include \
273 /usr/lpp/Xamples/include \
275 /usr/local/include/gtk \
276 /usr/local/include/Xm \
277 /usr/local/include/qt \
278 /usr/X11R6/include/Xm \
279 /usr/X11/include/Xm \
282 /usr/openwin/include \
283 /usr/openwin/share/include \
286 SEARCH_LIB="`echo "$SEARCH_INCLUDE" | sed s/include/lib/g` \
289 dnl ------------------------------------------------------------------------
291 dnl ------------------------------------------------------------------------
293 dnl ###################
294 dnl # checks programs #
295 dnl ###################
297 dnl C-compiler checks
298 dnl =================
299 dnl use what compiler
301 dnl defines CC with the compiler to use
302 dnl defines GCC with yes if using gcc
303 dnl defines GCC empty if not using gcc
306 CFLAGS=`echo "$CFLAGS" | sed 's/-g//g'`
308 dnl does compiler support -c and -o simultaniously
310 dnl defines NO_MINUS_C_MINUS_O if compiler does not accept
311 dnl both switches simultaniously
312 dnl what is the c-preprocessor
314 dnl defines CPP with the c-preprocessor
315 dnl is -traditional needed for correct compilations
316 AC_PROG_GCC_TRADITIONAL
317 dnl adds -traditional for gcc if needed
321 dnl C++-compiler checks
322 dnl ===================
323 dnl use what compiler
325 dnl defines CXX with the compiler to use
326 dnl defines GXX with yes if using gxx
327 dnl defines GXX empty if not using gxx
329 dnl what is the C++-preprocessor
331 dnl defines CXXCPP with the C++-preprocessor
333 CXXFLAGS=`echo "$CXXFLAGS" | sed 's/-g//g'`
340 dnl defines RANLIB with the appropriate command
344 AC_CHECK_PROG(AR, ar, ar, ar)
345 dnl defines AR with the appropriate command
350 dnl defines INSTALL with the appropriate command
355 dnl defines LN_S with the appropriate command
360 dnl defines AWK with the appropriate command
365 dnl check if VPATH works
366 AC_MSG_CHECKING("make for VPATH support")
368 cat - << EOF > confMake
374 if test ! -d sub ; then
377 echo dummy > sub/file
378 ${MAKE-make} -f confMake VPATH=sub 2> config.log > /dev/null
380 rm -f sub/file check final_file confMake
382 if test "$RESULT" = 0; then
387 You need a make-utility that is able to use the variable
389 If your version of make does not support VPATH correctly,
390 please install GNU-make (possibly as gmake), and start
391 configure with the following command:
392 export MAKE=gmake; ./configure for sh-type shells
393 setenv MAKE gmake; ./configure for csh-type shells
394 Also please do remember to use gmake in this case every time
395 you are trying to compile.
399 dnl ####################
400 dnl # checks libraries #
401 dnl ####################
403 dnl find the X11 include and library files
405 dnl defines x_includes and x_libraries
407 dnl #######################
408 dnl # checks header files #
409 dnl #######################
412 dnl defines MACRO HAVE_DIRENT_H if dirent.h exists
413 dnl defines MACRO HAVE_SYS_NDIR_H if sys/ndir.h exists
414 dnl defines MACRO HAVE_SYS_DIR_H if sys/dir.h exists
415 dnl defines MACRO HAVE_NDIR_H if ndir.h exists
417 dnl defines STDC_HEADERS if ANSI-C header
419 dnl defines HAVE_SYS_WAIT_H if sys/wait.h exist and is POSIX.1
420 AC_CHECK_HEADERS(fcntl.h)
421 dnl defines HAVE_FCNTL_H
422 AC_CHECK_HEADERS(limits.h)
423 dnl defines HAVE_LIMITS_h
424 AC_CHECK_HEADERS(sys/file.h)
425 dnl defines HAVE_SYS_FILE_H
426 AC_CHECK_HEADERS(sys/time.h)
427 dnl defines HAVE_SYS_TIME_H
428 AC_CHECK_HEADERS(unistd.h)
429 dnl defines HAVE_UNISTD_H
430 AC_CHECK_HEADERS(fnmatch.h)
431 dnl defines HAVE_FNMATCH_H
432 dnl As it needs Linux 2.1.x for the moment: check whether the file exists (GL).
433 AC_CHECK_HEADERS(linux/joystick.h)
435 if test "$ac_cv_header_linux_joystick_h" = "yes"; then
436 GTK_JOYSTICK="gtk/joystick.cpp"
438 AC_SUBST(GTK_JOYSTICK)
442 AC_CHECK_HEADERS(iostream)
443 if test "x$HAVE_IOSTREAM" = "x" ; then
444 AC_DEFINE(wxUSE_IOSTREAMH)
448 dnl defines HAVE_IOSTREAM
449 dnl ###################
450 dnl # checks typedefs #
451 dnl ###################
453 dnl defines GETGROUPS_T
455 dnl defines mode_t if not already defined
457 dnl defines off_t if not already defined
459 dnl defines pid_t if not already defined
461 dnl defines RETSIGTYPE for the correct return type of signal
463 dnl defines size_t if not already defined
465 dnl defines uid_t and gid_t if not already defined
467 dnl #####################
468 dnl # checks structures #
469 dnl #####################
472 dnl defines STAT_MACROS_BROKEN if S_ISDIR and S_ISREG
473 dnl do not work properly
475 dnl defines TIME_WITH_SYS_TIME if time.h and sys/time.h can
478 dnl defines HAVE_ST_BLKSIZE if struct stat contains st_blksize
480 dnl defines HAVE_ST_BLOCKS if struct stat contains st_blocks
482 dnl defines HAVE_ST_RDEV if struct stat contains st_rdev
484 dnl defines TM_IN_SYS_TIME if struct tm is not in time.h
486 dnl defines HAVE_ST_BLKSIZE if struct tm contains tm_zone
488 dnl defines HAVE_TZNAME if external array tzname is found
490 dnl ###################################
491 dnl # checks compiler characteristics #
492 dnl ###################################
496 dnl defines const to be empty if c-compiler does not support const fully
498 dnl defines inline to a sensible value for the c-compiler
500 dnl defines __CHAR_UNSIGNED__ if char is unsigned
502 dnl defines HAVE_LONGDOUBLE if compiler supports long double
505 dnl defines WORDS_BIGENDIAN if system is big endian
507 AC_CHECK_SIZEOF(int *)
509 AC_CHECK_SIZEOF(long)
510 dnl defines the size of certain types of variables in SIZEOF_???
512 dnl ############################
513 dnl # checks library functions #
514 dnl ############################
516 dnl ##########################
517 dnl # checks system services #
518 dnl ##########################
521 AC_SYS_LONG_FILE_NAMES
522 dnl defines HAVE_LONG_FILENAMES if filenames longer then
523 dnl 14 chars are supported
525 dnl AC_SYS_RESTARTABLE_SYSCALLS
526 dnl defines HAVE_RESTARTABLE_SYSCALLS if the system restarts a
527 dnl system call that is interrupted
530 dnl #################
531 dnl # checks PARSER #
532 dnl #################
537 dnl defines YACC with the appropriate command
542 dnl defines LEX with the appropriate command
543 dnl defines LEXLIB with the appropriate library
544 dnl what type is yytext
546 dnl defines YYTEXT_POINTER if yytext is char*
547 dnl defines LEX_OUTPUT_ROOT as to the base of the
548 dnl filename output by the lexer
550 dnl ------------------------------------------------------------------------
552 dnl ------------------------------------------------------------------------
554 CHECK_INCLUDE="-I/usr/include $X_CFLAGS"
555 CHECK_LIB="-L/lib -L/usr/lib $X_LIBS"
557 dnl ------------------------------------------------------------------------
559 dnl ------------------------------------------------------------------------
563 configuration=$host_alias
565 dnl ------------------------------------------------------------------------
567 dnl ------------------------------------------------------------------------
589 case "${canonical}" in
598 *-*-irix5* | *-*-irix6* )
609 AC_DEFINE(__SOLARIS__)
620 *-*-freebsd* | *-*-netbsd*)
623 AC_DEFINE(__FREEBSD__)
653 AC_MSG_ERROR(I don't know your system type.)
656 dnl ------------------------------------------------------------------------
657 dnl defaults for command options
658 dnl ------------------------------------------------------------------------
664 DEFAULT_wxUSE_MOTIF=0
666 DEFAULT_wxUSE_THREADS=1
668 DEFAULT_wxUSE_SHARED=1
669 DEFAULT_wxUSE_OPTIMISE=1
670 DEFAULT_wxUSE_PROFILE=0
671 DEFAULT_wxUSE_DEBUG_FLAG=0
672 DEFAULT_wxUSE_DEBUG_INFO=0
673 DEFAULT_wxUSE_MEM_TRACING=0
674 DEFAULT_wxUSE_DMALLOC=0
675 DEFAULT_wxUSE_APPLE_IEEE=1
676 DEFAULT_wxUSE_IOSTREAMH=1
679 DEFAULT_wxUSE_LIBPNG=1
682 DEFAULT_wxUSE_COMBOBOX=1
683 DEFAULT_wxUSE_GAUGE=1
684 DEFAULT_wxUSE_SCROLLBAR=1
685 DEFAULT_wxUSE_LISTCTRL=1
686 DEFAULT_wxUSE_TREECTRL=1
688 DEFAULT_wxUSE_TAB_DIALOG=1
689 DEFAULT_wxUSE_NOTEBOOK=1
691 DEFAULT_wxUSE_TIMEDATE=1
692 DEFAULT_wxUSE_FRACTION=1
695 DEFAULT_wxUSE_CONFIG=1
696 DEFAULT_wxUSE_STREAMS=1
697 DEFAULT_wxUSE_SERIAL=1
699 DEFAULT_wxUSE_TEXTFILE=1
701 DEFAULT_wxUSE_AFM_FOR_POSTSCRIPT=1
702 DEFAULT_WX_NORMALIZED_PS_FONTS=1
703 DEFAULT_wxUSE_POSTSCRIPT=1
706 DEFAULT_wxUSE_RESOURCES=1
707 DEFAULT_wxUSE_CONSTRAINTS=1
708 DEFAULT_wxUSE_CLIPBOARD=0
711 DEFAULT_wxUSE_MDI_ARCHITECTURE=1
712 DEFAULT_wxUSE_DOC_VIEW_ARCHITECTURE=1
713 DEFAULT_wxUSE_PRINTING_ARCHITECTURE=1
715 DEFAULT_wxUSE_PROLOGIO=1
716 DEFAULT_wxUSE_WX_RESOURCES=1
719 DEFAULT_wxUSE_OPENGL=0
720 DEFAULT_wxUSE_METAFILE=0
721 DEFAULT_wxUSE_WXGRAPH=0
722 DEFAULT_wxUSE_WXTREE=0
725 DEFAULT_wxUSE_UNICODE=1
726 DEFAULT_wxUSE_WCSRTOMBS=0
728 dnl ----------------------------------------------------------------
730 dnl ----------------------------------------------------------------
732 AC_OVERRIDES(gtk,gtk,
733 **--with-gtk use GTK,
740 AC_OVERRIDES(motif,motif,
741 **--with-motif use Motif/Lesstif,
744 dnl ----------------------------------------------------------------
746 dnl ----------------------------------------------------------------
748 AC_OVERRIDES(shared,shared,
749 **--with-shared create shared libraries,
752 AC_OVERRIDES(optimise,optimise,
753 **--with-optimise create optimised code,
756 AC_OVERRIDES(debug_flag,debug_flag,
757 **--with-debug_flag create code with WXDEBUG define set to 1,
760 AC_OVERRIDES(debug_info,debug_info,
761 **--with-debug_info create code with debuging information,
764 AC_OVERRIDES(mem_tracing,mem_tracing,
765 **--with-mem_traing create code with memory tracing,
768 AC_OVERRIDES(dmalloc,dmalloc,
769 **--with-dmalloc use dmalloc memory debug library (www.letters.com/dmalloc/),
772 AC_OVERRIDES(profile,profile,
773 **--with-profile create code with profiling information,
776 AC_OVERRIDES(apple_ieee, apple_ieee,
777 **--with_apple_ieee use the Apple IEEE codec,
780 dnl ----------------------------------------------------------------
781 dnl user options for libraries
782 dnl ----------------------------------------------------------------
784 AC_OVERRIDES(zlib,zlib,
785 **--with-zlib use zlib for LZW comression,
788 AC_OVERRIDES(libpng,libpng,
789 **--with-libpng use libpng (PNG image format),
792 AC_OVERRIDES(odbc,odbc,
793 **--with-odbc use iODBC and wxODBC classes,
796 AC_OVERRIDES(opengl,opengl,
797 **--with-opengl use OpenGL (or Mesa),
800 dnl ----------------------------------------------------------------
801 dnl user options for GUI control classes
802 dnl ----------------------------------------------------------------
804 AC_OVERRIDES(gauge,gauge,
805 **--with-gauge use wxGauge class,
808 AC_OVERRIDES(combobox,combobox,
809 **--with-combobox use wxComboBox class,
812 AC_OVERRIDES(scrollbar,scrollbar,
813 **--with-scrollbar use wxScrollbar class,
816 AC_OVERRIDES(listctrl,listctrl,
817 **--with-listctrl use wxListCtrl class,
820 AC_OVERRIDES(treectrl,treectrl,
821 **--with-treectrl use wxTreeCtrl class,
824 AC_OVERRIDES(grid,grid,
825 **--with-grid use wxGrid class,
828 AC_OVERRIDES(tab_dialog,tab_dialog,
829 **--with-tab_dialog use wxTabDia class,
832 AC_OVERRIDES(notebook,notebook,
833 **--with-notebook use wxNotebook class,
836 dnl ----------------------------------------------------------------
837 dnl user options for non-GUI classes
838 dnl ----------------------------------------------------------------
840 AC_OVERRIDES(timedate, timedate,
841 **--with-timedate use wxTime and wxDate classes,
844 AC_OVERRIDES(fraction,fraction,
845 **--with-fraction use wxFraction class,
848 AC_OVERRIDES(log,log,
849 **--with-log use logging system,
852 AC_OVERRIDES(intl,intl,
853 **--with-intl use internationalization system,
856 AC_OVERRIDES(config,config,
857 **--with-config use wxConfig class,
860 AC_OVERRIDES(streams,streams,
861 **--with-streams use wxStream etc classes,
864 AC_OVERRIDES(serial,serial,
865 **--with-serial use class serialization,
868 AC_OVERRIDES(file,file,
869 **--with-file use wxFile class,
872 AC_OVERRIDES(textfile,textfile,
873 **--with-textfile use wxTextFile class,
876 dnl ----------------------------------------------------------------
877 dnl user options for PostScript
878 dnl ----------------------------------------------------------------
880 AC_OVERRIDES(afmfonts,afmfonts,
881 **--with-afmfonts use Adobe Font Metric Font table,
882 wxUSE_AFM_FOR_POSTSCRIPT)
884 AC_OVERRIDES(normalized, normalized,
885 **--with-PS-normalized use normalized PS fonts,
886 WX_NORMALIZED_PS_FONTS)
888 AC_OVERRIDES(postscript, postscript,
889 **--with-postscript use wxPostscriptDC device context,
892 dnl ----------------------------------------------------------------
893 dnl user options for wxString and Unicode
894 dnl ----------------------------------------------------------------
896 AC_OVERRIDES(unicode,unicode,
897 **--with-unicode compile wxString with Unicode support,
900 AC_OVERRIDES(wcsrtombs,wcsrtombs,
901 **--with-wcsrtombs use wcsrtombs instead of (buggy in GNU libc5) wcstombs,
904 dnl ----------------------------------------------------------------
905 dnl user options for Prolog and Resources
906 dnl ----------------------------------------------------------------
908 AC_OVERRIDES(wxresources,wxresources,
909 **--with-wxresources use wxWindows's resources,
912 AC_OVERRIDES(prologio,prologio,
913 **--with-prologio use Prolog IO library,
916 AC_OVERRIDES(rpc,RPC,
917 **--with-rpc use Prolog's remote procedure calls,
920 dnl ----------------------------------------------------------------
921 dnl user options for misc stuff
922 dnl ----------------------------------------------------------------
924 AC_OVERRIDES(ipc,IPC,
925 **--with-ipc use interprocess communication (wxSocket etc.),
928 AC_OVERRIDES(resources,resources,
929 **--with-resources use X resources for saving information,
932 AC_OVERRIDES(clipboard,clipboard,
933 **--with-clipboard use wxClipboard classes,
936 AC_OVERRIDES(dnd,dnd,
937 **--with-dnd use Drag'n'Drop classes,
940 AC_OVERRIDES(constraints,constrains,
941 **--with-constraints use layout-constraints system,
944 dnl ----------------------------------------------------------------
945 dnl user options for architectures
946 dnl ----------------------------------------------------------------
948 AC_OVERRIDES(mdi,mdi,
949 **--with-mdi use multiple document interface architecture,
950 wxUSE_MDI_ARCHITECTURE)
952 AC_OVERRIDES(docview,docview,
953 **--with-docview use document view architecture,
954 wxUSE_DOC_VIEW_ARCHITECTURE)
956 AC_OVERRIDES(printarch,printarch,
957 **--with-printarch use printing architecture,
958 wxUSE_PRINTING_ARCHITECTURE)
960 AC_OVERRIDES(help,help,
961 **--with-help use help (using external browser at present),
964 dnl ----------------------------------------------------------------
965 dnl user options with no effect yet
966 dnl ----------------------------------------------------------------
968 dnl AC_OVERRIDES(metafile, metafile,
969 dnl **--with-metafile use metafile (no effect),
972 dnl AC_OVERRIDES(wxgraph,wxgraph,
973 dnl **--with-wxgraph use wxgraph (no effect),
976 dnl AC_OVERRIDES(wxtree,wxtree,
977 dnl **--with-wxtree use wxtree (no effect),
980 dnl AC_OVERRIDES(package,message,helpmessage,variable)
982 dnl ----------------------------------------------------------------
984 dnl ----------------------------------------------------------------
986 if test "$wxUSE_UNIX" = 1 ; then
990 dnl ----------------------------------------------------------------
991 dnl search for toolkit (widget sets)
992 dnl ----------------------------------------------------------------
1005 if test "$wxUSE_GTK" = 1; then
1006 AM_PATH_GTK(1.0.4, [
1007 GUI_TK_INCLUDE="$GTK_CFLAGS"
1008 GUI_TK_LIBRARY="$GTK_LIBS"
1009 ], AC_MSG_ERROR(Is gtk-config in path and GTK+ is version 1.0.4?))
1011 TOOLKIT_DEF=__WXGTK__
1013 MAKEINCLUDE=../gtk.inc
1016 if test "$wxUSE_QT" = 1; then
1017 AC_MSG_CHECKING(for Qt includes)
1018 AC_PATH_FIND_INCLUDES($SEARCH_INCLUDE,qapp.h)
1019 if test "$ac_find_includes" != "" ; then
1020 AC_MSG_RESULT(found $ac_find_includes)
1021 AC_MSG_CHECKING(for Qt library)
1022 AC_PATH_FIND_LIBRARIES($SEARCH_LIB,qt)
1023 if test "$ac_find_libraries" != "" ; then
1024 AC_INCLUDE_PATH_EXIST($ac_find_includes,$CHECK_INCLUDE)
1025 AC_LINK_PATH_EXIST($ac_find_libraries,$CHECK_LIB)
1026 CHECK_LINK="$CHECK_INCLUDE $ac_path_to_link"
1027 CHECK_INCLUDE="$CHECK_INCLUDE $ac_path_to_include"
1028 AC_MSG_RESULT(found Qt at $ac_find_libraries)
1035 GUI_TK_LINK="-lX11 -lqt -lm"
1037 TOOLKIT_DEF=__WXQT__
1039 MAKEINCLUDE=../qt.inc
1042 if test "$wxUSE_MOTIF" = 1; then
1043 AC_MSG_CHECKING(for Motif/Lesstif includes)
1044 AC_PATH_FIND_INCLUDES($SEARCH_INCLUDE,Xm.h)
1045 if test "$ac_find_includes" != "" ; then
1046 AC_MSG_RESULT(found $ac_find_includes)
1047 AC_MSG_CHECKING(for Motif/Lesstif library)
1048 AC_PATH_FIND_LIBRARIES($SEARCH_LIB,Xm)
1049 if test "$ac_find_libraries" != "" ; then
1050 AC_INCLUDE_PATH_EXIST($ac_find_includes,$CHECK_INCLUDE)
1051 AC_LINK_PATH_EXIST($ac_find_libraries,$CHECK_LIB)
1052 CHECK_LINK="$CHECK_LIB $ac_path_to_link"
1053 CHECK_INCLUDE="$CHECK_INCLUDE $ac_path_to_include"
1054 AC_MSG_RESULT(found at $ac_find_libraries)
1055 AC_MSG_CHECKING(for Xt library)
1056 AC_PATH_FIND_LIBRARIES($SEARCH_LIB,Xt)
1057 if test "$ac_find_libraries" != "" ; then
1058 AC_LINK_PATH_EXIST($ac_find_libraries,$CHECK_LIB)
1059 CHECK_LINK="$CHECK_LIB $ac_path_to_link"
1060 AC_MSG_RESULT(found at $ac_find_libraries)
1070 GUI_TK_LINK="-lXt -lX11 -lXm -lm"
1071 GUI_TK_LINK="$CHECK_LINK $GUI_TK_LINK"
1073 TOOLKIT_DEF=__WXMOTIF__
1075 MAKEINCLUDE=../motif.inc
1078 if test "$TOOLKIT" = ""; then
1079 AC_MSG_ERROR(You must specify a toolkit: --with-gtk --with-qt --with-motif)
1082 AC_SUBST(GUI_TK_INCLUDE)
1083 AC_SUBST(GUI_TK_LIBRARY)
1084 AC_SUBST(GUI_TK_LINK)
1089 AC_SUBST(TOOLKIT_DEF)
1091 AC_SUBST(MAKEINCLUDE)
1093 dnl ----------------------------------------------------------------
1094 dnl Register compile options for makefiles and setup.h
1095 dnl ----------------------------------------------------------------
1098 if test "$wxUSE_DEBUG_INFO" = 1 ; then
1103 if test "$wxUSE_DEBUG_FLAG" = 1 ; then
1104 AC_DEFINE_UNQUOTED(WXDEBUG,$wxUSE_DEBUG_FLAG)
1105 WXDEBUG_DEFINE="-D__WXDEBUG__"
1106 AC_SUBST(WXDEBUG_DEFINE)
1108 WXDEBUG_DEFINE="-DGTK_NO_CHECK_CASTS"
1109 AC_SUBST(WXDEBUG_DEFINE)
1112 if test "$wxUSE_MEM_TRACING" = 1 ; then
1113 AC_DEFINE_UNQUOTED(wxUSE_MEMORY_TRACING,$wxUSE_MEM_TRACING)
1114 AC_DEFINE_UNQUOTED(wxUSE_GLOBAL_MEMORY_OPERATORS,$wxUSE_MEM_TRACING)
1118 if test "$wxUSE_DMALLOC" = 1 ; then
1119 EXTRA_LINK="$EXTRA_LINK -ldmalloc"
1121 AC_SUBST(EXTRA_LINK)
1124 if test "$wxUSE_PROFILE" = 1 ; then
1129 CXXFLAGS=`echo "${CXXFLAGS}" | sed "s/\-O.//g" `
1130 CFLAGS=`echo "${CFLAGS}" | sed "s/\-O.//g" `
1131 if test "$wxUSE_OPTIMISE" = 0 ; then
1134 if test "$GCC" = yes ; then
1136 case "${canonical}" in
1138 OPTIMISE="${OPTIMISE} "
1148 if test "$wxUSE_APPLE_IEEE" = 1 ; then
1149 APPLE_IEEE="APPLE_IEEE"
1150 AC_DEFINE_UNQUOTED(wxUSE_APPLE_IEEE,$wxUSE_APPLE_IEEE)
1153 wxUSE_IOSTREAMH=$DEFAULT_wxUSE_IOSTREAMH
1154 AC_DEFINE_UNQUOTED(wxUSE_IOSTREAMH,$wxUSE_IOSTREAMH)
1156 dnl ----------------------------------------------------------------
1157 dnl Register library options for makefiles and setup.h
1158 dnl ----------------------------------------------------------------
1160 if test "$wxUSE_ZLIB" = 1 ; then
1161 AC_DEFINE_UNQUOTED(wxUSE_ZLIB,$wxUSE_ZLIB)
1164 if test "$wxUSE_LIBPNG" = 1 ; then
1165 AC_DEFINE_UNQUOTED(wxUSE_LIBPNG,$wxUSE_LIBPNG)
1169 if test "$wxUSE_ODBC" = 1 ; then
1170 AC_DEFINE_UNQUOTED(wxUSE_ODBC,$wxUSE_ODBC)
1171 IODBC_C_SRC="\$(IODBC_C_SRC)"
1173 AC_SUBST(IODBC_C_SRC)
1175 dnl ----------------------------------------------------------------
1176 dnl Register GUI-control options for makefiles and setup.h
1177 dnl ----------------------------------------------------------------
1179 if test "$wxUSE_GAUGE" = 1 ; then
1180 AC_DEFINE_UNQUOTED(wxUSE_GAUGE,$wxUSE_GAUGE)
1183 if test "$wxUSE_COMBOBOX" = 1 ; then
1184 AC_DEFINE_UNQUOTED(wxUSE_COMBOBOX,$wxUSE_COMBOBOX)
1187 if test "$wxUSE_SCROLLBAR" = 1 ; then
1188 AC_DEFINE_UNQUOTED(wxUSE_SCROLLBAR,$wxUSE_SCROLLBAR)
1191 if test "$wxUSE_LISTCTRL" = 1 ; then
1192 AC_DEFINE_UNQUOTED(wxUSE_LISTCTRL,$wxUSE_LISTCTRL)
1195 if test "$wxUSE_TREECTRL" = 1 ; then
1196 AC_DEFINE_UNQUOTED(wxUSE_TREECTRL,$wxUSE_TREECTRL)
1199 if test "$wxUSE_GRID" = 1 ; then
1200 AC_DEFINE_UNQUOTED(wxUSE_GRID,$wxUSE_GRID)
1203 if test "$wxUSE_TAB_DIALOG" = 1 ; then
1204 AC_DEFINE_UNQUOTED(wxUSE_TAB_DIALOG,$wxUSE_TAB_DIALOG)
1207 if test "$wxUSE_NOTEBOOK" = 1 ; then
1208 AC_DEFINE_UNQUOTED(wxUSE_NOTEBOOK,$wxUSE_NOTEBOOK)
1211 dnl ----------------------------------------------------------------
1212 dnl Register non-GUI class options for makefiles and setup.h
1213 dnl ----------------------------------------------------------------
1215 if test "$wxUSE_CONFIG" = 1 ; then
1216 AC_DEFINE_UNQUOTED(wxUSE_CONFIG,$wxUSE_CONFIG)
1219 if test "$wxUSE_TIMEDATE" = 1 ; then
1220 AC_DEFINE_UNQUOTED(wxUSE_TIMEDATE,$wxUSE_TIMEDATE)
1223 if test "$wxUSE_FRACTION" = 1 ; then
1224 AC_DEFINE_UNQUOTED(wxUSE_FRACTION,$wxUSE_FRACTION)
1227 if test "$wxUSE_LOG" = 1 ; then
1228 AC_DEFINE_UNQUOTED(wxUSE_LOG,$wxUSE_LOG)
1231 if test "$wxUSE_INTL" = 1 ; then
1232 AC_DEFINE_UNQUOTED(wxUSE_INTL,$wxUSE_INTL)
1235 if test "$wxUSE_STREAMS" = 1 ; then
1236 AC_DEFINE_UNQUOTED(wxUSE_STREAMS,$wxUSE_STREAMS)
1239 if test "$wxUSE_SERIAL" = 1 ; then
1240 AC_DEFINE_UNQUOTED(wxUSE_SERIAL,$wxUSE_SERIAL)
1243 if test "$wxUSE_FILE" = 1 ; then
1244 AC_DEFINE_UNQUOTED(wxUSE_FILE,$wxUSE_FILE)
1247 if test "$wxUSE_TEXTFILE" = 1 ; then
1248 AC_DEFINE_UNQUOTED(wxUSE_TEXTFILE,$wxUSE_TEXTFILE)
1251 dnl ----------------------------------------------------------------
1252 dnl Register Prolog and Resources options for makefiles and setup.h
1253 dnl ----------------------------------------------------------------
1255 if test "$wxUSE_RPC" = 1 ; then
1256 AC_DEFINE_UNQUOTED(wxUSE_RPC,$wxUSE_RPC)
1259 if test "$wxUSE_WX_RESOURCES" = 1 ; then
1260 AC_DEFINE_UNQUOTED(wxUSE_WX_RESOURCES,$wxUSE_WX_RESOURCES)
1263 if test "$wxUSE_PROLOGIO" = 1 ; then
1264 AC_DEFINE_UNQUOTED(wxUSE_PROLOGIO)
1267 dnl ----------------------------------------------------------------
1268 dnl Register PostScript options for makefiles and setup.h
1269 dnl ----------------------------------------------------------------
1271 if test "$wxUSE_POSTSCRIPT" = 1 ; then
1272 AC_DEFINE_UNQUOTED(wxUSE_POSTSCRIPT)
1275 AC_DEFINE_UNQUOTED(wxUSE_AFM_FOR_POSTSCRIPT,$wxUSE_AFM_FOR_POSTSCRIPT)
1277 AC_DEFINE_UNQUOTED(WX_NORMALIZED_PS_FONTS,$WX_NORMALIZED_PS_FONTS)
1279 dnl ----------------------------------------------------------------
1280 dnl Register architecture options for makefiles and setup.h
1281 dnl ----------------------------------------------------------------
1283 if test "$wxUSE_MDI_ARCHITECTURE" = 1 ; then
1284 AC_DEFINE_UNQUOTED(wxUSE_MDI_ARCHITECTURE,$wxUSE_MDI_ARCHITECTURE)
1287 if test "$wxUSE_DOC_VIEW_ARCHITECTURE" = 1 ; then
1288 AC_DEFINE_UNQUOTED(wxUSE_DOC_VIEW_ARCHITECTURE,$wxUSE_DOC_VIEW_ARCHITECTURE)
1291 if test "$wxUSE_PRINTING_ARCHITECTURE" = 1 ; then
1292 AC_DEFINE_UNQUOTED(wxUSE_PRINTING_ARCHITECTURE,$wxUSE_PRINTING_ARCHITECTURE)
1295 dnl ----------------------------------------------------------------
1296 dnl Register wxString options for makefiles and setup.h
1297 dnl ----------------------------------------------------------------
1299 if test "$wxUSE_UNICODE" = 1 ; then
1300 AC_DEFINE_UNQUOTED(wxUSE_UNICODE)
1303 if test "$wxUSE_WCSRTOMBS" = 1 ; then
1304 AC_DEFINE_UNQUOTED(wxUSE_WCSRTOMBS)
1307 dnl ----------------------------------------------------------------
1308 dnl Register misc options for makefiles and setup.h
1309 dnl ----------------------------------------------------------------
1311 if test "$wxUSE_IPC" = 1 ; then
1312 AC_DEFINE_UNQUOTED(wxUSE_IPC)
1315 if test "$wxUSE_RESOURCES" = 1 ; then
1316 AC_DEFINE_UNQUOTED(wxUSE_RESOURCES,$wxUSE_RESOURCES)
1319 if test "$wxUSE_CLIPBOARD" = 1 ; then
1320 AC_DEFINE_UNQUOTED(wxUSE_CLIPBOARD,$wxUSE_CLIPBOARD)
1323 if test "$wxUSE_DND" = 1 ; then
1324 AC_DEFINE_UNQUOTED(wxUSE_DND,$wxUSE_DND)
1327 if test "$wxUSE_CONSTRAINTS" = 1 ; then
1328 AC_DEFINE_UNQUOTED(wxUSE_CONSTRAINTS,$wxUSE_CONSTRAINTS)
1331 dnl ----------------------------------------------------------------
1333 dnl ----------------------------------------------------------------
1336 if test "$wxUSE_METAFILE" = 1 ; then
1338 AC_DEFINE_UNQUOTED(wxUSE_METAFILE,$wxUSE_METAFILE)
1343 if test "$wxUSE_HELP" = 1 ; then
1345 AC_DEFINE_UNQUOTED(wxUSE_HELP,$wxUSE_HELP)
1350 if test "$wxUSE_WXGRAPH" = 1 ; then
1352 AC_DEFINE_UNQUOTED(wxUSE_WXGRAPH,$wxUSE_WXGRAPH)
1357 if test "$wxUSE_WXTREE" = 1 ; then
1359 AC_DEFINE_UNQUOTED(wxUSE_WXTREE,$wxUSE_WXTREE)
1364 if test "$wxUSE_OPENGL" = 1 ; then
1368 dnl ----------------------------------------------------------------
1369 dnl select dynamic loader (used by iODBC to load drivers)
1370 dnl ----------------------------------------------------------------
1372 AC_CHECK_LIB(dl,main,[DL_LIBRARY=-ldl],[DL_LIBRARY=])
1373 AC_SUBST(DL_LIBRARY)
1375 dnl ----------------------------------------------------------------
1377 dnl ----------------------------------------------------------------
1381 UNIX_THREAD="gtk/threadno.cpp"
1383 AC_OVERRIDES(threads,threads,
1384 **--without-threads Force disabling threads,
1387 dnl AC_ARG_WITH(threads,
1388 dnl [**--without-threads Force disabling threads ],
1389 dnl [wxUSE_THREADS="$withval"])
1391 if test "$wxUSE_THREADS" = "1"; then
1392 UNIX_THREAD="gtk/threadno.cpp"
1394 dnl For glibc 2 users who have the old libc 5 too
1396 AC_CHECK_LIB(pthread-0.7, pthread_create, [
1397 UNIX_THREAD="gtk/threadpsx.cpp"
1398 THREADS_LINK="-lpthread-0.7"
1400 AC_CHECK_HEADER(sys/prctl.h, [
1401 UNIX_THREAD="gtk/threadsgi.cpp"
1404 dnl pthread_create is always available in pthread but it seems not to be
1405 dnl the case for pthread_setcanceltype.
1407 AC_CHECK_LIB(pthread, pthread_setcanceltype, [
1408 UNIX_THREAD="gtk/threadpsx.cpp"
1409 THREADS_LINK="-lpthread"
1412 AC_CHECK_LIB(pthreads, pthread_setcanceltype, [
1413 UNIX_THREAD="gtk/threadpsx.cpp"
1414 THREADS_LINK="-lpthreads"
1418 if test "$wxUSE_MOTIF" = "1"; then
1419 UNIX_THREAD="motif/thread.cpp"
1422 if test -z "$UNIX_THREAD"; then
1426 AC_SUBST(UNIX_THREAD)
1427 AC_SUBST(THREADS_LINK)
1428 AC_DEFINE(wxUSE_THREADS)
1430 dnl defines UNIX_THREAD it contains the source file to use for threads. (GL)
1431 dnl defines THREADS_LINK it contains the thread library to link with. (GL)
1432 dnl defines wxUSE_THREADS if thread support is activated. (GL)
1434 dnl ----------------------------------------------------------------
1435 dnl search for opengl
1436 dnl ----------------------------------------------------------------
1442 if test "$wxUSE_OPENGL" = 1; then
1443 dnl checking OPENGL includes
1444 AC_MSG_CHECKING(for OpenGL includes)
1445 AC_PATH_FIND_INCLUDES($SEARCH_INCLUDE,GL/gl.h)
1446 if test "$ac_find_includes" != "" ; then
1447 OPENGL_INCLUDE="-I$ac_find_includes"
1448 AC_MSG_RESULT(found $ac_find_includes)
1449 dnl checking OPENGL libraries
1450 AC_MSG_CHECKING(for OpenGL library)
1451 AC_PATH_FIND_LIBRARIES($SEARCH_LIB,GL)
1452 if test "$ac_find_libraries" != "" ; then
1453 AC_INCLUDE_PATH_EXIST($ac_find_includes,$CHECK_INCLUDE)
1454 AC_LINK_PATH_EXIST($ac_find_libraries,$CHECK_LIB)
1455 CHECK_LINK="$CHECK_INCLUDE $ac_path_to_link"
1456 CHECK_INCLUDE="$CHECK_INCLUDE $ac_path_to_include"
1457 OPENGL_LIBRARY="$ac_path_to_link"
1458 OPENGL_INCLUDE="$ac_path_to_include"
1460 AC_MSG_RESULT(found OpenGL at $ac_find_libraries)
1462 AC_PATH_FIND_LIBRARIES($SEARCH_LIB,MesaGL)
1463 if test "$ac_find_libraries" != "" ; then
1464 AC_INCLUDE_PATH_EXIST($ac_find_includes,$CHECK_INCLUDE)
1465 AC_LINK_PATH_EXIST($ac_find_libraries,$CHECK_LIB)
1466 CHECK_LINK="$CHECK_INCLUDE $ac_path_to_link"
1467 CHECK_INCLUDE="$CHECK_INCLUDE $ac_path_to_include"
1468 OPENGL_LIBRARY="$ac_path_to_link"
1469 OPENGL_INCLUDE="$ac_path_to_include"
1470 OPENGL_LINK="-lMesaGL"
1471 AC_MSG_RESULT(found MESA at $ac_find_libraries)
1481 dnl ----------------------------------------------------------------
1483 dnl ----------------------------------------------------------------
1485 wxUSE_GLX=$wxUSE_OPENGL
1486 if test "$wxUSE_OPENGL" != 1; then
1493 AC_DEFINE_UNQUOTED(wxUSE_GLX,$wxUSE_GLX)
1494 AC_SUBST(OPENGL_INCLUDE)
1495 AC_SUBST(OPENGL_LIBRARY)
1496 AC_SUBST(OPENGL_LINK)
1499 dnl ------------------------------------------------------------------------
1500 dnl compiler options for shared libs
1501 dnl ------------------------------------------------------------------------
1505 case "${canonical}" in
1508 if test "$GCC" != "yes" ; then
1509 CXXFLAGS="${CXXFLAGS} +a1 -z -Aa -D_HPUX_SOURCE"
1510 CFLAGS="${CFLAGS} -z -D_HPUX_SOURCE"
1516 CREATE_SHARED=sharedHpux
1521 CREATE_SHARED=sharedLinux
1524 *-*-irix5* | *-*-irix6* )
1525 # PICFLAGS can remain empty, as pic is the default
1527 CREATE_SHARED=sharedIrix
1532 if test "$GCC" != "yes" ; then
1537 CREATE_SHARED=sharedSolaris2
1542 if test "$GCC" != "yes" ; then
1548 CREATE_SHARED=sharedSunos4
1552 *-*-freebsd* | *-*-netbsd*)
1554 CREATE_SHARED=sharedBsd
1560 CREATE_SHARED=sharedOSF
1564 if test "$GCC" != "yes" ; then
1569 CREATE_SHARED=sharedDgux
1574 if test "$GCC" != "yes" ; then
1579 CREATE_SHARED=sharedSysV
1584 if test "$GCC" != "yes" ; then
1589 CREATE_SHARED=sharedAIX
1598 if test "x$GCC" = xyes; then
1599 CFLAGS="${CFLAGS} -Wall"
1602 if test "x$GXX" = xyes; then
1603 CXXFLAGS="${CXXFLAGS} -Wall"
1606 if test "$wxUSE_SHARED" != 1; then
1613 AC_SUBST(CREATE_SHARED)
1615 dnl ------------------------------------------------------------------------
1616 dnl finish and clean-up
1617 dnl ------------------------------------------------------------------------
1619 dnl add OS to list of configured
1620 echo $OS >> system.list
1622 AC_CONFIG_HEADER(./include/wx/gtk/setup.h:./setup/setup.hin)
1623 AC_OUTPUT(./setup/substit ./wx-config:./wx-config.in,./setup/general/createall)