Merge pull request #3026 from defnax/macos-14-workflow-v2

Added macos workflow
This commit is contained in:
csoler 2025-10-21 10:55:49 +02:00 committed by GitHub
commit d14f2c9bbe
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
2 changed files with 98 additions and 8 deletions

83
.github/workflows/ci-macOS.yml vendored Normal file
View file

@ -0,0 +1,83 @@
name: macOS Build
on:
push:
paths-ignore:
- '**/*.md'
pull_request:
paths-ignore:
- '**/*.md'
concurrency:
group: ${{ github.workflow}}-${{ github.head_ref }}
cancel-in-progress: true
permissions:
contents: read
jobs:
build:
runs-on: macos-14
permissions:
actions: write
defaults:
run:
shell: bash
steps:
- name: Setup XCode
uses: maxim-lobanov/setup-xcode@v1
with:
xcode-version: 15.0.1
- name: Show current version of Xcode
run: xcodebuild -version
- name: Checkout repository
uses: actions/checkout@v4
with:
persist-credentials: false
- name: Setup Homebrew
id: set-up-homebrew
uses: Homebrew/actions/setup-homebrew@main
- name: Show OpenSSL version
run: pkg-config --cflags libcrypto
- name: Install Packages
run: brew install openssl
miniupnpc
rapidjson
sqlcipher
bzip2
zlib
botan@2
libxslt
libxml2
qt
- name: Checkout submodules
run: |
env
git submodule update --init --remote libbitdht/ libretroshare/ retroshare-webui/
git submodule update --init supportlibs/librnp supportlibs/rapidjson supportlibs/restbed openpgpsdk/
- name: CI-Build
run: |
qmake6 . -r "CONFIG+=rs_macos14.0" "CONFIG+=release" "CONFIG+=rs_autologin" "CONFIG+=no_rs_sam3" "CONFIG+=no_rs_sam3_libsam3" "CONFIG+=rs_no_rnplib" \
INCLUDEPATH+="/opt/homebrew/opt/openssl@3/include" \
INCLUDEPATH+="/opt/homebrew/opt/rapidjson/include" \
INCLUDEPATH+="/opt/homebrew/opt/sqlcipher/include" \
INCLUDEPATH+="/opt/homebrew/opt/miniupnpc/include" \
INCLUDEPATH+="/opt/homebrew/opt/libxslt/include" \
INCLUDEPATH+="/opt/homebrew/opt/libxml2/include" \
QMAKE_LIBDIR+="/opt/homebrew/opt/openssl@3/lib" \
QMAKE_LIBDIR+="/opt/homebrew/opt/rapidjson/lib" \
QMAKE_LIBDIR+="/opt/homebrew/opt/sqlcipher/lib" \
QMAKE_LIBDIR+="/opt/homebrew/opt/miniupnpc/lib" \
QMAKE_LIBDIR+="/opt/homebrew/opt/libxslt/lib" \
QMAKE_LIBDIR+="/opt/homebrew/opt/libxml2/lib" \
CONFIG+=no_retroshare_service \
CONFIG+=no_retroshare_friendserver
make

View file

@ -133,13 +133,13 @@ use_dht_stunner_ext_ip:CONFIG -= no_use_dht_stunner_ext_ip
# To select your MacOsX version append the following assignation to qmake # To select your MacOsX version append the following assignation to qmake
# command line "CONFIG+=rs_macos10.13" where 10.13 depends your version # command line "CONFIG+=rs_macos10.13" where 10.13 depends your version
macx:CONFIG *= rs_macos10.13 macx:CONFIG *= rs_macos10.13
rs_macos10.13:CONFIG -= rs_macos10.11 rs_macos10.14:CONFIG -= rs_macos10.13
rs_macos10.14:CONFIG -= rs_macos10.11 rs_macos10.15:CONFIG -= rs_macos10.13
rs_macos10.15:CONFIG -= rs_macos10.11 rs_macos11.1:CONFIG -= rs_macos10.13
rs_macos11.1:CONFIG -= rs_macos10.11 rs_macos14.0:CONFIG -= rs_macos10.13
rs_macos14.5:CONFIG -= rs_macos10.11 rs_macos14.5:CONFIG -= rs_macos10.13
rs_macos15.2:CONFIG -= rs_macos10.11 rs_macos15.2:CONFIG -= rs_macos10.13
rs_macos15.5:CONFIG -= rs_macos10.11 rs_macos15.5:CONFIG -= rs_macos10.13
# To enable JSON API append the following assignation to qmake command line # To enable JSON API append the following assignation to qmake command line
# "CONFIG+=rs_jsonapi" # "CONFIG+=rs_jsonapi"
@ -823,6 +823,13 @@ macx-* {
QMAKE_CXXFLAGS += -Wno-nullability-completeness QMAKE_CXXFLAGS += -Wno-nullability-completeness
QMAKE_CFLAGS += -Wno-nullability-completeness QMAKE_CFLAGS += -Wno-nullability-completeness
} }
rs_macos14.0 {
message(***retroshare.pri: Set Target and SDK to MacOS 14.0 )
QMAKE_MACOSX_DEPLOYMENT_TARGET=14.0
QMAKE_MAC_SDK = macosx14.0
QMAKE_CXXFLAGS += -Wno-nullability-completeness
QMAKE_CFLAGS += -Wno-nullability-completeness
}
rs_macos14.5 { rs_macos14.5 {
message(***retroshare.pri: Set Target and SDK to MacOS 14.5 ) message(***retroshare.pri: Set Target and SDK to MacOS 14.5 )
QMAKE_MACOSX_DEPLOYMENT_TARGET=10.13 QMAKE_MACOSX_DEPLOYMENT_TARGET=10.13
@ -851,7 +858,7 @@ macx-* {
BIN_DIR += "/Applications/Xcode.app/Contents/Developer/usr/bin" BIN_DIR += "/Applications/Xcode.app/Contents/Developer/usr/bin"
INCLUDEPATH += "/usr/local/include" INCLUDEPATH += "/usr/local/include"
RS_UPNP_LIB = miniupnpc RS_UPNP_LIB = miniupnpc
QT += macextras lessThan(QT_MAJOR_VERSION, 6): QT += macextras
INCLUDEPATH += "/usr/local/opt/openssl/include" INCLUDEPATH += "/usr/local/opt/openssl/include"
QMAKE_LIBDIR += "/usr/local/opt/openssl/lib" QMAKE_LIBDIR += "/usr/local/opt/openssl/lib"
QMAKE_LIBDIR += "/usr/local/opt/sqlcipher/lib" QMAKE_LIBDIR += "/usr/local/opt/sqlcipher/lib"