From 5a6d7de60fe3e2b5bd5dfcc722f980843b7ef437 Mon Sep 17 00:00:00 2001 From: Krzysztof Mioduszewski Date: Wed, 11 Feb 2015 10:09:00 -0500 Subject: [PATCH] Bug 879861 - Part 5: Build support for SecureElement feature. r=gps --- b2g/installer/package-manifest.in | 13 +++++++++++ configure.in | 12 ++++++++++ dom/moz.build | 3 +++ dom/secureelement/moz.build | 39 +++++++++++++++++++++++++++++++ dom/webidl/moz.build | 6 +++++ layout/build/moz.build | 5 ++++ 6 files changed, 78 insertions(+) create mode 100644 dom/secureelement/moz.build diff --git a/b2g/installer/package-manifest.in b/b2g/installer/package-manifest.in index a9c609fb3eb..9ef7c47a64b 100644 --- a/b2g/installer/package-manifest.in +++ b/b2g/installer/package-manifest.in @@ -183,6 +183,9 @@ @BINPATH@/components/dom_geolocation.xpt @BINPATH@/components/dom_media.xpt @BINPATH@/components/dom_network.xpt +#ifdef MOZ_SECUREELEMENT +@BINPATH@/components/dom_secureelement.xpt +#endif #ifdef MOZ_NFC @BINPATH@/components/dom_nfc.xpt #endif @@ -413,6 +416,12 @@ @BINPATH@/components/htmlMenuBuilder.manifest @BINPATH@/components/PresentationDeviceInfoManager.manifest @BINPATH@/components/PresentationDeviceInfoManager.js +#ifdef MOZ_SECUREELEMENT +@BINPATH@/components/SecureElement.js +@BINPATH@/components/SecureElement.manifest +@BINPATH@/components/UiccConnector.js +@BINPATH@/components/UiccConnector.manifest +#endif ; WiFi, NetworkManager, NetworkStats #ifdef MOZ_WIDGET_GONK @@ -548,6 +557,10 @@ @BINPATH@/components/NfcContentHelper.manifest @BINPATH@/components/NfcContentHelper.js #endif +#ifdef MOZ_SECUREELEMENT +@BINPATH@/components/DOMSecureElement.manifest +@BINPATH@/components/DOMSecureElement.js +#endif #ifdef MOZ_ENABLE_DBUS @BINPATH@/components/@DLL_PREFIX@dbusservice@DLL_SUFFIX@ #endif diff --git a/configure.in b/configure.in index 4ca02990c59..b8dbb7010d0 100644 --- a/configure.in +++ b/configure.in @@ -240,6 +240,7 @@ if test -n "$gonkdir" ; then AC_SUBST(MOZ_OMX_DECODER) MOZ_RTSP=1 MOZ_FMP4=1 + MOZ_SECUREELEMENT=1 ;; 17|18) GONK_INCLUDES="-I$gonkdir/frameworks/native/include -I$gonkdir/frameworks/av/include -I$gonkdir/frameworks/av/include/media -I$gonkdir/frameworks/av/include/camera -I$gonkdir/frameworks/native/include/media/openmax -I$gonkdir/frameworks/av/media/libstagefright/include" @@ -264,6 +265,7 @@ if test -n "$gonkdir" ; then AC_SUBST(MOZ_OMX_ENCODER) AC_DEFINE(MOZ_OMX_ENCODER) MOZ_FMP4=1 + MOZ_SECUREELEMENT=1 ;; 19) GONK_INCLUDES="-I$gonkdir/frameworks/native/include -I$gonkdir/frameworks/av/include -I$gonkdir/frameworks/av/include/media -I$gonkdir/frameworks/av/include/camera -I$gonkdir/frameworks/native/include/media/openmax -I$gonkdir/frameworks/av/media/libstagefright/include" @@ -279,6 +281,7 @@ if test -n "$gonkdir" ; then MOZ_OMX_ENCODER=1 AC_DEFINE(MOZ_OMX_ENCODER) MOZ_AUDIO_OFFLOAD=1 + MOZ_SECUREELEMENT=1 AC_SUBST(MOZ_AUDIO_OFFLOAD) AC_DEFINE(MOZ_AUDIO_OFFLOAD) MOZ_FMP4=1 @@ -7585,6 +7588,15 @@ if test -n "$MOZ_AUDIO_CHANNEL_MANAGER"; then fi AC_SUBST(MOZ_AUDIO_CHANNEL_MANAGER) +dnl ======================================================== +dnl = Enable Support for Secure Element API +dnl ======================================================== + MOZ_SECUREELEMENT=1, +if test -n "$MOZ_SECUREELEMENT"; then + AC_DEFINE(MOZ_SECUREELEMENT) +fi + AC_SUBST(MOZ_SECUREELEMENT) + dnl ======================================================== dnl = Support for demangling undefined symbols dnl ======================================================== diff --git a/dom/moz.build b/dom/moz.build index dc5766eb8fc..d3c27a32a5b 100644 --- a/dom/moz.build +++ b/dom/moz.build @@ -135,6 +135,9 @@ if CONFIG['MOZ_GAMEPAD']: if CONFIG['MOZ_NFC']: DIRS += ['nfc'] +if CONFIG['MOZ_SECUREELEMENT']: + DIRS += ['secureelement'] + if CONFIG['MOZ_B2G']: DIRS += [ 'downloads', diff --git a/dom/secureelement/moz.build b/dom/secureelement/moz.build new file mode 100644 index 00000000000..449badf3076 --- /dev/null +++ b/dom/secureelement/moz.build @@ -0,0 +1,39 @@ +# vim: set filetype=python: +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# +# Copyright © 2014 Deutsche Telekom, Inc. + +if CONFIG['MOZ_SECUREELEMENT']: + EXTRA_COMPONENTS += [ + 'DOMSecureElement.js', + 'DOMSecureElement.manifest', + ] + +if CONFIG['MOZ_WIDGET_TOOLKIT'] == 'gonk' and CONFIG['MOZ_SECUREELEMENT']: + EXTRA_COMPONENTS += [ + 'gonk/SecureElement.js', + 'gonk/SecureElement.manifest', + ] + XPIDL_MODULE = 'dom_secureelement' + XPIDL_SOURCES += [ + 'gonk/nsISecureElementConnector.idl', + ] + EXTRA_JS_MODULES += [ + 'gonk/se_consts.js', + 'SEUtils.jsm' + ] + XPCSHELL_TESTS_MANIFESTS += [ + 'tests/unit/xpcshell.ini' + ] + if CONFIG['MOZ_B2G_RIL']: + EXTRA_COMPONENTS += [ + 'gonk/UiccConnector.js', + 'gonk/UiccConnector.manifest', + ] + +FAIL_ON_WARNINGS = True +include('/ipc/chromium/chromium-config.mozbuild') + +FINAL_LIBRARY = 'xul' diff --git a/dom/webidl/moz.build b/dom/webidl/moz.build index 6c8c708bb8a..42b4a6aed67 100644 --- a/dom/webidl/moz.build +++ b/dom/webidl/moz.build @@ -661,6 +661,12 @@ if CONFIG['MOZ_NFC']: 'NfcOptions.webidl', ] +if CONFIG['MOZ_SECUREELEMENT']: + WEBIDL_FILES += [ + 'SecureElement.webidl', + 'SecureElementManager.webidl', + ] + if CONFIG['MOZ_WIDGET_TOOLKIT'] == 'gonk': WEBIDL_FILES += [ 'MozNetworkStats.webidl', diff --git a/layout/build/moz.build b/layout/build/moz.build index c0627f19782..8f97a1190f6 100644 --- a/layout/build/moz.build +++ b/layout/build/moz.build @@ -119,4 +119,9 @@ if CONFIG['MOZ_WEBSPEECH']: if CONFIG['MOZ_GSTREAMER']: CXXFLAGS += CONFIG['GSTREAMER_CFLAGS'] +if CONFIG['MOZ_SECUREELEMENT']: + LOCAL_INCLUDES += [ + '/dom/secureelement', + ] + FINAL_LIBRARY = 'xul'