$(eval $1_LD := $(file <$(DRIVER_LDFILE)))
$(eval undefine DRIVER_LDINFO)
$(eval undefine DRIVER_LDINFO_D)
+$(eval DRIVER_LDINFO += $(1:%.$2=%.$($2_OBJ)))
+$(eval DRIVER_LDINFO_D += $(1:$(dir $1)%.$2=$(dir $1).$($2_DBG)/%.$($2_OBJ)))
$(foreach ldobj,$($1_LD),
$(if $(filter -l%,$(ldobj)),
$(eval ldlibname := $(ldobj:-l%=%))
$(eval DRIVER_LDINFO_D += $(LIB_DIR)/.$($2_DBG)/$(deplib).$($2_AROBJ)))
))
)
-$(eval DRIVER_LDINFO += $(1:%.$2=%.$($2_OBJ)))
-$(eval DRIVER_LDINFO_D += $(1:$(dir $1)%.$2=$(dir $1).$($2_DBG)/%.$($2_OBJ)))
-$(info DRIVER_INFO: $(DRIVER_LDINFO))
-$(info DRIVER_INFO:: $(DRIVER_LDINFO_D))
# Directory setup
$(eval MAKE_DIRS += $(dir $(DRIVER_TARG)))
$(eval MAKE_DIRS += $(DRIVER_TARG_DIR).$($2_DBG)/)
$(DRIVER_TARG_D): $(filter-out -l%,$(DRIVER_LDINFO_D)) | $(dir $(DRIVER_TARG_D))
$($2_C) $($2_FLAGS) $(DRIVER_LDINFO_D) -o $$@
-# Make a rule to run this driver after building
-$(DRIVER_NAME)-run: $(DRIVER_TARG)
- $(DRIVER_TARG)
-$(DRIVER_NAME)-d: $(DRIVER_TARG_D)
#/SRC_LANG_DRVRULE###############################################################
endef
#/LANG_LIB_INIT#################################################################
endef
-# Initialize data for supported lanaguages ######################################
+# Initialize data for supported lanaguages #####################################
define LANG_INIT =
$(eval
$1_OBJ := $($($1_C)_OBJ)
$(foreach src,$(filter $(SRC_DIR)/$(module)/%,$($1_MOD_SRC)),\
$(eval $(call SRC_LANG_RULE,$(src),$1))\
))
-#/LANG_INIT######################################################################
+#/LANG_INIT#####################################################################
+endef
+
+# Create a phony target and rule for the specified source driver
+define DRVSRC_DRIVERPHONY
+$(eval PH_TARG := $(basename $(notdir $1)))
+$(eval PH_TARGS += $(PH_TARG))
+$(eval PH_LANG := $(lastword $(subst ., ,$1)))
+$(eval RL_TARG := $(basename $(subst $(SRC_DIR),$(ROOT_DIR),$1))$($(PH_LANG)_OUT))
+.PHONY: $(PH_TARG) $(PH_TARG:%=%-d)
+$(PH_TARG): $(RL_TARG)
+ @echo Built [$$@] at ./$$<
+$(PH_TARG:%=%-d): $(RL_TARG:%=%-d)
+ @echo Build [$$@] with debugging information at ./$$<
+#/SRC_SIMLIST_PHONYRULE ########################################################
endef