Date: Mon, 6 Oct 2025 13:04:34 -0700 From: Mark Millard <marklmi@yahoo.com> To: Yuri <yuri@FreeBSD.org>, dev-commits-ports-main@freebsd.org Subject: Re: git: 9b5005a44fdb - main - devel/cmake-core: Remove FindBoost module Message-ID: <94E57F33-44B3-4A5A-A639-F893291F09EE@yahoo.com> In-Reply-To: <8E992670-6A35-4CD9-9DEF-B7A00C49F496@yahoo.com>
index | next in thread | previous in thread | raw e-mail
On Sep 28, 2025, at 20:16, Mark Millard <marklmi@yahoo.com> wrote: > Yuri Victorovich <yuri_at_FreeBSD.org> wrote on > Date: Sun, 28 Sep 2025 02:14:19 UTC : > >> The branch main has been updated by yuri: >> >> URL: https://cgit.FreeBSD.org/ports/commit/?id=9b5005a44fdbe85db87d9b244ca79e50d68f6bcd >> >> commit 9b5005a44fdbe85db87d9b244ca79e50d68f6bcd >> Author: Yuri Victorovich <yuri@FreeBSD.org> >> AuthorDate: 2025-09-28 02:12:19 +0000 >> Commit: Yuri Victorovich <yuri@FreeBSD.org> >> CommitDate: 2025-09-28 02:14:17 +0000 >> >> devel/cmake-core: Remove FindBoost module >> >> It breaks many other ports, for example multimedia/lms, math/curv, science/votca >> >> cmake doesn't support Boost any more and doesn't know about >> the latest boost versions. See later below what I list after the my original message. > This note is just about my finding the above wording > confusing/misleading when I look up what cmake is > doing for boost. It is not about the detailed path > forward for updating ports or about other bugs that > might interfere. > > It seems (see later supporting material): > > ) Boost now supports cmake explicitly via providing > a BoostConfig.cmake in boost itself for make to > use. > > ) Boost has been updated in 3.30 and later to be > based on using that BoostConfig.cmake . > > In other words: cmake does know about the latest > boost versions and what they provide for using > cmake. Boost is taking responsibility for tracking > its own changes for cmake use ( via updating > BoostConfig.cmake in boost itself ). > > > Supporting detail that I expect leads to the above > conclusions: > > > https://gitlab.kitware.com/cmake/cmake/-/issues/27258#note_1707621 > > QUOTE of Brad King's note: > These days Boost provides a proper CMake package via > BoostConfig.cmake. CMake's builtin FindBoost pre-dated > that, but the module requires updates for each new > release of Boost, and CMake 3.31 doesn't know about > Boost 1.88. Policy CMP0167 removes use of FindBoost > altogether such that find_package(Boost) always directly > looks for the BoostConfig.cmake file that comes with > Boost. > END QUOTE > > There is also: https://cmake.org/cmake/help/latest/policy/CMP0167.html > > QUOTE > Added in version 3.30. > > The FindBoost module is removed. > > CMake 3.29 and below provide a FindBoost module, but it > needs constant updates to keep up with upstream Boost > releases. Upstream Boost 1.70 and above provide a > BoostConfig.cmake package configuration > file.find_package(Boost CONFIG) finds the upstream > package directly, without the find module. > > CMake 3.30 and above prefer to not provide the FindBoost > module so that find_package(Boost) calls, without the > CONFIG or NO_MODULE options, find the upstream > BoostConfig.cmake directly. This policy provides > compatibility for projects that have not been ported to > use the upstream Boost package. > > The OLD behavior of this policy is for find_package(Boost) > to load CMake's FindBoost module. The NEW behavior is for > find_package(Boost) to search for the upstream > BoostConfig.cmake. > > This policy was introduced in CMake version 3.30. It may > be set by cmake_policy() or cmake_minimum_required(). If > it is not set, CMake warns, and uses OLD behavior. > > Note: The OLD behavior of a policy is deprecated by > definition and may be removed in a future version of > CMake. > END QUOTE > > >> Reported by: fallout >> Approved by: portmgr (blanket unbreak) >> . . . For reference, I went looking and found: # ls -dC1 /usr/local/lib/cmake/Boost-*/ /usr/local/lib/cmake/boost_*-*/ /usr/local/lib/cmake/Boost-1.88.0/ /usr/local/lib/cmake/boost_atomic-1.88.0/ /usr/local/lib/cmake/boost_charconv-1.88.0/ /usr/local/lib/cmake/boost_chrono-1.88.0/ /usr/local/lib/cmake/boost_container-1.88.0/ /usr/local/lib/cmake/boost_context-1.88.0/ /usr/local/lib/cmake/boost_contract-1.88.0/ /usr/local/lib/cmake/boost_coroutine-1.88.0/ /usr/local/lib/cmake/boost_date_time-1.88.0/ /usr/local/lib/cmake/boost_exception-1.88.0/ /usr/local/lib/cmake/boost_fiber-1.88.0/ /usr/local/lib/cmake/boost_filesystem-1.88.0/ /usr/local/lib/cmake/boost_graph-1.88.0/ /usr/local/lib/cmake/boost_graph_parallel-1.88.0/ /usr/local/lib/cmake/boost_headers-1.88.0/ /usr/local/lib/cmake/boost_iostreams-1.88.0/ /usr/local/lib/cmake/boost_json-1.88.0/ /usr/local/lib/cmake/boost_locale-1.88.0/ /usr/local/lib/cmake/boost_log-1.88.0/ /usr/local/lib/cmake/boost_log_setup-1.88.0/ /usr/local/lib/cmake/boost_math-1.88.0/ /usr/local/lib/cmake/boost_math_c99-1.88.0/ /usr/local/lib/cmake/boost_math_c99f-1.88.0/ /usr/local/lib/cmake/boost_math_c99l-1.88.0/ /usr/local/lib/cmake/boost_math_tr1-1.88.0/ /usr/local/lib/cmake/boost_math_tr1f-1.88.0/ /usr/local/lib/cmake/boost_math_tr1l-1.88.0/ /usr/local/lib/cmake/boost_nowide-1.88.0/ /usr/local/lib/cmake/boost_prg_exec_monitor-1.88.0/ /usr/local/lib/cmake/boost_process-1.88.0/ /usr/local/lib/cmake/boost_program_options-1.88.0/ /usr/local/lib/cmake/boost_random-1.88.0/ /usr/local/lib/cmake/boost_regex-1.88.0/ /usr/local/lib/cmake/boost_serialization-1.88.0/ /usr/local/lib/cmake/boost_stacktrace_addr2line-1.88.0/ /usr/local/lib/cmake/boost_stacktrace_basic-1.88.0/ /usr/local/lib/cmake/boost_stacktrace_noop-1.88.0/ /usr/local/lib/cmake/boost_system-1.88.0/ /usr/local/lib/cmake/boost_test_exec_monitor-1.88.0/ /usr/local/lib/cmake/boost_thread-1.88.0/ /usr/local/lib/cmake/boost_timer-1.88.0/ /usr/local/lib/cmake/boost_type_erasure-1.88.0/ /usr/local/lib/cmake/boost_unit_test_framework-1.88.0/ /usr/local/lib/cmake/boost_url-1.88.0/ /usr/local/lib/cmake/boost_wave-1.88.0/ /usr/local/lib/cmake/boost_wserialization-1.88.0/ This appears to be where the boost additions have been placed for port-builds/port-package-builds to use with cmake (in my context: v1.88.0 as stands). === Mark Millard marklmi at yahoo.comhome | help
Want to link to this message? Use this
URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?94E57F33-44B3-4A5A-A639-F893291F09EE>
