From: voidlinux-github@inbox.vuxu.org
To: ml@inbox.vuxu.org
Subject: Re: [PR PATCH] [Updated] xbps-src: add back support for 32bit dependencies
Date: Mon, 21 Oct 2019 18:03:26 +0200 [thread overview]
Message-ID: <20191021160326.k2YY8-NF9_e20UA7ZVVAtkLvhRVoaPFcielVYMp7Kjc@z> (raw)
In-Reply-To: <gh-mailinglist-notifications-41a7ca26-5023-4802-975b-f1789d68868e-void-packages-14822@inbox.vuxu.org>
[-- Attachment #1: Type: text/plain, Size: 611 bytes --]
There is an updated pull request by Duncaen against master on the void-packages repository
https://github.com/Duncaen/void-packages 32bit
https://github.com/void-linux/void-packages/pull/14822
xbps-src: add back support for 32bit dependencies
This will use xbps-query to see if packages that don't have a template file already exist and allows building packages like `gcc-multilib` again.
If the package doesn't exist already it will just error out, because `xbps-src` can't switch to a 32bit masterdir to build it.
A patch file from https://github.com/void-linux/void-packages/pull/14822.patch is attached
[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-32bit-14822.patch --]
[-- Type: text/x-diff, Size: 5930 bytes --]
From bfb46b467324fdde80e0b9d8e326a5bb8260ffcd Mon Sep 17 00:00:00 2001
From: Duncaen <duncaen@voidlinux.org>
Date: Sun, 29 Sep 2019 19:15:44 +0200
Subject: [PATCH] xbps-src: add back support for 32bit dependencies
---
common/xbps-src/shutils/build_dependencies.sh | 64 ++++++++++++++-----
1 file changed, 49 insertions(+), 15 deletions(-)
diff --git a/common/xbps-src/shutils/build_dependencies.sh b/common/xbps-src/shutils/build_dependencies.sh
index 26e24232ad8..8a706ddb8f1 100644
--- a/common/xbps-src/shutils/build_dependencies.sh
+++ b/common/xbps-src/shutils/build_dependencies.sh
@@ -145,11 +145,20 @@ install_pkg_deps() {
# Host build dependencies.
#
if [[ ${hostmakedepends} ]]; then
+ local templates=""
# check validity
for f in ${hostmakedepends}; do
- if [ ! -f $XBPS_SRCPKGDIR/$f/template ]; then
- msg_error "$pkgver: host dependency '$f' does not exist!\n"
+ if [ -f $XBPS_SRCPKGDIR/$f/template ]; then
+ templates+=" $f"
+ continue
+ fi
+ local _repourl=$($XBPS_QUERY_CMD -R -prepository "$f" 2>/dev/null)
+ if [ "$_repourl" ]; then
+ echo " [host] ${f}: found (${_repourl})"
+ host_binpkg_deps+=("$f")
+ continue
fi
+ msg_error "$pkgver: host dependency '$f' does not exist!\n"
done
while read -r _depname _deprepover _depver _subpkg _repourl; do
_vpkg=${_subpkg}-${_depver}
@@ -179,18 +188,27 @@ install_pkg_deps() {
echo " [host] ${_vpkg}: not found"
host_missing_deps+=("$_vpkg")
fi
- done < <($XBPS_CHECKVERS_CMD ${XBPS_SKIP_REMOTEREPOS:+-i} -D $XBPS_DISTDIR -sm ${hostmakedepends})
+ done < <($XBPS_CHECKVERS_CMD ${XBPS_SKIP_REMOTEREPOS:+-i} -D $XBPS_DISTDIR -sm $templates)
fi
#
# Host check dependencies.
#
if [[ ${checkdepends} ]] && [[ $XBPS_CHECK_PKGS ]]; then
+ local templates=""
# check validity
for f in ${checkdepends}; do
- if [ ! -f $XBPS_SRCPKGDIR/$f/template ]; then
- msg_error "$pkgver: check dependency '$f' does not exist!\n"
+ if [ -f $XBPS_SRCPKGDIR/$f/template ]; then
+ templates+=" $f"
+ continue
+ fi
+ local _repourl=$($XBPS_QUERY_CMD -R -prepository "$f" 2>/dev/null)
+ if [ "$_repourl" ]; then
+ echo " [host] ${f}: found (${_repourl})"
+ host_binpkg_deps+=("$f")
+ continue
fi
+ msg_error "$pkgver: check dependency '$f' does not exist!\n"
done
while read -r _depname _deprepover _depver _subpkg _repourl; do
_vpkg=${_subpkg}-${_depver}
@@ -220,18 +238,27 @@ install_pkg_deps() {
echo " [check] ${_vpkg}: not found"
host_missing_deps+=("$_vpkg")
fi
- done < <($XBPS_CHECKVERS_CMD ${XBPS_SKIP_REMOTEREPOS:+-i} -D $XBPS_DISTDIR -sm ${checkdepends})
+ done < <($XBPS_CHECKVERS_CMD ${XBPS_SKIP_REMOTEREPOS:+-i} -D $XBPS_DISTDIR -sm ${templates})
fi
#
# Target build dependencies.
#
if [[ ${makedepends} ]]; then
+ local templates=""
# check validity
for f in ${makedepends}; do
- if [ ! -f $XBPS_SRCPKGDIR/$f/template ]; then
- msg_error "$pkgver: target dependency '$f' does not exist!\n"
+ if [ -f $XBPS_SRCPKGDIR/$f/template ]; then
+ templates+=" $f"
+ continue
+ fi
+ local _repourl=$($XBPS_QUERY_CMD -R -prepository "$f" 2>/dev/null)
+ if [ "$_repourl" ]; then
+ echo " [target] ${f}: found (${_repourl})"
+ binpkg_deps+=("$f")
+ continue
fi
+ msg_error "$pkgver: target dependency '$f' does not exist!\n"
done
while read -r _depname _deprepover _depver _subpkg _repourl; do
_vpkg=${_subpkg}-${_depver}
@@ -261,18 +288,26 @@ install_pkg_deps() {
echo " [target] ${_vpkg}: not found"
missing_deps+=("$_vpkg")
fi
- done < <($XBPS_CHECKVERS_XCMD ${XBPS_SKIP_REMOTEREPOS:+-i} -D $XBPS_DISTDIR -sm ${makedepends})
+ done < <($XBPS_CHECKVERS_XCMD ${XBPS_SKIP_REMOTEREPOS:+-i} -D $XBPS_DISTDIR -sm $templates)
fi
#
# Target run time dependencies
#
if [[ ${depends} ]]; then
- _deps=$(setup_pkg_depends "" 1) || exit 1
- for f in ${_deps}; do
- if [ ! -f $XBPS_SRCPKGDIR/$f/template ]; then
- msg_error "$pkgver: runtime dependency '$f' does not exist!\n"
+ local templates=""
+ local _cleandeps=$(setup_pkg_depends "" 1) || exit 1
+ for f in ${_cleandeps}; do
+ if [ -f $XBPS_SRCPKGDIR/$f/template ]; then
+ templates+=" $f"
+ continue
+ fi
+ local _repourl=$($XBPS_QUERY_CMD -R -prepository "$f" 2>/dev/null)
+ if [ "$_repourl" ]; then
+ echo " [target] ${f}: found (${_repourl})"
+ continue
fi
+ msg_error "$pkgver: target dependency '$f' does not exist!\n"
done
while read -r _depname _deprepover _depver _subpkg _repourl; do
_vpkg=${_subpkg}-${_depver}
@@ -301,8 +336,7 @@ install_pkg_deps() {
echo " [runtime] ${_vpkg}: not found"
missing_rdeps+=("$_vpkg")
fi
- done < <($XBPS_CHECKVERS_XCMD ${XBPS_SKIP_REMOTEREPOS:+-i} -D $XBPS_DISTDIR -sm $_deps)
- unset _deps
+ done < <($XBPS_CHECKVERS_XCMD ${XBPS_SKIP_REMOTEREPOS:+-i} -D $XBPS_DISTDIR -sm $templates)
fi
if [ -n "$XBPS_BUILD_ONLY_ONE_PKG" ]; then
next prev parent reply other threads:[~2019-10-21 16:03 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-09-29 17:18 [PR PATCH] " voidlinux-github
2019-09-29 17:19 ` [PR PATCH] [Updated] " voidlinux-github
2019-09-29 17:19 ` voidlinux-github
2019-09-29 18:20 ` voidlinux-github
2019-09-29 18:20 ` voidlinux-github
2019-09-29 18:22 ` voidlinux-github
2019-09-29 18:22 ` voidlinux-github
2019-10-21 16:03 ` voidlinux-github [this message]
2019-10-21 16:03 ` voidlinux-github
2019-10-21 16:04 ` voidlinux-github
2019-10-21 16:04 ` voidlinux-github
2019-10-21 16:37 ` [PR PATCH] [Merged]: " voidlinux-github
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=20191021160326.k2YY8-NF9_e20UA7ZVVAtkLvhRVoaPFcielVYMp7Kjc@z \
--to=voidlinux-github@inbox.vuxu.org \
--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).