From 3159e223f4d8d335c79b8a64ad3e924e65d438bd Mon Sep 17 00:00:00 2001 From: Luke Shumaker Date: Wed, 7 Sep 2016 16:24:29 -0400 Subject: import move.sh --- move.sh | 382 ----------------------------------------------- reset.sh | 6 - tools/move.sh | 465 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++ tools/reset.sh | 6 + 4 files changed, 471 insertions(+), 388 deletions(-) delete mode 100755 move.sh delete mode 100755 reset.sh create mode 100755 tools/move.sh create mode 100755 tools/reset.sh diff --git a/move.sh b/move.sh deleted file mode 100755 index 4b55c869ec..0000000000 --- a/move.sh +++ /dev/null @@ -1,382 +0,0 @@ -#!/usr/bin/env bash - -in_array() { - local needle=$1; shift - local item - for item in "$@"; do - [[ $item = $needle ]] && return 0 # Found - done - return 1 # Not Found -} - -move_files() ( - for d in libsystemd libudev; do - mkdir src/$d-new - mv -T src/$d src/$d-new/src - mv -T src/$d-new src/$d - done - - for d in basic core shared; do - mv -T src/{,lib}$d - done - - mkdir src/libbasic/src - mv src/libbasic/*.c src/libbasic/src/ - mkdir src/libbasic/include - mkdir src/libbasic/include/basic - mv src/libbasic/.gitignore src/libbasic/*.h src/libbasic/include/basic/ - - mv -T src/lib{shared,core}/linux - - mkdir src/libfirewall - mv -T src/lib{shared,firewall}/firewall-util.c - mv -T src/lib{shared,firewall}/firewall-util.h - - mkdir src/libshared/src - mv src/libshared/*.c src/libshared/src/ - mkdir src/libshared/include - mkdir src/libshared/include/shared - mv src/libshared/*.h src/libshared/include/shared/ - - mkdir src/libsystemd-network/test - mv src/libsystemd-network/test-* src/libsystemd-network/test - mkdir src/libsystemd-network/src - mv src/libsystemd-network/*.c src/libsystemd-network/src/ - mkdir src/libsystemd-network/include - mkdir src/libsystemd-network/include/systemd-network - mv src/libsystemd-network/*.h src/libsystemd-network/include/systemd-network/ - - pfix=( - dbus1-generator - debug-generator - fstab-generator - getty-generator - gpt-auto-generator - rc-local-generator - system-update-generator - sysv-generator - - ac-power - activate - analyze - ask-password - backlight - binfmt - cgls - cgroups-agent - cgtop - coredump - cryptsetup - delta - detect-virt - escape - firstboot - fsck - hibernate-resume - hwdb - initctl - machine-id-setup - modules-load - notify - nspawn - path - quotacheck - random-seed - remount-fs - reply-password - rfkill - run - sleep - socket-proxy - stdio-bridge - sysctl - sysusers - timesync - tmpfiles - tty-ask-password-agent - update-done - update-utmp - user-sessions - ) - for d in "${pfix[@]}"; do - mv -T src/{,systemd-}$d - done - mv -T src/vconsole src/systemd-vconsole-setup - - dmon=( - systemd-socket-proxy - systemd-timesync - ) - for d in "${dmon[@]}"; do - mv -T "src/$d"{,d} - done - - mv -T {shell-completion/bash/,src/kernel-install/bash-completion_}kernel-install - mv -T {shell-completion/zsh/_,src/kernel-install/zsh-completion_}kernel-install - mv -T {man,src/kernel-install}/kernel-install.xml - - mkdir src/libsystemd/include - mv -T src/{,libsystemd/include}/systemd - - mkdir src/grp-machine - mv -T src/machine src/grp-machine/libmachine-core - mkdir src/grp-machine/systemd-machined - mv -T src/grp-machine/{libmachine-core,systemd-machined}/machined.c - mkdir src/grp-machine/machinectl - mv -T src/grp-machine/{libmachine-core,machinectl}/machinectl.c - mv -T src/{,grp-machine}/nss-mymachines - - mkdir src/grp-resolve - mv -T src/{resolve,grp-resolve/systemd-resolved} - mv -T src/{,grp-resolve}/nss-resolve - - mkdir src/grp-system - mv -T src/{,grp-system}/systemctl - - mkdir src/grp-system/systemd - mv -T src/{libcore,grp-system/systemd}/main.c - mv -T src/{libcore,grp-system/systemd}/macros.systemd.in - mv -T src/{libcore,grp-system/systemd}/org.freedesktop.systemd1.conf - mv -T src/{libcore,grp-system/systemd}/org.freedesktop.systemd1.policy.in.in - mv -T src/{libcore,grp-system/systemd}/org.freedesktop.systemd1.service - mv -T src/{libcore,grp-system/systemd}/system.conf - mv -T src/{libcore,grp-system/systemd}/systemd.pc.in - mv -T src/{libcore,grp-system/systemd}/triggers.systemd.in - mv -T src/{libcore,grp-system/systemd}/user.conf - - mkdir src/libudev/include - mv -T src/libudev/{src,include}/libudev.h - - mv -T src/libsystemd/{src,}/libsystemd.pc.in - mv -T src/libsystemd/{src,}/libsystemd.sym - mv -T src/libsystemd/{src,}/.gitignore - - mkdir src/systemd-shutdown - - mkdir src/grp-coredump - mv -T src/{,grp-coredump}/systemd-coredump - mkdir src/grp-coredump/coredumpctl - mv -T src/grp-coredump/{systemd-coredump,coredumpctl}/coredumpctl.c - - mkdir src/grp-boot - mv -T src/boot/efi src/grp-boot/systemd-boot - mv -T src/boot src/grp-boot/bootctl - mv -T {test,src/grp-boot/systemd-boot}/test-efi-create-disk.sh - - mkdir build-aux - mkdir build-aux/Makefile.{once,each}.{head,tail} - touch build-aux/Makefile.{once,each}.{head,tail}/.gitignore - - mkdir src/libsystemd/src/sd-journal - - libsystemd_journal_files=( - audit-type.c - audit-type.h - catalog.c - catalog.h - compress.c - compress.h - fsprg.c - fsprg.h - journal-authenticate.c - journal-authenticate.h - journal-def.h - journal-file.c - journal-file.h - journal-internal.h - journal-send.c - journal-vacuum.c - journal-vacuum.h - journal-verify.c - journal-verify.h - lookup3.c - lookup3.h - mmap-cache.c - mmap-cache.h - sd-journal.c - ) - for file in "${libsystemd_journal_files[@]}"; do - mv -T src/{journal,libsystemd/src/sd-journal}/$file - done - - mkdir src/busctl - mv src/libsystemd/src/sd-bus/busctl* src/busctl - - mv -T src/{udev,libudev/src}/udev.h - - mkdir src/grp-timedate - mv -T src/timedate src/grp-timedate/systemd-timedated - mkdir src/grp-timedate/timedatectl - mv -T src/grp-timedate/{systemd-timedated,timedatectl}/timedatectl.c - - mv -T src/{journal,grp-journal} - mv -T {,src/grp-journal/}catalog - mkdir src/grp-journal/{systemd-journald,journalctl,libjournal-core} - mv -T src/grp-journal/{,systemd-journald}/journald.c - mv -T src/grp-journal/{,journalctl}/journalctl.c - mv src/grp-journal/*.* src/grp-journal/libjournal-core/ - - mv -T src/{,grp-}journal-remote - local suffix - for suffix in gatewayd remote upload; do - mkdir src/grp-journal-remote/systemd-journal-$suffix - mv src/grp-journal-remote/journal-$suffix* src/grp-journal-remote/systemd-journal-$suffix/ - done - - mv -T src/{,grp-}hostname - mv -T src/{,grp-}locale - mv -T src/{,grp-}udev - - mv -T src/{,grp-}import - mkdir src/grp-import/systemd-importd - mv src/grp-import/{,systemd-importd}/importd.c - mkdir src/grp-import/systemd-pull - mv src/grp-import/pull* src/grp-import/systemd-pull - mkdir src/grp-import/systemd-import - mv src/grp-import/import* src/grp-import/systemd-import - mkdir src/grp-import/systemd-export - mv src/grp-import/export* src/grp-import/systemd-export - - mv -T src/{,grp-}network - mkdir src/grp-network/systemd-networkd - mv src/grp-network/{,systemd-networkd}/networkd.c - mkdir src/grp-network/systemd-networkd-wait-online - mv src/grp-network/networkd-wait-online* src/grp-network/systemd-networkd-wait-online - mkdir src/grp-network/networkctl - mv src/grp-network/{,networkctl}/networkctl.c - mkdir src/grp-network/libnetworkd-core - mv src/grp-network/networkd* src/grp-network/libnetworkd-core - - mv -T src/{,grp-}login - mkdir src/grp-login/systemd-logind - mv -T src/grp-login/{,systemd-logind}/logind.c - mv -T src/grp-login/{,systemd-logind}/logind.h - mkdir src/grp-login/liblogind-core - mv src/grp-login/logind-* src/grp-login/liblogind-core - mkdir src/grp-login/loginctl - mv -T src/grp-login/{,loginctl}/loginctl.c - mv -T src/grp-login/{,loginctl}/sysfs-show.h - mv -T src/grp-login/{,loginctl}/sysfs-show.c - mkdir src/grp-login/systemd-inhibit - mv -T src/grp-login/{,systemd-inhibit}/inhibit.c - mkdir src/grp-login/pam_systemd - mv -T src/grp-login/{,pam_systemd}/pam_systemd.c - mv -T src/grp-login/{,pam_systemd}/pam_systemd.sym - - mkdir src/grp-udev/d-udevadm - mv src/grp-udev/udevadm* src/grp-udev/d-udevadm/ - mkdir src/grp-udev/systemd-udevd - mv -T src/grp-udev/{,systemd-udevd}/udevd.c - mkdir src/grp-udev/libudev-core - mv src/grp-udev/udev* src/grp-udev/libudev-core/ - mv -T src/grp-udev/{,libudev-core}/net - mv -T src/grp-udev/{d-,}udevadm - - mv -T src/{libcore,systemd-shutdown}/shutdown.c - mv -T src/{libcore,systemd-shutdown}/umount.c - mv -T src/{libcore,systemd-shutdown}/umount.h - - mkdir src/grp-helperunits - helperunits=( - backlight - binfmt - detect-virt - quotacheck - random-seed - rfkill - sleep - vconsole-setup - user-sessions - ) - for hu in "${helperunits[@]}"; do - mv -T src/systemd-"$hu" src/grp-helperunits/systemd-"$hu" - done -) - -breakup_makefile() ( - find . \( -name Makefile -o -name '*.mk' \) -delete - - touch .tmp.move.all - files=(.tmp.move.all) - file=/dev/null - IFS='' - while read -r line; do - if [[ $line = '#@'* ]]; then - file="${line#'#@'}" - file="${file%% *}" - elif [[ $file = all ]]; then - printf '%s\n' "$line" | tee -a "${files[@]}" >/dev/null - else - if ! in_array "$file" "${files[@]}"; then - cat .tmp.move.all > "$file" - files+=("$file") - fi - printf '%s\n' "$line" >> "$file" - fi - done < <(fixup_makefile |' \ - -e 's|#include <(sd-[^>]*)>|#include |' -) - -fixup_makefile() { - sed -r \ - -e '/^[^# ]*:/ { s|^(\s*)\S+/|\1$(outdir)/| }' \ - -e 's|^if (.*)|ifneq ($(\1),)|' \ - -e 's|--version-script=.*/([^/]+)\.sym|--version-script=$(srcdir)/\1.sym|g' -} - -fixup_makefiles() ( - sed -ri \ - -e '/^ \$\(AM_V_at\)\$\(MKDIR_P\) \$\(dir \$@\)/d' \ - -e 's/ \$\(CFLAGS\) / /g' \ - -e 's/ \$\(CPPFLAGS\) / /g' \ - -e 's/ \$\(AM_CPPFLAGS\) / $(ALL_CPPFLAGS) /g' \ - -e '/^[^# ]*:/ { s|\S+/|$(outdir)/|g }' \ - src/libbasic/include/basic/Makefile \ - src/libsystemd/src/Makefile \ - src/libsystemd/src/sd-journal/Makefile \ - src/grp-udev/libudev-core/Makefile - find -type f -name Makefile|while read -r filename; do - sed -r -i "s|(/\.\.)*/config.mk|/$(realpath -ms --relative-to="${filename%/*}" config.mk)|" "$filename" - done -) - -move() ( - >&2 echo ' => move_files' - move_files - >&2 echo ' => breakup_makefile' - breakup_makefile - >&2 echo ' => fixup_includes' - fixup_includes - >&2 echo ' => fixup_makefiles' - fixup_makefiles -) - -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 - - 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 deleted file mode 100755 index 66b629c217..0000000000 --- a/reset.sh +++ /dev/null @@ -1,6 +0,0 @@ -#!/usr/bin/env bash -set -e -git checkout lukeshu/premove -git branch -D postmove || true -git checkout . -git clean -xdf diff --git a/tools/move.sh b/tools/move.sh new file mode 100755 index 0000000000..9ad99851fe --- /dev/null +++ b/tools/move.sh @@ -0,0 +1,465 @@ +#!/usr/bin/env bash + +in_array() { + local needle=$1; shift + local item + for item in "$@"; do + [[ $item = $needle ]] && return 0 # Found + done + return 1 # Not Found +} + +split_lib() { + local d=$1 + + mkdir "$d/test" + mv "$d"/test-* -t "$d/test" + + mkdir "$d/src" + mv "$d"/*.c -t "$d/src" + + local h=${d##*/lib} + mkdir "$d/include" + mkdir "$d/include/$h" + mv "$d"/*.h -t "$d/include/$h" +} + +grp() { + local grp=$1 + shift + mkdir "$grp" + mv "$@" -t "$grp" +} + +move_files() ( + # first focus on getting directories to the right names. + mv -T src/{,systemd-}dbus1-generator + mv -T src/{,systemd-}debug-generator + mv -T src/{,systemd-}fstab-generator + mv -T src/{,systemd-}getty-generator + mv -T src/{,systemd-}gpt-auto-generator + mv -T src/{,systemd-}rc-local-generator + mv -T src/{,systemd-}system-update-generator + mv -T src/{,systemd-}sysv-generator + + mv -T src/{,systemd-}ac-power + mv -T src/{,systemd-}activate + mv -T src/{,systemd-}analyze + mv -T src/{,systemd-}ask-password + mv -T src/{,systemd-}backlight + mv -T src/{,systemd-}binfmt + mv -T src/{,systemd-}cgls + mv -T src/{,systemd-}cgroups-agent + mv -T src/{,systemd-}cgtop + mv -T src/{,systemd-}coredump + mv -T src/{,systemd-}cryptsetup + mv -T src/{,systemd-}delta + mv -T src/{,systemd-}detect-virt + mv -T src/{,systemd-}escape + mv -T src/{,systemd-}firstboot + mv -T src/{,systemd-}fsck + mv -T src/{,systemd-}hibernate-resume + mv -T src/{,systemd-}hwdb + mv -T src/{,systemd-}initctl + mv -T src/{,systemd-}machine-id-setup + mv -T src/{,systemd-}modules-load + mv -T src/{,systemd-}notify + mv -T src/{,systemd-}nspawn + mv -T src/{,systemd-}path + mv -T src/{,systemd-}quotacheck + mv -T src/{,systemd-}random-seed + mv -T src/{,systemd-}remount-fs + mv -T src/{,systemd-}reply-password + mv -T src/{,systemd-}rfkill + mv -T src/{,systemd-}run + mv -T src/{,systemd-}sleep + mv -T src/{,systemd-}stdio-bridge + mv -T src/{,systemd-}sysctl + mv -T src/{,systemd-}sysusers + mv -T src/{,systemd-}tmpfiles + mv -T src/{,systemd-}tty-ask-password-agent + mv -T src/{,systemd-}update-done + mv -T src/{,systemd-}update-utmp + mv -T src/{,systemd-}user-sessions + mv -T src/vconsole src/systemd-vconsole-setup + mv -T src/socket-proxy src/systemd-socket-proxyd + mv -T src/timesync src/systemd-timesyncd + + mv src/udev/*_id -t src + mv src/udev/collect -t src + + mv -T src/boot/efi src/systemd-boot + mv -T src/boot src/bootctl + + mkdir src/busctl + mv src/libsystemd/src/sd-bus/busctl* -t src/busctl + + mkdir src/coredumpctl + mv src/coredump{,ctl}/coredumpctl.c + + mv -T src/{,lib}basic + mv -T src/{,lib}core + mv -T src/{,lib}shared + + mv -T src/lib{shared,core}/linux + + mkdir src/libfirewall + mv -T src/lib{shared,firewall}/firewall-util.c + mv -T src/lib{shared,firewall}/firewall-util.h + + split_lib src/libbasic + split_lib src/libshared + split_lib src/libsystemd-network + + mkdir src/libsystemd/include + mv -T src/{,libsystemd/include}/systemd + + # src/resolve => src/{libbasic-dns,resolve,resolved} + mkdir src/libbasic-dns + mv -t src/libbasic-dns \ + src/resolve/dns-type.{c,h} \ + src/resolve/resolved-dns-{anser,dnssec,packet,question,rr}.{c,h} \ + src/resolve/test-* + mkdir src/systemd-resolve + mv -t src/systemd-resolve \ + src/resolve/resolve-tool.c + mkdir src/systemd-resolved + mv -t src/systemd-resolved \ + src/resolve/.gitignore \ + src/resolve/* + rmdir src/resolve + + # src/import => src/{libimport,systemd-{export,importd,import}} + mkdir src/libimport + mv -t src/libimport \ + src/import/import-common.{c,h} \ + src/import/import-compress.{c,h} \ + src/import/qcow2-util.{c,h} \ + src/import/test-qcow2.h + mkdir src/systemd-export + mv -t src/systemd-export \ + src/import/export* + mkdir src/systemd-importd + mv -t src/systemd-importd \ + src/import/.gitignore \ + src/import/importd.c \ + src/import/org.* + mkdir src/systemd-import + mv -t src/systemd-import \ + src/import* + + # src/journal => src/.. + mkdir src/libjournal-core + mv -t src/libjournal-core \ + src/journal/journald-* \ + src/journal/test-* + mkdir src/systemd-cat + mv -t src/systemd-cat \ + src/journal/cat.c + mkdir src/journalctl + mv -t src/journalctl \ + src/journalctl/journal-qrcode.{c,h} \ + src/journalctl/journalctl.c + mkdir src/journald + mv -t src/journald \ + src/journal/journald.* + mkdir src/libsystemd/src/sd-journal + mv -t src/libsystemd/src/sd-journal \ + src/journal/audit-type.c \ + src/journal/audit-type.h \ + src/journal/catalog.c \ + src/journal/catalog.h \ + src/journal/compress.c \ + src/journal/compress.h \ + src/journal/fsprg.c \ + src/journal/fsprg.h \ + src/journal/journal-authenticate.c \ + src/journal/journal-authenticate.h \ + src/journal/journal-def.h \ + src/journal/journal-file.c \ + src/journal/journal-file.h \ + src/journal/journal-internal.h \ + src/journal/journal-send.c \ + src/journal/journal-vacuum.c \ + src/journal/journal-vacuum.h \ + src/journal/journal-verify.c \ + src/journal/journal-verify.h \ + src/journal/lookup3.c \ + src/journal/lookup3.h \ + src/journal/mmap-cache.c \ + src/journal/mmap-cache.h \ + src/journal/sd-journal.c + rmdir src/journal + + # src/network => src/... + mkdir src/systemd-networkd-wait-online + mv -t src/systemd-networkd-wait-online \ + network/networkd-wait-online* + mkdir src/libnetworkd-core + mv -t src/libnetworkd-core \ + network/.gitignore \ + network/networkd-* + mkdir src/networkctl + mv -t src/networkctl \ + network/networkctl.c + mkdir src/systemd-networkd + mv -t src/systemd-networkd \ + network/networkd* \ + network/org.* + rmdir network + + # src/machine => src/{machinectl,systemd-machined} + mkdir src/machinectl + mv -t src/machinectl \ + src/machine/machinectl* + mkdir src/systemd-machined + mv -t src/systemd-machined \ + machine/.gitignore \ + machine/* + + # auto-distribute the stuff + ( + cd man + for file in *.xml; do + if [[ -d ../src/"${file%.xml}" ]]; then + mv "$file" -t ../src/"${file%.xml}" + fi + done + ) + ( + cd units + for file in *; do + if [[ -d ../src/"${file%%.*}" ]]; then + mv "$file" -t ../src/"${file%%.*}" + elif [[ -d ../src/"${file%%@*}" ]]; then + mv "$file" -t ../src/"${file%%@*}" + fi + done + ) + ( + cd shell-completion/bash + for file in *; do + if [[ -d ../src/"$file" ]]; then + mv -T "$file" "../src/$file/$file.completion.bash" + fi + done + ) + ( + cd shell-completion/zsh + for file in _*; do + if [[ -d ../src/"${file#_}" ]]; then + mv -T "$file" "../src/${file#_}/${file#_}.completion.zsh" + fi + done + ) + + # categorize + grp src/grp-boot \ + src/bootctl \ + src/kernel-install \ + src/systemd-boot + grp src/grp-coredump \ + src/coredumpctl \ + src/systemd-coredump + grp src/grp-hostname \ + src/hostnamectl \ + src/systemd-hostnamed + grp src/grp-initprogs \ + src/systemd-backlight \ + src/systemd-binfmt \ + src/systemd-detect-virt \ + src/systemd-firstboot \ + src/systemd-fsck \ + src/systemd-modules-load \ + src/systemd-quotacheck \ + src/systemd-random-seed \ + src/systemd-rfkill \ + src/systemd-sysctl \ + src/systemd-sysusers \ + src/systemd-tmpfiles \ + src/systemd-update-done \ + src/systemd-update-utmp \ + src/systemd-user-sessions \ + src/systemd-vconsole-setup + grp src/grp-initprogs/grp-sleep \ + src/systemd-hibernate-resume \ + src/systemd-hibernate-resume-generator \ + src/systemd-sleep + grp src/grp-journal \ + catalog \ + src/journalctl \ + src/libjournal-core \ + src/systemd-cat \ + src/systemd-journald + grp src/grp-journal/grp-remote \ + src/systemd-journal-gatewayd \ + src/systemd-journal-remote \ + src/systemd-journal-upload + grp src/grp-locale \ + src/localectl \ + src/systemd-localed + grp src/grp-login \ + src/loginctl \ + src/pam_systemd \ + src/systemd-inhibit \ + src/systemd-logind + grp src/grp-machine \ + src/machinectl \ + src/nss-mymachines \ + src/systemd-machined + grp src/grp-machine/grp-import \ + src/libimport \ + src/systemd-export \ + src/systemd-import \ + src/systemd-importd \ + src/systemd-pull + grp src/grp-network \ + network \ + src/libnetworkd-core \ + src/networkctl \ + src/systemd-networkd \ + src/systemd-networkd-wait-online + grp src/grp-resolve \ + src/libbasic-dns \ + src/nss-resolve \ + src/systemd-resolve \ + src/systemd-resolved + grp src/systemd \ + src/libcore \ + src/systemctl \ + src/systemd + grp src/systemd/grp-utils \ + src/systemd-analyze \ + src/systemd-delta \ + src/systemd-fstab-generator \ + src/systemd-run \ + src/systemd-sysv-generator + grp src/grp-timedate \ + src/systemd-timedated \ + src/timedatectl + grp src/grp-udev \ + rules \ + src/*_id \ + src/systemd-hwdb \ + src/systemd-udevd \ + src/systemd-udevadm + grp src/grp-utils \ + src/systemd-ac-power \ + src/systemd-escape \ + src/systemd-notify \ + src/systemd-path \ + src/systemd-socket-activate +) + +breakup_makefile() ( + find . \( -name Makefile -o -name '*.mk' \) -delete + + touch .tmp.move.all + files=(.tmp.move.all) + file=/dev/null + IFS='' + while read -r line; do + if [[ $line = '#@'* ]]; then + file="${line#'#@'}" + file="${file%% *}" + elif [[ $file = all ]]; then + printf '%s\n' "$line" | tee -a "${files[@]}" >/dev/null + else + if ! in_array "$file" "${files[@]}"; then + cat .tmp.move.all > "$file" + files+=("$file") + fi + printf '%s\n' "$line" >> "$file" + fi + done < <(fixup_makefile |' \ + -e 's|#include <(sd-[^>]*)>|#include |' +) + +fixup_makefile() { + sed -r \ + -e '/^[^# ]*:/ { s|^(\s*)\S+/|\1$(outdir)/| }' \ + -e 's|^if (.*)|ifneq ($(\1),)|' \ + -e 's|--version-script=.*/([^/]+)\.sym|--version-script=$(srcdir)/\1.sym|g' +} + +fixup_makefiles() ( + sed -ri \ + -e '/^ \$\(AM_V_at\)\$\(MKDIR_P\) \$\(dir \$@\)/d' \ + -e 's/ \$\(CFLAGS\) / /g' \ + -e 's/ \$\(CPPFLAGS\) / /g' \ + -e 's/ \$\(AM_CPPFLAGS\) / $(sd.ALL_CPPFLAGS) /g' \ + -e '/^[^# ]*:/ { s|\S+/|$(outdir)/|g }' \ + src/libbasic/include/basic/Makefile \ + src/libsystemd/src/Makefile \ + src/libsystemd/src/sd-journal/Makefile \ + src/grp-udev/libudev-core/Makefile + find -type f -name Makefile|while read -r filename; do + sed -r -i "s|(/\.\.)*/config.mk|/$(realpath -ms --relative-to="${filename%/*}" config.mk)|" "$filename" + done +) + +breakup_zshcompletion() ( + sed_expr=' + 1 { + i #compdef %s + d + } + /^case/,/^esac/ { + /^ %s)/,/^ ;;/ { + s/^ //p + } + d + } + ' + + cd shell-completion/zsh + read -r _ cmds < _systemd + for cmd in $cmds; do + printf -v cmd_sed_expr "$sed_expr" $cmd $cmd + sed -e "$cmd_sed_expr" < _systemd > _$cmd + done + rm _systemd +) + +move() ( + >&2 echo ' => breakup_zshcompletion' + breakup_zshcompletion + >&2 echo ' => move_files' + move_files + >&2 echo ' => breakup_makefile' + #breakup_makefile + >&2 echo ' => fixup_includes' + fixup_includes + >&2 echo ' => fixup_makefiles' + #fixup_makefiles +) + +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 tmp/postmove + + move + + git add . + git commit -m './move.sh' + git merge -s ours notsystemd/postmove + git checkout notsystemd/postmove + git merge tmp/postmove + git branch -d tmp/postmove +} + +main "$@" diff --git a/tools/reset.sh b/tools/reset.sh new file mode 100755 index 0000000000..d7141587fa --- /dev/null +++ b/tools/reset.sh @@ -0,0 +1,6 @@ +#!/usr/bin/env bash +set -e +git checkout notsystemd/premove +git branch -D tmp/postmove || true +git checkout . +git clean -xdf -- cgit v1.2.3-54-g00ecf