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)
440 dnl check for vprintf/vsprintf() which are GNU extensions
442 dnl check for vsnprintf() which is another GNU extension
443 AC_CHECK_FUNC(vsnprintf)
447 AC_CHECK_HEADERS(iostream)
448 if test "x$HAVE_IOSTREAM" = "x" ; then
449 AC_DEFINE(wxUSE_IOSTREAMH)
453 dnl defines HAVE_IOSTREAM
454 dnl ###################
455 dnl # checks typedefs #
456 dnl ###################
458 dnl defines GETGROUPS_T
460 dnl defines mode_t if not already defined
462 dnl defines off_t if not already defined
464 dnl defines pid_t if not already defined
466 dnl defines RETSIGTYPE for the correct return type of signal
468 dnl defines size_t if not already defined
470 dnl defines uid_t and gid_t if not already defined
472 dnl #####################
473 dnl # checks structures #
474 dnl #####################
477 dnl defines STAT_MACROS_BROKEN if S_ISDIR and S_ISREG
478 dnl do not work properly
480 dnl defines TIME_WITH_SYS_TIME if time.h and sys/time.h can
483 dnl defines HAVE_ST_BLKSIZE if struct stat contains st_blksize
485 dnl defines HAVE_ST_BLOCKS if struct stat contains st_blocks
487 dnl defines HAVE_ST_RDEV if struct stat contains st_rdev
489 dnl defines TM_IN_SYS_TIME if struct tm is not in time.h
491 dnl defines HAVE_ST_BLKSIZE if struct tm contains tm_zone
493 dnl defines HAVE_TZNAME if external array tzname is found
495 dnl ###################################
496 dnl # checks compiler characteristics #
497 dnl ###################################
501 dnl defines const to be empty if c-compiler does not support const fully
503 dnl defines inline to a sensible value for the c-compiler
505 dnl defines __CHAR_UNSIGNED__ if char is unsigned
507 dnl defines HAVE_LONGDOUBLE if compiler supports long double
510 dnl defines WORDS_BIGENDIAN if system is big endian
512 AC_CHECK_SIZEOF(int *)
514 AC_CHECK_SIZEOF(long)
515 dnl defines the size of certain types of variables in SIZEOF_???
517 dnl ############################
518 dnl # checks library functions #
519 dnl ############################
521 dnl ##########################
522 dnl # checks system services #
523 dnl ##########################
526 AC_SYS_LONG_FILE_NAMES
527 dnl defines HAVE_LONG_FILENAMES if filenames longer then
528 dnl 14 chars are supported
530 dnl AC_SYS_RESTARTABLE_SYSCALLS
531 dnl defines HAVE_RESTARTABLE_SYSCALLS if the system restarts a
532 dnl system call that is interrupted
535 dnl #################
536 dnl # checks PARSER #
537 dnl #################
542 dnl defines YACC with the appropriate command
547 dnl defines LEX with the appropriate command
548 dnl defines LEXLIB with the appropriate library
549 dnl what type is yytext
551 dnl defines YYTEXT_POINTER if yytext is char*
552 dnl defines LEX_OUTPUT_ROOT as to the base of the
553 dnl filename output by the lexer
555 dnl ------------------------------------------------------------------------
557 dnl ------------------------------------------------------------------------
559 CHECK_INCLUDE="-I/usr/include $X_CFLAGS"
560 CHECK_LIB="-L/lib -L/usr/lib $X_LIBS"
562 dnl ------------------------------------------------------------------------
564 dnl ------------------------------------------------------------------------
568 configuration=$host_alias
570 dnl ------------------------------------------------------------------------
572 dnl ------------------------------------------------------------------------
595 case "${canonical}" in
604 if test "x$TMP" = "xalpha"
610 *-*-irix5* | *-*-irix6* )
621 AC_DEFINE(__SOLARIS__)
632 *-*-freebsd* | *-*-netbsd*)
635 AC_DEFINE(__FREEBSD__)
665 AC_MSG_ERROR(I don't know your system type.)
668 dnl ------------------------------------------------------------------------
669 dnl defaults for command options
670 dnl ------------------------------------------------------------------------
676 DEFAULT_wxUSE_MOTIF=0
678 DEFAULT_wxUSE_THREADS=1
680 DEFAULT_wxUSE_SHARED=1
681 DEFAULT_wxUSE_OPTIMISE=1
682 DEFAULT_wxUSE_PROFILE=0
683 DEFAULT_wxUSE_DEBUG_FLAG=0
684 DEFAULT_wxUSE_DEBUG_INFO=0
685 DEFAULT_wxUSE_MEM_TRACING=0
686 DEFAULT_wxUSE_DMALLOC=0
687 DEFAULT_wxUSE_APPLE_IEEE=1
688 DEFAULT_wxUSE_IOSTREAMH=1
691 DEFAULT_wxUSE_LIBPNG=1
694 DEFAULT_wxUSE_COMBOBOX=1
695 DEFAULT_wxUSE_GAUGE=1
696 DEFAULT_wxUSE_SCROLLBAR=1
697 DEFAULT_wxUSE_LISTCTRL=1
698 DEFAULT_wxUSE_TREECTRL=1
700 DEFAULT_wxUSE_TAB_DIALOG=1
701 DEFAULT_wxUSE_NOTEBOOK=1
703 DEFAULT_wxUSE_TIMEDATE=1
704 DEFAULT_wxUSE_FRACTION=1
707 DEFAULT_wxUSE_CONFIG=1
708 DEFAULT_wxUSE_STREAMS=1
709 DEFAULT_wxUSE_SERIAL=1
711 DEFAULT_wxUSE_TEXTFILE=1
713 DEFAULT_wxUSE_AFM_FOR_POSTSCRIPT=1
714 DEFAULT_WX_NORMALIZED_PS_FONTS=1
715 DEFAULT_wxUSE_POSTSCRIPT=1
718 DEFAULT_wxUSE_RESOURCES=1
719 DEFAULT_wxUSE_CONSTRAINTS=1
720 DEFAULT_wxUSE_CLIPBOARD=0
723 DEFAULT_wxUSE_MDI_ARCHITECTURE=1
724 DEFAULT_wxUSE_DOC_VIEW_ARCHITECTURE=1
725 DEFAULT_wxUSE_PRINTING_ARCHITECTURE=1
727 DEFAULT_wxUSE_PROLOGIO=1
728 DEFAULT_wxUSE_WX_RESOURCES=1
731 DEFAULT_wxUSE_OPENGL=0
732 DEFAULT_wxUSE_METAFILE=0
733 DEFAULT_wxUSE_WXGRAPH=0
734 DEFAULT_wxUSE_WXTREE=0
737 DEFAULT_wxUSE_UNICODE=1
738 DEFAULT_wxUSE_WCSRTOMBS=0
740 dnl ----------------------------------------------------------------
742 dnl ----------------------------------------------------------------
744 AC_OVERRIDES(gtk,gtk,
745 **--with-gtk use GTK,
752 AC_OVERRIDES(motif,motif,
753 **--with-motif use Motif/Lesstif,
756 dnl ----------------------------------------------------------------
758 dnl ----------------------------------------------------------------
760 AC_OVERRIDES(shared,shared,
761 **--with-shared create shared libraries,
764 AC_OVERRIDES(optimise,optimise,
765 **--with-optimise create optimised code,
768 AC_OVERRIDES(debug_flag,debug_flag,
769 **--with-debug_flag create code with WXDEBUG define set to 1,
772 AC_OVERRIDES(debug_info,debug_info,
773 **--with-debug_info create code with debuging information,
776 AC_OVERRIDES(mem_tracing,mem_tracing,
777 **--with-mem_traing create code with memory tracing,
780 AC_OVERRIDES(dmalloc,dmalloc,
781 **--with-dmalloc use dmalloc memory debug library (www.letters.com/dmalloc/),
784 AC_OVERRIDES(profile,profile,
785 **--with-profile create code with profiling information,
788 AC_OVERRIDES(apple_ieee, apple_ieee,
789 **--with_apple_ieee use the Apple IEEE codec,
792 dnl ----------------------------------------------------------------
793 dnl user options for libraries
794 dnl ----------------------------------------------------------------
796 AC_OVERRIDES(zlib,zlib,
797 **--with-zlib use zlib for LZW comression,
800 AC_OVERRIDES(libpng,libpng,
801 **--with-libpng use libpng (PNG image format),
804 AC_OVERRIDES(odbc,odbc,
805 **--with-odbc use iODBC and wxODBC classes,
808 AC_OVERRIDES(opengl,opengl,
809 **--with-opengl use OpenGL (or Mesa),
812 dnl ----------------------------------------------------------------
813 dnl user options for GUI control classes
814 dnl ----------------------------------------------------------------
816 AC_OVERRIDES(gauge,gauge,
817 **--with-gauge use wxGauge class,
820 AC_OVERRIDES(combobox,combobox,
821 **--with-combobox use wxComboBox class,
824 AC_OVERRIDES(scrollbar,scrollbar,
825 **--with-scrollbar use wxScrollbar class,
828 AC_OVERRIDES(listctrl,listctrl,
829 **--with-listctrl use wxListCtrl class,
832 AC_OVERRIDES(treectrl,treectrl,
833 **--with-treectrl use wxTreeCtrl class,
836 AC_OVERRIDES(grid,grid,
837 **--with-grid use wxGrid class,
840 AC_OVERRIDES(tab_dialog,tab_dialog,
841 **--with-tab_dialog use wxTabDia class,
844 AC_OVERRIDES(notebook,notebook,
845 **--with-notebook use wxNotebook class,
848 dnl ----------------------------------------------------------------
849 dnl user options for non-GUI classes
850 dnl ----------------------------------------------------------------
852 AC_OVERRIDES(timedate, timedate,
853 **--with-timedate use wxTime and wxDate classes,
856 AC_OVERRIDES(fraction,fraction,
857 **--with-fraction use wxFraction class,
860 AC_OVERRIDES(log,log,
861 **--with-log use logging system,
864 AC_OVERRIDES(intl,intl,
865 **--with-intl use internationalization system,
868 AC_OVERRIDES(config,config,
869 **--with-config use wxConfig class,
872 AC_OVERRIDES(streams,streams,
873 **--with-streams use wxStream etc classes,
876 AC_OVERRIDES(serial,serial,
877 **--with-serial use class serialization,
880 AC_OVERRIDES(file,file,
881 **--with-file use wxFile class,
884 AC_OVERRIDES(textfile,textfile,
885 **--with-textfile use wxTextFile class,
888 dnl ----------------------------------------------------------------
889 dnl user options for PostScript
890 dnl ----------------------------------------------------------------
892 AC_OVERRIDES(afmfonts,afmfonts,
893 **--with-afmfonts use Adobe Font Metric Font table,
894 wxUSE_AFM_FOR_POSTSCRIPT)
896 AC_OVERRIDES(normalized, normalized,
897 **--with-PS-normalized use normalized PS fonts,
898 WX_NORMALIZED_PS_FONTS)
900 AC_OVERRIDES(postscript, postscript,
901 **--with-postscript use wxPostscriptDC device context,
904 dnl ----------------------------------------------------------------
905 dnl user options for wxString and Unicode
906 dnl ----------------------------------------------------------------
908 AC_OVERRIDES(unicode,unicode,
909 **--with-unicode compile wxString with Unicode support,
912 AC_OVERRIDES(wcsrtombs,wcsrtombs,
913 **--with-wcsrtombs use wcsrtombs instead of (buggy in GNU libc5) wcstombs,
916 dnl ----------------------------------------------------------------
917 dnl user options for Prolog and Resources
918 dnl ----------------------------------------------------------------
920 AC_OVERRIDES(wxresources,wxresources,
921 **--with-wxresources use wxWindows's resources,
924 AC_OVERRIDES(prologio,prologio,
925 **--with-prologio use Prolog IO library,
928 AC_OVERRIDES(rpc,RPC,
929 **--with-rpc use Prolog's remote procedure calls,
932 dnl ----------------------------------------------------------------
933 dnl user options for misc stuff
934 dnl ----------------------------------------------------------------
936 AC_OVERRIDES(ipc,IPC,
937 **--with-ipc use interprocess communication (wxSocket etc.),
940 AC_OVERRIDES(resources,resources,
941 **--with-resources use X resources for saving information,
944 AC_OVERRIDES(clipboard,clipboard,
945 **--with-clipboard use wxClipboard classes,
948 AC_OVERRIDES(dnd,dnd,
949 **--with-dnd use Drag'n'Drop classes,
952 AC_OVERRIDES(constraints,constrains,
953 **--with-constraints use layout-constraints system,
956 dnl ----------------------------------------------------------------
957 dnl user options for architectures
958 dnl ----------------------------------------------------------------
960 AC_OVERRIDES(mdi,mdi,
961 **--with-mdi use multiple document interface architecture,
962 wxUSE_MDI_ARCHITECTURE)
964 AC_OVERRIDES(docview,docview,
965 **--with-docview use document view architecture,
966 wxUSE_DOC_VIEW_ARCHITECTURE)
968 AC_OVERRIDES(printarch,printarch,
969 **--with-printarch use printing architecture,
970 wxUSE_PRINTING_ARCHITECTURE)
972 AC_OVERRIDES(help,help,
973 **--with-help use help (using external browser at present),
976 dnl ----------------------------------------------------------------
977 dnl user options with no effect yet
978 dnl ----------------------------------------------------------------
980 dnl AC_OVERRIDES(metafile, metafile,
981 dnl **--with-metafile use metafile (no effect),
984 dnl AC_OVERRIDES(wxgraph,wxgraph,
985 dnl **--with-wxgraph use wxgraph (no effect),
988 dnl AC_OVERRIDES(wxtree,wxtree,
989 dnl **--with-wxtree use wxtree (no effect),
992 dnl AC_OVERRIDES(package,message,helpmessage,variable)
994 dnl ----------------------------------------------------------------
996 dnl ----------------------------------------------------------------
998 if test "$wxUSE_UNIX" = 1 ; then
1002 dnl ----------------------------------------------------------------
1003 dnl search for toolkit (widget sets)
1004 dnl ----------------------------------------------------------------
1017 if test "$wxUSE_GTK" = 1; then
1018 AM_PATH_GTK(1.0.4, [
1019 GUI_TK_INCLUDE="$GTK_CFLAGS"
1020 GUI_TK_LIBRARY="$GTK_LIBS"
1021 ], AC_MSG_ERROR(Is gtk-config in path and GTK+ is version 1.0.4?))
1023 TOOLKIT_DEF=__WXGTK__
1024 WX_LINK=-lwx_gtk_1_0
1025 MAKEINCLUDE=../gtk.inc
1028 if test "$wxUSE_QT" = 1; then
1029 AC_MSG_CHECKING(for Qt includes)
1030 AC_PATH_FIND_INCLUDES($SEARCH_INCLUDE,qapp.h)
1031 if test "$ac_find_includes" != "" ; then
1032 AC_MSG_RESULT(found $ac_find_includes)
1033 AC_MSG_CHECKING(for Qt library)
1034 AC_PATH_FIND_LIBRARIES($SEARCH_LIB,qt)
1035 if test "$ac_find_libraries" != "" ; then
1036 AC_INCLUDE_PATH_EXIST($ac_find_includes,$CHECK_INCLUDE)
1037 AC_LINK_PATH_EXIST($ac_find_libraries,$CHECK_LIB)
1038 CHECK_LINK="$CHECK_INCLUDE $ac_path_to_link"
1039 CHECK_INCLUDE="$CHECK_INCLUDE $ac_path_to_include"
1040 AC_MSG_RESULT(found Qt at $ac_find_libraries)
1047 GUI_TK_LINK="-lX11 -lqt -lm"
1049 TOOLKIT_DEF=__WXQT__
1051 MAKEINCLUDE=../qt.inc
1054 if test "$wxUSE_MOTIF" = 1; then
1055 AC_MSG_CHECKING(for Motif/Lesstif includes)
1056 AC_PATH_FIND_INCLUDES($SEARCH_INCLUDE,Xm.h)
1057 if test "$ac_find_includes" != "" ; then
1058 AC_MSG_RESULT(found $ac_find_includes)
1059 AC_MSG_CHECKING(for Motif/Lesstif library)
1060 AC_PATH_FIND_LIBRARIES($SEARCH_LIB,Xm)
1061 if test "$ac_find_libraries" != "" ; then
1062 AC_INCLUDE_PATH_EXIST($ac_find_includes,$CHECK_INCLUDE)
1063 AC_LINK_PATH_EXIST($ac_find_libraries,$CHECK_LIB)
1064 CHECK_LINK="$CHECK_LIB $ac_path_to_link"
1065 CHECK_INCLUDE="$CHECK_INCLUDE $ac_path_to_include"
1066 AC_MSG_RESULT(found at $ac_find_libraries)
1067 AC_MSG_CHECKING(for Xt library)
1068 AC_PATH_FIND_LIBRARIES($SEARCH_LIB,Xt)
1069 if test "$ac_find_libraries" != "" ; then
1070 AC_LINK_PATH_EXIST($ac_find_libraries,$CHECK_LIB)
1071 CHECK_LINK="$CHECK_LIB $ac_path_to_link"
1072 AC_MSG_RESULT(found at $ac_find_libraries)
1073 AC_MSG_CHECKING(for Xpm library)
1074 AC_PATH_FIND_LIBRARIES($SEARCH_LIB,Xpm)
1075 if test "$ac_find_libraries" != "" ; then
1076 AC_LINK_PATH_EXIST($ac_find_libraries,$CHECK_LIB)
1077 CHECK_LINK="$CHECK_LIB $ac_path_to_link"
1078 AC_MSG_RESULT(found at $ac_find_libraries)
1092 GUI_TK_LINK="-lXm -lXmu -lXt -lXpm -lX11 -lm"
1093 GUI_TK_LINK="$CHECK_LINK $GUI_TK_LINK"
1095 TOOLKIT_DEF="__WXMOTIF__ -D__LINUX__ -D__UNIX__"
1097 MAKEINCLUDE=../motif.inc
1100 if test "$TOOLKIT" = ""; then
1101 AC_MSG_ERROR(You must specify a toolkit: --with-gtk --with-qt --with-motif)
1104 AC_SUBST(GUI_TK_INCLUDE)
1105 AC_SUBST(GUI_TK_LIBRARY)
1106 AC_SUBST(GUI_TK_LINK)
1111 AC_SUBST(TOOLKIT_DEF)
1113 AC_SUBST(MAKEINCLUDE)
1115 dnl ----------------------------------------------------------------
1116 dnl Register compile options for makefiles and setup.h
1117 dnl ----------------------------------------------------------------
1120 if test "$wxUSE_DEBUG_INFO" = 1 ; then
1126 if test "$wxUSE_DEBUG_FLAG" = 1 ; then
1127 AC_DEFINE_UNQUOTED(WXDEBUG,$wxUSE_DEBUG_FLAG)
1128 WXDEBUG_DEFINE="-D__WXDEBUG__"
1129 AC_SUBST(WXDEBUG_DEFINE)
1131 WXDEBUG_DEFINE="-DGTK_NO_CHECK_CASTS"
1132 AC_SUBST(WXDEBUG_DEFINE)
1135 if test "$wxUSE_MEM_TRACING" = 1 ; then
1136 AC_DEFINE_UNQUOTED(wxUSE_MEMORY_TRACING,$wxUSE_MEM_TRACING)
1137 AC_DEFINE_UNQUOTED(wxUSE_GLOBAL_MEMORY_OPERATORS,$wxUSE_MEM_TRACING)
1141 if test "$wxUSE_DMALLOC" = 1 ; then
1142 EXTRA_LINK="$EXTRA_LINK -ldmalloc"
1144 AC_SUBST(EXTRA_LINK)
1147 if test "$wxUSE_PROFILE" = 1 ; then
1152 CXXFLAGS=`echo "${CXXFLAGS}" | sed "s/\-O.//g" `
1153 CFLAGS=`echo "${CFLAGS}" | sed "s/\-O.//g" `
1154 if test "$wxUSE_OPTIMISE" = 0 ; then
1157 if test "$GCC" = yes ; then
1159 case "${canonical}" in
1161 OPTIMISE="${OPTIMISE} "
1171 if test "$wxUSE_APPLE_IEEE" = 1 ; then
1172 APPLE_IEEE="APPLE_IEEE"
1173 AC_DEFINE_UNQUOTED(wxUSE_APPLE_IEEE,$wxUSE_APPLE_IEEE)
1176 wxUSE_IOSTREAMH=$DEFAULT_wxUSE_IOSTREAMH
1177 AC_DEFINE_UNQUOTED(wxUSE_IOSTREAMH,$wxUSE_IOSTREAMH)
1179 dnl ----------------------------------------------------------------
1180 dnl Register library options for makefiles and setup.h
1181 dnl ----------------------------------------------------------------
1183 if test "$wxUSE_ZLIB" = 1 ; then
1184 AC_DEFINE_UNQUOTED(wxUSE_ZLIB,$wxUSE_ZLIB)
1187 if test "$wxUSE_LIBPNG" = 1 ; then
1188 AC_DEFINE_UNQUOTED(wxUSE_LIBPNG,$wxUSE_LIBPNG)
1192 if test "$wxUSE_ODBC" = 1 ; then
1193 AC_DEFINE_UNQUOTED(wxUSE_ODBC,$wxUSE_ODBC)
1194 IODBC_C_SRC="\$(IODBC_C_SRC)"
1196 AC_SUBST(IODBC_C_SRC)
1198 dnl ----------------------------------------------------------------
1199 dnl Register GUI-control options for makefiles and setup.h
1200 dnl ----------------------------------------------------------------
1202 if test "$wxUSE_GAUGE" = 1 ; then
1203 AC_DEFINE_UNQUOTED(wxUSE_GAUGE,$wxUSE_GAUGE)
1206 if test "$wxUSE_COMBOBOX" = 1 ; then
1207 AC_DEFINE_UNQUOTED(wxUSE_COMBOBOX,$wxUSE_COMBOBOX)
1210 if test "$wxUSE_SCROLLBAR" = 1 ; then
1211 AC_DEFINE_UNQUOTED(wxUSE_SCROLLBAR,$wxUSE_SCROLLBAR)
1214 if test "$wxUSE_LISTCTRL" = 1 ; then
1215 AC_DEFINE_UNQUOTED(wxUSE_LISTCTRL,$wxUSE_LISTCTRL)
1218 if test "$wxUSE_TREECTRL" = 1 ; then
1219 AC_DEFINE_UNQUOTED(wxUSE_TREECTRL,$wxUSE_TREECTRL)
1222 if test "$wxUSE_GRID" = 1 ; then
1223 AC_DEFINE_UNQUOTED(wxUSE_GRID,$wxUSE_GRID)
1226 if test "$wxUSE_TAB_DIALOG" = 1 ; then
1227 AC_DEFINE_UNQUOTED(wxUSE_TAB_DIALOG,$wxUSE_TAB_DIALOG)
1230 if test "$wxUSE_NOTEBOOK" = 1 ; then
1231 AC_DEFINE_UNQUOTED(wxUSE_NOTEBOOK,$wxUSE_NOTEBOOK)
1234 dnl ----------------------------------------------------------------
1235 dnl Register non-GUI class options for makefiles and setup.h
1236 dnl ----------------------------------------------------------------
1238 if test "$wxUSE_CONFIG" = 1 ; then
1239 AC_DEFINE_UNQUOTED(wxUSE_CONFIG,$wxUSE_CONFIG)
1242 if test "$wxUSE_TIMEDATE" = 1 ; then
1243 AC_DEFINE_UNQUOTED(wxUSE_TIMEDATE,$wxUSE_TIMEDATE)
1246 if test "$wxUSE_FRACTION" = 1 ; then
1247 AC_DEFINE_UNQUOTED(wxUSE_FRACTION,$wxUSE_FRACTION)
1250 if test "$wxUSE_LOG" = 1 ; then
1251 AC_DEFINE_UNQUOTED(wxUSE_LOG,$wxUSE_LOG)
1254 if test "$wxUSE_INTL" = 1 ; then
1255 AC_DEFINE_UNQUOTED(wxUSE_INTL,$wxUSE_INTL)
1258 if test "$wxUSE_STREAMS" = 1 ; then
1259 AC_DEFINE_UNQUOTED(wxUSE_STREAMS,$wxUSE_STREAMS)
1262 if test "$wxUSE_SERIAL" = 1 ; then
1263 AC_DEFINE_UNQUOTED(wxUSE_SERIAL,$wxUSE_SERIAL)
1266 if test "$wxUSE_FILE" = 1 ; then
1267 AC_DEFINE_UNQUOTED(wxUSE_FILE,$wxUSE_FILE)
1270 if test "$wxUSE_TEXTFILE" = 1 ; then
1271 AC_DEFINE_UNQUOTED(wxUSE_TEXTFILE,$wxUSE_TEXTFILE)
1274 dnl ----------------------------------------------------------------
1275 dnl Register Prolog and Resources options for makefiles and setup.h
1276 dnl ----------------------------------------------------------------
1278 if test "$wxUSE_RPC" = 1 ; then
1279 AC_DEFINE_UNQUOTED(wxUSE_RPC,$wxUSE_RPC)
1282 if test "$wxUSE_WX_RESOURCES" = 1 ; then
1283 AC_DEFINE_UNQUOTED(wxUSE_WX_RESOURCES,$wxUSE_WX_RESOURCES)
1286 if test "$wxUSE_PROLOGIO" = 1 ; then
1287 AC_DEFINE_UNQUOTED(wxUSE_PROLOGIO)
1290 dnl ----------------------------------------------------------------
1291 dnl Register PostScript options for makefiles and setup.h
1292 dnl ----------------------------------------------------------------
1294 if test "$wxUSE_POSTSCRIPT" = 1 ; then
1295 AC_DEFINE_UNQUOTED(wxUSE_POSTSCRIPT)
1298 AC_DEFINE_UNQUOTED(wxUSE_AFM_FOR_POSTSCRIPT,$wxUSE_AFM_FOR_POSTSCRIPT)
1300 AC_DEFINE_UNQUOTED(WX_NORMALIZED_PS_FONTS,$WX_NORMALIZED_PS_FONTS)
1302 dnl ----------------------------------------------------------------
1303 dnl Register architecture options for makefiles and setup.h
1304 dnl ----------------------------------------------------------------
1306 if test "$wxUSE_MDI_ARCHITECTURE" = 1 ; then
1307 AC_DEFINE_UNQUOTED(wxUSE_MDI_ARCHITECTURE,$wxUSE_MDI_ARCHITECTURE)
1310 if test "$wxUSE_DOC_VIEW_ARCHITECTURE" = 1 ; then
1311 AC_DEFINE_UNQUOTED(wxUSE_DOC_VIEW_ARCHITECTURE,$wxUSE_DOC_VIEW_ARCHITECTURE)
1314 if test "$wxUSE_PRINTING_ARCHITECTURE" = 1 ; then
1315 AC_DEFINE_UNQUOTED(wxUSE_PRINTING_ARCHITECTURE,$wxUSE_PRINTING_ARCHITECTURE)
1318 dnl ----------------------------------------------------------------
1319 dnl Register wxString options for makefiles and setup.h
1320 dnl ----------------------------------------------------------------
1322 if test "$wxUSE_UNICODE" = 1 ; then
1323 AC_DEFINE_UNQUOTED(wxUSE_UNICODE)
1326 if test "$wxUSE_WCSRTOMBS" = 1 ; then
1327 AC_DEFINE_UNQUOTED(wxUSE_WCSRTOMBS)
1330 dnl ----------------------------------------------------------------
1331 dnl Register misc options for makefiles and setup.h
1332 dnl ----------------------------------------------------------------
1334 if test "$wxUSE_IPC" = 1 ; then
1335 AC_DEFINE_UNQUOTED(wxUSE_IPC)
1338 if test "$wxUSE_RESOURCES" = 1 ; then
1339 AC_DEFINE_UNQUOTED(wxUSE_RESOURCES,$wxUSE_RESOURCES)
1342 if test "$wxUSE_CLIPBOARD" = 1 ; then
1343 AC_DEFINE_UNQUOTED(wxUSE_CLIPBOARD,$wxUSE_CLIPBOARD)
1346 if test "$wxUSE_DND" = 1 ; then
1347 AC_DEFINE_UNQUOTED(wxUSE_DND,$wxUSE_DND)
1350 if test "$wxUSE_CONSTRAINTS" = 1 ; then
1351 AC_DEFINE_UNQUOTED(wxUSE_CONSTRAINTS,$wxUSE_CONSTRAINTS)
1354 dnl ----------------------------------------------------------------
1356 dnl ----------------------------------------------------------------
1359 if test "$wxUSE_METAFILE" = 1 ; then
1361 AC_DEFINE_UNQUOTED(wxUSE_METAFILE,$wxUSE_METAFILE)
1366 if test "$wxUSE_HELP" = 1 ; then
1368 AC_DEFINE_UNQUOTED(wxUSE_HELP,$wxUSE_HELP)
1373 if test "$wxUSE_WXGRAPH" = 1 ; then
1375 AC_DEFINE_UNQUOTED(wxUSE_WXGRAPH,$wxUSE_WXGRAPH)
1380 if test "$wxUSE_WXTREE" = 1 ; then
1382 AC_DEFINE_UNQUOTED(wxUSE_WXTREE,$wxUSE_WXTREE)
1387 if test "$wxUSE_OPENGL" = 1 ; then
1391 dnl ----------------------------------------------------------------
1392 dnl select dynamic loader (used by iODBC to load drivers)
1393 dnl ----------------------------------------------------------------
1395 AC_CHECK_LIB(dl,main,[DL_LIBRARY=-ldl],[DL_LIBRARY=])
1396 AC_SUBST(DL_LIBRARY)
1398 dnl ----------------------------------------------------------------
1400 dnl ----------------------------------------------------------------
1404 UNIX_THREAD="gtk/threadno.cpp"
1406 AC_OVERRIDES(threads,threads,
1407 **--without-threads Force disabling threads,
1410 dnl AC_ARG_WITH(threads,
1411 dnl [**--without-threads Force disabling threads ],
1412 dnl [wxUSE_THREADS="$withval"])
1414 if test "$wxUSE_THREADS" = "1"; then
1415 UNIX_THREAD="gtk/threadno.cpp"
1417 dnl For glibc 2 users who have the old libc 5 too
1419 AC_CHECK_LIB(pthread-0.7, pthread_create, [
1420 UNIX_THREAD="gtk/threadpsx.cpp"
1421 THREADS_LINK="-lpthread-0.7"
1423 AC_CHECK_HEADER(sys/prctl.h, [
1424 UNIX_THREAD="gtk/threadsgi.cpp"
1427 dnl pthread_create is always available in pthread but it seems not to be
1428 dnl the case for pthread_setcanceltype.
1430 AC_CHECK_LIB(pthread, pthread_setcanceltype, [
1431 UNIX_THREAD="gtk/threadpsx.cpp"
1432 THREADS_LINK="-lpthread"
1435 AC_CHECK_LIB(pthreads, pthread_setcanceltype, [
1436 UNIX_THREAD="gtk/threadpsx.cpp"
1437 THREADS_LINK="-lpthreads"
1441 if test "$wxUSE_MOTIF" = "1"; then
1442 UNIX_THREAD="motif/thread.cpp"
1445 if test -z "$UNIX_THREAD"; then
1449 AC_SUBST(UNIX_THREAD)
1450 AC_SUBST(THREADS_LINK)
1451 AC_DEFINE(wxUSE_THREADS)
1453 dnl defines UNIX_THREAD it contains the source file to use for threads. (GL)
1454 dnl defines THREADS_LINK it contains the thread library to link with. (GL)
1455 dnl defines wxUSE_THREADS if thread support is activated. (GL)
1457 dnl ----------------------------------------------------------------
1458 dnl search for opengl
1459 dnl ----------------------------------------------------------------
1465 if test "$wxUSE_OPENGL" = 1; then
1466 dnl checking OPENGL includes
1467 AC_MSG_CHECKING(for OpenGL includes)
1468 AC_PATH_FIND_INCLUDES($SEARCH_INCLUDE,GL/gl.h)
1469 if test "$ac_find_includes" != "" ; then
1470 OPENGL_INCLUDE="-I$ac_find_includes"
1471 AC_MSG_RESULT(found $ac_find_includes)
1472 dnl checking OPENGL libraries
1473 AC_MSG_CHECKING(for OpenGL library)
1474 AC_PATH_FIND_LIBRARIES($SEARCH_LIB,GL)
1475 if test "$ac_find_libraries" != "" ; then
1476 AC_INCLUDE_PATH_EXIST($ac_find_includes,$CHECK_INCLUDE)
1477 AC_LINK_PATH_EXIST($ac_find_libraries,$CHECK_LIB)
1478 CHECK_LINK="$CHECK_INCLUDE $ac_path_to_link"
1479 CHECK_INCLUDE="$CHECK_INCLUDE $ac_path_to_include"
1480 OPENGL_LIBRARY="$ac_path_to_link"
1481 OPENGL_INCLUDE="$ac_path_to_include"
1483 AC_MSG_RESULT(found OpenGL at $ac_find_libraries)
1485 AC_PATH_FIND_LIBRARIES($SEARCH_LIB,MesaGL)
1486 if test "$ac_find_libraries" != "" ; then
1487 AC_INCLUDE_PATH_EXIST($ac_find_includes,$CHECK_INCLUDE)
1488 AC_LINK_PATH_EXIST($ac_find_libraries,$CHECK_LIB)
1489 CHECK_LINK="$CHECK_INCLUDE $ac_path_to_link"
1490 CHECK_INCLUDE="$CHECK_INCLUDE $ac_path_to_include"
1491 OPENGL_LIBRARY="$ac_path_to_link"
1492 OPENGL_INCLUDE="$ac_path_to_include"
1493 OPENGL_LINK="-lMesaGL"
1494 AC_MSG_RESULT(found MESA at $ac_find_libraries)
1504 dnl ----------------------------------------------------------------
1506 dnl ----------------------------------------------------------------
1508 wxUSE_GLX=$wxUSE_OPENGL
1509 if test "$wxUSE_OPENGL" != 1; then
1516 AC_DEFINE_UNQUOTED(wxUSE_GLX,$wxUSE_GLX)
1517 AC_SUBST(OPENGL_INCLUDE)
1518 AC_SUBST(OPENGL_LIBRARY)
1519 AC_SUBST(OPENGL_LINK)
1522 dnl ------------------------------------------------------------------------
1523 dnl compiler options for shared libs
1524 dnl ------------------------------------------------------------------------
1528 case "${canonical}" in
1531 if test "$GCC" != "yes" ; then
1532 CXXFLAGS="${CXXFLAGS} +a1 -z -Aa -D_HPUX_SOURCE"
1533 CFLAGS="${CFLAGS} -z -D_HPUX_SOURCE"
1539 CREATE_SHARED=sharedHpux
1544 CREATE_SHARED=sharedLinux
1547 *-*-irix5* | *-*-irix6* )
1548 # PICFLAGS can remain empty, as pic is the default
1550 CREATE_SHARED=sharedIrix
1555 if test "$GCC" != "yes" ; then
1560 CREATE_SHARED=sharedSolaris2
1565 if test "$GCC" != "yes" ; then
1571 CREATE_SHARED=sharedSunos4
1575 *-*-freebsd* | *-*-netbsd*)
1577 CREATE_SHARED=sharedBsd
1583 CREATE_SHARED=sharedOSF
1587 if test "$GCC" != "yes" ; then
1592 CREATE_SHARED=sharedDgux
1597 if test "$GCC" != "yes" ; then
1602 CREATE_SHARED=sharedSysV
1607 if test "$GCC" != "yes" ; then
1612 CREATE_SHARED=sharedAIX
1621 if test "x$GCC" = xyes; then
1622 CFLAGS="${CFLAGS} -Wall"
1625 if test "x$GXX" = xyes; then
1626 if test "$wxUSE_MOTIF" = 1; then
1627 CXXFLAGS="${CXXFLAGS} -Wall -Wno-unused"
1629 CXXFLAGS="${CXXFLAGS} -Wall"
1633 if test "$wxUSE_SHARED" != 1; then
1640 AC_SUBST(CREATE_SHARED)
1642 dnl ------------------------------------------------------------------------
1643 dnl finish and clean-up
1644 dnl ------------------------------------------------------------------------
1646 dnl add OS to list of configured
1647 echo $OS >> system.list
1649 AC_CONFIG_HEADER(./include/wx/gtk/setup.h:./setup/setup.hin)
1650 AC_OUTPUT(./setup/substit ./wx-config:./wx-config.in,./setup/general/createall)