Bug 668058 - Add a DIR_INSTALL nsinstall shortcut, and allow $(INSTALL) to support target-specific makefiles. r=ted

This commit is contained in:
Siddharth Agarwal 2011-07-08 14:30:27 -07:00
parent 7183638964
commit c231358a20
5 changed files with 38 additions and 48 deletions

View File

@ -677,27 +677,30 @@ endif # NSINSTALL_BIN
ifeq (,$(CROSS_COMPILE)$(filter-out WINNT OS2, $(OS_ARCH)))
INSTALL = $(NSINSTALL)
else
ifeq ($(NSDISTMODE),copy)
# copy files, but preserve source mtime
INSTALL = $(NSINSTALL) -t
else
ifeq ($(NSDISTMODE),absolute_symlink)
# install using absolute symbolic links
ifeq ($(OS_ARCH),Darwin)
INSTALL = $(NSINSTALL) -L $(PWD)
INSTALL_PWD = $(PWD)
else
INSTALL = $(NSINSTALL) -L `$(NFSPWD)`
INSTALL_PWD = `$(NFSPWD)`
endif # Darwin
else
# install using relative symbolic links
INSTALL = $(NSINSTALL) -R
endif # absolute_symlink
endif # copy
# This isn't laid out as conditional directives so that NSDISTMODE can be
# target-specific.
INSTALL = $(if $(filter copy, $(NSDISTMODE)), $(NSINSTALL) -t, $(if $(filter absolute_symlink, $(NSDISTMODE)), $(NSINSTALL) -L $(INSTALL_PWD), $(NSINSTALL) -R))
endif # WINNT/OS2
# Use nsinstall in copy mode to install files on the system
SYSINSTALL = $(NSINSTALL) -t
# Directory nsinstall. Windows and OS/2 nsinstall can't recursively copy
# directories.
ifneq (,$(filter WINNT os2-emx,$(HOST_OS_ARCH)))
DIR_INSTALL = $(PYTHON) $(topsrcdir)/config/nsinstall.py
else
DIR_INSTALL = $(INSTALL)
endif # WINNT/OS2
#
# Localization build automation
#

View File

@ -125,16 +125,8 @@ ifndef relativesrcdir
$(error Must define relativesrcdir when defining XPCSHELL_TESTS.)
endif
# Test file installation
ifneq (,$(filter WINNT os2-emx,$(HOST_OS_ARCH)))
# Windows and OS/2 nsinstall can't recursively copy directories, so use nsinstall.py
TEST_INSTALLER = $(PYTHON) $(topsrcdir)/config/nsinstall.py
else
TEST_INSTALLER = $(INSTALL)
endif
define _INSTALL_TESTS
$(TEST_INSTALLER) $(wildcard $(srcdir)/$(dir)/*) $(testxpcobjdir)/$(relativesrcdir)/$(dir)
$(DIR_INSTALL) $(wildcard $(srcdir)/$(dir)/*) $(testxpcobjdir)/$(relativesrcdir)/$(dir)
endef # do not remove the blank line!

View File

@ -677,27 +677,30 @@ endif # NSINSTALL_BIN
ifeq (,$(CROSS_COMPILE)$(filter-out WINNT OS2, $(OS_ARCH)))
INSTALL = $(NSINSTALL)
else
ifeq ($(NSDISTMODE),copy)
# copy files, but preserve source mtime
INSTALL = $(NSINSTALL) -t
else
ifeq ($(NSDISTMODE),absolute_symlink)
# install using absolute symbolic links
ifeq ($(OS_ARCH),Darwin)
INSTALL = $(NSINSTALL) -L $(PWD)
INSTALL_PWD = $(PWD)
else
INSTALL = $(NSINSTALL) -L `$(NFSPWD)`
INSTALL_PWD = `$(NFSPWD)`
endif # Darwin
else
# install using relative symbolic links
INSTALL = $(NSINSTALL) -R
endif # absolute_symlink
endif # copy
# This isn't laid out as conditional directives so that NSDISTMODE can be
# target-specific.
INSTALL = $(if $(filter copy, $(NSDISTMODE)), $(NSINSTALL) -t, $(if $(filter absolute_symlink, $(NSDISTMODE)), $(NSINSTALL) -L $(INSTALL_PWD), $(NSINSTALL) -R))
endif # WINNT/OS2
# Use nsinstall in copy mode to install files on the system
SYSINSTALL = $(NSINSTALL) -t
# Directory nsinstall. Windows and OS/2 nsinstall can't recursively copy
# directories.
ifneq (,$(filter WINNT os2-emx,$(HOST_OS_ARCH)))
DIR_INSTALL = $(PYTHON) $(topsrcdir)/config/nsinstall.py
else
DIR_INSTALL = $(INSTALL)
endif # WINNT/OS2
#
# Localization build automation
#

View File

@ -125,16 +125,8 @@ ifndef relativesrcdir
$(error Must define relativesrcdir when defining XPCSHELL_TESTS.)
endif
# Test file installation
ifneq (,$(filter WINNT os2-emx,$(HOST_OS_ARCH)))
# Windows and OS/2 nsinstall can't recursively copy directories, so use nsinstall.py
TEST_INSTALLER = $(PYTHON) $(topsrcdir)/config/nsinstall.py
else
TEST_INSTALLER = $(INSTALL)
endif
define _INSTALL_TESTS
$(TEST_INSTALLER) $(wildcard $(srcdir)/$(dir)/*) $(testxpcobjdir)/$(relativesrcdir)/$(dir)
$(DIR_INSTALL) $(wildcard $(srcdir)/$(dir)/*) $(testxpcobjdir)/$(relativesrcdir)/$(dir)
endef # do not remove the blank line!

View File

@ -83,10 +83,10 @@ chrometestdir = \
libs:: unit/test_jsctypes.js.in
$(PYTHON) $(MOZILLA_DIR)/config/Preprocessor.py $(DEFINES) $(ACDEFINES) \
$^ > $(xpctestdir)/test_jsctypes.js
$(TEST_INSTALLER) $(SHARED_LIBRARY) $(xpctestdir)
$(TEST_INSTALLER) $(SHARED_LIBRARY) $(DEPTH)/_tests/testing/mochitest/chrome/libraries
$(TEST_INSTALLER) $(xpctestdir)/test_jsctypes.js $(chrometestdir)
$(TEST_INSTALLER) $(xpctestdir)/$(SHARED_LIBRARY) $(chrometestdir)
$(INSTALL) $(SHARED_LIBRARY) $(xpctestdir)
$(INSTALL) $(SHARED_LIBRARY) $(DEPTH)/_tests/testing/mochitest/chrome/libraries
$(INSTALL) $(xpctestdir)/test_jsctypes.js $(chrometestdir)
$(INSTALL) $(xpctestdir)/$(SHARED_LIBRARY) $(chrometestdir)
$(RM) $(xpctestdir)/test_jsctypes.js.in
libs:: $(_CHROME_TEST_FILES)