[Libreoffice-commits] core.git: 4 commits - config_host.mk.in configure.ac desktop/CppunitTest_desktop_app.mk instsetoo_native/util Makefile.in registry/Module_registry.mk scp2/source solenv/bin sysui/desktop

Tor Lillqvist tml at collabora.com
Thu Aug 4 14:45:58 UTC 2016


 Makefile.in                              |   24 +++---
 config_host.mk.in                        |    2 
 configure.ac                             |   21 ++---
 desktop/CppunitTest_desktop_app.mk       |    8 ++
 instsetoo_native/util/openoffice.lst.in  |    2 
 registry/Module_registry.mk              |    3 
 scp2/source/ooo/directory_ooo_macosx.scp |    2 
 solenv/bin/macosx-codesign-app-bundle    |  123 ++++++++++++++++---------------
 solenv/bin/ooinstall                     |    5 -
 sysui/desktop/macosx/Info.plist.in       |    4 -
 10 files changed, 103 insertions(+), 91 deletions(-)

New commits:
commit 97746e61ffe48cf3612d2dff5535914a8a1219f6
Author: Tor Lillqvist <tml at collabora.com>
Date:   Thu Aug 4 17:32:29 2016 +0300

    Update to match what has been used for the products in the Mac App Store
    
    Hopefully will not break building for a dmg-stye distribution.
    
    Change-Id: Ibf32bb8e43fe4745461eb78e9e7e60d37163934f

diff --git a/solenv/bin/macosx-codesign-app-bundle b/solenv/bin/macosx-codesign-app-bundle
index 37245c1..e7942eb 100755
--- a/solenv/bin/macosx-codesign-app-bundle
+++ b/solenv/bin/macosx-codesign-app-bundle
@@ -1,9 +1,8 @@
 #!/bin/bash
 
-# Script to sign dylibs and frameworks in an app bundle plus the
-# bundle itself. Called from
-# installer::simplepackage::create_package() in
-# solenv/bin/modules/installer/simplepackage.pm
+# Script to sign executables, dylibs and frameworks in an app bundle
+# plus the bundle itself. Called from
+# the test-install target in Makefile.in
 
 test `uname` = Darwin || { echo This is for OS X only; exit 1; }
 
@@ -19,91 +18,97 @@ for V in \
     fi
 done
 
-echo "codesigning using MACSOX_CODESIGNING_IDENTITY=[${MACOSX_CODESIGNING_IDENTITY?}]"
-
 APP_BUNDLE="$1"
 
+if test -n "$ENABLE_MACOSX_SANDBOX"; then
+    # In a sandboxed build executables need the entitlements
+    entitlements="--entitlements $BUILDDIR/lo.xcent"
+    # We use --enable-canonical-installation-tree-structure so all
+    # data files in Resources are included in the app bundle signature
+    # through that. I think.
+    other_files=''
+else
+    # In a non-sandboxed build (distributed outside the App Store)
+    # we traditionally have use --resource-rules. Let's not touch that?
+    resource_rules="--resource-rules $SRCDIR/setup_native/source/mac/CodesignRules.plist"
+    # And there we then want to sign data files, too, hmm.
+    other_files="\
+ -or -name '*.fodt' -or -name 'schema.strings' -or -name 'schema.xml' \
+ -or -name '*.jar' -or -name '*.jnilib' -or -name 'LICENSE' -or -name 'LICENSE.html' \
+ -or -name '*.applescript' -or -name '*.odt'"
+fi
+
 # Sign dylibs
 #
-# Executables get signed right after linking, see
-# solenv/gbuild/platform/macosx.mk. But many of our dylibs are built
-# by ad-hoc or 3rd-party mechanisms, so we can't easily sign them
-# right after linking. So do it here.
-#
 # The dylibs in the Python framework are called *.so. Go figure
 #
 # On Mavericks also would like to have data files signed...
 # add some where it makes sense. Make a depth-first search to sign the contents
 # of e.g. the spotlight plugin before attempting to sign the plugin itself
 
