SRC += $(wildcard $(HAL_DIR)/hal_gpio/*.c) CFLAGS += -I$(HAL_DIR)/hal_gpio ifdef MOD_GPIO SRC += $(wildcard $(HAL_DIR)/hal_gpio/$(MOD_GPIO)/*.c) else $(warning warning you sure no gpio?) endif