# -*- Mode: python; indent-tabs-mode: nil; tab-width: 40 -*- # 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/. SPHINX_TREES["/uriloader/exthandler"] = "docs" with Files("**"): BUG_COMPONENT = ("Firefox", "File Handling") TEST_DIRS += ["tests"] XPIDL_SOURCES += [ "nsCExternalHandlerService.idl", "nsIContentDispatchChooser.idl", "nsIExternalHelperAppService.idl", "nsIExternalProtocolService.idl", "nsIHandlerService.idl", "nsIHelperAppLauncherDialog.idl", "nsISharingHandlerApp.idl", ] XPIDL_MODULE = "exthandler" if CONFIG["MOZ_WIDGET_TOOLKIT"] == "windows": osdir = "win" LOCAL_INCLUDES += ["win"] elif CONFIG["MOZ_WIDGET_TOOLKIT"] == "cocoa": osdir = "mac" elif CONFIG["MOZ_WIDGET_TOOLKIT"] in ("android", "uikit"): osdir = CONFIG["MOZ_WIDGET_TOOLKIT"] else: osdir = "unix" EXPORTS += [osdir + "/nsOSHelperAppService.h"] EXPORTS += [ "ContentHandlerService.h", "nsExternalHelperAppService.h", "nsMIMEInfoChild.h", "nsOSHelperAppServiceChild.h", ] EXPORTS += [ "nsLocalHandlerApp.h", ] EXPORTS.mozilla.dom += [ "ExternalHelperAppChild.h", "ExternalHelperAppParent.h", ] UNIFIED_SOURCES += [ "ContentHandlerService.cpp", "ExternalHelperAppChild.cpp", "ExternalHelperAppParent.cpp", "HandlerServiceParent.cpp", "nsExternalHelperAppService.cpp", "nsExternalProtocolHandler.cpp", "nsLocalHandlerApp.cpp", "nsMIMEInfoImpl.cpp", "nsOSHelperAppServiceChild.cpp", ] if CONFIG["MOZ_BUILD_APP"] == "browser": DEFINES["MOZ_BUILD_APP_IS_BROWSER"] = True if CONFIG["MOZ_WIDGET_TOOLKIT"] == "cocoa": UNIFIED_SOURCES += [ "mac/nsLocalHandlerAppMac.mm", "mac/nsMIMEInfoMac.mm", "mac/nsOSHelperAppService.mm", ] elif CONFIG["MOZ_WIDGET_TOOLKIT"] == "uikit": UNIFIED_SOURCES += [ "uikit/nsLocalHandlerAppUIKit.mm", "uikit/nsMIMEInfoUIKit.mm", "uikit/nsOSHelperAppService.mm", ] else: # These files can't be built in unified mode because they redefine LOG. SOURCES += [ osdir + "/nsOSHelperAppService.cpp", ] if CONFIG["MOZ_WIDGET_TOOLKIT"] == "gtk": UNIFIED_SOURCES += [ "unix/nsGNOMERegistry.cpp", "unix/nsMIMEInfoUnix.cpp", ] elif CONFIG["MOZ_WIDGET_TOOLKIT"] == "android": UNIFIED_SOURCES += [ "android/nsMIMEInfoAndroid.cpp", ] elif CONFIG["MOZ_WIDGET_TOOLKIT"] == "windows": UNIFIED_SOURCES += [ "win/nsMIMEInfoWin.cpp", ] if CONFIG["MOZ_ENABLE_DBUS"]: UNIFIED_SOURCES += [ "nsDBusHandlerApp.cpp", ] EXPORTS.mozilla += [ "DBusHelpers.h", ] EXTRA_JS_MODULES += [ "ExtHandlerService.sys.mjs", "WebHandlerApp.sys.mjs", ] EXTRA_JS_MODULES.handlers += [ "HandlerList.sys.mjs", ] XPCOM_MANIFESTS += [ "components.conf", ] IPDL_SOURCES += [ "PExternalHelperApp.ipdl", "PHandlerService.ipdl", ] include("/ipc/chromium/chromium-config.mozbuild") FINAL_LIBRARY = "xul" LOCAL_INCLUDES += [ "/docshell/base", "/dom/base", "/dom/ipc", "/netwerk/base", "/netwerk/protocol/http", ] if CONFIG["MOZ_ENABLE_DBUS"]: CXXFLAGS += CONFIG["MOZ_DBUS_CFLAGS"] if CONFIG["MOZ_WIDGET_TOOLKIT"] == "gtk": CXXFLAGS += CONFIG["MOZ_GTK3_CFLAGS"] CXXFLAGS += CONFIG["MOZ_DBUS_GLIB_CFLAGS"] REQUIRES_UNIFIED_BUILD = True