-find -d "$APP_BUNDLE" \( -name '*.dylib' -or -name '*.so' -or -name '*.fodt' -or -name '*.odt' \
-        -or -name 'schema.strings' -or -name 'schema.xml' -or -name '*.mdimporter' \
-        -or -name '*.jar' -or -name '*.jnilib' -or -name 'LICENSE' -or -name 'LICENSE.html' \
-        -or -name '*.applescript' \) ! -type l | grep -v "LibreOfficePython\.framework" | \
+find "$APP_BUNDLE" \( -name '*.dylib' -or -name '*.dylib.*' -or -name '*.so' \
+        $other_files \) ! -type l |
 while read file; do
     id=`echo ${file#${APP_BUNDLE}/Contents/} | sed -e 's,/,.,g'`
     codesign --verbose --identifier=$MACOSX_BUNDLE_IDENTIFIER.$id --sign "$MACOSX_CODESIGNING_IDENTITY" "$file" || exit 1
 done
 
-find "$APP_BUNDLE" -name '*.dylib.*' ! -type l | \
-while read dylib; do \
-    id=`basename "$dylib"`; \
-    id=`echo $id | sed -e 's/dylib.*/dylib/'`; \
-    codesign --verbose --identifier=$MACOSX_BUNDLE_IDENTIFIER.$id --sign "$MACOSX_CODESIGNING_IDENTITY" "$dylib" || exit 1
+# Sign executables
+
+find "$APP_BUNDLE/Contents/MacOS" -type f |
+while read file; do
+    id=`echo ${file#${APP_BUNDLE}/Contents/} | sed -e 's,/,.,g'`
+    codesign --force --verbose --identifier=$MACOSX_BUNDLE_IDENTIFIER.$id --sign "$MACOSX_CODESIGNING_IDENTITY" $entitlements "$file"
 done
 
-# The executables have already been signed by
-# gb_LinkTarget__command_dynamiclink in
-# solenv/gbuild/platform/macosx.mk, but sign the handful of scripts remaining
-# in MacOS
-# (<https://developer.apple.com/library/mac/technotes/tn2206/_index.html> "OS X
-# Code Signing In Depth" suggests we should get rid of them rather sooner than
-# later, but they appear to be OK for now):
-
-for i in python senddoc unoinfo
-do
-    if [ -f "$APP_BUNDLE/Contents/MacOS/$i" ]
-    then
-        codesign --verbose --identifier="$MACOSX_BUNDLE_IDENTIFIER.$i" \
-            --sign "$MACOSX_CODESIGNING_IDENTITY" "$APP_BUNDLE/Contents/MacOS/$i" \
-        || exit 1
-    fi
+# Sign included bundles. First .app ones (i.e. the Python.app inside
+# the LibreOfficePython.framework. Be generic for kicks...)
+
+find "$APP_BUNDLE" -name '*.app' -type d |
+while read app; do
+    fn=`basename "$app"`
+    fn=${fn%.*}
+    # Assume the app has a XML (and not binary) Info.plist
+    id=`grep -A 1 '<key>CFBundleIdentifier</key>' $app/Contents/Info.plist | tail -1 | sed -e 's,.*<string>,,' -e 's,</string>.*,,'`
+    codesign --verbose --identifier=$id --sign "$MACOSX_CODESIGNING_IDENTITY" $entitlements "$app"
 done
 
-# Sign frameworks.
-#
-# Yeah, we don't bundle any other framework than our Python one, and
-# it has just one version, so this generic search is mostly for
-# completeness.
+# Then .framework ones. Again, be generic just for kicks.
 
-find "$APP_BUNDLE" -name '*.framework' -type d -print0 | \
-while IFS= read -r -d '' framework; do \
-    fn=$(basename "$framework")
+find "$APP_BUNDLE" -name '*.framework' -type d |
+while read framework; do
+    fn=`basename "$framework"`
     fn=${fn%.*}
