]> git.saurik.com Git - wxWidgets.git/blobdiff - configure.in
For Python 2.2 builds
[wxWidgets.git] / configure.in
index 4adec7393f014cba89955807270aa46ef2a1ae39..b2e7c38b6682de1ee9491a225247e353993160a3 100644 (file)
@@ -679,6 +679,7 @@ if test $DEBUG_CONFIGURE = 1; then
   DEFAULT_wxUSE_STOPWATCH=no
   DEFAULT_wxUSE_FILE=no
   DEFAULT_wxUSE_FFILE=no
+  DEFAULT_wxUSE_TEXTBUFFER=no
   DEFAULT_wxUSE_TEXTFILE=no
   DEFAULT_wxUSE_WAVE=no
   DEFAULT_wxUSE_INTL=no
@@ -840,6 +841,7 @@ else
   DEFAULT_wxUSE_STOPWATCH=yes
   DEFAULT_wxUSE_FILE=yes
   DEFAULT_wxUSE_FFILE=yes
+  DEFAULT_wxUSE_TEXTBUFFER=yes
   DEFAULT_wxUSE_TEXTFILE=yes
   DEFAULT_wxUSE_WAVE=no
   DEFAULT_wxUSE_INTL=yes
@@ -1073,7 +1075,8 @@ WX_ARG_ENABLE(log,           [  --enable-log            use logging system], wxU
 WX_ARG_ENABLE(streams,       [  --enable-streams        use wxStream etc classes], wxUSE_STREAMS)
 WX_ARG_ENABLE(file,          [  --enable-file           use wxFile classes], wxUSE_FILE)
 WX_ARG_ENABLE(ffile,         [  --enable-ffile          use wxFFile classes], wxUSE_FFILE)
-WX_ARG_ENABLE(textfile,      [  --enable-textfile       use wxTextFile classes], wxUSE_TEXTFILE)
+WX_ARG_ENABLE(textbuf,       [  --enable-textbuf        use wxTextBuffer class], wxUSE_TEXTBUFFER)
+WX_ARG_ENABLE(textfile,      [  --enable-textfile       use wxTextFile class], wxUSE_TEXTFILE)
 WX_ARG_ENABLE(fontmap,       [  --enable-fontmap        use font encodings conversion classes], wxUSE_FONTMAP)
 WX_ARG_ENABLE(unicode,       [  --enable-unicode        compile wxString with Unicode support], wxUSE_UNICODE)
 WX_ARG_ENABLE(wxprintfv,     [  --enable-wxprintfv      use wxWindows implementation of vprintf()], wxUSE_EXPERIMENTAL_PRINTF)
@@ -2525,7 +2528,7 @@ if test "$wxUSE_SHARED" = "yes"; then
         WX_LIBRARY_IMPORTLIB="${WX_LIBRARY_NAME_SHARED}.a"
 
         SHARED_LD="${CXX} -shared -Wl,--out-implib,lib/${WX_LIBRARY_IMPORTLIB} -o"
-        TOOLCHAIN_DEFS="${TOOLCHAIN_DEFS} -DWXUSINGDLL=1"
+        TOOLCHAIN_DLL_DEFS="${TOOLCHAIN_DLL_DEFS} -DWXUSINGDLL=1"
 
         PIC_FLAG="-UWXUSINGDLL -DWXMAKINGDLL=1 -D_DLL=1 -D_WINDLL=1"
 
@@ -3186,204 +3189,204 @@ dnl ---------------------------------------------------------------------------
 dnl under MSW we always have thread support
 if test "$TOOLKIT" != "MSW"; then
 
-dnl the code below:
-dnl   defines THREADS_OBJ which contains the object files to build
-dnl   defines THREADS_LINK which contains the thread library to link with
-dnl   defines wxUSE_THREADS=1 if thread support is activated
-
-THREADS_LINK=
-THREADS_OBJ=
-CODE_GEN_FLAGS=
-CODE_GEN_FLAGS_CXX=
-
-if test "$wxUSE_THREADS" = "yes" ; then
-    if test "$wxUSE_WINE" = 1 ; then
-        AC_MSG_WARN([Threads are not supported under WINE])
-        wxUSE_THREADS="no"
-    elif test "$USE_BEOS" = 1; then
-        AC_MSG_WARN([BeOS threads are not yet supported])
-        wxUSE_THREADS="no"
+    dnl the code below:
+    dnl   defines THREADS_OBJ which contains the object files to build
+    dnl   defines THREADS_LINK which contains the thread library to link with
+    dnl   defines wxUSE_THREADS=1 if thread support is activated
+
+    THREADS_LINK=
+    THREADS_OBJ=
+    CODE_GEN_FLAGS=
+    CODE_GEN_FLAGS_CXX=
+
+    if test "$wxUSE_THREADS" = "yes" ; then
+        if test "$wxUSE_WINE" = 1 ; then
+            AC_MSG_WARN([Threads are not supported under WINE])
+            wxUSE_THREADS="no"
+        elif test "$USE_BEOS" = 1; then
+            AC_MSG_WARN([BeOS threads are not yet supported])
+            wxUSE_THREADS="no"
+        fi
     fi
-fi
 
-if test "$wxUSE_THREADS" = "yes" ; then
-    dnl find if POSIX threads are available
+    if test "$wxUSE_THREADS" = "yes" ; then
+        dnl find if POSIX threads are available
 
-    dnl AIX calls the library libpthreads - thanks IBM!
-    if test "$USE_AIX" = 1; then
-        THREADS_LIB=pthreads
-    else
-        THREADS_LIB=pthread
-    fi
+        dnl AIX calls the library libpthreads - thanks IBM!
+        if test "$USE_AIX" = 1; then
+            THREADS_LIB=pthreads
+        else
+            THREADS_LIB=pthread
+        fi
 
-    dnl standard lib name is pthread
-    dnl We no longer test for pthread-0.7 as it breaks compilation on some
-    dnl glibc2 systems, especially for static linkage.
-    AC_CHECK_LIB($THREADS_LIB, pthread_create, [
-            THREADS_OBJ="threadpsx.lo"
-            THREADS_LINK=$THREADS_LIB
-        ], [
-            dnl thread functions are in libc_r under FreeBSD
-            AC_CHECK_LIB(c_r, pthread_create, [
+        dnl standard lib name is pthread
+        dnl We no longer test for pthread-0.7 as it breaks compilation on some
+        dnl glibc2 systems, especially for static linkage.
+        AC_CHECK_LIB($THREADS_LIB, pthread_create, [
                 THREADS_OBJ="threadpsx.lo"
-                THREADS_LINK="c_r"
+                THREADS_LINK=$THREADS_LIB
             ], [
-                dnl VZ: SGI threads are not supported currently
-                AC_CHECK_HEADER(sys/prctl.h, [
-                    THREADS_OBJ="threadsgi.lo"
+                dnl thread functions are in libc_r under FreeBSD
+                AC_CHECK_LIB(c_r, pthread_create, [
+                    THREADS_OBJ="threadpsx.lo"
+                    THREADS_LINK="c_r"
+                ], [
+                    dnl VZ: SGI threads are not supported currently
+                    AC_CHECK_HEADER(sys/prctl.h, [
+                        THREADS_OBJ="threadsgi.lo"
+                    ])
                 ])
             ])
-        ])
 
-    if test -z "$THREADS_OBJ" ; then
-        wxUSE_THREADS=no
-        AC_MSG_WARN(No thread support on this system)
+        if test -z "$THREADS_OBJ" ; then
+            wxUSE_THREADS=no
+            AC_MSG_WARN(No thread support on this system)
+        fi
     fi
-fi
 
-dnl do other tests only if we are using threads
-if test "$wxUSE_THREADS" = "yes" ; then
-  AC_CHECK_FUNCS(thr_setconcurrency)
-
-  dnl define autoconf macro to check for given function in both pthread and
-  dnl posix4 libraries
-  dnl usage: AC_FUNC_THREAD(FUNCTION_NAME)
-  dnl VZ: TODO
-  dnl AC_DEFUN(AC_FUNC_THREAD,
-  dnl [
-  dnl     AC_CHECK_LIB($THREADS_LINK, $1,
-  dnl            AC_DEFINE(HAVE_`'translit($1, `A-Z', 'a-z'),
-  dnl            [AC_CHECK_LIB([posix4], $1,
-  dnl                [AC_DEFINE(HAVE_`'translit($1, `A-Z', 'a-z'))
-  dnl                 POSIX4_LINK=" -lposix4"
-  dnl             ])
-  dnl            ])
-  dnl ])
-
-  AC_CHECK_HEADERS(sched.h)
-
-  AC_CHECK_LIB($THREADS_LINK, sched_yield,
-               AC_DEFINE(HAVE_SCHED_YIELD),
-               [AC_CHECK_LIB([posix4], sched_yield,
-                   [AC_DEFINE(HAVE_SCHED_YIELD) POSIX4_LINK=" -lposix4"],
-                   AC_MSG_WARN(wxThread::Yield will not work properly)
-                )]
-               )
-
-  dnl to be able to set the thread priority, we need to have all of the
-  dnl following functions:
-  dnl   1. pthread_attr_getschedpolicy
-  dnl   2. sched_get_priority_min and sched_get_priority_max
-  dnl      (this one can be in either libpthread or libposix4 (under Solaris))
-  dnl   3. pthread_attr_getschedparam and pthread_attr_setschedparam
-  HAVE_PRIOR_FUNCS=0
-  AC_CHECK_LIB($THREADS_LINK, pthread_attr_getschedpolicy,
-                 AC_CHECK_LIB($THREADS_LINK, pthread_attr_setschedparam,
-                   AC_CHECK_LIB($THREADS_LINK, sched_get_priority_max,
-                       HAVE_PRIOR_FUNCS=1,
-                       AC_CHECK_LIB([posix4], sched_get_priority_max,
-                         [
-                            HAVE_PRIOR_FUNCS=1
-                            POSIX4_LINK=" -lposix4"
-                         ],
+    dnl do other tests only if we are using threads
+    if test "$wxUSE_THREADS" = "yes" ; then
+      AC_CHECK_FUNCS(thr_setconcurrency)
+
+      dnl define autoconf macro to check for given function in both pthread and
+      dnl posix4 libraries
+      dnl usage: AC_FUNC_THREAD(FUNCTION_NAME)
+      dnl VZ: TODO
+      dnl AC_DEFUN(AC_FUNC_THREAD,
+      dnl [
+      dnl     AC_CHECK_LIB($THREADS_LINK, $1,
+      dnl            AC_DEFINE(HAVE_`'translit($1, `A-Z', 'a-z'),
+      dnl            [AC_CHECK_LIB([posix4], $1,
+      dnl                [AC_DEFINE(HAVE_`'translit($1, `A-Z', 'a-z'))
+      dnl                 POSIX4_LINK=" -lposix4"
+      dnl             ])
+      dnl            ])
+      dnl ])
+
+      AC_CHECK_HEADERS(sched.h)
+
+      AC_CHECK_LIB($THREADS_LINK, sched_yield,
+                   AC_DEFINE(HAVE_SCHED_YIELD),
+                   [AC_CHECK_LIB([posix4], sched_yield,
+                       [AC_DEFINE(HAVE_SCHED_YIELD) POSIX4_LINK=" -lposix4"],
+                       AC_MSG_WARN(wxThread::Yield will not work properly)
+                    )]
+                   )
+
+      dnl to be able to set the thread priority, we need to have all of the
+      dnl following functions:
+      dnl   1. pthread_attr_getschedpolicy
+      dnl   2. sched_get_priority_min and sched_get_priority_max
+      dnl      (this one can be in either libpthread or libposix4 (under Solaris))
+      dnl   3. pthread_attr_getschedparam and pthread_attr_setschedparam
+      HAVE_PRIOR_FUNCS=0
+      AC_CHECK_LIB($THREADS_LINK, pthread_attr_getschedpolicy,
+                     AC_CHECK_LIB($THREADS_LINK, pthread_attr_setschedparam,
+                       AC_CHECK_LIB($THREADS_LINK, sched_get_priority_max,
+                           HAVE_PRIOR_FUNCS=1,
+                           AC_CHECK_LIB([posix4], sched_get_priority_max,
+                             [
+                                HAVE_PRIOR_FUNCS=1
+                                POSIX4_LINK=" -lposix4"
+                             ],
+                           )
                        )
+                     )
                    )
-                 )
-               )
 
-  if test "$HAVE_PRIOR_FUNCS" = 1; then
-    AC_DEFINE(HAVE_THREAD_PRIORITY_FUNCTIONS)
-  else
-    AC_MSG_WARN(Setting thread priority will not work)
-  fi
+      if test "$HAVE_PRIOR_FUNCS" = 1; then
+        AC_DEFINE(HAVE_THREAD_PRIORITY_FUNCTIONS)
+      else
+        AC_MSG_WARN(Setting thread priority will not work)
+      fi
 
-  AC_CHECK_LIB($THREADS_LINK, pthread_cancel,
-               AC_DEFINE(HAVE_PTHREAD_CANCEL),
-               AC_MSG_WARN([wxThread::Kill() will not work properly]))
+      AC_CHECK_LIB($THREADS_LINK, pthread_cancel,
+                   AC_DEFINE(HAVE_PTHREAD_CANCEL),
+                   AC_MSG_WARN([wxThread::Kill() will not work properly]))
 
-  AC_CACHE_CHECK([for pthread_cleanup_push/pop], wx_cv_func_pthread_cleanup_push,
-  [
-    AC_TRY_COMPILE([#include <pthread.h>],
-                 [
-                    pthread_cleanup_push(NULL, NULL);
-                    pthread_cleanup_pop(0);
-                 ], [
-                    wx_cv_func_pthread_cleanup_push=yes
-                 ], [
-                    wx_cv_func_pthread_cleanup_push=no
-                 ])
-  ])
-
-  if test "$wx_cv_func_pthread_cleanup_push" = "yes"; then
-      AC_DEFINE(HAVE_THREAD_CLEANUP_FUNCTIONS)
-  fi
+      AC_CACHE_CHECK([for pthread_cleanup_push/pop], wx_cv_func_pthread_cleanup_push,
+      [
+        AC_TRY_COMPILE([#include <pthread.h>],
+                     [
+                        pthread_cleanup_push(NULL, NULL);
+                        pthread_cleanup_pop(0);
+                     ], [
+                        wx_cv_func_pthread_cleanup_push=yes
+                     ], [
+                        wx_cv_func_pthread_cleanup_push=no
+                     ])
+      ])
 
-  dnl mutexattr_t initialization is done in quite different ways on different
-  dnl platforms, so check for a few things:
-  dnl
-  dnl HAVE_MUTEX_RECURSIVE means that we can create recursive mutexes
-  dnl HAVE_MUTEXATTR_SETTYPE means that we do it using
-  dnl pthread_mutexattr_settype(PTHREAD_MUTEX_RECURSIVE) and if it is not
-  dnl defined, we do it by directly assigned
-  dnl PTHREAD_MUTEX_RECURSIVE_MUTEX_INITIALIZER_NP to attr
-
-  dnl we need _GNU_SOURCE to get PTHREAD_MUTEX_RECURSIVE with glibc 2.1+
-  dnl (strictly speaking we only need _XOPEN_SOURCE=500 but just defining
-  dnl this disables _BSD_SOURCE which breaks libtiff compilation, so it is
-  dnl simpler to just define _GNU_SOURCE to get everything)
-  if test "x$wx_lib_glibc21" = "xyes"; then
-      CPPFLAGS="$CPPFLAGS -D_GNU_SOURCE"
-  fi
+      if test "$wx_cv_func_pthread_cleanup_push" = "yes"; then
+          AC_DEFINE(HAVE_THREAD_CLEANUP_FUNCTIONS)
+      fi
 
-  AC_CACHE_CHECK([for pthread_mutexattr_t], wx_cv_type_pthread_mutexattr_t,
-  [
-    AC_TRY_COMPILE([#include <pthread.h>],
-        [
-           pthread_mutexattr_t attr;
-           pthread_mutexattr_settype(&attr, PTHREAD_MUTEX_RECURSIVE);
-        ], [
-           wx_cv_type_pthread_mutexattr_t=yes
-        ], [
-           wx_cv_type_pthread_mutexattr_t=no
-        ]
-    )
-  ])
+      dnl mutexattr_t initialization is done in quite different ways on different
+      dnl platforms, so check for a few things:
+      dnl
+      dnl HAVE_MUTEX_RECURSIVE means that we can create recursive mutexes
+      dnl HAVE_MUTEXATTR_SETTYPE means that we do it using
+      dnl pthread_mutexattr_settype(PTHREAD_MUTEX_RECURSIVE) and if it is not
+      dnl defined, we do it by directly assigned
+      dnl PTHREAD_MUTEX_RECURSIVE_MUTEX_INITIALIZER_NP to attr
+
+      dnl we need _GNU_SOURCE to get PTHREAD_MUTEX_RECURSIVE with glibc 2.1+
+      dnl (strictly speaking we only need _XOPEN_SOURCE=500 but just defining
+      dnl this disables _BSD_SOURCE which breaks libtiff compilation, so it is
+      dnl simpler to just define _GNU_SOURCE to get everything)
+      if test "x$wx_lib_glibc21" = "xyes"; then
+          CPPFLAGS="$CPPFLAGS -D_GNU_SOURCE"
+      fi
 
-  if test "$wx_cv_type_pthread_mutexattr_t" = "yes"; then
-    AC_DEFINE(HAVE_PTHREAD_MUTEXATTR_T)
-  else
-    dnl don't despair, there may be another way to do it
-    AC_CACHE_CHECK([for PTHREAD_RECURSIVE_MUTEX_INITIALIZER],
-                   wx_cv_type_pthread_rec_mutex_init,
-    [
+      AC_CACHE_CHECK([for pthread_mutexattr_t], wx_cv_type_pthread_mutexattr_t,
+      [
         AC_TRY_COMPILE([#include <pthread.h>],
             [
-                pthread_mutex_t attr = PTHREAD_RECURSIVE_MUTEX_INITIALIZER_NP;
+               pthread_mutexattr_t attr;
+               pthread_mutexattr_settype(&attr, PTHREAD_MUTEX_RECURSIVE);
             ], [
-                wx_cv_type_pthread_rec_mutex_init=yes
+               wx_cv_type_pthread_mutexattr_t=yes
             ], [
-                wx_cv_type_pthread_rec_mutex_init=no
+               wx_cv_type_pthread_mutexattr_t=no
             ]
         )
-    ])
-    if test "$wx_cv_type_pthread_rec_mutex_init" = "yes"; then
-      AC_DEFINE(HAVE_PTHREAD_RECURSIVE_MUTEX_INITIALIZER)
-    else
-      dnl this may break code working elsewhere, so at least warn about it
-      AC_MSG_WARN([wxMutex won't be recursive on this platform])
-    fi
-  fi
+      ])
+
+      if test "$wx_cv_type_pthread_mutexattr_t" = "yes"; then
+        AC_DEFINE(HAVE_PTHREAD_MUTEXATTR_T)
+      else
+        dnl don't despair, there may be another way to do it
+        AC_CACHE_CHECK([for PTHREAD_RECURSIVE_MUTEX_INITIALIZER],
+                       wx_cv_type_pthread_rec_mutex_init,
+        [
+            AC_TRY_COMPILE([#include <pthread.h>],
+                [
+                    pthread_mutex_t attr = PTHREAD_RECURSIVE_MUTEX_INITIALIZER_NP;
+                ], [
+                    wx_cv_type_pthread_rec_mutex_init=yes
+                ], [
+                    wx_cv_type_pthread_rec_mutex_init=no
+                ]
+            )
+        ])
+        if test "$wx_cv_type_pthread_rec_mutex_init" = "yes"; then
+          AC_DEFINE(HAVE_PTHREAD_RECURSIVE_MUTEX_INITIALIZER)
+        else
+          dnl this may break code working elsewhere, so at least warn about it
+          AC_MSG_WARN([wxMutex won't be recursive on this platform])
+        fi
+      fi
 
-  THREADS_LINK=" -l$THREADS_LINK"
+      THREADS_LINK=" -l$THREADS_LINK"
 
-  dnl building MT programs under Solaris with the native compiler requires -mt
-  dnl switch
-  if test "$USE_SOLARIS" = "yes" -a "$GCC" != "yes"; then
-      CPPFLAGS="$CFLAGS -mt"
-      CXXFLAGS="$CXXFLAGS -mt"
-      LDFLAGS="$LDFLAGS -mt"
-  fi
-fi
+      dnl building MT programs under Solaris with the native compiler requires -mt
+      dnl switch
+      if test "$USE_SOLARIS" = "yes" -a "$GCC" != "yes"; then
+          CPPFLAGS="$CFLAGS -mt"
+          CXXFLAGS="$CXXFLAGS -mt"
+          LDFLAGS="$LDFLAGS -mt"
+      fi
+    fi
 
 dnl from if !MSW
 fi
@@ -3461,7 +3464,7 @@ if test "$wxUSE_PROFILE" = "yes" ; then
     PROFILE=" -pg"
 fi
 
-if test "$GCC" = yes ; then
+if test "$GCC" = "yes" ; then
     if test "$wxUSE_NO_RTTI" = "yes" ; then
         CODE_GEN_FLAGS_CXX="$CODE_GEN_FLAGS_CXX -fno-rtti"
     fi
@@ -3471,10 +3474,6 @@ if test "$GCC" = yes ; then
     if test "$wxUSE_PERMISSIVE" = "yes" ; then
         CODE_GEN_FLAGS="$CODE_GEN_FLAGS -fpermissive"
     fi
-    if test "$wxUSE_NO_DEPS" = "no" ; then
-        CFLAGS="-MMD $CFLAGS"
-        CXXFLAGS="-MMD $CXXFLAGS"
-    fi
     if test "$USE_WIN32" = 1 ; then
         # I'm not even really sure what this was ever added to solve,
         # but someone added it for mingw native builds, so I guess
@@ -3613,9 +3612,13 @@ if test "$wxUSE_STD_IOSTREAM" = "yes"; then
   AC_DEFINE(wxUSE_STD_IOSTREAM)
 fi
 
+if test "$wxUSE_TEXTBUFFER" = "yes"; then
+    AC_DEFINE(wxUSE_TEXTBUFFER)
+fi
+
 if test "$wxUSE_TEXTFILE" = "yes"; then
-  if test "$wxUSE_FILE" != "yes"; then
-    AC_MSG_WARN(wxTextFile requires wxFile and it won't be compiled without it)
+  if test "$wxUSE_FILE" != "yes" -o "$wxUSE_TEXTBUFFER" != "yes" ; then
+    AC_MSG_WARN(wxTextFile requires wxFile and wxTextBuffer and won't be compiled without them)
   else
     AC_DEFINE(wxUSE_TEXTFILE)
   fi
@@ -4680,7 +4683,15 @@ if test "$GXX" = yes ; then
     CXXWARNINGS="-Wall"
     dnl should enable this one day...
     dnl CXXWARNINGS="-Wall -Werror"
+
+    dnl Add this *after* all compile tests, we don't need or want generated
+    dnl depfiles until actually building the lib
+    if test "$wxUSE_NO_DEPS" = "no" ; then
+        CFLAGS="-MMD $CFLAGS"
+        CXXFLAGS="-MMD $CXXFLAGS"
+    fi
 fi
+
 EXTRA_CFLAGS="$WXDEBUG $WXODBCFLAG$PROFILE $OPTIMISE $INCLUDES"
 
 CFLAGS=`echo $CFLAGS $EXTRA_CFLAGS $CXXWARNINGS | sed 's/ \\+/ /g'`
@@ -4746,6 +4757,7 @@ AC_SUBST(TOOLKIT_DIR)
 AC_SUBST(TOOLKIT_VPATH)
 AC_SUBST(TOOLCHAIN_NAME)
 AC_SUBST(TOOLCHAIN_DEFS)
+AC_SUBST(TOOLCHAIN_DLL_DEFS)
 
 dnl wx-config options
 AC_SUBST(host_alias)