From 44b8ab08af2f7acf9bd30b75d07e8adf97884142 Mon Sep 17 00:00:00 2001 From: Fabrice Date: Tue, 10 Feb 2026 14:42:16 +0100 Subject: creating wgpu instance --- Makefile | 25 ++++++++++++++++++++++--- 1 file changed, 22 insertions(+), 3 deletions(-) (limited to 'Makefile') diff --git a/Makefile b/Makefile index 5837100..0d03f50 100644 --- a/Makefile +++ b/Makefile @@ -15,6 +15,7 @@ CXX = clang++ CXX_STD = -std=c++11 CXX_FLAGS = -fno-rtti -fno-exceptions $(CXX_STD) $(CSH_FLAGS) +CARGO = cargo RM = rm -rf ECHO = echo CMAKE = cmake @@ -35,7 +36,20 @@ MI_FLAGS = \ HASHMAP_DIR = $(WORK_DIR)/hashmap HASHMAP_SOURCE = $(HASHMAP_DIR)/hashmap.c -CSH_FLAGS += -I$(MI_INCLUDE) -I$(HASHMAP_DIR) +WGPU_DIR = $(WORK_DIR)/wgpu +WGPU_MANIFEST = $(WGPU_DIR)/Cargo.toml +WGPU_INCLUDE = $(WGPU_DIR)/ffi +WGPU_WEBGPU_INCLUDE = $(WGPU_INCLUDE)/webgpu-headers +WGPU_BUILD = $(WGPU_DIR)/target/release +WGPU_LIB = $(WGPU_BUILD)/libwgpu_native.a +WGPU_MANIFEST_FLAG = --manifest-path $(WGPU_MANIFEST) +WGPU_FLAGS = --release $(WGPU_MANIFEST_FLAG) + +CSH_FLAGS += \ + -I$(MI_INCLUDE) \ + -I$(HASHMAP_DIR) \ + -I$(WGPU_INCLUDE) \ + -I$(WGPU_WEBGPU_INCLUDE) MI_GENERATOR = "Unix Makefiles" @@ -58,10 +72,14 @@ OBJECTS += $(MI_OBJECT) DEPS = $(OBJECTS:.o=.d) -LIBRARIES = -lwayland-client -lvulkan +LIBRARIES = -lwayland-client -lvulkan $(WGPU_LIB) all: $(WAYCLOCK) +$(WGPU_LIB): + @echo " CARGO $@" + @$(CARGO) build $(WGPU_FLAGS) + $(MI_BUILD): @echo " CMAKE $@" @$(CMAKE) $(MI_DIR) -B $@ -G $(MI_GENERATOR) $(MI_FLAGS) @@ -70,7 +88,7 @@ $(MI_OBJECT): | $(MI_BUILD) @echo " MAKE $@" @$(MAKE) -C $(MI_BUILD) -$(WAYCLOCK): $(OBJECTS) +$(WAYCLOCK): $(OBJECTS) $(LIBRARIES) @echo " LD $@" @$(CXX) $(CXX_FLAGS) -o $@ $^ $(LIBRARIES) @@ -84,6 +102,7 @@ $(WAYCLOCK): $(OBJECTS) .PHONY: clean clean: + @$(CARGO) clean $(WGPU_MANIFEST_FLAG) @$(RM) $(OBJECTS) $(DEPS) @$(RM) $(WAYCLOCK) @$(RM) $(MI_BUILD) -- cgit v1.2.3