-    for version in "$framework"/Versions/*; do \
+    for version in "$framework"/Versions/*; do
         if test ! -L "$version" -a -d "$version"; then
-            codesign --force --verbose --prefix=$MACOSX_BUNDLE_IDENTIFIER. --sign "$MACOSX_CODESIGNING_IDENTITY" "$version/$fn" || exit 1
-            codesign --force --verbose --prefix=$MACOSX_BUNDLE_IDENTIFIER. --sign "$MACOSX_CODESIGNING_IDENTITY" "$version" || exit 1
-        fi; \
-    done; \
+	    # Assume the framework has a XML (and not binary) Info.plist
+	    id=`grep -A 1 '<key>CFBundleIdentifier</key>' $version/Resources/Info.plist | tail -1 | sed -e 's,.*<string>,,' -e 's,</string>.*,,'`
+            codesign --verbose --identifier=$id --sign "$MACOSX_CODESIGNING_IDENTITY" "$version"
+        fi
+    done
+done
+
+# Then mdimporters
+
+find "$APP_BUNDLE" -name '*.mdimporter' -type d |
+while read bundle; do
+    codesign --verbose --prefix=$MACOSX_BUNDLE_IDENTIFIER. --sign "$MACOSX_CODESIGNING_IDENTITY" "$bundle"
 done
 
-# Sign the app bundle as a whole which means finally signing the
-# CFBundleExecutable from Info.plist, i.e. soffice (which is exempted from the
-# on-the-go executable signing in gb_LinkTarget__command_dynamiclink in
-# solenv/gbuild/platform/macosx.mk), plus the contents
+# Sign the app bundle as a whole which means (re-)signing the
+# CFBundleExecutable from Info.plist, i.e. soffice, plus the contents
 # of the Resources tree (which unless you used
 # --enable-canonical-installation-tree-structure is not much, far from
 # all of our non-code "resources").
 #
 # At this stage we also attach the entitlements in the sandboxing case
+#
+# Also omit some files from the Bundle's seal via the resource-rules
+# (bootstraprc and similar that the user might adjust and image files)
+# See also https://developer.apple.com/library/mac/technotes/tn2206/
 
 id=`echo ${PRODUCTNAME} | tr ' ' '-'`
 
-if test -n "$ENABLE_MACOSX_SANDBOX"; then
-    entitlements="--entitlements $BUILDDIR/lo.xcent"
-fi
-
-codesign --force --verbose --identifier="${MACOSX_BUNDLE_IDENTIFIER}.$id" --sign "$MACOSX_CODESIGNING_IDENTITY" $entitlements "$APP_BUNDLE" || exit 1
+codesign --force --verbose --identifier="${MACOSX_BUNDLE_IDENTIFIER}" $resource_rules --sign "$MACOSX_CODESIGNING_IDENTITY" $entitlements "$APP_BUNDLE"
 
 exit 0
commit 9ae4892a3369d311ff738892aaf46bb21350514c
Author: Tor Lillqvist <tml at collabora.com>
Date:   Thu Aug 4 13:15:16 2016 +0300

    We don't build regmerge when ENABLE_MACOSX_SANDBOX
    
    So skip CustomTarget_regcompare_test. But maybe we should build it and
    just drop it from the app bundle we package?
    
    Change-Id: Ibd8556ef686d2e9b7d4004110bf8beb93faf8202

diff --git a/registry/Module_registry.mk b/registry/Module_registry.mk
index 907b90f..89dd100 100644
--- a/registry/Module_registry.mk
+++ b/registry/Module_registry.mk
@@ -22,10 +22,13 @@ $(eval $(call gb_Module_add_targets,registry,\
 
 ifneq ($(OS),IOS) # missing regmerge (see above), needed within test
 
+ifeq ($(ENABLE_MACOSX_SANDBOX),) # ditto
+
 $(eval $(call gb_Module_add_check_targets,registry, \
     CustomTarget_regcompare_test \
 ))
 
 endif
+endif
 
 # vim:set noet sw=4 ts=4:
commit f4425dd17b12823d75b39e49bd29f4419c9deb5b
Author: Tor Lillqvist <tml at collabora.com>
Date:   Thu Aug 4 11:23:38 2016 +0300

    CppunitTest_desktop_app needs the Foundation framework when sandboxed
    
    Because cmdlineargs.cxx uses NSTemporaryDirectory when
    HAVE_FEATURE_MACOSX_SANDBOX.
    
    Change-Id: I120a1f69bc94be161b76a9b813623103adc5fbe7

diff --git a/desktop/CppunitTest_desktop_app.mk b/desktop/CppunitTest_desktop_app.mk
index a51d270..1982e38 100644
--- a/desktop/CppunitTest_desktop_app.mk
+++ b/desktop/CppunitTest_desktop_app.mk
@@ -56,6 +56,14 @@ $(eval $(call gb_CppunitTest_use_library_objects,desktop_app, \
     sofficeapp \
 ))
 
+ifeq ($(ENABLE_MACOSX_SANDBOX),TRUE)
+
+$(eval $(call gb_CppunitTest_use_system_darwin_frameworks,desktop_app,\
+    Foundation \
+))
+
+endif
+
 $(eval $(call gb_CppunitTest_use_external,desktop_app,boost_headers))
 
 $(eval $(call gb_CppunitTest_use_sdk_api,desktop_app))
commit b640a1343bb73f0c36a316f42847de5d61c156e3
Author: Tor Lillqvist <tml at collabora.com>
Date:   Thu Aug 4 09:17:20 2016 +0300

    Introduce --with-product-name superseding --with-macosx-app-name
    
    The new option thoroughly replaces the product name mentioned in the
    AC_INIT() call. Work in progress.
    
    Also take care of spaces in the product name in a more systematic
    fashion.
    
    This should affect mainly OS X where the final app bundle that is
    installed should use the product name as such, including spaces, if
    any. However, our build system does not cope that well with having an
    app bundle with spaces in it in instdir. So in instdir, and also in
    test-install, spaces are stripped away from the product name when used
    as part of the app bundle name.
    
    Change-Id: Ic16b5039f23c96a4f39387a1869faeb25e05aafb

diff --git a/Makefile.in b/Makefile.in
index bd52c7e..f7f68ed 100644
--- a/Makefile.in
+++ b/Makefile.in
@@ -324,37 +324,37 @@ ifneq ($(MACOSX_CODESIGNING_IDENTITY),)
 #
 # Create Resources/*.lproj directories for languages supported by OS X
 	set -x; for lang in ca cs da de el en es fi fr hr hu id it ja ko ms nl no pl pt pt_PT ro ru sk sv th tr uk vi zh_CN zh_TW; do \
-		lproj=$(TESTINSTALLDIR)/LibreOffice$(if $(ENABLE_RELEASE_BUILD),,Dev).app/Contents/Resources/$$lang.lproj; \
-		mkdir $$lproj; \
+		lproj=$(TESTINSTALLDIR)/$(PRODUCTNAME_WITHOUT_SPACES).app/Contents/Resources/$$lang.lproj; \
+		mkdir "$$lproj"; \
 	done
 #
 # And remove the "bin" folder which should not be there
-	rm -rf $(TESTINSTALLDIR)/LibreOffice$(if $(ENABLE_RELEASE_BUILD),,Dev).app/Contents/bin
+	rm -rf $(TESTINSTALLDIR)/$(PRODUCTNAME_WITHOUT_SPACES).app/Contents/bin
 #
 # Remove unnecessary executables in the LibreOfficePython framework
-	rm -rf $(TESTINSTALLDIR)/LibreOffice$(if $(ENABLE_RELEASE_BUILD),,Dev).app/Contents/Frameworks/LibreOfficePython.framework/Versions/[1-9]*/bin
+	rm -rf $(TESTINSTALLDIR)/$(PRODUCTNAME_WITHOUT_SPACES).app/Contents/Frameworks/LibreOfficePython.framework/Versions/[1-9]*/bin
 #
 # Remove the python.o object file which is weird and interferes with app store uploading
 # And with it removed, presumably the other stuff in the Python lib/python3.3/config-3.3m probably does not make sense either.
