this repo has no description
1if(COMMAND cmake_policy)
2 # cmake_policy(SET CMP0177 NEW)
3endif(COMMAND cmake_policy)
4
5include(darling_lib)
6#include(CMakeParseArguments)
7
8function(wrap_elf name elfname)
9 add_custom_command(
10 OUTPUT
11 ${CMAKE_CURRENT_BINARY_DIR}/${name}.c
12 COMMAND
13 ${CMAKE_BINARY_DIR}/src/libelfloader/wrapgen/wrapgen
14 ${elfname}
15 ${CMAKE_CURRENT_BINARY_DIR}/${name}.c
16 ${CMAKE_CURRENT_BINARY_DIR}/${name}_vars.h
17 DEPENDS
18 wrapgen
19 )
20
21 if (ARGC LESS 3)
22 set(destination "usr/lib/native")
23 else (ARGC LESS 3)
24 set(destination ${ARGV2})
25 endif (ARGC LESS 3)
26
27 set(DYLIB_INSTALL_NAME "/${destination}/lib${name}.dylib")
28 include_directories(${CMAKE_SOURCE_DIR}/src/startup/mldr/elfcalls)
29 add_darling_library(${name} SHARED ${CMAKE_CURRENT_BINARY_DIR}/${name}.c)
30 target_link_libraries(${name} PRIVATE system)
31 make_fat(${name})
32 install(TARGETS ${name} DESTINATION libexec/darling/${destination})
33endfunction(wrap_elf)
34