ifeq ($(M),)
OBJ_DIR:=$(shell pwd)
else
OBJ_DIR:=$(M)
endif
KERNELVER := $(uname -r)
KERNELDIR := /lib/modules/$(shell uname -r)/build

ifeq ($(shell arch),x86_64)
ARCH := x86_64
endif
ifeq ($(shell arch),loongarch64)
ARCH := loongarch
endif
ifeq ($(shell arch),aarch64)
ARCH := arm64
endif
ifndef ARCH
ARCH := x86_64
endif

CONFIG_GPU_MOORE_THREADS := m
obj-$(CONFIG_GPU_MOORE_THREADS) += mtsnd.o

KMDDIR:=/usr/src/mtgpu-1.0.0/build/Module.symvers
$(info "KMDDIR:$(KMDDIR)")
KBUILD_EXTRA_SYMBOLS:=$(KMDDIR)


mtsnd-objs := src/osfunc.o      \
	objs/$(ARCH)/mtsnd_core.o

ccflags-y += -I$(OBJ_DIR)/inc

all: core
	make  -C $(KERNELDIR)   M=$(OBJ_DIR)
	@echo "mtsnd make end"

core:
	@cp $(OBJ_DIR)/objs/$(ARCH)/mtsnd_core.o_binary $(OBJ_DIR)/objs/$(ARCH)/mtsnd_core.o

clean:
	make  -C $(KERNELDIR)   M=$(OBJ_DIR) clean
	@echo "mtsnd clean end"
