Since there's confusion as to what src_rev is for in the specfiles that I 
wrote around the KDE4-Solaris project, here's my take on it:

- src_rev is the *package* revision. That makes it a confusing name.
- idea copied from FreeBSD's PORTREVISION.
- src_rev belongs with SUNW_Rev and/or IPS_vendor_version.
- src_rev allows you to express that it is the src_rev'th *re*packaging of a 
given source release of a package. e.g. Qt 4.5.0 is at src_rev 4 right now, 
where 1 was the initial attempt, 2 fixed installation issues, 3 fixed rpaths 
and 4 seems to have been gratuitous. note that for IPS, the image timestamps 
will do the same job, but may be less enlightening.
- bumping src_rev allows you to release a newer package for a given source 
version and letting the upgrade magic (e.g. in ips) kick in.
- for Dude-based specfiles (i.e. those that download a tarball rolled from the 
Solaris/ directory of a package in Dude) the src_rev is appended to the 
src_ver to produce a tarball version; this makes it possible to force a re-
download of the tarball when you have changed something in Dude and rolled a 
new tarball. previously, you would have to be very careful to remove or update 
the tarball in ~/packages/SOURCES manually.
- as a guide, you would bump the src_rev up by one when you change the plist, 
change sources, modify flags in a binary incompatible way, or just because you 
want to. You can drop the src_rev down to 1 when src_ver is increased (but 
it's not necessary).

There, I hope that saves some fruitless IRC discussion in future.

[ade]

Reply via email to