AC_DEFINE(__BSD__)
AC_DEFINE(__DARWIN__)
AC_DEFINE(__POWERPC__)
+ AC_DEFINE(TARGET_CARBON)
DEFAULT_DEFAULT_wxUSE_MAC=1
;;
WX_ARG_ENABLE(no_deps, [ --enable-no_deps create code without dependency information], wxUSE_NO_DEPS)
WX_ARG_ENABLE(compat20, [ --enable-compat20 enable wxWindows 2.0 compatibility], WXWIN_COMPATIBILITY_2)
-WX_ARG_ENABLE(compat22, [ --disable-compat22 disable wxWindows 2.2 compatibility], WXWIN_COMPATIBILITY_2_2, disable)
+WX_ARG_ENABLE(compat22, [ --enable-compat22 enable wxWindows 2.2 compatibility], WXWIN_COMPATIBILITY_2_2)
+WX_ARG_ENABLE(compat24, [ --disable-compat24 disable wxWindows 2.4 compatibility], WXWIN_COMPATIBILITY_2_4, disable)
AC_ARG_ENABLE(rpath, [ --enable-rpath=DIR output the rpath flag from wx-config], [wxRPATH_DIR="$enableval"])
dnl defines INSTALL with the appropriate command
AC_PROG_INSTALL
-dnl make install path absolute (if not already); will fail with MSDOS paths
+dnl make install path absolute (if not already);
+dnl will fail with (some) MSDOS paths
case ${INSTALL} in
/* ) # Absolute
;;
+ ?:* ) # Drive letter, considered as absolute.
+ ;;
*)
INSTALL=`pwd`/${INSTALL} ;;
esac
+dnl HP-UX install doesn't handle the "-d" switch so don't use it there
+case ${host} in
+ *-hp-hpux* )
+ INSTALL_DIR="mkdir"
+ ;;
+
+ *) INSTALL_DIR="$INSTALL -d"
+ ;;
+esac
+
case "${host}" in
dnl defines HAVE_LANGINFO_H (GNU libc locale parameters)
AC_CHECK_HEADERS(langinfo.h)
+case "${host}" in
+ *-pc-os2_emx | *-pc-os2-emx )
+ dnl Explicitly link -lintl if langinfo.h is available.
+ if test $ac_cv_header_langinfo_h = "yes"; then
+ LIBS="$LIBS -lintl"
+ fi
+ ;;
+esac
+
if test "$wxUSE_GUI" = "yes"; then
if test "$wxUSE_UNIX" = "yes"; then
dnl defines HAVE_X11_XKBLIB_H
fi
if test "$wxUSE_MGL" = 1; then
- AC_MSG_CHECKING(for SciTech MGL library)
+ AC_MSG_CHECKING(for SciTech MGL library)
if test "x$MGL_ROOT" = x ; then
AC_MSG_RESULT(not found)
AC_MSG_ERROR([Cannot find MGL library. Make sure MGL_ROOT is set.])
AC_MSG_RESULT($MGL_ROOT)
fi
+ AC_MSG_CHECKING(for libmgl location)
dnl Find MGL library that we want
dnl FIXME_MGL - test for MGL variants for freebsd etc.
case "${host}" in
*-*-linux* )
- mgl_os="linux/gcc/glibc*"
+ if test "x$wxUSE_SHARED" = xyes ; then
+ mgl_os_candidates="linux/gcc/glibc.so linux/gcc/glibc"
+ else
+ mgl_os_candidates="linux/gcc/glibc linux/gcc/glibc.so"
+ fi
;;
*-pc-msdosdjgpp )
- mgl_os=dos32/dj2
+ mgl_os_candidates="dos32/dj2"
;;
*)
AC_MSG_ERROR(This system type ${host} is not yet supported by wxMGL.)
esac
mgl_lib_type=""
-
- if test "$wxUSE_DEBUG_FLAG" = yes ; then
- if test -f $MGL_ROOT/lib/debug/$mgl_os/libmgl.a -o \
- -f $MGL_ROOT/lib/debug/$mgl_os/libmgl.so; then
- mgl_lib_type=debug
- fi
- fi
- if test "x$mgl_lib_type" = x ; then
- if test -f $MGL_ROOT/lib/release/$mgl_os/libmgl.a -o \
- -f $MGL_ROOT/lib/release/$mgl_os/libmgl.so; then
- mgl_lib_type=release
- else
- AC_MSG_ERROR([Cannot find MGL libraries, make sure they are compiled.])
+ mgl_os=""
+
+ for mgl_os_i in $mgl_os_candidates ; do
+ if test "x$mgl_os" = x ; then
+ if test "$wxUSE_DEBUG_FLAG" = yes ; then
+ if test -f $MGL_ROOT/lib/debug/$mgl_os_i/libmgl.a -o \
+ -f $MGL_ROOT/lib/debug/$mgl_os_i/libmgl.so; then
+ mgl_lib_type=debug
+ mgl_os=$mgl_os_i
+ fi
+ fi
+ if test "x$mgl_lib_type" = x ; then
+ if test -f $MGL_ROOT/lib/release/$mgl_os_i/libmgl.a -o \
+ -f $MGL_ROOT/lib/release/$mgl_os_i/libmgl.so; then
+ mgl_lib_type=release
+ mgl_os=$mgl_os_i
+ fi
+ fi
fi
- fi
+ done
+ if test "x$mgl_os" = x ; then
+ AC_MSG_RESULT(not found)
+ AC_MSG_ERROR([Cannot find MGL libraries, make sure they are compiled.])
+ fi
+ AC_MSG_RESULT("$MGL_ROOT/lib/$mgl_lib_type/$mgl_os")
+
wxUSE_UNIVERSAL="yes"
TOOLKIT_INCLUDE="-I$MGL_ROOT/include"
STATIC_FLAG="no"
fi
+dnl default value is to (silently) do nothing in the makefile
+MACRESCOMP="@#"
+MACSETFILE="@#"
+MACRESWXCONFIG="#"
if test "$wxUSE_MAC" = 1; then
dnl add the resources target for wxMac
LIBWXMACRES="\$(top_builddir)/lib/${WX_RESOURCES_MACOSX_ASCII}"
WX_ALL_INSTALLED="${WX_ALL_INSTALLED} preinstall_res"
AC_CHECK_PROG(RESCOMP, Rez, Rez, /Developer/Tools/Rez)
AC_CHECK_PROG(DEREZ, DeRez, DeRez, /Developer/Tools/DeRez)
+ AC_CHECK_PROG(SETFILE, SetFile, SetFile, /Developer/Tools/SetFile)
MACOSX_BUNDLE="bundle"
dnl resources are bundled both with shared library and applications
dnl since the carb resource *must* be included in the application
- LIBWXMACRESCOMP="\$(RESCOMP) -t APPL Carbon.r ${LIBWXMACRES} -o \$(BIN_PROGRAM)"
- LIBWXMACRESWXCONFIG="${RESCOMP} -t APPL Carbon.r \${prefix}/lib/${WX_RESOURCES_MACOSX_ASCII} -o"
+ MACRESCOMP="\$(RESCOMP) -d __DARWIN__ -t APPL Carbon.r ${LIBWXMACRES} -o"
+ MACSETFILE="\$(SETFILE)"
+ MACRESWXCONFIG="${RESCOMP} -d __DARWIN__ -t APPL Carbon.r \$(top_builddir)/lib/${WX_RESOURCES_MACOSX_ASCII}} -o"
else
if test "$wxUSE_PM" = 1; then
- LIBWXMACRESCOMP="emxbind -ep \$(BIN_PROGRAM)"
+ MACRESCOMP="emxbind -ep"
fi
fi
AC_LANG_CPLUSPLUS
dnl check for vsnprintf() -- a safe version of vsprintf())
+dnl
+dnl the trouble here is that on some systems (notable HP-UX) this function is
+dnl present in libc but not in the system headers and so AC_CHECK_FUNCS (which,
+dnl stupidly, provides a dummy function declaration inside its extension)
+dnl succeeds, even with C++ compiler, but the compilation of wxWindows fails
+dnl
+dnl so we first check if the function is in the library
AC_CHECK_FUNCS(vsnprintf)
+if test "$ac_cv_func_vsnprintf" = "yes"; then
+ dnl yes it is -- now check if it is in the headers
+ AC_CACHE_CHECK([for vsnprintf declaration], wx_cv_func_vsnprintf_decl,
+ [
+ AC_TRY_COMPILE(
+ [
+ #include <stdio.h>
+ #include <stdarg.h>
+ ],
+ [
+ char *buf;
+ va_list ap;
+ vsnprintf(buf, 10u, "%s", ap);
+ ],
+ wx_cv_func_vsnprintf_decl=yes,
+ wx_cv_func_vsnprintf_decl=no
+ )
+ ]
+ )
+
+ if test "$wx_cv_func_vsnprintf_decl" = "yes"; then
+ AC_DEFINE(HAVE_VSNPRINTF_DECL)
+ fi
+fi
+
if test "$wxUSE_UNICODE" = yes; then
dnl also look if we have wide char IO functions
AC_CHECK_FUNCS(fputwc wprintf vswprintf)
+
dnl MinGW has a vswprintf with a different prototype, and
dnl a _vsnwprintf with the correct prototype, but AC_CHECK_FUNCS
dnl finds it even if it is not declared in some versions...
],
[
long l;
- statvfs_t fs;
+ struct statvfs fs;
statvfs("/", &fs);
l = fs.f_bsize;
l += fs.f_blocks;
dnl AIX calls the library libpthreads - thanks IBM!
THREAD_OPTS="pthreads"
;;
+ *-hp-hpux* )
+ dnl HP-UX aCC only gives a warning, not an error about
+ dnl -pthread but it doesn't work and we have to use -lpthread
+ dnl there
+ if test "x$GCC" != "xyes"; then
+ THREAD_OPTS=""
+ fi
esac
dnl simply linking with libpthread should make the test below work but
;;
*-hp-hpux* )
flag="-D_REENTRANT"
+ if test "x$GCC" != "xyes"; then
+ dnl see http://docs.hp.com/hpux/onlinedocs/2213/threads.htm
+ flag="$flag -D_RWSTD_MULTI_THREAD"
+ fi
;;
*solaris* | alpha*-osf*)
flag="-D_REENTRANT"
fi
fi
+dnl ---------------------------------------------------------------------------
+dnl compatibility level
+dnl ---------------------------------------------------------------------------
+
if test "$WXWIN_COMPATIBILITY_2" = "yes"; then
AC_DEFINE(WXWIN_COMPATIBILITY_2)
WXWIN_COMPATIBILITY_2_2="yes"
fi
-if test "x$WXWIN_COMPATIBILITY_2_2" != "xno"; then
+if test "x$WXWIN_COMPATIBILITY_2_2" = "xyes"; then
AC_DEFINE(WXWIN_COMPATIBILITY_2_2)
+
+ WXWIN_COMPATIBILITY_2_4="yes"
+fi
+
+if test "x$WXWIN_COMPATIBILITY_2_4" != "xno"; then
+ AC_DEFINE(WXWIN_COMPATIBILITY_2_4)
fi
dnl ---------------------------------------------------------------------------
AC_DEFINE_UNQUOTED(wxINSTALL_PREFIX, "$wxPREFIX")
+dnl define the variables used in wx-config
+top_builddir=`pwd`
+
dnl ---------------------------------------------------------------------------
dnl Output the makefiles and such from the results found above
dnl ---------------------------------------------------------------------------
AC_SUBST(TOOLCHAIN_DLL_DEFS)
dnl wx-config options
+AC_SUBST(top_builddir)
AC_SUBST(host_alias)
AC_SUBST(cross_compiling)
AC_SUBST(WXCONFIG_LIBS)
AC_SUBST(DEREZ)
AC_SUBST(MACOSX_BUNDLE)
AC_SUBST(LIBWXMACRES)
-AC_SUBST(LIBWXMACRESCOMP)
-AC_SUBST(LIBWXMACRESWXCONFIG)
+AC_SUBST(MACRESCOMP)
+AC_SUBST(MACSETFILE)
+AC_SUBST(MACRESWXCONFIG)
dnl other tools
AC_SUBST(GCC)
AC_SUBST(LD)
AC_SUBST(MAKEINFO)
AC_SUBST(INSTALL_LIBRARY)
+AC_SUBST(INSTALL_DIR)
dnl MAKE_SET will be replaced with "MAKE=..." or nothing if make sets MAKE
dnl itself (this macro is required if SUBDIRS variable is used in Makefile.am
echo " What level of wxWindows compatibility should be enabled?"
echo " wxWindows 2.0 ${WXWIN_COMPATIBILITY_2:-no}"
-echo " wxWindows 2.2 ${WXWIN_COMPATIBILITY_2_2:-yes}"
+echo " wxWindows 2.2 ${WXWIN_COMPATIBILITY_2_2:-no}"
+echo " wxWindows 2.4 ${WXWIN_COMPATIBILITY_2_4:-yes}"
echo " Which libraries should wxWindows use?"
echo " jpeg ${wxUSE_LIBJPEG-none}"