Previously, xbps-src would try to find checksums in template files
and not purge those found but it actually ignored everything that
had the checksums specified on multiple lines.
The reason for this is that the bash 'read' builtin reads until it
finds a newline, and if you specify multiple checksums on multiple
lines rather than on one line it would ignore all but the first.
Fix this by replacing newlines with spaces, so that it can properly
read all checksums into an array.
As reported by @pullmoll via https://github.com/void-linux/xbps/issues/190
the culprit is this assignment, rather than in the xbps code.
Tested with local and remote repos, no regressions found.
This should restore sort-dependencies behavior back to its former
behavior of not including all of the build dependencies not in
the input list in its listing.
$rval was the return code of pkg_available and not of build.sh, since
pkg_available returns 0. because of this install_cross_pkg() would
always return 0 for success.
Provide new environment variables for simplifaction of template checks:
...ENDIAN defines the (target) machine's endianness: "le" or "be".
...LIBC defines the (target) machine's C library: "glibc" or "musl".
Closes: #13356
Signed-off-by: Jürgen Buchmüller <pullmoll@t-online.de>
- use xbps-checkvers(1) to resolve dependencies.
- all dependencies are installed at once for the host and target.
- the show-build-deps target is now much faster.
- the update-bulk/show-repo-updates targets are now much faster.
- the update-sys/show-sys-updates targets are now much faster.
- the bootstrap target now works on musl hosts.
- simplified some loops.
- use cut(1) rather than awk(1) where applicable.
- multiple random changes to improve performance.
Based on work started by @Duncaen on #12433Close#12433Close#11282
- use xbps-checkvers(1) to resolve dependencies.
- all dependencies are installed at once for the host and target.
- the `show-build-deps` target is now much faster.
- the `update-bulk/show-repo-updates` targets are now much faster.
- the `update-sys/show-sys-updates` targets are now much faster.
- the `bootstrap` target now works on musl hosts.
- simplified some loops.
- use cut(1) rather than awk(1) where applicable.
- multiple random changes to improve performance.
Based on work started by @Duncaen on https://github.com/void-linux/void-packages/pull/12433
Close https://github.com/void-linux/void-packages/pull/12433
Close https://github.com/void-linux/void-packages/pull/11282
Due to -I it cannot return EEXIST, and this error value shall
be treated as a real error.
Does not change the current behaviour but will do if we drop -I.
Build dependencies are now installed with -I, --ignore-file-conflicts.
A new option introduced in xbps-0.55 that just prints
conflicting files but does not error out.
Switch to xbps-fetch and xbps-digest.
if xbps-install(1) returns EEXIST, treat it as an error,
do not ignore it.
xbps-install(1) now returns only EEXIST for file conflicts
in transaction, so that it should not be ignored.
* KDE distfile storage is based on versionned "folder".
An existing folder_version does not mean that the corresponding
distifile exists, so let's check its existence.
* wider scope for KDE urls that will use that rule.
Fine for plenty other packages, except kdb that don't follow
this hierarchy (yet)
* noarch=yes is replaced with archs=noarch
* only_for_archs= is renamed to archs=
* archs= allows the use of wildcards and negations; first matching rule applies:
* archs="*-musl" will build the pkg only for musl-libcs
* archs="~*-musl" will build the pkg only on non-musl-libc
* archs="x86_64-musl ~*-musl" will build for x86_64-musl and any non-musl
arch.
* archs= defaults to "*"
try to match the whole line from
href="/gems/${pkgname#ruby-}/versions/[VERSION NUMBERS]"
matching until the quote avoids problems like the travis gem that has
special versions like
1.8.10.travis.921.11
before it would match until 1.8.10., now it doesn't match.