# 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 # Akin to GLOBAL_DEPS, but set early enough that webidlsrcs.mk # can make use of them as dependencies. WEBIDL_PP_DEPS := \ backend.mk \ Makefile \ $(DEPTH)/config/autoconf.mk \ $(topsrcdir)/config/config.mk \ $(NULL) # 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 # 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) export:: webidl.stub # codegen.pp is created as a side-effect of the webidl action -include codegen.pp webidl.stub: $(codegen_dependencies) $(call py_action,webidl $(relativesrcdir),$(srcdir)) @$(TOUCH) $@ .PHONY: compiletests compiletests: $(call SUBMAKE,libs,test) endif