summaryrefslogtreecommitdiffstats
path: root/toolkit/components/url-classifier/moz.build
diff options
context:
space:
mode:
Diffstat (limited to 'toolkit/components/url-classifier/moz.build')
-rw-r--r--toolkit/components/url-classifier/moz.build103
1 files changed, 103 insertions, 0 deletions
diff --git a/toolkit/components/url-classifier/moz.build b/toolkit/components/url-classifier/moz.build
new file mode 100644
index 0000000000..4c362bc3b9
--- /dev/null
+++ b/toolkit/components/url-classifier/moz.build
@@ -0,0 +1,103 @@
+# -*- 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/.
+
+with Files("**"):
+ BUG_COMPONENT = ("Toolkit", "Safe Browsing")
+
+TEST_DIRS += ["tests"]
+
+XPIDL_SOURCES += [
+ "IUrlClassifierUITelemetry.idl",
+ "nsIUrlClassifierDBService.idl",
+ "nsIUrlClassifierHashCompleter.idl",
+ "nsIUrlClassifierInfo.idl",
+ "nsIUrlClassifierPrefixSet.idl",
+ "nsIUrlClassifierRemoteSettingsService.idl",
+ "nsIUrlClassifierStreamUpdater.idl",
+ "nsIUrlClassifierUtils.idl",
+ "nsIUrlListManager.idl",
+]
+
+XPIDL_MODULE = "url-classifier"
+
+DEFINES["GOOGLE_PROTOBUF_NO_RTTI"] = True
+DEFINES["GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER"] = True
+
+UNIFIED_SOURCES += [
+ "chromium/safebrowsing.pb.cc",
+ "ChunkSet.cpp",
+ "Classifier.cpp",
+ "LookupCache.cpp",
+ "LookupCacheV4.cpp",
+ "nsCheckSummedOutputStream.cpp",
+ "nsUrlClassifierDBService.cpp",
+ "nsUrlClassifierInfo.cpp",
+ "nsUrlClassifierProxies.cpp",
+ "nsUrlClassifierUtils.cpp",
+ "ProtocolParser.cpp",
+ "RiceDeltaDecoder.cpp",
+ "UrlClassifierTelemetryUtils.cpp",
+]
+
+# define conflicting LOG() macros
+SOURCES += [
+ "nsUrlClassifierPrefixSet.cpp",
+ "nsUrlClassifierStreamUpdater.cpp",
+ "VariableLengthPrefixSet.cpp",
+]
+
+# contains variables that conflict with LookupCache.cpp
+SOURCES += [
+ "HashStore.cpp",
+]
+
+EXTRA_JS_MODULES += [
+ "SafeBrowsing.jsm",
+ "UrlClassifierHashCompleter.jsm",
+ "UrlClassifierLib.jsm",
+ "UrlClassifierListManager.jsm",
+ "UrlClassifierRemoteSettingsService.jsm",
+]
+
+XPCOM_MANIFESTS += [
+ "components.conf",
+]
+
+EXPORTS += [
+ "chromium/safebrowsing.pb.h",
+ "Entries.h",
+ "LookupCache.h",
+ "LookupCacheV4.h",
+ "nsUrlClassifierPrefixSet.h",
+ "VariableLengthPrefixSet.h",
+]
+
+FINAL_LIBRARY = "xul"
+
+LOCAL_INCLUDES += [
+ "../build",
+ "/xpcom/io",
+]
+
+CXXFLAGS += CONFIG["SQLITE_CFLAGS"]
+
+# Suppress warnings in third-party code.
+if CONFIG["CC_TYPE"] == "gcc":
+ CXXFLAGS += [
+ "-Wno-maybe-uninitialized",
+ ]
+
+if CONFIG["NIGHTLY_BUILD"] or CONFIG["MOZ_DEBUG"]:
+ DEFINES["MOZ_SAFEBROWSING_DUMP_FAILED_UPDATES"] = True
+
+SPHINX_TREES["url-classifier"] = "docs"
+
+with Files("docs/**"):
+ SCHEDULES.exclusive = ["docs"]
+
+include("/ipc/chromium/chromium-config.mozbuild")
+
+REQUIRES_UNIFIED_BUILD = True