aboutsummaryrefslogtreecommitdiffstats
path: root/cmake
diff options
context:
space:
mode:
Diffstat (limited to 'cmake')
-rw-r--r--cmake/BuildDeps.cmake26
1 files changed, 17 insertions, 9 deletions
diff --git a/cmake/BuildDeps.cmake b/cmake/BuildDeps.cmake
index b402510..8f819f3 100644
--- a/cmake/BuildDeps.cmake
+++ b/cmake/BuildDeps.cmake
@@ -85,7 +85,11 @@ endif()
# QtOpcUa
# ======================================
-find_program(QT_CMAKE_COMMAND NAMES qt-cmake qt-cmake.bat PATHS ${CMAKE_PREFIX_PATH} PATH_SUFFIXES bin REQUIRED)
+find_program(
+ QT_CMAKE_COMMAND
+ NAMES qt-cmake qt-cmake.bat
+ PATHS ${CMAKE_PREFIX_PATH}
+ PATH_SUFFIXES bin REQUIRED)
if(WIN32)
set(qtopcua_lib "Qt6OpcUa.lib")
@@ -110,8 +114,13 @@ if(NOT EXISTS "${QTOPCUA_INSTALL_DIR}/lib/${qtopcua_lib}")
-DINPUT_open62541=system
-DCMAKE_PREFIX_PATH=${OPEN62541_INSTALL_DIR})
if(WIN32)
- # Install with: winget install ShiningLight.OpenSSL.Dev
- list(APPEND _cmd -DOPENSSL_ROOT_DIR:PATH="C:/Program Files/OpenSSL-Win64")
+ set(_openssl_dir "C:/Program Files/OpenSSL-Win64")
+ if(NOT EXISTS "${_openssl_dir}")
+ message(
+ FATAL_ERROR "OpenSSL development files not found at ${_openssl_dir}.\n"
+ "Install with: winget install ShiningLight.OpenSSL.Dev")
+ endif()
+ list(APPEND _cmd -DOPENSSL_ROOT_DIR:PATH=${_openssl_dir})
endif()
execute_process(COMMAND ${_cmd} RESULT_VARIABLE _result)
if(_result)
@@ -120,7 +129,7 @@ if(NOT EXISTS "${QTOPCUA_INSTALL_DIR}/lib/${qtopcua_lib}")
endif()
message(STATUS "Building qtopcua in ${QTOPCUA_BUILD_DIR}...")
- set(_cmd ${CMAKE_COMMAND} --build "${QTOPCUA_BUILD_DIR}" --parallel)
+ set(_cmd ${QT_CMAKE_COMMAND} --build "${QTOPCUA_BUILD_DIR}" --parallel)
execute_process(COMMAND ${_cmd} RESULT_VARIABLE _result)
if(_result)
list(JOIN _cmd " " _cmd_str)
@@ -128,7 +137,7 @@ if(NOT EXISTS "${QTOPCUA_INSTALL_DIR}/lib/${qtopcua_lib}")
endif()
message(STATUS "Installing qtopcua to ${QTOPCUA_INSTALL_DIR}...")
- set(_cmd ${CMAKE_COMMAND} --install "${QTOPCUA_BUILD_DIR}")
+ set(_cmd ${QT_CMAKE_COMMAND} --install "${QTOPCUA_BUILD_DIR}")
execute_process(COMMAND ${_cmd} RESULT_VARIABLE _result)
if(_result)
list(JOIN _cmd " " _cmd_str)
@@ -139,12 +148,11 @@ else()
message(STATUS "qtopcua already built, skipping")
endif()
-if (WIN32)
+if(WIN32)
# On Windows DLLs must be next to the .exe (no RPATH). Copy them to bin/.
file(MAKE_DIRECTORY "${CMAKE_BINARY_DIR}/bin")
- file(GLOB _dep_dlls
- "${OPEN62541_INSTALL_DIR}/bin/*.dll"
- "${QTOPCUA_INSTALL_DIR}/bin/*.dll")
+ file(GLOB _dep_dlls "${OPEN62541_INSTALL_DIR}/bin/*.dll"
+ "${QTOPCUA_INSTALL_DIR}/bin/*.dll")
foreach(_dll ${_dep_dlls})
file(COPY "${_dll}" DESTINATION "${CMAKE_BINARY_DIR}/bin")
endforeach()