]> git.saurik.com Git - wxWidgets.git/blobdiff - configure.in
Minor sample corrections
[wxWidgets.git] / configure.in
index f0a428882bb30a786b2276afb5ff97b166410a6f..e4f12a1125d298eac6e3d909c23ca5b4f548fee1 100644 (file)
@@ -495,6 +495,7 @@ WX_ARG_SYS_WITH(libjpeg,   [  --with-libjpeg          use libjpeg (JPEG file for
 WX_ARG_SYS_WITH(libtiff,   [  --with-libtiff          use libtiff (TIFF file format)], wxUSE_LIBTIFF)
 WX_ARG_SYS_WITH(libxpm,    [  --with-libxpm           use libxpm (XPM file format)], wxUSE_LIBXPM)
 WX_ARG_WITH(libmspack,     [  --with-libmspack        use libmspack (CHM help files loading)], wxUSE_LIBMSPACK)
+WX_ARG_WITHOUT(gtkprint,   [  --without-gtkprint      don't use GTK printing support], wxUSE_GTKPRINT)
 WX_ARG_WITHOUT(gnomeprint, [  --without-gnomeprint    don't use GNOME printing libraries], wxUSE_LIBGNOMEPRINT)
 WX_ARG_WITH(gnomevfs,      [  --with-gnomevfs         use GNOME VFS for associating MIME types], wxUSE_LIBGNOMEVFS)
 WX_ARG_WITH(hildon,        [  --with-hildon           use Hildon framework for Nokia 770], wxUSE_LIBHILDON)
@@ -586,7 +587,7 @@ WX_ARG_ENABLE(no_exceptions, [  --enable-no_exceptions  create code without C++
 WX_ARG_ENABLE(permissive,    [  --enable-permissive     compile code disregarding strict ANSI], wxUSE_PERMISSIVE)
 WX_ARG_ENABLE(no_deps,       [  --enable-no_deps        create code without dependency information], wxUSE_NO_DEPS)
 WX_ARG_DISABLE(vararg_macros,[  --disable-vararg_macros don't use vararg macros, even if they are supported], wxUSE_VARARG_MACROS)
-WX_ARG_ENABLE_PARAM(universal_binary, [[  --enable-universal_binary  create Mac PowerPC and Intel Universal binary (not yet working)]], wxUSE_UNIVERSAL_BINARY)
+WX_ARG_ENABLE_PARAM(universal_binary, [[  --enable-universal_binary  create Mac PowerPC and Intel Universal binary]], wxUSE_UNIVERSAL_BINARY)
 
 WX_ARG_ENABLE(compat26,      [  --enable-compat26       enable wxWidgets 2.6 compatibility], WXWIN_COMPATIBILITY_2_6)
 WX_ARG_DISABLE(compat28,     [  --disable-compat28      disable wxWidgets 2.8 compatibility], WXWIN_COMPATIBILITY_2_8)
@@ -615,7 +616,7 @@ WX_ARG_FEATURE(dataobj,       [  --enable-dataobj        use data object classes
 WX_ARG_FEATURE(ipc,           [  --enable-ipc            use interprocess communication (wxSocket etc.)], wxUSE_IPC)
 
 WX_ARG_FEATURE(baseevtloop,   [  --enable-baseevtloop    use event loop in console programs too], wxUSE_CONSOLE_EVENTLOOP)
-WX_ARG_FEATURE(epoolloop,     [  --enable-epoolloop      use wxEpollDispatcher class (Linux only)], wxUSE_EPOLL_DISPATCHER)
+WX_ARG_FEATURE(epollloop,     [  --enable-epollloop      use wxEpollDispatcher class (Linux only)], wxUSE_EPOLL_DISPATCHER)
 WX_ARG_FEATURE(selectloop,    [  --enable-selectloop     use wxSelectDispatcher class], wxUSE_SELECT_DISPATCHER)
 
 dnl please keep the settings below in alphabetical order
@@ -667,6 +668,9 @@ WX_ARG_FEATURE(protocol_file, [  --enable-protocol-file  FILE support in wxProto
 
 WX_ARG_FEATURE(threads,     [  --enable-threads        use threads], wxUSE_THREADS)
 
+WX_ARG_ENABLE(iniconf,      [  --enable-iniconf        use wxIniConfig (Win32 only)], wxUSE_INICONF)
+WX_ARG_FEATURE(regkey,      [  --enable-regkey         use wxRegKey class (Win32 only)], wxUSE_REGKEY)
+
 if test "$wxUSE_GUI" = "yes"; then
 
 dnl ---------------------------------------------------------------------------
@@ -732,6 +736,7 @@ if test "$wxUSE_CONTROLS" = "yes"; then
   DEFAULT_wxUSE_DISPLAY=yes
   DEFAULT_wxUSE_DETECT_SM=yes
   DEFAULT_wxUSE_DIRPICKERCTRL=yes
+  DEFAULT_wxUSE_FILECTRL=yes
   DEFAULT_wxUSE_FILEPICKERCTRL=yes
   DEFAULT_wxUSE_FONTPICKERCTRL=yes
   DEFAULT_wxUSE_GAUGE=yes
@@ -785,6 +790,7 @@ elif test "$wxUSE_CONTROLS" = "no"; then
   DEFAULT_wxUSE_DISPLAY=no
   DEFAULT_wxUSE_DETECT_SM=no
   DEFAULT_wxUSE_DIRPICKERCTRL=no
+  DEFAULT_wxUSE_FILECTRL=no
   DEFAULT_wxUSE_FILEPICKERCTRL=no
   DEFAULT_wxUSE_FONTPICKERCTRL=no
   DEFAULT_wxUSE_GAUGE=no
@@ -842,6 +848,7 @@ WX_ARG_FEATURE(display,     [  --enable-display        use wxDisplay class], wxU
 WX_ARG_FEATURE(detect_sm,   [  --enable-detect_sm      use code to detect X11 session manager], wxUSE_DETECT_SM)
 WX_ARG_FEATURE(editablebox, [  --enable-editablebox    use wxEditableListBox class], wxUSE_EDITABLELISTBOX)
 WX_ARG_FEATURE(filepicker,  [  --enable-filepicker     use wxFilePickerCtrl class], wxUSE_FILEPICKERCTRL)
+WX_ARG_FEATURE(filectrl,    [  --enable-filectrl       use wxFileCtrl class], wxUSE_FILECTRL)
 WX_ARG_FEATURE(fontpicker,  [  --enable-fontpicker     use wxFontPickerCtrl class], wxUSE_FONTPICKERCTRL)
 WX_ARG_FEATURE(gauge,       [  --enable-gauge          use wxGauge class], wxUSE_GAUGE)
 WX_ARG_FEATURE(grid,        [  --enable-grid           use wxGrid class], wxUSE_GRID)
@@ -934,10 +941,8 @@ dnl wxMSW-only options
 dnl ---------------------------------------------------------------------------
 
 WX_ARG_FEATURE(dccache,     [  --enable-dccache        cache temporary wxDC objects (Win32 only)], wxUSE_DC_CACHEING)
-WX_ARG_ENABLE(iniconf,      [  --enable-iniconf        use wxIniConfig (Win32 only)], wxUSE_INICONF)
 WX_ARG_FEATURE(ps-in-msw,   [  --enable-ps-in-msw      use PS printing in wxMSW (Win32 only)], wxUSE_POSTSCRIPT_ARCHITECTURE_IN_MSW)
 WX_ARG_FEATURE(ownerdrawn,  [  --enable-ownerdrawn     use owner drawn controls (Win32 only)], wxUSE_OWNER_DRAWN)
-WX_ARG_FEATURE(regkey,      [  --enable-regkey         use wxRegKey class (Win32 only)], wxUSE_REGKEY)
 WX_ARG_FEATURE(uxtheme,     [  --enable-uxtheme        enable support for Windows XP themed look (Win32 only)], wxUSE_UXTHEME)
 WX_ARG_FEATURE(wxdib,       [  --enable-wxdib          use wxDIB class (Win32 only)], wxUSE_DIB)
 
@@ -1210,6 +1215,13 @@ dnl We need to quote the next line where we don't need macros and do need [] in
 [
         MACOSX_SDK_PLIST_VERSION_MIN=`defaults read "$wxUSE_MACOSX_SDK/SDKSettings" buildSettings | grep '^ *"\{0,1\}MACOSX_DEPLOYMENT_TARGET"\{0,1\} *= *"\{0,1\}[^"]*"\{0,1\}; *$' | sed 's/^ *"\{0,1\}MACOSX_DEPLOYMENT_TARGET"\{0,1\} *= *"\{0,1\}\([^"]*\)"\{0,1\} *; *$/\1/'`
 ]
+        # If that failed, try again with the new key
+        if test "x$MACOSX_SDK_PLIST_VERSION_MIN" == "x"; then
+[
+            MACOSX_SDK_PLIST_VERSION_MIN=`defaults read "$wxUSE_MACOSX_SDK/SDKSettings" DefaultProperties | grep '^ *"\{0,1\}MACOSX_DEPLOYMENT_TARGET"\{0,1\} *= *"\{0,1\}[^"]*"\{0,1\}; *$' | sed 's/^ *"\{0,1\}MACOSX_DEPLOYMENT_TARGET"\{0,1\} *= *"\{0,1\}\([^"]*\)"\{0,1\} *; *$/\1/'`
+]
+        fi
+
         if test "x$MACOSX_SDK_PLIST_VERSION_MIN" != "x"; then
             wxUSE_MACOSX_VERSION_MIN=$MACOSX_SDK_PLIST_VERSION_MIN
             AC_MSG_RESULT([$wxUSE_MACOSX_VERSION_MIN])
@@ -1499,7 +1511,7 @@ dnl ------------------------------------------------------------------------
 
 dnl Note: non-empty last parameter makes check compile-only,
 dnl   skipping worthless preprocessing check
-AC_CHECK_HEADERS(stdlib.h fnmatch.h langinfo.h malloc.h unistd.h wchar.h,,, [AC_INCLUDES_DEFAULT()])
+AC_CHECK_HEADERS(langinfo.h wchar.h,,, [AC_INCLUDES_DEFAULT])
 
 dnl maybe wchar_t is in wcstr.h if we don't have wchar.h?
 if test "$ac_cv_header_wchar_h" != "yes"; then
@@ -1978,6 +1990,9 @@ if test "$wxUSE_STL" = "yes"; then
     fi
 fi
 
+dnl check for atomic operations builtins for wx/atomic.h:
+WX_ATOMIC_BUILTINS
+
 dnl pop C++
 AC_LANG_POP()
 
@@ -2542,6 +2557,9 @@ if test "$wxUSE_LIBTIFF" != "no" ; then
             dnl we are using the system library
             wxUSE_LIBTIFF=sys
         fi
+        if test "$wxUSE_LIBTIFF" = "builtin" ; then
+            AC_CONFIG_SUBDIRS([src/tiff])
+        fi
     fi
 fi
 
@@ -3490,9 +3508,7 @@ dnl ---------------------------------------------------------------------------
 dnl If UTF-8 support wasn't explicitly enabled or disabled, enable it only
 dnl for ports where it makes sense by default (GTK+, DirectFB):
 if test "$wxUSE_UNICODE" = "yes" -a "$wxUSE_UNICODE_UTF8" = "auto" ; then
-    if test "$TOOLKIT" = "DFB" ; then
-        wxUSE_UNICODE_UTF8=yes
-    elif test "$TOOLKIT" = "GTK" -a "$WXGTK20" = "1" ; then
+    if test "$USE_UNIX" = "1" -a "$wxUSE_DARWIN" != "1" ; then
         wxUSE_UNICODE_UTF8=yes
     elif test "$USE_OS2" = "1" ; then
         dnl wide char support is quite incomplete in libc;
@@ -4221,36 +4237,6 @@ if test "$ac_cv_func_snprintf" = "yes"; then
 
     if test "$wx_cv_func_snprintf_decl" = "yes"; then
         AC_DEFINE(HAVE_SNPRINTF_DECL)
-
-        dnl we know there is an snprintf declaration, but some old headers
-        dnl may have one taking a "char *" format instead of "const char *"
-        AC_CACHE_CHECK([if snprintf declaration is broken], wx_cv_func_broken_snprintf_decl,
-            [
-                AC_TRY_COMPILE(
-                    [
-                        #include <stdio.h>
-                        #include <stdarg.h>
-                        #ifdef __MSL__
-                        #if __MSL__ >= 0x6000
-                        namespace std {}
-                        using namespace std;
-                        #endif
-                        #endif
-                    ],
-                    [
-                        char *buf;
-                        const char *fmt = "%s";
-                        snprintf(buf, 10u, fmt, "wx");
-                    ],
-                    wx_cv_func_broken_snprintf_decl=no,
-                    wx_cv_func_broken_snprintf_decl=yes
-                )
-            ]
-        )
-
-        if test "$wx_cv_func_broken_snprintf_decl" = "yes"; then
-            AC_DEFINE(HAVE_BROKEN_SNPRINTF_DECL)
-        fi
     fi
 
     if test "$wxUSE_PRINTF_POS_PARAMS" = "yes"; then
@@ -4294,38 +4280,6 @@ fi
 
 if test "$wxUSE_UNICODE" = yes; then
 
-    dnl our wxVsnprintf() implementation needs to use the system swprintf() in Unicode
-    dnl builds so let's check if swprintf() is declared as C99 imposes:
-    dnl     int swprintf(wchar_t *s, size_t n, const wchar_t *format, ...);
-    dnl or rather as:
-    dnl     int swprintf(wchar_t *s, const wchar_t *format, ...);
-    AC_CHECK_FUNCS(swprintf)
-
-    if test "$ac_cv_func_swprintf" = "yes"; then
-        AC_CACHE_CHECK([if swprintf declaration is broken], wx_cv_func_broken_swprintf_decl,
-            [
-                AC_TRY_COMPILE(
-                    [
-                        #include <stdio.h>
-                        #include <stdarg.h>
-                        #include <wchar.h>
-                    ],
-                    [
-                        wchar_t *buf;
-                        const wchar_t *fmt = L"test";
-                        swprintf(buf, 10u, fmt);
-                    ],
-                    wx_cv_func_broken_swprintf_decl=no,
-                    wx_cv_func_broken_swprintf_decl=yes
-                )
-            ]
-        )
-
-        if test "$wx_cv_func_broken_swprintf_decl" = "yes"; then
-            AC_DEFINE(HAVE_BROKEN_SWPRINTF_DECL)
-        fi
-    fi
-
     dnl also look if we have wide char IO functions, notice that [f]putws are
     dnl declared in special widec.h under Solaris
     wchar_headers="#include <stdio.h>
@@ -4339,7 +4293,7 @@ if test "$wxUSE_UNICODE" = yes; then
             fi
     esac
 
-    WX_CHECK_FUNCS(wputc wputchar putws fputws wprintf vswprintf,,,
+    WX_CHECK_FUNCS(putws fputws wprintf vswprintf,,,
                    [$wchar_headers])
 
     dnl MinGW has a vswprintf with a different prototype, and
@@ -4353,10 +4307,6 @@ if test "$wxUSE_UNICODE" = yes; then
                    [AC_MSG_RESULT([no])]);
 fi
 
-if test "x$ac_cv_header_fnmatch_h" = "xyes"; then
-    WX_CHECK_FUNCS(fnmatch,,,[#include <fnmatch.h>])
-fi
-
 if test "$wxUSE_FILE" = "yes"; then
     WX_CHECK_FUNCS(fsync)
 fi
@@ -4601,11 +4551,11 @@ if test "$wxUSE_SNGLINST_CHECKER" = "yes"; then
     fi
 fi
 
-dnl check for timegm() used by datetime.cpp
-AC_CHECK_FUNCS(timegm)
-
 dnl look for a function to modify the environment
 AC_CHECK_FUNCS(setenv putenv, break)
+if test "$ac_cv_func_setenv" = "yes"; then
+    AC_CHECK_FUNCS(unsetenv)
+fi
 
 HAVE_SOME_SLEEP_FUNC=0
 if test "$USE_BEOS" = 1; then
@@ -4687,6 +4637,14 @@ fi
 
 WX_CHECK_FUNCS(fdopen)
 
+if test "$wxUSE_TARSTREAM" = "yes"; then
+    WX_CHECK_FUNCS(sysconf)
+    WX_CHECK_FUNCS(getpwuid_r, [], [], [#define _REENTRANT
+                                        #include <pwd.h>])
+    WX_CHECK_FUNCS(getgrgid_r, [], [], [#define _REENTRANT
+                                        #include <grp.h>])
+fi
 fi
 
 
@@ -5067,7 +5025,6 @@ fi
 
 AC_CHECK_FUNC(localtime_r, [ AC_DEFINE(HAVE_LOCALTIME_R) ])
 AC_CHECK_FUNC(gmtime_r, [ AC_DEFINE(HAVE_GMTIME_R) ])
-AC_CHECK_FUNC(readdir_r, [ AC_DEFINE(HAVE_READDIR_R) ])
 dnl By preference, we probably should use getaddrinfo which avoids thread
 dnl safety issues and supports IPv6, however there currently is no code
 dnl for it, so testing for it is temporarily disabled and we are restricted
@@ -5480,6 +5437,23 @@ if test "$WXGTK20" = 1; then
     PKG_PROG_PKG_CONFIG()
 
     if test "$wxUSE_PRINTING_ARCHITECTURE" = "yes" ; then
+
+        if test "$wxUSE_GTKPRINT" = "yes" ; then
+
+                PKG_CHECK_MODULES(GTKPRINT,
+                                  [gtk+-unix-print-2.0 >= 2.10],
+                    [
+                        CFLAGS="$GTKPRINT_CFLAGS $CFLAGS"
+                        CXXFLAGS="$GTKPRINT_CFLAGS $CXXFLAGS"
+                        AC_DEFINE(wxUSE_GTKPRINT)
+                    ],
+                    [
+                        AC_MSG_WARN([GTK printing support not found (GTK+ >= 2.10), library will use GNOME printing support or standard PostScript printing])
+                        wxUSE_GTKPRINT="no"
+                    ]
+                )
+        fi
+
         if test "$wxUSE_LIBGNOMEPRINT" = "yes" ; then
 
                 PKG_CHECK_MODULES(LIBGNOMEPRINTUI,
@@ -6531,6 +6505,11 @@ if test "$wxUSE_DIRPICKERCTRL" = "yes"; then
   USES_CONTROLS=1
 fi
 
+if test "$wxUSE_FILECTRL" = "yes"; then
+  AC_DEFINE(wxUSE_FILECTRL)
+  USES_CONTROLS=1
+fi
+
 if test "$wxUSE_FILEPICKERCTRL" = "yes"; then
   AC_DEFINE(wxUSE_FILEPICKERCTRL)
   USES_CONTROLS=1
@@ -7056,36 +7035,40 @@ dnl ---------------------------------------------------------------------------
 
 if test "$wxUSE_MSW" = 1 ; then
 
-if test "$wxUSE_DC_CACHEING" = "yes"; then
-    AC_DEFINE(wxUSE_DC_CACHEING)
-fi
+    if test "$wxUSE_DC_CACHEING" = "yes"; then
+        AC_DEFINE(wxUSE_DC_CACHEING)
+    fi
 
-if test "$wxUSE_INICONF" = "yes"; then
-    AC_DEFINE(wxUSE_INICONF)
-fi
+    if test "$wxUSE_DIB" = "yes"; then
+        AC_DEFINE(wxUSE_WXDIB)
+    fi
 
-if test "$wxUSE_DIB" = "yes"; then
-    AC_DEFINE(wxUSE_WXDIB)
-fi
+    if test "$wxUSE_OWNER_DRAWN" = "yes"; then
+        AC_DEFINE(wxUSE_OWNER_DRAWN)
+    fi
 
-if test "$wxUSE_OWNER_DRAWN" = "yes"; then
-    AC_DEFINE(wxUSE_OWNER_DRAWN)
-fi
+    if test "$wxUSE_POSTSCRIPT_ARCHITECTURE_IN_MSW" = "yes"; then
+        AC_DEFINE(wxUSE_POSTSCRIPT_ARCHITECTURE_IN_MSW)
+    fi
 
-if test "$wxUSE_REGKEY" = "yes"; then
-    AC_DEFINE(wxUSE_REGKEY)
-fi
+    if test "$wxUSE_UXTHEME" = "yes"; then
+        AC_DEFINE(wxUSE_UXTHEME)
+    fi
 
-if test "$wxUSE_POSTSCRIPT_ARCHITECTURE_IN_MSW" = "yes"; then
-    AC_DEFINE(wxUSE_POSTSCRIPT_ARCHITECTURE_IN_MSW)
 fi
+dnl wxUSE_MSW = 1
+    
 
-if test "$wxUSE_UXTHEME" = "yes"; then
-    AC_DEFINE(wxUSE_UXTHEME)
-fi
+if test "$USE_WIN32" = 1 ; then
+    if test "$wxUSE_INICONF" = "yes"; then
+        AC_DEFINE(wxUSE_INICONF)
+    fi
 
+    if test "$wxUSE_REGKEY" = "yes"; then
+        AC_DEFINE(wxUSE_REGKEY)
+    fi
 fi
-dnl wxUSE_MSW = 1
+dnl USE_WIN32 = 1
 
 dnl ---------------------------------------------------------------------------
 dnl wxGraphicsContext
@@ -7522,6 +7505,7 @@ AC_SUBST(EXTRALIBS_GUI)
 AC_SUBST(EXTRALIBS_OPENGL)
 AC_SUBST(EXTRALIBS_SDL)
 AC_SUBST(WITH_PLUGIN_SDL)
+AC_SUBST(EXTRALIBS_GTKPRINT)
 AC_SUBST(EXTRALIBS_GNOMEPRINT)
 AC_SUBST(EXTRALIBS_GNOMEVFS)
 AC_SUBST(EXTRALIBS_HILDON)
@@ -7543,6 +7527,9 @@ case "$TOOLKIT" in
         TOOLKIT_DESC="GTK+"
         if test "$WXGTK20" = 1; then
             TOOLKIT_DESC="$TOOLKIT_DESC 2"
+            if test "$wxUSE_GTKPRINT" = "yes" ; then
+                TOOLKIT_EXTRA="$TOOLKIT_EXTRA GTK+ printing";
+            fi
             if test "$wxUSE_LIBGNOMEPRINT" = "yes" ; then
                 TOOLKIT_EXTRA="$TOOLKIT_EXTRA gnomeprint";
             fi