-	rm -rf $(TESTINSTALLDIR)/LibreOffice$(if $(ENABLE_RELEASE_BUILD),,Dev).app/Contents/Frameworks/LibreOfficePython.framework/Versions/[1-9]*/lib/python[1-9]*/config-[1-9]*
+	rm -rf $(TESTINSTALLDIR)/$(PRODUCTNAME_WITHOUT_SPACES).app/Contents/Frameworks/LibreOfficePython.framework/Versions/[1-9]*/lib/python[1-9]*/config-[1-9]*
 #
 ifneq ($ENABLE_MACOSX_SANDBOX),)
-# Remove the gengal.bin binary and unopkg script that we don't want
-	rm $(TESTINSTALLDIR)/LibreOffice$(if $(ENABLE_RELEASE_BUILD),,Dev).app/Contents/MacOS/gengal.bin
-	rm $(TESTINSTALLDIR)/LibreOffice$(if $(ENABLE_RELEASE_BUILD),,Dev).app/Contents/MacOS/unopkg
+# Remove the gengal binary and unopkg script that we don't want
+	rm $(TESTINSTALLDIR)/$(PRODUCTNAME_WITHOUT_SPACES).app/Contents/MacOS/gengal
+	rm $(TESTINSTALLDIR)/$(PRODUCTNAME_WITHOUT_SPACES).app/Contents/MacOS/unopkg
 endif
 #
 # Then use the macosx-codesign-app-bundle script
