| enable_language(C) |
| |
| add_library(foo SHARED obj1.c) |
| set_target_properties(foo PROPERTIES |
| VERSION 1.0 |
| SOVERSION 1 |
| INSTALL_RPATH "$ORIGIN" |
| ) |
| install(TARGETS foo DESTINATION lib) |
| |
| # Replace the .so "namelink" symlink with a linker script. |
| # It is no longer a symlink, so any install tweaks would break. |
| # This verifies that no install tweaks are added for the namelink. |
| set(linker_script "INPUT($<TARGET_SONAME_FILE_NAME:foo>)") |
| add_custom_command(TARGET foo POST_BUILD |
| COMMAND "${CMAKE_COMMAND}" -E remove "$<TARGET_LINKER_FILE:foo>" |
| COMMAND "${CMAKE_COMMAND}" -E echo "${linker_script}" > "$<TARGET_LINKER_FILE:foo>" |
| COMMENT "Generating linker script: '${linker_script}' as file $<TARGET_LINKER_FILE:foo>" |
| VERBATIM |
| ) |