From: Duncaen <Duncaen@users.noreply.github.com>
To: ml@inbox.vuxu.org
Subject: [PR PATCH] xbps-src: simplify dbulk-dump output
Date: Wed, 10 Mar 2021 22:07:44 +0100 [thread overview]
Message-ID: <gh-mailinglist-notifications-41a7ca26-5023-4802-975b-f1789d68868e-void-packages-29387@inbox.vuxu.org> (raw)
[-- Attachment #1: Type: text/plain, Size: 847 bytes --]
There is a new pull request by Duncaen against master on the void-packages repository
https://github.com/Duncaen/void-packages dbulk-dump
https://github.com/void-linux/void-packages/pull/29387
xbps-src: simplify dbulk-dump output
* List dependencies of subpackages as part of the source packages
dependencies, knowing those is not important for the builder and
simplifies the output.
* Resolve virtual? packages through existing means in xbps-src to
avoid duplicating and possibly diverting from xbps-src's
behaviour in tools that use dbulk-dump.
* Filter out dependencies on the template itself from sub packages,
this matches the xbps-src behaviour and there is no need to
have to duplicate logic for this into the scheduling tool.
A patch file from https://github.com/void-linux/void-packages/pull/29387.patch is attached
[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-dbulk-dump-29387.patch --]
[-- Type: text/x-diff, Size: 4160 bytes --]
From bc1e37a4645befa3d8192dced0dd963614330aa3 Mon Sep 17 00:00:00 2001
From: Duncaen <duncaen@voidlinux.org>
Date: Wed, 10 Mar 2021 22:01:35 +0100
Subject: [PATCH] xbps-src: simplify dbulk-dump output
* List dependencies of subpackages as part of the source packages
dependencies, knowing those is not important for the builder and
simplifies the output.
* Resolve virtual? packages through existing means in xbps-src to
avoid duplicating and possibly diverting from xbps-src's
behaviour in tools that use dbulk-dump.
* Filter out dependencies on the template itself from sub packages,
this matches the xbps-src behaviour and there is no need to
have to duplicate logic for this into the scheduling tool.
---
common/xbps-src/shutils/build_dependencies.sh | 5 ++---
common/xbps-src/shutils/pkgtarget.sh | 2 +-
xbps-src | 21 +++++++------------
3 files changed, 11 insertions(+), 17 deletions(-)
diff --git a/common/xbps-src/shutils/build_dependencies.sh b/common/xbps-src/shutils/build_dependencies.sh
index ebf5a0bc131..d60ee556de2 100644
--- a/common/xbps-src/shutils/build_dependencies.sh
+++ b/common/xbps-src/shutils/build_dependencies.sh
@@ -32,19 +32,18 @@ setup_pkg_depends() {
if [ -z "$foo" ]; then
msg_error "$pkgver: failed to resolve virtual dependency for '$j' (missing from etc/virtual)\n"
fi
- _deps+="$foo "
+ [[ $out ]] && echo "$foo"
else
foo="$($XBPS_UHELPER_CMD getpkgdepname ${_depname} 2>/dev/null)"
if [ -z "$foo" ]; then
foo="$($XBPS_UHELPER_CMD getpkgname ${_depname} 2>/dev/null)"
[ -z "$foo" ] && foo="${_depname}"
fi
- _deps+="$foo "
+ [[ $out ]] && echo "$foo"
fi
run_depends+="${_depname} "
done
- [[ $out && $_deps ]] && echo "$_deps"
return 0
}
diff --git a/common/xbps-src/shutils/pkgtarget.sh b/common/xbps-src/shutils/pkgtarget.sh
index 6c6f03ff726..314dc5aeabe 100644
--- a/common/xbps-src/shutils/pkgtarget.sh
+++ b/common/xbps-src/shutils/pkgtarget.sh
@@ -21,7 +21,7 @@ check_pkg_arch() {
esac
done
if [ -z "$nonegation" -a -n "$match" ] || [ -n "$nonegation" -a -z "$match" ]; then
- msg_red "$pkgname: this package cannot be built for ${_arch}.\n"
+ msg_red "${pkgname}-${version}_${revision}: this package cannot be built for ${_arch}.\n"
exit 2
fi
fi
diff --git a/xbps-src b/xbps-src
index a488ed3f849..e2ecbf36e4f 100755
--- a/xbps-src
+++ b/xbps-src
@@ -891,33 +891,28 @@ case "$XBPS_TARGET" in
;;
dbulk-dump)
read_pkg
+ check_pkg_arch "$XBPS_CROSS_BUILD"
for x in pkgname version revision; do
printf '%s: %s\n' "$x" "${!x}"
done
for x in bootstrap; do
[[ ${!x} ]] && printf '%s: %s\n' "$x" "${!x}"
done
- for x in hostmakedepends makedepends depends; do
+ for x in hostmakedepends makedepends; do
arr=(${!x})
if [[ ${#arr} -gt 0 ]]; then
printf '%s:\n' "$x"
printf ' %s\n' "${arr[@]}"
fi
done
+ _cleandeps=$(setup_pkg_depends "" 1 1 | { grep -vF "$(printf "%s\n" $pkgname $subpackages)" || :; } | sort -u) || exit 1
+ if [[ $_cleandeps ]]; then
+ printf 'depends:\n'
+ printf ' %s\n' $_cleandeps
+ fi
if [[ $subpackages ]]; then
printf 'subpackages:\n'
- for x in ${subpackages}; do
- . ${XBPS_COMMONDIR}/environment/setup-subpkg/subpkg.sh
- ${x}_package
- printf ' %s\n' "$x"
- for x in depends; do
- arr=(${!x})
- if [[ ${#arr} -gt 0 ]]; then
- printf ' %s:\n' "$x"
- printf ' %s\n' "${arr[@]}"
- fi
- done
- done
+ printf ' %s\n' $subpackages
fi
;;
show-options)
next reply other threads:[~2021-03-10 21:07 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-03-10 21:07 Duncaen [this message]
2021-03-10 21:10 ` [PR PATCH] [Updated] " Duncaen
2021-03-10 21:11 ` Duncaen
2021-03-10 21:23 ` ericonr
2021-03-12 23:33 ` [PR PATCH] [Merged]: " Vaelatern
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=gh-mailinglist-notifications-41a7ca26-5023-4802-975b-f1789d68868e-void-packages-29387@inbox.vuxu.org \
--to=duncaen@users.noreply.github.com \
--cc=ml@inbox.vuxu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).