From ae62c2e2d906070f7eb57ae78be8460d5b783af7 Mon Sep 17 00:00:00 2001 From: Luke Bakken Date: Wed, 27 Aug 2025 12:49:20 -0700 Subject: [PATCH] Ensure that `tar` sets file modified time correctly For some reason, when the source dist archive is built, the file modified times can be in the future. By adding the `--touch` argument, all files have their modified time set to the extraction time. This prevents the "infinite loop make" behavior described in rabbitmq/rabbitmq-server#14440 These changes also update the arguments passed to `tar` to use full arguments that are easier to understand, as well as removes the need for the `xzcat` command, as all build enviroments should have `xz` support built into GNU `tar`. --- packaging/generic-unix/Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packaging/generic-unix/Makefile b/packaging/generic-unix/Makefile index a2868d027dd8..851986293046 100644 --- a/packaging/generic-unix/Makefile +++ b/packaging/generic-unix/Makefile @@ -38,7 +38,7 @@ dist: @elixir --version @echo '--------------------------------------------------' @echo - xzcat $(SOURCE_DIST_FILE) | tar -xf - + tar --touch --xz --extract --file $(SOURCE_DIST_FILE) # web-manpages are not used by generic-unix but by `make release` in the # Umbrella. Those manpages are copied to www.rabbitmq.com