[Libreoffice-commits] core.git: Branch 'distro/collabora/cp-4.1' - 8 commits - config_host.mk.in configure.ac icu/icu4c-build.patch vcl/Library_vcl.mk
Tor Lillqvist
tml at collabora.com
Mon Feb 10 01:50:16 PST 2014
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 <tml at 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 <tml at 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 <tml at 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 <sbergman at 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 <tml at 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 <tml at 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 <tml at 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 <tml at 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
More information about the Libreoffice-commits
mailing list