[Libreoffice-commits] core.git: 3 commits - configure.ac ios/lo.xcconfig.in ios/MobileLibreOffice ios/shared
Tor Lillqvist
tml at collabora.com
Wed Oct 16 06:40:17 PDT 2013
configure.ac | 25 +++++++++-
ios/MobileLibreOffice/MobileLibreOffice.xcodeproj/project.pbxproj | 6 --
ios/lo.xcconfig.in | 5 ++
ios/shared/ios_sharedlo.xcodeproj/project.pbxproj | 4 -
4 files changed, 29 insertions(+), 11 deletions(-)
New commits:
commit 22fbb71b5c9ca85dbf2879b212e4b3795f0dd072
Author: Tor Lillqvist <tml at collabora.com>
Date: Wed Oct 16 16:37:16 2013 +0300
Use ln -f to avoid warnings about existing files
Some libraries exist both in solver/*/lib and in their
UnpackedTarball/foo location.
Change-Id: Ie312479069738b27900bd4d7021ede986d94f22a
diff --git a/ios/MobileLibreOffice/MobileLibreOffice.xcodeproj/project.pbxproj b/ios/MobileLibreOffice/MobileLibreOffice.xcodeproj/project.pbxproj
index 85296c6..931bcd5 100644
--- a/ios/MobileLibreOffice/MobileLibreOffice.xcodeproj/project.pbxproj
+++ b/ios/MobileLibreOffice/MobileLibreOffice.xcodeproj/project.pbxproj
@@ -1469,7 +1469,7 @@
);
runOnlyForDeploymentPostprocessing = 0;
shellPath = /bin/sh;
- shellScript = "dest_lib=lib_link\ndest_resource=resource_link\nproduct_ver=`sed -ne 's/^\\(export PRODUCTVERSION=\\)\\(.*\\)/\\2/p' $LO_BUILDDIR/config_host.mk`\nbuildid=`git log -1 --format=%H`\n\nrm -rf $dest_lib $dest_resource\nmkdir -p $dest_lib $dest_resource\n\n# Libs #\nfor file in $LO_OUTDIR/lib/*.a $LO_INSTDIR/program/*.a $LO_WORKDIR/LinkTarget/StaticLibrary/*.a $LO_WORKDIR/UnpackedTarball/*/.libs/*.a $LO_WORKDIR/UnpackedTarball/*/src/.libs/*.a $LO_WORKDIR/UnpackedTarball/*/src/*/.libs/*.a $LO_WORKDIR/UnpackedTarball/openssl/*.a; do\n ln $file $dest_lib/${file##*/}\ndone\n\n# Resources #\nmkdir -p $dest_resource/ure\n\n# copy rdb files\ncp $LO_OUTDIR/bin/offapi.rdb $dest_resource\ncp $LO_OUTDIR/bin/udkapi.rdb $dest_resource\ncp $LO_OUTDIR/bin/oovbaapi.rdb $dest_resource\ncp $LO_INSTDIR/program/services/services.rdb $dest_resource\ncp $LO_INSTDIR/ure/share/misc/services.rdb $dest_resource/ure\n\n# copy .res files\n# program/resource
is hardcoded in tools/source/rc/resmgr.cxx. Sure,\n# we could set STAR_RESOURCE_PATH instead. sigh...\nmkdir -p $dest_resource/program/resource\ncp $LO_INSTDIR/program/resource/*en-US.res $dest_resource/program/resource\n\n# soffice.cfg\nmkdir -p $dest_resource/share/config\ncp -R $LO_INSTDIR/share/config/soffice.cfg $dest_resource/share/config\n \n# \"registry\"\ncp -R $LO_INSTDIR/share/registry $dest_resource/share\n \n# Set up rc, the \"inifile\". See getIniFileName_Impl().\nfile=$dest_resource/rc\necho '[Bootstrap]' > $file\necho 'URE_BOOTSTRAP=file://$APP_DATA_DIR/fundamentalrc' >> $file\necho 'HOME=$APP_DATA_DIR/tmp' >> $file\n\n# Set up fundamentalrc, unorc, bootstraprc and versionrc.\n# Do we really need all these?\nfile=$dest_resource/fundamentalrc\necho '[Bootstrap]' > $file\necho 'BRAND_BASE_DIR=file://$APP_DATA_DIR' >> $file\ne
cho 'CONFIGURATION_LAYERS=xcsxcu:${BRAND_BASE_DIR}/share/registry res:${BRAND_BASE_DIR}/registry' >> $file\n\nfile=$dest_resource/unorc\necho '[Bootstrap]' > $file\n\n# bootstraprc must be in $BRAND_BASE_DIR/program\nmkdir -p $dest_resource/program\nfile=$dest_resource/program/bootstraprc\necho '[Bootstrap]' > $file\necho 'InstallMode=<installmode>' >> $file\necho \"ProductKey=LibreOffice $product_ver\" >> $file\necho 'UserInstallation=file://$APP_DATA_DIR/../Library/Application%20Support' >> $file\n\n# Is this really needed?\nfile=$dest_resource/program/versionrc\necho '[Version]' > $file\necho 'AllLanguages=en-US' >> $file\necho 'BuildVersion=' >> $file\necho \"buildid=$buildid\" >> $file\necho 'ProductMajor=360' >> $file\necho 'ProductMinor=1' >> $file\n ";
+ shellScript = "dest_lib=lib_link\ndest_resource=resource_link\nproduct_ver=`sed -ne 's/^\\(export PRODUCTVERSION=\\)\\(.*\\)/\\2/p' $LO_BUILDDIR/config_host.mk`\nbuildid=`git log -1 --format=%H`\n\nrm -rf $dest_lib $dest_resource\nmkdir -p $dest_lib $dest_resource\n\n# Libs #\nfor file in $LO_OUTDIR/lib/*.a $LO_INSTDIR/program/*.a $LO_WORKDIR/LinkTarget/StaticLibrary/*.a $LO_WORKDIR/UnpackedTarball/*/.libs/*.a $LO_WORKDIR/UnpackedTarball/*/src/.libs/*.a $LO_WORKDIR/UnpackedTarball/*/src/*/.libs/*.a $LO_WORKDIR/UnpackedTarball/openssl/*.a; do\n ln -f $file $dest_lib/${file##*/}\ndone\n\n# Resources #\nmkdir -p $dest_resource/ure\n\n# copy rdb files\ncp $LO_OUTDIR/bin/offapi.rdb $dest_resource\ncp $LO_OUTDIR/bin/udkapi.rdb $dest_resource\ncp $LO_OUTDIR/bin/oovbaapi.rdb $dest_resource\ncp $LO_INSTDIR/program/services/services.rdb $dest_resource\ncp $LO_INSTDIR/ure/share/misc/services.rdb $dest_resource/ure\n\n# copy .res files\n# program/resou
rce is hardcoded in tools/source/rc/resmgr.cxx. Sure,\n# we could set STAR_RESOURCE_PATH instead. sigh...\nmkdir -p $dest_resource/program/resource\ncp $LO_INSTDIR/program/resource/*en-US.res $dest_resource/program/resource\n\n# soffice.cfg\nmkdir -p $dest_resource/share/config\ncp -R $LO_INSTDIR/share/config/soffice.cfg $dest_resource/share/config\n \n# \"registry\"\ncp -R $LO_INSTDIR/share/registry $dest_resource/share\n \n# Set up rc, the \"inifile\". See getIniFileName_Impl().\nfile=$dest_resource/rc\necho '[Bootstrap]' > $file\necho 'URE_BOOTSTRAP=file://$APP_DATA_DIR/fundamentalrc' >> $file\necho 'HOME=$APP_DATA_DIR/tmp' >> $file\n\n# Set up fundamentalrc, unorc, bootstraprc and versionrc.\n# Do we really need all these?\nfile=$dest_resource/fundamentalrc\necho '[Bootstrap]' > $file\necho 'BRAND_BASE_DIR=file://$APP_DATA_DIR' >> $file
\necho 'CONFIGURATION_LAYERS=xcsxcu:${BRAND_BASE_DIR}/share/registry res:${BRAND_BASE_DIR}/registry' >> $file\n\nfile=$dest_resource/unorc\necho '[Bootstrap]' > $file\n\n# bootstraprc must be in $BRAND_BASE_DIR/program\nmkdir -p $dest_resource/program\nfile=$dest_resource/program/bootstraprc\necho '[Bootstrap]' > $file\necho 'InstallMode=<installmode>' >> $file\necho \"ProductKey=LibreOffice $product_ver\" >> $file\necho 'UserInstallation=file://$APP_DATA_DIR/../Library/Application%20Support' >> $file\n\n# Is this really needed?\nfile=$dest_resource/program/versionrc\necho '[Version]' > $file\necho 'AllLanguages=en-US' >> $file\necho 'BuildVersion=' >> $file\necho \"buildid=$buildid\" >> $file\necho 'ProductMajor=360' >> $file\necho 'ProductMinor=1' >> $file\n ";
};
/* End PBXShellScriptBuildPhase section */
commit a2f51cf9f4ff89593fa43f9f0442f2a8dfc5729d
Author: Tor Lillqvist <tml at collabora.com>
Date: Wed Oct 16 16:35:31 2013 +0300
Drop the set -x
Change-Id: I014202fa48a211499b0290e6236bbdc96ad247a8
diff --git a/ios/MobileLibreOffice/MobileLibreOffice.xcodeproj/project.pbxproj b/ios/MobileLibreOffice/MobileLibreOffice.xcodeproj/project.pbxproj
index 220ce00..85296c6 100644
--- a/ios/MobileLibreOffice/MobileLibreOffice.xcodeproj/project.pbxproj
+++ b/ios/MobileLibreOffice/MobileLibreOffice.xcodeproj/project.pbxproj
@@ -1469,7 +1469,7 @@
);
runOnlyForDeploymentPostprocessing = 0;
shellPath = /bin/sh;
- shellScript = "set -x\ndest_lib=lib_link\ndest_resource=resource_link\nproduct_ver=`sed -ne 's/^\\(export PRODUCTVERSION=\\)\\(.*\\)/\\2/p' $LO_BUILDDIR/config_host.mk`\nbuildid=`git log -1 --format=%H`\n\nrm -rf $dest_lib $dest_resource\nmkdir -p $dest_lib $dest_resource\n\n# Libs #\nfor file in $LO_OUTDIR/lib/*.a $LO_INSTDIR/program/*.a $LO_WORKDIR/LinkTarget/StaticLibrary/*.a $LO_WORKDIR/UnpackedTarball/*/.libs/*.a $LO_WORKDIR/UnpackedTarball/*/src/.libs/*.a $LO_WORKDIR/UnpackedTarball/*/src/*/.libs/*.a $LO_WORKDIR/UnpackedTarball/openssl/*.a; do\n ln $file $dest_lib/${file##*/}\ndone\n\n# Resources #\nmkdir -p $dest_resource/ure\n\n# copy rdb files\ncp $LO_OUTDIR/bin/offapi.rdb $dest_resource\ncp $LO_OUTDIR/bin/udkapi.rdb $dest_resource\ncp $LO_OUTDIR/bin/oovbaapi.rdb $dest_resource\ncp $LO_INSTDIR/program/services/services.rdb $dest_resource\ncp $LO_INSTDIR/ure/share/misc/services.rdb $dest_resource/ure\n\n# copy .res files\n# program/
resource is hardcoded in tools/source/rc/resmgr.cxx. Sure,\n# we could set STAR_RESOURCE_PATH instead. sigh...\nmkdir -p $dest_resource/program/resource\ncp $LO_INSTDIR/program/resource/*en-US.res $dest_resource/program/resource\n\n# soffice.cfg\nmkdir -p $dest_resource/share/config\ncp -R $LO_INSTDIR/share/config/soffice.cfg $dest_resource/share/config\n \n# \"registry\"\ncp -R $LO_INSTDIR/share/registry $dest_resource/share\n \n# Set up rc, the \"inifile\". See getIniFileName_Impl().\nfile=$dest_resource/rc\necho '[Bootstrap]' > $file\necho 'URE_BOOTSTRAP=file://$APP_DATA_DIR/fundamentalrc' >> $file\necho 'HOME=$APP_DATA_DIR/tmp' >> $file\n\n# Set up fundamentalrc, unorc, bootstraprc and versionrc.\n# Do we really need all these?\nfile=$dest_resource/fundamentalrc\necho '[Bootstrap]' > $file\necho 'BRAND_BASE_DIR=file://$APP_DATA_DIR' >>
$file\necho 'CONFIGURATION_LAYERS=xcsxcu:${BRAND_BASE_DIR}/share/registry res:${BRAND_BASE_DIR}/registry' >> $file\n\nfile=$dest_resource/unorc\necho '[Bootstrap]' > $file\n\n# bootstraprc must be in $BRAND_BASE_DIR/program\nmkdir -p $dest_resource/program\nfile=$dest_resource/program/bootstraprc\necho '[Bootstrap]' > $file\necho 'InstallMode=<installmode>' >> $file\necho \"ProductKey=LibreOffice $product_ver\" >> $file\necho 'UserInstallation=file://$APP_DATA_DIR/../Library/Application%20Support' >> $file\n\n# Is this really needed?\nfile=$dest_resource/program/versionrc\necho '[Version]' > $file\necho 'AllLanguages=en-US' >> $file\necho 'BuildVersion=' >> $file\necho \"buildid=$buildid\" >> $file\necho 'ProductMajor=360' >> $file\necho 'ProductMinor=1' >> $file\n ";
+ shellScript = "dest_lib=lib_link\ndest_resource=resource_link\nproduct_ver=`sed -ne 's/^\\(export PRODUCTVERSION=\\)\\(.*\\)/\\2/p' $LO_BUILDDIR/config_host.mk`\nbuildid=`git log -1 --format=%H`\n\nrm -rf $dest_lib $dest_resource\nmkdir -p $dest_lib $dest_resource\n\n# Libs #\nfor file in $LO_OUTDIR/lib/*.a $LO_INSTDIR/program/*.a $LO_WORKDIR/LinkTarget/StaticLibrary/*.a $LO_WORKDIR/UnpackedTarball/*/.libs/*.a $LO_WORKDIR/UnpackedTarball/*/src/.libs/*.a $LO_WORKDIR/UnpackedTarball/*/src/*/.libs/*.a $LO_WORKDIR/UnpackedTarball/openssl/*.a; do\n ln $file $dest_lib/${file##*/}\ndone\n\n# Resources #\nmkdir -p $dest_resource/ure\n\n# copy rdb files\ncp $LO_OUTDIR/bin/offapi.rdb $dest_resource\ncp $LO_OUTDIR/bin/udkapi.rdb $dest_resource\ncp $LO_OUTDIR/bin/oovbaapi.rdb $dest_resource\ncp $LO_INSTDIR/program/services/services.rdb $dest_resource\ncp $LO_INSTDIR/ure/share/misc/services.rdb $dest_resource/ure\n\n# copy .res files\n# program/resource
is hardcoded in tools/source/rc/resmgr.cxx. Sure,\n# we could set STAR_RESOURCE_PATH instead. sigh...\nmkdir -p $dest_resource/program/resource\ncp $LO_INSTDIR/program/resource/*en-US.res $dest_resource/program/resource\n\n# soffice.cfg\nmkdir -p $dest_resource/share/config\ncp -R $LO_INSTDIR/share/config/soffice.cfg $dest_resource/share/config\n \n# \"registry\"\ncp -R $LO_INSTDIR/share/registry $dest_resource/share\n \n# Set up rc, the \"inifile\". See getIniFileName_Impl().\nfile=$dest_resource/rc\necho '[Bootstrap]' > $file\necho 'URE_BOOTSTRAP=file://$APP_DATA_DIR/fundamentalrc' >> $file\necho 'HOME=$APP_DATA_DIR/tmp' >> $file\n\n# Set up fundamentalrc, unorc, bootstraprc and versionrc.\n# Do we really need all these?\nfile=$dest_resource/fundamentalrc\necho '[Bootstrap]' > $file\necho 'BRAND_BASE_DIR=file://$APP_DATA_DIR' >> $file\ne
cho 'CONFIGURATION_LAYERS=xcsxcu:${BRAND_BASE_DIR}/share/registry res:${BRAND_BASE_DIR}/registry' >> $file\n\nfile=$dest_resource/unorc\necho '[Bootstrap]' > $file\n\n# bootstraprc must be in $BRAND_BASE_DIR/program\nmkdir -p $dest_resource/program\nfile=$dest_resource/program/bootstraprc\necho '[Bootstrap]' > $file\necho 'InstallMode=<installmode>' >> $file\necho \"ProductKey=LibreOffice $product_ver\" >> $file\necho 'UserInstallation=file://$APP_DATA_DIR/../Library/Application%20Support' >> $file\n\n# Is this really needed?\nfile=$dest_resource/program/versionrc\necho '[Version]' > $file\necho 'AllLanguages=en-US' >> $file\necho 'BuildVersion=' >> $file\necho \"buildid=$buildid\" >> $file\necho 'ProductMajor=360' >> $file\necho 'ProductMinor=1' >> $file\n ";
};
/* End PBXShellScriptBuildPhase section */
commit 795dcf9da430c55f2702793b80ce031bf11933db
Author: Tor Lillqvist <tml at collabora.com>
Date: Wed Oct 16 16:12:54 2013 +0300
Make libc++ optional for iOS and use the right library in the Xcode projects
It seems that using libc++ when building with Xcode 4 (and iOS SDK 6)
you get linking errors. Stick to libstdc++ for now then with that.
Propagate the choice to the iOS Xcode projects through the lo.xcconfig
file.
Change-Id: Ic61dd2336066a77c4219c532106e3e50e85d0689
diff --git a/configure.ac b/configure.ac
index 51a9716..ca581e3 100644
--- a/configure.ac
+++ b/configure.ac
@@ -2911,6 +2911,7 @@ if test $_os = iOS; then
for sdkver in 7.0 6.1 6.0; do
t=$xcode_developer/Platforms/$platform.platform/Developer/SDKs/$platform$sdkver.sdk
if test -d $t; then
+ ios_sdk=$sdkver
sysroot=$t
break
fi
@@ -2956,9 +2957,27 @@ if test $_os = iOS; then
# Just add -fvisibility=hidden to CC and CXX directly so that the 3rd-party libs also
# get compiled with it, to avoid ld warnings when linking all that together into one
# executable.
- # Also, use libc++.
+ # Use libc++ if opted in only, and only when building against iOS 7 SDK or newer.
+
+ XCODE_CLANG_CXX_LIBRARY=libstdc++
+ case $ios_sdk in
+ 6.*)
+ if test "$enable_libc__" = yes; then
+ AC_MSG_ERROR([--enable-libc++ requires using Xcode 5 and iOS SDK 7 or newer it seems])
+ fi
+ ;;
+ *)
+ if test "$enable_libc__" = yes; then
+ XCODE_CLANG_CXX_LIBRARY=libc++
+ fi
+ ;;
+ esac
+
+ stdlib="-stdlib=$XCODE_CLANG_CXX_LIBRARY"
+
CC="`xcrun -find clang` -arch $arch -fvisibility=hidden -isysroot $sysroot $lto $versionmin"
- CXX="`xcrun -find clang++` -arch $arch -fvisibility=hidden -stdlib=libc++ -isysroot $sysroot $lto $versionmin"
+ CXX="`xcrun -find clang++` -arch $arch -fvisibility=hidden $stdlib -isysroot $sysroot $lto $versionmin"
+
INSTALL_NAME_TOOL=`xcrun -find install_name_tool`
AR=`xcrun -find ar`
NM=`xcrun -find nm`
@@ -2967,6 +2986,8 @@ if test $_os = iOS; then
RANLIB=`xcrun -find ranlib`
fi
+AC_SUBST(XCODE_CLANG_CXX_LIBRARY)
+
AC_MSG_CHECKING([whether to treat the installation as read-only])
if test \( -z "$enable_readonly_installset" -a "$ENABLE_MACOSX_SANDBOX" = TRUE \) -o \
diff --git a/ios/MobileLibreOffice/MobileLibreOffice.xcodeproj/project.pbxproj b/ios/MobileLibreOffice/MobileLibreOffice.xcodeproj/project.pbxproj
index f1a3b42..220ce00 100644
--- a/ios/MobileLibreOffice/MobileLibreOffice.xcodeproj/project.pbxproj
+++ b/ios/MobileLibreOffice/MobileLibreOffice.xcodeproj/project.pbxproj
@@ -1510,7 +1510,6 @@
ALWAYS_SEARCH_USER_PATHS = NO;
ARCHS = armv7;
CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x";
- CLANG_CXX_LIBRARY = "libc++";
CLANG_ENABLE_OBJC_ARC = YES;
CLANG_WARN_CONSTANT_CONVERSION = YES;
CLANG_WARN_EMPTY_BODY = YES;
@@ -1555,7 +1554,6 @@
ALWAYS_SEARCH_USER_PATHS = NO;
ARCHS = armv7;
CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x";
- CLANG_CXX_LIBRARY = "libc++";
CLANG_ENABLE_OBJC_ARC = YES;
CLANG_WARN_CONSTANT_CONVERSION = YES;
CLANG_WARN_EMPTY_BODY = YES;
@@ -1592,7 +1590,6 @@
689EBB0E18069FB8002F1CD7 /* Debug */ = {
isa = XCBuildConfiguration;
buildSettings = {
- CLANG_CXX_LIBRARY = "libc++";
GCC_DYNAMIC_NO_PIC = NO;
GCC_INPUT_FILETYPE = sourcecode.cpp.objcpp;
GCC_PRECOMPILE_PREFIX_HEADER = YES;
@@ -1614,7 +1611,6 @@
689EBB0F18069FB8002F1CD7 /* Release */ = {
isa = XCBuildConfiguration;
buildSettings = {
- CLANG_CXX_LIBRARY = "libc++";
GCC_DYNAMIC_NO_PIC = NO;
GCC_INPUT_FILETYPE = sourcecode.cpp.objcpp;
GCC_PRECOMPILE_PREFIX_HEADER = YES;
diff --git a/ios/lo.xcconfig.in b/ios/lo.xcconfig.in
index 4121cbc..7a37545 100644
--- a/ios/lo.xcconfig.in
+++ b/ios/lo.xcconfig.in
@@ -16,3 +16,8 @@ LO_BUILDDIR = @BUILDDIR@
LO_INSTDIR = @INSTDIR@
LO_OUTDIR = @OUTDIR@
LO_WORKDIR = @WORKDIR@
+
+// These are actual Xcode-known settings. The corresponding autoconf
+// variables are prefixed with XCODE_ to make it clear in configure.ac
+// what they will be used for.
+CLANG_CXX_LIBRARY = @XCODE_CLANG_CXX_LIBRARY@
diff --git a/ios/shared/ios_sharedlo.xcodeproj/project.pbxproj b/ios/shared/ios_sharedlo.xcodeproj/project.pbxproj
index fc9aa39..8766188 100644
--- a/ios/shared/ios_sharedlo.xcodeproj/project.pbxproj
+++ b/ios/shared/ios_sharedlo.xcodeproj/project.pbxproj
@@ -459,7 +459,6 @@
ALWAYS_SEARCH_USER_PATHS = NO;
ARCHS = armv7;
CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x";
- CLANG_CXX_LIBRARY = "libc++";
CLANG_ENABLE_OBJC_ARC = YES;
CLANG_WARN_CONSTANT_CONVERSION = YES;
CLANG_WARN_EMPTY_BODY = YES;
@@ -500,7 +499,6 @@
ALWAYS_SEARCH_USER_PATHS = NO;
ARCHS = armv7;
CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x";
- CLANG_CXX_LIBRARY = "libc++";
CLANG_ENABLE_OBJC_ARC = YES;
CLANG_WARN_CONSTANT_CONVERSION = YES;
CLANG_WARN_EMPTY_BODY = YES;
@@ -531,7 +529,6 @@
68FDBE3918053A140064DD74 /* Debug */ = {
isa = XCBuildConfiguration;
buildSettings = {
- CLANG_CXX_LIBRARY = "libc++";
DSTROOT = /tmp/ios_sharedlo.dst;
GCC_DYNAMIC_NO_PIC = NO;
GCC_LINK_WITH_DYNAMIC_LIBRARIES = NO;
@@ -549,7 +546,6 @@
68FDBE3A18053A140064DD74 /* Release */ = {
isa = XCBuildConfiguration;
buildSettings = {
- CLANG_CXX_LIBRARY = "libc++";
DSTROOT = /tmp/ios_sharedlo.dst;
GCC_DYNAMIC_NO_PIC = NO;
GCC_LINK_WITH_DYNAMIC_LIBRARIES = NO;
More information about the Libreoffice-commits
mailing list