diff --git a/.github/workflows/sync-addon-metadata-translations.yml b/.github/workflows/sync-addon-metadata-translations.yml index c3074a1..4a3a545 100644 --- a/.github/workflows/sync-addon-metadata-translations.yml +++ b/.github/workflows/sync-addon-metadata-translations.yml @@ -2,7 +2,7 @@ name: Sync addon metadata translations on: push: - branches: [ master, Matrix, Nexus ] + branches: [ master, Matrix, Nexus, Omega ] paths: - '**addon.xml.in' - '**resource.language.**strings.po' diff --git a/CMakeLists.txt b/CMakeLists.txt index 6403990..307a0f5 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -5,6 +5,8 @@ list(APPEND CMAKE_MODULE_PATH ${PROJECT_SOURCE_DIR}) find_package(Kodi REQUIRED) +set(CMAKE_CXX_STANDARD 17) + # CMake on windows only searches for .lib libraries (static library or import library). # The libretro game library is dynamically loaded so even if an import library would exists it's of no use. if(CMAKE_SYSTEM_NAME STREQUAL Windows) diff --git a/Jenkinsfile b/Jenkinsfile index aaa3557..55b4a4c 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -1 +1 @@ -buildPlugin(version: "Nexus", platforms: ["android-aarch64", "android-armv7", "osx-x86_64", "osx-arm64", "windows-i686", "windows-x86_64"]) +buildPlugin(version: "Omega", platforms: ["android-aarch64", "android-armv7", "osx-x86_64", "osx-arm64", "windows-i686", "windows-x86_64"]) diff --git a/depends/common/daphne/CMakeLists.txt b/depends/common/daphne/CMakeLists.txt index 4857cb4..e3ae321 100644 --- a/depends/common/daphne/CMakeLists.txt +++ b/depends/common/daphne/CMakeLists.txt @@ -22,16 +22,40 @@ if(CORE_SYSTEM_NAME STREQUAL windows) else() set(MSYSTEM MINGW32) endif() - set(BUILD_COMMAND ${MINGW_MAKE} -j$ENV{NUMBER_OF_PROCESSORS} -C . -f Makefile platform=win MSYSTEM=${MSYSTEM} ${LIBRETRO_DEBUG} GIT_VERSION=) + set(BUILD_COMMAND ${MINGW_MAKE} + -j$ENV{NUMBER_OF_PROCESSORS} + -C . + -f Makefile + ${LIBRETRO_DEBUG} + GIT_VERSION= + MSYSTEM=${MSYSTEM} + platform=win + ) elseif(CORE_SYSTEM_NAME STREQUAL linux) - set(BUILD_COMMAND $(MAKE) -C . -f Makefile platform=unix ${LIBRETRO_DEBUG} GIT_VERSION=) + set(BUILD_COMMAND $(MAKE) + -C . + -f Makefile + ${LIBRETRO_DEBUG} + GIT_VERSION= + platform=unix + ) elseif(CORE_SYSTEM_NAME STREQUAL osx) if(CPU STREQUAL arm64) set(ARCH arm) else() set(ARCH intel) endif() - set(BUILD_COMMAND $(MAKE) -C . -f Makefile platform=osx arch=${ARCH} ${LIBRETRO_DEBUG} GIT_VERSION=) + set(BUILD_COMMAND $(MAKE) + -C . + -f Makefile + ${LIBRETRO_DEBUG} + arch=${ARCH} + CROSS_COMPILE=1 + GIT_VERSION= + LIBRETRO_APPLE_ISYSROOT=${CMAKE_OSX_SYSROOT} + LIBRETRO_APPLE_PLATFORM=${CPU}-apple-macos + platform=osx + ) elseif(CORE_SYSTEM_NAME STREQUAL ios OR CORE_SYSTEM_NAME STREQUAL darwin_embedded) if(CORE_PLATFORM_NAME STREQUAL ios) set(LIBRETRO_SONAME daphne_libretro_ios${CMAKE_SHARED_LIBRARY_SUFFIX}) @@ -40,10 +64,22 @@ elseif(CORE_SYSTEM_NAME STREQUAL ios OR CORE_SYSTEM_NAME STREQUAL darwin_embedde else() set(PLATFORM ios) endif() - set(BUILD_COMMAND IOSSDK=${CMAKE_OSX_SYSROOT} $(MAKE) -C . -f Makefile platform=${PLATFORM} ${LIBRETRO_DEBUG} GIT_VERSION=) + set(BUILD_COMMAND IOSSDK=${CMAKE_OSX_SYSROOT} $(MAKE) + -C . + -f Makefile + ${LIBRETRO_DEBUG} + GIT_VERSION= + platform=${PLATFORM} + ) elseif(CORE_PLATFORM_NAME STREQUAL tvos) set(LIBRETRO_SONAME daphne_libretro_tvos${CMAKE_SHARED_LIBRARY_SUFFIX}) - set(BUILD_COMMAND IOSSDK=${CMAKE_OSX_SYSROOT} $(MAKE) -C . -f Makefile platform=tvos-arm64 ${LIBRETRO_DEBUG} GIT_VERSION=) + set(BUILD_COMMAND IOSSDK=${CMAKE_OSX_SYSROOT} $(MAKE) + -C . + -f Makefile + ${LIBRETRO_DEBUG} + GIT_VERSION= + platform=tvos-arm64 + ) endif() elseif(CORE_SYSTEM_NAME STREQUAL android) if(NOT NDKROOT) @@ -56,13 +92,27 @@ elseif(CORE_SYSTEM_NAME STREQUAL android) else() message(FATAL_ERROR "${PROJECT_NAME} needs Android ${CPU} build command in CMakeLists.txt!") endif() - set(BUILD_COMMAND GNUMAKE=$(MAKE) ${NDKROOT}/ndk-build -C jni APP_ABI=${PLATFORM} V7NEONOPTIMIZATION=1 GIT_VERSION= - NDK_LIBS_OUT=${PROJECT_SOURCE_DIR}/${LIBRETRO_BINARY_DIR} ${LIBRETRO_DEBUG} V=1 + set(BUILD_COMMAND GNUMAKE=$(MAKE) ${NDKROOT}/ndk-build + -C jni + ${LIBRETRO_DEBUG} + APP_ABI=${PLATFORM} + APP_SHORT_COMMANDS=true + GIT_VERSION= + NDK_LIBS_OUT=${PROJECT_SOURCE_DIR}/${LIBRETRO_BINARY_DIR} + V=1 + V7NEONOPTIMIZATION=1 + && cp ${PROJECT_SOURCE_DIR}/${LIBRETRO_BINARY_DIR}/${PLATFORM}/${LIBRETRO_JNISONAME} ${PROJECT_SOURCE_DIR}/${LIBRETRO_BINARY_DIR}/${LIBRETRO_SONAME}) elseif(CORE_SYSTEM_NAME STREQUAL rbpi) message(FATAL_ERROR "${PROJECT_NAME} needs RPi build command in CMakeLists.txt!") elseif(CORE_SYSTEM_NAME STREQUAL freebsd) - set(BUILD_COMMAND $(MAKE) -C . -f Makefile platform=unix ${LIBRETRO_DEBUG} GIT_VERSION=) + set(BUILD_COMMAND $(MAKE) + -C . + -f Makefile + ${LIBRETRO_DEBUG + GIT_VERSION= + platform=unix + ) else() message(FATAL_ERROR "${PROJECT_NAME} - Unknown system: ${CORE_SYSTEM_NAME}") endif() diff --git a/game.libretro.daphne/addon.xml.in b/game.libretro.daphne/addon.xml.in index 0783b7f..9dae140 100644 --- a/game.libretro.daphne/addon.xml.in +++ b/game.libretro.daphne/addon.xml.in @@ -1,7 +1,7 @@