| Age | Commit message (Collapse) | Author |
|
Otherwise the regex might pick up a query of the resulting version var, e.g.:
> if(CMAKE_MINIMUM_REQUIRED_VERSION VERSION_LESS 2.8.12)
Bug: https://bugs.gentoo.org/958923
Signed-off-by: Andreas Sturmlechner <asturm@gentoo.org>
|
|
See examples:
https://bugs.gentoo.org/953075
https://bugs.gentoo.org/957670
https://bugs.gentoo.org/957671
https://bugs.gentoo.org/957803
Signed-off-by: Andreas Sturmlechner <asturm@gentoo.org>
|
|
Thanks-to: Ionen Wolkens <ionen@gentoo.org>
Closes: https://bugs.gentoo.org/957990
Signed-off-by: Andreas Sturmlechner <asturm@gentoo.org>
|
|
- _cmake_minverreq-lt(): New function for reusability of regex
- Optimise #1: Reuse existing loop over CMakeLists.txt files
- Optimise #2: If _CMAKE_MINREQVER_UNSUPPORTED is already set, then no
further run of _cmake_minverreq-lt is necessary since we currently throw
away the info on affected files
- Relegate "CMake 4 detected; ..." to be a non-QA Notice, it is just an
addendum
Signed-off-by: Andreas Sturmlechner <asturm@gentoo.org>
|
|
Allows to split detection/eqawarn and applying cmakearg over different
phases.
Signed-off-by: Andreas Sturmlechner <asturm@gentoo.org>
|
|
Otherwise sed may fail (as it can't find the files) on directories/files
with spaces in the path, as is the case in dev-build/cmake itself
where it'll die in src_prepare.
Signed-off-by: Sam James <sam@gentoo.org>
|
|
See also:
https://github.com/gentoo/kde/pull/1046#pullrequestreview-2897140501
Signed-off-by: Andreas Sturmlechner <asturm@gentoo.org>
|
|
50% less find
50% less grep
100% less cut
Signed-off-by: Andreas Sturmlechner <asturm@gentoo.org>
|
|
See also: https://github.com/gentoo/gentoo/pull/39544
Signed-off-by: Michał Górny <mgorny@gentoo.org>
Signed-off-by: Andreas Sturmlechner <asturm@gentoo.org>
|
|
Bug: https://bugs.gentoo.org/945081
Signed-off-by: Michał Górny <mgorny@gentoo.org>
Signed-off-by: Andreas Sturmlechner <asturm@gentoo.org>
|
|
Signed-off-by: Andreas Sturmlechner <asturm@gentoo.org>
|
|
Signed-off-by: Andreas Sturmlechner <asturm@gentoo.org>
|
|
Signed-off-by: Andreas Sturmlechner <asturm@gentoo.org>
|
|
We don't want more than one version for the subsequent ver_test.
Besides, any follow-up cmake_minimum_required call will most likely
be conditional for some type of workarounds.
Thanks-to: Michał Górny <mgorny@gentoo.org>
Signed-off-by: Andreas Sturmlechner <asturm@gentoo.org>
|
|
As a quick fix, for now, don't error out on that.
> ERROR: media-gfx/darktable-5.0.1-r2::gentoo failed (configure phase):
> __eapi7_ver_compare: invalid version: 3.12..16
See also:
> LibRaw-cmake/CMakeLists.txt:cmake_minimum_required(VERSION 3.12..16)
Signed-off-by: Andreas Sturmlechner <asturm@gentoo.org>
|
|
Signed-off-by: Andreas Sturmlechner <asturm@gentoo.org>
|
|
-DCMAKE_POLICY_VERSION_MINIMUM=3.5
Signed-off-by: Andreas Sturmlechner <asturm@gentoo.org>
|
|
We need to ramp up detection of unsupported CMake build systems with
CMake 4. This will detect CMakeLists.txt files setting insufficient
cmake_minimum_required VERSION level even in project subdirectories,
putting out appropriate eqawarn message about the need to fix ${PN}.
That makes us not rely on tinderbox runs w/ unmasked cmake-4 slowly
being able to build everything up to leaf packages, and also helps
detect insufficient subproject minimums that could otherwise be masked
by USE flag choice.
Bug: https://bugs.gentoo.org/951350
Signed-off-by: Andreas Sturmlechner <asturm@gentoo.org>
|
|
This makes life easier for tinderboxes, but we should improve this in some future
EAPI.
Signed-off-by: Sam James <sam@gentoo.org>
|
|
Signed-off-by: Andreas Sturmlechner <asturm@gentoo.org>
|
|
Signed-off-by: Andreas Sturmlechner <asturm@gentoo.org>
|
|
Signed-off-by: Andreas Sturmlechner <asturm@gentoo.org>
|
|
Bug: https://bugs.gentoo.org/926121
Signed-off-by: Andreas Sturmlechner <asturm@gentoo.org>
|
|
Bug: https://bugs.gentoo.org/927160
Signed-off-by: Andreas Sturmlechner <asturm@gentoo.org>
|
|
Modify cmake_src_prepare to qoute escape filenames
within the find search patterns
This resolves build issues with some EAPI 7 packages,
i.e. sys-fs/dislocker via catalyst
Bug: https://bugs.gentoo.org/811486
Signed-off-by: Nic Boet <nic@boet.cc>
Closes: https://github.com/gentoo/gentoo/pull/35125
Signed-off-by: Andreas Sturmlechner <asturm@gentoo.org>
|
|
Signed-off-by: Sam James <sam@gentoo.org>
|
|
Signed-off-by: Sam James <sam@gentoo.org>
|
|
Bug: https://bugs.gentoo.org/920845
Signed-off-by: Andreas Sturmlechner <asturm@gentoo.org>
|
|
Bug: https://bugs.gentoo.org/920846
Signed-off-by: Andreas Sturmlechner <asturm@gentoo.org>
|
|
Signed-off-by: Andreas Sturmlechner <asturm@gentoo.org>
|
|
This is an array, and users cannot even set arrays through
the environment.
Must have been a copy/paste oversight (skipping ML review).
Signed-off-by: Ionen Wolkens <ionen@gentoo.org>
Signed-off-by: Andreas Sturmlechner <asturm@gentoo.org>
|
|
Signed-off-by: Michał Górny <mgorny@gentoo.org>
Signed-off-by: Andreas Sturmlechner <asturm@gentoo.org>
|
|
Signed-off-by: Matt Turner <mattst88@gentoo.org>
Signed-off-by: Andreas Sturmlechner <asturm@gentoo.org>
|
|
When S=${WORKDIR}, cmake.eclass would create its build directory (if CMAKE_USE_DIR
is unset) above WORKDIR(!) as ${WORKDIR}_build. Creating directories above
WORKDIR is not legal.
Portage has its own bug (bug #889418) in that it doesn't clean up unknown directories
above WORKDIR in PORTAGE_TMPDIR, so combined, you get a problem where "ebuild ... clean" doesn't
actually clean things up at all, and you get very confusing issues if e.g. changing
CC between runs.
The explicit S=WORKDIR check isn't truly needed but it makes explicit our
intent here.
Bug: https://bugs.gentoo.org/889418
Closes: https://bugs.gentoo.org/889420
Signed-off-by: Sam James <sam@gentoo.org>
Signed-off-by: Andreas Sturmlechner <asturm@gentoo.org>
|
|
When performing a SYSROOT= build, the --sysroot parameter was not
getting passed to the compiler if the CBUILD and CHOST matched. This
results in the build attempting to use BROOT libraries and headers
instead of the ones from the SYSROOT.
This change will allow `llvm` to be built into a new SYSROOT.
ROOT=/build/amd64-host emerge sys-devel/llvm
Signed-off-by: Raul E Rangel <rrangel@chromium.org>
Closes: https://github.com/gentoo/gentoo/pull/30658
Signed-off-by: James Le Cuirot <chewi@gentoo.org>
Signed-off-by: Andreas Sturmlechner <asturm@gentoo.org>
|
|
All of this was ported away from long ago, cmake-utils.eclass was removed
almost a year ago.
Signed-off-by: Andreas Sturmlechner <asturm@gentoo.org>
|
|
This avoids globbing, see: https://www.shellcheck.net/wiki/SC2223
Signed-off-by: Ulrich Müller <ulm@gentoo.org>
Signed-off-by: Andreas Sturmlechner <asturm@gentoo.org>
|
|
samurai is a ninja-compatible build tool written in C which
works with cmake, meson and other users of ninja.
It is feature-complete and supports most of the same options
as ninja.
Signed-off-by: orbea <orbea@riseup.net>
Signed-off-by: Sam James <sam@gentoo.org>
Signed-off-by: Andreas Sturmlechner <asturm@gentoo.org>
|
|
We previously set CMAKE_FIND_ROOT_PATH, but CMAKE_SYSROOT also sets this
and more. The latter is needed when cross-compiling Fortran code such as
sci-libs/lapack. Without this, it uses the toolchain's default sysroot,
adds a -L/usr/${CHOST}/usr/lib flag based on that, reads the libc.so.6
ld script from this directory, does not apply any sysroot to the paths
within because the script is outside the sysroot, and finally fails when
attempting to link the host's libc.so.6.
Signed-off-by: James Le Cuirot <chewi@gentoo.org>
Signed-off-by: Andreas Sturmlechner <asturm@gentoo.org>
|
|
Closes: https://github.com/gentoo/gentoo/pull/30061
Signed-off-by: David Seifert <soap@gentoo.org>
Signed-off-by: Andreas Sturmlechner <asturm@gentoo.org>
|
|
Signed-off-by: Sam James <sam@gentoo.org>
Signed-off-by: Andreas Sturmlechner <asturm@gentoo.org>
|
|
It's a policy requirement that ebuilds produce verbose logs, so ebuilds themselves
must not set CMAKE_VERBOSE. But users can.
Signed-off-by: Sam James <sam@gentoo.org>
Signed-off-by: Andreas Sturmlechner <asturm@gentoo.org>
|
|
See also:
https://gitlab.kitware.com/cmake/cmake/-/merge_requests/8287
Bug: https://bugs.gentoo.org/835799
Signed-off-by: Andreas Sturmlechner <asturm@gentoo.org>
|
|
This uses eval in a similar way to econf and meson.eclass.
Closes: https://github.com/gentoo/gentoo/pull/29839
Signed-off-by: Mike Gilbert <floppym@gentoo.org>
Signed-off-by: Andreas Sturmlechner <asturm@gentoo.org>
|
|
Signed-off-by: Andreas Sturmlechner <asturm@gentoo.org>
|
|
Signed-off-by: Sam James <sam@gentoo.org>
Signed-off-by: Andreas Sturmlechner <asturm@gentoo.org>
|
|
This is from cmake-utils.eclass and the use_enable-style functions
it refers to are long-banned.
Signed-off-by: Sam James <sam@gentoo.org>
Signed-off-by: Andreas Sturmlechner <asturm@gentoo.org>
|
|
Signed-off-by: Alfred Persson Forsberg <cat@catcream.org>
Closes: https://github.com/gentoo/gentoo/pull/27052
Signed-off-by: Sam James <sam@gentoo.org>
|
|
Signed-off-by: Michał Górny <mgorny@gentoo.org>
Signed-off-by: Andreas Sturmlechner <asturm@gentoo.org>
|
|
Bug: https://bugs.gentoo.org/835396
Signed-off-by: Ulrich Müller <ulm@gentoo.org>
Signed-off-by: Andreas Sturmlechner <asturm@gentoo.org>
|