From e30a2c8b54311e174dc57dd95ead8d234e750138 Mon Sep 17 00:00:00 2001 From: Christoph Johannes Kleine Date: Sun, 7 Dec 2025 21:54:53 +0100 Subject: [PATCH 1/5] CHANGE: github workflow msys2 mingw-w64-x86_64 --- .github/workflows/ci-mingw64.yml | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/.github/workflows/ci-mingw64.yml b/.github/workflows/ci-mingw64.yml index 28f9f2d32..58bad1b43 100644 --- a/.github/workflows/ci-mingw64.yml +++ b/.github/workflows/ci-mingw64.yml @@ -25,10 +25,13 @@ jobs: shell: msys2 {0} steps: - - name: Checkout repository - uses: actions/checkout@v4 + # Checkout RetroShare: it is needed, because libretroshare.pro is looking for retroshare.pri + - name: Checkout repository RetroShare + uses: actions/checkout@v6 with: persist-credentials: false + repository: 'RetroShare/RetroShare' + submodules: 'false' - name: Setup MSYS2 uses: msys2/setup-msys2@40677d36a502eb2cf0fb808cc9dec31bf6152638 # v2.28.0 @@ -58,6 +61,11 @@ jobs: mingw-w64-x86_64-libbotan mingw-w64-x86_64-asio + - name: list directory and print working directory + run: | + pwd + ls -la + - name: Checkout submodules run: | env From dacf23a62a2c71724f502d45c5623d882f56c059 Mon Sep 17 00:00:00 2001 From: Christoph Johannes Kleine Date: Wed, 10 Dec 2025 22:34:57 +0100 Subject: [PATCH 2/5] workflow ci-mingw64 add compile options --- .github/workflows/ci-mingw64.yml | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/.github/workflows/ci-mingw64.yml b/.github/workflows/ci-mingw64.yml index 58bad1b43..a4e1cdcc4 100644 --- a/.github/workflows/ci-mingw64.yml +++ b/.github/workflows/ci-mingw64.yml @@ -74,5 +74,13 @@ jobs: - name: CI-Build run: | - qmake . -r -spec win32-g++ "CONFIG+=release" "CONFIG+=rs_autologin" "CONFIG+=no_rs_sam3" "CONFIG+=no_rs_sam3_libsam3" + qmake . -r -spec win32-g++ \ + "CONFIG+=debug" \ + "CONFIG+=release" \ + "CONFIG+=rs_autologin" \ + "CONFIG+=wikipoos" \ + "CONFIG+=gxsthewire" \ + "CONFIG+=retroshare_plugins" \ + "CONFIG+=no_rs_sam3" \ + "CONFIG+=no_rs_sam3_libsam3" mingw32-make -j3 From 5bdcc4b21edca3bbdd9b701a5b20beeaabc36e45 Mon Sep 17 00:00:00 2001 From: Christoph Johannes Kleine Date: Wed, 10 Dec 2025 22:35:56 +0100 Subject: [PATCH 3/5] workflow add ubuntu-qt6_c-cpp.yml --- .github/workflows/ubuntu-qt6_c-cpp.yml | 55 ++++++++++++++++++++++++++ 1 file changed, 55 insertions(+) create mode 100644 .github/workflows/ubuntu-qt6_c-cpp.yml diff --git a/.github/workflows/ubuntu-qt6_c-cpp.yml b/.github/workflows/ubuntu-qt6_c-cpp.yml new file mode 100644 index 000000000..994a13ff7 --- /dev/null +++ b/.github/workflows/ubuntu-qt6_c-cpp.yml @@ -0,0 +1,55 @@ +name: Ubuntu Qt 6 C/C++ CI + +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: ubuntu-24.04 + + steps: + # Checkout RetroShare: it is needed, because libretroshare.pro is looking for retroshare.pri + - name: Checkout repository RetroShare + uses: actions/checkout@v6 + with: + persist-credentials: false + repository: 'RetroShare/RetroShare' + submodules: 'false' + - name: git init submodules + run: git submodule update --init --remote libbitdht/ libretroshare/ openpgpsdk/ retroshare-webui/ && git --no-pager log --max-count 1 + - name: git submodule supportlibs + run: git submodule update --init supportlibs/librnp supportlibs/restbed #supportlibs/rapidjson + - name: run apt update + run: sudo apt-get update + - name: apt install + run: sudo apt-get install g++ cmake qt6-base-dev qt6-multimedia-dev libasio-dev libbz2-dev libjson-c-dev libssl-dev libsqlcipher-dev libupnp-dev libxss-dev rapidjson-dev libbotan-2-dev doxygen qt6-5compat-dev libqt6core5compat6-dev libsecret-1-dev libxml2-dev libxslt1-dev libcurl4-openssl-dev + - name: print working directory and list directory + run: pwd && ls -la + - name: qmake + run: | + qmake6 \ + CONFIG+=debug \ + CONFIG+=release \ + CONFIG+=rs_autologin \ + CONFIG+=rs_webui \ + CONFIG+=rs_jsonapi \ + CONFIG+=wikipoos \ + CONFIG+=gxsthewire \ + CONFIG+=retroshare_plugins + - name: make + run: make + - name: make check + run: make check From 57e90475fce9660d886b2f921035e5c4aec6a4d4 Mon Sep 17 00:00:00 2001 From: Christoph Johannes Kleine Date: Wed, 10 Dec 2025 22:36:28 +0100 Subject: [PATCH 4/5] workflow add ci-macOS.yml --- .github/workflows/ci-macOS.yml | 95 ++++++++++++++++++++++++++++++++++ 1 file changed, 95 insertions(+) create mode 100644 .github/workflows/ci-macOS.yml diff --git a/.github/workflows/ci-macOS.yml b/.github/workflows/ci-macOS.yml new file mode 100644 index 000000000..016dfbd8b --- /dev/null +++ b/.github/workflows/ci-macOS.yml @@ -0,0 +1,95 @@ +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 RetroShare + uses: actions/checkout@v6 + with: + persist-credentials: false + repository: 'RetroShare/RetroShare' + submodules: '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+=debug" \ + "CONFIG+=release" \ + "CONFIG+=rs_autologin" \ + "CONFIG+=wikipoos" \ + "CONFIG+=gxsthewire" \ + "CONFIG+=retroshare_plugins" \ + "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 From dbab733064c572af367d25f4815bee12ede4be1a Mon Sep 17 00:00:00 2001 From: Christoph Johannes Kleine Date: Wed, 10 Dec 2025 22:44:22 +0100 Subject: [PATCH 5/5] fix yaml --- .github/workflows/ubuntu-qt6_c-cpp.yml | 14 ++++++-------- 1 file changed, 6 insertions(+), 8 deletions(-) diff --git a/.github/workflows/ubuntu-qt6_c-cpp.yml b/.github/workflows/ubuntu-qt6_c-cpp.yml index 994a13ff7..6834208f5 100644 --- a/.github/workflows/ubuntu-qt6_c-cpp.yml +++ b/.github/workflows/ubuntu-qt6_c-cpp.yml @@ -17,17 +17,15 @@ permissions: jobs: build: - runs-on: ubuntu-24.04 - steps: # Checkout RetroShare: it is needed, because libretroshare.pro is looking for retroshare.pri - - name: Checkout repository RetroShare - uses: actions/checkout@v6 - with: - persist-credentials: false - repository: 'RetroShare/RetroShare' - submodules: 'false' + - name: Checkout repository RetroShare + uses: actions/checkout@v6 + with: + persist-credentials: false + repository: 'RetroShare/RetroShare' + submodules: 'false' - name: git init submodules run: git submodule update --init --remote libbitdht/ libretroshare/ openpgpsdk/ retroshare-webui/ && git --no-pager log --max-count 1 - name: git submodule supportlibs