DXR is a code search and navigation tool aimed at making sense of large projects. It supports full-text and regex searches as well as structural queries.

Mercurial (a440f0629814)

VCS Links

Line Code
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 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

# 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,$(srcdir))
	@$(TOUCH) $@

.PHONY: compiletests
compiletests:
	$(call SUBMAKE,libs,test)

endif

GARBAGE += \
  webidl.stub \
  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)