Skip to content

Commit 403e2db

Browse files
committed
CMake: use GNUInstallDirs for library install dir
Libraries now will be installed in the correct directory on x86_64 linux systems, and can be changed with `-DCMAKE_INSTALL_LIBDIR=<dirname>` option.
1 parent 4792ac6 commit 403e2db

File tree

2 files changed

+13
-4
lines changed

2 files changed

+13
-4
lines changed

build/cmake/CMakeLists.txt

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@ PROJECT(zstd)
1111
CMAKE_MINIMUM_REQUIRED(VERSION 2.8.9)
1212
SET(ZSTD_SOURCE_DIR "${CMAKE_CURRENT_SOURCE_DIR}/../..")
1313
LIST(APPEND CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/CMakeModules")
14+
INCLUDE(GNUInstallDirs)
1415

1516
#-----------------------------------------------------------------------------
1617
# Add extra compilation flags
@@ -21,6 +22,12 @@ ADD_ZSTD_COMPILATION_FLAGS()
2122
# Always hide XXHash symbols
2223
ADD_DEFINITIONS(-DXXH_NAMESPACE=ZSTD_)
2324

25+
#-----------------------------------------------------------------------------
26+
# Installation variables
27+
#-----------------------------------------------------------------------------
28+
MESSAGE(STATUS "CMAKE_INSTALL_PREFIX: ${CMAKE_INSTALL_PREFIX}")
29+
MESSAGE(STATUS "CMAKE_INSTALL_LIBDIR: ${CMAKE_INSTALL_LIBDIR}")
30+
2431
#-----------------------------------------------------------------------------
2532
# Options
2633
#-----------------------------------------------------------------------------

build/cmake/lib/CMakeLists.txt

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -146,7 +146,7 @@ ENDIF (ZSTD_BUILD_STATIC)
146146
IF (UNIX)
147147
# pkg-config
148148
SET(PREFIX "${CMAKE_INSTALL_PREFIX}")
149-
SET(LIBDIR "${CMAKE_INSTALL_PREFIX}/lib")
149+
SET(LIBDIR "${CMAKE_INSTALL_PREFIX}/${CMAKE_INSTALL_LIBDIR}")
150150
SET(INCLUDEDIR "${CMAKE_INSTALL_PREFIX}/include")
151151
SET(VERSION "${LIBVER_MAJOR}.${LIBVER_MINOR}.${LIBVER_RELEASE}")
152152
ADD_CUSTOM_TARGET(libzstd.pc ALL
@@ -155,7 +155,7 @@ IF (UNIX)
155155
-P "${CMAKE_CURRENT_SOURCE_DIR}/pkgconfig.cmake"
156156
COMMENT "Creating pkg-config file")
157157

158-
INSTALL(FILES "${CMAKE_CURRENT_BINARY_DIR}/libzstd.pc" DESTINATION "share/pkgconfig")
158+
INSTALL(FILES "${CMAKE_CURRENT_BINARY_DIR}/libzstd.pc" DESTINATION "${LIBDIR}/pkgconfig")
159159
ENDIF (UNIX)
160160

161161
# install target
@@ -167,10 +167,12 @@ INSTALL(FILES
167167
DESTINATION "include")
168168

169169
IF (ZSTD_BUILD_SHARED)
170-
INSTALL(TARGETS libzstd_shared RUNTIME DESTINATION "bin" LIBRARY DESTINATION "lib" ARCHIVE DESTINATION "lib")
170+
INSTALL(TARGETS libzstd_shared RUNTIME DESTINATION "bin"
171+
LIBRARY DESTINATION "${CMAKE_INSTALL_LIBDIR}"
172+
ARCHIVE DESTINATION "${CMAKE_INSTALL_LIBDIR}")
171173
ENDIF()
172174
IF (ZSTD_BUILD_STATIC)
173-
INSTALL(TARGETS libzstd_static ARCHIVE DESTINATION "lib")
175+
INSTALL(TARGETS libzstd_static ARCHIVE DESTINATION "${CMAKE_INSTALL_LIBDIR}")
174176
ENDIF (ZSTD_BUILD_STATIC)
175177

176178
# uninstall target

0 commit comments

Comments
 (0)