config_host.mk.in | 1 configure.ac | 102 ++++++++++++++++++++++++++++++++++++++------------ icu/icu4c-build.patch | 19 +++++++++ vcl/Library_vcl.mk | 3 - 4 files changed, 101 insertions(+), 24 deletions(-)
New commits: commit fa205eab3712d41e97b80c80baac3f8094f7e0a5 Author: Tor Lillqvist <t...@collabora.com> Date: Mon Feb 10 11:40:33 2014 +0200 Use IOKit *framework*, not library directly. And ApplicationServices Change-Id: I6e67bb5a4c540d0be605c54c833ebb0b4187c771 diff --git a/vcl/Library_vcl.mk b/vcl/Library_vcl.mk index b8a1f97..cff99f6 100644 --- a/vcl/Library_vcl.mk +++ b/vcl/Library_vcl.mk @@ -79,7 +79,8 @@ $(eval $(call gb_Library_use_libraries,vcl,\ ifeq ($(OS),MACOSX) $(eval $(call gb_Library_add_libs,vcl,\ - -lIOKit \ + -framework IOKit \ + -framework ApplicationServices \ -lobjc \ )) endif commit 00ff1b319bfe05be78afa51dd01a06951ae02ac9 Author: Tor Lillqvist <t...@iki.fi> Date: Tue Jun 18 17:04:55 2013 +0300 Stop defining "inline" as empty on OS X and iOS in icu It causes problems on newer SDKs. Change-Id: I6bdb1e50cb239d99b190460fdb11d5c684e92275 diff --git a/icu/icu4c-build.patch b/icu/icu4c-build.patch index 30ba3ad..4e5d6d9 100644 --- a/icu/icu4c-build.patch +++ b/icu/icu4c-build.patch @@ -1,3 +1,22 @@ +--- misc/icu/source/common/umutex.h ++++ misc/icu/source/common/umutex.h +@@ -48,16 +48,8 @@ + #endif /* win32 */ + + #if U_PLATFORM_IS_DARWIN_BASED +-#if defined(__STRICT_ANSI__) +-#define UPRV_REMAP_INLINE +-#define inline +-#endif + #include <libkern/OSAtomic.h> + #define USE_MAC_OS_ATOMIC_INCREMENT 1 +-#if defined(UPRV_REMAP_INLINE) +-#undef inline +-#undef UPRV_REMAP_INLINE +-#endif + #endif + + /* --- misc/icu/source/tools/toolutil/pkg_genc.h +++ misc/build/icu/source/tools/toolutil/pkg_genc.h @@ -58,7 +58,7 @@ commit d242e4d89d50beea87f3e7cea94bb34dcf4e3d1e Author: Tor Lillqvist <t...@collabora.com> Date: Thu Oct 24 01:01:22 2013 +0300 Enforce avoiding looking for non-existent system dicts on OS X and Windows It is totally pointless to look for "system" /usr/share/myspell, hyphen and mythes dictionaries on systems where they don't exist. Use only bundled dictionaries. (For OS X, we have code to use a system-specific spell checking API.) Change-Id: I13aed7225d003e608f61de95671feb2e50b26c25 diff --git a/configure.ac b/configure.ac index f7c8087..cf87aab 100644 --- a/configure.ac +++ b/configure.ac @@ -4460,6 +4460,14 @@ else fi AC_SUBST(WITH_MYSPELL_DICTS) +# There are no "system" myspell, hyphen or mythes dictionaries on OS X, Windows, Android or iOS. +if test $_os = Darwin -o $_os = WINNT -o $_os = iOS -o $_os = Android; then + if test "$with_system_dicts" = yes; then + AC_MSG_ERROR([There are no system dicts on this OS in the formats the 3rd-party libs we use expect]); + fi + with_system_dicts=no +fi + AC_MSG_CHECKING([whether to use dicts from external paths]) if test -z "$with_system_dicts" -o "$with_system_dicts" != "no"; then AC_MSG_RESULT([yes]) commit 664c371b556b4717bd7ce2b16d5a0a55fd4d0681 Author: Stephan Bergmann <sberg...@redhat.com> Date: Thu Aug 29 08:51:01 2013 +0200 Do not silently ignore --enable-libc++ diff --git a/configure.ac b/configure.ac index f675204..f7c8087 100644 --- a/configure.ac +++ b/configure.ac @@ -2563,6 +2563,9 @@ if test "$_os" = "Darwin"; then AC_MSG_CHECKING([what compiler to use]) case $with_macosx_sdk in 10.6) + if test "$enable_libc__" = yes; then + AC_MSG_ERROR([--enable-libc++ requires --with-macosx-version-min-required >= 10.7]) + fi # did someone copy her 10.6 sdk into xcode 4 (needed on Mountain Lion)? if test "$(echo $MACOSX_SDK_PATH | cut -c1-23)" = "/Applications/Xcode.app"; then CC="`xcrun -find gcc` $bitness -mmacosx-version-min=$with_macosx_version_min_required -isysroot $MACOSX_SDK_PATH" @@ -2574,7 +2577,10 @@ if test "$_os" = "Darwin"; then fi ;; 10.7|10.8|10.9) - if test "$enable_libc__" = yes -a "$with_macosx_version_min_required" != 10.6; then + if test "$enable_libc__" = yes; then + if test "$with_macosx_version_min_required" = 10.6; then + AC_MSG_ERROR([--enable-libc++ requires --with-macosx-version-min-required >= 10.7]) + fi # Use libc++ instead of libstdc++ when possible # and also compile as C++11 stdlib="-std=c++11 -stdlib=libc++" commit e04715d09f8dc006c79d45c4947f4bde9c3343c4 Author: Tor Lillqvist <t...@iki.fi> Date: Wed Jun 19 13:36:27 2013 +0300 Don't use -d32 when building 64-bit code Change-Id: I83a960cebb8347170a08d2fda7ed11050b8c4229 diff --git a/configure.ac b/configure.ac index af48c3f..f675204 100644 --- a/configure.ac +++ b/configure.ac @@ -6192,7 +6192,7 @@ if test "$SOLAR_JAVA" != ""; then fi JAVAINTERPRETER=`cygpath -d "$JAVAINTERPRETER"` JAVAINTERPRETER=`cygpath -u "$JAVAINTERPRETER"` - elif test "$_os" = "Darwin"; then + elif test $_os = Darwin -a "$BITNESS_OVERRIDE" = ""; then dnl HACK: There currently is only a 32 bit version of LibreOffice for Mac OS X, dnl and Tiger Java complains about -d32 while Snow Leopard Java needs it dnl to run in 32 bit mode and be able to load LibreOffice jnilibs: commit 4c03ceedcd9ff0c70bc323e6398d01f785a52929 Author: Tor Lillqvist <t...@iki.fi> Date: Thu Jun 13 11:11:41 2013 +0300 Simplify EPM tests for OS X We always should use the internal epm anyway on OS X, so no need to look for PackageMaker.app in /Developer which doesn't even exist any more. Change-Id: I943f34e14e9ce0c3bec5bd7b86612a62e5b9e83d diff --git a/configure.ac b/configure.ac index f9077f1..af48c3f 100644 --- a/configure.ac +++ b/configure.ac @@ -6842,7 +6842,9 @@ AC_MSG_CHECKING([whether to enable EPM for packing]) if test "$enable_epm" = "yes"; then AC_MSG_RESULT([yes]) if test "$_os" != "WINNT"; then - if test -n "$with_epm"; then + if test $_os = Darwin; then + EPM=internal + elif test -n "$with_epm"; then EPM=$with_epm else AC_PATH_PROG(EPM, epm, no) @@ -6863,17 +6865,6 @@ if test "$enable_epm" = "yes"; then if test "`echo $EPM_VERSION | cut -d'.' -f1`" -gt "3" || \ test "`echo $EPM_VERSION | cut -d'.' -f1`" -eq "3" -a "`echo $EPM_VERSION | cut -d'.' -f2`" -ge "7"; then AC_MSG_RESULT([OK, >= 3.7]) - if test "$_os" = "Darwin"; then - AC_MSG_CHECKING([which PackageMaker EPM thinks to use]) - _pm=`strings $EPM | grep PackageMaker | cut -d" " -f1` - if test "$_pm" = "/Developer/Applications/PackageMaker.app/Contents/MacOS/PackageMaker"; then - AC_MSG_ERROR([$_pm; PackageMaker expected in wrong path. Either patch your epm with the right path (/Developer/Applications/Utilities/PackageMaker.app/Contents/MacOS/PackageMaker) or use internal patched epm (--with-epm=internal)]) - elif test "$_pm" = "/Developer/Applications/Utilities/PackageMaker.app/Contents/MacOS/PackageMaker"; then - AC_MSG_RESULT([$_pm, ok]) - else # we never should get here, but go safe - AC_MSG_ERROR([$_pm; PackageMaker expected in unknown path. Either patch your epm with the right path (/Developer/Applications/Utilities/PackageMaker.app/Contents/MacOS/PackageMaker) or use internal patched epm (--with-epm=internal)]) - fi - fi else AC_MSG_RESULT([too old. epm >= 3.7 is required.]) echo "EPM will be built." commit 65fc90303effb4f270b8a9fae97310192a036f90 Author: Tor Lillqvist <t...@iki.fi> Date: Thu Jun 20 17:40:47 2013 +0300 Look for the 10.9 SDK, too Change-Id: Iee70f531422fe6a312830dc9aa2d57e4f802953d diff --git a/configure.ac b/configure.ac index f8941d8..f9077f1 100644 --- a/configure.ac +++ b/configure.ac @@ -2406,8 +2406,8 @@ if test "$_os" = "Darwin"; then BITNESS_OVERRIDE=64 fi - # If no --with-macosx-sdk option is given, look for 10.6, 10.7 - # and 10.8 SDKs, in that order. If not found in some (old) + # If no --with-macosx-sdk option is given, look for 10.6, 10.7, + # 10.8 and 10.9 SDKs, in that order. If not found in some (old) # default locations, try the xcode-select tool. # The intent is that for "most" Mac-based developers, a suitable @@ -2418,8 +2418,8 @@ if test "$_os" = "Darwin"; then # addition to Xcode 4 in /Applications/Xcode.app, the 10.6 SDK # should be found. - # For developers with a current Xcode 4 installed from the Mac App - # Store, the 10.6, 10.7 or 10.8 SDK should be found. + # For developers with a current Xcode, the lowest-numbered SDK + # should be found. AC_MSG_CHECKING([what Mac OS X SDK to use]) @@ -2440,6 +2440,8 @@ if test "$_os" = "Darwin"; then with_macosx_sdk=10.7 elif test -d "$xcodepath/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.8.sdk"; then with_macosx_sdk=10.8 + elif test -d "$xcodepath/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk"; then + with_macosx_sdk=10.9 fi fi if test -z "$with_macosx_sdk"; then @@ -2457,6 +2459,9 @@ if test "$_os" = "Darwin"; then 10.8) MACOSX_SDK_VERSION=1080 ;; + 10.9) + MACOSX_SDK_VERSION=1090 + ;; *) AC_MSG_ERROR([with-macosx-sdk $with_macosx_sdk is not a supported value, supported value are 10.6--8]) ;; @@ -2464,7 +2469,7 @@ if test "$_os" = "Darwin"; then # Next find it (again, if we deduced its version above by finding # it... but we need to look for it once more in case - # --with-macosx-sdk was given so that the aboce search did not + # --with-macosx-sdk was given so that the above search did not # happen). if test -z "$MACOSX_SDK_PATH"; then case $with_macosx_sdk in @@ -2482,7 +2487,7 @@ if test "$_os" = "Darwin"; then fi fi ;; - 10.7|10.8) + 10.7) if test -d /Developer/SDKs/MacOSX$with_macosx_sdk.sdk; then MACOSX_SDK_PATH=/Developer/SDKs/MacOSX$with_macosx_sdk.sdk elif test -x /usr/bin/xcode-select; then @@ -2492,6 +2497,12 @@ if test "$_os" = "Darwin"; then fi fi ;; + 10.8|10.9) + xcodepath="`xcode-select -print-path`" + if test -d "$xcodepath/Platforms/MacOSX.platform/Developer/SDKs/MacOSX$with_macosx_sdk.sdk"; then + MACOSX_SDK_PATH="$xcodepath/Platforms/MacOSX.platform/Developer/SDKs/MacOSX$with_macosx_sdk.sdk" + fi + ;; esac if test -z "$MACOSX_SDK_PATH"; then AC_MSG_ERROR([Could not figure out the location of Mac OS X $with_macosx_sdk SDK]) @@ -2520,8 +2531,11 @@ if test "$_os" = "Darwin"; then 10.8) MAC_OS_X_VERSION_MIN_REQUIRED="1080" ;; + 10.9) + MAC_OS_X_VERSION_MIN_REQUIRED="1090" + ;; *) - AC_MSG_ERROR([with-macosx-version-min-required $with_macosx_version_min_required is not a supported value, supported value are 10.6--8]) + AC_MSG_ERROR([with-macosx-version-min-required $with_macosx_version_min_required is not a supported value, supported value are 10.6--9]) ;; esac @@ -2559,7 +2573,7 @@ if test "$_os" = "Darwin"; then CXX="g++-4.2 $bitness -mmacosx-version-min=$with_macosx_version_min_required -isysroot $MACOSX_SDK_PATH" fi ;; - 10.7|10.8) + 10.7|10.8|10.9) if test "$enable_libc__" = yes -a "$with_macosx_version_min_required" != 10.6; then # Use libc++ instead of libstdc++ when possible # and also compile as C++11 @@ -2592,6 +2606,9 @@ if test "$_os" = "Darwin"; then 10.8) MAC_OS_X_VERSION_MAX_ALLOWED="1080" ;; + 10.9) + MAC_OS_X_VERSION_MAX_ALLOWED="1090" + ;; *) AC_MSG_ERROR([with-macosx-version-max-allowed $with_macosx_version_max_allowed is not a supported value, supported value are 10.6--8]) ;; commit bbceb4294fc8876e0e853d461720b35bcea85622 Author: Tor Lillqvist <t...@iki.fi> Date: Wed Apr 17 23:30:48 2013 +0300 Enable optionally using libc++ on OS X (when targeting 10.7 or later) Experimental work in progress. Change-Id: I92663e07c7322037182141603f72c6d442da6ee9 diff --git a/config_host.mk.in b/config_host.mk.in index 9268c7b..d96eec9 100644 --- a/config_host.mk.in +++ b/config_host.mk.in @@ -63,6 +63,7 @@ export COMMONS_LOGGING_JAR=@COMMONS_LOGGING_JAR@ export COMPATH=@COMPATH@ export COMPILER_PLUGINS=@COMPILER_PLUGINS@ export COM_GCC_IS_CLANG=@COM_GCC_IS_CLANG@ +export CPP_LIBRARY=@CPP_LIBRARY@ export CPPUNIT_CFLAGS=$(gb_SPACE)@CPPUNIT_CFLAGS@ export CPPUNIT_LIBS=$(gb_SPACE)@CPPUNIT_LIBS@ export CPU=@CPU@ diff --git a/configure.ac b/configure.ac index 9e9f41d..f8941d8 100644 --- a/configure.ac +++ b/configure.ac @@ -367,6 +367,10 @@ DLLPOST=".so" LINKFLAGSNOUNDEFS="-Wl,-z,defs" +# Most platforms use GNU libstdc++ +CPP_LIBRARY="GLIBCXX" +AC_SUBST(CPP_LIBRARY) + case "$host_os" in solaris*) @@ -1139,6 +1143,13 @@ AC_ARG_WITH(macosx-bundle-identifier, org.libreoffice.script ("script", huh?).]), ,with_macosx_bundle_identifier=org.libreoffice.script) +AC_ARG_ENABLE(libc++, + AS_HELP_STRING([--enable-libc++], + [Use the libc++ C++ library instead of GNU libstdc++ on OS X. Only effective + if --with-macosx-version-min-required is 10.7 or later. Experimental work in + progress, very likely breaks something, don't use unless you plan to fix that.]), +,) + AC_ARG_ENABLE(ios-simulator, AS_HELP_STRING([--enable-ios-simulator], [Build for the iOS Simulator, not iOS device.]), @@ -2549,12 +2560,26 @@ if test "$_os" = "Darwin"; then fi ;; 10.7|10.8) + if test "$enable_libc__" = yes -a "$with_macosx_version_min_required" != 10.6; then + # Use libc++ instead of libstdc++ when possible + # and also compile as C++11 + stdlib="-std=c++11 -stdlib=libc++" + CPP_LIBRARY="LIBCPP" + fi CC="`xcrun -find clang` $bitness -mmacosx-version-min=$with_macosx_version_min_required -isysroot $MACOSX_SDK_PATH" - CXX="`xcrun -find clang++` $bitness -mmacosx-version-min=$with_macosx_version_min_required -isysroot $MACOSX_SDK_PATH" + CXX="`xcrun -find clang++` $bitness $stdlib -mmacosx-version-min=$with_macosx_version_min_required -isysroot $MACOSX_SDK_PATH" XCRUN=xcrun ;; esac AC_MSG_RESULT([$CC and $CXX]) + else + # In case somebody insists on passing in CXX, and perhaps CFLAGS or CXXFLAGS to choose + # compiler. Not really something we encourage or support. + case "$CXX $CFLAGS $CXXFLAGS" in + *-stdlib=libc++*) + CPP_LIBRARY="LIBCPP" + ;; + esac fi case "$with_macosx_version_max_allowed" in @@ -3461,6 +3486,7 @@ cygwin*) OS=WNT RTL_OS=Windows P_SEP=";" + CPP_LIBRARY="MSVCRT" case "$host_cpu" in i*86|x86_64) @@ -5611,7 +5637,15 @@ b thingb[]={{0,0}, {1,1}}; size_t i = sizeof(sal_n_array_size(thinga)); size_t j = sizeof(sal_n_array_size(thingb)); return !(i != 0 && j != 0); -]])],[HAVE_CXX0X=TRUE CXXFLAGS_CXX11=-std=gnu++0x],[]) +]]) + ],[ + HAVE_CXX0X=TRUE + if test "$CPP_LIBRARY" = LIBCPP -a $_os = Darwin; then + : Already set CXX to contain -std=c++11 + else + CXXFLAGS_CXX11=-std=gnu++0x + fi + ],[]) AC_LANG_POP([C++]) CXXFLAGS=$save_CXXFLAGS _______________________________________________ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits