INCLUDE_SUBDIRS="$INCLUDE_SUBDIRS be"
fi
-dnl Linux: test for libc5/glibc2: glibc2 has gettext() included
+dnl check for glibc version
if test "$USE_LINUX" = 1; then
- AC_CHECK_LIB(c,gettext,AC_DEFINE(wxHAVE_GLIBC2))
+ AC_CACHE_CHECK([for glibc 2.1 or later], wx_lib_glibc21,
+ AC_TRY_COMPILE([#include <features.h>],
+ [
+ #if !__GLIBC_PREREQ(2, 1)
+ #error not glibc2.1
+ #endif
+ ],
+ [
+ wx_lib_glibc21=yes
+ ],
+ [
+ wx_lib_glibc21=no
+ ]
+ )
+ )
+
+ if test "$wx_lib_glibc21" = "yes"; then
+ AC_DEFINE(wxHAVE_GLIBC2)
+ fi
fi
dnl ---------------------------------------------------------------------------
DEFAULT_wxUSE_MSGDLG=no
DEFAULT_wxUSE_NUMBERDLG=no
DEFAULT_wxUSE_TEXTDLG=no
+ DEFAULT_wxUSE_SPLASH=no
DEFAULT_wxUSE_STARTUP_TIPS=no
DEFAULT_wxUSE_PROGRESSDLG=no
DEFAULT_wxUSE_WIZARDDLG=no
DEFAULT_wxUSE_MSGDLG=yes
DEFAULT_wxUSE_NUMBERDLG=yes
DEFAULT_wxUSE_TEXTDLG=yes
+ DEFAULT_wxUSE_SPLASH=yes
DEFAULT_wxUSE_STARTUP_TIPS=yes
DEFAULT_wxUSE_PROGRESSDLG=yes
DEFAULT_wxUSE_WIZARDDLG=yes
WX_ARG_ENABLE(dirdlg, [ --enable-dirdlg use wxDirDialog], wxUSE_DIRDLG)
WX_ARG_ENABLE(msgdlg, [ --enable-msgdlg use wxMessageDialog], wxUSE_MSGDLG)
WX_ARG_ENABLE(numberdlg, [ --enable-numberdlg use wxNumberEntryDialog], wxUSE_NUMBERDLG)
+WX_ARG_ENABLE(splash, [ --enable-splash use wxSplashScreen], wxUSE_SPLASH)
WX_ARG_ENABLE(textdlg, [ --enable-textdlg use wxTextDialog], wxUSE_TEXTDLG)
WX_ARG_ENABLE(tipdlg, [ --enable-tipdlg use startup tips], wxUSE_STARTUP_TIPS)
WX_ARG_ENABLE(progressdlg, [ --enable-progressdlg use wxProgressDialog], wxUSE_PROGRESSDLG)
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
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}"
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 <sys/vfs.h>
+ ],
+ [
+ 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
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
+
AC_CACHE_CHECK([for pthread_mutexattr_t], wx_cv_type_pthread_mutexattr_t,
[
AC_TRY_COMPILE([#include <pthread.h>],
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
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"
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)
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}
AC_DEFINE(wxUSE_STREAMS)
fi
-dnl ------------------------------------------------------------------------
+dnl ---------------------------------------------------------------------------
dnl time/date functions
dnl ------------------------------------------------------------------------
],
[
struct timeval tv;
- struct timezone tz;
- gettimeofday(&tv, &tz);
+ gettimeofday(&tv, NULL);
],
wx_cv_func_gettimeofday_has_2_args=yes,
AC_TRY_COMPILE(
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
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
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)
if test "$wxUSE_CLIPBOARD" = "yes"; then
AC_DEFINE(wxUSE_CLIPBOARD)
+
+ dnl required by clipboard code in configuration check
AC_DEFINE(wxUSE_DATAOBJ)
fi
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"
fi
fi
+if test "$wxUSE_SPLASH" = "yes"; then
+ AC_DEFINE(wxUSE_SPLASH)
+fi
+
if test "$wxUSE_STARTUP_TIPS" = "yes"; then
if test "$wxUSE_CONSTRAINTS" != "yes"; then
AC_MSG_WARN(Startup tips requires constraints and won't be compiled without them)
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 ---------------------------------------------------------------------------