DKMS_MODULE_VERSION := "2026.05.06-sriov"
DKMS_MODULE_ORIGIN_KERNEL := "7.0.1"

LINUXINCLUDE := \
	-I$(src)/include \
	-I$(src)/include/uapi \
	-I$(src)/include/trace \
	$(LINUXINCLUDE) \
	-include $(src)/include/config.h

CONFIG_DRM_GPUSVM := y # we vendor our own copy of the GPUSVM module

subdir-ccflags-y += \
	-DDKMS_MODULE_VERSION='$(DKMS_MODULE_VERSION)' \
	-DDKMS_MODULE_ORIGIN_KERNEL='$(DKMS_MODULE_ORIGIN_KERNEL)' \
	-DDKMS_MODULE_SOURCE_DIR='$(abspath $(src))'

# conftest definitions

CONFTEST_SH := $(src)/conftest.sh
CONFTEST_DIR := $(src)/conftest
CONFTEST_H := $(CONFTEST_DIR)/results.h

CONFTEST_COMPILE_TESTS := \
	copy_from_user_inatomic_nontemporal

ifneq ($(filter 1 y,$(KBUILD_MODULES)),)
ifeq ($(wildcard $(CONFTEST_H)),)
$(shell mkdir -p $(CONFTEST_DIR) && \
	printf '/* Auto-generated by conftest.sh - do not edit */\n' > $(CONFTEST_H) && \
	printf '#ifndef _INTEL_DRM_BACKPORT_CONFTEST_H_\n'          >> $(CONFTEST_H) && \
	printf '#define _INTEL_DRM_BACKPORT_CONFTEST_H_\n\n'        >> $(CONFTEST_H) && \
	for t in $(CONFTEST_COMPILE_TESTS); do \
		printf '  CONFTEST %s\n' "$$t">&2; \
		sh $(CONFTEST_SH) compile_test $$t >> $(CONFTEST_H); \
	done && \
	printf '\n#endif /* _INTEL_DRM_BACKPORT_CONFTEST_H_ */\n'   >> $(CONFTEST_H))
endif
endif

clean-files += $(CONFTEST_DIR)

LINUXINCLUDE += -include $(CONFTEST_H)

# modules
obj-m += compat/
obj-m += drivers/gpu/drm/i915/
obj-m += drivers/gpu/drm/xe/

.PHONY: default clean modules load unload install patch
