Install only proper GNA library files (#11243)
This commit is contained in:
@@ -71,10 +71,28 @@ set_target_properties(${TARGET_NAME} ${TARGET_NAME}_test_static
|
|||||||
|
|
||||||
# install
|
# install
|
||||||
|
|
||||||
file(GLOB_RECURSE source_list "${libGNA_LIBRARIES_BASE_PATH}/*${CMAKE_SHARED_LIBRARY_SUFFIX}*")
|
file(GLOB_RECURSE gna_libraries "${libGNA_LIBRARIES_BASE_PATH}/*${CMAKE_SHARED_LIBRARY_SUFFIX}*")
|
||||||
install(FILES ${source_list}
|
set(gna_library_installed OFF)
|
||||||
|
|
||||||
|
foreach(gna_lib IN LISTS gna_libraries)
|
||||||
|
# install only versioned files like libgna.so.N or libgna.so.N.M
|
||||||
|
# and don't install global symlink libgna.so. Exceptions:
|
||||||
|
# 1. On Windows we don't have libraries versioning and need to install all .dlls
|
||||||
|
# 2. For case of static libraries we also need to install .so since it's required for linkage with final application
|
||||||
|
if(gna_lib MATCHES "^.*${CMAKE_SHARED_LIBRARY_SUFFIX}(\.[0-9]+)+$" OR
|
||||||
|
WIN32 OR NOT BUILD_SHARED_LIBS)
|
||||||
|
install(FILES ${gna_lib}
|
||||||
DESTINATION ${IE_CPACK_RUNTIME_PATH}
|
DESTINATION ${IE_CPACK_RUNTIME_PATH}
|
||||||
COMPONENT gna)
|
COMPONENT gna)
|
||||||
|
set(gna_library_installed ON)
|
||||||
|
endif()
|
||||||
|
endforeach()
|
||||||
|
|
||||||
|
if(NOT gna_library_installed)
|
||||||
|
message(FATAL_ERROR "Failed to install GNA library (available libraries: ${gna_libraries})")
|
||||||
|
endif()
|
||||||
|
|
||||||
|
# additional install rules for case of static libraries
|
||||||
|
|
||||||
if(NOT BUILD_SHARED_LIBS)
|
if(NOT BUILD_SHARED_LIBS)
|
||||||
configure_file(${CMAKE_CURRENT_SOURCE_DIR}/cmake/libGNAConfig.cmake ${CMAKE_BINARY_DIR} COPYONLY)
|
configure_file(${CMAKE_CURRENT_SOURCE_DIR}/cmake/libGNAConfig.cmake ${CMAKE_BINARY_DIR} COPYONLY)
|
||||||
@@ -82,9 +100,10 @@ if(NOT BUILD_SHARED_LIBS)
|
|||||||
DESTINATION runtime/cmake
|
DESTINATION runtime/cmake
|
||||||
COMPONENT gna)
|
COMPONENT gna)
|
||||||
|
|
||||||
|
# install .lib file on Windows
|
||||||
if(WIN32)
|
if(WIN32)
|
||||||
file(GLOB_RECURSE source_list "${libGNA_LIBRARIES_BASE_PATH}/*${CMAKE_STATIC_LIBRARY_SUFFIX}")
|
file(GLOB_RECURSE gna_libraries "${libGNA_LIBRARIES_BASE_PATH}/*${CMAKE_STATIC_LIBRARY_SUFFIX}")
|
||||||
install(FILES ${source_list}
|
install(FILES ${gna_libraries}
|
||||||
DESTINATION ${IE_CPACK_LIBRARY_PATH}
|
DESTINATION ${IE_CPACK_LIBRARY_PATH}
|
||||||
COMPONENT gna)
|
COMPONENT gna)
|
||||||
endif()
|
endif()
|
||||||
|
|||||||
Reference in New Issue
Block a user