зеркало из https://github.com/mozilla/gecko-dev.git
Backed out changesets 77fcbb01366c (bug 899792) and e7d81c2597f2 (bug 899241) for OSX bustage.
CLOSED TREE
This commit is contained in:
Родитель
f532a2aabc
Коммит
70fbb1997c
|
@ -19,14 +19,9 @@
|
|||
#
|
||||
# Targets are defined by the following variables:
|
||||
#
|
||||
# FILE - The make file to evaluate. This is equivalent to
|
||||
# |make -f <FILE>|
|
||||
# DIRECTORY - The directory whose Makefile to evaluate. This is
|
||||
# equivalent to |make -C <DIRECTORY>|.
|
||||
# FILE - The make file to evaluate.
|
||||
# TARGETS - Targets to evaluate in that make file.
|
||||
#
|
||||
# Only 1 of FILE or DIRECTORY may be defined.
|
||||
#
|
||||
# For example:
|
||||
#
|
||||
# NONRECURSIVE_TARGETS = export libs
|
||||
|
@ -34,31 +29,30 @@
|
|||
# NONRECURSIVE_TARGETS_export_headers_FILE = /path/to/exports.mk
|
||||
# NONRECURSIVE_TARGETS_export_headers_TARGETS = $(DIST)/include/foo.h $(DIST)/include/bar.h
|
||||
# NONRECURSIVE_TARGETS_libs = cppsrcs
|
||||
# NONRECURSIVE_TARGETS_libs_cppsrcs_DIRECTORY = $(DEPTH)/foo
|
||||
# NONRECURSIVE_TARGETS_libs_cppsrcs_FILE = /path/to/compilation.mk
|
||||
# NONRECURSIVE_TARGETS_libs_cppsrcs_TARGETS = /path/to/foo.o /path/to/bar.o
|
||||
#
|
||||
# Will get turned into the following:
|
||||
#
|
||||
# exports::
|
||||
# $(MAKE) -C $(DEPTH) -f /path/to/exports.mk $(DIST)/include/foo.h $(DIST)/include/bar.h
|
||||
# $(MAKE) -f /path/to/exports.mk $(DIST)/include/foo.h $(DIST)/include/bar.h
|
||||
#
|
||||
# libs::
|
||||
# $(MAKE) -C $(DEPTH)/foo /path/to/foo.o /path/to/bar.o
|
||||
# $(MAKE) -f /path/to/compilation.mk /path/to/foo.o /path/to/bar.o
|
||||
|
||||
ifndef INCLUDED_NONRECURSIVE_MK
|
||||
|
||||
define define_nonrecursive_target
|
||||
$(1)::
|
||||
$$(MAKE) -C $(or $(4),$$(DEPTH)) $(addprefix -f ,$(3)) $(2)
|
||||
cd $$(DEPTH) && $$(MAKE) -f $(2) $(3)
|
||||
endef
|
||||
|
||||
$(foreach target,$(NONRECURSIVE_TARGETS), \
|
||||
$(foreach entry,$(NONRECURSIVE_TARGETS_$(target)), \
|
||||
$(eval $(call define_nonrecursive_target, \
|
||||
$(target), \
|
||||
$(NONRECURSIVE_TARGETS_$(target)_$(entry)_TARGETS), \
|
||||
$(NONRECURSIVE_TARGETS_$(target)_$(entry)_FILE), \
|
||||
$(NONRECURSIVE_TARGETS_$(target)_$(entry)_DIRECTORY), \
|
||||
$(NONRECURSIVE_TARGETS_$(target)_$(entry)_TARGETS) \
|
||||
)) \
|
||||
) \
|
||||
)
|
||||
|
|
|
@ -1,34 +0,0 @@
|
|||
# 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
|
||||
|
||||
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"
|
||||
|
||||
export:: ipdl webidl
|
||||
|
||||
ipdl:
|
||||
$(call make_subtier_dir,IPDL,$(DEPTH)/ipc/ipdl,ipdl)
|
||||
|
||||
webidl:
|
||||
$(call make_subtier_dir,WebIDL,$(DEPTH)/dom/bindings,webidl)
|
|
@ -1,5 +0,0 @@
|
|||
# -*- Mode: python; c-basic-offset: 4; 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/.
|
|
@ -242,7 +242,7 @@ GARBAGE += \
|
|||
# headers they depend on. This is really only needed for the test files, since
|
||||
# the non-test headers are all exported above anyway. Note that this means that
|
||||
# we do all of our codegen during export.
|
||||
webidl: $(binding_header_files)
|
||||
export:: $(binding_header_files)
|
||||
|
||||
distclean::
|
||||
-$(RM) \
|
||||
|
@ -252,9 +252,3 @@ distclean::
|
|||
$(globalgen_targets) \
|
||||
ParserResults.pkl \
|
||||
$(NULL)
|
||||
|
||||
# This is only needed to support |make| from this leaf directory/Makefile.
|
||||
NONRECURSIVE_TARGETS := export
|
||||
NONRECURSIVE_TARGETS_export := webidl
|
||||
NONRECURSIVE_TARGETS_export_webidl_DIRECTORY := .
|
||||
NONRECURSIVE_TARGETS_export_webidl_TARGETS := webidl
|
||||
|
|
|
@ -31,7 +31,7 @@ include $(topsrcdir)/ipc/chromium/chromium-config.mk
|
|||
|
||||
# NB: the IPDL compiler manages .ipdl-->.h/.cpp dependencies itself,
|
||||
# which is why we don't have explicit .h/.cpp targets here
|
||||
ipdl: $(ALL_IPDLSRCS)
|
||||
export:: $(ALL_IPDLSRCS)
|
||||
$(PYTHON) $(topsrcdir)/config/pythonpath.py \
|
||||
$(PLY_INCLUDE) \
|
||||
$(srcdir)/ipdl.py \
|
||||
|
@ -43,9 +43,3 @@ ipdl: $(ALL_IPDLSRCS)
|
|||
# We #include some things in the dom/plugins/ directory that rely on
|
||||
# toolkit libraries.
|
||||
CXXFLAGS += $(TK_CFLAGS)
|
||||
|
||||
# This is only needed to support |make| from this leaf directory/Makefile.
|
||||
NONRECURSIVE_TARGETS := export
|
||||
NONRECURSIVE_TARGETS_export := ipdl
|
||||
NONRECURSIVE_TARGETS_export_ipdl_DIRECTORY := .
|
||||
NONRECURSIVE_TARGETS_export_ipdl_TARGETS := ipdl
|
||||
|
|
|
@ -19,14 +19,9 @@
|
|||
#
|
||||
# Targets are defined by the following variables:
|
||||
#
|
||||
# FILE - The make file to evaluate. This is equivalent to
|
||||
# |make -f <FILE>|
|
||||
# DIRECTORY - The directory whose Makefile to evaluate. This is
|
||||
# equivalent to |make -C <DIRECTORY>|.
|
||||
# FILE - The make file to evaluate.
|
||||
# TARGETS - Targets to evaluate in that make file.
|
||||
#
|
||||
# Only 1 of FILE or DIRECTORY may be defined.
|
||||
#
|
||||
# For example:
|
||||
#
|
||||
# NONRECURSIVE_TARGETS = export libs
|
||||
|
@ -34,31 +29,30 @@
|
|||
# NONRECURSIVE_TARGETS_export_headers_FILE = /path/to/exports.mk
|
||||
# NONRECURSIVE_TARGETS_export_headers_TARGETS = $(DIST)/include/foo.h $(DIST)/include/bar.h
|
||||
# NONRECURSIVE_TARGETS_libs = cppsrcs
|
||||
# NONRECURSIVE_TARGETS_libs_cppsrcs_DIRECTORY = $(DEPTH)/foo
|
||||
# NONRECURSIVE_TARGETS_libs_cppsrcs_FILE = /path/to/compilation.mk
|
||||
# NONRECURSIVE_TARGETS_libs_cppsrcs_TARGETS = /path/to/foo.o /path/to/bar.o
|
||||
#
|
||||
# Will get turned into the following:
|
||||
#
|
||||
# exports::
|
||||
# $(MAKE) -C $(DEPTH) -f /path/to/exports.mk $(DIST)/include/foo.h $(DIST)/include/bar.h
|
||||
# $(MAKE) -f /path/to/exports.mk $(DIST)/include/foo.h $(DIST)/include/bar.h
|
||||
#
|
||||
# libs::
|
||||
# $(MAKE) -C $(DEPTH)/foo /path/to/foo.o /path/to/bar.o
|
||||
# $(MAKE) -f /path/to/compilation.mk /path/to/foo.o /path/to/bar.o
|
||||
|
||||
ifndef INCLUDED_NONRECURSIVE_MK
|
||||
|
||||
define define_nonrecursive_target
|
||||
$(1)::
|
||||
$$(MAKE) -C $(or $(4),$$(DEPTH)) $(addprefix -f ,$(3)) $(2)
|
||||
cd $$(DEPTH) && $$(MAKE) -f $(2) $(3)
|
||||
endef
|
||||
|
||||
$(foreach target,$(NONRECURSIVE_TARGETS), \
|
||||
$(foreach entry,$(NONRECURSIVE_TARGETS_$(target)), \
|
||||
$(eval $(call define_nonrecursive_target, \
|
||||
$(target), \
|
||||
$(NONRECURSIVE_TARGETS_$(target)_$(entry)_TARGETS), \
|
||||
$(NONRECURSIVE_TARGETS_$(target)_$(entry)_FILE), \
|
||||
$(NONRECURSIVE_TARGETS_$(target)_$(entry)_DIRECTORY), \
|
||||
$(NONRECURSIVE_TARGETS_$(target)_$(entry)_TARGETS) \
|
||||
)) \
|
||||
) \
|
||||
)
|
||||
|
|
|
@ -26,3 +26,4 @@ if not CONFIG['LIBXUL_SDK']:
|
|||
# Bring in the configuration for the configured application.
|
||||
if CONFIG['COMPILE_ENVIRONMENT']:
|
||||
include('/' + CONFIG['MOZ_BUILD_APP'] + '/app.mozbuild')
|
||||
|
||||
|
|
|
@ -1,41 +0,0 @@
|
|||
# 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/.
|
||||
|
||||
from __future__ import print_function, unicode_literals
|
||||
|
||||
import argparse
|
||||
from mozpack.copier import FileCopier
|
||||
from mozpack.manifests import InstallManifest
|
||||
|
||||
|
||||
COMPLETE = 'From {dest}: Kept {existing} existing; Added/updated {updated}; ' \
|
||||
'Removed {rm_files} files and {rm_dirs} directories.'
|
||||
|
||||
|
||||
def process_manifest(destdir, *paths):
|
||||
manifest = InstallManifest()
|
||||
for path in paths:
|
||||
manifest |= InstallManifest(path=path)
|
||||
|
||||
copier = FileCopier()
|
||||
manifest.populate_registry(copier)
|
||||
return copier.copy(destdir)
|
||||
|
||||
|
||||
if __name__ == '__main__':
|
||||
parser = argparse.ArgumentParser(
|
||||
description='Process install manifest files.')
|
||||
|
||||
parser.add_argument('destdir', help='Destination directory.')
|
||||
parser.add_argument('manifests', nargs='+', help='Path to manifest file(s).')
|
||||
|
||||
args = parser.parse_args()
|
||||
|
||||
result = process_manifest(args.destdir, *args.manifests)
|
||||
|
||||
print(COMPLETE.format(dest=args.destdir,
|
||||
existing=result.existing_files_count,
|
||||
updated=result.updated_files_count,
|
||||
rm_files=result.removed_files_count,
|
||||
rm_dirs=result.removed_directories_count))
|
|
@ -47,8 +47,6 @@ class BuildMonitor(object):
|
|||
self.current_tier_dirs = []
|
||||
self.current_tier_static_dirs = []
|
||||
self.current_subtier_dirs = []
|
||||
self.current_subtier_started = set()
|
||||
self.current_subtier_finished = set()
|
||||
self.current_tier_dir = None
|
||||
self.current_tier_dir_index = 0
|
||||
|
||||
|
@ -109,8 +107,6 @@ class BuildMonitor(object):
|
|||
self.current_tier = args[0]
|
||||
self.current_subtier = None
|
||||
self.current_tier_dirs = []
|
||||
self.current_subtier_started = set()
|
||||
self.current_subtier_finished = set()
|
||||
self.current_tier_dir = None
|
||||
elif action == 'TIER_FINISH':
|
||||
assert len(args) == 1
|
||||
|
@ -125,12 +121,11 @@ class BuildMonitor(object):
|
|||
else:
|
||||
self.current_subtier_dirs = self.current_tier_dirs
|
||||
self.current_tier_dir_index = 0
|
||||
self.current_subtier_started.add(subtier)
|
||||
elif action == 'SUBTIER_FINISH':
|
||||
assert len(args) == 2
|
||||
tier, subtier = args
|
||||
assert tier == self.current_tier
|
||||
self.current_subtier_finished.add(subtier)
|
||||
assert subtier == self.current_subtier
|
||||
elif action == 'TIERDIR_START':
|
||||
assert len(args) == 1
|
||||
self.current_tier_dir = args[0]
|
||||
|
|
|
@ -129,12 +129,14 @@ class BuildProgressFooter(object):
|
|||
else:
|
||||
parts.extend([tier, ' '])
|
||||
|
||||
current_encountered = False
|
||||
parts.extend([('bold', 'SUBTIER'), ':', ' '])
|
||||
for subtier in self._monitor.subtiers:
|
||||
if subtier in self._monitor.current_subtier_finished:
|
||||
parts.extend([('green', subtier), ' '])
|
||||
elif subtier in self._monitor.current_subtier_started:
|
||||
if subtier == self._monitor.current_subtier:
|
||||
parts.extend([('underline_yellow', subtier), ' '])
|
||||
current_encountered = True
|
||||
elif not current_encountered:
|
||||
parts.extend([('green', subtier), ' '])
|
||||
else:
|
||||
parts.extend([subtier, ' '])
|
||||
|
||||
|
|
|
@ -9,8 +9,6 @@ if CONFIG['LIBXUL_SDK']:
|
|||
if not CONFIG['MOZ_NATIVE_NSPR']:
|
||||
add_tier_dir('nspr', 'config/nspr')
|
||||
|
||||
add_tier_dir('precompile', 'config/makefiles/precompile')
|
||||
|
||||
if not CONFIG['MOZ_NATIVE_SQLITE']:
|
||||
add_tier_dir('nss', 'db/sqlite3/src')
|
||||
|
||||
|
|
Загрузка…
Ссылка в новой задаче