On Mon, Aug 3, 2020 at 7:04 PM Nicolas Chauvet <kwizart(a)gmail.com> wrote:
Le lun. 3 août 2020 à 23:18, Neal Gompa <ngompa13(a)gmail.com> a écrit :
>
> On Mon, Aug 3, 2020 at 3:59 PM Nicolas Chauvet <kwizart(a)gmail.com> wrote:
> >
> > Le lun. 3 août 2020 à 19:37, Neal Gompa <ngompa13(a)gmail.com> a écrit :
> > >
> > > On Mon, Aug 3, 2020 at 12:32 PM Gary Buhrmaster
> > > <gary.buhrmaster(a)gmail.com> wrote:
> > > >
> > > > On Mon, Aug 3, 2020 at 3:15 PM Richard Hughes
<hughsient(a)gmail.com> wrote:
> > > >
> > > > > Most of those are the libcroco->gettext breakage, no?
> > > >
> > > > From a very cursory scan (not at all scientific),
> > > > some percentage are the cmake macro changes.
> > >
> > > CMake macros are documented in the packaging guidelines:
> > >
https://docs.fedoraproject.org/en-US/packaging-guidelines/CMake/
> > >
> > > Here's an example of how to adjust it:
> > >
https://src.fedoraproject.org/rpms/alembic/c/83812e6c762c28c7e2141860711a...
> >
> > Can you show an example that work across all maintained releases ?
> > (aka inclusing epel7).
> >
>
> I don't have a package off-hand that is maintained across EPEL7,
> EPEL8, and Fedora, but the macros are all implemented, provided you
> are using cmake3 for EPEL7.
>
> If you don't care whether it's in-source or out-of-source build, then
> you only need to concern yourself with %cmake, %cmake_build, and
> %cmake_install (for EPEL7, %cmake3 is the prefix instead of %cmake).
The problem is that I care and usually use out of source build
(manually creating build dir and etc), but having to define
__cmake_in_source_build 1 looks miss-named if already using a
dedicated build sub-directory.
If I'm using %cmake macros without a build sub-directory, then I'm
losing the source tree versus build tree there. This is possible, but
a little backward.
Or did I miss something ?
In Fedora 33 and newer, __cmake_in_source_build is *not defined*, so
it defaults to out of source builds.
In Fedora 32 and older, including EPEL7 and EPEL8, it *is defined*, so
it defaults to in-source builds.
Doing "%undefine __cmake_in_source_build" will make the F33+ behavior
apply on older Fedora and EPEL8. You'll additionally want to do
"%undefine __cmake3_in_source_build" to make this work with EPEL7's
cmake3 package.
--
真実はいつも一つ!/ Always, there's only one truth!