diff options
| author | Egor <egor.yusov@gmail.com> | 2019-01-22 06:34:45 +0000 |
|---|---|---|
| committer | Egor <egor.yusov@gmail.com> | 2019-01-22 06:34:45 +0000 |
| commit | 2bc2a60b09b93804c4b6097b055a3b29f405d55d (patch) | |
| tree | b61fc6bded78ace317e7ed6a46d59689c497988a | |
| parent | Fixed --whole-archive flag on Mac and iOS (diff) | |
| download | DiligentCore-2bc2a60b09b93804c4b6097b055a3b29f405d55d.tar.gz DiligentCore-2bc2a60b09b93804c4b6097b055a3b29f405d55d.zip | |
Fixed rpath installation issues on Linux
| -rw-r--r-- | BuildUtils.cmake | 2 | ||||
| -rw-r--r-- | CMakeLists.txt | 8 | ||||
| l--------- | External/vulkan/libs/linux/libvulkan.so (renamed from External/vulkan/libs/libvulkan.so) | 0 | ||||
| l--------- | External/vulkan/libs/linux/libvulkan.so.1 (renamed from External/vulkan/libs/libvulkan.so.1) | 0 | ||||
| -rwxr-xr-x | External/vulkan/libs/linux/libvulkan.so.1.1.73 (renamed from External/vulkan/libs/libvulkan.so.1.1.73) | bin | 425594 -> 425594 bytes | |||
| -rw-r--r-- | Graphics/GraphicsEngineVulkan/CMakeLists.txt | 9 | ||||
| -rw-r--r-- | appveyor.yml | 17 |
7 files changed, 24 insertions, 12 deletions
diff --git a/BuildUtils.cmake b/BuildUtils.cmake index cea1acc7..8177d06f 100644 --- a/BuildUtils.cmake +++ b/BuildUtils.cmake @@ -209,7 +209,7 @@ function(install_core_lib _TARGET) elseif(TARGET_TYPE STREQUAL SHARED_LIBRARY) install(TARGETS ${_TARGET} ARCHIVE DESTINATION "${DILIGENT_CORE_INSTALL_DIR}/lib" - LIBRARY DESTINATION "${DILIGENT_CORE_INSTALL_DIR}/lib" + LIBRARY DESTINATION "${DILIGENT_CORE_INSTALL_DIR}/bin" RUNTIME DESTINATION "${DILIGENT_CORE_INSTALL_DIR}/bin" ) endif() diff --git a/CMakeLists.txt b/CMakeLists.txt index 7c43195c..36e3c005 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -267,10 +267,16 @@ else() endif() if(NOT DILIGENT_CORE_INSTALL_DIR) - set(DILIGENT_CORE_INSTALL_DIR "DiligentCore") + set(DILIGENT_CORE_INSTALL_DIR "DiligentCore" CACHE INTERNAL "DiligentCore installation directory") endif() SET(DILIGENT_CORE_INSTALL_LIBS_LIST "" CACHE INTERNAL "Core libraries installation list") +# CMAKE_INSTALL_PREFIX must be absolute otherwise rpath won't work +if(NOT IS_ABSOLUTE ${CMAKE_INSTALL_PREFIX}) + set(CMAKE_INSTALL_PREFIX "${CMAKE_BINARY_DIR}/${CMAKE_INSTALL_PREFIX}" CACHE FILEPATH "Installation path" FORCE) + message("Transformed CMAKE_INSTALL_PREFIX into absolute path: " ${CMAKE_INSTALL_PREFIX}) +endif() + include(BuildUtils.cmake) add_subdirectory(Utilities) diff --git a/External/vulkan/libs/libvulkan.so b/External/vulkan/libs/linux/libvulkan.so index 2a67c929..2a67c929 120000 --- a/External/vulkan/libs/libvulkan.so +++ b/External/vulkan/libs/linux/libvulkan.so diff --git a/External/vulkan/libs/libvulkan.so.1 b/External/vulkan/libs/linux/libvulkan.so.1 index 539d42aa..539d42aa 120000 --- a/External/vulkan/libs/libvulkan.so.1 +++ b/External/vulkan/libs/linux/libvulkan.so.1 diff --git a/External/vulkan/libs/libvulkan.so.1.1.73 b/External/vulkan/libs/linux/libvulkan.so.1.1.73 Binary files differindex 8702e1fa..8702e1fa 100755 --- a/External/vulkan/libs/libvulkan.so.1.1.73 +++ b/External/vulkan/libs/linux/libvulkan.so.1.1.73 diff --git a/Graphics/GraphicsEngineVulkan/CMakeLists.txt b/Graphics/GraphicsEngineVulkan/CMakeLists.txt index 251bee28..18887fea 100644 --- a/Graphics/GraphicsEngineVulkan/CMakeLists.txt +++ b/Graphics/GraphicsEngineVulkan/CMakeLists.txt @@ -181,7 +181,7 @@ if(PLATFORM_WIN32) elseif(PLATFORM_MACOS) find_library(Vulkan_LIBRARY NAMES MoltenVK PATHS "../../External/vulkan/libs/macOS") else() - find_library(Vulkan_LIBRARY NAMES vulkan HINTS "$ENV{VULKAN_SDK}/lib" "../../External/vulkan/libs") + find_library(Vulkan_LIBRARY NAMES vulkan HINTS "$ENV{VULKAN_SDK}/lib" "../../External/vulkan/libs/linux") endif() list(APPEND PRIVATE_DEPENDENCIES ${Vulkan_LIBRARY}) @@ -244,6 +244,13 @@ else() ) endif() +if(PLATFORM_LINUX) + get_filename_component(VULKAN_LIBRARY_PATH ${Vulkan_LIBRARY} DIRECTORY) + set_target_properties(GraphicsEngineVk-shared PROPERTIES + INSTALL_RPATH "${VULKAN_LIBRARY_PATH}" + ) +endif() + set_common_target_properties(GraphicsEngineVk-shared) set_common_target_properties(GraphicsEngineVk-static) diff --git a/appveyor.yml b/appveyor.yml index 25f084f3..eba06d75 100644 --- a/appveyor.yml +++ b/appveyor.yml @@ -18,25 +18,24 @@ environment: cmake_args: -D CMAKE_INSTALL_PREFIX=install platform_name: Windows - # Win32/x64/Release - platform: x64 configuration: Release cmake_args: -D CMAKE_INSTALL_PREFIX=install platform_name: Windows - + # UWP/x64/Debug - platform: x64 configuration: Debug cmake_args: -D CMAKE_INSTALL_PREFIX=install -D CMAKE_SYSTEM_NAME=WindowsStore -D CMAKE_SYSTEM_VERSION=10.0 platform_name: UWP - + # UWP/x64/Release - platform: x64 configuration: Release cmake_args: -D CMAKE_INSTALL_PREFIX=install -D CMAKE_SYSTEM_NAME=WindowsStore -D CMAKE_SYSTEM_VERSION=10.0 platform_name: UWP - + # Win32/x86/Release - platform: Win32 configuration: Release @@ -48,13 +47,13 @@ environment: configuration: Release cmake_args: -D CMAKE_INSTALL_PREFIX=install -D CMAKE_SYSTEM_NAME=WindowsStore -D CMAKE_SYSTEM_VERSION=10.0 platform_name: UWP - + # Win32-8.1SDK/x64/Release - platform: x64 configuration: Release cmake_args: -D CMAKE_INSTALL_PREFIX=install -D CMAKE_SYSTEM_VERSION=8.1 platform_name: Windows8.1 - + # clone directory clone_folder: c:\projects\DiligentCore @@ -71,7 +70,7 @@ install: - cmake --version - echo %PLATFORM% - if "%PLATFORM%"=="x64" ( set generator="Visual Studio 15 2017 Win64" ) else ( set generator="Visual Studio 15 2017" ) - + before_build: - cd c:\projects\DiligentCore - echo %generator% @@ -84,10 +83,10 @@ build: parallel: true after_test: - - cd install + - cd cmk_build\install - 7z a DiligentCore-"%platform_name%"-"%PLATFORM%"-"%CONFIGURATION%".zip DiligentCore\* artifacts: - - path: install\*.zip + - path: cmk_build\install\*.zip name: artifacts-zip |
