feat: Improve cmake install logic

This commit is contained in:
kradchen
2025-03-18 14:16:50 +08:00
parent c61ab71d36
commit be340c7d2e
3 changed files with 17 additions and 15 deletions

View File

@@ -1,4 +1,4 @@
cmake_minimum_required(VERSION 2.8)
cmake_minimum_required(VERSION 3.8)
set(PROJECT_NAME Parser)
project(${PROJECT_NAME})
set(CMAKE_CXX_STANDARD 14)
@@ -25,13 +25,13 @@ elseif(MINGW)
target_link_libraries(${PROJECT_NAME} matio sqlite3)
endif()
set(BBENC_INCLUDE_FILES parser_global.h Parser.h
ShotList/ShotList.h
MatLab/MatlabCreator.h MatLab/MatlabOpener.h
Data/Arraypointer.h Data/CEData.h Data/ConfigHeader.h Data/MetaData.h Data/MovementData.h Data/PatientData.h Data/TemperatureData.h Data/AScanData.h Data/ElectricIndex.h Data/ElementIndex.h Data/GeometryIndex.h Data/Hardwareinfomation.h Data/OneTasAScanData.h Data/TasElementIndex.h Data/TasIndex.h Data/CEMeasuredData.h)
set(INCLUDE_OUTPUT_PATH "${PROJECT_BINARY_DIR}/Parser/")
foreach(file ${BBENC_INCLUDE_FILES})
execute_process( COMMAND ${CMAKE_COMMAND} -E copy "${CMAKE_CURRENT_SOURCE_DIR}/src/${file}" ${INCLUDE_OUTPUT_PATH}${file})
endforeach( file )
install(FILES src/parser_global.h DESTINATION include/Parser)
install(FILES src/Parser.h DESTINATION include/Parser)
install(DIRECTORY src/ShotList/ DESTINATION include/Parser/ShotList FILES_MATCHING PATTERN "ShotList.h")
install(DIRECTORY src/MatLab/ DESTINATION include/Parser/MatLab FILES_MATCHING PATTERN "*r.h")
install(DIRECTORY src/Data/ DESTINATION include/Parser/Data FILES_MATCHING PATTERN "*.h")
install(FILES cmake/ParserConfig.cmake DESTINATION ${CMAKE_INSTALL_PREFIX})
install(FILES thirdParty/lib/libmatio.so DESTINATION ${CMAKE_INSTALL_PREFIX}/lib/ RENAME libmatio.so.11)
install(FILES thirdParty/lib/libsqlite3.so DESTINATION ${CMAKE_INSTALL_PREFIX}/lib/ RENAME libsqlite3.so.0)
install(TARGETS Parser RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR})