Makefile target to download SourceX file
Todd Zullinger
tmz at pobox.com
Mon Aug 10 19:15:10 UTC 2009
Doug Warner wrote:
> On 08/10/2009 02:14 PM, Todd Zullinger wrote:
>> Would a make target be much simpler than using spectool -g
>> foo.spec? It wouldn't take much to wrap that, if it would be
>> helpful.
>
> No, it wouldn't be. spectool is definitely what I was looking for,
> thanks!
Well, in case anyone thinks it would be helpful, here's a quick patch
for Makefile.common to add a few convenient targets (get-sources and
get-patches, as well as get-source-% and get-patch-%, which can be
used to grab selected source and patch files, respectively):
Index: Makefile.common
===================================================================
RCS file: /cvs/extras/common/Makefile.common,v
retrieving revision 1.132
diff -u -p -r1.132 Makefile.common
--- Makefile.common 10 Aug 2009 14:45:16 -0000 1.132
+++ Makefile.common 10 Aug 2009 19:01:49 -0000
@@ -326,6 +326,23 @@ upload new-source new-sources:
@echo "FILES variable not set!"
endif
+# Download Source and Patch files via the URL in the spec file
+SPECTOOL ?= $(shell which spectool 2>/dev/null)
+spectool-check:
+ @if [ ! -x "$(SPECTOOL)" ]; then echo "Must have spectool (from the rpmdevtools package) installed"; exit 1; fi
+
+get-sources: spectool-check $(SPECFILE)
+ $(SPECTOOL) --get --sources $(SPECFILE)
+
+get-source-%: spectool-check $(SPECFILE)
+ $(SPECTOOL) --get --source $* $(SPECFILE)
+
+get-patches: spectool-check $(SPECFILE)
+ $(SPECTOOL) --get --patches $(SPECFILE)
+
+get-patch-%: spectool-check $(SPECFILE)
+ $(SPECTOOL) --get --patch $* $(SPECFILE)
+
# allow overriding buildarch so you can do, say, an i386 build on x86_64
ifndef BUILDARCH
BUILDARCH := $(shell rpm --eval "%{_arch}")
I found that spectool currently has a bug if you try to pass multiple
source or patch numbers. The spectool help says --source x,y is
accepted, but it is not. The option parsing code enforces the value
passed to --source and --patch be an integer. A trivial fix for this
may be:
--- spectool~ 2008-09-23 11:47:54.000000000 -0400
+++ spectool 2009-08-10 15:04:20.000000000 -0400
@@ -271,8 +271,8 @@
'v|verbose' => sub { $verbose++; },
'n|dryrun|dry-run' => sub { $dryrun = 1; },
'V|version' => sub { $command = 'version'; },
- 's|source=i' => \@sources,
- 'p|patch=i' => \@patches,
+ 's|source=s' => \@sources,
+ 'p|patch=s' => \@patches,
'S|sources' => sub { push @what, 'sources'; },
'P|patches' => sub { push @what, 'patches'; },
'A|all' => sub { push @what, 'all'; },
--
Todd OpenPGP -> KeyID: 0xBEAF0CE3 | URL: www.pobox.com/~tmz/pgp
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Nothing is so simple that it cannot be misunderstood.
-- Teague's Paradox
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 542 bytes
Desc: not available
URL: <http://listman.redhat.com/archives/fedora-devel-list/attachments/20090810/c235ff26/attachment.sig>
More information about the fedora-devel-list
mailing list