MXS-2366: Fix RPATH setting for tarball
All RPATH setting have to be set before generation of any binary. Defining of CMAKE_INSTALL_RPATH is moved to separate file which is called from main CMakeLists.txt in the beginning, just after install_layout.cmake
This commit is contained in:
@ -27,6 +27,10 @@ project(MaxScale)
|
|||||||
# Set the installation layout
|
# Set the installation layout
|
||||||
include(${CMAKE_SOURCE_DIR}/cmake/install_layout.cmake)
|
include(${CMAKE_SOURCE_DIR}/cmake/install_layout.cmake)
|
||||||
|
|
||||||
|
# Configure RPATH
|
||||||
|
# (it has to be before any executable generation)
|
||||||
|
include(cmake/rpath.cmake)
|
||||||
|
|
||||||
# Do the platform check
|
# Do the platform check
|
||||||
include(cmake/CheckPlatform.cmake)
|
include(cmake/CheckPlatform.cmake)
|
||||||
|
|
||||||
@ -91,8 +95,6 @@ else()
|
|||||||
set(MAXSCALE_COMMIT "source-build")
|
set(MAXSCALE_COMMIT "source-build")
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
set(CMAKE_INSTALL_RPATH ${CMAKE_INSTALL_RPATH}:${CMAKE_INSTALL_PREFIX}/${MAXSCALE_LIBDIR})
|
|
||||||
|
|
||||||
# Make sure the release notes for this release are present if it is a stable one
|
# Make sure the release notes for this release are present if it is a stable one
|
||||||
if(${MAXSCALE_VERSION} MATCHES "-stable")
|
if(${MAXSCALE_VERSION} MATCHES "-stable")
|
||||||
file(GLOB ${CMAKE_SOURCE_DIR}/Documentation/Release-Notes RELEASE_NOTES *${MAXSCALE_VERSION_NUMERIC}*.md)
|
file(GLOB ${CMAKE_SOURCE_DIR}/Documentation/Release-Notes RELEASE_NOTES *${MAXSCALE_VERSION_NUMERIC}*.md)
|
||||||
|
@ -1,6 +1,5 @@
|
|||||||
# Tarball package configuration
|
# Tarball package configuration
|
||||||
message(STATUS "Generating tar.gz packages")
|
message(STATUS "Generating tar.gz packages")
|
||||||
set(CMAKE_INSTALL_RPATH_USE_LINK_PATH FALSE)
|
|
||||||
set(MAXSCALE_BINDIR /bin CACHE PATH "" FORCE)
|
set(MAXSCALE_BINDIR /bin CACHE PATH "" FORCE)
|
||||||
set(MAXSCALE_LIBDIR /lib/maxscale CACHE PATH "" FORCE)
|
set(MAXSCALE_LIBDIR /lib/maxscale CACHE PATH "" FORCE)
|
||||||
set(MAXSCALE_SHAREDIR /share CACHE PATH "" FORCE)
|
set(MAXSCALE_SHAREDIR /share CACHE PATH "" FORCE)
|
||||||
@ -8,7 +7,6 @@ set(MAXSCALE_DOCDIR /share CACHE PATH "" FORCE)
|
|||||||
set(MAXSCALE_VARDIR /var CACHE PATH "" FORCE)
|
set(MAXSCALE_VARDIR /var CACHE PATH "" FORCE)
|
||||||
set(MAXSCALE_CONFDIR /etc CACHE PATH "" FORCE)
|
set(MAXSCALE_CONFDIR /etc CACHE PATH "" FORCE)
|
||||||
set(CMAKE_INSTALL_PREFIX "/" CACHE PATH "" FORCE)
|
set(CMAKE_INSTALL_PREFIX "/" CACHE PATH "" FORCE)
|
||||||
set(CMAKE_INSTALL_RPATH "$ORIGIN/../lib/maxscale/" CACHE PATH "" FORCE)
|
|
||||||
set(CMAKE_INSTALL_DATADIR /share CACHE PATH "" FORCE)
|
set(CMAKE_INSTALL_DATADIR /share CACHE PATH "" FORCE)
|
||||||
set(DEFAULT_LIB_SUBPATH /lib/maxscale CACHE PATH "" FORCE)
|
set(DEFAULT_LIB_SUBPATH /lib/maxscale CACHE PATH "" FORCE)
|
||||||
set(DEFAULT_LIBDIR "/usr/local/maxscale/lib/maxscale" CACHE PATH "" FORCE)
|
set(DEFAULT_LIBDIR "/usr/local/maxscale/lib/maxscale" CACHE PATH "" FORCE)
|
||||||
|
8
cmake/rpath.cmake
Normal file
8
cmake/rpath.cmake
Normal file
@ -0,0 +1,8 @@
|
|||||||
|
if(PACKAGE AND TARBALL)
|
||||||
|
set(CMAKE_INSTALL_RPATH_USE_LINK_PATH TRUE)
|
||||||
|
set(CMAKE_INSTALL_RPATH "$ORIGIN/../${CMAKE_INSTALL_LIBDIR}/maxscale" CACHE PATH "" FORCE)
|
||||||
|
else()
|
||||||
|
set(CMAKE_INSTALL_RPATH ${CMAKE_INSTALL_RPATH}:${CMAKE_INSTALL_PREFIX}/${MAXSCALE_LIBDIR})
|
||||||
|
endif()
|
||||||
|
|
||||||
|
|
Reference in New Issue
Block a user