summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rwxr-xr-xmove.sh32
-rwxr-xr-xreset.sh6
2 files changed, 33 insertions, 5 deletions
diff --git a/move.sh b/move.sh
index 5fe8126170..0145fff4ba 100755
--- a/move.sh
+++ b/move.sh
@@ -9,9 +9,7 @@ in_array() {
return 1 # Not Found
}
-set -e
-
-(
+move_files() (
for d in libsystemd libudev machine resolve; do
mkdir src/$d-new
mv -T src/$d src/$d-new/src
@@ -110,7 +108,7 @@ set -e
mkdir src/libsystemd/libsystemd-journal-internal
)
-(
+breakup_makefile() (
find . \( -name Makefile -o -name '*.mk' \) -delete
touch .tmp.move.all
@@ -134,8 +132,32 @@ set -e
rm .tmp.move.all
)
-(
+fixup_includes() (
find src \( -name '*.h' -o -name '*.c' \) \
-exec grep '#include "sd-' -l -- {} + |
xargs -d $'\n' sed -ri 's|#include "(sd-[^"]*)"|#include <systemd/\1>|'
)
+
+main() {
+ set -e
+
+ if [[ -n "$(git status -s)" ]] || [[ -n "$(git clean -xdn)" ]]; then
+ echo 'There are changes in the current directory.' >&2
+ exit 1
+ fi
+
+ git checkout -b postmove
+
+ move_files
+ breakup_makefile
+ fixup_includes
+
+ git add .
+ git commit -m './move.sh'
+ git merge -s ours lukeshu/postmove
+ git checkout lukeshu/postmove
+ git merge postmove
+ git branch -d postmove
+}
+
+main "$@"
diff --git a/reset.sh b/reset.sh
new file mode 100755
index 0000000000..66b629c217
--- /dev/null
+++ b/reset.sh
@@ -0,0 +1,6 @@
+#!/usr/bin/env bash
+set -e
+git checkout lukeshu/premove
+git branch -D postmove || true
+git checkout .
+git clean -xdf