# Copyright 2017 The MathWorks, Inc. # File: matlab/simulink/internal/tools/validate_action.mk # Abstract: # since actions data is situated in ... fragments # and validate them against actions.xsd schema # include $(SANDBOX_ROOT)/resources/internal/makerules/private/resource_baseder_defn.mk # module_helper_fcns.mk for MAKE_SWITCH_N_ACTIVE include $(MAKE_INCLUDE_DIR)/module_helper_fcns.mk # mwdebug.mk is used to get at HIDE define include $(MAKE_INCLUDE_DIR)/mwdebug.mk VALIDATE_ACTION = perl $(realpath $(SANDBOX_ROOT)/toolbox/shared/diagnostic/validation/validate_action.pl) #$(info MAKECMDGOALS=$(MAKECMDGOALS)) BUILD_ACTIVE := 0 ifneq (,$(MAKE_SWITCH_N_ACTIVE)) # make -n? BUILD_ACTIVE := 0 else ifneq (,$(filter $(MAKECMDGOALS),build prebuild)) BUILD_ACTIVE := 1 else ifeq (,$(MAKECMDGOALS)) #sbmake without arguments BUILD_ACTIVE := 1 endif ifeq (1,$(BUILD_ACTIVE)) XMLS = $(filter %.xml, $(sort $(CXX_XML_FILES) $(L10N_XML_FILES))) #$(info XMLS=$(XMLS)) $(info Validating elements) VALIDATE_RESULT := $(strip $(foreach M,$(XMLS),$(shell $(VALIDATE_ACTION) $(RESOURCE_BASE_DIR)$(M) ))) #$(info VALIDATE_RESULT=$(VALIDATE_RESULT)) ifneq (,$(VALIDATE_RESULT)) $(error $(VALIDATE_RESULT)) endif endif