|
1 | 1 | # SPDX-License-Identifier: BSD-3-Clause
|
2 |
| -# Copyright (c) 2022, Intel Corporation |
| 2 | +# Copyright (c) 2022-2025, Intel Corporation |
3 | 3 |
|
4 | 4 | include(FindOpenSSL)
|
5 | 5 |
|
@@ -60,6 +60,7 @@ if(UNIX) # LINUX, FREE_BSD, APPLE
|
60 | 60 | $<$<CONFIG:RelWithDebInfo>:PCM_SILENT>
|
61 | 61 | )
|
62 | 62 |
|
| 63 | + set_target_properties(PCM_STATIC PROPERTIES POSITION_INDEPENDENT_CODE ON) |
63 | 64 | set_target_properties(PCM_STATIC_SILENT PROPERTIES POSITION_INDEPENDENT_CODE ON)
|
64 | 65 |
|
65 | 66 | # libpcm.so
|
@@ -192,6 +193,10 @@ if(PCM_BUILD_EXECUTABLES)
|
192 | 193 | target_compile_options(${PROJECT_NAME} PRIVATE "${PCM_MSVC_RUNTIME_LIBRARY_OPTIONS}")
|
193 | 194 | endif(MSVC)
|
194 | 195 |
|
| 196 | + if(UNIX) |
| 197 | + target_link_options(${PROJECT_NAME} PRIVATE "-fPIE") |
| 198 | + endif(UNIX) |
| 199 | + |
195 | 200 | if(CMAKE_CXX_COMPILER_ID STREQUAL "GNU")
|
196 | 201 | set_target_properties(${PROJECT_NAME} PROPERTIES LINK_FLAGS "${PCM_STATIC_ASAN}")
|
197 | 202 | endif()
|
@@ -253,12 +258,14 @@ if(UNIX) # APPLE, LINUX, FREE_BSD
|
253 | 258 | # Daemon & client
|
254 | 259 | file(GLOB DAEMON_SOURCES "daemon/*.cpp")
|
255 | 260 | add_executable(daemon ${DAEMON_SOURCES})
|
| 261 | + target_link_options(daemon PRIVATE "-fPIE") |
256 | 262 | target_link_libraries(daemon PRIVATE PCM_STATIC Threads::Threads)
|
257 | 263 | set_target_properties(daemon PROPERTIES OUTPUT_NAME "pcm-daemon")
|
258 | 264 | install(TARGETS daemon DESTINATION ${CMAKE_INSTALL_SBINDIR})
|
259 | 265 |
|
260 | 266 | file(GLOB CLIENT_SOURCES "client/*.cpp")
|
261 | 267 | add_executable(client ${CLIENT_SOURCES})
|
| 268 | + target_link_options(client PRIVATE "-fPIE") |
262 | 269 | target_link_libraries(client PRIVATE Threads::Threads)
|
263 | 270 | set_target_properties(client PROPERTIES OUTPUT_NAME "pcm-client")
|
264 | 271 | install(TARGETS client DESTINATION ${CMAKE_INSTALL_BINDIR})
|
|
0 commit comments