чување 919e94b6109a73df2f816eb8ece46f042b0229ef
родитељ 1d5fb298f8d7adb465c07e040ca0dbd41175ba8f
Аутор: Страхиња Радић <contact@strahinja.org>
Датум: Sat, 29 Apr 2023 03:54:42 +0200
Rollback on mkpk.in, mkpk upgrade mkpk fix part 3
Signed-off-by: Страхиња Радић <contact@strahinja.org>
Diffstat:
| M | .gitignore | | | 1 | - |
| M | config.mk | | | 2 | +- |
| M | mkfile | | | 5 | +---- |
| A | mkpk | | | 66 | ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
| D | mkpk.in | | | 64 | ---------------------------------------------------------------- |
измењених датотека: 5, додавања: 68(+), брисања: 70(-)
diff --git a/.gitignore b/.gitignore
@@ -3,4 +3,3 @@
*.orig
*.rej
*.session
-mkpk
diff --git a/config.mk b/config.mk
@@ -2,5 +2,5 @@ PREFIX=/
BINDIR=$DESTDIR/bin
LIBDIR=$DESTDIR/lib/mkpk
PKG=mkpk
-PKGVER=0.1.15
+PKGVER=0.1.16
GZARGS=-9kf
diff --git a/mkfile b/mkfile
@@ -9,7 +9,7 @@ MKFILES= `{find lib -name '*.mk'}
DOCS= README
MAN8= mkpk.8.gz
SCRIPTS= mkpk recent
-JUNK= mkpk $MAN8
+JUNK= $MAN8
EXTRAFILES= $EXTRAFILES $PKGDB
<lib/standard.mk
@@ -23,6 +23,3 @@ preinstall:QV:
printf " INST\t%s\n" "$mkfile"
$INSTALL -Dm0644 "$mkfile" "$LIBDIR/${mkfile##*/}"
done
-
-mkpk: mkpk.in config.mk
- $SED 's/%PKGVER%/'$PKGVER'/g' mkpk.in > $target
diff --git a/mkpk b/mkpk
@@ -0,0 +1,66 @@
+#!/bin/sh
+
+usage()
+{
+ cat <<! >&2
+Usage: ${0##*/} [operation] [package]
+operations: [ build | fetch | info | install | list | uninstall | update | upgrade ]
+!
+}
+
+error()
+{
+ local format=$1 args
+ shift
+ printf "%s: ${format}\n" "${0##*/}" $* >&2
+ exit 1
+}
+
+if [ "$(id -u)" -ne 0 ]; then
+ case "$1" in
+ list|info|"") ;;
+ *) error "You must be root to $1";;
+ esac
+fi
+case "$1" in
+ update) ;;
+ *) if [ $# -lt 2 ]; then
+ usage
+ exit 1
+ fi;;
+esac
+
+command=$1
+package=$2
+version=$3
+mkpklib=${mkpklib:-/lib/mkpk}
+MK=${MK:-/plan9/bin/mk}
+eval $("${MK}" -f "${mkpklib}"/vars.mk mkpklib="${mkpklib}")
+
+files=defaults
+case ${command} in
+ update) files=update;;
+ fetch) files=fetch;;
+ build) files=build;;
+ list) files=listfiles;;
+ info) files=info;;
+ install) files=install;;
+ upgrade) files="fetch build uninstall install";;
+ uninstall) files=uninstall;;
+ *) usage
+ exit 1;;
+esac
+
+for file in $files
+do
+ if [ "${package}" = "mkpk" ] && [ "${file}" = "uninstall" ]; then
+ eval $("${MK}" -f "${mkpklib}"/vars.mk mkpklib="${mkpklib}")
+ ln -sf "$(find ${SRCBASEDIR} -name 'mkpk-*' -type d -prune \
+ | sed 's,'${SRCBASEDIR}'/,,g' | recent)" "${SRCBASEDIR}/mkpk"
+ mkpklib=${SRCBASEDIR}/mkpk/lib
+ RECENT=${SRCBASEDIR}/mkpk/recent
+ export mkpklib RECENT
+ fi
+ "${MK}" -f "${mkpklib}"/${file}.mk mkpklib="${mkpklib}" \
+ PKGBASE="${package}"
+done
diff --git a/mkpk.in b/mkpk.in
@@ -1,64 +0,0 @@
-#!/bin/sh
-
-usage()
-{
- cat <<! >&2
-Usage: ${0##*/} [operation] [package]
-operations: [ build | fetch | info | install | list | uninstall | update | upgrade ]
-!
-}
-
-error()
-{
- local format=$1 args
- shift
- printf "%s: ${format}\n" "${0##*/}" $* >&2
- exit 1
-}
-
-if [ "$(id -u)" -ne 0 ]; then
- case "$1" in
- list|info|"") ;;
- *) error "You must be root to $1";;
- esac
-fi
-case "$1" in
- update) ;;
- *) if [ $# -lt 2 ]; then
- usage
- exit 1
- fi;;
-esac
-
-command=$1
-package=$2
-version=$3
-mkpklib=${mkpklib:-/lib/mkpk}
-MK=${MK:-/plan9/bin/mk}
-eval $("${MK}" -f "${mkpklib}"/vars.mk mkpklib="${mkpklib}")
-
-files=defaults
-case ${command} in
- update) files=update;;
- fetch) files=fetch;;
- build) files=build;;
- list) files=listfiles;;
- info) files=info;;
- install) files=install;;
- upgrade) files="fetch build uninstall install";;
- uninstall) files=uninstall;;
- *) usage
- exit 1;;
-esac
-
-for file in $files
-do
- if [ "${package}" = "mkpk" ] && [ "${file}" = "uninstall" ]; then
- eval $("${MK}" -f "${mkpklib}"/vars.mk mkpklib="${mkpklib}")
- mkpklib=${SRCBASEDIR}/mkpk-%PKGVER%/lib
- RECENT=${SRCBASEDIR}/mkpk-%PKGVER%/recent
- export mkpklib RECENT
- fi
- "${MK}" -f "${mkpklib}"/${file}.mk mkpklib="${mkpklib}" \
- PKGBASE="${package}"
-done