NVCC        := nvcc
ARCH        := -arch=sm_75   # 按你的 GPU 改


NVCCFLAGS   := $(ARCH) -O2 -Xcompiler -fPIC -lcudart -I../common
OBJDIR      := obj

# ===== target 1 =====
EXE1        := single_kernel_lud_diagonal
SRC1        := single_kernel_lud_diagonal.cu


# ===== target 2 =====
EXE2        := single_kernel_lud_internal
SRC2        := single_kernel_lud_internal.cu

# ===== target 3 =====
EXE3        := single_kernel_lud_perimeter
SRC3        := single_kernel_lud_perimeter.cu

# ===== 默认目标 =====
.PHONY: all clean

all: $(EXE1)  $(EXE2)  $(EXE3) 

$(EXE1): $(SRC1)
	$(NVCC) $(NVCCFLAGS) -o $@ $^

$(EXE2): $(SRC2)
	$(NVCC) $(NVCCFLAGS) -o $@ $^

$(EXE3): $(SRC3)
	$(NVCC) $(NVCCFLAGS) -o $@ $^

clean:
	rm -f $(EXE1)  $(EXE2)  $(EXE3)  