summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorChristian Lohmaier <lohmaier+LibreOffice@googlemail.com>2022-06-29 13:35:01 +0200
committerChristian Lohmaier <lohmaier+LibreOffice@googlemail.com>2022-07-01 21:07:01 +0200
commit720db024133b42e92fd3258f953819a6d9a456d5 (patch)
tree4d56fa5fcb76bdb67107553db29267d88c93b847
parenttdf#149603 macOS: fix workaround to use web help if Safari is the default bro... (diff)
downloadcore-720db024133b42e92fd3258f953819a6d9a456d5.tar.gz
core-720db024133b42e92fd3258f953819a6d9a456d5.zip
allow to specify a macOS provisioning profile
having one is one of the prerequisites of using TestFlight Change-Id: I9e20eb99905071fade4179dfbe2da5b7e5dd1c24 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/136618 Tested-by: Jenkins Reviewed-by: Christian Lohmaier <lohmaier+LibreOffice@googlemail.com> (cherry picked from commit b43f0b0295953c8d5d16c5b9eccaddb5ec214bab) Reviewed-on: https://gerrit.libreoffice.org/c/core/+/136695
-rw-r--r--Makefile.in4
-rw-r--r--config_host.mk.in1
-rw-r--r--configure.ac19
-rw-r--r--lo.xcent.in1
4 files changed, 24 insertions, 1 deletions
diff --git a/Makefile.in b/Makefile.in
index d3f1047be4ca..a5ae689b614e 100644
--- a/Makefile.in
+++ b/Makefile.in
@@ -387,7 +387,9 @@ ifneq ($(ENABLE_MACOSX_SANDBOX),)
rm $(TESTINSTALLDIR)/$(PRODUCTNAME_WITHOUT_SPACES).app/Contents/MacOS/unopkg
rm $(TESTINSTALLDIR)/$(PRODUCTNAME_WITHOUT_SPACES).app/Contents/MacOS/unoinfo
endif
-#
+ifneq ($(MACOSX_PROVISIONING_PROFILE),)
+ cp "$(MACOSX_PROVISIONING_PROFILE)" $(TESTINSTALLDIR)/$(PRODUCTNAME_WITHOUT_SPACES).app/Contents/embedded.provisionprofile
+endif
ifneq ($(MACOSX_CODESIGNING_IDENTITY),)
# Then use the macosx-codesign-app-bundle script
@$(SRCDIR)/solenv/bin/macosx-codesign-app-bundle $(TESTINSTALLDIR)/$(PRODUCTNAME_WITHOUT_SPACES).app
diff --git a/config_host.mk.in b/config_host.mk.in
index 02f6ec6aba46..847d63c13a50 100644
--- a/config_host.mk.in
+++ b/config_host.mk.in
@@ -425,6 +425,7 @@ export MACOSX_BUNDLE_IDENTIFIER=@MACOSX_BUNDLE_IDENTIFIER@
export MACOSX_CODESIGNING_IDENTITY=@MACOSX_CODESIGNING_IDENTITY@
export MACOSX_DEPLOYMENT_TARGET=@MACOSX_DEPLOYMENT_TARGET@
export MACOSX_PACKAGE_SIGNING_IDENTITY=@MACOSX_PACKAGE_SIGNING_IDENTITY@
+export MACOSX_PROVISIONING_PROFILE=@MACOSX_PROVISIONING_PROFILE@
export MACOSX_SDK_PATH=@MACOSX_SDK_PATH@
export MAC_OS_X_VERSION_MAX_ALLOWED=@MAC_OS_X_VERSION_MAX_ALLOWED@
export MAC_OS_X_VERSION_MIN_REQUIRED=@MAC_OS_X_VERSION_MIN_REQUIRED@
diff --git a/configure.ac b/configure.ac
index db33c873cd83..55099b401f32 100644
--- a/configure.ac
+++ b/configure.ac
@@ -1848,6 +1848,11 @@ AC_ARG_WITH(macosx-bundle-identifier,
org.libreoffice.script ("script", huh?).]),
,with_macosx_bundle_identifier=org.libreoffice.script)
+AC_ARG_WITH(macosx-provisioning-profile,
+ AS_HELP_STRING([--with-macosx-provisioning-profile=/path/to/mac.provisionprofile],
+ [Specify the path to a provisioning profile to use]),
+,)
+
AC_ARG_WITH(product-name,
AS_HELP_STRING([--with-product-name='My Own Office Suite'],
[Define the product name. Default is AC_PACKAGE_NAME.]),
@@ -3549,6 +3554,18 @@ if test $_os = Darwin; then
AC_MSG_CHECKING([what macOS app bundle identifier to use])
MACOSX_BUNDLE_IDENTIFIER=$with_macosx_bundle_identifier
AC_MSG_RESULT([$MACOSX_BUNDLE_IDENTIFIER])
+
+ if test -n "$with_macosx_provisioning_profile" ; then
+ if test ! -f "$with_macosx_provisioning_profile"; then
+ AC_MSG_ERROR([provisioning profile not found at $with_macosx_provisioning_profile])
+ else
+ MACOSX_PROVISIONING_PROFILE=$with_macosx_provisioning_profile
+ MACOSX_PROVISIONING_INFO=$([security cms -D -i "$MACOSX_PROVISIONING_PROFILE" | \
+ xmllint --xpath "//key[.='com.apple.application-identifier' or .='com.apple.developer.team-identifier'] \
+ | //key[.='com.apple.application-identifier' or .='com.apple.developer.team-identifier']/following-sibling::string[1]" - | \
+ sed -e 's#><#>\n\t<#g' -e 's#^#\t#'])
+ fi
+ fi
fi
AC_SUBST(MACOSX_SDK_PATH)
AC_SUBST(MACOSX_DEPLOYMENT_TARGET)
@@ -3560,6 +3577,8 @@ AC_SUBST(MACOSX_CODESIGNING_IDENTITY)
AC_SUBST(MACOSX_PACKAGE_SIGNING_IDENTITY)
AC_SUBST(ENABLE_MACOSX_SANDBOX)
AC_SUBST(MACOSX_BUNDLE_IDENTIFIER)
+AC_SUBST(MACOSX_PROVISIONING_INFO)
+AC_SUBST(MACOSX_PROVISIONING_PROFILE)
dnl ===================================================================
dnl Check iOS SDK and compiler
diff --git a/lo.xcent.in b/lo.xcent.in
index 9a0838fbc388..4b7303876e6b 100644
--- a/lo.xcent.in
+++ b/lo.xcent.in
@@ -22,5 +22,6 @@
<key>com.apple.security.personal-information.addressbook</key>
<true/>
@SDREMOTE_ENTITLEMENT@
+@MACOSX_PROVISIONING_INFO@
</dict>
</plist>