Files
asterinas/regression/apps/test_common.mk
2023-07-19 11:28:31 +08:00

28 lines
901 B
Makefile

MAIN_MAKEFILE := $(firstword $(MAKEFILE_LIST))
INCLUDE_MAKEFILE := $(lastword $(MAKEFILE_LIST))
CUR_DIR := $(shell dirname $(realpath $(MAIN_MAKEFILE)))
CUR_DIR_NAME := $(shell basename $(realpath $(CUR_DIR)))
REGRESSION_BUILD_DIR := $(CUR_DIR)/../../build/initramfs/regression
OBJ_OUTPUT_DIR := $(REGRESSION_BUILD_DIR)/$(CUR_DIR_NAME)
C_SRCS := $(wildcard *.c)
C_OBJS := $(addprefix $(OBJ_OUTPUT_DIR)/,$(C_SRCS:%.c=%))
ASM_SRCS := $(wildcard *.s)
ASM_OBJS := $(addprefix $(OBJ_OUTPUT_DIR)/,$(ASM_SRCS:%.s=%))
CC := gcc
C_FLAGS :=
.PHONY: all
all: $(OBJ_OUTPUT_DIR) $(C_OBJS) $(ASM_OBJS)
$(OBJ_OUTPUT_DIR):
@mkdir -p $(OBJ_OUTPUT_DIR)
$(CUR_DIR)/../../build/initramfs/regression/$(CUR_DIR_NAME)/%: %.c
@$(CC) $(C_FLAGS) $(EXTRA_C_FLAGS) $< -o $@
@echo "CC <= $@"
$(CUR_DIR)/../../build/initramfs/regression/$(CUR_DIR_NAME)/%: %.s
@$(CC) $(C_FLAGS) $(EXTRA_C_FLAGS) $< -o $@
@echo "CC <= $@"