specifying the type prevents cmake to converthing the paths
relative to the CWD
cmake documentation:
Furthermore, if the <type> is PATH or FILEPATH and the <value> provided
on the command line is a relative path, then the set command will treat
the path as relative to the current working directory and convert it to an absolute path.
Without this check, calling `go install` with a wrong go_import_path
might end up downloading the source code for said package (using git,
for example), instead of building from the provided tarball. The first
line of go.mod should be "module $go_import_path" for Go to not try and
download source code instead of using what it has locally.
Fixes#27690.
This prevents pytest from collecting tests multiple times when
they are bundled in the wheel itself alongside the source tree.
Closes: #43946 [via git-merge-pr]
Also: do not compile bytecode in `do_install()` since it will be removed
in `post_install()`.
Co-authored-by: Gonzalo Tornaría <tornaria@cmat.edu.uy>
Co-authored-by: Andrew J. Hesford <ajh@sideband.org>
Closes: #44071.
Python packages built with pep517 system occasionally require
accessing distinfo files and/or entry points provided by the
package for tests to run. Since these assets are packed inside
the wheel generated in `do_build`, the target wheel is unpacked
in `do_check` first so that the said artifacts are accessible
during test runs.
WARNING: Running the setup command as `meson [options]` instead of
`meson setup [options]` is ambiguous and deprecated.
meson setup works since 0.42 and this deprecation warning was introduced
in 0.64
-s Omit the symbol table and debug information.
-w Omit the DWARF symbol table.
both are not necessary because xbps-src should strip binaries itself
this does not fit in an xlint because of multiline-string handling woes
They're used by QtBuildInternals to find other components configuration.
With QT_HOST_PATH and QT_HOST_PATH_CMAKE_DIR set, cmake will only look
into those directories.
When naming wheels, hyphens are converted to underscores in package
names. Recognizing this in the build style eliminates manual definition
of `make_install_target` in several templates.
All environment variables setting in command execution must be put
before any non-variables-like, otherwise, they're intepretted as
something else.
Fix: 71b11fdbdb, (xbps-src: add make_check_pre, 2022-02-28)
$make_check_pre can be used for wrapper commands like xvfb-run or
dbus-run-session which are common ways to make tests work. This way many
templates can avoid defining their own do_check function.
Normally, we can add them into configure_args directly.
However, if we need to link with 2 or more libaries (e.g. -latomic
and -lexecinfo on armv6-musl), we have noway to do it properly:
- configure_args will be splited on whitespace
- cmake denies to recognise CMAKE_*_STANDARD_LIBRARIES as a list,
hence denies to split on semicolon (";")
Let's pass LIBS as CMAKE_*_STANDARD_LIBRARIES instead.