X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/16bd311d28acbe8026e69d372c2c43de6390e956..e0f0eaba3d19f3e2d7783373a9cfc677bb9e107a:/configure.in diff --git a/configure.in b/configure.in index 10ab9c740e..4466b4f899 100644 --- a/configure.in +++ b/configure.in @@ -165,9 +165,8 @@ case "${host}" in fi DEFAULT_DEFAULT_wxUSE_GTK=1 ;; - *-*-gnu* ) + *-*-gnu* | *-*-k*bsd*-gnu ) USE_GNU=1 - AC_DEFINE(__GNU__) TMP=`uname -m` if test "x$TMP" = "xalpha"; then USE_ALPHA=1 @@ -295,7 +294,7 @@ case "${host}" in DEFAULT_DEFAULT_wxUSE_PM=1 dnl "c++" wrapper is not always available, so always use plain gcc. CXX=gcc - LDFLAGS="$LDFLAGS -Zcrtdll -Zsysv-signals" + LDFLAGS="$LDFLAGS -Zcrtdll" dnl dnl Some special code that's automatically added by autoconf-2.57 for OS/2 dnl and hopefully also by autoconf-2.58 and newer on all other platforms. @@ -481,7 +480,6 @@ if test $DEBUG_CONFIGURE = 1; then DEFAULT_wxUSE_FS_ZIP=no DEFAULT_wxUSE_BUSYINFO=no DEFAULT_wxUSE_ZIPSTREAM=no - DEFAULT_wxUSE_GZSTREAM=no DEFAULT_wxUSE_VALIDATORS=no DEFAULT_wxUSE_ACCEL=no @@ -664,7 +662,6 @@ else DEFAULT_wxUSE_FS_ZIP=yes DEFAULT_wxUSE_BUSYINFO=yes DEFAULT_wxUSE_ZIPSTREAM=yes - DEFAULT_wxUSE_GZSTREAM=yes DEFAULT_wxUSE_VALIDATORS=yes DEFAULT_wxUSE_ACCEL=yes @@ -676,7 +673,7 @@ else DEFAULT_wxUSE_CHECKLST=yes DEFAULT_wxUSE_CHOICE=yes DEFAULT_wxUSE_COMBOBOX=yes - DEFAULT_wxUSE_DISPLAY=no + DEFAULT_wxUSE_DISPLAY=yes DEFAULT_wxUSE_GAUGE=yes DEFAULT_wxUSE_GRID=yes DEFAULT_wxUSE_IMAGLIST=yes @@ -800,6 +797,9 @@ WX_ARG_ENABLE(shared, [ --enable-shared create shared library code WX_ARG_ENABLE(optimise, [ --enable-optimise create optimised code], wxUSE_OPTIMISE) WX_ARG_ENABLE(debug, [ --enable-debug same as debug_flag and debug_info], wxUSE_DEBUG) WX_ARG_ENABLE(stl, [ --enable-stl use STL for containers], wxUSE_STL) +if test "$USE_OS2" = "1"; then + WX_ARG_ENABLE(omf, [ --enable-omf use OMF object format], wxUSE_OMF) +fi if test "$wxUSE_DEBUG" = "yes"; then DEFAULT_wxUSE_DEBUG_FLAG=yes @@ -881,7 +881,6 @@ WX_ARG_ENABLE(unicode, [ --enable-unicode compile wxString with Un WX_ARG_ENABLE(sound, [ --enable-sound use wxSound class], wxUSE_SOUND) WX_ARG_ENABLE(wxprintfv, [ --enable-wxprintfv use wxWindows implementation of vprintf()], wxUSE_EXPERIMENTAL_PRINTF) WX_ARG_ENABLE(zipstream, [ --enable-zipstream use wxZipInputStream], wxUSE_ZIPSTREAM) -WX_ARG_ENABLE(gzstream, [ --enable-gzstream use wxGzipInputStream], wxUSE_GZSTREAM) WX_ARG_ENABLE(url, [ --enable-url use wxURL class], wxUSE_URL) WX_ARG_ENABLE(protocol, [ --enable-protocol use wxProtocol class], wxUSE_PROTOCOL) @@ -1499,7 +1498,7 @@ case "${host}" in dnl Include resources for the "native" port (wxPM). RESPROGRAMOBJ="\${top_srcdir}/include/wx/os2/wx.res" fi - AC_CACHE_CHECK([for gcc 3 or later], wx_cv_gcc3,[ + AC_CACHE_CHECK([for gcc version], wx_cv_gccversion,[ AC_TRY_COMPILE([], [ #if (__GNUC__ < 3) @@ -1507,17 +1506,38 @@ case "${host}" in #endif ], [ - wx_cv_gcc3=yes + AC_TRY_COMPILE([], + [ + #if (__GNUC__==3) && ((__GNUC_MINOR__ < 2) || ((__GNUC_MINOR__==2) && (__GNUC_PATCHLEVEL__<2))) + #error intermediate gcc + #endif + ], + [ + wx_cv_gccversion=Innotek + ], + [ + wx_cv_gccversion=3 + ] + ) ], [ - wx_cv_gcc3=no + wx_cv_gccversion=2 ] ) ]) - if test "$wx_cv_gcc3" = "no"; then + if test "$wx_cv_gccversion" = "2"; then LIBS="$LIBS -lstdcpp" + LDFLAGS="$LDFLAGS -Zsysv-signals" else - LIBS="$LIBS -lstdcxx" + if test "$wx_cv_gccversion" = "3"; then + LIBS="$LIBS -lstdcxx" + LDFLAGS="$LDFLAGS -Zsysv-signals" + else + LIBS="$LIBS -lstdc++" + fi + fi + if test "$wxUSE_OMF" = "yes"; then + LDFLAGS="$LDFLAGS -Zlinker /PMTYPE:PM -Zlinker /EXEPACK" fi dnl (end of OS/2-only piece) ;; @@ -2090,7 +2110,7 @@ if test "$wxUSE_LIBPNG" != "no" ; then AC_CHECK_HEADER(png.h) if test "$ac_cv_header_png_h" = "yes"; then - AC_CHECK_LIB(png, png_check_sig, PNG_LINK=" -lpng", , [-lz -lm]) + AC_CHECK_LIB(png, png_check_sig, PNG_LINK=" -lpng -lz", , [-lz -lm]) fi if test "x$PNG_LINK" = "x" ; then @@ -2883,9 +2903,9 @@ equivalent variable and GTK+ is version 1.2.3 or above. AC_MSG_RESULT([none]) fi - CPPFLAGS="$CPPFLAGS $CPPFLAGS_PASCAL -I\${top_srcdir}/src/mac/morefilex -I/Developer/Headers/FlatCarbon" + CPPFLAGS="$CPPFLAGS $CPPFLAGS_PASCAL -I\${top_srcdir}/src/mac/carbon/morefilex -I/Developer/Headers/FlatCarbon" - TOOLKIT_VPATH="\${top_srcdir}/src/mac${PATH_IFS}\${top_srcdir}/src/mac/morefilex" + TOOLKIT_VPATH="\${top_srcdir}/src/mac/carbon${PATH_IFS}\${top_srcdir}/src/mac/carbon/morefilex" TOOLKIT=MAC dnl we can't call this MAC_DIST or autoconf thinks its a macro GUIDIST=MACX_DIST @@ -3052,9 +3072,13 @@ if test "$wxUSE_ZLIB" = "builtin" ; then fi dnl --------------------------------------------------------------------------- -dnl Xinerama (for unix wxDisplay) - Brian Victor +dnl wxDisplay Sanity checks dnl --------------------------------------------------------------------------- + if test "$wxUSE_DISPLAY" = "yes"; then +dnl --------------------------------------------------------------------------- +dnl Xinerama (for unix ) - Brian Victor +dnl --------------------------------------------------------------------------- if test "$wxUSE_UNIX" = "yes" -a "$wxUSE_MAC" != 1; then AC_MSG_CHECKING([for Xinerama]) WX_PATH_FIND_LIBRARIES([$SEARCH_LIB],Xinerama) @@ -3086,9 +3110,17 @@ if test "$wxUSE_DISPLAY" = "yes"; then else AC_MSG_RESULT([no]) - AC_MSG_WARN("*** Xinerama not found; disabling wxDisplay") + AC_MSG_WARN([Xinerama not found; disabling wxDisplay]) wxUSE_DISPLAY="no" fi + elif test "$wxUSE_MSW" = 1; then +dnl --------------------------------------------------------------------------- +dnl DirectDraw / Multimon for MSW +dnl --------------------------------------------------------------------------- + AC_CHECK_HEADERS([multimon.h ddraw.h], [], [ + wxUSE_DISPLAY="no" + AC_MSG_WARN([ddraw.h or multimon.h not found; disabling wxDisplay]) + ] ) fi fi @@ -3274,7 +3306,6 @@ dnl --- the marker for quick search, leave it here: SHARED_LIB_SETUP --- if test "$wxUSE_SHARED" = "yes"; then case "${host}" in - *-pc-os2_emx | *-pc-os2-emx | \ *-pc-msdosdjgpp ) dnl only static for now wxUSE_SHARED=no @@ -3347,6 +3378,10 @@ EOF chmod +x change-install-names ;; + *-*-cygwin* | *-*-mingw32* ) + TOOLCHAIN_DLL_DEFS="${TOOLCHAIN_DLL_DEFS} -DWXUSINGDLL=1" + ;; + esac dnl set target to shared if not explicitly chose static before @@ -3553,6 +3588,11 @@ if test "$wx_cv_sizeof_wchar_t" != "0"; then AC_DEFINE(HAVE_WCSLEN) fi + dnl HP-UX aCC needs this define to find mbstrtowcs() &c + if test "$USE_HPUX" = 1 -a "x$GCC" != "xyes"; then + CPPFLAGS="$CPPFLAGS -D_INCLUDE__STDC_A1_SOURCE " + fi + dnl try to use wcsrtombs instead of wcstombs which is buggy in old GNU dnl libc versions if possible AC_CHECK_FUNCS(wcsrtombs) @@ -4081,6 +4121,10 @@ if test "$TOOLKIT" != "MSW" -a "$USE_OS2" != 1; then if test "x$GCC" != "xyes"; then dnl see http://docs.hp.com/hpux/onlinedocs/2213/threads.htm flag="$flag -D_RWSTD_MULTI_THREAD" + + dnl we also need -lcma for user threads (-lpthread is for + dnl kernel threads only) according to Ian Brown + LIBS="$LIBS -lcma" fi ;; *solaris* | alpha*-osf*) @@ -4601,10 +4645,6 @@ if test "$wxUSE_ZIPSTREAM" = "yes"; then AC_DEFINE(wxUSE_ZIPSTREAM) fi -if test "$wxUSE_GZSTREAM" = "yes"; then - AC_DEFINE(wxUSE_GZSTREAM) -fi - if test "$wxUSE_ON_FATAL_EXCEPTION" = "yes"; then AC_DEFINE(wxUSE_ON_FATAL_EXCEPTION) fi @@ -5003,7 +5043,6 @@ if test "$wxUSE_GUI" = "yes"; then fi - dnl --------------------------------------------------------------------------- dnl String stuff dnl --------------------------------------------------------------------------- @@ -5203,11 +5242,14 @@ if test "$wxUSE_DRAG_AND_DROP" = "yes" ; then if test "$wxUSE_DRAG_AND_DROP" = "yes"; then AC_DEFINE(wxUSE_DRAG_AND_DROP) - SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS dnd" fi fi +if test "$wxUSE_DRAG_AND_DROP" = "yes" -o "$wxUSE_CLIPBOARD" = "yes"; then + SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS dnd" +fi + if test "$wxUSE_SPLINES" = "yes" ; then AC_DEFINE(wxUSE_SPLINES) fi @@ -5937,6 +5979,8 @@ AC_SUBST(TOOLKIT_VERSION) AC_SUBST(SAMPLES_RPATH_FLAG) AC_SUBST(SAMPLES_RPATH_POSTLINK) AC_SUBST(HOST_SUFFIX) +AC_SUBST(CPPUNIT_CFLAGS) +AC_SUBST(CPPUNIT_LIBS) AC_BAKEFILE @@ -5953,6 +5997,24 @@ else CODE_GEN_FLAGS="-DNO_GCC_PRAGMA $CODE_GEN_FLAGS" CPPFLAGS="-DNO_GCC_PRAGMA $CPPFLAGS" ;; + *-*-mingw32* ) + dnl MinGW GCC versions >= 3.2 have problems with + dnl static member of classes derived from templates + dnl in combination with #pragme interface/implementation + dnl (the test case uses 4 files) + if test "$wxUSE_STL" = "yes"; then + AC_MSG_CHECKING([If this MinGW version needs -DNO_GCC_PRAGMA]) + AC_TRY_COMPILE([], + [#if !(__GNUC__ == 3 && __GNUC_MINOR__ >= 2) + #error "Not GCC 3.2 or greater" + #endif + ], + [CODE_GEN_FLAGS="-DNO_GCC_PRAGMA $CODE_GEN_FLAGS" + CPPFLAGS="-DNO_GCC_PRAGMA $CPPFLAGS" + AC_MSG_RESULT([yes])], + [AC_MSG_RESULT([no])]) + fi + ;; esac fi @@ -6149,6 +6211,8 @@ else dnl we build wxBase only dnl there are no wxBase programs in contrib nor demos SUBDIRS="samples utils" fi +dnl Add tests to the list of subdirs if cppunit 1.8.0+ is detected +AM_PATH_CPPUNIT(1.8.0, [SUBDIRS="$SUBDIRS tests"]) for subdir in `echo $SUBDIRS`; do if test -d ${srcdir}/${subdir} ; then @@ -6170,11 +6234,13 @@ for subdir in `echo $SUBDIRS`; do dnl wxBase if test ${subdir} = "samples"; then makefiles="samples/Makefile.in samples/console/Makefile.in" - else dnl utils + elif test ${subdir} = "utils"; then makefiles="utils/HelpGen/Makefile.in \ utils/HelpGen/src/Makefile.in \ utils/tex2rtf/Makefile.in \ utils/tex2rtf/src/Makefile.in" + else dnl assume that everything compiles for tests + makefiles=`(cd $srcdir ; find $subdir -name Makefile.in)` fi fi