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 \
247 /usr/local/X11R6/include \
248 /usr/local/X11R5/include \
249 /usr/local/X11R4/include \
251 /usr/local/include/X11R6 \
252 /usr/local/include/X11R5 \
253 /usr/local/include/X11R4 \
257 /usr/local/X11/include \
258 /usr/local/include/X11 \
262 /usr/XFree86/include/X11 \
266 /usr/unsupported/include \
267 /usr/athena/include \
268 /usr/local/x11r5/include \
269 /usr/lpp/Xamples/include \
271 /usr/local/include/gtk \
272 /usr/local/include/Xm \
273 /usr/local/include/qt \
274 /usr/X11R6/include/Xm \
275 /usr/X11/include/Xm \
278 /usr/openwin/include \
279 /usr/openwin/share/include \
282 SEARCH_LIB="`echo "$SEARCH_INCLUDE" | sed s/include/lib/g` \
285 dnl ------------------------------------------------------------------------
287 dnl ------------------------------------------------------------------------
289 dnl ###################
290 dnl # checks programs #
291 dnl ###################
293 dnl C-compiler checks
294 dnl =================
295 dnl use what compiler
297 dnl defines CC with the compiler to use
298 dnl defines GCC with yes if using gcc
299 dnl defines GCC empty if not using gcc
302 CFLAGS=`echo "$CFLAGS" | sed 's/-g//g'`
304 dnl does compiler support -c and -o simultaniously
306 dnl defines NO_MINUS_C_MINUS_O if compiler does not accept
307 dnl both switches simultaniously
308 dnl what is the c-preprocessor
310 dnl defines CPP with the c-preprocessor
311 dnl is -traditional needed for correct compilations
312 AC_PROG_GCC_TRADITIONAL
313 dnl adds -traditional for gcc if needed
317 dnl C++-compiler checks
318 dnl ===================
319 dnl use what compiler
321 dnl defines CXX with the compiler to use
322 dnl defines GXX with yes if using gxx
323 dnl defines GXX empty if not using gxx
325 dnl what is the C++-preprocessor
327 dnl defines CXXCPP with the C++-preprocessor
329 CXXFLAGS=`echo "$CXXFLAGS" | sed 's/-g//g'`
336 dnl defines RANLIB with the appropriate command
340 AC_CHECK_PROG(AR, ar, ar, ar)
341 dnl defines AR with the appropriate command
346 dnl defines INSTALL with the appropriate command
351 dnl defines LN_S with the appropriate command
356 dnl defines AWK with the appropriate command
361 dnl check if VPATH works
362 AC_MSG_CHECKING("make for VPATH support")
364 cat - << EOF > confMake
370 if test ! -d sub ; then
373 echo dummy > sub/file
374 ${MAKE-make} -f confMake VPATH=sub 2> config.log > /dev/null
376 rm -f sub/file check final_file confMake
378 if test "$RESULT" = 0; then
383 You need a make-utility that is able to use the variable
385 If your version of make does not support VPATH correctly,
386 please install GNU-make (possibly as gmake), and start
387 configure with the following command:
388 export MAKE=gmake; ./configure for sh-type shells
389 setenv MAKE gmake; ./configure for csh-type shells
390 Also please do remember to use gmake in this case every time
391 you are trying to compile.
395 dnl ####################
396 dnl # checks libraries #
397 dnl ####################
399 dnl find the X11 include and library files
401 dnl defines x_includes and x_libraries
403 dnl #######################
404 dnl # checks header files #
405 dnl #######################
408 dnl defines MACRO HAVE_DIRENT_H if dirent.h exists
409 dnl defines MACRO HAVE_SYS_NDIR_H if sys/ndir.h exists
410 dnl defines MACRO HAVE_SYS_DIR_H if sys/dir.h exists
411 dnl defines MACRO HAVE_NDIR_H if ndir.h exists
413 dnl defines STDC_HEADERS if ANSI-C header
415 dnl defines HAVE_SYS_WAIT_H if sys/wait.h exist and is POSIX.1
416 AC_CHECK_HEADERS(fcntl.h)
417 dnl defines HAVE_FCNTL_H
418 AC_CHECK_HEADERS(limits.h)
419 dnl defines HAVE_LIMITS_h
420 AC_CHECK_HEADERS(sys/file.h)
421 dnl defines HAVE_SYS_FILE_H
422 AC_CHECK_HEADERS(sys/time.h)
423 dnl defines HAVE_SYS_TIME_H
424 AC_CHECK_HEADERS(unistd.h)
425 dnl defines HAVE_UNISTD_H
426 AC_CHECK_HEADERS(fnmatch.h)
427 dnl defines HAVE_FNMATCH_H
428 dnl As it needs Linux 2.1.x for the moment: check whether the file exists (GL).
429 AC_CHECK_HEADERS(linux/joystick.h)
431 if test "$ac_cv_header_linux_joystick_h" = "yes"; then
432 GTK_JOYSTICK="gtk/joystick.cpp"
434 AC_SUBST(GTK_JOYSTICK)
438 AC_CHECK_HEADERS(iostream)
439 if test "x$HAVE_IOSTREAM" = "x" ; then
440 AC_DEFINE(wxUSE_IOSTREAMH)
444 dnl defines HAVE_IOSTREAM
445 dnl ###################
446 dnl # checks typedefs #
447 dnl ###################
449 dnl defines GETGROUPS_T
451 dnl defines mode_t if not already defined
453 dnl defines off_t if not already defined
455 dnl defines pid_t if not already defined
457 dnl defines RETSIGTYPE for the correct return type of signal
459 dnl defines size_t if not already defined
461 dnl defines uid_t and gid_t if not already defined
463 dnl #####################
464 dnl # checks structures #
465 dnl #####################
468 dnl defines STAT_MACROS_BROKEN if S_ISDIR and S_ISREG
469 dnl do not work properly
471 dnl defines TIME_WITH_SYS_TIME if time.h and sys/time.h can
474 dnl defines HAVE_ST_BLKSIZE if struct stat contains st_blksize
476 dnl defines HAVE_ST_BLOCKS if struct stat contains st_blocks
478 dnl defines HAVE_ST_RDEV if struct stat contains st_rdev
480 dnl defines TM_IN_SYS_TIME if struct tm is not in time.h
482 dnl defines HAVE_ST_BLKSIZE if struct tm contains tm_zone
484 dnl defines HAVE_TZNAME if external array tzname is found
486 dnl ###################################
487 dnl # checks compiler characteristics #
488 dnl ###################################
492 dnl defines const to be empty if c-compiler does not support const fully
494 dnl defines inline to a sensible value for the c-compiler
496 dnl defines __CHAR_UNSIGNED__ if char is unsigned
498 dnl defines HAVE_LONGDOUBLE if compiler supports long double
501 dnl defines WORDS_BIGENDIAN if system is big endian
503 AC_CHECK_SIZEOF(int *)
505 AC_CHECK_SIZEOF(long)
506 dnl defines the size of certain types of variables in SIZEOF_???
508 dnl ############################
509 dnl # checks library functions #
510 dnl ############################
512 dnl ##########################
513 dnl # checks system services #
514 dnl ##########################
517 AC_SYS_LONG_FILE_NAMES
518 dnl defines HAVE_LONG_FILENAMES if filenames longer then
519 dnl 14 chars are supported
521 dnl AC_SYS_RESTARTABLE_SYSCALLS
522 dnl defines HAVE_RESTARTABLE_SYSCALLS if the system restarts a
523 dnl system call that is interrupted
526 dnl #################
527 dnl # checks PARSER #
528 dnl #################
533 dnl defines YACC with the appropriate command
538 dnl defines LEX with the appropriate command
539 dnl defines LEXLIB with the appropriate library
540 dnl what type is yytext
542 dnl defines YYTEXT_POINTER if yytext is char*
543 dnl defines LEX_OUTPUT_ROOT as to the base of the
544 dnl filename output by the lexer
546 dnl ------------------------------------------------------------------------
548 dnl ------------------------------------------------------------------------
550 CHECK_INCLUDE="-I/usr/include $X_CFLAGS"
551 CHECK_LIB="-L/lib -L/usr/lib $X_LIBS"
553 dnl ------------------------------------------------------------------------
555 dnl ------------------------------------------------------------------------
559 configuration=$host_alias
561 dnl ------------------------------------------------------------------------
563 dnl ------------------------------------------------------------------------
585 case "${canonical}" in
594 *-*-irix5* | *-*-irix6* )
605 AC_DEFINE(__SOLARIS__)
616 *-*-freebsd* | *-*-netbsd*)
619 AC_DEFINE(__FREEBSD__)
649 AC_MSG_ERROR(I don't know your system type.)
652 dnl ------------------------------------------------------------------------
653 dnl defaults for command options
654 dnl ------------------------------------------------------------------------
660 DEFAULT_wxUSE_MOTIF=0
662 DEFAULT_wxUSE_THREADS=1
664 DEFAULT_wxUSE_SHARED=1
665 DEFAULT_wxUSE_OPTIMISE=1
666 DEFAULT_wxUSE_PROFILE=0
667 DEFAULT_wxUSE_DEBUG_FLAG=0
668 DEFAULT_wxUSE_DEBUG_INFO=0
669 DEFAULT_wxUSE_MEM_TRACING=0
670 DEFAULT_wxUSE_DMALLOC=0
671 DEFAULT_wxUSE_APPLE_IEEE=1
672 DEFAULT_wxUSE_IOSTREAMH=1
675 DEFAULT_wxUSE_LIBPNG=1
678 DEFAULT_wxUSE_COMBOBOX=1
679 DEFAULT_wxUSE_GAUGE=1
680 DEFAULT_wxUSE_SCROLLBAR=1
681 DEFAULT_wxUSE_LISTCTRL=1
682 DEFAULT_wxUSE_TREECTRL=1
684 DEFAULT_wxUSE_TAB_DIALOG=1
685 DEFAULT_wxUSE_NOTEBOOK=1
687 DEFAULT_wxUSE_TIMEDATE=1
688 DEFAULT_wxUSE_FRACTION=1
691 DEFAULT_wxUSE_CONFIG=1
692 DEFAULT_wxUSE_STREAMS=1
693 DEFAULT_wxUSE_SERIAL=1
695 DEFAULT_wxUSE_TEXTFILE=1
697 DEFAULT_wxUSE_AFM_FOR_POSTSCRIPT=1
698 DEFAULT_WX_NORMALIZED_PS_FONTS=1
699 DEFAULT_wxUSE_POSTSCRIPT=1
702 DEFAULT_wxUSE_RESOURCES=1
703 DEFAULT_wxUSE_CONSTRAINTS=1
704 DEFAULT_wxUSE_CLIPBOARD=0
707 DEFAULT_wxUSE_MDI_ARCHITECTURE=1
708 DEFAULT_wxUSE_DOC_VIEW_ARCHITECTURE=1
709 DEFAULT_wxUSE_PRINTING_ARCHITECTURE=1
711 DEFAULT_wxUSE_PROLOGIO=1
712 DEFAULT_wxUSE_WX_RESOURCES=1
715 DEFAULT_wxUSE_OPENGL=0
716 DEFAULT_wxUSE_METAFILE=0
717 DEFAULT_wxUSE_WXGRAPH=0
718 DEFAULT_wxUSE_WXTREE=0
721 DEFAULT_wxUSE_UNICODE=1
722 DEFAULT_wxUSE_WCSRTOMBS=0
724 dnl ----------------------------------------------------------------
726 dnl ----------------------------------------------------------------
728 AC_OVERRIDES(gtk,gtk,
729 **--with-gtk use GTK,
736 AC_OVERRIDES(motif,motif,
737 **--with-motif use Motif/Lesstif,
740 dnl ----------------------------------------------------------------
742 dnl ----------------------------------------------------------------
744 AC_OVERRIDES(shared,shared,
745 **--with-shared create shared libraries,
748 AC_OVERRIDES(optimise,optimise,
749 **--with-optimise create optimised code,
752 AC_OVERRIDES(debug_flag,debug_flag,
753 **--with-debug_flag create code with WXDEBUG define set to 1,
756 AC_OVERRIDES(debug_info,debug_info,
757 **--with-debug_info create code with debuging information,
760 AC_OVERRIDES(mem_tracing,mem_tracing,
761 **--with-mem_traing create code with memory tracing,
764 AC_OVERRIDES(dmalloc,dmalloc,
765 **--with-dmalloc use dmalloc memory debug library (www.letters.com/dmalloc/),
768 AC_OVERRIDES(profile,profile,
769 **--with-profile create code with profiling information,
772 AC_OVERRIDES(apple_ieee, apple_ieee,
773 **--with_apple_ieee use the Apple IEEE codec,
776 dnl ----------------------------------------------------------------
777 dnl user options for libraries
778 dnl ----------------------------------------------------------------
780 AC_OVERRIDES(zlib,zlib,
781 **--with-zlib use zlib for LZW comression,
784 AC_OVERRIDES(libpng,libpng,
785 **--with-libpng use libpng (PNG image format),
788 AC_OVERRIDES(odbc,odbc,
789 **--with-odbc use iODBC and wxODBC classes,
792 AC_OVERRIDES(opengl,opengl,
793 **--with-opengl use OpenGL (or Mesa),
796 dnl ----------------------------------------------------------------
797 dnl user options for GUI control classes
798 dnl ----------------------------------------------------------------
800 AC_OVERRIDES(gauge,gauge,
801 **--with-gauge use wxGauge class,
804 AC_OVERRIDES(combobox,combobox,
805 **--with-combobox use wxComboBox class,
808 AC_OVERRIDES(scrollbar,scrollbar,
809 **--with-scrollbar use wxScrollbar class,
812 AC_OVERRIDES(listctrl,listctrl,
813 **--with-listctrl use wxListCtrl class,
816 AC_OVERRIDES(treectrl,treectrl,
817 **--with-treectrl use wxTreeCtrl class,
820 AC_OVERRIDES(grid,grid,
821 **--with-grid use wxGrid class,
824 AC_OVERRIDES(tab_dialog,tab_dialog,
825 **--with-tab_dialog use wxTabDia class,
828 AC_OVERRIDES(notebook,notebook,
829 **--with-notebook use wxNotebook class,
832 dnl ----------------------------------------------------------------
833 dnl user options for non-GUI classes
834 dnl ----------------------------------------------------------------
836 AC_OVERRIDES(timedate, timedate,
837 **--with-timedate use wxTime and wxDate classes,
840 AC_OVERRIDES(fraction,fraction,
841 **--with-fraction use wxFraction class,
844 AC_OVERRIDES(log,log,
845 **--with-log use logging system,
848 AC_OVERRIDES(intl,intl,
849 **--with-intl use internationalization system,
852 AC_OVERRIDES(config,config,
853 **--with-config use wxConfig class,
856 AC_OVERRIDES(streams,streams,
857 **--with-streams use wxStream etc classes,
860 AC_OVERRIDES(serial,serial,
861 **--with-serial use class serialization,
864 AC_OVERRIDES(file,file,
865 **--with-file use wxFile class,
868 AC_OVERRIDES(textfile,textfile,
869 **--with-textfile use wxTextFile class,
872 dnl ----------------------------------------------------------------
873 dnl user options for PostScript
874 dnl ----------------------------------------------------------------
876 AC_OVERRIDES(afmfonts,afmfonts,
877 **--with-afmfonts use Adobe Font Metric Font table,
878 wxUSE_AFM_FOR_POSTSCRIPT)
880 AC_OVERRIDES(normalized, normalized,
881 **--with-PS-normalized use normalized PS fonts,
882 WX_NORMALIZED_PS_FONTS)
884 AC_OVERRIDES(postscript, postscript,
885 **--with-postscript use wxPostscriptDC device context,
888 dnl ----------------------------------------------------------------
889 dnl user options for wxString and Unicode
890 dnl ----------------------------------------------------------------
892 AC_OVERRIDES(unicode,unicode,
893 **--with-unicode compile wxString with Unicode support,
896 AC_OVERRIDES(wcsrtombs,wcsrtombs,
897 **--with-wcsrtombs use wcsrtombs instead of (buggy in GNU libc5) wcstombs,
900 dnl ----------------------------------------------------------------
901 dnl user options for Prolog and Resources
902 dnl ----------------------------------------------------------------
904 AC_OVERRIDES(wxresources,wxresources,
905 **--with-wxresources use wxWindows's resources,
908 AC_OVERRIDES(prologio,prologio,
909 **--with-prologio use Prolog IO library,
912 AC_OVERRIDES(rpc,RPC,
913 **--with-rpc use Prolog's remote procedure calls,
916 dnl ----------------------------------------------------------------
917 dnl user options for misc stuff
918 dnl ----------------------------------------------------------------
920 AC_OVERRIDES(ipc,IPC,
921 **--with-ipc use interprocess communication (wxSocket etc.),
924 AC_OVERRIDES(resources,resources,
925 **--with-resources use X resources for saving information,
928 AC_OVERRIDES(clipboard,clipboard,
929 **--with-clipboard use wxClipboard classes,
932 AC_OVERRIDES(dnd,dnd,
933 **--with-dnd use Drag'n'Drop classes,
936 AC_OVERRIDES(constraints,constrains,
937 **--with-constraints use layout-constraints system,
940 dnl ----------------------------------------------------------------
941 dnl user options for architectures
942 dnl ----------------------------------------------------------------
944 AC_OVERRIDES(mdi,mdi,
945 **--with-mdi use multiple document interface architecture,
946 wxUSE_MDI_ARCHITECTURE)
948 AC_OVERRIDES(docview,docview,
949 **--with-docview use document view architecture,
950 wxUSE_DOC_VIEW_ARCHITECTURE)
952 AC_OVERRIDES(printarch,printarch,
953 **--with-printarch use printing architecture,
954 wxUSE_PRINTING_ARCHITECTURE)
956 AC_OVERRIDES(help,help,
957 **--with-help use help (using external browser at present),
960 dnl ----------------------------------------------------------------
961 dnl user options with no effect yet
962 dnl ----------------------------------------------------------------
964 dnl AC_OVERRIDES(metafile, metafile,
965 dnl **--with-metafile use metafile (no effect),
968 dnl AC_OVERRIDES(wxgraph,wxgraph,
969 dnl **--with-wxgraph use wxgraph (no effect),
972 dnl AC_OVERRIDES(wxtree,wxtree,
973 dnl **--with-wxtree use wxtree (no effect),
976 dnl AC_OVERRIDES(package,message,helpmessage,variable)
978 dnl ----------------------------------------------------------------
980 dnl ----------------------------------------------------------------
982 if test "$wxUSE_UNIX" = 1 ; then
986 dnl ----------------------------------------------------------------
987 dnl search for toolkit (widget sets)
988 dnl ----------------------------------------------------------------
999 if test "$wxUSE_GTK" = 1; then
1000 AM_PATH_GTK(1.0.4, [
1001 GUI_TK_INCLUDE="$GTK_CFLAGS"
1002 GUI_TK_LIBRARY="$GTK_LIBS"
1003 ], AC_MSG_ERROR(Is gtk-config in path and GTK+ is version 1.0.4?))
1005 TOOLKIT_DEF=__WXGTK__
1006 MAKEINCLUDE=../gtk.inc
1009 if test "$wxUSE_QT" = 1; then
1010 AC_MSG_CHECKING(for Qt includes)
1011 AC_PATH_FIND_INCLUDES($SEARCH_INCLUDE,qapp.h)
1012 if test "$ac_find_includes" != "" ; then
1013 AC_MSG_RESULT(found $ac_find_includes)
1014 AC_MSG_CHECKING(for Qt library)
1015 AC_PATH_FIND_LIBRARIES($SEARCH_LIB,qt)
1016 if test "$ac_find_libraries" != "" ; then
1017 AC_INCLUDE_PATH_EXIST($ac_find_includes,$CHECK_INCLUDE)
1018 AC_LINK_PATH_EXIST($ac_find_libraries,$CHECK_LIB)
1019 CHECK_LINK="$CHECK_INCLUDE $ac_path_to_link"
1020 CHECK_INCLUDE="$CHECK_INCLUDE $ac_path_to_include"
1021 AC_MSG_RESULT(found Qt at $ac_find_libraries)
1028 GUI_TK_LINK="-lXext -lX11 -lqt -lm"
1030 TOOLKIT_DEF=__WXQT__
1031 MAKEINCLUDE=../qt.inc
1034 if test "$wxUSE_MOTIF" = 1; then
1035 AC_MSG_CHECKING(for Motif/Lesstif includes)
1036 AC_PATH_FIND_INCLUDES($SEARCH_INCLUDE,Xm.h)
1037 if test "$ac_find_includes" != "" ; then
1038 AC_MSG_RESULT(found $ac_find_includes)
1039 AC_MSG_CHECKING(for Motif or Lesstif library)
1040 AC_PATH_FIND_LIBRARIES($SEARCH_LIB,Xm)
1041 if test "$ac_find_libraries" != "" ; then
1042 AC_INCLUDE_PATH_EXIST($ac_find_includes,$CHECK_INCLUDE)
1043 AC_LINK_PATH_EXIST($ac_find_libraries,$CHECK_LIB)
1044 CHECK_LINK="$CHECK_INCLUDE $ac_path_to_link"
1045 CHECK_INCLUDE="$CHECK_INCLUDE $ac_path_to_include"
1046 AC_MSG_RESULT(found at $ac_find_libraries)
1053 GUI_TK_LINK="-lXext -lXt -lX11 -lXm -lm"
1055 TOOLKIT_DEF=__WXMOTIF__
1056 MAKEINCLUDE=../motif.inc
1059 if test "$TOOLKIT" = ""; then
1060 AC_MSG_ERROR(You must specify a toolkit: --with-gtk --with-qt --with-motif)
1063 AC_SUBST(GUI_TK_INCLUDE)
1064 AC_SUBST(GUI_TK_LIBRARY)
1065 AC_SUBST(GUI_TK_LINK)
1068 AC_SUBST(TOOLKIT_DEF)
1070 AC_SUBST(MAKEINCLUDE)
1072 dnl ----------------------------------------------------------------
1073 dnl Register compile options for makefiles and setup.h
1074 dnl ----------------------------------------------------------------
1077 if test "$wxUSE_DEBUG_INFO" = 1 ; then
1082 if test "$wxUSE_DEBUG_FLAG" = 1 ; then
1083 AC_DEFINE_UNQUOTED(WXDEBUG,$wxUSE_DEBUG_FLAG)
1084 WXDEBUG_DEFINE="-D__WXDEBUG__"
1085 AC_SUBST(WXDEBUG_DEFINE)
1087 WXDEBUG_DEFINE="-DGTK_NO_CHECK_CASTS"
1088 AC_SUBST(WXDEBUG_DEFINE)
1091 if test "$wxUSE_MEM_TRACING" = 1 ; then
1092 AC_DEFINE_UNQUOTED(wxUSE_MEMORY_TRACING,$wxUSE_MEM_TRACING)
1093 AC_DEFINE_UNQUOTED(wxUSE_GLOBAL_MEMORY_OPERATORS,$wxUSE_MEM_TRACING)
1097 if test "$wxUSE_DMALLOC" = 1 ; then
1098 EXTRA_LINK="$EXTRA_LINK -ldmalloc"
1100 AC_SUBST(EXTRA_LINK)
1103 if test "$wxUSE_PROFILE" = 1 ; then
1108 CXXFLAGS=`echo "${CXXFLAGS}" | sed "s/\-O.//g" `
1109 CFLAGS=`echo "${CFLAGS}" | sed "s/\-O.//g" `
1110 if test "$wxUSE_OPTIMISE" = 0 ; then
1113 if test "$GCC" = yes ; then
1115 case "${canonical}" in
1117 OPTIMISE="${OPTIMISE} "
1127 if test "$wxUSE_APPLE_IEEE" = 1 ; then
1128 APPLE_IEEE="APPLE_IEEE"
1129 AC_DEFINE_UNQUOTED(wxUSE_APPLE_IEEE,$wxUSE_APPLE_IEEE)
1132 wxUSE_IOSTREAMH=$DEFAULT_wxUSE_IOSTREAMH
1133 AC_DEFINE_UNQUOTED(wxUSE_IOSTREAMH,$wxUSE_IOSTREAMH)
1135 dnl ----------------------------------------------------------------
1136 dnl Register library options for makefiles and setup.h
1137 dnl ----------------------------------------------------------------
1139 if test "$wxUSE_ZLIB" = 1 ; then
1140 AC_DEFINE_UNQUOTED(wxUSE_ZLIB,$wxUSE_ZLIB)
1143 if test "$wxUSE_LIBPNG" = 1 ; then
1144 AC_DEFINE_UNQUOTED(wxUSE_LIBPNG,$wxUSE_LIBPNG)
1148 if test "$wxUSE_ODBC" = 1 ; then
1149 AC_DEFINE_UNQUOTED(wxUSE_ODBC,$wxUSE_ODBC)
1150 IODBC_C_SRC="\$(IODBC_C_SRC)"
1152 AC_SUBST(IODBC_C_SRC)
1154 dnl ----------------------------------------------------------------
1155 dnl Register GUI-control options for makefiles and setup.h
1156 dnl ----------------------------------------------------------------
1158 if test "$wxUSE_GAUGE" = 1 ; then
1159 AC_DEFINE_UNQUOTED(wxUSE_GAUGE,$wxUSE_GAUGE)
1162 if test "$wxUSE_COMBOBOX" = 1 ; then
1163 AC_DEFINE_UNQUOTED(wxUSE_COMBOBOX,$wxUSE_COMBOBOX)
1166 if test "$wxUSE_SCROLLBAR" = 1 ; then
1167 AC_DEFINE_UNQUOTED(wxUSE_SCROLLBAR,$wxUSE_SCROLLBAR)
1170 if test "$wxUSE_LISTCTRL" = 1 ; then
1171 AC_DEFINE_UNQUOTED(wxUSE_LISTCTRL,$wxUSE_LISTCTRL)
1174 if test "$wxUSE_TREECTRL" = 1 ; then
1175 AC_DEFINE_UNQUOTED(wxUSE_TREECTRL,$wxUSE_TREECTRL)
1178 if test "$wxUSE_GRID" = 1 ; then
1179 AC_DEFINE_UNQUOTED(wxUSE_GRID,$wxUSE_GRID)
1182 if test "$wxUSE_TAB_DIALOG" = 1 ; then
1183 AC_DEFINE_UNQUOTED(wxUSE_TAB_DIALOG,$wxUSE_TAB_DIALOG)
1186 if test "$wxUSE_NOTEBOOK" = 1 ; then
1187 AC_DEFINE_UNQUOTED(wxUSE_NOTEBOOK,$wxUSE_NOTEBOOK)
1190 dnl ----------------------------------------------------------------
1191 dnl Register non-GUI class options for makefiles and setup.h
1192 dnl ----------------------------------------------------------------
1194 if test "$wxUSE_CONFIG" = 1 ; then
1195 AC_DEFINE_UNQUOTED(wxUSE_CONFIG,$wxUSE_CONFIG)
1198 if test "$wxUSE_TIMEDATE" = 1 ; then
1199 AC_DEFINE_UNQUOTED(wxUSE_TIMEDATE,$wxUSE_TIMEDATE)
1202 if test "$wxUSE_FRACTION" = 1 ; then
1203 AC_DEFINE_UNQUOTED(wxUSE_FRACTION,$wxUSE_FRACTION)
1206 if test "$wxUSE_LOG" = 1 ; then
1207 AC_DEFINE_UNQUOTED(wxUSE_LOG,$wxUSE_LOG)
1210 if test "$wxUSE_INTL" = 1 ; then
1211 AC_DEFINE_UNQUOTED(wxUSE_INTL,$wxUSE_INTL)
1214 if test "$wxUSE_STREAMS" = 1 ; then
1215 AC_DEFINE_UNQUOTED(wxUSE_STREAMS,$wxUSE_STREAMS)
1218 if test "$wxUSE_SERIAL" = 1 ; then
1219 AC_DEFINE_UNQUOTED(wxUSE_SERIAL,$wxUSE_SERIAL)
1222 if test "$wxUSE_FILE" = 1 ; then
1223 AC_DEFINE_UNQUOTED(wxUSE_FILE,$wxUSE_FILE)
1226 if test "$wxUSE_TEXTFILE" = 1 ; then
1227 AC_DEFINE_UNQUOTED(wxUSE_TEXTFILE,$wxUSE_TEXTFILE)
1230 dnl ----------------------------------------------------------------
1231 dnl Register Prolog and Resources options for makefiles and setup.h
1232 dnl ----------------------------------------------------------------
1234 if test "$wxUSE_RPC" = 1 ; then
1235 AC_DEFINE_UNQUOTED(wxUSE_RPC,$wxUSE_RPC)
1238 if test "$wxUSE_WX_RESOURCES" = 1 ; then
1239 AC_DEFINE_UNQUOTED(wxUSE_WX_RESOURCES,$wxUSE_WX_RESOURCES)
1242 if test "$wxUSE_PROLOGIO" = 1 ; then
1243 AC_DEFINE_UNQUOTED(wxUSE_PROLOGIO)
1246 dnl ----------------------------------------------------------------
1247 dnl Register PostScript options for makefiles and setup.h
1248 dnl ----------------------------------------------------------------
1250 if test "$wxUSE_POSTSCRIPT" = 1 ; then
1251 AC_DEFINE_UNQUOTED(wxUSE_POSTSCRIPT)
1254 AC_DEFINE_UNQUOTED(wxUSE_AFM_FOR_POSTSCRIPT,$wxUSE_AFM_FOR_POSTSCRIPT)
1256 AC_DEFINE_UNQUOTED(WX_NORMALIZED_PS_FONTS,$WX_NORMALIZED_PS_FONTS)
1258 dnl ----------------------------------------------------------------
1259 dnl Register architecture options for makefiles and setup.h
1260 dnl ----------------------------------------------------------------
1262 if test "$wxUSE_MDI_ARCHITECTURE" = 1 ; then
1263 AC_DEFINE_UNQUOTED(wxUSE_MDI_ARCHITECTURE,$wxUSE_MDI_ARCHITECTURE)
1266 if test "$wxUSE_DOC_VIEW_ARCHITECTURE" = 1 ; then
1267 AC_DEFINE_UNQUOTED(wxUSE_DOC_VIEW_ARCHITECTURE,$wxUSE_DOC_VIEW_ARCHITECTURE)
1270 if test "$wxUSE_PRINTING_ARCHITECTURE" = 1 ; then
1271 AC_DEFINE_UNQUOTED(wxUSE_PRINTING_ARCHITECTURE,$wxUSE_PRINTING_ARCHITECTURE)
1274 dnl ----------------------------------------------------------------
1275 dnl Register wxString options for makefiles and setup.h
1276 dnl ----------------------------------------------------------------
1278 if test "$wxUSE_UNICODE" = 1 ; then
1279 AC_DEFINE_UNQUOTED(wxUSE_UNICODE)
1282 if test "$wxUSE_WCSRTOMBS" = 1 ; then
1283 AC_DEFINE_UNQUOTED(wxUSE_WCSRTOMBS)
1286 dnl ----------------------------------------------------------------
1287 dnl Register misc options for makefiles and setup.h
1288 dnl ----------------------------------------------------------------
1290 if test "$wxUSE_IPC" = 1 ; then
1291 AC_DEFINE_UNQUOTED(wxUSE_IPC)
1294 if test "$wxUSE_RESOURCES" = 1 ; then
1295 AC_DEFINE_UNQUOTED(wxUSE_RESOURCES,$wxUSE_RESOURCES)
1298 if test "$wxUSE_CLIPBOARD" = 1 ; then
1299 AC_DEFINE_UNQUOTED(wxUSE_CLIPBOARD,$wxUSE_CLIPBOARD)
1302 if test "$wxUSE_DND" = 1 ; then
1303 AC_DEFINE_UNQUOTED(wxUSE_DND,$wxUSE_DND)
1306 if test "$wxUSE_CONSTRAINTS" = 1 ; then
1307 AC_DEFINE_UNQUOTED(wxUSE_CONSTRAINTS,$wxUSE_CONSTRAINTS)
1310 dnl ----------------------------------------------------------------
1312 dnl ----------------------------------------------------------------
1315 if test "$wxUSE_METAFILE" = 1 ; then
1317 AC_DEFINE_UNQUOTED(wxUSE_METAFILE,$wxUSE_METAFILE)
1322 if test "$wxUSE_HELP" = 1 ; then
1324 AC_DEFINE_UNQUOTED(wxUSE_HELP,$wxUSE_HELP)
1329 if test "$wxUSE_WXGRAPH" = 1 ; then
1331 AC_DEFINE_UNQUOTED(wxUSE_WXGRAPH,$wxUSE_WXGRAPH)
1336 if test "$wxUSE_WXTREE" = 1 ; then
1338 AC_DEFINE_UNQUOTED(wxUSE_WXTREE,$wxUSE_WXTREE)
1343 if test "$wxUSE_OPENGL" = 1 ; then
1347 dnl ----------------------------------------------------------------
1348 dnl select dynamic loader (used by iODBC to load drivers)
1349 dnl ----------------------------------------------------------------
1351 AC_CHECK_LIB(dl,main,[DL_LIBRARY=-ldl],[DL_LIBRARY=])
1352 AC_SUBST(DL_LIBRARY)
1354 dnl ----------------------------------------------------------------
1356 dnl ----------------------------------------------------------------
1360 UNIX_THREAD="gtk/threadno.cpp"
1362 AC_OVERRIDES(threads,threads,
1363 **--without-threads Force disabling threads,
1366 dnl AC_ARG_WITH(threads,
1367 dnl [**--without-threads Force disabling threads ],
1368 dnl [wxUSE_THREADS="$withval"])
1370 if test "$wxUSE_THREADS" = "1"; then
1371 UNIX_THREAD="gtk/threadno.cpp"
1373 dnl For glibc 2 users who have the old libc 5 too
1375 AC_CHECK_LIB(pthread-0.7, pthread_create, [
1376 UNIX_THREAD="gtk/threadpsx.cpp"
1377 THREADS_LINK="-lpthread-0.7"
1379 AC_CHECK_HEADER(sys/prctl.h, [
1380 UNIX_THREAD="gtk/threadsgi.cpp"
1383 dnl pthread_create is always available in pthread but it seems not to be
1384 dnl the case for pthread_setcanceltype.
1386 AC_CHECK_LIB(pthread, pthread_setcanceltype, [
1387 UNIX_THREAD="gtk/threadpsx.cpp"
1388 THREADS_LINK="-lpthread"
1391 AC_CHECK_LIB(pthreads, pthread_setcanceltype, [
1392 UNIX_THREAD="gtk/threadpsx.cpp"
1393 THREADS_LINK="-lpthreads"
1397 if test "$wxUSE_MOTIF" = "1"; then
1398 UNIX_THREAD="motif/thread.cpp"
1401 if test -z "$UNIX_THREAD"; then
1405 AC_SUBST(UNIX_THREAD)
1406 AC_SUBST(THREADS_LINK)
1407 AC_DEFINE(wxUSE_THREADS)
1409 dnl defines UNIX_THREAD it contains the source file to use for threads. (GL)
1410 dnl defines THREADS_LINK it contains the thread library to link with. (GL)
1411 dnl defines wxUSE_THREADS if thread support is activated. (GL)
1413 dnl ----------------------------------------------------------------
1414 dnl search for opengl
1415 dnl ----------------------------------------------------------------
1421 if test "$wxUSE_OPENGL" = 1; then
1422 dnl checking OPENGL includes
1423 AC_MSG_CHECKING(for OpenGL includes)
1424 AC_PATH_FIND_INCLUDES($SEARCH_INCLUDE,GL/gl.h)
1425 if test "$ac_find_includes" != "" ; then
1426 OPENGL_INCLUDE="-I$ac_find_includes"
1427 AC_MSG_RESULT(found $ac_find_includes)
1428 dnl checking OPENGL libraries
1429 AC_MSG_CHECKING(for OpenGL library)
1430 AC_PATH_FIND_LIBRARIES($SEARCH_LIB,GL)
1431 if test "$ac_find_libraries" != "" ; then
1432 AC_INCLUDE_PATH_EXIST($ac_find_includes,$CHECK_INCLUDE)
1433 AC_LINK_PATH_EXIST($ac_find_libraries,$CHECK_LIB)
1434 CHECK_LINK="$CHECK_INCLUDE $ac_path_to_link"
1435 CHECK_INCLUDE="$CHECK_INCLUDE $ac_path_to_include"
1436 OPENGL_LIBRARY="$ac_path_to_link"
1437 OPENGL_INCLUDE="$ac_path_to_include"
1439 AC_MSG_RESULT(found OpenGL at $ac_find_libraries)
1441 AC_PATH_FIND_LIBRARIES($SEARCH_LIB,MesaGL)
1442 if test "$ac_find_libraries" != "" ; then
1443 AC_INCLUDE_PATH_EXIST($ac_find_includes,$CHECK_INCLUDE)
1444 AC_LINK_PATH_EXIST($ac_find_libraries,$CHECK_LIB)
1445 CHECK_LINK="$CHECK_INCLUDE $ac_path_to_link"
1446 CHECK_INCLUDE="$CHECK_INCLUDE $ac_path_to_include"
1447 OPENGL_LIBRARY="$ac_path_to_link"
1448 OPENGL_INCLUDE="$ac_path_to_include"
1449 OPENGL_LINK="-lMesaGL"
1450 AC_MSG_RESULT(found MESA at $ac_find_libraries)
1460 dnl ----------------------------------------------------------------
1462 dnl ----------------------------------------------------------------
1464 wxUSE_GLX=$wxUSE_OPENGL
1465 if test "$wxUSE_OPENGL" != 1; then
1472 AC_DEFINE_UNQUOTED(wxUSE_GLX,$wxUSE_GLX)
1473 AC_SUBST(OPENGL_INCLUDE)
1474 AC_SUBST(OPENGL_LIBRARY)
1475 AC_SUBST(OPENGL_LINK)
1478 dnl ------------------------------------------------------------------------
1479 dnl compiler options for shared libs
1480 dnl ------------------------------------------------------------------------
1484 case "${canonical}" in
1487 if test "$GCC" != "yes" ; then
1488 CXXFLAGS="${CXXFLAGS} +a1 -z -Aa -D_HPUX_SOURCE"
1489 CFLAGS="${CFLAGS} -z -D_HPUX_SOURCE"
1495 CREATE_SHARED=sharedHpux
1500 CREATE_SHARED=sharedLinux
1503 *-*-irix5* | *-*-irix6* )
1504 # PICFLAGS can remain empty, as pic is the default
1506 CREATE_SHARED=sharedIrix
1511 if test "$GCC" != "yes" ; then
1516 CREATE_SHARED=sharedSolaris2
1521 if test "$GCC" != "yes" ; then
1527 CREATE_SHARED=sharedSunos4
1531 *-*-freebsd* | *-*-netbsd*)
1533 CREATE_SHARED=sharedBsd
1539 CREATE_SHARED=sharedOSF
1543 if test "$GCC" != "yes" ; then
1548 CREATE_SHARED=sharedDgux
1553 if test "$GCC" != "yes" ; then
1558 CREATE_SHARED=sharedSysV
1563 if test "$GCC" != "yes" ; then
1568 CREATE_SHARED=sharedAIX
1577 if test "x$GCC" = xyes; then
1578 CFLAGS="${CFLAGS} -Wall"
1581 if test "x$GXX" = xyes; then
1582 CXXFLAGS="${CXXFLAGS} -Wall"
1585 if test "$wxUSE_SHARED" != 1; then
1592 AC_SUBST(CREATE_SHARED)
1594 dnl ------------------------------------------------------------------------
1595 dnl finish and clean-up
1596 dnl ------------------------------------------------------------------------
1598 dnl add OS to list of configured
1599 echo $OS >> system.list
1601 AC_CONFIG_HEADER(./include/wx/gtk/setup.h:./setup/setup.hin)
1602 AC_OUTPUT(./setup/substit ./wx-config:./wx-config.in,./setup/general/createall)