diff options
| author | Michael Forney <mforney@mforney.org> | 2016-12-11 16:04:20 -0800 |
|---|---|---|
| committer | Michael Forney <mforney@mforney.org> | 2016-12-13 23:10:30 -0800 |
| commit | 293f5a93b77d92fd65db7f3d0df654f102e46cfb (patch) | |
| tree | 6ecd1170e3dd793862dd852814dc1b4cd5e44260 /setup.rc | |
| parent | 9a506a6834df01a26795cea222b410f206efa9fa (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 'setup.rc')
| -rwxr-xr-x | setup.rc | 12 |
1 files changed, 8 insertions, 4 deletions
@@ -1,9 +1,5 @@ #!/bin/rc -. ./config.rc - -flag e + - fn usage { echo 'usage: '$0' [dir]' >[1=2] exit 2 @@ -11,6 +7,12 @@ fn usage { if(! ~ $#* 0 1) usage +if(! [ -f config.rc ]) + cp config.def.rc config.rc +. ./config.rc + +flag e + + # call this after a command capture to ensure it succeeded fn checkstatus {} @@ -29,6 +31,8 @@ fn subgen { } fn gen { + pkg=`{basename $1} + checkstatus if(~ $dir '' .) dir=$1 if not dir=$dir/$1 |
