From: ljsebald <ljs...@us...> - 2024-03-06 02:38:06
|
This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "A pseudo Operating System for the Dreamcast.". The branch, master has been updated via 33c7ee5dbacfb0d2e862377da8ffb4ac00818cf1 (commit) via b8c43614690309800bef15c76cd93334ce30b828 (commit) via 79c1d3c4fbbcac690c58174e6bfc132a349d30de (commit) from ba408f3d97331498552a1eeff538e31deb1626a9 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit 33c7ee5dbacfb0d2e862377da8ffb4ac00818cf1 Merge: b8c43614 79c1d3c4 Author: Lawrence Sebald <ljs...@us...> Date: Tue Mar 5 21:36:42 2024 -0500 Merge pull request #492 from KallistiOS/mb_cleanup Correct clean/dist for new multibuffer example commit b8c43614690309800bef15c76cd93334ce30b828 Author: Paul Cercueil <pa...@cr...> Date: Wed Mar 6 03:36:10 2024 +0100 CMake work (#490) * Add KOS wrapper for cmake-curses-gui Add a kos-ccmake wrapper similar to kos-cmake, which will use the "ccmake" program (provided by the cmake-curses-gui on Debian/Ubuntu) instead. Signed-off-by: Paul Cercueil <pa...@cr...> * cmake: Set sysroot in toolchain file Set the sysroot, so that CMake will be able to find the cross-compiled libraries and headers from the kos-ports folder. Signed-off-by: Paul Cercueil <pa...@cr...> * cmake: Use platform file for the Dreamcast Set CMAKE_SYSTEM_NAME to "Dreamcast". CMake will then try to locate a "Platform/Dreamcast.cmake" file from its module paths. In there, we can override the CMAKE_INSTALL_PREFIX so that it always defaults to an empty string and not /usr or /usr/local. Signed-off-by: Paul Cercueil <pa...@cr...> --------- Signed-off-by: Paul Cercueil <pa...@cr...> commit 79c1d3c4fbbcac690c58174e6bfc132a349d30de Author: QuzarDC <qu...@co...> Date: Mon Mar 4 13:17:32 2024 -0500 Correct clean/dist for new multibuffer example ----------------------------------------------------------------------- Summary of changes: examples/dreamcast/video/Makefile | 4 ++-- utils/cmake/Platform/Dreamcast.cmake | 9 +++++++++ utils/cmake/dreamcast.toolchain.cmake | 7 ++++++- utils/gnu_wrappers/{kos-cmake => kos-ccmake} | 7 ++++++- 4 files changed, 23 insertions(+), 4 deletions(-) create mode 100644 utils/cmake/Platform/Dreamcast.cmake copy utils/gnu_wrappers/{kos-cmake => kos-ccmake} (66%) diff --git a/examples/dreamcast/video/Makefile b/examples/dreamcast/video/Makefile index 27c19c24..a24bf8b0 100644 --- a/examples/dreamcast/video/Makefile +++ b/examples/dreamcast/video/Makefile @@ -14,10 +14,10 @@ clean: $(KOS_MAKE) -C bfont clean $(KOS_MAKE) -C palmenu clean $(KOS_MAKE) -C minifont clean - $(KOS_MAKE) -C multibuffer + $(KOS_MAKE) -C multibuffer clean dist: $(KOS_MAKE) -C bfont dist $(KOS_MAKE) -C palmenu dist $(KOS_MAKE) -C minifont dist - $(KOS_MAKE) -C multibuffer + $(KOS_MAKE) -C multibuffer dist diff --git a/utils/cmake/Platform/Dreamcast.cmake b/utils/cmake/Platform/Dreamcast.cmake new file mode 100644 index 00000000..87e31a20 --- /dev/null +++ b/utils/cmake/Platform/Dreamcast.cmake @@ -0,0 +1,9 @@ +# CMake platform file for the Dreamcast. +# Copyright (C) 2024 Paul Cercueil + +include(Platform/Generic) +set(CMAKE_EXECUTABLE_SUFFIX .elf) + +if(CMAKE_INSTALL_PREFIX_INITIALIZED_TO_DEFAULT) + set(CMAKE_INSTALL_PREFIX "" CACHE PATH "Install prefix" FORCE) +endif() diff --git a/utils/cmake/dreamcast.toolchain.cmake b/utils/cmake/dreamcast.toolchain.cmake index 6c423eea..faf3a5ba 100644 --- a/utils/cmake/dreamcast.toolchain.cmake +++ b/utils/cmake/dreamcast.toolchain.cmake @@ -51,8 +51,10 @@ if(NOT DEFINED KOS_PORTS) message(VERBOSE "KOS_PORTS: ${KOS_PORTS}") endif() +list(APPEND CMAKE_MODULE_PATH $ENV{KOS_BASE}/utils/cmake) + ##### Configure CMake System ##### -set(CMAKE_SYSTEM_NAME Generic-ELF) +set(CMAKE_SYSTEM_NAME Dreamcast) set(CMAKE_SYSTEM_VERSION 1) set(CMAKE_SYSTEM_PROCESSOR SH4) set(PLATFORM_DREAMCAST TRUE) @@ -71,6 +73,9 @@ set(CMAKE_FIND_LIBRARY_SUFFIXES ".a") # Never use the CMAKE_FIND_ROOT_PATH to find programs with find_program() set(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER) +# Set sysroot to kos-ports folder +set(CMAKE_SYSROOT ${KOS_PORTS}) + ##### Add Platform-Specific #defines ##### add_compile_definitions(__DREAMCAST__ _arch_dreamcast) diff --git a/utils/gnu_wrappers/kos-cmake b/utils/gnu_wrappers/kos-ccmake similarity index 66% copy from utils/gnu_wrappers/kos-cmake copy to utils/gnu_wrappers/kos-ccmake index 120174a3..c987ea0e 100755 --- a/utils/gnu_wrappers/kos-cmake +++ b/utils/gnu_wrappers/kos-ccmake @@ -7,7 +7,12 @@ if [ -z "${KOS_BASE}" ]; then exit 1 fi -cmake \ +if [ -z "$(which ccmake)" ]; then + echo "ccmake program is not present. Please install ccmake or cmake-curses-gui." + exit 1 +fi + +ccmake \ -DCMAKE_TOOLCHAIN_FILE="${KOS_BASE}/utils/cmake/dreamcast.toolchain.cmake" \ "$@" hooks/post-receive -- A pseudo Operating System for the Dreamcast. |