-	@$(SRCDIR)/solenv/bin/macosx-codesign-app-bundle $(TESTINSTALLDIR)/LibreOffice$(if $(ENABLE_RELEASE_BUILD),,Dev).app
+	@$(SRCDIR)/solenv/bin/macosx-codesign-app-bundle $(TESTINSTALLDIR)/$(PRODUCTNAME_WITHOUT_SPACES).app
 endif
 endif
 	@$(call gb_Top_InstallFinished,Test Installation,$(TESTINSTALLDIR))
 
 mac-app-store-package: test-install
 ifneq ($(MACOSX_PACKAGE_SIGNING_IDENTITY),)
-	rm -rf "$(MACOSX_APP_NAME).app"
-	mv "$(TESTINSTALLDIR)/$(PRODUCTNAME).app" "$(MACOSX_APP_NAME).app"
-	productbuild --component "$(MACOSX_APP_NAME).app" /Applications --sign $(MACOSX_PACKAGE_SIGNING_IDENTITY) $(shell echo "$(MACOSX_APP_NAME)" | tr ' ' '-').pkg
+	rm -rf "$(PRODUCTNAME).app"
+	mv "$(TESTINSTALLDIR)/$(PRODUCTNAME_WITHOUT_SPACES).app" "$(PRODUCTNAME).app"
+	productbuild --component "$(PRODUCTNAME).app" /Applications --sign $(MACOSX_PACKAGE_SIGNING_IDENTITY) $(PRODUCTNAME_WITHOUT_SPACES).pkg
 else
 	@echo You did not provide an installer signing identity with --enable-macosx-package-signing
 	@exit 1
diff --git a/config_host.mk.in b/config_host.mk.in
index 91eeaba..ccefde9 100644
--- a/config_host.mk.in
+++ b/config_host.mk.in
@@ -369,7 +369,6 @@ export LIBXSLT_LIBS=$(gb_SPACE)@LIBXSLT_LIBS@
 export LINK_X64_BINARY=@LINK_X64_BINARY@
 @x_Cygwin@ export LS=@WIN_LS@
 export MACOSX_BUNDLE_IDENTIFIER=@MACOSX_BUNDLE_IDENTIFIER@
-export MACOSX_APP_NAME=@MACOSX_APP_NAME@
 export MACOSX_CODESIGNING_IDENTITY=@MACOSX_CODESIGNING_IDENTITY@
 export MACOSX_DEPLOYMENT_TARGET=@MACOSX_DEPLOYMENT_TARGET@
 export MACOSX_PACKAGE_SIGNING_IDENTITY=@MACOSX_PACKAGE_SIGNING_IDENTITY@
@@ -460,6 +459,7 @@ export POSTGRESQL_INC=@POSTGRESQL_INC@
 export POSTGRESQL_LIB=@POSTGRESQL_LIB@
 export PREFIXDIR=@PREFIXDIR@
 export PRODUCTNAME=@PRODUCTNAME@
+export PRODUCTNAME_WITHOUT_SPACES=@PRODUCTNAME_WITHOUT_SPACES@
 export PRODUCTVERSION=@PRODUCTVERSION@
 export PROGRESSBARCOLOR=@PROGRESSBARCOLOR@
 export PROGRESSFRAMECOLOR=@PROGRESSFRAMECOLOR@
diff --git a/configure.ac b/configure.ac
index 1ec2250..e378892 100644
--- a/configure.ac
+++ b/configure.ac
@@ -153,11 +153,16 @@ AC_CANONICAL_HOST
 
 AC_MSG_CHECKING([for product name])
 PRODUCTNAME="AC_PACKAGE_NAME"
