summaryrefslogtreecommitdiff
path: root/yjit
diff options
context:
space:
mode:
authorNobuyoshi Nakada <nobu@ruby-lang.org>2022-09-14 15:23:04 +0900
committerNobuyoshi Nakada <nobu@ruby-lang.org>2022-09-14 21:24:40 +0900
commit075df960c93cb2d3ebe308f67871f39565b4426e (patch)
tree70b69982aa378808aafda94df8636b132c3f3250 /yjit
parente1a9d8849403afea04ca2e11f97245590dcc1597 (diff)
Add comments to touch libyjit
Notes
Notes: Merged: https://github.com/ruby/ruby/pull/6371
Diffstat (limited to 'yjit')
-rw-r--r--yjit/yjit.mk10
1 files changed, 8 insertions, 2 deletions
diff --git a/yjit/yjit.mk b/yjit/yjit.mk
index e25d7c1ce6..81441a7925 100644
--- a/yjit/yjit.mk
+++ b/yjit/yjit.mk
@@ -13,6 +13,12 @@ YJIT_SRC_FILES = $(wildcard \
$(top_srcdir)/yjit/src/*/*/*/*.rs \
)
+# Because of Cargo cache, if the actual binary is not changed from the
+# previous build, the mtime is preserved as the cached file.
+# This means the target is not updated actually, and it will need to
+# rebuild at the next build.
+YJIT_LIB_TOUCH = touch $@
+
# YJIT_SUPPORT=yes when `configure` gets `--enable-yjit`
ifeq ($(YJIT_SUPPORT),yes)
$(YJIT_LIBS): $(YJIT_SRC_FILES)
@@ -25,7 +31,7 @@ $(YJIT_LIBS): $(YJIT_SRC_FILES)
-C overflow-checks=on \
'--out-dir=$(CARGO_TARGET_DIR)/release/' \
$(top_srcdir)/yjit/src/lib.rs
- touch $@
+ $(YJIT_LIB_TOUCH)
else ifeq ($(YJIT_SUPPORT),no)
$(YJIT_LIBS):
$(ECHO) 'Error: Tried to build YJIT without configuring it first. Check `make showconfig`?'
@@ -37,7 +43,7 @@ $(YJIT_LIBS): $(YJIT_SRC_FILES)
CARGO_TARGET_DIR='$(CARGO_TARGET_DIR)' \
CARGO_TERM_PROGRESS_WHEN='never' \
$(CARGO) $(CARGO_VERBOSE) build $(CARGO_BUILD_ARGS)
- touch $@
+ $(YJIT_LIB_TOUCH)
else
endif