summaryrefslogtreecommitdiffstats
path: root/dom/bindings/Makefile.in
diff options
context:
space:
mode:
Diffstat (limited to 'dom/bindings/Makefile.in')
-rw-r--r--dom/bindings/Makefile.in70
1 files changed, 70 insertions, 0 deletions
diff --git a/dom/bindings/Makefile.in b/dom/bindings/Makefile.in
new file mode 100644
index 000000000..95f267397
--- /dev/null
+++ b/dom/bindings/Makefile.in
@@ -0,0 +1,70 @@
+# 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/.
+
+webidl_base := $(topsrcdir)/dom/webidl
+
+ifdef COMPILE_ENVIRONMENT
+
+# Generated by moz.build
+include webidlsrcs.mk
+
+# These come from webidlsrcs.mk.
+# TODO Write directly into backend.mk (bug 1281618)
+CPPSRCS += $(globalgen_sources) $(unified_binding_cpp_files)
+
+include $(topsrcdir)/config/rules.mk
+
+# TODO This list should be emitted to a .pp file via
+# GenerateCSS2PropertiesWebIDL.py (bug 1281614)
+css2properties_dependencies = \
+ $(topsrcdir)/layout/style/nsCSSPropList.h \
+ $(topsrcdir)/layout/style/nsCSSPropAliasList.h \
+ $(webidl_base)/CSS2Properties.webidl.in \
+ $(topsrcdir)/layout/style/PythonCSSProps.h \
+ $(srcdir)/GenerateCSS2PropertiesWebIDL.py \
+ $(GLOBAL_DEPS) \
+ $(NULL)
+
+CSS2Properties.webidl: $(css2properties_dependencies)
+
+# Most of the logic for dependencies lives inside Python so it can be
+# used by multiple build backends. We simply have rules to generate
+# and include the .pp file.
+#
+# The generated .pp file contains all the important dependencies such as
+# changes to .webidl or .py files should result in code generation being
+# performed. But we do pull in file-lists.jon to catch file additions.
+codegen_dependencies := \
+ file-lists.json \
+ $(nonstatic_webidl_files) \
+ $(GLOBAL_DEPS) \
+ $(NULL)
+
+include codegen.pp
+
+codegen.pp: $(codegen_dependencies)
+ $(call py_action,webidl,$(srcdir))
+ @$(TOUCH) $@
+
+.PHONY: compiletests
+compiletests:
+ $(call SUBMAKE,libs,test)
+
+endif
+
+GARBAGE += \
+ codegen.pp \
+ codegen.json \
+ parser.out \
+ WebIDLGrammar.pkl \
+ $(wildcard *.h) \
+ $(wildcard *Binding.cpp) \
+ $(wildcard *Event.cpp) \
+ $(wildcard *-event.cpp) \
+ $(wildcard *.webidl) \
+ $(NULL)
+
+DIST_GARBAGE += \
+ file-lists.json \
+ $(NULL)