On Tue, 16 Jun 2020 at 07:10, Igor Raits <ignatenkobrain@fedoraproject.org> wrote:
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA512

On Tue, 2020-06-16 at 02:21 +0200, Kevin Kofler wrote:
> Ben Cotton wrote:
> > == Summary ==
> > <code>%cmake</code> macro will be adjusted (<code>-B</code>
> > parameter)
> > to use separate build folder (already standardized
> > <code>%{_vpath_builddir}</code> macro). Additionally,
> > <code>%cmake_build</code>, <code>%cmake_install</code> and
> > <code>%ctest</code> macro will be created (and backported to the
> > older
> > supported Fedora releases) to perform various operations that are
> > commonly used with CMake in a backend-agnostic (Makefiles, Ninja,
> > etc.) way.
> >
> > Packages that will stop building are trivial to fix and will be
> > adjusted either by maintainers or change owners.
> >
> > == Owner ==
> > * Name: [[User:ignatenkobrain|Igor Raits]], [[User:besser82|Björn
> > Esser]], [[User:ngompa|Neal Gompa]]
> > * Email: ignatenkobrain@fedoraproject.org,
> > besser82@fedoraproject.org,
> > ngompa13@gmail.com
>
> How does this affect the many packages that already build in a
> separate
> build folder manually? There are even several specfile templates that
> contain the boilerplate for that.

If they assume that builddir will be in `.`, they will break. And we
will fix them.

To prevent breaking, it is enough to specify `-B .` or setting
`%{_vpath_builddir}` to `.`.

I've been using CMake very actively for around a month now and I always assumed that using the `-B` flag to point to a `build` dir is the way to go. It's even nicely covered in the Modern CMake guide: https://cliutils.gitlab.io/modern-cmake/