Home | History | Annotate | Download | only in sets
History log of /src/distrib/sets/join.awk
RevisionDateAuthorComments
 1.7  24-Oct-2019  rhialto Solve [ vs. \133 in join.awk which replaces fix in r1.23 of regpkg. Ok uki@.
 1.6  24-Oct-2014  riz branches: 1.6.16;
Back out previous until it can be fixed - it was causing all
sets to contain all files, which made a full build of all arches
over 150GB!

My awk isn't good enough to fix this myself in the time available.
 1.5  23-Oct-2014  apb Add vis() function, and canonicalise file names via vis(unvis($1)).

XXX: The vis() function is very limited, due to the absence of ord()
in NetBSD's awk.
 1.4  21-Oct-2014  apb Add an unvis function and use it on file names in mtree specs.

This should correct the problem that ./bin/[ was missing from the
base.tgz set, despite being listed in src/distrib/sets/base/mi
and being present in METALOG. The corresponding entry in
METALOG.sanitised has ./bin/\133 instead of ./bin/[, and that made
join.awk omit it.

XXX: The unvis() implementation in join.awk handles only a subset
of the syntax, but it's probably good enough for now.

XXX: The file names should probably be canonicalised by
vis(unvis(name)), but at present none of the file names in the set
lists really need it.

XXX: It may be a bug that entries in the set lists without
corresponding entries in METALOG are silently ignored by join.awk.
 1.3  30-Apr-2008  martin branches: 1.3.42;
Convert TNF licenses to new 2 clause variant
 1.2  19-May-2002  lukem branches: 1.2.34; 1.2.36;
getdirs.awk:
- improve parsing; explicitly skip lines we don't want and use the rest.
- keep track of which items were explicitly listed, and only output directories
at the END which weren't listed, each with a suffix of "optional".
- convert to my awk KNF

join.awk:
- when joining, output all of the matching entry from the first file
and the 2nd & subsequent lines of the entry from the second file.
- convert to my awk KNF

these changes mean that maketars use of pax will result in tar files
with the traditional behaviour of only containing the necessary
directories, rather than all the parent directories required to get to
a particular item. this latter behaviour was necessary for METALOG
(i.e UNPRIVED) pax .tgz set file generation, until the changes above
fixed it.
 1.1  13-Apr-2002  lukem - clean up SDIR (temporary directory) creation
- improve munging of NetBSD.dist and METALOG into metalog, using mtree to
"cleanup" / "merge" entries, and don't sort the result.
relies upon mtree to not change the order (see below)
- use (newly added) join.awk to output lines in metalog that are listed
in flist.${set}. join.awk doesn't require either file to be sorted
(unlike join(1)), which is required because we want to retain the
order of the metalog, because certain entries in the metalog (such
as hard links) make assumptions about the permissions of earlier entries.
this should fix [toolchain/16207]
 1.2.36.1  18-May-2008  yamt sync with head.
 1.2.34.2  05-Oct-2008  mjf Sync with HEAD.
 1.2.34.1  02-Jun-2008  mjf Sync with HEAD.
 1.3.42.3  04-Aug-2015  snj Pull up following revision(s) (requested by martin in ticket #929):
distrib/sets/join.awk: revision 1.4
Add an unvis function and use it on file names in mtree specs.
This should correct the problem that ./bin/[ was missing from the
base.tgz set, despite being listed in src/distrib/sets/base/mi
and being present in METALOG. The corresponding entry in
METALOG.sanitised has ./bin/\133 instead of ./bin/[, and that made
join.awk omit it.
XXX: The unvis() implementation in join.awk handles only a subset
of the syntax, but it's probably good enough for now.
XXX: The file names should probably be canonicalised by
vis(unvis(name)), but at present none of the file names in the set
lists really need it.
XXX: It may be a bug that entries in the set lists without
corresponding entries in METALOG are silently ignored by join.awk.
 1.3.42.2  24-Oct-2014  riz Back out #155, it was problematic on HEAD. Reapply when it's
reworked and better tested.
 1.3.42.1  24-Oct-2014  martin Pull up following revision(s) (requested by apbapb in ticket #155):
distrib/sets/join.awk: revision 1.4
distrib/sets/join.awk: revision 1.5
Add an unvis function and use it on file names in mtree specs.
This should correct the problem that ./bin/[ was missing from the
base.tgz set, despite being listed in src/distrib/sets/base/mi
and being present in METALOG. The corresponding entry in
METALOG.sanitised has ./bin/\133 instead of ./bin/[, and that made
join.awk omit it.
XXX: The unvis() implementation in join.awk handles only a subset
of the syntax, but it's probably good enough for now.
XXX: The file names should probably be canonicalised by
vis(unvis(name)), but at present none of the file names in the set
lists really need it.
XXX: It may be a bug that entries in the set lists without
corresponding entries in METALOG are silently ignored by join.awk.
Add vis() function, and canonicalise file names via vis(unvis($1)).
XXX: The vis() function is very limited, due to the absence of ord()
in NetBSD's awk.
 1.6.16.1  13-Apr-2020  martin Mostly merge changes from HEAD upto 20200411

RSS XML Feed