mirror of
https://github.com/melonDS-emu/melonDS.git
synced 2025-07-26 07:39:56 -06:00
Add libslirp with glib shim
This commit is contained in:
64
src/frontend/libslirp/CMakeLists.txt
Normal file
64
src/frontend/libslirp/CMakeLists.txt
Normal file
@ -0,0 +1,64 @@
|
||||
cmake_minimum_required(VERSION 3.16)
|
||||
|
||||
project(libslirp VERSION 4.8.0 LANGUAGES C)
|
||||
|
||||
set(SLIRP_MAJOR_VERSION "${libslirp_VERSION_MAJOR}")
|
||||
set(SLIRP_MINOR_VERSION "${libslirp_VERSION_MINOR}")
|
||||
set(SLIRP_MICRO_VERSION "${libslirp_VERSION_PATCH}")
|
||||
set(SLIRP_VERSION_STRING "\"${libslirp_VERSION}\"")
|
||||
|
||||
set(SOURCES
|
||||
src/arp_table.c
|
||||
src/bootp.c
|
||||
src/cksum.c
|
||||
src/dhcpv6.c
|
||||
src/dnssearch.c
|
||||
src/if.c
|
||||
src/ip6_icmp.c
|
||||
src/ip6_input.c
|
||||
src/ip6_output.c
|
||||
src/ip_icmp.c
|
||||
src/ip_input.c
|
||||
src/ip_output.c
|
||||
src/mbuf.c
|
||||
src/misc.c
|
||||
src/ncsi.c
|
||||
src/ndp_table.c
|
||||
src/sbuf.c
|
||||
src/slirp.c
|
||||
src/socket.c
|
||||
src/state.c
|
||||
src/stream.c
|
||||
src/tcp_input.c
|
||||
src/tcp_output.c
|
||||
src/tcp_subr.c
|
||||
src/tcp_timer.c
|
||||
src/tftp.c
|
||||
src/udp6.c
|
||||
src/udp.c
|
||||
src/util.c
|
||||
src/version.c
|
||||
src/vmstate.c
|
||||
|
||||
# glib shim
|
||||
glib/glib.c
|
||||
)
|
||||
|
||||
configure_file("${CMAKE_CURRENT_SOURCE_DIR}/src/libslirp-version.h.in" "${CMAKE_CURRENT_BINARY_DIR}/libslirp-version.h")
|
||||
|
||||
add_library(slirp STATIC ${SOURCES})
|
||||
target_include_directories(slirp PRIVATE "${CMAKE_CURRENT_SOURCE_DIR}/glib")
|
||||
target_include_directories(slirp PUBLIC "${CMAKE_CURRENT_SOURCE_DIR}/src")
|
||||
target_include_directories(slirp PRIVATE "${CMAKE_CURRENT_BINARY_DIR}")
|
||||
|
||||
target_compile_definitions(slirp PRIVATE BUILDING_LIBSLIRP)
|
||||
set_target_properties(slirp PROPERTIES INTERPROCEDURAL_OPTIMIZATION OFF)
|
||||
set_target_properties(slirp PROPERTIES INTERPROCEDURAL_OPTIMIZATION_RELEASE OFF)
|
||||
|
||||
if (WIN32)
|
||||
target_link_libraries(slirp PRIVATE ws2_32 iphlpapi)
|
||||
elseif(HAIKU)
|
||||
target_Link_libraries(slirp PRIVATE network)
|
||||
elseif(APPLE)
|
||||
target_link_libraries(slirp PRIVATE resolv)
|
||||
endif()
|
Reference in New Issue
Block a user