mirror of
https://git.sr.ht/~thestr4ng3r/chiaki
synced 2025-08-14 10:46:51 -07:00
Make Borealis GUI more generic to build (#408)
This commit is contained in:
parent
402e7f01ee
commit
4da09f75f3
16 changed files with 168 additions and 167 deletions
|
@ -1,12 +1,93 @@
|
|||
|
||||
set(CMAKE_INCLUDE_CURRENT_DIR ON)
|
||||
##################
|
||||
# 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 WIN32
|
||||
add_executable(chiaki-borealis WIN32
|
||||
src/discoverymanager.cpp
|
||||
src/settings.cpp
|
||||
src/io.cpp
|
||||
|
@ -14,9 +95,13 @@ add_executable(chiaki WIN32
|
|||
src/main.cpp
|
||||
src/gui.cpp)
|
||||
|
||||
target_include_directories(chiaki PRIVATE include)
|
||||
set_target_properties(chiaki-borealis PROPERTIES
|
||||
CXX_STANDARD 17
|
||||
OUTPUT_NAME chiaki)
|
||||
|
||||
target_link_libraries(chiaki
|
||||
target_include_directories(chiaki-borealis PRIVATE include)
|
||||
|
||||
target_link_libraries(chiaki-borealis
|
||||
chiaki-lib
|
||||
borealis
|
||||
${SDL2}
|
||||
|
@ -26,21 +111,24 @@ target_link_libraries(chiaki
|
|||
${SWRESAMPLE}
|
||||
${SWSCALE})
|
||||
|
||||
# OS links
|
||||
if(CHIAKI_SWITCH_ENABLE_LINUX)
|
||||
target_link_libraries(chiaki dl)
|
||||
else()
|
||||
if(CHIAKI_IS_SWITCH)
|
||||
# libnx is forced by the switch toolchain
|
||||
find_library(Z z)
|
||||
find_library(GLAPI glapi)
|
||||
find_library(DRM_NOUVEAU drm_nouveau)
|
||||
target_link_libraries(chiaki ${Z} ${GLAPI} ${DRM_NOUVEAU})
|
||||
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
|
||||
install(TARGETS chiaki-borealis
|
||||
RUNTIME DESTINATION bin
|
||||
BUNDLE DESTINATION bin)
|
||||
|
||||
if(CHIAKI_ENABLE_SWITCH AND NOT CHIAKI_SWITCH_ENABLE_LINUX)
|
||||
add_nro_target(chiaki "chiaki" "Chiaki team" "${CHIAKI_VERSION}" "${CMAKE_SOURCE_DIR}/switch/res/icon.jpg" "${CMAKE_SOURCE_DIR}/switch/res")
|
||||
if(CHIAKI_IS_SWITCH)
|
||||
add_nro_target(chiaki
|
||||
chiaki-borealis
|
||||
"chiaki"
|
||||
"Chiaki team"
|
||||
"${CHIAKI_VERSION}"
|
||||
"${CMAKE_SOURCE_DIR}/switch/res/icon.jpg"
|
||||
"${CMAKE_SOURCE_DIR}/switch/res")
|
||||
endif()
|
||||
|
|
1
switch/borealis
Submodule
1
switch/borealis
Submodule
|
@ -0,0 +1 @@
|
|||
Subproject commit 205e97ab45922fa7f5c9fa6a85d5d686cd50b669
|
|
@ -1 +1 @@
|
|||
../../../third-party/borealis/resources/i18n/en-US
|
||||
../../borealis/resources/i18n/en-US
|
|
@ -1 +1 @@
|
|||
../../third-party/borealis/resources/inter
|
||||
../borealis/resources/inter
|
|
@ -1 +1 @@
|
|||
../../third-party/borealis/resources/material
|
||||
../borealis/resources/material
|
|
@ -318,7 +318,7 @@ bool IO::FreeVideo()
|
|||
|
||||
bool IO::ReadUserKeyboard(char *buffer, size_t buffer_size)
|
||||
{
|
||||
#ifdef CHIAKI_SWITCH_ENABLE_LINUX
|
||||
#ifndef __SWITCH__
|
||||
// use cin to get user input from linux
|
||||
std::cin.getline(buffer, buffer_size);
|
||||
CHIAKI_LOGI(this->log, "Got user input: %s\n", buffer);
|
||||
|
|
|
@ -20,7 +20,7 @@ bool appletMainLoop()
|
|||
}
|
||||
#endif
|
||||
|
||||
#ifndef CHIAKI_SWITCH_ENABLE_LINUX
|
||||
#if __SWITCH__
|
||||
#define CHIAKI_ENABLE_SWITCH_NXLINK 1
|
||||
#endif
|
||||
|
||||
|
@ -109,15 +109,11 @@ int main(int argc, char* argv[])
|
|||
{
|
||||
// init chiaki lib
|
||||
ChiakiLog log;
|
||||
#if defined(CHIAKI_ENABLE_SWITCH_NXLINK) || defined(CHIAKI_SWITCH_ENABLE_LINUX)
|
||||
#ifdef __SWITCH__
|
||||
chiaki_log_init(&log, CHIAKI_LOG_ALL ^ CHIAKI_LOG_VERBOSE, chiaki_log_cb_print, NULL);
|
||||
#else
|
||||
chiaki_log_init(&log, CHIAKI_LOG_ALL, chiaki_log_cb_print, NULL);
|
||||
#endif
|
||||
#else
|
||||
#if defined(__SWITCH__) && !defined(CHIAKI_ENABLE_SWITCH_NXLINK)
|
||||
// null log for switch version
|
||||
chiaki_log_init(&log, 0, chiaki_log_cb_print, NULL);
|
||||
#else
|
||||
chiaki_log_init(&log, CHIAKI_LOG_ALL ^ CHIAKI_LOG_VERBOSE, chiaki_log_cb_print, NULL);
|
||||
#endif
|
||||
|
||||
// load chiaki lib
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue