cmake_minimum_required(VERSION 3.31)
project(launch C ASM)

file(GLOB sources
	${CMAKE_CURRENT_SOURCE_DIR}/*.c)
file(GLOB headers
	${CMAKE_CURRENT_SOURCE_DIR}/include/launch.h
	${CMAKE_CURRENT_SOURCE_DIR}/*.h)
file(GLOB public_headers
	${CMAKE_CURRENT_SOURCE_DIR}/include/launch.h)

set(public_include_dirs
	${CMAKE_CURRENT_SOURCE_DIR}/include)

if (LAUNCH_STATIC)
	add_library(launch STATIC ${sources} ${headers})
	target_link_libraries(launch PRIVATE librosetta libmagenta libc-core)
else ()
	add_library(launch SHARED ${sources} ${headers})
	target_link_libraries(launch PRIVATE rosetta magenta c)
endif ()

target_include_directories(launch PUBLIC include)
install(TARGETS launch)
install(FILES ${public_headers} DESTINATION include)
