mirror of
https://github.com/InstanceBrick/nightcap.git
synced 2026-10-23 17:01:07 +02:00
53 lines
2.2 KiB
CMake
53 lines
2.2 KiB
CMake
# Copyright 2026 Mocktail Project Authors
|
|
# Licensed under the Apache License, Version 2.0.
|
|
|
|
include_guard(GLOBAL)
|
|
|
|
get_filename_component(MOCKTAIL_ELF_COMPAT_ROOT
|
|
"${CMAKE_CURRENT_LIST_DIR}/.." ABSOLUTE
|
|
)
|
|
|
|
find_package(PkgConfig REQUIRED)
|
|
pkg_check_modules(LIBELF REQUIRED IMPORTED_TARGET libelf)
|
|
find_package(nlohmann_json CONFIG REQUIRED)
|
|
|
|
add_library(mocktail_compat STATIC
|
|
${MOCKTAIL_ELF_COMPAT_ROOT}/src/compat/bionic_atfork_runtime.cc
|
|
${MOCKTAIL_ELF_COMPAT_ROOT}/src/compat/bionic_dns_runtime.cc
|
|
${MOCKTAIL_ELF_COMPAT_ROOT}/src/compat/bionic_host_libc_runtime.cc
|
|
${MOCKTAIL_ELF_COMPAT_ROOT}/src/compat/bionic_large_file_runtime.cc
|
|
${MOCKTAIL_ELF_COMPAT_ROOT}/src/compat/bionic_prctl_runtime.cc
|
|
${MOCKTAIL_ELF_COMPAT_ROOT}/src/compat/bionic_rwlock_runtime.cc
|
|
${MOCKTAIL_ELF_COMPAT_ROOT}/src/compat/bionic_signal_runtime.cc
|
|
${MOCKTAIL_ELF_COMPAT_ROOT}/src/compat/bionic_socket_runtime.cc
|
|
${MOCKTAIL_ELF_COMPAT_ROOT}/src/compat/bionic_semaphore_runtime.cc
|
|
${MOCKTAIL_ELF_COMPAT_ROOT}/src/compat/bionic_pthread_create_runtime.cc
|
|
${MOCKTAIL_ELF_COMPAT_ROOT}/src/compat/bionic_pthread_key_runtime.cc
|
|
${MOCKTAIL_ELF_COMPAT_ROOT}/src/compat/bionic_sysconf.cc
|
|
${MOCKTAIL_ELF_COMPAT_ROOT}/src/compat/elf_build_id.cc
|
|
${MOCKTAIL_ELF_COMPAT_ROOT}/src/compat/build_profile.cc
|
|
${MOCKTAIL_ELF_COMPAT_ROOT}/src/compat/payload_compatibility.cc
|
|
${MOCKTAIL_ELF_COMPAT_ROOT}/src/compat/host_allocator_bridge.cc
|
|
${MOCKTAIL_ELF_COMPAT_ROOT}/src/compat/host_abi_experiment.cc
|
|
${MOCKTAIL_ELF_COMPAT_ROOT}/src/compat/host_abi_profile.cc
|
|
${MOCKTAIL_ELF_COMPAT_ROOT}/src/compat/host_abi_profile_loader.cc
|
|
)
|
|
add_library(Mocktail::Compat ALIAS mocktail_compat)
|
|
target_include_directories(mocktail_compat PUBLIC
|
|
${MOCKTAIL_ELF_COMPAT_ROOT}/include
|
|
)
|
|
target_compile_definitions(mocktail_compat PRIVATE
|
|
"MOCKTAIL_INSTALL_LIBDIR=\"${CMAKE_INSTALL_LIBDIR}\""
|
|
)
|
|
target_link_libraries(mocktail_compat PUBLIC
|
|
PkgConfig::LIBELF
|
|
nlohmann_json::nlohmann_json
|
|
Threads::Threads
|
|
)
|
|
target_link_libraries(mocktail_compat PRIVATE Mocktail::CryptoFoundation)
|
|
target_compile_features(mocktail_compat PUBLIC cxx_std_17)
|
|
|
|
if(COMMAND mocktail_apply_compile_options)
|
|
mocktail_apply_compile_options(mocktail_compat)
|
|
endif()
|