I am a maintainer of several packages that use CMake in the Fedora Linux.
Recently, after the following commit:
and this release:
the packages builds started to fail on CMake.
I’ve reported a Bugzilla ticket in which I gathered my observations:
The thing is I believe that the actual behavior differs from the intended behavior - I believe somewhere between the aforementioned commit and a CMake package release in Fedora, some bug was introduced.
I’m looking forward clarifying the new behavior.
The RPM packages in Fedora Linux are built with RPM macros.
One of them is the “%cmake” macro, and we use it like this:
Tree - rpms/mariadb - src.fedoraproject.org
The macro itself expands to a lot of code, and somewhere inside, there is the following:
/usr/bin/cmake \ -S "." \ -B "redhat-linux-build" \ ~~ lots of more CMake options omitted ~~
In the package SPECfile, I then use “.” option right after the macro
%cmake . \ -DBUILD_CONFIG=mysql_release \ -DFEATURE_SET="community" \ -DINSTALL_LAYOUT=RPM \ ...
So the path to the source is specified two times.
One in the macro, as
Second by the maintainer as
1/ I believe, that both options are equivalent - if either one would be removed, the function would not change.
2/ I believe, per
That it is completely irrelevant what path the maintainer specify, since it should be completely ignored, when “-S” is specified.
3/ I believe that the update of the CMake to the mentioned new version should not have caused build issues.
The workaround exists - removing the path specified by the manintainer.
However I worry, that it is just a workaround while the bugged behavior is not fixed.
Could you please describe to me what is the current intended behavior from your POV ?