config/makefiles/precompile/Makefile.in
author Gregory Szorc <gps@mozilla.com>
Wed, 14 Aug 2013 08:40:25 -0700
changeset 155597 13f3b8949f63adc20b0725fd3a3b3917f66c2d63
parent 155570 b334e6d0a02bc8cd8aac81321e4d50f4159887d7
child 155684 4b83621ceedf0fe341a1a89a98db3f2262bba668
permissions -rw-r--r--
Bug 850380 - Derecursify and optimize XPIDL processing and move into precompile tier; r=glandium

# 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/.

# This make file defines the precompile tier. This tier effectively fans out
# to other make files and specialized targets.

DEPTH := @DEPTH@
topsrcdir := @top_srcdir@
srcdir := @srcdir@

include $(DEPTH)/config/autoconf.mk

SUPPRESS_DEFAULT_RULES := 1

include $(topsrcdir)/config/rules.mk

# We don't print the build status messages unless we're in a top level build
# otherwise the output is unexpected and it confuses downstream parsers.
define make_subtier_dir
@echo "BUILDSTATUS SUBTIER_START precompile $(1)"
+$(MAKE) -C $(2) $(3)
@echo "BUILDSTATUS SUBTIER_FINISH precompile $(1)"

endef

export::
	@echo "BUILDSTATUS SUBTIERS IPDL WebIDL XPIDL"

export:: ipdl webidl xpidl-parser xpidl

ipdl:
	$(call make_subtier_dir,IPDL,$(DEPTH)/ipc/ipdl,ipdl)

webidl:
	$(call make_subtier_dir,WebIDL,$(DEPTH)/dom/bindings,webidl)

xpidl-parser:
	$(call make_subtier_dir,XPIDLParser,$(DEPTH)/xpcom/idl-parser,xpidl-parser)

xpidl: xpidl-parser
	$(call py_action,process_install_manifest,$(DIST)/idl $(DEPTH)/_build_manifests/install/dist_idl)
	$(call make_subtier_dir,XPIDL,$(DEPTH)/config/makefiles/xpidl,xpidl)