Skip to content

Commit c43c877

Browse files
committed
fix: Respect CMAKE_INSTALL_PREFIX and BENCHMARK_ENABLE_INSTALL.
1 parent 29c5f02 commit c43c877

1 file changed

Lines changed: 25 additions & 15 deletions

File tree

core/CMakeLists.txt

Lines changed: 25 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -207,22 +207,32 @@ if(NOT CODSPEED_MODE STREQUAL "off")
207207
endif()
208208
endif()
209209

210-
install(
211-
DIRECTORY "${PROJECT_SOURCE_DIR}/include" "${PROJECT_BINARY_DIR}/include"
212-
DESTINATION /usr/local
213-
FILES_MATCHING
214-
PATTERN "*.h"
215-
PATTERN "*.hpp"
216-
)
210+
# Use GNUInstallDirs so destinations respect CMAKE_INSTALL_PREFIX instead of a
211+
# hardcoded absolute path.
212+
include(GNUInstallDirs)
217213

218-
install(
219-
TARGETS codspeed instrument_hooks
220-
EXPORT codspeed-targets
221-
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
222-
ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
223-
RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
224-
INCLUDES DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}
225-
)
214+
if(NOT DEFINED BENCHMARK_ENABLE_INSTALL)
215+
set(BENCHMARK_ENABLE_INSTALL ON)
216+
endif()
217+
218+
if(BENCHMARK_ENABLE_INSTALL)
219+
install(
220+
DIRECTORY "${PROJECT_SOURCE_DIR}/include/" "${PROJECT_BINARY_DIR}/include/"
221+
DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}"
222+
FILES_MATCHING
223+
PATTERN "*.h"
224+
PATTERN "*.hpp"
225+
)
226+
227+
install(
228+
TARGETS codspeed instrument_hooks
229+
EXPORT codspeed-targets
230+
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
231+
ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
232+
RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
233+
INCLUDES DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}
234+
)
235+
endif()
226236

227237
message(STATUS "Codspeed mode: ${CODSPEED_MODE}")
228238

0 commit comments

Comments
 (0)