Bug 1295853 - Only enable Widevine on whitelisted Tier-1 build targets. r=glandium draft
authorChris Pearce <cpearce@mozilla.com>
Wed, 17 Aug 2016 21:40:43 +1200
changeset 405651 decbfdf108545127550ca82b4270100fa16b76a5
parent 405457 7963ebdd52b93f96b812eff2eab8d94097147b9c
child 529504 bd67777ec85c66460328a9f4f8a43cde55f16413
push id27555
push usercpearce@mozilla.com
push dateThu, 25 Aug 2016 22:22:37 +0000
reviewersglandium
bugs1295853
milestone51.0a1
Bug 1295853 - Only enable Widevine on whitelisted Tier-1 build targets. r=glandium MozReview-Commit-ID: 52lrV3aEEVe
toolkit/moz.configure
--- a/toolkit/moz.configure
+++ b/toolkit/moz.configure
@@ -351,16 +351,28 @@ def eme_default(build_project, help):
         return 'widevine'
 
 option('--enable-eme',
        nargs='*',
        choices=('adobe','widevine',),
        default=eme_default,
        help='Enable support for Encrypted Media Extensions')
 
+@depends('--enable-eme', target)
+def enable_eme(value, target):
+    # Widevine EME by default enabled on desktop Windows, MacOS and Linux,
+    # x86 and x64 builds.
+    if (target.kernel in ('Darwin', 'WINNT', 'Linux') and
+        target.os not in ('Android', 'iOS') and
+        target.cpu in ('x86', 'x86_64')):
+        return value
+    elif value and value.origin != 'default':
+        die('%s is not supported on %s' % (value.format('--enable-eme'), target.alias))
+    return value
+
 @depends('--enable-eme', fmp4)
 def eme(value, fmp4):
     enabled = bool(value)
     if value.origin == 'default':
         enabled = enabled or fmp4
     if enabled and not fmp4:
         die('Encrypted Media Extension support requires '
             'Fragmented MP4 support')