@@ -14,6 +14,7 @@ SHIM_METADATA_GEN_DIR := shim-metadata-gen
14
14
ASM_PROCESSOR_DIR := asm-processor
15
15
LIBRARY_DIR := library
16
16
LIBRARY_JAR := $(LIBRARY_DIR ) /build/libs/library-0.1.0.jar
17
+ RUST_SOURCES := $(shell find $(SHIM_METADATA_GEN_DIR ) /src -type f -name '* .rs')
17
18
18
19
# === Default Target ===
19
20
ifeq ($(IS_CI ) ,1)
39
40
@echo " make rust-components - Install needed Rust components"
40
41
@echo " make rust - Build the Rust root project"
41
42
@echo " make java-linker - Build the Java Linker subproject"
42
- @echo " make shim-metadata-gen - Generate library shim metadata"
43
43
@echo " make asm-processor - Build the ASM processor"
44
44
@echo " make library - Build the standard library shim"
45
45
@echo " make gen-files - Generate necessary files from templates"
@@ -75,11 +75,9 @@ clean-java-linker:
75
75
cd $(JAVA_LINKER_DIR ) && cargo clean
76
76
77
77
# === Library Shim Metadata Generator ===
78
- $(SHIM_METADATA_GEN_DIR ) /core.json : library
78
+ $(SHIM_METADATA_GEN_DIR ) /core.json : $( RUST_SOURCES ) library clean-shim-metadata-gen-json-files
79
79
@if [ " $( IS_CI) " = " 1" ]; then \
80
80
echo " $( CYAN) CI mode: skipping shim-metadata-gen$( RESET) " ; \
81
- elif [ -f $@ ]; then \
82
- echo " $( CYAN) core.json already exists, skipping shim-metadata-gen$( RESET) " ; \
83
81
else \
84
82
echo " $( CYAN) 🛠️ Generating library shim metadata...$( RESET) " ; \
85
83
cd $(SHIM_METADATA_GEN_DIR ) && cargo run -- ../$(LIBRARY_JAR ) ./core.json; \
@@ -88,7 +86,14 @@ $(SHIM_METADATA_GEN_DIR)/core.json: library
88
86
clean-shim-metadata-gen :
89
87
@echo " $( CYAN) 🧹 Cleaning shim-metadata-gen...$( RESET) "
90
88
cd $(SHIM_METADATA_GEN_DIR ) && cargo clean
91
- rm -f $(SHIM_METADATA_GEN_DIR ) /core.json
89
+
90
+ clean-shim-metadata-gen-json-files :
91
+ @if [ " $( IS_CI) " = " 1" ]; then \
92
+ echo " $( CYAN) CI mode: skipping cleaning shim-metadata-gen JSON files$( RESET) " ; \
93
+ else \
94
+ echo " $( CYAN) 🧹 Cleaning shim-metadata-gen JSON files...$( RESET) " ; \
95
+ rm -f $(SHIM_METADATA_GEN_DIR ) /* .json; \
96
+ fi
92
97
93
98
# === ASM Processor (Gradle) ===
94
99
asm-processor :
0 commit comments