set -euo pipefail
ROOT="$HOME/macports-local/dports"
PKG="sysutils/dvtm"
mkdir -p "$ROOT/$PKG/files"
cp "$(port dir dvtm)/Portfile" "$ROOT/$PKG/Portfile"
sudo port -k clean dvtm
sudo port -k extract dvtm
W="$(port -q work dvtm)/dvtm-0.15"
TMP="$(mktemp -d)"
cp "$W/dvtm.c" "$TMP/dvtm.c.orig"
cp "$W/config.def.h" "$TMP/config.def.h.orig"
cp "$TMP/dvtm.c.orig" "$TMP/dvtm.c"
cp "$TMP/config.def.h.orig" "$TMP/config.def.h"
/usr/bin/sed -i '' -E 's/^[[:space:]]*static[[:space:]]+void[[:space:]]+send\(/static void dvtm_send(/' "$TMP/dvtm.c"
/usr/bin/sed -i '' -E 's/^[[:space:]]*send\([[:space:]]*const char \*args\[\]\)/dvtm_send(const char *args[])/' "$TMP/dvtm.c"
/usr/bin/sed -i '' -E 's/\{[[:space:]]*send,/{ dvtm_send,/' "$TMP/config.def.h"
diff -u "$TMP/dvtm.c.orig" "$TMP/dvtm.c" \
> "$ROOT/$PKG/files/patch-dvtm.c-rename-send.diff"
diff -u "$TMP/config.def.h.orig" "$TMP/config.def.h" \
> "$ROOT/$PKG/files/patch-config.def.h-rename-send.diff"
PATCH_LINE='patchfiles-append patch-dvtm.c-rename-send.diff patch-config.def.h-rename-send.diff'
grep -qF "$PATCH_LINE" "$ROOT/$PKG/Portfile" || printf "\n%s\n" "$PATCH_LINE" >> "$ROOT/$PKG/Portfile"
SRC="/opt/local/etc/macports/sources.conf"
ENTRY="file://$ROOT [default]"
grep -qF "$ENTRY" "$SRC" || sudo sed -i '' "1s|^|$ENTRY\n|" "$SRC"
sudo port -v selfupdate
sudo port -f uninstall dvtm || true
sudo port -v install dvtm
command -v dvtm && dvtm -v