mirror of
https://git.sr.ht/~thestr4ng3r/chiaki
synced 2025-03-12 05:25:23 -07:00
135 lines
3.9 KiB
CMake
135 lines
3.9 KiB
CMake
|
|
##################
|
|
# borealis dependency
|
|
##################
|
|
|
|
# do not include
|
|
# borealis/library/lib/switch_wrapper.c
|
|
# switch functions are in switch/src/main.cpp
|
|
set(BOREALIS_SOURCE
|
|
borealis/library/lib/extern/libretro-common/features/features_cpu.c
|
|
borealis/library/lib/extern/libretro-common/encodings/encoding_utf.c
|
|
borealis/library/lib/extern/libretro-common/compat/compat_strl.c
|
|
borealis/library/lib/extern/nxfmtwrapper/format.cpp
|
|
borealis/library/lib/extern/nanovg/nanovg.c
|
|
borealis/library/lib/extern/glad/glad.c
|
|
borealis/library/lib/scroll_view.cpp
|
|
borealis/library/lib/style.cpp
|
|
borealis/library/lib/table.cpp
|
|
borealis/library/lib/task_manager.cpp
|
|
borealis/library/lib/progress_display.cpp
|
|
borealis/library/lib/staged_applet_frame.cpp
|
|
borealis/library/lib/applet_frame.cpp
|
|
borealis/library/lib/hint.cpp
|
|
borealis/library/lib/image.cpp
|
|
borealis/library/lib/logger.cpp
|
|
borealis/library/lib/swkbd.cpp
|
|
borealis/library/lib/crash_frame.cpp
|
|
borealis/library/lib/header.cpp
|
|
borealis/library/lib/progress_spinner.cpp
|
|
borealis/library/lib/layer_view.cpp
|
|
borealis/library/lib/notification_manager.cpp
|
|
borealis/library/lib/rectangle.cpp
|
|
borealis/library/lib/application.cpp
|
|
borealis/library/lib/box_layout.cpp
|
|
borealis/library/lib/sidebar.cpp
|
|
borealis/library/lib/dropdown.cpp
|
|
borealis/library/lib/popup_frame.cpp
|
|
borealis/library/lib/repeating_task.cpp
|
|
borealis/library/lib/absolute_layout.cpp
|
|
borealis/library/lib/i18n.cpp
|
|
borealis/library/lib/tab_frame.cpp
|
|
borealis/library/lib/thumbnail_frame.cpp
|
|
borealis/library/lib/animations.cpp
|
|
borealis/library/lib/dialog.cpp
|
|
borealis/library/lib/view.cpp
|
|
borealis/library/lib/list.cpp
|
|
borealis/library/lib/button.cpp
|
|
borealis/library/lib/label.cpp
|
|
borealis/library/lib/theme.cpp
|
|
borealis/library/lib/material_icon.cpp)
|
|
|
|
add_library(borealis STATIC ${BOREALIS_SOURCE})
|
|
set_property(TARGET borealis PROPERTY CXX_STANDARD 17)
|
|
target_include_directories(borealis PUBLIC
|
|
borealis/library/include
|
|
borealis/library/include/borealis/extern
|
|
borealis/library/include/borealis/extern/glad
|
|
borealis/library/include/borealis/extern/nanovg
|
|
borealis/library/include/borealis/extern/libretro-common
|
|
borealis/library/lib/extern/fmt/include)
|
|
|
|
find_package(glfw3 REQUIRED)
|
|
find_library(EGL EGL)
|
|
find_library(GLAPI glapi)
|
|
find_library(DRM_NOUVEAU drm_nouveau)
|
|
target_link_libraries(borealis
|
|
glfw
|
|
${EGL}
|
|
${GLAPI}
|
|
${DRM_NOUVEAU})
|
|
|
|
if(CHIAKI_IS_SWITCH)
|
|
target_compile_definitions(borealis PUBLIC
|
|
BOREALIS_RESOURCES="romfs:/")
|
|
else()
|
|
target_compile_definitions(borealis PUBLIC
|
|
BOREALIS_RESOURCES="./switch/res/")
|
|
endif()
|
|
|
|
|
|
##################
|
|
# chiaki with borealis
|
|
##################
|
|
|
|
find_package(FFMPEG REQUIRED COMPONENTS avcodec avutil swscale)
|
|
find_library(SDL2 SDL2)
|
|
find_library(SWRESAMPLE swresample)
|
|
|
|
# find -type f | grep -P '\.(h|cpp)$' | sed 's#\./#\t\t#g'
|
|
add_executable(chiaki-borealis WIN32
|
|
src/discoverymanager.cpp
|
|
src/settings.cpp
|
|
src/io.cpp
|
|
src/host.cpp
|
|
src/main.cpp
|
|
src/gui.cpp)
|
|
|
|
set_target_properties(chiaki-borealis PROPERTIES
|
|
CXX_STANDARD 17
|
|
OUTPUT_NAME chiaki)
|
|
|
|
target_include_directories(chiaki-borealis PRIVATE include)
|
|
|
|
target_link_libraries(chiaki-borealis
|
|
chiaki-lib
|
|
borealis
|
|
${SDL2}
|
|
FFMPEG::avcodec
|
|
FFMPEG::avutil
|
|
FFMPEG::swscale
|
|
${SWRESAMPLE}
|
|
${SWSCALE})
|
|
|
|
if(CHIAKI_IS_SWITCH)
|
|
# libnx is forced by the switch toolchain
|
|
find_library(Z z)
|
|
find_library(GLAPI glapi) # TODO: make it transitive from borealis
|
|
find_library(DRM_NOUVEAU drm_nouveau) # TODO: make it transitive from borealis
|
|
target_link_libraries(chiaki-borealis ${Z} ${GLAPI} ${DRM_NOUVEAU})
|
|
endif()
|
|
|
|
install(TARGETS chiaki-borealis
|
|
RUNTIME DESTINATION bin
|
|
BUNDLE DESTINATION bin)
|
|
|
|
if(CHIAKI_IS_SWITCH)
|
|
add_nro_target(chiaki
|
|
chiaki-borealis
|
|
"Chiaki"
|
|
"H0neyBadger and thestr4ng3r"
|
|
"${CHIAKI_VERSION}"
|
|
"${CMAKE_CURRENT_SOURCE_DIR}/nro_icon.jpg"
|
|
"${CMAKE_CURRENT_SOURCE_DIR}/res")
|
|
endif()
|