[pacman-dev] [PATCH v5] makepkg: Move parseopts from library to libmakepkg
Allan McRae
allan at archlinux.org
Wed Oct 12 05:57:38 UTC 2016
On 12/10/16 14:28, Allan McRae wrote:
> On 10/10/16 18:47, Alad Wenter wrote:
>> parseopts is used in makepkg and other scripts such as pacman-key as a
>> getopt replacement.
>>
>> Instead of including it in those scripts via a macro, move it to
>> libmakepkg/util/parseopts.sh and have scripts source this file where
>> appropriate.
>>
>> To keep the parseopts test, a new variable was introduced:
>> PM_LIBMAKEPKG_DIR
>>
>> Signed-off-by: Alad Wenter <alad at archlinux.info>
>> ---
>> v5: update README
>
>
> I did a minor rebase to get this to apply. Everything is fine with the
> patch apart from...
>
> FAIL: test/scripts/pacman-db-upgrade-v9
>
> The problem is that the in tree build is not able to determine library
> location. This happened with makepkg too, and I solved it with a
> wrapper function. Let me see if I can generalise this...
>
Committed on top of my last patch with the following changes:
diff --git a/scripts/.gitignore b/scripts/.gitignore
index b0cb23f..3a5ac8a 100644
--- a/scripts/.gitignore
+++ b/scripts/.gitignore
@@ -1,9 +1,9 @@
makepkg
makepkg-template
-makepkg-wrapper
pacman-db-upgrade
pacman-key
pkgdelta
repo-add
repo-elephant
repo-remove
+*-wrapper
diff --git a/scripts/Makefile.am b/scripts/Makefile.am
index 89ac677..3d304dd 100644
--- a/scripts/Makefile.am
+++ b/scripts/Makefile.am
@@ -103,7 +103,10 @@ LIBMAKEPKG_DIST = \
$(addsuffix .in, $(LIBMAKEPKG_IN))
WRAPPER = \
- makepkg-wrapper
+ makepkg-wrapper \
+ pacman-db-upgrade-wrapper \
+ pacman-key-wrapper \
+ pkgdelta-wrapper
COMPLETION_IN = \
completion/bash_completion \
diff --git a/scripts/pacman-db-upgrade.sh.in
b/scripts/pacman-db-upgrade.sh.in
index 62f4285..2bf444e 100644
--- a/scripts/pacman-db-upgrade.sh.in
+++ b/scripts/pacman-db-upgrade.sh.in
@@ -28,13 +28,13 @@ export TEXTDOMAINDIR='@localedir@'
declare -r myver='@PACKAGE_VERSION@'
+m4_include(library/output_format.sh)
+
LIBRARY=${LIBRARY:-'@libmakepkgdir@'}
# Import parseopts.sh
source "$LIBRARY"/util/parseopts.sh
-m4_include(library/parseopts.sh)
-
usage() {
printf "pacman-db-upgrade (pacman) %s\n" "${myver}"
echo
More information about the pacman-dev
mailing list