# -*- 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/. # ########################################################################### ## Intent: Standalone unit tests for makefile rules and target logic ########################################################################### deps =$(NULL) tgts =$(NULL) ifdef VERBOSE tgts += show endif # Define macros include $(topsrcdir)/config/makefiles/makeutils.mk include $(topsrcdir)/config/makefiles/autotargets.mk ########################## ## Verify threadsafe mkdir ########################## ifdef deps_mkdir_bycall deps += $(call mkdir_deps,deps_mkdir_bycall) tgts += check_mkdir endif ifdef deps_mkdir_bydep deps += $(foreach dir,$(deps_mkdir_bydep),$(dir)/.mkdir.done) tgts += check_mkdir endif ifdef deps_mkdir_bygen GENERATED_DIRS += $(deps_mkdir_bygen) tgts += check_mkdir endif ########################### ## Minimal environment load ########################### MKDIR ?= mkdir -p TOUCH ?= touch INCLUDED_CONFIG_MK = 1 MOZILLA_DIR := $(topsrcdir) include $(topsrcdir)/config/rules.mk ##-------------------## ##---] TARGETS [---## ##-------------------## all:: # Quarks: # o Use of 'all' would trigger export target processing checkup: $(tgts) # AUTO_DEPS - verify GENERATED_DIRS check_mkdir: $(deps) $(AUTO_DEPS) show: @echo "tgts=[$(tgts)]" @echo "deps=[$(deps)]" find $(dir $(deps)) -print