Re: [PATCH 1/1] perf tools: Make target to generate self containedsource tarball

From: Sam Ravnborg
Date: Sat May 29 2010 - 03:31:16 EST


On Fri, May 28, 2010 at 03:53:57PM -0300, Arnaldo Carvalho de Melo wrote:
> Hi Michal, Sam,
>
> Are you OK with with this change?

No - I do not like it :-)

But I like the concept.

We have some minimal infrastructure to support packaging
and this seems like an OK fit for this too.
Only drawback is that you need to configure your kernel
before you can pack the source tarball.

Moving the packaging support to scripts/package/
avoiding any changes to the top-level Makefile.

Appended is my attemt to add it to said file.
But my git did not support the '-o' option so it is untested.

To apply it you need your MANIFEST file (obviously).

Help will say:
$ make help | grep perf
perf-pkg - Build perf-2.6.34.tar.gz source tarball


You may consider to restructure cmd_perf a little so
it exits on error. I just did the quick version here.

Sam



diff --git a/scripts/package/Makefile b/scripts/package/Makefile
index 62fcc3a..475f023 100644
--- a/scripts/package/Makefile
+++ b/scripts/package/Makefile
@@ -111,6 +111,24 @@ tar%pkg: FORCE
clean-dirs += $(objtree)/tar-install/


+# perf-pkg - generate a source tarball with perf source
+# ---------------------------------------------------------------------------
+perf-tar=perf-$(KERNELVERSION)
+
+quiet_cmd_perf = TAR
+ cmd_perf = \
+git archive --prefix=$(perf-tar)/ HEAD^{tree} \
+ $$(cat tools/perf/MANIFEST) -o $(perf-tar).tar; \
+mkdir -p $(perf-tar); \
+git rev-parse HEAD > $(perf-tar)/HEAD; \
+tar rf $(perf-tar).tar $(perf-tar)/HEAD; \
+rm -r $(perf-tar); \
+gzip -f -9 $(perf-tar).tar
+
+
+perf-pkg: FORCE
+ $(call cmd,perf)
+
# Help text displayed when executing 'make help'
# ---------------------------------------------------------------------------
help: FORCE
@@ -120,4 +138,5 @@ help: FORCE
@echo ' tar-pkg - Build the kernel as an uncompressed tarball'
@echo ' targz-pkg - Build the kernel as a gzip compressed tarball'
@echo ' tarbz2-pkg - Build the kernel as a bzip2 compressed tarball'
+ @echo ' perf-pkg - Build $(perf-tar).tar.gz source tarball'

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/