зеркало из https://github.com/mozilla/gecko-dev.git
Give the standalone build system a finer grained control over which directories are checked out.
Bug #57282 r=blizzard
This commit is contained in:
Родитель
a43bfeb51a
Коммит
0dcaf7b61a
|
@ -297,6 +297,7 @@ modules/libimg/pngcom/Makefile
|
|||
|
||||
MAKEFILES_libjar="
|
||||
modules/libjar/Makefile
|
||||
modules/libjar/standalone/Makefile
|
||||
"
|
||||
|
||||
MAKEFILES_libreg="
|
||||
|
@ -387,6 +388,12 @@ netwerk/streamconv/src/Makefile
|
|||
netwerk/streamconv/test/Makefile
|
||||
netwerk/test/Makefile
|
||||
netwerk/testserver/Makefile
|
||||
|
||||
uriloader/exthandler/Makefile
|
||||
intl/strres/public/Makefile
|
||||
intl/locale/idl/Makefile
|
||||
$MAKEFILES_js
|
||||
modules/libpref/public/Makefile
|
||||
"
|
||||
|
||||
MAKEFILES_uriloader="
|
||||
|
@ -554,12 +561,20 @@ xpcom/proxy/public/Makefile
|
|||
xpcom/proxy/src/Makefile
|
||||
xpcom/proxy/tests/Makefile
|
||||
xpcom/sample/Makefile
|
||||
xpcom/tests/Makefile
|
||||
xpcom/tests/dynamic/Makefile
|
||||
xpcom/tests/services/Makefile
|
||||
xpcom/threads/Makefile
|
||||
xpcom/tools/Makefile
|
||||
xpcom/tools/registry/Makefile
|
||||
|
||||
$MAKEFILES_libreg
|
||||
$MAKEFILES_libjar
|
||||
intl/unicharutil/public/Makefile
|
||||
intl/uconv/public/Makefile
|
||||
"
|
||||
|
||||
MAKEFILES_xpcom_tests="
|
||||
xpcom/tests/Makefile
|
||||
xpcom/tests/dynamic/Makefile
|
||||
xpcom/tests/services/Makefile
|
||||
"
|
||||
|
||||
MAKEFILES_xpinstall="
|
||||
|
@ -682,6 +697,10 @@ security/psm/Makefile
|
|||
security/psm/lib/Makefile
|
||||
security/psm/lib/client/Makefile
|
||||
security/psm/lib/protocol/Makefile
|
||||
|
||||
intl/strres/public/Makefile
|
||||
intl/locale/idl/Makefile
|
||||
intl/locale/public/Makefile
|
||||
"
|
||||
|
||||
MAKEFILES_psm_glue="
|
||||
|
@ -731,7 +750,9 @@ extensions/transformiix/Makefile
|
|||
"
|
||||
|
||||
if [ "$MOZ_MAIL_NEWS" ]; then
|
||||
MAKEFILES_mailnews=`cat ${srcdir}/mailnews/makefiles`
|
||||
if [ -f ${srcdir}/mailnews/makefiles ]; then
|
||||
MAKEFILES_mailnews=`cat ${srcdir}/mailnews/makefiles`
|
||||
fi
|
||||
fi
|
||||
|
||||
if [ ! "$SYSTEM_JPEG" ]; then
|
||||
|
@ -760,7 +781,9 @@ fi
|
|||
#
|
||||
# l10n/
|
||||
#
|
||||
MAKEFILES_langpacks=`cat ${srcdir}/l10n/makefiles.all`
|
||||
if [ -f ${srcdir}/l10n/makefiles.all ]; then
|
||||
MAKEFILES_langpacks=`cat ${srcdir}/l10n/makefiles.all`
|
||||
fi
|
||||
|
||||
if [ "$MOZ_L10N" ]; then
|
||||
MAKEFILES_l10n="l10n/Makefile"
|
||||
|
@ -958,6 +981,7 @@ $MAKEFILES_view
|
|||
$MAKEFILES_webshell
|
||||
$MAKEFILES_widget
|
||||
$MAKEFILES_xpcom
|
||||
$MAKEFILES_xpcom_tests
|
||||
$MAKEFILES_xpconnect
|
||||
$MAKEFILES_xpinstall
|
||||
$MAKEFILES_xpfe
|
||||
|
@ -974,17 +998,17 @@ else
|
|||
js) add_makefiles "$MAKEFILES_js"
|
||||
;;
|
||||
necko) add_makefiles "
|
||||
$MAKEFILES_netwerk $MAKEFILES_xpcom $MAKEFILES_libreg"
|
||||
$MAKEFILES_netwerk $MAKEFILES_dbm $MAKEFILES_xpcom"
|
||||
;;
|
||||
psm) add_makefiles "$MAKEFILES_dbm $MAKEFILES_xpcom $MAKEFILES_libreg $MAKEFILES_intl $MAKEFILES_libjar $MAKEFILES_security $MAKEFILES_js $MAKEFILES_psm_glue"
|
||||
psm) add_makefiles "$MAKEFILES_dbm $MAKEFILES_xpcom $MAKEFILES_security $MAKEFILES_js $MAKEFILES_psm_glue"
|
||||
;;
|
||||
transformiix) add_makefiles "$MAKEFILES_transformiix"
|
||||
;;
|
||||
xpcom) add_makefiles "$MAKEFILES_xpcom $MAKEFILES_libreg $MAKEFILES_intl $MAKEFILES_libjar"
|
||||
xpcom) add_makefiles "$MAKEFILES_xpcom"
|
||||
|
||||
;;
|
||||
xpconnect) add_makefiles "
|
||||
$MAKEFILES_xpconnect $MAKEFILES_js $MAKEFILES_xpcom
|
||||
$MAKEFILES_libreg"
|
||||
$MAKEFILES_xpconnect $MAKEFILES_js $MAKEFILES_xpcom"
|
||||
;;
|
||||
esac
|
||||
done
|
||||
|
|
|
@ -18,9 +18,7 @@
|
|||
#
|
||||
|
||||
BUILD_MODULE_DIRS := config build include
|
||||
BUILD_MODULE_DEP_DIRS :=
|
||||
_BUILD_MODS =
|
||||
NSPRPUB_DIR =
|
||||
BUILD_MODULE_CVS = config build include
|
||||
|
||||
# client.mk does not have topsrcdir set
|
||||
ifndef topsrcdir
|
||||
|
@ -36,43 +34,85 @@ NSPRPUB_DIR = $(topsrcdir)/nsprpub
|
|||
endif
|
||||
endif
|
||||
|
||||
# BM_DIRS_mod: list of directories to traverse from toplevel Makefile
|
||||
# BM_DEP_DIRS_mod: list of directories to run "export" over
|
||||
# BM_CVS_mod: list of directories to check out of cvs recursively
|
||||
# BM_CVS_NS_mod: list of directories to check out of cvs non-recursively
|
||||
|
||||
ifneq ($(BUILD_MODULES),all)
|
||||
|
||||
BUILD_MODULE_DIRS_dbm = $(NSPRPUB_DIR) dbm
|
||||
BUILD_MODULE_DIRS_js = $(NSPRPUB_DIR) js/src
|
||||
BUILD_MODULE_DIRS_necko = $(BUILD_MODULE_DIRS_xpcom) netwerk
|
||||
BUILD_MODULE_DIRS_transformiix = extensions/transformiix
|
||||
#
|
||||
# dbm
|
||||
#
|
||||
BM_DIRS_dbm = $(NSPRPUB_DIR) dbm
|
||||
BM_CVS_dbm = $(BM_DIRS_dbm)
|
||||
|
||||
BUILD_MODULE_DIRS_xpconnect = $(BUILD_MODULE_DIRS_xpcom) $(BUILD_MODULE_DIRS_js) js/src/xpconnect
|
||||
BUILD_MODULE_DIRS_security = $(BUILD_MODULE_DIRS_xpcom) $(BUILD_MODULE_DIRS_dbm) security
|
||||
#
|
||||
# js
|
||||
#
|
||||
BM_DIRS_js = $(NSPRPUB_DIR) js/src
|
||||
BM_CVS_js = $(NSPRPUB_DIR)
|
||||
BM_CVS_NS_js = js js/src js/src/fdlibm
|
||||
|
||||
BUILD_MODULE_DIRS_xpcom = $(NSPRPUB_DIR) modules/libreg xpcom
|
||||
BUILD_MODULE_DEP_DIRS_xpcom = intl modules/libjar
|
||||
#
|
||||
# xpcom
|
||||
#
|
||||
BM_DIRS_xpcom = $(NSPRPUB_DIR) modules/libreg xpcom
|
||||
BM_DEP_DIRS_xpcom = intl/unicharutil/public intl/uconv/public modules/libjar
|
||||
BM_CVS_NS_xpcom = xpcom xpcom/typelib xpcom/typelib/xpidl intl/unicharutil/public intl/uconv/public
|
||||
BM_CVS_xpcom = modules/libreg xpcom/typelib/xpt xpcom/base xpcom/ds xpcom/io xpcom/components xpcom/threads xpcom/reflect xpcom/proxy xpcom/build xpcom/tools xpcom/sample modules/libjar
|
||||
|
||||
BUILD_MODULE_DIRS_psm = $(BUILD_MODULE_DIRS_dbm) $(BUILD_MODULE_DIRS_xpcom) security netwerk/base/public netwerk/socket/base dom/public $(BUILD_MODULE_DIRS_js) extensions/psm-glue
|
||||
BUILD_MODULE_DEP_DIRS_psm = $(BUILD_MODULE_DEP_DIRS_xpcom) uriloader/base modules/libpref/public profile/public caps/idl modules/appfilelocprovider/public netwerk/protocol/http/public gfx/idl gfx/public rdf/base/idl xpfe/appshell/public widget/public docshell/base layout/html/forms/public layout/base/public rdf/content/public dom/src/base modules/oji/public caps/include
|
||||
#
|
||||
# xpconnect
|
||||
#
|
||||
BM_DIRS_xpconnect = $(BM_DIRS_xpcom) $(BM_DIRS_js) js/src/xpconnect
|
||||
BM_CVS_xpconnect = $(BM_CVS_xpcom) $(BM_CVS_js) js/src/xpconnect
|
||||
BM_CVS_NS_xpconnect = $(BM_CVS_NS_xpcom) $(BM_CVS_NS_js) js/src/xpconnect
|
||||
|
||||
BUILD_MODULE_DIRS += $(foreach mod,$(BUILD_MODULES), $(BUILD_MODULE_DIRS_$(mod)))
|
||||
BUILD_MODULE_DEP_DIRS += $(foreach mod,$(BUILD_MODULES), $(BUILD_MODULE_DEP_DIRS_$(mod)))
|
||||
#
|
||||
# necko
|
||||
#
|
||||
BM_DIRS_necko = $(BM_DIRS_xpcom) $(BM_DIRS_dbm) netwerk
|
||||
BM_DEP_DIRS_necko = $(BM_DEP_DIRS_xpcom) $(BM_DEP_DIRS_dbm) uriloader/exthandler intl/locale/idl intl/strres/public js/src modules/libpref/public
|
||||
BM_CVS_necko = $(BM_CVS_xpcom) $(BM_CVS_dbm) netwerk uriloader/exthandler
|
||||
BM_CVS_NS_necko = $(BM_CVS_NS_xpcom) intl/locale/idl intl/strres/public modules/libpref/public $(BM_CVS_NS_js)
|
||||
|
||||
#
|
||||
# tranformiix
|
||||
#
|
||||
BM_DIRS_transformiix = extensions/transformiix
|
||||
|
||||
#
|
||||
# psm
|
||||
#
|
||||
BM_DIRS_psm = $(BM_DIRS_dbm) $(BM_DIRS_xpcom) security netwerk/base/public netwerk/socket/base dom/public $(BM_DIRS_js) extensions/psm-glue
|
||||
BM_DEP_DIRS_psm = $(BM_DEP_DIRS_dbm) $(BM_DEP_DIRS_xpcom) $(BM_DEP_DIRS_js) intl/locale/idl intl/locale/public intl/strres/public uriloader/base modules/libpref/public profile/public caps/idl modules/appfilelocprovider/public netwerk/protocol/http/public gfx/idl gfx/public rdf/base/idl xpfe/appshell/public widget/public docshell/base layout/html/forms/public layout/base/public rdf/content/public dom/src/base modules/oji/public caps/include
|
||||
BM_CVS_psm = $(BM_CVS_dbm) $(BM_CVS_xpcom) $(BM_CVS_js) security netwerk/base/public netwerk/socket/base dom/public $(BM_CVS_js) extensions/psm-glue
|
||||
BM_CVS_NS_psm = $(BM_CVS_NS_dbm) $(BM_CVS_NS_xpcom) $(BM_CVS_NS_js) intl/locale/idl intl/locale/public intl/strres/public uriloader/base modules/libpref/public profile/public caps/idl modules/appfilelocprovider/public netwerk/protocol/http/public gfx/idl gfx/public rdf/base/idl xpfe/appshell/public widget/public docshell/base layout/html/forms/public layout/base/public rdf/content/public dom/src/base modules/oji/public caps/include
|
||||
|
||||
|
||||
#
|
||||
# Tally
|
||||
#
|
||||
|
||||
BUILD_MODULE_DIRS += $(foreach mod,$(BUILD_MODULES), $(BM_DIRS_$(mod)))
|
||||
BUILD_MODULE_DEP_DIRS = $(foreach mod,$(BUILD_MODULES), $(BM_DEP_DIRS_$(mod)))
|
||||
BUILD_MODULE_CVS += $(foreach mod,$(BUILD_MODULES), $(BM_CVS_$(mod)))
|
||||
BUILD_MODULE_CVS_NS = $(foreach mod,$(BUILD_MODULES), $(BM_CVS_NS_$(mod)))
|
||||
|
||||
# Remove dups from the list to speed up the build
|
||||
#
|
||||
ifdef PERL
|
||||
BUILD_MODULE_DIRS := $(shell $(PERL) -e 'undef @out; \
|
||||
foreach $$d (@ARGV) { \
|
||||
push @out, $$d if (!grep(/$$d/, @out)); \
|
||||
}; \
|
||||
print "@out\n"; ' $(BUILD_MODULE_DIRS))
|
||||
|
||||
BUILD_MODULE_DEP_DIRS := $(shell $(PERL) -e 'undef @out; \
|
||||
foreach $$d (@ARGV) { \
|
||||
push @out, $$d if (!grep(/$$d/, @out)); \
|
||||
}; \
|
||||
print "@out\n"; ' $(BUILD_MODULE_DEP_DIRS))
|
||||
BUILD_MODULE_DIRS := $(shell $(topsrcdir)/build/unix/uniq.pl $(BUILD_MODULE_DIRS))
|
||||
BUILD_MODULE_DEP_DIRS := $(shell $(topsrcdir)/build/unix/uniq.pl $(BUILD_MODULE_DEP_DIRS))
|
||||
|
||||
else
|
||||
# Since PERL isn't defined, client.mk must've called us so order doesn't matter
|
||||
BUILD_MODULE_DIRS := $(sort $(BUILD_MODULE_DIRS))
|
||||
BUILD_MODULE_DEP_DIRS := $(sort $(BUILD_MODULE_DEP_DIRS))
|
||||
BUILD_MODULE_CVS := $(sort $(BUILD_MODULE_CVS))
|
||||
BUILD_MODULE_CVS_NS := $(sort $(BUILD_MODULE_CVS_NS))
|
||||
endif
|
||||
|
||||
endif # BUILD_MODULES
|
||||
|
|
15
client.mk
15
client.mk
|
@ -222,18 +222,22 @@ CVSCO_LDAPCSDK = cvs $(CVS_FLAGS) co $(LDAPCSDK_CO_FLAGS) $(CVS_CO_DATE_FLAGS) $
|
|||
# CVS defines for standalone modules
|
||||
#
|
||||
ifneq ($(BUILD_MODULES),all)
|
||||
MOZ_CO_MODULE := $(filter-out $(NSPRPUB_DIR) security directory/c-sdk, $(BUILD_MODULE_DIRS) $(BUILD_MODULE_DEP_DIRS))
|
||||
MOZ_CO_MODULE := $(filter-out $(NSPRPUB_DIR) security directory/c-sdk, $(BUILD_MODULE_CVS))
|
||||
MOZ_CO_MODULE += allmakefiles.sh client.mk aclocal.m4 configure configure.in
|
||||
MOZ_CO_MODULE += Makefile.in
|
||||
MOZ_CO_MODULE := $(addprefix mozilla/, $(MOZ_CO_MODULE))
|
||||
ifeq (,$(filter $(NSPRPUB_DIR), $(BUILD_MODULE_DIRS) $(BUILD_MODULE_DEP_DIRS)))
|
||||
|
||||
NOSUBDIRS_MODULE := $(addprefix mozilla/, $(BUILD_MODULE_CVS_NS))
|
||||
CVSCO_NOSUBDIRS := $(CVSCO) -l $(CVS_CO_DATE_FLAGS) $(NOSUBDIRS_MODULE)
|
||||
|
||||
ifeq (,$(filter $(NSPRPUB_DIR), $(BUILD_MODULE_CVS)))
|
||||
CVSCO_NSPR :=
|
||||
endif
|
||||
ifeq (,$(filter security, $(BUILD_MODULE_DIRS) $(BUILD_MODULE_DEP_DIRS)))
|
||||
ifeq (,$(filter security, $(BUILD_MODULE_CVS)))
|
||||
CVSCO_PSM :=
|
||||
CVSCO_NSS :=
|
||||
endif
|
||||
ifeq (,$(filter directory/c-sdk, $(BUILD_MODULE_DIRS) $(BUILD_MODULE_DEP_DIRS)))
|
||||
ifeq (,$(filter directory/c-sdk, $(BUILD_MODULE_CVS)))
|
||||
CVSCO_LDAPCSDK :=
|
||||
endif
|
||||
else
|
||||
|
@ -303,7 +307,8 @@ real_checkout:
|
|||
cvs_co $(CVSCO_PSM) && \
|
||||
cvs_co $(CVSCO_NSS) && \
|
||||
cvs_co $(CVSCO_LDAPCSDK) && \
|
||||
cvs_co $(CVSCO_SEAMONKEY)
|
||||
cvs_co $(CVSCO_SEAMONKEY) && \
|
||||
cvs_co $(CVSCO_NOSUBDIRS)
|
||||
@echo "checkout finish: "`date` | tee -a $(CVSCO_LOGFILE)
|
||||
# @: Check the log for conflicts. ;
|
||||
@conflicts=`egrep "^C " $(CVSCO_LOGFILE)` ;\
|
||||
|
|
Загрузка…
Ссылка в новой задаче