[PATCH kexec-tools 1/7] build: create tarball without self-referential hard links

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



The current method of creating the tarball, which is to the hard-link
the source directory to the target directory, results in self-referential
hardlinks which can be observed using tar xf.

This patch resolves this by using an intermediate tarball, held in memory,
which collects files to be distributed. This is then unpacked in the target
directory which is finally packed into the distribution tarball, a file.

Signed-off-by: Simon Horman <horms@xxxxxxxxxxxx>
---
 Makefile.in | 11 +++++------
 1 file changed, 5 insertions(+), 6 deletions(-)

diff --git a/Makefile.in b/Makefile.in
index fb01134..a9c779f 100644
--- a/Makefile.in
+++ b/Makefile.in
@@ -201,14 +201,13 @@ configure: configure.ac
 tarball: $(TARBALL.gz)
 
 $(TARBALL): $(SRCS) $(GENERATED_SRCS)
-	$(RM) -f $(PACKAGE_NAME)-$(PACKAGE_VERSION)
-	$(LN) -s $(srcdir) $(PACKAGE_NAME)-$(PACKAGE_VERSION)
+	$(RM) -rf $(PACKAGE_NAME)-$(PACKAGE_VERSION)
+	$(MKDIR) $(PACKAGE_NAME)-$(PACKAGE_VERSION)
+	$(TAR) -c $(SRCS) $(GENERATED_SRCS) | \
+	        $(TAR) -C $(PACKAGE_NAME)-$(PACKAGE_VERSION) -x
 	$(TAR) -cf $@ $(PSRCS)
-	$(RM) -f $(PACKAGE_NAME)-$(PACKAGE_VERSION)
-	$(LN) -sf . $(PACKAGE_NAME)-$(PACKAGE_VERSION)
 	$(TAR) -rf $@ $(PGSRCS)
-	$(RM) -f $(PACKAGE_NAME)-$(PACKAGE_VERSION)
-	@echo $(dist)
+	$(RM) -rf $(PACKAGE_NAME)-$(PACKAGE_VERSION)
 
 $(TARBALL.gz): $(TARBALL)
 	gzip -c < $^ > $@
-- 
2.20.1


_______________________________________________
kexec mailing list
kexec@xxxxxxxxxxxxxxxxxxx
http://lists.infradead.org/mailman/listinfo/kexec



[Index of Archives]     [LM Sensors]     [Linux Sound]     [ALSA Users]     [ALSA Devel]     [Linux Audio Users]     [Linux Media]     [Kernel]     [Gimp]     [Yosemite News]     [Linux Media]

  Powered by Linux