summaryrefslogtreecommitdiff
path: root/pkg/tz/tzdata.awk
diff options
context:
space:
mode:
authorMichael Forney <mforney@mforney.org>2016-12-11 16:04:20 -0800
committerMichael Forney <mforney@mforney.org>2016-12-13 23:10:30 -0800
commit293f5a93b77d92fd65db7f3d0df654f102e46cfb (patch)
tree6ecd1170e3dd793862dd852814dc1b4cd5e44260 /pkg/tz/tzdata.awk
parent9a506a6834df01a26795cea222b410f206efa9fa (diff)
Move to flat package hierarchy
Note to self: never try to move submodules again To migrate your existing submodules (more or less): set -x set -e mkdir .git/modules/pkg for old in */*/src ; do new="pkg/${old#*/}" if ! [ -f "$old/.git" ] || [ "${old%%/*}" = pkg ] ; then continue fi git -C ".git/modules/$old" config core.worktree "../../../../../$new" rmdir "$new" mv "$old" "$new" sed -e "s,$old,$new," "$new/.git" > "$new/.git.tmp" mv "$new/.git.tmp" "$new/.git" mkdir ".git/modules/${new%/src}" mv ".git/modules/$old" ".git/modules/$new" rm "${old%/src}"/*.ninja mv "${old%/src}"/*.tar.{gz,xz,bz2} "${new%/src}/" rmdir "${old%/src}" || true done sed -e 's,^\[submodule "[^/]*/,[submodule "pkg/,' .git/config > .git/config.tmp mv .git/config.tmp .git/config
Diffstat (limited to 'pkg/tz/tzdata.awk')
-rw-r--r--pkg/tz/tzdata.awk26
1 files changed, 26 insertions, 0 deletions
diff --git a/pkg/tz/tzdata.awk b/pkg/tz/tzdata.awk
new file mode 100644
index 00000000..e7b48085
--- /dev/null
+++ b/pkg/tz/tzdata.awk
@@ -0,0 +1,26 @@
+# usage: awk -f tzdata.awk repo=out/root.git out=out/pkg/tz/zoneinfo [file...]
+
+function run(cmd) {
+ status = system(cmd)
+ if (status != 0)
+ exit status
+}
+
+BEGIN {
+ cmdfmt = "rc ./scripts/hash.rc %s %s share/zoneinfo/%s %s"
+}
+
+FNR == 1 {
+ run(sprintf("zic -d %s %s", out, FILENAME))
+}
+
+$1 == "Link" {
+ s = $3
+ gsub(/[^\/]+/, "..", s)
+ s = substr(s, 1, length(s) - 2) $2
+ run(sprintf(cmdfmt, repo, 120000, $3, s))
+}
+
+$1 == "Zone" {
+ run(sprintf(cmdfmt, repo, 100644, $2, out "/" $2))
+}