Skip to content

Commit

Permalink
build: install: use library version in the right place on mac
Browse files Browse the repository at this point in the history
On Linux library version goes after the extension, while on OS X it goes
right before.

Linux:
        libdnnl.so -> libdnnl.so.1
        libdnnl.so.1 -> libdnnl.so.1.1
        libdnnl.so.1.1
        libmkldnn.so -> libdnnl.so
        libmkldnn.so.1 -> libdnnl.so.1
        libmkldnn.so.1.1 -> libdnnl.so.1.1

OS X:
        libdnnl.1.1.dylib
        libdnnl.1.dylib -> libdnnl.1.1.dylib
        libdnnl.dylib -> libdnnl.1.dylib
        libmkldnn.1.1.dylib -> libdnnl.1.1.dylib
        libmkldnn.1.dylib -> libdnnl.1.dylib
        libmkldnn.dylib -> libdnnl.dylib
  • Loading branch information
Fomenko, Evarist M committed Nov 22, 2019
1 parent c34ac74 commit 0d85005
Showing 1 changed file with 8 additions and 7 deletions.
15 changes: 8 additions & 7 deletions src/CMakeLists.txt
Expand Up @@ -142,21 +142,22 @@ if (WIN32)
DESTINATION ${CMAKE_INSTALL_PREFIX}/${CMAKE_INSTALL_LIBDIR})
else()
if(DNNL_LIBRARY_TYPE STREQUAL "SHARED")
set_ternary(ext APPLE "dylib" "so")
set_ternary(ext APPLE ".dylib" ".so")
set(vers ".${DNNL_VERSION_MAJOR};.${DNNL_VERSION_MAJOR}.${DNNL_VERSION_MINOR}")
else()
set(ext "a")
set(ext ".a")
set(vers "")
endif()
foreach(ver "" ${vers})
add_custom_command(OUTPUT libmkldnn.${ext}${ver}
set_ternary(ext_and_ver APPLE "${ver}${ext}" "${ext}${ver}")
add_custom_command(OUTPUT libmkldnn${ext_and_ver}
# to make the next command work fine
COMMAND ${CMAKE_COMMAND} -E remove -f libmkldnn.${ext}${ver}
COMMAND ${CMAKE_COMMAND} -E create_symlink libdnnl.${ext}${ver} libmkldnn.${ext}${ver}
COMMAND ${CMAKE_COMMAND} -E remove -f libmkldnn${ext_and_ver}
COMMAND ${CMAKE_COMMAND} -E create_symlink libdnnl${ext_and_ver} libmkldnn${ext_and_ver}
DEPENDS ${LIB_NAME})
add_custom_target(compat_libs${ver} ALL
DEPENDS libmkldnn.${ext}${ver})
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/libmkldnn.${ext}${ver}
DEPENDS libmkldnn${ext_and_ver})
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/libmkldnn${ext_and_ver}
DESTINATION ${CMAKE_INSTALL_PREFIX}/${CMAKE_INSTALL_LIBDIR})
endforeach()
endif()
Expand Down

0 comments on commit 0d85005

Please sign in to comment.