X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/44710405ff038d94378b53db388e25339434466a..bcffb4d1a9edaa539770382e14129ac902da68d8:/configure.in diff --git a/configure.in b/configure.in index 06d887710a..78ff1183e2 100644 --- a/configure.in +++ b/configure.in @@ -94,13 +94,14 @@ NEEDS_D_REENTRANT_FOR_R_FUNCS=0 dnl the list of all available toolkits dnl dnl update NUM_TOOLKITS calculation below when adding a new toolkit here! -ALL_TOOLKITS="COCOA GTK MAC MGL MICROWIN MOTIF MSW PM X11 DFB" +ALL_TOOLKITS="COCOA GTK OSX_CARBON OSX_COCOA MGL MICROWIN MOTIF MSW PM X11 DFB" dnl NB: these wxUSE_XXX constants have value of 0 or 1 unlike all the other ones dnl which are either yes or no DEFAULT_wxUSE_COCOA=0 DEFAULT_wxUSE_GTK=0 -DEFAULT_wxUSE_MAC=0 +DEFAULT_wxUSE_OSX_CARBON=0 +DEFAULT_wxUSE_OSX_COCOA=0 DEFAULT_wxUSE_MGL=0 DEFAULT_wxUSE_MICROWIN=0 DEFAULT_wxUSE_MOTIF=0 @@ -114,7 +115,8 @@ dnl they're used if no --with- options were given to detect the dnl toolkit to use by default for the target platform DEFAULT_DEFAULT_wxUSE_COCOA=0 DEFAULT_DEFAULT_wxUSE_GTK=0 -DEFAULT_DEFAULT_wxUSE_MAC=0 +DEFAULT_DEFAULT_wxUSE_OSX_CARBON=0 +DEFAULT_DEFAULT_wxUSE_OSX_COCOA=0 DEFAULT_DEFAULT_wxUSE_MGL=0 DEFAULT_DEFAULT_wxUSE_MICROWIN=0 DEFAULT_DEFAULT_wxUSE_MOTIF=0 @@ -321,7 +323,7 @@ case "${host}" in AC_DEFINE(__BSD__) AC_DEFINE(__DARWIN__) AC_DEFINE(TARGET_CARBON) - DEFAULT_DEFAULT_wxUSE_MAC=1 + DEFAULT_DEFAULT_wxUSE_OSX_CARBON=1 DEFAULT_STD_FLAG=no ;; powerpc-apple-macos* ) @@ -333,7 +335,7 @@ case "${host}" in SO_SUFFIX=shlib dnl AC_DEFINE(TARGET_CARBON) dnl platform.h needs TARGET_CARBON before setup.h, we'll add it to CPPFLAGS - DEFAULT_DEFAULT_wxUSE_MAC=1 + DEFAULT_DEFAULT_wxUSE_OSX_CARBON=1 DEFAULT_STD_FLAG=no ;; @@ -454,7 +456,9 @@ dnl we use AC_ARG_WITH and not WX_ARG_WITH for the toolkit options as they dnl shouldn't default to wxUSE_ALL_FEATURES AC_ARG_WITH(gtk, [[ --with-gtk[=VERSION] use GTK+, VERSION can be 2 (default), 1 or "any"]], [wxUSE_GTK="$withval" CACHE_GTK=1 TOOLKIT_GIVEN=1]) AC_ARG_WITH(motif, [ --with-motif use Motif/Lesstif], [wxUSE_MOTIF="$withval" CACHE_MOTIF=1 TOOLKIT_GIVEN=1]) -AC_ARG_WITH(mac, [ --with-mac use Mac OS X], [wxUSE_MAC="$withval" CACHE_MAC=1 TOOLKIT_GIVEN=1]) +AC_ARG_WITH(osx_carbon, [ --with-osx_carbon use Mac OS X (Carbon) ], [wxUSE_OSX_CARBON="$withval" CACHE_OSX_CARBON=1 TOOLKIT_GIVEN=1]) +AC_ARG_WITH(osx_cocoa, [ --with-osx_cocoa use Mac OS X (Cocoa) ], [wxUSE_OSX_COCOA="$withval" CACHE_OSX_COCOA=1 TOOLKIT_GIVEN=1]) +AC_ARG_WITH(mac, [ --with-mac use Mac OS X (Default) ], [wxUSE_OSX_CARBON="$withval" CACHE_OSX_CARBON=1 TOOLKIT_GIVEN=1]) AC_ARG_WITH(cocoa, [ --with-cocoa use Cocoa], [wxUSE_COCOA="$withval" CACHE_COCOA=1 TOOLKIT_GIVEN=1]) AC_ARG_WITH(wine, [ --with-wine use Wine], [wxUSE_WINE="$withval" CACHE_WINE=1]) AC_ARG_WITH(msw, [ --with-msw use MS-Windows], [wxUSE_MSW="$withval" CACHE_MSW=1 TOOLKIT_GIVEN=1]) @@ -473,6 +477,8 @@ dnl we have a default one AC_MSG_CHECKING(for toolkit) + + # In Wine, we need to default to MSW, not GTK or MOTIF if test "$wxUSE_WINE" = "yes"; then DEFAULT_DEFAULT_wxUSE_GTK=0 @@ -515,9 +521,9 @@ if test "$wxUSE_GUI" = "yes"; then dnl we suppose that expr is available (maybe there is a better way to do dnl this? what about using ALL_TOOLKITS? TODO) - NUM_TOOLKITS=`expr ${wxUSE_COCOA:-0} + ${wxUSE_GTK:-0} + ${wxUSE_MAC:-0} \ - + ${wxUSE_MGL:-0} + ${wxUSE_DFB:-0} + ${wxUSE_MICROWIN:-0} \ - + ${wxUSE_MOTIF:-0} + ${wxUSE_MSW:-0} + ${wxUSE_X11:-0}` + NUM_TOOLKITS=`expr ${wxUSE_COCOA:-0} + ${wxUSE_GTK:-0} + ${wxUSE_OSX_CARBON:-0} \ + + ${wxUSE_OSX_COCOA:-0} + ${wxUSE_MGL:-0} + ${wxUSE_DFB:-0} \ + + ${wxUSE_MICROWIN:-0} + ${wxUSE_MOTIF:-0} + ${wxUSE_MSW:-0} + ${wxUSE_X11:-0}` dnl Allow wxUSE_PM only for OS/2 with EMX. case "${host}" in @@ -558,6 +564,11 @@ else fi fi +wxUSE_MAC=0 +if test "$wxUSE_OSX_CARBON" = 1 -o "$wxUSE_OSX_COCOA" = 1; then + wxUSE_MAC=1 +fi + dnl --------------------------------------------------------------------------- dnl external libraries dnl --------------------------------------------------------------------------- @@ -756,6 +767,7 @@ WX_ARG_FEATURE(html, [ --enable-html use wxHTML sub-library], WX_ARG_FEATURE(htmlhelp, [ --enable-htmlhelp use wxHTML-based help], wxUSE_WXHTML_HELP) WX_ARG_FEATURE(xrc, [ --enable-xrc use XRC resources sub-library], wxUSE_XRC) WX_ARG_FEATURE(aui, [ --enable-aui use AUI docking library], wxUSE_AUI) +WX_ARG_FEATURE(propgrid, [ --enable-propgrid use wxPropertyGrid library], wxUSE_PROPGRID) WX_ARG_FEATURE(stc, [ --enable-stc use wxStyledTextCtrl library], wxUSE_STC) WX_ARG_FEATURE(constraints, [ --enable-constraints use layout-constraints system], wxUSE_CONSTRAINTS) WX_ARG_FEATURE(loggui, [ --enable-loggui use standard GUI logger], wxUSE_LOGGUI) @@ -3406,7 +3418,7 @@ libraries returned by 'pkg-config gtk+-2.0 --libs' or 'gtk-config fi fi - if test "$wxUSE_MAC" = 1; then + if test "$wxUSE_OSX_CARBON" = 1; then AC_MSG_CHECKING([for compiler syntax to enable Pascal strings]) if test "$GCC" = yes; then AC_MSG_RESULT([gcc]) @@ -3425,14 +3437,19 @@ libraries returned by 'pkg-config gtk+-2.0 --libs' or 'gtk-config CPPFLAGS="$CPPFLAGS_PASCAL -I\${top_srcdir}/src/mac/carbon/morefilex -DTARGET_CARBON $CPPFLAGS" fi - TOOLKIT=MAC + TOOLKIT=OSX_CARBON dnl we can't call this MAC_DIST or autoconf thinks its a macro - GUIDIST=MACX_DIST + GUIDIST=OSX_CARBON_DIST dnl wxMac version of wxBase and wxCocoa or wxBase-only built on Darwin dnl are different, so they need different names: WXBASEPORT="_carbon" fi + if test "$wxUSE_OSX_COCOA" = 1; then + TOOLKIT=OSX_COCOA + GUIDIST=OSX_COCOA_DIST + fi + if test "$wxUSE_COCOA" = 1; then TOOLKIT=COCOA GUIDIST=COCOA_DIST @@ -3620,7 +3637,7 @@ if test "$wxUSE_OPENGL" = "yes"; then if test "$wxUSE_MGL" = 1 -o "$wxUSE_DFB" = 1; then AC_MSG_WARN([wxGLCanvas not implemented for this port, library will be compiled without it.]) wxUSE_OPENGL="no" - elif test "$wxUSE_MAC" = 1 -o "$wxUSE_COCOA" = 1; then + elif test "$wxUSE_OSX_CARBON" = 1 -o "$wxUSE_OSX_COCOA" = 1 -o "$wxUSE_COCOA" = 1; then OPENGL_LIBS="-framework OpenGL -framework AGL" elif test "$wxUSE_MSW" = 1; then OPENGL_LIBS="-lopengl32 -lglu32" @@ -4985,13 +5002,31 @@ if test "$TOOLKIT" != "MSW" -a "$USE_OS2" != 1; then AC_MSG_WARN([wxMutex won't be recursive on this platform]) fi fi + + dnl test for compiler thread-specific variables support + AC_CACHE_CHECK([for __thread keyword], + wx_cv_cc___thread, + [ + AC_TRY_COMPILE([#include ], + [ + static __thread int n = 0; + static __thread int *p = 0; + ], + wx_cv_cc___thread=yes, + wx_cv_cc___thread=no + ) + ]) + + if test "$wx_cv_cc___thread" = "yes"; then + AC_DEFINE(HAVE___THREAD_KEYWORD) + fi fi dnl from if !MSW else if test "$wxUSE_THREADS" = "yes" ; then case "${host}" in - x86_64-*-mingw32* ) + x86_64-*-mingw32* ) ;; *-*-mingw32* ) dnl check if the compiler accepts -mthreads @@ -6176,7 +6211,7 @@ if test "$wxUSE_GUI" = "yes" -a "$wxUSE_JOYSTICK" = "yes"; then wxUSE_JOYSTICK=yes dnl mac only available on darwin - elif test "$TOOLKIT" = "MAC" -o "$TOOLKIT" = "COCOA"; then + elif test "$TOOLKIT" = "OSX" -o "$TOOLKIT" = "COCOA"; then if test "$USE_DARWIN" = 1; then dnl check for a bug in the headers, some have bad setEventCallout AC_MSG_CHECKING([headers have declarations needed for joystick support]) @@ -6275,9 +6310,6 @@ fi if test "$wxUSE_DOC_VIEW_ARCHITECTURE" = "yes" ; then AC_DEFINE(wxUSE_DOC_VIEW_ARCHITECTURE) SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS docview" - if test "$wxUSE_MDI_ARCHITECTURE" = "yes"; then - SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS docvwmdi" - fi fi if test "$wxUSE_HELP" = "yes"; then @@ -6857,9 +6889,6 @@ if test "$wxUSE_HTML" = "yes"; then AC_DEFINE(wxUSE_HTML) USE_HTML=1 SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS html html/about html/help html/helpview html/printing html/test html/virtual html/widget html/zip htlbox" - if test "$wxUSE_MAC" = 1; then - SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS html/htmlctrl" - fi fi if test "$wxUSE_WEBKIT" = "yes"; then if test "$wxUSE_MAC" = 1 -a "$USE_DARWIN" = 1; then @@ -6884,6 +6913,9 @@ if test "$wxUSE_WEBKIT" = "yes"; then else wxUSE_WEBKIT=no fi + if test "$wxUSE_WEBKIT" = "yes"; then + SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS html/htmlctrl" + fi fi USE_XRC=0 @@ -6905,6 +6937,13 @@ if test "$wxUSE_AUI" = "yes"; then SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS aui" fi +USE_PROPGRID=0 +if test "$wxUSE_PROPGRID" = "yes"; then + AC_DEFINE(wxUSE_PROPGRID) + USE_PROPGRID=1 + SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS propgrid" +fi + USE_STC=0 if test "$wxUSE_STC" = "yes"; then AC_DEFINE(wxUSE_STC) @@ -7286,6 +7325,9 @@ if test "$wxUSE_GUI" = "yes"; then if test "$wxUSE_AUI" = "yes" ; then BUILT_WX_LIBS="aui $BUILT_WX_LIBS" fi + if test "$wxUSE_PROPGRID" = "yes" ; then + BUILT_WX_LIBS="propgrid $BUILT_WX_LIBS" + fi if test "$wxUSE_STC" = "yes" ; then BUILT_WX_LIBS="stc $BUILT_WX_LIBS" fi @@ -7310,14 +7352,10 @@ if test "$wxUSE_MAC" = 1 ; then if test "$wxUSE_SOUND" = "yes" || test "$wxUSE_MEDIACTRL" = "yes"; then if test "$USE_DARWIN" = 1; then LDFLAGS="$LDFLAGS -framework QuickTime" - else - LDFLAGS="$LDFLAGS -lQuickTimeLib" fi fi if test "$USE_DARWIN" = 1; then - LDFLAGS="$LDFLAGS -framework IOKit -framework Carbon -framework Cocoa -framework AudioToolbox -framework System" - else - LDFLAGS="$LDFLAGS -lCarbonLib" + LDFLAGS="$LDFLAGS -framework IOKit -framework Carbon -framework Cocoa -framework AudioToolbox -framework System -framework OpenGL" fi fi if test "$wxUSE_COCOA" = 1 ; then @@ -7566,7 +7604,11 @@ AC_SUBST(UNICODE) AC_SUBST(BUILD) AC_SUBST(DEBUG_INFO) AC_SUBST(DEBUG_FLAG) -TOOLKIT_LOWERCASE=`echo $TOOLKIT | tr '[[A-Z]]' '[[a-z]]'` +if test "$TOOLKIT" = "MAC"; then + TOOLKIT_LOWERCASE=osx +else + TOOLKIT_LOWERCASE=`echo $TOOLKIT | tr '[[A-Z]]' '[[a-z]]'` +fi AC_SUBST(TOOLKIT_LOWERCASE) AC_SUBST(TOOLKIT_VERSION) AC_SUBST(SAMPLES_RPATH_FLAG) @@ -7697,7 +7739,7 @@ if test "$wxUSE_MAC" = 1 -o "$wxUSE_COCOA" = 1; then dnl resources are bundled both with shared library and applications dnl since the carb resource *must* be included in the application - if test "$wxUSE_MAC" = 1; then + if test "$wxUSE_OSX_CARBON" = 1; then POSTLINK_COMMAND="\$(REZ) -d __DARWIN__ -t APPL Carbon.r -o" RESCOMP="$REZ" WXCONFIG_RESFLAGS="-d __DARWIN__ -t APPL Carbon.r -o" @@ -7820,6 +7862,8 @@ dnl Add visibility support flags to CFLAGS/CXXFLAGS - do it this late so that dnl it doesn't affect compilation checks above CFLAGS="$CFLAGS $CFLAGS_VISIBILITY" CXXFLAGS="$CXXFLAGS $CXXFLAGS_VISIBILITY" +OBJCFLAGS="$OBJCFLAGS $CFLAGS_VISIBILITY" +OBJCXXFLAGS="$OBJCXXFLAGS $CXXFLAGS_VISIBILITY" dnl for convenience, sort the samples in alphabetical order dnl