Source code
Revision control
Copy as Markdown
Other Tools
# -*- 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
with Files("**"):
BUG_COMPONENT = ("Core", "DOM: Geolocation")
with Files("GeolocationSystemWin.cpp"):
BUG_COMPONENT = ("Core", "Widget: Win32")
EXPORTS += [
"nsGeoPositionIPCSerialiser.h",
]
EXPORTS.mozilla.dom += [
"Geolocation.h",
"GeolocationCoordinates.h",
"GeolocationIPCUtils.h",
"GeolocationPosition.h",
"GeolocationPositionError.h",
"GeolocationSystem.h",
]
SOURCES += [
"Geolocation.cpp",
"GeolocationCoordinates.cpp",
"GeolocationPosition.cpp",
"GeolocationPositionError.cpp",
]
UNIFIED_SOURCES += [
"MLSFallback.cpp",
]
# MinGW is missing the headers needed to build the Windows Geolocation System
# Permission UI so it uses the platform-agnostic version.
if (
CONFIG["OS_TARGET"] == "WINNT"
and (CONFIG["CC_TYPE"] == "clang-cl" or CONFIG["MOZ_ARTIFACT_BUILDS"])
and CONFIG["MOZ_BUILD_APP"] == "browser"
):
UNIFIED_SOURCES += [
"GeolocationSystemWin.cpp",
]
EXTRA_JS_MODULES += [
"GeolocationUIUtilsWin.sys.mjs",
]
XPCOM_MANIFESTS += [
"components.conf",
]
XPIDL_SOURCES += ["nsIGeolocationUIUtilsWin.idl"]
XPIDL_MODULE = "dom_geolocation"
else:
UNIFIED_SOURCES += [
"GeolocationSystem.cpp",
]
include("/ipc/chromium/chromium-config.mozbuild")
FINAL_LIBRARY = "xul"
LOCAL_INCLUDES += [
"/dom/base",
"/dom/ipc",
]
if CONFIG["MOZ_WIDGET_TOOLKIT"] == "android":
LOCAL_INCLUDES += [
"/dom/system/android",
]
elif CONFIG["MOZ_WIDGET_TOOLKIT"] == "cocoa":
LOCAL_INCLUDES += [
"/dom/system/mac",
]
elif CONFIG["MOZ_WIDGET_TOOLKIT"] == "windows":
LOCAL_INCLUDES += [
"/dom/system/windows/location",
]
elif CONFIG["MOZ_WIDGET_TOOLKIT"] == "gtk":
if CONFIG["MOZ_ENABLE_DBUS"]:
LOCAL_INCLUDES += ["/dom/system/linux"]
CXXFLAGS += CONFIG["MOZ_GTK3_CFLAGS"]