From 99333442ac63971297b4cdd05fab9d2bd2ff57a4 Mon Sep 17 00:00:00 2001
From: Michael Cho <michael@michaelcho.dev>
Date: Wed, 27 Aug 2025 10:05:48 -0400
Subject: [PATCH] Fix build with Boost 1.89.0

This fixes a regression in 0404f7c382099e50196da6640c0ebba6d829392f
/ 1.15.1 as `Boost::system` is not valid since Boost 1.89.0.

PCL requires a minimum of Boost 1.71.0 so Boost.System is guaranteed to
be header-only (since 1.69[^1]) and the component can be removed.

[^1]: https://www.boost.org/doc/libs/1_69_0/libs/system/doc/html/system.html#changes_in_boost_1_69
---
 cmake/pcl_find_boost.cmake | 4 ++--
 outofcore/CMakeLists.txt   | 4 ++--
 2 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/cmake/pcl_find_boost.cmake b/cmake/pcl_find_boost.cmake
index 381024ea4c6..bd5616f6c76 100644
--- a/cmake/pcl_find_boost.cmake
+++ b/cmake/pcl_find_boost.cmake
@@ -15,12 +15,12 @@ endif()
 
 if(CMAKE_CXX_STANDARD MATCHES "14")
   # Optional boost modules
-  set(BOOST_OPTIONAL_MODULES serialization mpi system)
+  set(BOOST_OPTIONAL_MODULES serialization mpi)
   # Required boost modules
   set(BOOST_REQUIRED_MODULES filesystem iostreams)
 else()
   # Optional boost modules
-  set(BOOST_OPTIONAL_MODULES filesystem serialization mpi system)
+  set(BOOST_OPTIONAL_MODULES filesystem serialization mpi)
   # Required boost modules
   set(BOOST_REQUIRED_MODULES iostreams)
 endif()
diff --git a/outofcore/CMakeLists.txt b/outofcore/CMakeLists.txt
index 2d613c1ef25..1d668c5ea8e 100644
--- a/outofcore/CMakeLists.txt
+++ b/outofcore/CMakeLists.txt
@@ -76,10 +76,10 @@ set(LIB_NAME "pcl_${SUBSYS_NAME}")
 
 if(BUILD_visualization)
   PCL_ADD_LIBRARY(${LIB_NAME} COMPONENT ${SUBSYS_NAME} SOURCES ${srcs} ${incs} ${impl_incs} ${visualization_incs})
-  target_link_libraries("${LIB_NAME}" pcl_common pcl_visualization Boost::system Boost::filesystem)
+  target_link_libraries("${LIB_NAME}" pcl_common pcl_visualization Boost::filesystem)
 else()
   PCL_ADD_LIBRARY(${LIB_NAME} COMPONENT ${SUBSYS_NAME} SOURCES ${srcs} ${incs} ${impl_incs})
-  target_link_libraries("${LIB_NAME}" pcl_common Boost::system Boost::filesystem)
+  target_link_libraries("${LIB_NAME}" pcl_common Boost::filesystem)
 endif()
 if(HAVE_CJSON)
   target_link_libraries("${LIB_NAME}" ${CJSON_LIBRARIES})
