mirror of
https://repo.dactyloidae.xyz/Dactyloidae/UXP.git
synced 2026-09-29 20:07:30 +09:00
Issue #2160 - Initial support for notarizing during DMG package. Added --with-macbundle-idenity configure option to set a codesign identity. If no identity is set or cross-compiling from Linux no codesigning will be done. Currently doing a full deep bundle v2 sign, instead of limited v1.
This commit is contained in:
parent
a2d6260cd6
commit
3d2a4f4066
3 changed files with 17 additions and 0 deletions
|
|
@ -278,6 +278,7 @@ def old_configure_options(*options):
|
||||||
'--with-ios-sdk',
|
'--with-ios-sdk',
|
||||||
'--with-jitreport-granularity',
|
'--with-jitreport-granularity',
|
||||||
'--with-macbundlename-prefix',
|
'--with-macbundlename-prefix',
|
||||||
|
'--with-macbundle-identity',
|
||||||
'--with-macos-private-frameworks',
|
'--with-macos-private-frameworks',
|
||||||
'--with-macos-sdk',
|
'--with-macos-sdk',
|
||||||
'--with-nspr-cflags',
|
'--with-nspr-cflags',
|
||||||
|
|
|
||||||
|
|
@ -4983,6 +4983,16 @@ fi
|
||||||
AC_DEFINE_UNQUOTED(MOZ_MACBUNDLE_ID,$MOZ_MACBUNDLE_ID)
|
AC_DEFINE_UNQUOTED(MOZ_MACBUNDLE_ID,$MOZ_MACBUNDLE_ID)
|
||||||
AC_SUBST(MOZ_MACBUNDLE_ID)
|
AC_SUBST(MOZ_MACBUNDLE_ID)
|
||||||
|
|
||||||
|
dnl ========================================================
|
||||||
|
dnl = Mac bundle codesign identity
|
||||||
|
dnl ========================================================
|
||||||
|
MOZ_ARG_WITH_STRING(macbundle-identity,
|
||||||
|
[ --with-macbundle-identity=identity
|
||||||
|
Identity to codesign the Mac application bundle],
|
||||||
|
[ MOZ_MACBUNDLE_IDENTITY="$withval"])
|
||||||
|
|
||||||
|
AC_SUBST(MOZ_MACBUNDLE_IDENTITY)
|
||||||
|
|
||||||
dnl ========================================================
|
dnl ========================================================
|
||||||
dnl = Child Process Name for IPC
|
dnl = Child Process Name for IPC
|
||||||
dnl ========================================================
|
dnl ========================================================
|
||||||
|
|
|
||||||
|
|
@ -102,6 +102,7 @@ def create_dmg(source_directory, output_dmg, volume_name, extra_files):
|
||||||
if is_linux:
|
if is_linux:
|
||||||
check_tools('DMG_TOOL', 'GENISOIMAGE')
|
check_tools('DMG_TOOL', 'GENISOIMAGE')
|
||||||
with mozfile.TemporaryDirectory() as tmpdir:
|
with mozfile.TemporaryDirectory() as tmpdir:
|
||||||
|
import buildconfig
|
||||||
stagedir = os.path.join(tmpdir, 'stage')
|
stagedir = os.path.join(tmpdir, 'stage')
|
||||||
os.mkdir(stagedir)
|
os.mkdir(stagedir)
|
||||||
# Copy the app bundle over using rsync
|
# Copy the app bundle over using rsync
|
||||||
|
|
@ -118,4 +119,9 @@ def create_dmg(source_directory, output_dmg, volume_name, extra_files):
|
||||||
# Set the folder attributes to use a custom icon
|
# Set the folder attributes to use a custom icon
|
||||||
set_folder_icon(stagedir)
|
set_folder_icon(stagedir)
|
||||||
chmod(stagedir)
|
chmod(stagedir)
|
||||||
|
if not is_linux:
|
||||||
|
identity = buildconfig.substs['MOZ_MACBUNDLE_IDENTITY']
|
||||||
|
if identity != '':
|
||||||
|
appbundle = os.path.join(stagedir, buildconfig.substs['MOZ_MACBUNDLE_NAME'])
|
||||||
|
subprocess.check_call(['codesign', '--deep', '-s', identity, appbundle])
|
||||||
create_dmg_from_staged(stagedir, output_dmg, tmpdir, volume_name)
|
create_dmg_from_staged(stagedir, output_dmg, tmpdir, volume_name)
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue