cmake: rosetta_wrap_library now handles target prefix and soname configuration

This commit is contained in:
2026-05-31 17:29:53 +01:00
parent 616ad0d0cc
commit 000cb5c35d
2 changed files with 8 additions and 3 deletions
+6 -2
View File
@@ -133,7 +133,7 @@ endfunction(rosetta_add_object_library)
function(rosetta_wrap_library) function(rosetta_wrap_library)
set(options) set(options)
set(one_value_args NAME) set(one_value_args NAME SONAME PREFIX)
set(multi_value_args set(multi_value_args
PUBLIC_INCLUDE_DIRS) PUBLIC_INCLUDE_DIRS)
cmake_parse_arguments(PARSE_ARGV 0 arg cmake_parse_arguments(PARSE_ARGV 0 arg
@@ -151,10 +151,14 @@ function(rosetta_wrap_library)
PATH ${arg_PUBLIC_INCLUDE_DIRS}) PATH ${arg_PUBLIC_INCLUDE_DIRS})
endif () endif ()
if (arg_SONAME)
target_link_options(${lib_name} PRIVATE -Wl,--soname,${arg_SONAME}.so)
endif ()
set_target_properties(${lib_name} PROPERTIES set_target_properties(${lib_name} PROPERTIES
POSITION_INDEPENDENT_CODE ON POSITION_INDEPENDENT_CODE ON
src_header_dir ${CMAKE_CURRENT_SOURCE_DIR}/include src_header_dir ${CMAKE_CURRENT_SOURCE_DIR}/include
PREFIX "") PREFIX "${arg_PREFIX}")
endfunction(rosetta_wrap_library) endfunction(rosetta_wrap_library)
function(rosetta_add_object_library) function(rosetta_add_object_library)
+2 -1
View File
@@ -31,9 +31,10 @@ endforeach (item)
foreach (assembly ${fx_assemblies}) foreach (assembly ${fx_assemblies})
target_link_libraries(${assembly} libc libpthread) target_link_libraries(${assembly} libc libpthread)
target_link_options(${assembly} PRIVATE -Wl,--soname,lib${assembly}.so) # target_link_options(${assembly} PRIVATE -Wl,--soname,lib${assembly}.so)
rosetta_wrap_library( rosetta_wrap_library(
NAME ${assembly} NAME ${assembly}
SONAME lib${assembly}
PUBLIC_INCLUDE_DIRS ${CMAKE_CURRENT_SOURCE_DIR}/libfx/${module}/include) PUBLIC_INCLUDE_DIRS ${CMAKE_CURRENT_SOURCE_DIR}/libfx/${module}/include)
set_target_properties(${assembly} PROPERTIES set_target_properties(${assembly} PROPERTIES
PREFIX "lib") PREFIX "lib")