Packages with debug symbols do invalidate their cache with every version
change since $wrksrc does contain the version number and is getting cached
Closes: #33002 [via git-merge-pr]
Hasn't been necessary in Go for a long time [1], so we should take
advantage of that. For an example of the advantages, the 'micro' editor
went from 15MB to 11MB on disk.
[1] https://honnef.co/posts/2016/10/go-and-strip/
We call this "zig-build" instead of just "zig" as this build-style
relies on usage of the zig build system. In the future, other build
systems such as meson may support zig code. Furthermore, the zig
build system may be used to build C/C++ code as well, not just zig.
--dev-bind isn't necessary in any case it was being used for. We can
also use --ro-bind for /void-packages.
A possible future improvement would be to mount / read only during the
actual build.
Also exec bwrap, as done in the uchroot and uunshare chroot styles. And
update homepage.
The -l option causes a looser behavior of patch(1), where patches
are applied when there is a match with no regard to leading
whitespace. This means that it is possible to get false positives:
for example, in srcpkgs/glu, there is a patch that was supposed
to be long gone (since the release already includes it) but it
was overlooked since with -l it happens to apply in a different
portion of the source (where it is wrong).
Avoid these cases.
Message contained one of many packages to install,
incorrectly suggesting that this is problematic one.
Remove that. List of packages is printed on previous line.
In a discussion a year ago [1], I proposed dropping versioned libs
subpackages and the consensus was that the versioning should be kept.
Since then, protobuf has been updated several times and we've always
been able to migrate all dependants, so there's no need to keep the
versioned packages around just in case that can't happen some day.
Let's drop the versioned packages to make upgrades easier and avoid
polluting repo indexes with old packages that don't get cleaned. Users
who need old versions of the libs for un-packaged software may need to
build those old versions by hand, but this is just one of the pitfalls
of using a rolling Linux distribution.
[1]: https://github.com/void-linux/void-packages/pull/18691
- enable pthreads build
- switch gp binary to static link libpari; this offsets the slowdown due
to pthreads
- use -flto and -fno-semantic-interposition which improve speed a little
bit more
- ship the static library, so external programs can static link
- change of maintainer agreed by sgn
I had to add a minimal patch to the makefile, so that the build step
builds and the install step installs. I will try to upstream that patch.
This commit is only to unlock builders.
Builds error out with:
=> debug-me-1.20200820_2: running do_build ...
=> Using stack config in stack.yaml.
Cabal file info not found for posix-pty-0.2.1.1, updating
Selected mirror https://hackage.haskell.org/
Downloading root
Waiting to acquire cache lock on /builddir/debug-me-1.20200820/.stack/pantry/hackage/hackage-security-lock
fdLock: invalid argument (Invalid argument)
Tracked in: #32221
- stop versioning the libpoppler subpackage, we always rebuild
dependants anyway
- add boost since it makes the splash backend much faster [1], but make
it a build option so disabling is easy and any eventual Boost API
breaks are easily overcome
[1] https://gitlab.freedesktop.org/poppler/poppler/-/issues/1080
Instead of using file(1) to check for ELF files, just read bytes
directly from the file and check if they are the ELF magic bytes.
Should probably be factored out into a common function that can be used
in other places, if necessary.
Also use awk instead of "grep|awk" for some minor speedup.
Historically, PKGDESTDIR was only set during pkg_install, and
XBPS_PKGDESTDIR was set to indicate that we're in subpkg's
pkg_install.
However, from 0b95cb8f5d, (Merge xbps-src code to make it usable in
a standalone mode., 2014-03-22), PKGDESTDIR is always set,
regardless of states.
Let's drop all usages of XBPS_PKGDESTDIR.
While we're at it, error out of vmove is used outside of subpkg.
`wrksrc` is supposed to be a top-level directory. Should the build
system need to be run inside a sub-directory, `build_wrksrc` should be
used instead. We change to `build_wrksrc` implicitly before `do_build`
and `do_install`.
Let's respect `build_wrksrc` in `perl-module`.
Currently fails with a hard to understand error message:
2021-04-16T11:51:36.1074291Z => ERROR: rust-std-1.51.0_1: post-install_06-strip-and-debug-pkgs: '$STRIPCMD --strip-unneeded "$f"' exited with 1
nss modules from samba, like libnss_winbind, will be used by
musl-nscd-devel, and therefore should use its headers for the
definitions of return values and others.
Without musl-nscd-devel to provide <nss.h>, samba uses a fallback header
that carries completely incompatible return value definitions.
Co-authored-by: Érico Nogueira <erico.erc@gmail.com>
Some packages require tzdata to testing, however, adding `tzdata` to
those checkdepends will break masterdir, since `tzdata` provides
`/usr/share/zoneinfo/UTC`, hence, it will be removed upon cleanup.
Let's add `tzdata` into `base-chroot` and remove the shenanigan in
`chroot.sh`.
1. Relying on `python3 -m pytest --help` to test for pytest can fail
because the pytest packages's __main__ is still invoked; this can
trigger import problems and falsely indicate that pytest is missing.
A simpler test is to just confirm that pytest is importable. If so,
the interpreter returns 0. Otherwise, an ImportError is thrown and
the interpreter will return 1.
2. Many templates require a custom do_check just to set PYTHONPATH to
either a build directory (especially for compiled extensions) or some
subdirectory of the source tree. Setting PYTHONPATH automatically to
the build directory should drastically reduce the need for custom
do_check in py3 templates. (This only applies to python3-module.sh
because pep517 builders will have unpredictable build directories.)
Closes: #31354.
This update breaks some C++ implementations (see [1] and
05ed2cb76b).
All packages that depend on libmicrohttpd have been checked; all but two
(psensor and retroshare) build against libmicrohttpd >= 0.9.71 by now,
and those two are easy enough to patch.
The relevant change is just switching some API return types from `int`
to an enum with the same values, so there isn't any concern about ABI
compatibility with the change (and in fact it's only a warning on a C
compiler).
[1] https://github.com/kismetwireless/kismet/issues/281
GitHub Action and fetch_upstream.sh script limits fetch depth to 200.
With such depth, should the PR was based on very old tree, we couldn't
find the merge-base to diff again.
In theory, we could replace actions/checkout and fetch_upstream.sh to
fetch more than 200 depth. However, there isn't much gain from such
change and it will increase the time to fetch upstream for all PR.
Arguably, such problematic PR couldn't be built because other steps
would build changed packages' dependencies, too.
Let's complain and exit early instead.
* CI will stop whenever a step is failing.
* We always want to enforce commit message lint
* `xlint` is reporting some false positive for license with " WITH "
Let's make the lint-commits part of xlint.sh
The HEAD given by GitHub Action is always non-fast-forward merge commit.
In the next change, lint-commits will use the tip from
"changed_templates.sh".
Let pick the correct tip for interrogation.
Also move to llvm12 and add llvm-unwind-devel to depends, since it's
required by some packages when building things with ldc.
Forcing linking against libunwind from llvm is necessary, otherwise the
resulting runtime is underlinked and fails to find the unw_* symbols it
needs. Argument taken from Alpine:
aaaa982c68/community/ldc/APKBUILD
It's in POSIX-future and some applications have started depending on it.
It's easier to backport into musl than fix each individual package.
Since we are adding a new interface to libc, update common/shlibs entry
as well. This should probably have been done for all musl updates.
And since we are here, also backport:
- isascii fix (removes the need for a patch in fceux)
- make epoll a cancellation point (fixes a bug in jack pipewire utilities)
The dot (.) inside [] matches literal dot. I don't know how it's
working, however the update-check for some packages is broken (i.e.
anthy-unicode).
Let's remove the backslash.
We need `chmod -R` to be able to cleanup after Go packages, but it's
unnecessary in most other cases. By only running it when the first `rm
-rf` fails, we optimize for the most common case and get a tiny speedup
for this build step.
- still depends on nodejs 10, which will be EOL starting May 2021
- template is very out of date (current version is 1.56.0), which shows
lack of interest for the package
- as seen in [1], depends on outdated electron9 (which void no longer
provides, if we wanted to use system electron), and that's a recent
development
[1] https://github.com/atom/atom/pull/21777