implemented proposal by niksnut.

Now you have to use either date= or tag= when specifying cvs revision

svn path=/nixpkgs/trunk/; revision=9661
This commit is contained in:
Marc Weber 2007-11-13 01:26:54 +00:00
parent a205ebc23a
commit 1627b94ee7
3 changed files with 17 additions and 10 deletions

View file

@ -5,7 +5,7 @@ args.stdenv.mkDerivation {
src = args.fetchcvs {
url = ":pserver:anonymous@synergy2.cvs.sourceforge.net:/cvsroot/synergy2";
module = "synergy";
tag = "-DNOW";
date = "NOW";
sha256 = "ef8e2ebfda6e43240051a7af9417092b2af50ece8b5c6c3fbd908ba91c4fe068";
};

View file

@ -1,8 +1,5 @@
source $stdenv/setup
if test -z "$tag"; then
tag="-DNOW"
fi
# creating the export drictory and checking out there only to be able to
# move the content without the root directory into $out ...
# cvs -f -d "$url" export $tag -d "$out" "$module"
@ -10,6 +7,16 @@ fi
# See als man Page for those options
ensureDir $out export
set -x
if [ -n "$tag" ]; then
tag="-r $tag"
else
if [ -n "$date" ]; then
tag="-D $date"
else
tag="-D NOW"
fi
fi
cd export; cvs -f -d "$url" export $tag "$module"
mv */* $out

View file

@ -1,13 +1,13 @@
# example tags:
# "-DNOW" (get current version)
# "-D2007-20-10" (get the last version before given date)
# "-r <tagname>" (get version by tag name)
{stdenv, cvs, nix}: {url, module, tag, sha256}:
# date="2007-20-10"; (get the last version before given date)
# tag="<tagname>" (get version by tag name)
# If you don't specify neither one date="NOW" will be used (get latest)
{stdenv, cvs, nix}: {url, module, tag ? null, date ? null, sha256}:
stdenv.mkDerivation {
name = "cvs-export";
builder = ./builder.sh;
buildInputs = [cvs nix];
inherit url module tag sha256;
inherit url module sha256 tag date;
}