libretro: fix gitlab CI (#1044)

This commit is contained in:
Eric Warmenhoven 2024-10-02 09:20:01 -04:00 committed by GitHub
parent cb61f676ec
commit 0016f74a69
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
2 changed files with 43 additions and 57 deletions

View File

@ -76,50 +76,64 @@ libretro-build-linux-x64:
extends: extends:
- .libretro-linux-x64-make-default - .libretro-linux-x64-make-default
- .core-defs - .core-defs
image: $CI_SERVER_HOST:5050/libretro-infrastructure/libretro-build-amd64-ubuntu:latest
before_script:
- export NUMPROC=$(($(nproc)/5))
- sudo apt-get update -qy
- sudo apt-get install -qy software-properties-common
- sudo add-apt-repository -y ppa:savoury1/build-tools
- sudo add-apt-repository -y ppa:savoury1/gcc-defaults-12
- sudo apt-get update -qy
- sudo apt-get install -qy gcc-12 g++-12
# This container's existing installations of gcc and CMake are way too old
variables:
CC: /usr/bin/gcc-12
CXX: /usr/bin/g++-12
CXXFLAGS: -Wno-deprecated-declarations # Deprecation warnings aren't helpful on the libretro Gitlab
# MacOS 64-bit # MacOS 64-bit
libretro-build-osx-x64: libretro-build-osx-x64:
tags:
- mac-apple-silicon
extends: extends:
- .libretro-osx-x64-make-default - .libretro-osx-x64-make-default
- .core-defs - .core-defs
# MacOS ARM 64-bit # MacOS ARM 64-bit
libretro-build-osx-arm64: libretro-build-osx-arm64:
tags:
- mac-apple-silicon
extends: extends:
- .libretro-osx-arm64-make-default - .libretro-osx-arm64-make-default
- .core-defs - .core-defs
################################### CELLULAR ################################# ################################### CELLULAR #################################
# Android ARMv7a # Android ARMv7a
android-armeabi-v7a: # android-armeabi-v7a:
extends: # extends:
- .libretro-android-jni-armeabi-v7a # - .libretro-android-jni-armeabi-v7a
- .core-defs # - .core-defs
# Android ARMv8a # Android ARMv8a
android-arm64-v8a: # android-arm64-v8a:
extends: # extends:
- .libretro-android-jni-arm64-v8a # - .libretro-android-jni-arm64-v8a
- .core-defs # - .core-defs
# Android 64-bit x86 # Android 64-bit x86
android-x86_64: # android-x86_64:
extends: # extends:
- .libretro-android-jni-x86_64 # - .libretro-android-jni-x86_64
- .core-defs # - .core-defs
# iOS # iOS
libretro-build-ios-arm64: libretro-build-ios-arm64:
tags:
- mac-apple-silicon
extends: extends:
- .libretro-ios-arm64-make-default - .libretro-ios-arm64-make-default
- .core-defs - .core-defs
# iOS (armv7) [iOS 9 and up]
libretro-build-ios9:
extends:
- .libretro-ios9-make-default
- .core-defs
# tvOS # tvOS
libretro-build-tvos-arm64: libretro-build-tvos-arm64:
extends: extends:
@ -128,7 +142,7 @@ libretro-build-tvos-arm64:
################################### CONSOLES ################################# ################################### CONSOLES #################################
# Nintendo Switch # Nintendo Switch
libretro-build-libnx-aarch64: # libretro-build-libnx-aarch64:
extends: # extends:
- .libretro-libnx-static-retroarch-master # - .libretro-libnx-static-retroarch-master
- .core-defs # - .core-defs

View File

@ -64,9 +64,6 @@ ifneq (,$(findstring unix,$(platform)))
ifeq ($(GPP_MAJOR),) ifeq ($(GPP_MAJOR),)
$(error Unable to determine $(CXX) version) $(error Unable to determine $(CXX) version)
endif endif
ifeq "$(shell [ $(GPP_MAJOR) -lt 10 ]; echo $$?)" "0"
CXXFLAGS := $(subst -std=c++20,-std=c++2a,$(CXXFLAGS))
endif
CXXFLAGS += $(LTO) CXXFLAGS += $(LTO)
LDFLAGS += $(LTO) $(PTHREAD_FLAGS) $(call GET_STATIC_ARG,libgcc) $(call GET_STATIC_ARG,libstdc++) LDFLAGS += $(LTO) $(PTHREAD_FLAGS) $(call GET_STATIC_ARG,libgcc) $(call GET_STATIC_ARG,libstdc++)
TARGET := $(TARGET_NAME)_libretro.so TARGET := $(TARGET_NAME)_libretro.so
@ -88,13 +85,6 @@ ifneq (,$(findstring unix,$(platform)))
# OS X # OS X
else ifeq ($(platform), osx) else ifeq ($(platform), osx)
XCODE_MAJOR := $(shell xcodebuild -version | grep -oE 'Xcode ([0-9]+)' | cut -d ' ' -f 2)
ifeq ($(XCODE_MAJOR),)
$(error Unable to determine Xcode version)
endif
ifeq "$(shell [ $(XCODE_MAJOR) -lt 14 ]; echo $$?)" "0"
CXXFLAGS := $(subst -std=c++20,-std=c++2a,$(CXXFLAGS))
endif
CXXFLAGS += $(LTO) -stdlib=libc++ CXXFLAGS += $(LTO) -stdlib=libc++
LDFLAGS += $(LTO) $(PTHREAD_FLAGS) -stdlib=libc++ LDFLAGS += $(LTO) $(PTHREAD_FLAGS) -stdlib=libc++
TARGET := $(TARGET_NAME)_libretro.dylib TARGET := $(TARGET_NAME)_libretro.dylib
@ -108,21 +98,17 @@ else ifeq ($(platform), osx)
ifeq ($(arch),ppc) ifeq ($(arch),ppc)
CXXFLAGS += -DBLARGG_BIG_ENDIAN=1 -D__ppc__ CXXFLAGS += -DBLARGG_BIG_ENDIAN=1 -D__ppc__
endif endif
OSXVER = $(shell sw_vers -productVersion | cut -d. -f 2)
OSX_GT_MOJAVE = $(shell (( $(OSXVER) >= 14)) && echo "YES")
ifneq ($(OSX_GT_MOJAVE),YES)
#this breaks compiling on Mac OS Mojave
MINVERSION = -mmacosx-version-min=10.7
endif
fpic += $(MINVERSION) fpic += $(MINVERSION)
ifeq ($(CROSS_COMPILE),1) ifeq ($(CROSS_COMPILE),1)
TARGET_RULE = -target $(LIBRETRO_APPLE_PLATFORM) -isysroot $(LIBRETRO_APPLE_ISYSROOT) TARGET_RULE = -target $(LIBRETRO_APPLE_PLATFORM)
CFLAGS += $(TARGET_RULE) else
CPPFLAGS += $(TARGET_RULE) TARGET_RULE = -target x86_64-apple-macos10.13
CXXFLAGS += $(TARGET_RULE)
LDFLAGS += $(TARGET_RULE)
endif endif
CFLAGS += $(TARGET_RULE)
CPPFLAGS += $(TARGET_RULE)
CXXFLAGS += $(TARGET_RULE)
LDFLAGS += $(TARGET_RULE)
CFLAGS += $(ARCHFLAGS) CFLAGS += $(ARCHFLAGS)
CXXFLAGS += $(ARCHFLAGS) CXXFLAGS += $(ARCHFLAGS)
@ -130,13 +116,6 @@ else ifeq ($(platform), osx)
# iOS # iOS
else ifneq (,$(findstring ios,$(platform))) else ifneq (,$(findstring ios,$(platform)))
XCODE_MAJOR := $(shell xcodebuild -version | grep -oE 'Xcode ([0-9]+)' | cut -d ' ' -f 2)
ifeq ($(XCODE_MAJOR),)
$(error Unable to determine Xcode version)
endif
ifeq "$(shell [ $(XCODE_MAJOR) -lt 14 ]; echo $$?)" "0"
CXXFLAGS := $(subst -std=c++20,-std=c++2a,$(CXXFLAGS))
endif
CXXFLAGS += $(LTO) -stdlib=libc++ CXXFLAGS += $(LTO) -stdlib=libc++
LDFLAGS += $(LTO) $(PTHREAD_FLAGS) -stdlib=libc++ LDFLAGS += $(LTO) $(PTHREAD_FLAGS) -stdlib=libc++
TARGET := $(TARGET_NAME)_libretro_ios.dylib TARGET := $(TARGET_NAME)_libretro_ios.dylib
@ -163,13 +142,6 @@ else ifneq (,$(findstring ios,$(platform)))
# tvOS # tvOS
else ifeq ($(platform), tvos-arm64) else ifeq ($(platform), tvos-arm64)
XCODE_MAJOR := $(shell xcodebuild -version | grep -oE 'Xcode ([0-9]+)' | cut -d ' ' -f 2)
ifeq ($(XCODE_MAJOR),)
$(error Unable to determine Xcode version)
endif
ifeq "$(shell [ $(XCODE_MAJOR) -lt 14 ]; echo $$?)" "0"
CXXFLAGS := $(subst -std=c++20,-std=c++2a,$(CXXFLAGS))
endif
CXXFLAGS += $(LTO) $(PTHREAD_FLAGS) -stdlib=libc++ CXXFLAGS += $(LTO) $(PTHREAD_FLAGS) -stdlib=libc++
LDFLAGS += $(LTO) $(PTHREAD_FLAGS) -stdlib=libc++ LDFLAGS += $(LTO) $(PTHREAD_FLAGS) -stdlib=libc++
TARGET := $(TARGET_NAME)_libretro_tvos.dylib TARGET := $(TARGET_NAME)_libretro_tvos.dylib