+if test -n "$with_product_name" -a "$with_product_name" != no; then
+    PRODUCTNAME="$with_product_name"
+fi
 if test "$enable_release_build" = "" -o "$enable_release_build" = "no"; then
     PRODUCTNAME="${PRODUCTNAME}Dev"
 fi
 AC_MSG_RESULT([$PRODUCTNAME])
 AC_SUBST(PRODUCTNAME)
+PRODUCTNAME_WITHOUT_SPACES=${PRODUCTNAME// /}
+AC_SUBST(PRODUCTNAME_WITHOUT_SPACES)
 
 dnl ===================================================================
 dnl Our version is defined by the AC_INIT() at the top of this script.
@@ -724,7 +729,7 @@ darwin*) # Mac OS X or iOS
             mac_sanitize_path
             AC_MSG_NOTICE([sanitized the PATH to $PATH])
         fi
-        INSTROOTSUFFIX=/$PRODUCTNAME.app/Contents
+        INSTROOTSUFFIX=/$PRODUCTNAME_WITHOUT_SPACES.app/Contents
         SDKDIRNAME=AC_PACKAGE_NAME${PRODUCTVERSION}_SDK
     fi
     enable_systray=no
@@ -1433,10 +1438,10 @@ AC_ARG_WITH(macosx-bundle-identifier,
          org.libreoffice.script ("script", huh?).]),
 ,with_macosx_bundle_identifier=org.libreoffice.script)
 
