summaryrefslogtreecommitdiff
path: root/web-video-server.spec
diff options
context:
space:
mode:
Diffstat (limited to 'web-video-server.spec')
-rw-r--r--web-video-server.spec12
1 files changed, 9 insertions, 3 deletions
diff --git a/web-video-server.spec b/web-video-server.spec
index 7a90faf..dbe0edf 100644
--- a/web-video-server.spec
+++ b/web-video-server.spec
@@ -55,15 +55,21 @@ export PYTHONPATH=/opt/ros/%{ros_distro}/lib/python%{python3_version}/site-packa
export PKG_CONFIG_PATH=/opt/ros/%{ros_distro}/lib/pkgconfig${PKG_CONFIG_PATH:+:$PKG_CONFIG_PATH}
mkdir -p %{_builddir}/%{RosPkgName}-%{version}-1/.obj
cd %{_builddir}/%{RosPkgName}-%{version}-1/.obj
-# async_web_server_cpp 的 find_dependencies.cmake 对 Boost 版本格式有 bug,将数字形式(如108300)替换为点分格式(1.83)
+# async_web_server_cpp 的 find_dependencies.cmake 用数字格式请求 Boost(如108300),
+# 而系统 CMake FindBoost 要求点分格式(1.83)。/opt/ros 只读,故复制到本地再修改,
+# 并将本地副本目录置于 CMAKE_PREFIX_PATH 最前,让 CMake 优先找到修正版本。
+_AWSC_LOCAL=%{_builddir}/%{RosPkgName}-%{version}-1/.awsc_cmake_fix
if [ -f /opt/ros/%{ros_distro}/share/async_web_server_cpp/cmake/find_dependencies.cmake ]; then
+ mkdir -p ${_AWSC_LOCAL}/share/async_web_server_cpp/cmake
+ cp -a /opt/ros/%{ros_distro}/share/async_web_server_cpp/cmake/. \
+ ${_AWSC_LOCAL}/share/async_web_server_cpp/cmake/
sed -i 's/find_dependency(Boost [0-9]\{6\}/find_dependency(Boost 1.83/g' \
- /opt/ros/%{ros_distro}/share/async_web_server_cpp/cmake/find_dependencies.cmake
+ ${_AWSC_LOCAL}/share/async_web_server_cpp/cmake/find_dependencies.cmake
fi
%cmake3 \
-DCMAKE_INSTALL_PREFIX="/opt/ros/%{ros_distro}" \
-DAMENT_PREFIX_PATH="/opt/ros/%{ros_distro}" \
- -DCMAKE_PREFIX_PATH="/opt/ros/%{ros_distro}" \
+ -DCMAKE_PREFIX_PATH="${_AWSC_LOCAL};/opt/ros/%{ros_distro}" \
-UINCLUDE_INSTALL_DIR -ULIB_INSTALL_DIR -USYSCONF_INSTALL_DIR -USHARE_INSTALL_PREFIX -ULIB_SUFFIX \
-DSETUPTOOLS_DEB_LAYOUT=OFF \
-DBUILD_TESTING=OFF -DTESTING=OFF -DCMAKE_SUPPRESS_REGENERATION=ON \