[coreboot] [PATCH] flashrom: Make packagers happy

Carl-Daniel Hailfinger c-d.hailfinger.devel.2006 at gmx.net
Fri May 29 15:49:16 CEST 2009


On 29.05.2009 15:30, Peter Stuge wrote:
> The issue is that we do not create the snapshot tarballs. We should,
> and part of that process would be to replace SVNDEF in Makefile.
>   

We do provide snapshots of all repositories, but they are scattered all
over the place and I can't remember where flashrom ends up. I agree that
we need to have a page which points to all snapshots.

> I didn't quite understand what patch you propose though. :\
>   

This patch introduces two new targets which are designed to make the
life of packagers easier.
In particular, it should no longer be necessary to patch the makefile
for hassle-free compilation.

The two new targets are:
make export
make tarball
Both preserve svn revisions and the exported tree does not depend on
subversion in any way or shape.

Documentation for this feature has been added to README.

Thanks to Peter Stuge for the suggestion to fix SVNDEF in the Makefile.

Signed-off-by: Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006 at gmx.net>

Index: flashrom-packaging_export/Makefile
===================================================================
--- flashrom-packaging_export/Makefile	(Revision 555)
+++ flashrom-packaging_export/Makefile	(Arbeitskopie)
@@ -40,9 +40,14 @@
 
 # Set the flashrom version string from the highest revision number
 # of the checked out flashrom files.
-SVNDEF := -D'FLASHROM_VERSION="0.9.0-r$(shell svnversion -cn . \
-          | sed -e "s/.*://" -e "s/\([0-9]*\).*/\1/")"'
+# Note to packagers: Any tree exported with "make export" or "make tarball"
+# will not require subversion.
+SVNVERSION := $(shell LANG=C svnversion -cn . | sed -e "s/.*://" -e "s/\([0-9]*\).*/\1/" | grep "[0-9]" || echo unknown)
 
+VERSION := 0.9.0-r$(SVNVERSION)
+
+SVNDEF := -D'FLASHROM_VERSION="$(VERSION)"'
+
 $(PROGRAM): $(OBJS)
 	$(CC) $(LDFLAGS) -o $(PROGRAM) $(OBJS) $(LIBS)
 
@@ -80,6 +85,15 @@
 	$(INSTALL) -m 0755 $(PROGRAM) $(DESTDIR)$(PREFIX)/sbin
 	$(INSTALL) -m 0644 $(PROGRAM).8 $(DESTDIR)$(MANDIR)/man8
 
+export:
+	@svn export . flashrom-$(VERSION)
+	@sed "s/^SVNVERSION.*/SVNVERSION := $(SVNVERSION)/" Makefile >flashrom-$(VERSION)/Makefile
+	@echo Exported flashrom repository contents to flashrom-$(VERSION)/
+
+tarball: export
+	@tar cfz flashrom-$(VERSION).tar.gz flashrom-$(VERSION)/
+	@echo Created tarball of repository contents at flashrom-$(VERSION).tar.gz
+
 .PHONY: all clean distclean dep pciutils
 
 -include .dependencies
Index: flashrom-packaging_export/README
===================================================================
--- flashrom-packaging_export/README	(Revision 555)
+++ flashrom-packaging_export/README	(Arbeitskopie)
@@ -15,6 +15,21 @@
 (see http://coreboot.org for details on coreboot)
 
 
+Packaging
+---------
+
+To package flashrom and remove dependencies on subversion, either use
+make export
+or
+make tarball
+
+make export will export all flashrom files from the subversion repository into
+a directory named flashrom-$VERSION-r$SVNREVISION and will additionally modify
+Makefile in that directory to contain the svn revision of the tree.
+
+make tarball will simply tar up the result of make export and gzip compress it.
+
+
 Build Instructions
 ------------------
 


-- 
http://www.hailfinger.org/

-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: flashrom_packaging_export01.diff
URL: <http://www.coreboot.org/pipermail/coreboot/attachments/20090529/4d2b1f40/attachment.ksh>


More information about the coreboot mailing list