Re: cmake circular dependency

Jonathan Perkin <[email protected]> Fri, 24 Jul 2026 12:05:43 +0100
Newsgroups gmane.os.netbsd.devel.packages
Message-ID <[email protected]>
* On 2026-07-21 at 23:13 BST, Greg Troxel wrote:

>Jonathan Perkin <[email protected]> writes:
>
>> I'm pretty sure this is caused by adam's groff update on Sunday, which
>> included this addition:
>>
>>   +.include "../../textproc/uchardet/buildlink3.mk"
>>
>> uchardet needs cmake to build, so cmake -> curl -> .. groff -> .. cmake.

While waiting for GitHub sync to be fixed I manually pulled in a change 
similar to what wiz committed to my macOS branch, but there are still 
other issues:

   # bob status cmake
   PKGNAME                             STATUS               REASON
   cmake-4.4.0                         unresolved           Circular dependency: cmake-4.4.0 -> curl-8.21.0 -> openldap-client-2.6.13 -> groff-1.24.1 -> netpbm-11.02.09nb8 -> libjpeg-turbo-3.2.0nb2 -> cmake-4.4.0

Adam's groff update also included this line:

   +DEPENDS+=      netpbm>=10.0:../../graphics/netpbm

but again I don't know why this is now necessary (it feels pretty 
heavyweight to me, especially as groff is often a core tool).

>> I don't know what the correct fix is here, other than to again
>> reiterate that I firmly believe we should split cmake into two
>> packages:
>>
>>  * devel/cmake-build for building packages, used by mk/
>>  * devel/cmake for end users
>
>This sounds good.  Fixing cmake seems impossible; they (and ccache4)
>don't seem to understand that build tools need to have small dependency
>footprints.
>
>bikeshed: I would call it devel/cmake-minimal, and intend that it be
>usable by people to build things, if they don't need the latest and the
>crazy features.  But it doesn't actually matter of course.

I think we're going to have to do this.  I'll see if I can get some time 
to do it.  As for which version to select, I would pick 3.31 to ensure 
the broadest support, unless there are any objections.  I don't think we 
can go any earlier due to threads like this:

   https://discourse.llvm.org/t/rfc-raising-minimum-required-cmake-version-to-3-31/91086

Cheers,

-- 
Jonathan Perkin                    pkgsrc.smartos.org
Open Source Complete Cloud   www.tritondatacenter.com