diff options
author | dmcmahill <dmcmahill> | 2001-06-02 02:03:51 +0000 |
---|---|---|
committer | dmcmahill <dmcmahill> | 2001-06-02 02:03:51 +0000 |
commit | 81e4c70951f20a9945032115930c9c66aad7e18d (patch) | |
tree | adf4d5cc4629bffc548eadf0d08b303147f17cca /pkgtools/cdpack/files/cdgen.awk | |
parent | daf2afb87e1888f8cc49e98c9fef730f05150897 (diff) | |
download | pkgsrc-81e4c70951f20a9945032115930c9c66aad7e18d.tar.gz |
update to cdpack-1.1.
Changes are:
add a '-X directory' option which allows you to specify a directory whose
contents should be included on the last CD of the set. This is useful
for including, for example, a pkgsrc.tar.gz tarball which doesn't need
to be duplicated on each CD.
make the usage output be a little better. in particular, list the options
and mention the existance of a manpage.
Diffstat (limited to 'pkgtools/cdpack/files/cdgen.awk')
-rwxr-xr-x | pkgtools/cdpack/files/cdgen.awk | 40 |
1 files changed, 34 insertions, 6 deletions
diff --git a/pkgtools/cdpack/files/cdgen.awk b/pkgtools/cdpack/files/cdgen.awk index 9c460e80b10..a3009bd85e0 100755 --- a/pkgtools/cdpack/files/cdgen.awk +++ b/pkgtools/cdpack/files/cdgen.awk @@ -1,5 +1,5 @@ #!/usr/bin/awk -f -# $NetBSD: cdgen.awk,v 1.1.1.1 2001/04/27 18:16:42 dmcmahill Exp $ +# $NetBSD: cdgen.awk,v 1.2 2001/06/02 02:03:52 dmcmahill Exp $ # # Copyright (c) 2001 Dan McMahill, All rights reserved. # @@ -43,7 +43,7 @@ BEGIN { # ARGV[7] = verbose flag. "verbose=yes" for verbose output # ARGV[8] = xtra_size. How many kB are needed per CD for common files - if (ARGC != 9){ + if (ARGC != 10){ printf("%s: wrong number of arguments\n",ARGV[0]); usage(); exit(1); @@ -56,6 +56,7 @@ BEGIN { order = ARGV[4]; cdlist = ARGV[5]; xtra_size= ARGV[8]; + other_size= ARGV[9]; if (ARGV[6] ~ "dup=yes"){ dup=1; @@ -205,8 +206,22 @@ BEGIN { } } cdpkgs[cdn] = pkgn; - printf("cd number %d is partially full (%g Mb)\n",cdn, - cdtot[cdn]/1024); + +# see if the extra files will fit on the last CD + if ( (cdtot[cdn] + other_size) < maxcd ){ + printf("cd number %d is partially full (%g Mb)\n",cdn, + cdtot[cdn]/1024); + } + else{ + printf("cd number %d is full (%g Mb)\n",cdn, + cdtot[cdn]/1024); + cdn = cdn + 1; + cdtot[cdn] = other_size; + cdpkgs[cdn] = 0; + printf("cd number %d is partially full (%g Mb)\n",cdn, + cdtot[cdn]/1024); + } + } # @@ -257,8 +272,21 @@ BEGIN { } cdpkgs[cdn] = pkgn; - printf("cd number %d is partially full (%g Mb)\n",cdn, - cdtot[cdn]/1024); + +# see if the extra files will fit on the last CD + if ( (cdtot[cdn] + other_size) < maxcd ){ + printf("cd number %d is partially full (%g Mb)\n",cdn, + cdtot[cdn]/1024); + } + else{ + printf("cd number %d is full (%g Mb)\n",cdn, + cdtot[cdn]/1024); + cdn = cdn + 1; + cdtot[cdn] = other_size; + cdpkgs[cdn] = 0; + printf("cd number %d is partially full (%g Mb)\n",cdn, + cdtot[cdn]/1024); + } } # remember how many cd's there are |