Bug 266306

Summary: devel/cmake: fails to build when OPTIONS_UNSET += X11 set in the make.conf
Product: Ports & Packages Reporter: Artyom Davidov <ard_1>
Component: Individual Port(s)Assignee: freebsd-ports-bugs (Nobody) <ports-bugs>
Status: Closed Works As Intended    
Severity: Affects Some People CC: diizzy, i.dani, michael.glaus, tcberner
Priority: --- Flags: i.dani: maintainer-feedback? (tcberner)
i.dani: maintainer-feedback? (diizzy)
Version: Latest   
Hardware: Any   
OS: Any   
See Also: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=262036

Description Artyom Davidov 2022-09-09 01:50:44 UTC
Latest cmake conversion to metaport structure doesn't honor OPTIONS_UNSET += X11 and fails to build when it is set in the make.conf file.
This is due to the fact that this conversion brought additional dependency on x11-toolkits/qt5-gui and it in turn depends on graphics/libglvnd.

When graphics/libglvnd is build with OPTIONS_UNSET += X11 it doesn't include libGL.so library that is required to build x11-toolkits/qt5-gui successfully. Please see https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=262036 for additional details on this issue.

This leads to unresolved dependencies and cmake build failure.
Comment 1 Artyom Davidov 2022-09-09 02:07:07 UTC
I forgot to mention that this happens even with default options
     DOCS=on: Build and/or install documentation
     GUI=off: Qt-based GUI
     MANPAGES=on: Build and/or install manual pages
So though the GUI is off by default, it is still depends on devel/qt5-help, x11-toolkits/qt5-widgets and x11-toolkits/qt5-gui
Comment 2 Artyom Davidov 2022-09-09 03:08:29 UTC
Digging in this a little bit further it seems to be a ports-mgmt/synth issue that tries to prebuild all required packages before building cmake itself.

I'll perform some additional tests and report the results.
Comment 3 Dani I. 2022-09-12 08:07:39 UTC
Same here.. This breaks our builds. tcberner / diizzy can you please take a look at this?
Comment 4 Daniel Engberg freebsd_committer freebsd_triage 2022-09-12 08:41:54 UTC
DOCS options are enabled by default in our ports tree, this option pulls in devel/cmake-doc which has the same dependencies as before. Build and run dependencies have been moved to devel/cmake-core ( https://cgit.freebsd.org/ports/tree/Mk/Uses/cmake.mk#n59 ) so if you want "just" CMake you're to use that port instead and devel/cmake-man if you want the manual pages.

Building devel/cmake without DOCS and GUI doesn't pull in x11 and friends

Best regards,
Daniel
Comment 5 Daniel Engberg freebsd_committer freebsd_triage 2022-09-13 15:33:00 UTC
I guess we can close this now