diff --git a/config/makefiles/debugmake.mk b/config/makefiles/debugmake.mk deleted file mode 100644 index dd21734003e..00000000000 --- a/config/makefiles/debugmake.mk +++ /dev/null @@ -1,118 +0,0 @@ -# -*- makefile -*- -# vim:set ts=8 sw=8 sts=8 noet: -# -# 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/. -# - -########################################################################### -## Intent: Helper targets for displaying variables and state information -########################################################################### - -# Support usage outside of config/rules.mk -ifndef INCLUDED_DEBUGMAKE_MK #{ - -echo-variable-%: - @echo "$($*)" - -echo-tiers: - @echo $(TIERS) - -echo-tier-dirs: - @$(foreach tier,$(TIERS),echo '$(tier):'; echo ' dirs: $(tier_$(tier)_dirs)'; echo ' staticdirs: $(tier_$(tier)_staticdirs)'; ) - -echo-dirs: - @echo $(DIRS) - -echo-module: - @echo $(MODULE) - -echo-depth-path: - @$(topsrcdir)/build/unix/print-depth-path.sh - -echo-module-name: - @$(topsrcdir)/build/package/rpm/print-module-name.sh - -echo-module-filelist: - @$(topsrcdir)/build/package/rpm/print-module-filelist.sh - -showtargs: -ifneq (,$(filter $(PROGRAM) $(HOST_PROGRAM) $(SIMPLE_PROGRAMS) $(HOST_LIBRARY) $(LIBRARY) $(SHARED_LIBRARY),$(TARGETS))) - @echo -------------------------------------------------------------------------------- - @echo "PROGRAM = $(PROGRAM)" - @echo "SIMPLE_PROGRAMS = $(SIMPLE_PROGRAMS)" - @echo "LIBRARY = $(LIBRARY)" - @echo "SHARED_LIBRARY = $(SHARED_LIBRARY)" - @echo "SHARED_LIBRARY_LIBS = $(SHARED_LIBRARY_LIBS)" - @echo "LIBS = $(LIBS)" - @echo "DEF_FILE = $(DEF_FILE)" - @echo "IMPORT_LIBRARY = $(IMPORT_LIBRARY)" - @echo "STATIC_LIBS = $(STATIC_LIBS)" - @echo "SHARED_LIBS = $(SHARED_LIBS)" - @echo "EXTRA_DSO_LIBS = $(EXTRA_DSO_LIBS)" - @echo "EXTRA_DSO_LDOPTS = $(EXTRA_DSO_LDOPTS)" - @echo "DEPENDENT_LIBS = $(DEPENDENT_LIBS)" - @echo -------------------------------------------------------------------------------- -endif - $(LOOP_OVER_PARALLEL_DIRS) - $(LOOP_OVER_DIRS) - -showbuild: - @echo "MOZ_BUILD_ROOT = $(MOZ_BUILD_ROOT)" - @echo "MOZ_WIDGET_TOOLKIT = $(MOZ_WIDGET_TOOLKIT)" - @echo "CC = $(CC)" - @echo "CXX = $(CXX)" - @echo "CCC = $(CCC)" - @echo "CPP = $(CPP)" - @echo "LD = $(LD)" - @echo "AR = $(AR)" - @echo "IMPLIB = $(IMPLIB)" - @echo "FILTER = $(FILTER)" - @echo "MKSHLIB = $(MKSHLIB)" - @echo "MKCSHLIB = $(MKCSHLIB)" - @echo "RC = $(RC)" - @echo "MC = $(MC)" - @echo "CFLAGS = $(CFLAGS)" - @echo "OS_CFLAGS = $(OS_CFLAGS)" - @echo "COMPILE_CFLAGS = $(COMPILE_CFLAGS)" - @echo "CXXFLAGS = $(CXXFLAGS)" - @echo "OS_CXXFLAGS = $(OS_CXXFLAGS)" - @echo "COMPILE_CXXFLAGS = $(COMPILE_CXXFLAGS)" - @echo "COMPILE_CMFLAGS = $(COMPILE_CMFLAGS)" - @echo "COMPILE_CMMFLAGS = $(COMPILE_CMMFLAGS)" - @echo "LDFLAGS = $(LDFLAGS)" - @echo "OS_LDFLAGS = $(OS_LDFLAGS)" - @echo "DSO_LDOPTS = $(DSO_LDOPTS)" - @echo "OS_INCLUDES = $(OS_INCLUDES)" - @echo "OS_LIBS = $(OS_LIBS)" - @echo "EXTRA_LIBS = $(EXTRA_LIBS)" - @echo "BIN_FLAGS = $(BIN_FLAGS)" - @echo "INCLUDES = $(INCLUDES)" - @echo "DEFINES = $(DEFINES)" - @echo "ACDEFINES = $(ACDEFINES)" - @echo "BIN_SUFFIX = $(BIN_SUFFIX)" - @echo "LIB_SUFFIX = $(LIB_SUFFIX)" - @echo "DLL_SUFFIX = $(DLL_SUFFIX)" - @echo "IMPORT_LIB_SUFFIX = $(IMPORT_LIB_SUFFIX)" - @echo "INSTALL = $(INSTALL)" - @echo "VPATH = $(VPATH)" - -showhost: - @echo "HOST_CC = $(HOST_CC)" - @echo "HOST_CXX = $(HOST_CXX)" - @echo "HOST_CFLAGS = $(HOST_CFLAGS)" - @echo "HOST_LDFLAGS = $(HOST_LDFLAGS)" - @echo "HOST_LIBS = $(HOST_LIBS)" - @echo "HOST_EXTRA_LIBS = $(HOST_EXTRA_LIBS)" - @echo "HOST_EXTRA_DEPS = $(HOST_EXTRA_DEPS)" - @echo "HOST_PROGRAM = $(HOST_PROGRAM)" - @echo "HOST_OBJS = $(HOST_OBJS)" - @echo "HOST_PROGOBJS = $(HOST_PROGOBJS)" - @echo "HOST_LIBRARY = $(HOST_LIBRARY)" - -showbuildmods:: - @echo "Module dirs = $(BUILD_MODULE_DIRS)" - -INCLUDED_DEBUGMAKE_MK = 1 -endif #} diff --git a/config/makefiles/makeutils.mk b/config/makefiles/makeutils.mk index e4e3fd3f884..faf6c58aae5 100644 --- a/config/makefiles/makeutils.mk +++ b/config/makefiles/makeutils.mk @@ -67,11 +67,8 @@ else endif # Intent: Conditionals for detecting common/tier target use -isTargetStem = $(sort \ - $(foreach var,$(getargv),\ - $(foreach pat,$(var)% %$(var),\ - $(call is_XinY,$(pat),${$(mcg_goals)})\ - ))) +# Todo: are check, install, test needed ? +isTargetStem = $(sort $(foreach pat, $(1)% %$(1), $(call is_XinY,$(pat),${$(mcg_goals)}))) isTargetStemClean = $(call isTargetStem,clean) isTargetStemExport = $(call isTargetStem,export) isTargetStemLibs = $(call isTargetStem,libs) diff --git a/config/makefiles/test/check_XinY.mk b/config/makefiles/test/check_XinY.mk index 25d89b5cea8..57ffdb373b1 100644 --- a/config/makefiles/test/check_XinY.mk +++ b/config/makefiles/test/check_XinY.mk @@ -45,28 +45,3 @@ $(call errorifneq,3,$(words $(call isTargetStemClean))) TEST_MAKECMDGOALS := invalid $(call errorifneq,$(zero),$(words $(call isTargetStemClean))) - -############################# -ifdef VERBOSE - $(call banner,Unit test: isTargetStem) -endif - -# Verify list argument processing -TEST_MAKECMDGOALS := echo -$(call errorifneq,$(one),$(words $(call isTargetStem,echo,show))) - -TEST_MAKECMDGOALS := echo-123 -$(call errorifneq,$(one),$(words $(call isTargetStem,echo,show))) - -TEST_MAKECMDGOALS := show -$(call errorifneq,$(one),$(words $(call isTargetStem,echo,show))) - -TEST_MAKECMDGOALS := show-123 -$(call errorifneq,$(one),$(words $(call isTargetStem,echo,show))) - -TEST_MAKECMDGOALS := show-123-echo -$(call errorifneq,$(one),$(words $(call isTargetStem,echo,show))) - -TEST_MAKECMDGOALS := invalid -$(call errorifneq,$(zero),$(words $(call isTargetStem,echo,show))) - diff --git a/config/makefiles/xpcshell.mk b/config/makefiles/xpcshell.mk deleted file mode 100644 index 31ad2259c0e..00000000000 --- a/config/makefiles/xpcshell.mk +++ /dev/null @@ -1,121 +0,0 @@ -# -*- makefile -*- -# vim:set ts=8 sw=8 sts=8 noet: -# -# 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/. -# - -ifndef INCLUDED_TESTS_XPCSHELL_MK #{ - -ifdef XPCSHELL_TESTS #{ - -ifndef relativesrcdir -$(error Must define relativesrcdir when defining XPCSHELL_TESTS.) -endif - -define _INSTALL_TESTS -$(DIR_INSTALL) $(wildcard $(srcdir)/$(dir)/*) $(testxpcobjdir)/$(relativesrcdir)/$(dir) - -endef # do not remove the blank line! - -SOLO_FILE ?= $(error Specify a test filename in SOLO_FILE when using check-interactive or check-one) - -libs:: libs-xpcshell-tests - -testxpcsrcdir = $(topsrcdir)/testing/xpcshell - -########################################################################### -# Execute a single test, specified in $(SOLO_FILE), but don't automatically -# start the test. Instead, present the xpcshell prompt so the user can -# attach a debugger and then start the test. -check-interactive: - $(PYTHON) -u $(topsrcdir)/config/pythonpath.py \ - -I$(topsrcdir)/build \ - $(testxpcsrcdir)/runxpcshelltests.py \ - --symbols-path=$(DIST)/crashreporter-symbols \ - --build-info-json=$(DEPTH)/mozinfo.json \ - --test-path=$(SOLO_FILE) \ - --profile-name=$(MOZ_APP_NAME) \ - --interactive \ - $(LIBXUL_DIST)/bin/xpcshell \ - $(foreach dir,$(XPCSHELL_TESTS),$(testxpcobjdir)/$(relativesrcdir)/$(dir)) - -# Execute a single test, specified in $(SOLO_FILE) -check-one: - $(PYTHON) -u $(topsrcdir)/config/pythonpath.py \ - -I$(topsrcdir)/build \ - $(testxpcsrcdir)/runxpcshelltests.py \ - --symbols-path=$(DIST)/crashreporter-symbols \ - --build-info-json=$(DEPTH)/mozinfo.json \ - --test-path=$(SOLO_FILE) \ - --profile-name=$(MOZ_APP_NAME) \ - --verbose \ - $(EXTRA_TEST_ARGS) \ - $(LIBXUL_DIST)/bin/xpcshell \ - $(foreach dir,$(XPCSHELL_TESTS),$(testxpcobjdir)/$(relativesrcdir)/$(dir)) - -check-one-remote: DM_TRANS?=adb -check-one-remote: - $(PYTHON) -u $(topsrcdir)/config/pythonpath.py \ - -I$(topsrcdir)/build \ - -I$(topsrcdir)/build/mobile \ - $(testxpcsrcdir)/remotexpcshelltests.py \ - --symbols-path=$(DIST)/crashreporter-symbols \ - --build-info-json=$(DEPTH)/mozinfo.json \ - --test-path=$(SOLO_FILE) \ - --profile-name=$(MOZ_APP_NAME) \ - --verbose \ - $(EXTRA_TEST_ARGS) \ - --dm_trans=$(DM_TRANS) \ - --deviceIP=${TEST_DEVICE} \ - --objdir=$(DEPTH) \ - --noSetup \ - $(foreach dir,$(XPCSHELL_TESTS),$(testxpcobjdir)/$(relativesrcdir)/$(dir)) - -########################################################################### -libs-xpcshell-tests: - $(foreach dir,$(XPCSHELL_TESTS),$(_INSTALL_TESTS)) -ifndef NO_XPCSHELL_MANIFEST_CHECK #{ - $(PYTHON) $(MOZILLA_DIR)/build/xpccheck.py \ - $(topsrcdir) \ - $(topsrcdir)/testing/xpcshell/xpcshell.ini \ - $(addprefix $(MOZILLA_DIR)/$(relativesrcdir)/,$(XPCSHELL_TESTS)) -endif #} NO_XPCSHELL_MANIFEST_CHECK - -########################################################################### -# Execute all tests in the $(XPCSHELL_TESTS) directories. -# See also testsuite-targets.mk 'xpcshell-tests' target for global execution. -xpcshell-tests: - $(PYTHON) -u $(topsrcdir)/config/pythonpath.py \ - -I$(topsrcdir)/build \ - $(testxpcsrcdir)/runxpcshelltests.py \ - --symbols-path=$(DIST)/crashreporter-symbols \ - --build-info-json=$(DEPTH)/mozinfo.json \ - --tests-root-dir=$(testxpcobjdir) \ - --xunit-file=$(testxpcobjdir)/$(relativesrcdir)/results.xml \ - --xunit-suite-name=xpcshell \ - $(EXTRA_TEST_ARGS) \ - $(LIBXUL_DIST)/bin/xpcshell \ - $(foreach dir,$(XPCSHELL_TESTS),$(testxpcobjdir)/$(relativesrcdir)/$(dir)) - -xpcshell-tests-remote: DM_TRANS?=adb -xpcshell-tests-remote: - $(PYTHON) -u $(topsrcdir)/config/pythonpath.py \ - -I$(topsrcdir)/build \ - -I$(topsrcdir)/build/mobile \ - $(topsrcdir)/testing/xpcshell/remotexpcshelltests.py \ - --symbols-path=$(DIST)/crashreporter-symbols \ - --build-info-json=$(DEPTH)/mozinfo.json \ - $(EXTRA_TEST_ARGS) \ - --dm_trans=$(DM_TRANS) \ - --deviceIP=${TEST_DEVICE} \ - --objdir=$(DEPTH) \ - $(foreach dir,$(XPCSHELL_TESTS),$(testxpcobjdir)/$(relativesrcdir)/$(dir)) - -.PHONY: xpcshell-tests check-interactive check-one libs-xpcshell-tests - -endif #} XPCSHELL_TESTS - -INCLUDED_TESTS_XPCSHELL_MK = 1 -endif #} INCLUDED_TESTS_XPCSHELL_MK diff --git a/config/rules.mk b/config/rules.mk index db21605c329..515024256b8 100644 --- a/config/rules.mk +++ b/config/rules.mk @@ -85,11 +85,105 @@ ifdef ENABLE_TESTS # locally against non-current test code. DIRS += $(TEST_DIRS) -ifdef ENABLE_TESTS #{ - ifndef INCLUDED_TESTS_XPCSHELL_MK #{ - include $(topsrcdir)/config/makefiles/xpcshell.mk - endif #} -endif #} +ifdef XPCSHELL_TESTS +ifndef relativesrcdir +$(error Must define relativesrcdir when defining XPCSHELL_TESTS.) +endif + +define _INSTALL_TESTS +$(DIR_INSTALL) $(wildcard $(srcdir)/$(dir)/*) $(testxpcobjdir)/$(relativesrcdir)/$(dir) + +endef # do not remove the blank line! + +SOLO_FILE ?= $(error Specify a test filename in SOLO_FILE when using check-interactive or check-one) + +libs:: + $(foreach dir,$(XPCSHELL_TESTS),$(_INSTALL_TESTS)) +ifndef NO_XPCSHELL_MANIFEST_CHECK + $(PYTHON) $(MOZILLA_DIR)/build/xpccheck.py \ + $(topsrcdir) \ + $(topsrcdir)/testing/xpcshell/xpcshell.ini \ + $(addprefix $(MOZILLA_DIR)/$(relativesrcdir)/,$(XPCSHELL_TESTS)) +endif + +testxpcsrcdir = $(topsrcdir)/testing/xpcshell + +# Execute all tests in the $(XPCSHELL_TESTS) directories. +# See also testsuite-targets.mk 'xpcshell-tests' target for global execution. +xpcshell-tests: + $(PYTHON) -u $(topsrcdir)/config/pythonpath.py \ + -I$(topsrcdir)/build -I$(DEPTH)/_tests/mozbase/mozinfo \ + $(testxpcsrcdir)/runxpcshelltests.py \ + --symbols-path=$(DIST)/crashreporter-symbols \ + --build-info-json=$(DEPTH)/mozinfo.json \ + --tests-root-dir=$(testxpcobjdir) \ + --xunit-file=$(testxpcobjdir)/$(relativesrcdir)/results.xml \ + --xunit-suite-name=xpcshell \ + $(EXTRA_TEST_ARGS) \ + $(LIBXUL_DIST)/bin/xpcshell \ + $(foreach dir,$(XPCSHELL_TESTS),$(testxpcobjdir)/$(relativesrcdir)/$(dir)) + +xpcshell-tests-remote: DM_TRANS?=adb +xpcshell-tests-remote: + $(PYTHON) -u $(topsrcdir)/config/pythonpath.py \ + -I$(topsrcdir)/build \ + -I$(topsrcdir)/build/mobile \ + $(topsrcdir)/testing/xpcshell/remotexpcshelltests.py \ + --symbols-path=$(DIST)/crashreporter-symbols \ + --build-info-json=$(DEPTH)/mozinfo.json \ + $(EXTRA_TEST_ARGS) \ + --dm_trans=$(DM_TRANS) \ + --deviceIP=${TEST_DEVICE} \ + --objdir=$(DEPTH) \ + $(foreach dir,$(XPCSHELL_TESTS),$(testxpcobjdir)/$(relativesrcdir)/$(dir)) + +# Execute a single test, specified in $(SOLO_FILE), but don't automatically +# start the test. Instead, present the xpcshell prompt so the user can +# attach a debugger and then start the test. +check-interactive: + $(PYTHON) -u $(topsrcdir)/config/pythonpath.py \ + -I$(topsrcdir)/build -I$(DEPTH)/_tests/mozbase/mozinfo \ + $(testxpcsrcdir)/runxpcshelltests.py \ + --symbols-path=$(DIST)/crashreporter-symbols \ + --build-info-json=$(DEPTH)/mozinfo.json \ + --test-path=$(SOLO_FILE) \ + --profile-name=$(MOZ_APP_NAME) \ + --interactive \ + $(LIBXUL_DIST)/bin/xpcshell \ + $(foreach dir,$(XPCSHELL_TESTS),$(testxpcobjdir)/$(relativesrcdir)/$(dir)) + +# Execute a single test, specified in $(SOLO_FILE) +check-one: + $(PYTHON) -u $(topsrcdir)/config/pythonpath.py \ + -I$(topsrcdir)/build -I$(DEPTH)/_tests/mozbase/mozinfo \ + $(testxpcsrcdir)/runxpcshelltests.py \ + --symbols-path=$(DIST)/crashreporter-symbols \ + --build-info-json=$(DEPTH)/mozinfo.json \ + --test-path=$(SOLO_FILE) \ + --profile-name=$(MOZ_APP_NAME) \ + --verbose \ + $(EXTRA_TEST_ARGS) \ + $(LIBXUL_DIST)/bin/xpcshell \ + $(foreach dir,$(XPCSHELL_TESTS),$(testxpcobjdir)/$(relativesrcdir)/$(dir)) + +check-one-remote: DM_TRANS?=adb +check-one-remote: + $(PYTHON) -u $(topsrcdir)/config/pythonpath.py \ + -I$(topsrcdir)/build \ + -I$(topsrcdir)/build/mobile \ + $(testxpcsrcdir)/remotexpcshelltests.py \ + --symbols-path=$(DIST)/crashreporter-symbols \ + --build-info-json=$(DEPTH)/mozinfo.json \ + --test-path=$(SOLO_FILE) \ + --profile-name=$(MOZ_APP_NAME) \ + --verbose \ + $(EXTRA_TEST_ARGS) \ + --dm_trans=$(DM_TRANS) \ + --deviceIP=${TEST_DEVICE} \ + --objdir=$(DEPTH) \ + --noSetup \ + $(foreach dir,$(XPCSHELL_TESTS),$(testxpcobjdir)/$(relativesrcdir)/$(dir)) +endif # XPCSHELL_TESTS ifdef CPP_UNIT_TESTS @@ -110,7 +204,7 @@ check:: endif # CPP_UNIT_TESTS -.PHONY: check +.PHONY: check xpcshell-tests check-interactive check-one endif # ENABLE_TESTS @@ -1315,7 +1409,6 @@ export:: $(AUTOCFG_JS_EXPORTS) $(FINAL_TARGET)/defaults/autoconfig endif endif - ################################################################################ # Export the elements of $(XPIDLSRCS) # generating .h and .xpt files and moving them to the appropriate places. @@ -1773,12 +1866,106 @@ TAGS: $(SUBMAKEFILES) $(CSRCS) $(CPPSRCS) $(wildcard *.h) $(LOOP_OVER_PARALLEL_DIRS) $(LOOP_OVER_DIRS) -ifndef INCLUDED_DEBUGMAKE_MK #{ - ## Only parse when an echo* or show* target is requested - ifneq (,$(call isTargetStem,echo,show)) - include $(topsrcdir)/config/makefiles/debugmake.mk - endif #} -endif #} +echo-variable-%: + @echo "$($*)" + +echo-tiers: + @echo $(TIERS) + +echo-tier-dirs: + @$(foreach tier,$(TIERS),echo '$(tier):'; echo ' dirs: $(tier_$(tier)_dirs)'; echo ' staticdirs: $(tier_$(tier)_staticdirs)'; ) + +echo-dirs: + @echo $(DIRS) + +echo-module: + @echo $(MODULE) + +echo-depth-path: + @$(topsrcdir)/build/unix/print-depth-path.sh + +echo-module-name: + @$(topsrcdir)/build/package/rpm/print-module-name.sh + +echo-module-filelist: + @$(topsrcdir)/build/package/rpm/print-module-filelist.sh + +showtargs: +ifneq (,$(filter $(PROGRAM) $(HOST_PROGRAM) $(SIMPLE_PROGRAMS) $(HOST_LIBRARY) $(LIBRARY) $(SHARED_LIBRARY),$(TARGETS))) + @echo -------------------------------------------------------------------------------- + @echo "PROGRAM = $(PROGRAM)" + @echo "SIMPLE_PROGRAMS = $(SIMPLE_PROGRAMS)" + @echo "LIBRARY = $(LIBRARY)" + @echo "SHARED_LIBRARY = $(SHARED_LIBRARY)" + @echo "SHARED_LIBRARY_LIBS = $(SHARED_LIBRARY_LIBS)" + @echo "LIBS = $(LIBS)" + @echo "DEF_FILE = $(DEF_FILE)" + @echo "IMPORT_LIBRARY = $(IMPORT_LIBRARY)" + @echo "STATIC_LIBS = $(STATIC_LIBS)" + @echo "SHARED_LIBS = $(SHARED_LIBS)" + @echo "EXTRA_DSO_LIBS = $(EXTRA_DSO_LIBS)" + @echo "EXTRA_DSO_LDOPTS = $(EXTRA_DSO_LDOPTS)" + @echo "DEPENDENT_LIBS = $(DEPENDENT_LIBS)" + @echo -------------------------------------------------------------------------------- +endif + $(LOOP_OVER_PARALLEL_DIRS) + $(LOOP_OVER_DIRS) + +showbuild: + @echo "MOZ_BUILD_ROOT = $(MOZ_BUILD_ROOT)" + @echo "MOZ_WIDGET_TOOLKIT = $(MOZ_WIDGET_TOOLKIT)" + @echo "CC = $(CC)" + @echo "CXX = $(CXX)" + @echo "CCC = $(CCC)" + @echo "CPP = $(CPP)" + @echo "LD = $(LD)" + @echo "AR = $(AR)" + @echo "IMPLIB = $(IMPLIB)" + @echo "FILTER = $(FILTER)" + @echo "MKSHLIB = $(MKSHLIB)" + @echo "MKCSHLIB = $(MKCSHLIB)" + @echo "RC = $(RC)" + @echo "MC = $(MC)" + @echo "CFLAGS = $(CFLAGS)" + @echo "OS_CFLAGS = $(OS_CFLAGS)" + @echo "COMPILE_CFLAGS = $(COMPILE_CFLAGS)" + @echo "CXXFLAGS = $(CXXFLAGS)" + @echo "OS_CXXFLAGS = $(OS_CXXFLAGS)" + @echo "COMPILE_CXXFLAGS = $(COMPILE_CXXFLAGS)" + @echo "COMPILE_CMFLAGS = $(COMPILE_CMFLAGS)" + @echo "COMPILE_CMMFLAGS = $(COMPILE_CMMFLAGS)" + @echo "LDFLAGS = $(LDFLAGS)" + @echo "OS_LDFLAGS = $(OS_LDFLAGS)" + @echo "DSO_LDOPTS = $(DSO_LDOPTS)" + @echo "OS_INCLUDES = $(OS_INCLUDES)" + @echo "OS_LIBS = $(OS_LIBS)" + @echo "EXTRA_LIBS = $(EXTRA_LIBS)" + @echo "BIN_FLAGS = $(BIN_FLAGS)" + @echo "INCLUDES = $(INCLUDES)" + @echo "DEFINES = $(DEFINES)" + @echo "ACDEFINES = $(ACDEFINES)" + @echo "BIN_SUFFIX = $(BIN_SUFFIX)" + @echo "LIB_SUFFIX = $(LIB_SUFFIX)" + @echo "DLL_SUFFIX = $(DLL_SUFFIX)" + @echo "IMPORT_LIB_SUFFIX = $(IMPORT_LIB_SUFFIX)" + @echo "INSTALL = $(INSTALL)" + @echo "VPATH = $(VPATH)" + +showhost: + @echo "HOST_CC = $(HOST_CC)" + @echo "HOST_CXX = $(HOST_CXX)" + @echo "HOST_CFLAGS = $(HOST_CFLAGS)" + @echo "HOST_LDFLAGS = $(HOST_LDFLAGS)" + @echo "HOST_LIBS = $(HOST_LIBS)" + @echo "HOST_EXTRA_LIBS = $(HOST_EXTRA_LIBS)" + @echo "HOST_EXTRA_DEPS = $(HOST_EXTRA_DEPS)" + @echo "HOST_PROGRAM = $(HOST_PROGRAM)" + @echo "HOST_OBJS = $(HOST_OBJS)" + @echo "HOST_PROGOBJS = $(HOST_PROGOBJS)" + @echo "HOST_LIBRARY = $(HOST_LIBRARY)" + +showbuildmods:: + @echo "Module dirs = $(BUILD_MODULE_DIRS)" documentation: @cd $(DEPTH) diff --git a/js/src/config/makefiles/debugmake.mk b/js/src/config/makefiles/debugmake.mk deleted file mode 100644 index dd21734003e..00000000000 --- a/js/src/config/makefiles/debugmake.mk +++ /dev/null @@ -1,118 +0,0 @@ -# -*- makefile -*- -# vim:set ts=8 sw=8 sts=8 noet: -# -# 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/. -# - -########################################################################### -## Intent: Helper targets for displaying variables and state information -########################################################################### - -# Support usage outside of config/rules.mk -ifndef INCLUDED_DEBUGMAKE_MK #{ - -echo-variable-%: - @echo "$($*)" - -echo-tiers: - @echo $(TIERS) - -echo-tier-dirs: - @$(foreach tier,$(TIERS),echo '$(tier):'; echo ' dirs: $(tier_$(tier)_dirs)'; echo ' staticdirs: $(tier_$(tier)_staticdirs)'; ) - -echo-dirs: - @echo $(DIRS) - -echo-module: - @echo $(MODULE) - -echo-depth-path: - @$(topsrcdir)/build/unix/print-depth-path.sh - -echo-module-name: - @$(topsrcdir)/build/package/rpm/print-module-name.sh - -echo-module-filelist: - @$(topsrcdir)/build/package/rpm/print-module-filelist.sh - -showtargs: -ifneq (,$(filter $(PROGRAM) $(HOST_PROGRAM) $(SIMPLE_PROGRAMS) $(HOST_LIBRARY) $(LIBRARY) $(SHARED_LIBRARY),$(TARGETS))) - @echo -------------------------------------------------------------------------------- - @echo "PROGRAM = $(PROGRAM)" - @echo "SIMPLE_PROGRAMS = $(SIMPLE_PROGRAMS)" - @echo "LIBRARY = $(LIBRARY)" - @echo "SHARED_LIBRARY = $(SHARED_LIBRARY)" - @echo "SHARED_LIBRARY_LIBS = $(SHARED_LIBRARY_LIBS)" - @echo "LIBS = $(LIBS)" - @echo "DEF_FILE = $(DEF_FILE)" - @echo "IMPORT_LIBRARY = $(IMPORT_LIBRARY)" - @echo "STATIC_LIBS = $(STATIC_LIBS)" - @echo "SHARED_LIBS = $(SHARED_LIBS)" - @echo "EXTRA_DSO_LIBS = $(EXTRA_DSO_LIBS)" - @echo "EXTRA_DSO_LDOPTS = $(EXTRA_DSO_LDOPTS)" - @echo "DEPENDENT_LIBS = $(DEPENDENT_LIBS)" - @echo -------------------------------------------------------------------------------- -endif - $(LOOP_OVER_PARALLEL_DIRS) - $(LOOP_OVER_DIRS) - -showbuild: - @echo "MOZ_BUILD_ROOT = $(MOZ_BUILD_ROOT)" - @echo "MOZ_WIDGET_TOOLKIT = $(MOZ_WIDGET_TOOLKIT)" - @echo "CC = $(CC)" - @echo "CXX = $(CXX)" - @echo "CCC = $(CCC)" - @echo "CPP = $(CPP)" - @echo "LD = $(LD)" - @echo "AR = $(AR)" - @echo "IMPLIB = $(IMPLIB)" - @echo "FILTER = $(FILTER)" - @echo "MKSHLIB = $(MKSHLIB)" - @echo "MKCSHLIB = $(MKCSHLIB)" - @echo "RC = $(RC)" - @echo "MC = $(MC)" - @echo "CFLAGS = $(CFLAGS)" - @echo "OS_CFLAGS = $(OS_CFLAGS)" - @echo "COMPILE_CFLAGS = $(COMPILE_CFLAGS)" - @echo "CXXFLAGS = $(CXXFLAGS)" - @echo "OS_CXXFLAGS = $(OS_CXXFLAGS)" - @echo "COMPILE_CXXFLAGS = $(COMPILE_CXXFLAGS)" - @echo "COMPILE_CMFLAGS = $(COMPILE_CMFLAGS)" - @echo "COMPILE_CMMFLAGS = $(COMPILE_CMMFLAGS)" - @echo "LDFLAGS = $(LDFLAGS)" - @echo "OS_LDFLAGS = $(OS_LDFLAGS)" - @echo "DSO_LDOPTS = $(DSO_LDOPTS)" - @echo "OS_INCLUDES = $(OS_INCLUDES)" - @echo "OS_LIBS = $(OS_LIBS)" - @echo "EXTRA_LIBS = $(EXTRA_LIBS)" - @echo "BIN_FLAGS = $(BIN_FLAGS)" - @echo "INCLUDES = $(INCLUDES)" - @echo "DEFINES = $(DEFINES)" - @echo "ACDEFINES = $(ACDEFINES)" - @echo "BIN_SUFFIX = $(BIN_SUFFIX)" - @echo "LIB_SUFFIX = $(LIB_SUFFIX)" - @echo "DLL_SUFFIX = $(DLL_SUFFIX)" - @echo "IMPORT_LIB_SUFFIX = $(IMPORT_LIB_SUFFIX)" - @echo "INSTALL = $(INSTALL)" - @echo "VPATH = $(VPATH)" - -showhost: - @echo "HOST_CC = $(HOST_CC)" - @echo "HOST_CXX = $(HOST_CXX)" - @echo "HOST_CFLAGS = $(HOST_CFLAGS)" - @echo "HOST_LDFLAGS = $(HOST_LDFLAGS)" - @echo "HOST_LIBS = $(HOST_LIBS)" - @echo "HOST_EXTRA_LIBS = $(HOST_EXTRA_LIBS)" - @echo "HOST_EXTRA_DEPS = $(HOST_EXTRA_DEPS)" - @echo "HOST_PROGRAM = $(HOST_PROGRAM)" - @echo "HOST_OBJS = $(HOST_OBJS)" - @echo "HOST_PROGOBJS = $(HOST_PROGOBJS)" - @echo "HOST_LIBRARY = $(HOST_LIBRARY)" - -showbuildmods:: - @echo "Module dirs = $(BUILD_MODULE_DIRS)" - -INCLUDED_DEBUGMAKE_MK = 1 -endif #} diff --git a/js/src/config/makefiles/makeutils.mk b/js/src/config/makefiles/makeutils.mk index 34c20dce0f9..faf6c58aae5 100644 --- a/js/src/config/makefiles/makeutils.mk +++ b/js/src/config/makefiles/makeutils.mk @@ -67,11 +67,8 @@ else endif # Intent: Conditionals for detecting common/tier target use -isTargetStem = $(sort \ - $(foreach var,$(getargv),\ - $(foreach pat, $(var)% %$(var),\ - $(call is_XinY,$(pat),${$(mcg_goals)})\ - ))) +# Todo: are check, install, test needed ? +isTargetStem = $(sort $(foreach pat, $(1)% %$(1), $(call is_XinY,$(pat),${$(mcg_goals)}))) isTargetStemClean = $(call isTargetStem,clean) isTargetStemExport = $(call isTargetStem,export) isTargetStemLibs = $(call isTargetStem,libs) diff --git a/js/src/config/makefiles/xpcshell.mk b/js/src/config/makefiles/xpcshell.mk deleted file mode 100644 index 31ad2259c0e..00000000000 --- a/js/src/config/makefiles/xpcshell.mk +++ /dev/null @@ -1,121 +0,0 @@ -# -*- makefile -*- -# vim:set ts=8 sw=8 sts=8 noet: -# -# 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/. -# - -ifndef INCLUDED_TESTS_XPCSHELL_MK #{ - -ifdef XPCSHELL_TESTS #{ - -ifndef relativesrcdir -$(error Must define relativesrcdir when defining XPCSHELL_TESTS.) -endif - -define _INSTALL_TESTS -$(DIR_INSTALL) $(wildcard $(srcdir)/$(dir)/*) $(testxpcobjdir)/$(relativesrcdir)/$(dir) - -endef # do not remove the blank line! - -SOLO_FILE ?= $(error Specify a test filename in SOLO_FILE when using check-interactive or check-one) - -libs:: libs-xpcshell-tests - -testxpcsrcdir = $(topsrcdir)/testing/xpcshell - -########################################################################### -# Execute a single test, specified in $(SOLO_FILE), but don't automatically -# start the test. Instead, present the xpcshell prompt so the user can -# attach a debugger and then start the test. -check-interactive: - $(PYTHON) -u $(topsrcdir)/config/pythonpath.py \ - -I$(topsrcdir)/build \ - $(testxpcsrcdir)/runxpcshelltests.py \ - --symbols-path=$(DIST)/crashreporter-symbols \ - --build-info-json=$(DEPTH)/mozinfo.json \ - --test-path=$(SOLO_FILE) \ - --profile-name=$(MOZ_APP_NAME) \ - --interactive \ - $(LIBXUL_DIST)/bin/xpcshell \ - $(foreach dir,$(XPCSHELL_TESTS),$(testxpcobjdir)/$(relativesrcdir)/$(dir)) - -# Execute a single test, specified in $(SOLO_FILE) -check-one: - $(PYTHON) -u $(topsrcdir)/config/pythonpath.py \ - -I$(topsrcdir)/build \ - $(testxpcsrcdir)/runxpcshelltests.py \ - --symbols-path=$(DIST)/crashreporter-symbols \ - --build-info-json=$(DEPTH)/mozinfo.json \ - --test-path=$(SOLO_FILE) \ - --profile-name=$(MOZ_APP_NAME) \ - --verbose \ - $(EXTRA_TEST_ARGS) \ - $(LIBXUL_DIST)/bin/xpcshell \ - $(foreach dir,$(XPCSHELL_TESTS),$(testxpcobjdir)/$(relativesrcdir)/$(dir)) - -check-one-remote: DM_TRANS?=adb -check-one-remote: - $(PYTHON) -u $(topsrcdir)/config/pythonpath.py \ - -I$(topsrcdir)/build \ - -I$(topsrcdir)/build/mobile \ - $(testxpcsrcdir)/remotexpcshelltests.py \ - --symbols-path=$(DIST)/crashreporter-symbols \ - --build-info-json=$(DEPTH)/mozinfo.json \ - --test-path=$(SOLO_FILE) \ - --profile-name=$(MOZ_APP_NAME) \ - --verbose \ - $(EXTRA_TEST_ARGS) \ - --dm_trans=$(DM_TRANS) \ - --deviceIP=${TEST_DEVICE} \ - --objdir=$(DEPTH) \ - --noSetup \ - $(foreach dir,$(XPCSHELL_TESTS),$(testxpcobjdir)/$(relativesrcdir)/$(dir)) - -########################################################################### -libs-xpcshell-tests: - $(foreach dir,$(XPCSHELL_TESTS),$(_INSTALL_TESTS)) -ifndef NO_XPCSHELL_MANIFEST_CHECK #{ - $(PYTHON) $(MOZILLA_DIR)/build/xpccheck.py \ - $(topsrcdir) \ - $(topsrcdir)/testing/xpcshell/xpcshell.ini \ - $(addprefix $(MOZILLA_DIR)/$(relativesrcdir)/,$(XPCSHELL_TESTS)) -endif #} NO_XPCSHELL_MANIFEST_CHECK - -########################################################################### -# Execute all tests in the $(XPCSHELL_TESTS) directories. -# See also testsuite-targets.mk 'xpcshell-tests' target for global execution. -xpcshell-tests: - $(PYTHON) -u $(topsrcdir)/config/pythonpath.py \ - -I$(topsrcdir)/build \ - $(testxpcsrcdir)/runxpcshelltests.py \ - --symbols-path=$(DIST)/crashreporter-symbols \ - --build-info-json=$(DEPTH)/mozinfo.json \ - --tests-root-dir=$(testxpcobjdir) \ - --xunit-file=$(testxpcobjdir)/$(relativesrcdir)/results.xml \ - --xunit-suite-name=xpcshell \ - $(EXTRA_TEST_ARGS) \ - $(LIBXUL_DIST)/bin/xpcshell \ - $(foreach dir,$(XPCSHELL_TESTS),$(testxpcobjdir)/$(relativesrcdir)/$(dir)) - -xpcshell-tests-remote: DM_TRANS?=adb -xpcshell-tests-remote: - $(PYTHON) -u $(topsrcdir)/config/pythonpath.py \ - -I$(topsrcdir)/build \ - -I$(topsrcdir)/build/mobile \ - $(topsrcdir)/testing/xpcshell/remotexpcshelltests.py \ - --symbols-path=$(DIST)/crashreporter-symbols \ - --build-info-json=$(DEPTH)/mozinfo.json \ - $(EXTRA_TEST_ARGS) \ - --dm_trans=$(DM_TRANS) \ - --deviceIP=${TEST_DEVICE} \ - --objdir=$(DEPTH) \ - $(foreach dir,$(XPCSHELL_TESTS),$(testxpcobjdir)/$(relativesrcdir)/$(dir)) - -.PHONY: xpcshell-tests check-interactive check-one libs-xpcshell-tests - -endif #} XPCSHELL_TESTS - -INCLUDED_TESTS_XPCSHELL_MK = 1 -endif #} INCLUDED_TESTS_XPCSHELL_MK diff --git a/js/src/config/rules.mk b/js/src/config/rules.mk index db21605c329..515024256b8 100644 --- a/js/src/config/rules.mk +++ b/js/src/config/rules.mk @@ -85,11 +85,105 @@ ifdef ENABLE_TESTS # locally against non-current test code. DIRS += $(TEST_DIRS) -ifdef ENABLE_TESTS #{ - ifndef INCLUDED_TESTS_XPCSHELL_MK #{ - include $(topsrcdir)/config/makefiles/xpcshell.mk - endif #} -endif #} +ifdef XPCSHELL_TESTS +ifndef relativesrcdir +$(error Must define relativesrcdir when defining XPCSHELL_TESTS.) +endif + +define _INSTALL_TESTS +$(DIR_INSTALL) $(wildcard $(srcdir)/$(dir)/*) $(testxpcobjdir)/$(relativesrcdir)/$(dir) + +endef # do not remove the blank line! + +SOLO_FILE ?= $(error Specify a test filename in SOLO_FILE when using check-interactive or check-one) + +libs:: + $(foreach dir,$(XPCSHELL_TESTS),$(_INSTALL_TESTS)) +ifndef NO_XPCSHELL_MANIFEST_CHECK + $(PYTHON) $(MOZILLA_DIR)/build/xpccheck.py \ + $(topsrcdir) \ + $(topsrcdir)/testing/xpcshell/xpcshell.ini \ + $(addprefix $(MOZILLA_DIR)/$(relativesrcdir)/,$(XPCSHELL_TESTS)) +endif + +testxpcsrcdir = $(topsrcdir)/testing/xpcshell + +# Execute all tests in the $(XPCSHELL_TESTS) directories. +# See also testsuite-targets.mk 'xpcshell-tests' target for global execution. +xpcshell-tests: + $(PYTHON) -u $(topsrcdir)/config/pythonpath.py \ + -I$(topsrcdir)/build -I$(DEPTH)/_tests/mozbase/mozinfo \ + $(testxpcsrcdir)/runxpcshelltests.py \ + --symbols-path=$(DIST)/crashreporter-symbols \ + --build-info-json=$(DEPTH)/mozinfo.json \ + --tests-root-dir=$(testxpcobjdir) \ + --xunit-file=$(testxpcobjdir)/$(relativesrcdir)/results.xml \ + --xunit-suite-name=xpcshell \ + $(EXTRA_TEST_ARGS) \ + $(LIBXUL_DIST)/bin/xpcshell \ + $(foreach dir,$(XPCSHELL_TESTS),$(testxpcobjdir)/$(relativesrcdir)/$(dir)) + +xpcshell-tests-remote: DM_TRANS?=adb +xpcshell-tests-remote: + $(PYTHON) -u $(topsrcdir)/config/pythonpath.py \ + -I$(topsrcdir)/build \ + -I$(topsrcdir)/build/mobile \ + $(topsrcdir)/testing/xpcshell/remotexpcshelltests.py \ + --symbols-path=$(DIST)/crashreporter-symbols \ + --build-info-json=$(DEPTH)/mozinfo.json \ + $(EXTRA_TEST_ARGS) \ + --dm_trans=$(DM_TRANS) \ + --deviceIP=${TEST_DEVICE} \ + --objdir=$(DEPTH) \ + $(foreach dir,$(XPCSHELL_TESTS),$(testxpcobjdir)/$(relativesrcdir)/$(dir)) + +# Execute a single test, specified in $(SOLO_FILE), but don't automatically +# start the test. Instead, present the xpcshell prompt so the user can +# attach a debugger and then start the test. +check-interactive: + $(PYTHON) -u $(topsrcdir)/config/pythonpath.py \ + -I$(topsrcdir)/build -I$(DEPTH)/_tests/mozbase/mozinfo \ + $(testxpcsrcdir)/runxpcshelltests.py \ + --symbols-path=$(DIST)/crashreporter-symbols \ + --build-info-json=$(DEPTH)/mozinfo.json \ + --test-path=$(SOLO_FILE) \ + --profile-name=$(MOZ_APP_NAME) \ + --interactive \ + $(LIBXUL_DIST)/bin/xpcshell \ + $(foreach dir,$(XPCSHELL_TESTS),$(testxpcobjdir)/$(relativesrcdir)/$(dir)) + +# Execute a single test, specified in $(SOLO_FILE) +check-one: + $(PYTHON) -u $(topsrcdir)/config/pythonpath.py \ + -I$(topsrcdir)/build -I$(DEPTH)/_tests/mozbase/mozinfo \ + $(testxpcsrcdir)/runxpcshelltests.py \ + --symbols-path=$(DIST)/crashreporter-symbols \ + --build-info-json=$(DEPTH)/mozinfo.json \ + --test-path=$(SOLO_FILE) \ + --profile-name=$(MOZ_APP_NAME) \ + --verbose \ + $(EXTRA_TEST_ARGS) \ + $(LIBXUL_DIST)/bin/xpcshell \ + $(foreach dir,$(XPCSHELL_TESTS),$(testxpcobjdir)/$(relativesrcdir)/$(dir)) + +check-one-remote: DM_TRANS?=adb +check-one-remote: + $(PYTHON) -u $(topsrcdir)/config/pythonpath.py \ + -I$(topsrcdir)/build \ + -I$(topsrcdir)/build/mobile \ + $(testxpcsrcdir)/remotexpcshelltests.py \ + --symbols-path=$(DIST)/crashreporter-symbols \ + --build-info-json=$(DEPTH)/mozinfo.json \ + --test-path=$(SOLO_FILE) \ + --profile-name=$(MOZ_APP_NAME) \ + --verbose \ + $(EXTRA_TEST_ARGS) \ + --dm_trans=$(DM_TRANS) \ + --deviceIP=${TEST_DEVICE} \ + --objdir=$(DEPTH) \ + --noSetup \ + $(foreach dir,$(XPCSHELL_TESTS),$(testxpcobjdir)/$(relativesrcdir)/$(dir)) +endif # XPCSHELL_TESTS ifdef CPP_UNIT_TESTS @@ -110,7 +204,7 @@ check:: endif # CPP_UNIT_TESTS -.PHONY: check +.PHONY: check xpcshell-tests check-interactive check-one endif # ENABLE_TESTS @@ -1315,7 +1409,6 @@ export:: $(AUTOCFG_JS_EXPORTS) $(FINAL_TARGET)/defaults/autoconfig endif endif - ################################################################################ # Export the elements of $(XPIDLSRCS) # generating .h and .xpt files and moving them to the appropriate places. @@ -1773,12 +1866,106 @@ TAGS: $(SUBMAKEFILES) $(CSRCS) $(CPPSRCS) $(wildcard *.h) $(LOOP_OVER_PARALLEL_DIRS) $(LOOP_OVER_DIRS) -ifndef INCLUDED_DEBUGMAKE_MK #{ - ## Only parse when an echo* or show* target is requested - ifneq (,$(call isTargetStem,echo,show)) - include $(topsrcdir)/config/makefiles/debugmake.mk - endif #} -endif #} +echo-variable-%: + @echo "$($*)" + +echo-tiers: + @echo $(TIERS) + +echo-tier-dirs: + @$(foreach tier,$(TIERS),echo '$(tier):'; echo ' dirs: $(tier_$(tier)_dirs)'; echo ' staticdirs: $(tier_$(tier)_staticdirs)'; ) + +echo-dirs: + @echo $(DIRS) + +echo-module: + @echo $(MODULE) + +echo-depth-path: + @$(topsrcdir)/build/unix/print-depth-path.sh + +echo-module-name: + @$(topsrcdir)/build/package/rpm/print-module-name.sh + +echo-module-filelist: + @$(topsrcdir)/build/package/rpm/print-module-filelist.sh + +showtargs: +ifneq (,$(filter $(PROGRAM) $(HOST_PROGRAM) $(SIMPLE_PROGRAMS) $(HOST_LIBRARY) $(LIBRARY) $(SHARED_LIBRARY),$(TARGETS))) + @echo -------------------------------------------------------------------------------- + @echo "PROGRAM = $(PROGRAM)" + @echo "SIMPLE_PROGRAMS = $(SIMPLE_PROGRAMS)" + @echo "LIBRARY = $(LIBRARY)" + @echo "SHARED_LIBRARY = $(SHARED_LIBRARY)" + @echo "SHARED_LIBRARY_LIBS = $(SHARED_LIBRARY_LIBS)" + @echo "LIBS = $(LIBS)" + @echo "DEF_FILE = $(DEF_FILE)" + @echo "IMPORT_LIBRARY = $(IMPORT_LIBRARY)" + @echo "STATIC_LIBS = $(STATIC_LIBS)" + @echo "SHARED_LIBS = $(SHARED_LIBS)" + @echo "EXTRA_DSO_LIBS = $(EXTRA_DSO_LIBS)" + @echo "EXTRA_DSO_LDOPTS = $(EXTRA_DSO_LDOPTS)" + @echo "DEPENDENT_LIBS = $(DEPENDENT_LIBS)" + @echo -------------------------------------------------------------------------------- +endif + $(LOOP_OVER_PARALLEL_DIRS) + $(LOOP_OVER_DIRS) + +showbuild: + @echo "MOZ_BUILD_ROOT = $(MOZ_BUILD_ROOT)" + @echo "MOZ_WIDGET_TOOLKIT = $(MOZ_WIDGET_TOOLKIT)" + @echo "CC = $(CC)" + @echo "CXX = $(CXX)" + @echo "CCC = $(CCC)" + @echo "CPP = $(CPP)" + @echo "LD = $(LD)" + @echo "AR = $(AR)" + @echo "IMPLIB = $(IMPLIB)" + @echo "FILTER = $(FILTER)" + @echo "MKSHLIB = $(MKSHLIB)" + @echo "MKCSHLIB = $(MKCSHLIB)" + @echo "RC = $(RC)" + @echo "MC = $(MC)" + @echo "CFLAGS = $(CFLAGS)" + @echo "OS_CFLAGS = $(OS_CFLAGS)" + @echo "COMPILE_CFLAGS = $(COMPILE_CFLAGS)" + @echo "CXXFLAGS = $(CXXFLAGS)" + @echo "OS_CXXFLAGS = $(OS_CXXFLAGS)" + @echo "COMPILE_CXXFLAGS = $(COMPILE_CXXFLAGS)" + @echo "COMPILE_CMFLAGS = $(COMPILE_CMFLAGS)" + @echo "COMPILE_CMMFLAGS = $(COMPILE_CMMFLAGS)" + @echo "LDFLAGS = $(LDFLAGS)" + @echo "OS_LDFLAGS = $(OS_LDFLAGS)" + @echo "DSO_LDOPTS = $(DSO_LDOPTS)" + @echo "OS_INCLUDES = $(OS_INCLUDES)" + @echo "OS_LIBS = $(OS_LIBS)" + @echo "EXTRA_LIBS = $(EXTRA_LIBS)" + @echo "BIN_FLAGS = $(BIN_FLAGS)" + @echo "INCLUDES = $(INCLUDES)" + @echo "DEFINES = $(DEFINES)" + @echo "ACDEFINES = $(ACDEFINES)" + @echo "BIN_SUFFIX = $(BIN_SUFFIX)" + @echo "LIB_SUFFIX = $(LIB_SUFFIX)" + @echo "DLL_SUFFIX = $(DLL_SUFFIX)" + @echo "IMPORT_LIB_SUFFIX = $(IMPORT_LIB_SUFFIX)" + @echo "INSTALL = $(INSTALL)" + @echo "VPATH = $(VPATH)" + +showhost: + @echo "HOST_CC = $(HOST_CC)" + @echo "HOST_CXX = $(HOST_CXX)" + @echo "HOST_CFLAGS = $(HOST_CFLAGS)" + @echo "HOST_LDFLAGS = $(HOST_LDFLAGS)" + @echo "HOST_LIBS = $(HOST_LIBS)" + @echo "HOST_EXTRA_LIBS = $(HOST_EXTRA_LIBS)" + @echo "HOST_EXTRA_DEPS = $(HOST_EXTRA_DEPS)" + @echo "HOST_PROGRAM = $(HOST_PROGRAM)" + @echo "HOST_OBJS = $(HOST_OBJS)" + @echo "HOST_PROGOBJS = $(HOST_PROGOBJS)" + @echo "HOST_LIBRARY = $(HOST_LIBRARY)" + +showbuildmods:: + @echo "Module dirs = $(BUILD_MODULE_DIRS)" documentation: @cd $(DEPTH)