-AC_ARG_WITH(macosx-app-name,
-    AS_HELP_STRING([--with-macosx-app-name='My Own Office Suite'],
-        [Define the OS X app name. Default is AC_PACKAGE_NAME.]),
-,with_macosx_app_name=$PRODUCTNAME)
+AC_ARG_WITH(product-name,
+    AS_HELP_STRING([--with-product-name='My Own Office Suite'],
+        [Define the product name. Default is AC_PACKAGE_NAME.]),
+,with_product_name=$PRODUCTNAME)
 
 AC_ARG_ENABLE(ios-simulator,
     AS_HELP_STRING([--enable-ios-simulator],
@@ -3031,11 +3036,6 @@ if test $_os = Darwin; then
     AC_MSG_CHECKING([what OS X app bundle identifier to use])
     MACOSX_BUNDLE_IDENTIFIER=$with_macosx_bundle_identifier
     AC_MSG_RESULT([$MACOSX_BUNDLE_IDENTIFIER])
-
-    AC_MSG_CHECKING([what OS X app name to use])
-    MACOSX_APP_NAME="$with_macosx_app_name"
-    AC_MSG_RESULT([$MACOSX_APP_NAME])
-
 fi
 AC_SUBST(MACOSX_SDK_PATH)
 AC_SUBST(MACOSX_SDK_VERSION)
@@ -3048,7 +3048,6 @@ AC_SUBST(MACOSX_CODESIGNING_IDENTITY)
 AC_SUBST(MACOSX_PACKAGE_SIGNING_IDENTITY)
 AC_SUBST(ENABLE_MACOSX_SANDBOX)
 AC_SUBST(MACOSX_BUNDLE_IDENTIFIER)
-AC_SUBST(MACOSX_APP_NAME)
 
 dnl ===================================================================
 dnl Check iOS SDK and compiler
diff --git a/instsetoo_native/util/openoffice.lst.in b/instsetoo_native/util/openoffice.lst.in
index 5f51117..7a8b9b8 100644
--- a/instsetoo_native/util/openoffice.lst.in
+++ b/instsetoo_native/util/openoffice.lst.in
@@ -44,7 +44,7 @@ LibreOffice
     {
         variables
         {
-            PRODUCTNAME LibreOffice
+            PRODUCTNAME @PRODUCTNAME@
             PRODUCTVERSION @LIBO_VERSION_MAJOR at .@LIBO_VERSION_MINOR@
             PRODUCTEXTENSION . at LIBO_VERSION_MICRO@. at LIBO_VERSION_PATCH@@LIBO_VERSION_SUFFIX@
             POSTVERSIONEXTENSION
diff --git a/scp2/source/ooo/directory_ooo_macosx.scp b/scp2/source/ooo/directory_ooo_macosx.scp
index 0bc7bfd..b717460 100644
--- a/scp2/source/ooo/directory_ooo_macosx.scp
+++ b/scp2/source/ooo/directory_ooo_macosx.scp
@@ -21,7 +21,7 @@
 #ifdef MACOSX
 Directory gid_Dir_Bundle
     ParentID = PD_PROGDIR;
-    HostName = "%PRODUCTNAME.app";
+    HostName = "%ONEWORDPRODUCTNAME.app";
 End
 
 Directory gid_Dir_Bundle_Contents
diff --git a/solenv/bin/macosx-codesign-app-bundle b/solenv/bin/macosx-codesign-app-bundle
index afd3e68..37245c1 100755
--- a/solenv/bin/macosx-codesign-app-bundle
+++ b/solenv/bin/macosx-codesign-app-bundle
@@ -98,7 +98,7 @@ done
 #
 # At this stage we also attach the entitlements in the sandboxing case
 
-id=`echo ${MACOSX_APP_NAME} | tr ' ' '-'`
+id=`echo ${PRODUCTNAME} | tr ' ' '-'`
 
 if test -n "$ENABLE_MACOSX_SANDBOX"; then
     entitlements="--entitlements $BUILDDIR/lo.xcent"
diff --git a/solenv/bin/ooinstall b/solenv/bin/ooinstall
index edd3d83..8d0f5be 100755
--- a/solenv/bin/ooinstall
+++ b/solenv/bin/ooinstall
@@ -89,14 +89,11 @@ if ($destdir && "$ENV{DESTDIR}" ne "/" && -d "$ENV{DESTDIR}") {
 
 print "Running LibreOffice installer\n";
 
-my $PRODUCTNAME_no_spaces = $ENV{PRODUCTNAME};
-$PRODUCTNAME_no_spaces =~ s/ //g;
-
 system ("cd $ENV{SRC_ROOT}/instsetoo_native/util ; " .
         "perl " .
         (scalar keys(%DB::sub) ? "-d " : "") .
         "-w $ENV{SRCDIR}/solenv/bin/make_installer.pl " .
-        "-f $ENV{BUILDDIR}/instsetoo_native/util/openoffice.lst -l $langs -p $PRODUCTNAME_no_spaces " .
+        "-f $ENV{BUILDDIR}/instsetoo_native/util/openoffice.lst -l $langs -p LibreOffice " .
         "-u $tmp_dir " .
         "-buildid $BUILD $destdir $strip $msi " .
         "-simple $path") && die "Failed to install: $!";
diff --git a/sysui/desktop/macosx/Info.plist.in b/sysui/desktop/macosx/Info.plist.in
index bd10c26..75980de 100755
--- a/sysui/desktop/macosx/Info.plist.in
+++ b/sysui/desktop/macosx/Info.plist.in
@@ -1828,7 +1828,7 @@
     <key>CFBundleExecutable</key>
     <string>soffice</string>
     <key>CFBundleGetInfoString</key>
-    <string>@MACOSX_APP_NAME@ @LIBO_VERSION_MAJOR at .@LIBO_VERSION_MINOR at .@LIBO_VERSION_MICRO at .@LIBO_VERSION_PATCH@@LIBO_VERSION_SUFFIX@</string>
+    <string>@PRODUCTNAME@ @LIBO_VERSION_MAJOR at .@LIBO_VERSION_MINOR at .@LIBO_VERSION_MICRO at .@LIBO_VERSION_PATCH@@LIBO_VERSION_SUFFIX@</string>
     <key>CFBundleIconFile</key>
     <string>main.icns</string>
     <key>CFBundleShortVersionString</key>
@@ -1840,7 +1840,7 @@
     <key>CFBundleInfoDictionaryVersion</key>
     <string>6.0</string>
     <key>CFBundleName</key>
-    <string>@MACOSX_APP_NAME@</string>
+    <string>@PRODUCTNAME@</string>
     <key>CFBundlePackageType</key>
     <string>APPL</string>
     <key>CFBundleSignature</key>


More information about the Libreoffice-commits mailing list