mirror of
https://github.com/N64Recomp/N64ModernRuntime.git
synced 2025-10-30 08:02:29 +00:00
* `RendererContext` abstract class * Delete rt64_layer * Implement renderer creation callback * Make `GraphicsConfig` an abstract class * Remove rt64 * Add renderer callback to `ultramodern::set_callbacks` * Fix rebase * Change setup_result's visibility to protected * Declare abstract `is_equal` method instead of operators * Various fixes * Fix issues * trigger_config_action * Move GraphicsConfig back to ultramodern * Change `update_config` to return if any changes were applied * Rename renderer_wrapper to renderer_context * Remove SDL2 and other libraries * Allow registering get_graphics_api_name * Move WindowHandle to renderer namespace * Comments explaining which callbacks are required * Fix CI * Update readme * `ULTRAMODERN_QUICK_EXIT` macro * Remove --config from readme * Add `add_compile_definitions(NOMINMAX)`
40 lines
1.3 KiB
CMake
40 lines
1.3 KiB
CMake
cmake_minimum_required(VERSION 3.20)
|
|
|
|
project(ultramodern)
|
|
set(CMAKE_CXX_STANDARD 20)
|
|
set(CMAKE_CXX_STANDARD_REQUIRED True)
|
|
set(CMAKE_CXX_EXTENSIONS OFF)
|
|
|
|
add_library(ultramodern STATIC
|
|
"${CMAKE_CURRENT_SOURCE_DIR}/src/audio.cpp"
|
|
"${CMAKE_CURRENT_SOURCE_DIR}/src/error_handling.cpp"
|
|
"${CMAKE_CURRENT_SOURCE_DIR}/src/events.cpp"
|
|
"${CMAKE_CURRENT_SOURCE_DIR}/src/input.cpp"
|
|
"${CMAKE_CURRENT_SOURCE_DIR}/src/mesgqueue.cpp"
|
|
"${CMAKE_CURRENT_SOURCE_DIR}/src/misc_ultra.cpp"
|
|
"${CMAKE_CURRENT_SOURCE_DIR}/src/renderer_context.cpp"
|
|
"${CMAKE_CURRENT_SOURCE_DIR}/src/rsp.cpp"
|
|
"${CMAKE_CURRENT_SOURCE_DIR}/src/scheduling.cpp"
|
|
"${CMAKE_CURRENT_SOURCE_DIR}/src/task_win32.cpp"
|
|
"${CMAKE_CURRENT_SOURCE_DIR}/src/threadqueue.cpp"
|
|
"${CMAKE_CURRENT_SOURCE_DIR}/src/threads.cpp"
|
|
"${CMAKE_CURRENT_SOURCE_DIR}/src/timer.cpp"
|
|
"${CMAKE_CURRENT_SOURCE_DIR}/src/ultrainit.cpp"
|
|
)
|
|
|
|
target_include_directories(ultramodern PUBLIC
|
|
"${CMAKE_CURRENT_SOURCE_DIR}/include/"
|
|
"${PROJECT_SOURCE_DIR}/../thirdparty"
|
|
"${PROJECT_SOURCE_DIR}/../thirdparty/concurrentqueue"
|
|
"${PROJECT_SOURCE_DIR}/../thirdparty/sse2neon"
|
|
)
|
|
|
|
target_compile_options(ultramodern PRIVATE
|
|
# -Wall
|
|
# -Wextra
|
|
-Wno-unused-parameter
|
|
)
|
|
|
|
if (WIN32)
|
|
add_compile_definitions(NOMINMAX)
|
|
endif()
|