blob: 6c66d820e90069478f7e604028cd9709a4e7b006 [file] [log] [blame]
# -*- makefile -*-
#
# 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/.
STANDALONE_MAKEFILE := 1
USE_AUTOTARGETS_MK = 1
MAKEUTILS_UNIT_TEST = 1
include $(topsrcdir)/config/makefiles/makeutils.mk
dir-ts = .deps/test
check-arglist = $(dir-ts)/arglist.ts
check-autotargets = $(dir-ts)/autotargets_mk.ts
check-XinY = $(dir-ts)/check_XinY_mk.ts
check-tests =\
$(check-arglist) \
$(check-autotargets) \
$(check-XinY) \
$(NULL)
##------------------_##
##---] TARGETS [---##
##------------------_##
all::
clean:
$(RM) $(check-tests)
###########################################################################
## Logic processed at compile time so be selective about when to test
## $(MAKE) check VERBOSE=1
ifneq ($(NULL),$(findstring check,$(MAKECMDGOALS))) #
check-preqs =\
$(call mkdir_deps,$(dir-ts)) \
$(check-tests) \
$(NULL)
check:: $(check-preqs)
@true
ifdef VERBOSE #{ gmake check VERBOSE=1
$(info ===========================================================================)
$(info Running test: $(MAKECMDGOALS): pwd=$(CURDIR))
$(info ===========================================================================)
endif #}
ifndef requiredfunction
$(error requiredfunction is not defined)
endif
##################
check-XinY-preqs=\
$(call mkdir_deps,$(dir-ts)) \
$(topsrcdir)/config/makefiles/makeutils.mk \
$(srcdir)/check_XinY.mk \
$(eval include $(srcdir)/check_XinY.mk) \
$(NULL)
$(check-XinY): $(check-XinY-preqs)
@$(TOUCH) $@
# </check-XinY.mk>
###########################################################################
## check-arglist.mk always invoked as a compile time test
## maintain real file dependencies for use later on.
check-arglist-preqs=\
$(call mkdir_deps,$(dir-ts)) \
$(topsrcdir)/config/makefiles/makeutils.mk \
$(srcdir)/check-arglist.mk \
$(eval include $(srcdir)/check-arglist.mk) \
$(NULL)
$(check-arglist): $(check-arglist-preqs)
@$(TOUCH) $@
# </check-arglist.mk>
###########################################################################
# <CHECK: autotargets.mk>
check-autotargets-preqs=\
$(call mkdir_deps,$(dir-ts)) \
$(topsrcdir)/config/makefiles/makeutils.mk \
$(topsrcdir)/config/makefiles/autotargets.mk \
$(srcdir)/check-autotargets.mk \
$(eval include $(srcdir)/check-autotargets.mk) \
$(NULL)
$(check-autotargets): $(check-autotargets-preqs)
@$(TOUCH) $@
# </CHECK: autotargets.mk>
endif #} findstring MAKECMDGOAL