# The makefile currently uses AR and RANLIB, which libtool apparently supercedes.
fi
+dnl gcc 3.4 has a pch bug which truncates wide character constants in headers.
+dnl Hopefully for a non-unicode build there aren't any wide constants in
+dnl headers, but for a unicode build it's best to disable pch.
+if test "$wxUSE_UNICODE" = yes -a "$GCC" = yes -a "$bk_use_pch" != no
+then
+ AC_CACHE_CHECK(
+ [for gcc precompiled header bug],
+ [wx_cv_gcc_pch_bug],
+ [[
+ wx_cv_gcc_pch_bug=no
+ echo 'const wchar_t test_var[] = L"wide string";' > conftest.h
+
+ if $CXX conftest.h >& /dev/null
+ then
+ {
+ echo '#include "conftest.h"'
+ echo 'const wchar_t *test() { return test_var; }'
+ } > conftest.cpp
+
+ if $CXX -c -o conftest.o conftest.cpp >& /dev/null
+ then
+ tr -dc 'a-z' < conftest.o |
+ grep 'widestring' >& /dev/null ||
+ wx_cv_gcc_pch_bug=yes
+ fi
+ fi
+
+ rm -f conftest.h conftest.gch conftest.cpp conftest.o
+ ]])
+
+ if test "$wx_cv_gcc_pch_bug" = yes; then
+ dnl make the default for pch 'no'
+ dnl further below check whether the user overrode and warn them
+ bk_use_pch=no
+ fi
+fi
+
AC_BAKEFILE([m4_include(autoconf_inc.m4)])
+dnl find out if the compiler supports PCH
+dnl
+dnl TODO: this should be in bakefile
+if test $GCC_PCH = 1
+then
+ if test "$wx_cv_gcc_pch_bug" = yes; then
+ AC_MSG_WARN([*** Precompiled header support is broken on this compiler])
+ AC_MSG_WARN([*** --enable-precomp-headers is not recommended])
+ AC_MSG_WARN([*** see http://gcc.gnu.org/bugzilla/show_bug.cgi?id=13361])
+ fi
+
+ CPPFLAGS="-DWX_PRECOMP $CPPFLAGS"
+fi
+
dnl HACK ALERT!!
dnl For now, we need to alter bk-deps not to generate deps
dnl when we've configured a Universal binary build.
esac
fi
-dnl find out if the compiler supports PCH
-dnl
-dnl TODO: this should be in bakefile
-if test $GCC_PCH = 1 ; then
- CPPFLAGS="-DWX_PRECOMP $CPPFLAGS"
-fi
-
dnl TOOLCHAIN_DEFS should be used for both wx and client code
WXCONFIG_CPPFLAGS="$WXCONFIG_CPPFLAGS $TOOLCHAIN_DEFS"