On Wed, Nov 4, 2020 at 3:43 PM Tom Stellard <tstellar(a)redhat.com> wrote:
On 11/4/20 3:34 PM, Tom Hughes wrote:
> On 04/11/2020 20:31, Tom Stellard wrote:
>> On 11/4/20 3:22 PM, Tom Hughes wrote:
>>> On 04/11/2020 19:46, Tom Stellard wrote:
>>>> On 11/4/20 2:10 PM, Tom Hughes via devel wrote:
>>>>
>>>>> Also I'm suspicious about the quality of that list because it
>>>>> includes packages of mine that only use make via cmake and which
>>>>> do BR cmake which in turn requires make.
>>>>
>>>> For the purposes of this proposal, your packages still need to
>>>> BuildRequires: make. I don't want to depend on this kind of
>>>> indirect dependency to keep things working, because it can be fragile.
>>>
>>> So instead I'm supposed to somehow know what tools the tools
>>> that I use choose to invoke under the covers? Where does that
>>> insanity end exactly? Do I have to require gas because gcc
>>> will use it to assemble the code it generates?
>>>
>>
>> No, in that case gcc needs to Require: gas, because it is a run-time
>> dependency of that package.
>>
>> CMake will still work if make is not installed. Packages that use
>> cmake + Ninja should require those packages, and packages that use
>> cmake + make should require those packages too.
>
> I don't choose either. I just run cmake and it chooses what to
> use as it's default build tool. If I told it to use a specific
> build tool then I would see your point, but for the default one
> it seems reasonable that it should require it as it has made
> the decision to use it.
>
Ok, I think this is a fair point especially after the f33 change were we
are now using cmake --build and cmake --install instead of invoking make
directly.
The only issue is if cmake changes make to be a weak dependency can we
still rely on this? Do brew builds automatically install weak dependencies?
Koji/Brew disables weak dependencies. The weak dependency would be for
developer convenience.
If the change was automated and you did not have to do anything
would
you still be opposed to having your spec files updated with
BuildRequires: make
You still need BR: make.
--
真実はいつも一つ!/ Always, there's only one truth!