X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/ab252f7b29379d786302b563f97cb8d0ee2a1246..33381c829bba890f5d0e0642dbe2fdfa60fafd4d:/configure.in diff --git a/configure.in b/configure.in index 68f6bf63fb..f9383cabb7 100644 --- a/configure.in +++ b/configure.in @@ -589,7 +589,7 @@ fi dnl check for glibc version if test "$USE_LINUX" = 1; then - AC_CACHE_CHECK([for glibc version], wx_lib_glibc21, + AC_CACHE_CHECK([for glibc 2.1 or later], wx_lib_glibc21, AC_TRY_COMPILE([#include ], [ #if !__GLIBC_PREREQ(2, 1) @@ -597,18 +597,16 @@ if test "$USE_LINUX" = 1; then #endif ], [ - AC_MSG_RESULT(2.1 or later), wx_lib_glibc21=yes ], [ - AC_MSG_RESULT(less than 2.1), wx_lib_glibc21=no ] ) ) if test "$wx_lib_glibc21" = "yes"; then - AC_DEFINE(wxHAVE_GLIBC2)) + AC_DEFINE(wxHAVE_GLIBC2) fi fi @@ -2307,9 +2305,8 @@ if test "$wxUSE_SHARED" = "yes"; then fi ;; *-*-darwin* ) - TOOLKIT_DEF="${TOOLKIT_DEF} -D__UNIX__ -D__DARWIN__ -D__POWERPC__" - CFLAGS="${CFLAGS} -fno-common" - CPPFLAGS="${CPPFLAGS} -fno-common" + TOOLKIT_DEF="${TOOLKIT_DEF} -D__UNIX__ -D__DARWIN__ -D__POWERPC__" + CPPFLAGS="${CPPFLAGS} -fno-common" SHARED_LD="${CXX} -dynamiclib -o" PIC_FLAG="-dynamic -fPIC" if test "$wxUSE_OPENGL" = "yes"; then @@ -2320,9 +2317,9 @@ if test "$wxUSE_SHARED" = "yes"; then WX_ALL="CREATE_LINKS" fi dnl add the resources target for wxMac - if test "$wxUSE_MAC" = 1 ; then - WX_ALL="${WX_ALL} ./lib/lib${WX_LIBRARY}-${WX_RELEASE}.r" - fi + if test "$wxUSE_MAC" = 1 ; then + WX_ALL="${WX_ALL} ./lib/lib${WX_LIBRARY}-${WX_RELEASE}.r" + fi dnl the name of the shared library WX_LIBRARY_NAME_SHARED="lib${WX_LIBRARY}-${WX_RELEASE}.dylib.${WX_CURRENT}.${WX_REVISION}.${WX_AGE}" WX_LIBRARY_NAME_SHARED_GL="lib${WX_LIBRARY}_gl-${WX_RELEASE}.dylib.${WX_CURRENT}.${WX_REVISION}.${WX_AGE}" @@ -2825,6 +2822,35 @@ fi dnl check for vfork() (even if it's the same as fork() in modern Unices) AC_CHECK_FUNCS(vfork) +dnl get the library function to use for wxGetDiskSpace() +AC_CACHE_CHECK(for statfs, wx_cv_func_statfs, + AC_TRY_COMPILE( + [ + #include + ], + [ + long l; + struct statfs fs; + statfs("/", &fs); + l = fs.f_bsize; + l += fs.f_blocks; + l += fs.f_bavail; + ], + [ + wx_cv_func_statfs=yes + ], + [ + wx_cv_func_statfs=no + ] + ) +) + +if test "$wx_cv_func_statfs" = "yes"; then + AC_DEFINE(HAVE_STATFS) +else + AC_MSG_WARN([wxGetDiskSpace() function won't work without statfs()]) +fi + dnl check for fcntl() or at least flock() needed by Unix implementation of dnl wxSingleInstanceChecker if test "$wxUSE_SNGLINST_CHECKER" = "yes"; then @@ -3074,10 +3100,12 @@ if test "$wxUSE_THREADS" = "yes" ; then dnl defined, we do it by directly assigned dnl PTHREAD_MUTEX_RECURSIVE_MUTEX_INITIALIZER_NP to attr - dnl we need to define _XOPEN_SOURCE=500 to get PTHREAD_MUTEX_RECURSIVE - dnl with glibc 2.1+, it probably shouldn't hurt elsewhere? + 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 - CFLAGS="$CFLAGS -D_XOPEN_SOURCE=500" + CPPFLAGS="$CPPFLAGS -D_GNU_SOURCE" fi AC_CACHE_CHECK([for pthread_mutexattr_t], wx_cv_type_pthread_mutexattr_t, @@ -3124,7 +3152,7 @@ if test "$wxUSE_THREADS" = "yes" ; then dnl building MT programs under Solaris with the native compiler requires -mt dnl switch if test "$USE_SOLARIS" = "yes" -a "$GCC" != "yes"; then - CFLAGS="${CFLAGS} -mt" + CPPFLAGS="${CFLAGS} -mt" CXXFLAGS="${CXXFLAGS} -mt" LDFLAGS="${LDFLAGS} -mt" fi @@ -3138,8 +3166,7 @@ if test "$wxUSE_THREADS" = "yes"; then dnl must define _REENTRANT for multithreaded code except for Darwin/Mac OS X if test "$USE_DARWIN" != 1; then - CFLAGS="${CFLAGS} -D_REENTRANT" - CXXFLAGS="${CXXFLAGS} -D_REENTRANT" + CPPFLAGS="${CPPFLAGS} -D_REENTRANT" fi SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS thread" @@ -3149,8 +3176,7 @@ else if test "$ac_cv_func_strtok_r" = "yes"; then AC_MSG_CHECKING(if -D_REENTRANT is needed) if test "$NEEDS_D_REENTRANT_FOR_R_FUNCS" = 1; then - CFLAGS="${CFLAGS} -D_REENTRANT" - CXXFLAGS="${CXXFLAGS} -D_REENTRANT" + CPPFLAGS="${CPPFLAGS} -D_REENTRANT" AC_MSG_RESULT(yes) else AC_MSG_RESULT(no) @@ -3177,8 +3203,8 @@ fi if test "$wxUSE_MAC" = 1 ; then TOOLKIT_DEF="${TOOLKIT_DEF} -DTARGET_CARBON" - CFLAGS="${CFLAGS} -fpascal-strings" - CPPFLAGS="${CPPFLAGS} -cpp-precomp -fpascal-strings" + CPPFLAGS="${CPPFLAGS} -fpascal-strings" + CXXFLAGS="${CXXFLAGS} -cpp-precomp" AC_CHECK_PROG(REZ, Rez, Rez, /Developer/Tools/Rez) AC_CHECK_PROG(DEREZ, Derez, Derez, /Developer/Tools/Derez) RESCOMP=${REZ} @@ -3574,7 +3600,7 @@ if test "$wxUSE_STREAMS" = "yes" ; then AC_DEFINE(wxUSE_STREAMS) fi -dnl ------------------------------------------------------------------------ +dnl --------------------------------------------------------------------------- dnl time/date functions dnl ------------------------------------------------------------------------ @@ -3679,8 +3705,7 @@ if test "$wxUSE_DATETIME" = "yes"; then ], [ struct timeval tv; - struct timezone tz; - gettimeofday(&tv, &tz); + gettimeofday(&tv, NULL); ], wx_cv_func_gettimeofday_has_2_args=yes, AC_TRY_COMPILE( @@ -3693,7 +3718,10 @@ if test "$wxUSE_DATETIME" = "yes"; then gettimeofday(&tv); ], wx_cv_func_gettimeofday_has_2_args=no, - wx_cv_func_gettimeofday_has_2_args=unknown + [ + AC_MSG_WARN([failed to determine number of gettimeofday() arguments]) + wx_cv_func_gettimeofday_has_2_args=unknown + ] ) ) AC_LANG_RESTORE @@ -3983,7 +4011,7 @@ if test "$wxUSE_HELP" = "yes"; then AC_DEFINE(wxUSE_MS_HTML_HELP) ], [ - AC_MSG_WARN(MS HTML Help cannot be used without htmlhelp.h so it won't be compiled without it) + AC_MSG_WARN([MS HTML Help cannot be used without htmlhelp.h, disabled]) wxUSE_MS_HTML_HELP=no ]) fi @@ -4025,6 +4053,40 @@ dnl --------------------------------------------------------------------------- dnl IPC: IPC, Drag'n'Drop, Clipboard, ... dnl --------------------------------------------------------------------------- +dnl check for ole headers and disable a few features requiring it if not +dnl present (earlier versions of mingw32 don't have ole2.h) +if test "$USE_WIN32" = 1; then + AC_CHECK_HEADERS(ole2.h) + + if test "$ac_cv_header_ole2_h" = "yes" ; then + if test "$GCC" = yes ; then + ALL_OBJECTS="$ALL_OBJECTS \$(OLEOBJS)" + ALL_DEPFILES="$ALL_DEPFILES \$(OLEDEPS)" + CODE_GEN_FLAGS_CXX="$CODE_GEN_FLAGS_CXX -fvtable-thunks" + LIBS="$LIBS -lrpcrt4 -loleaut32 -lole32 -luuid" + AC_DEFINE(wxUSE_OLE) + + fi + + dnl for OLE clipboard and dnd + AC_DEFINE(wxUSE_DATAOBJ) + else + AC_MSG_WARN([Some features disabled because OLE headers not found]) + + wxUSE_CLIPBOARD=no + wxUSE_DRAG_AND_DROP=no + wxUSE_DATAOBJ=no + fi + + dnl this is for MSW only, so we test for it inside "if USE_WIN32" + if test "$wxUSE_METAFILE" = "yes"; then + AC_DEFINE(wxUSE_METAFILE) + + dnl this one should probably be made separately configurable + AC_DEFINE(wxUSE_ENH_METAFILE) + fi +fi + if test "$wxUSE_IPC" = "yes"; then if test "$wxUSE_SOCKETS" != "yes"; then AC_MSG_WARN(wxWindows IPC classes require sockets, disabled) @@ -4035,6 +4097,8 @@ fi if test "$wxUSE_CLIPBOARD" = "yes"; then AC_DEFINE(wxUSE_CLIPBOARD) + + dnl required by clipboard code in configuration check AC_DEFINE(wxUSE_DATAOBJ) fi @@ -4056,34 +4120,6 @@ if test "$wxUSE_DRAG_AND_DROP" = "yes" ; then wxUSE_DRAG_AND_DROP=no fi - if test "$USE_WIN32" = 1; then - dnl check for ole headers and disable DnD if not present (earlier - dnl versions of mingw32 don't have them) - - AC_CHECK_HEADERS(ole2.h) - - if test "$ac_cv_header_ole2_h" = "yes" ; then - if test "$GCC" = yes ; then - ALL_OBJECTS="$ALL_OBJECTS \$(OLEOBJS)" - ALL_DEPFILES="$ALL_DEPFILES \$(OLEDEPS)" - CODE_GEN_FLAGS_CXX="$CODE_GEN_FLAGS_CXX -fvtable-thunks" - LIBS="$LIBS -lrpcrt4 -loleaut32 -lole32 -luuid" - AC_DEFINE(wxUSE_OLE) - - dnl metafiles need the ole code, right?? if not this - dnl doesn't need to be in here. - if test "$wxUSE_METAFILE" = "yes"; then - AC_DEFINE(wxUSE_METAFILE) - dnl this one should probably be made separately configurable - AC_DEFINE(wxUSE_ENH_METAFILE) - fi - fi - else - AC_MSG_WARN(Drag and drop disabled because OLE headers not found) - wxUSE_DRAG_AND_DROP=no - fi - fi - if test "$wxUSE_DRAG_AND_DROP" = "yes"; then AC_DEFINE(wxUSE_DRAG_AND_DROP) SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS dnd" @@ -4509,6 +4545,18 @@ fi AC_DEFINE_UNQUOTED(WXWIN_OS_DESCRIPTION, $OSINFO) +dnl --------------------------------------------------------------------------- +dnl define the variable containing the installation prefix (used in dcpsg.cpp) +dnl --------------------------------------------------------------------------- + +if test "x$prefix" != "xNONE"; then + wxPREFIX=$prefix +else + wxPREFIX=$ac_default_prefix +fi + +AC_DEFINE_UNQUOTED(wxINSTALL_PREFIX, "$wxPREFIX") + dnl --------------------------------------------------------------------------- dnl Output the makefiles and such from the results found above dnl ---------------------------------------------------------------------------