Skip to content

pages: give the logo rounded corners #504

pages: give the logo rounded corners

pages: give the logo rounded corners #504

Workflow file for this run

name: build
on: [push, pull_request]
jobs:
linux:
strategy:
fail-fast: false
matrix:
include:
- debian-arch: i386
cflags: -m32
cxxflags: -m32
rust-target: i686-unknown-linux-gnu
cmake-find-root-path: /usr/lib/i386-linux-gnu
teb-target: linux-i686
arch: i386
- debian-arch: amd64
rust-target: x86_64-unknown-linux-gnu
cmake-find-root-path: /usr/lib/x86_64-linux-gnu
teb-target: linux-x86_64
arch: x86_64
runs-on: ubuntu-latest
steps:
- name: Checkout Gosling
uses: actions/checkout@v4
with:
submodules: true
- name: Install Dependencies
run: |
sudo dpkg --add-architecture ${{ matrix.debian-arch }}
sudo apt-get update
sudo apt install -y gcc-multilib g++-multilib
sudo apt-get install -y libc6:${{ matrix.debian-arch }} libstdc++6:${{ matrix.debian-arch }} libboost-all-dev:${{ matrix.debian-arch }} libncurses-dev:${{ matrix.debian-arch }} default-jdk:${{ matrix.debian-arch }} dpkg-dev libssl-dev:${{ matrix.debian-arch }} libsqlite3-dev:${{ matrix.debian-arch }} liblzma-dev:${{ matrix.debian-arch }}
- name: Configure Rust
run: |
rustup target add ${{ matrix.rust-target }}
rustup default stable-${{ matrix.rust-target }}
- name: Build Debug
run: |
cmake -S . -B build -G "Unix Makefiles" -DCMAKE_BUILD_TYPE=Debug -DCMAKE_INSTALL_PREFIX=dist/debug -DBUILD_PYTHON_BINDINGS=ON -DBUILD_JAVA_BINDINGS=ON -DBUILD_DEBIAN_SOURCE_PACKAGE=ON -DENABLE_TOR_EXPERT_BUNDLE=ON -DTEB_TARGET=${{ matrix.teb-target }} -DCMAKE_C_FLAGS="${{ matrix.cflags }}" -DCMAKE_CXX_FLAGS="${{ matrix.cxxflags }}" -DCMAKE_FIND_ROOT_PATH=${{ matrix.cmake-find-root-path }}
cmake --build build
cmake --install build
- name: Archive Debug
run: |
cd dist
tar -cf gosling-linux-gnu-${{ matrix.arch }}-debug.tar debug
- name: Upload Debug
uses: actions/upload-artifact@v4
with:
name: gosling-linux-gnu-${{ matrix.arch }}-debug.tar
path: dist/gosling-linux-gnu-${{ matrix.arch }}-debug.tar
- name: Build Release
run: |
cmake -S . -B build -G "Unix Makefiles" -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=dist/release -DENABLE_LEGACY_TOR_PROVIDER=ON -DENABLE_ARTI_CLIENT_TOR_PROVIDER=ON -DBUILD_PYTHON_BINDINGS=ON -DBUILD_JAVA_BINDINGS=ON -DBUILD_DEBIAN_SOURCE_PACKAGE=ON -DENABLE_TOR_EXPERT_BUNDLE=ON -DTEB_TARGET=${{ matrix.teb-target }} -DCMAKE_C_FLAGS="${{ matrix.cflags }}" -DCMAKE_CXX_FLAGS="${{ matrix.cxxflags }}" -DCMAKE_FIND_ROOT_PATH=${{ matrix.cmake-find-root-path }}
cmake --build build
cmake --install build
- name: Archive Release
run: |
cd dist
tar -cf gosling-linux-gnu-${{ matrix.arch }}-release.tar release
- name: Upload Release
uses: actions/upload-artifact@v4
with:
name: gosling-linux-gnu-${{ matrix.arch }}-release.tar
path: dist/gosling-linux-gnu-${{ matrix.arch }}-release.tar
windows-msys2:
strategy:
fail-fast: false
matrix:
include:
- msystem: ucrt64
msys-env: ucrt-x86_64
java-arch: x64
teb-target: windows-x86_64
- msystem: clang64
msys-env: clang-x86_64
java-arch: x64
teb-target: windows-x86_64
- msystem: mingw64
msys-env: x86_64
java-arch: x86_64
teb-target: windows-x86_64
runs-on: windows-latest
defaults:
run:
shell: msys2 {0}
steps:
- name: Checkout Gosling
uses: actions/checkout@v4
with:
submodules: true
- name: Install MSYS2 Dependencies
uses: msys2/setup-msys2@v2
with:
msystem: ${{ matrix.msystem }}
update: true
install: >-
make
mingw-w64-${{ matrix.msys-env }}-cmake
mingw-w64-${{ matrix.msys-env }}-clang
mingw-w64-${{ matrix.msys-env }}-rust
mingw-w64-${{ matrix.msys-env }}-boost
mingw-w64-${{ matrix.msys-env }}-ncurses
mingw-w64-${{ matrix.msys-env }}-openssl
mingw-w64-${{ matrix.msys-env }}-sqlite3
mingw-w64-${{ matrix.msys-env }}-xz
- name: Install Java
uses: actions/setup-java@v4
with:
distribution: 'zulu'
java-version: '17'
architecture: ${{ matrix.java-arch }}
- name: Build Debug
env:
CC: clang
run: |
# manually add java bins to PATH >:[
export PATH=$(cygpath -u ${JAVA_HOME})/bin:$PATH
mkdir -p build/debug
cd build/debug
cmake ../.. -G "Unix Makefiles" -DCMAKE_BUILD_TYPE=Debug -DCMAKE_INSTALL_PREFIX=../../dist/debug -DENABLE_LEGACY_TOR_PROVIDER=ON -DENABLE_ARTI_CLIENT_TOR_PROVIDER=ON -DBUILD_PYTHON_BINDINGS=ON -DBUILD_JAVA_BINDINGS=ON -DBUILD_EXAMPLES=ON -DBUILD_MSYS2_PKGBUILD=ON -DENABLE_TOR_EXPERT_BUNDLE=ON -DTEB_TARGET=${{ matrix.teb-target }}
make
make install
- name: Archive Debug
run: |
cd dist
tar -cf gosling-windows-mingw-w64-${{ matrix.msys-env }}-debug.tar debug
- name: Upload Debug
uses: actions/upload-artifact@v4
with:
name: gosling-windows-mingw-w64-${{ matrix.msys-env }}-debug.tar
path: dist/gosling-windows-mingw-w64-${{ matrix.msys-env }}-debug.tar
- name: Build Release
env:
CC: clang
run: |
# manually add java bins to PATH >:[
export PATH=$(cygpath -u ${JAVA_HOME})/bin:$PATH
mkdir -p build/release
cd build/release
cmake ../.. -G "Unix Makefiles" -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=../../dist/release -DENABLE_LEGACY_TOR_PROVIDER=ON -DENABLE_ARTI_CLIENT_TOR_PROVIDER=ON -DBUILD_PYTHON_BINDINGS=ON -DBUILD_JAVA_BINDINGS=ON -DBUILD_EXAMPLES=ON -DBUILD_MSYS2_PKGBUILD=ON -DENABLE_TOR_EXPERT_BUNDLE=ON -DTEB_TARGET=${{ matrix.teb-target }}
make
make install
- name: Archive Release
run: |
cd dist
tar -cf gosling-windows-mingw-w64-${{ matrix.msys-env }}-release.tar release
- name: Upload Release
uses: actions/upload-artifact@v4
with:
name: gosling-windows-mingw-w64-${{ matrix.msys-env }}-release.tar
path: dist/gosling-windows-mingw-w64-${{ matrix.msys-env }}-release.tar
windows-msvc:
strategy:
fail-fast: false
matrix:
include:
- java-arch: x64
platform: x64
rust-target: x86_64-pc-windows-msvc
teb-target: windows-x86_64
vcpkg-triplet: x64-windows
- java-arch: x86
platform: Win32
rust-target: i686-pc-windows-msvc
teb-target: windows-x86_64
vcpkg-triplet: x86-windows
runs-on: windows-latest
steps:
- name: Checkout Gosling
uses: actions/checkout@v4
with:
submodules: true
- name: Install Java
uses: actions/setup-java@v4
with:
distribution: 'zulu'
java-version: '17'
architecture: ${{ matrix.java-arch }}
- name: Install boost
uses: MarkusJx/[email protected]
id: install-boost
with:
boost_version: 1.78.0
platform_version: 2022
toolset: msvc
- name: Install Dependencies
env:
VCPKG_DEFAULT_TRIPLET: ${{ matrix.vcpkg-triplet }}
run: |
vcpkg install openssl sqlite3 liblzma
- name: Configure Rust
run: |
rustup target add ${{ matrix.rust-target }}
rustup default stable-${{ matrix.rust-target }}
- name: Build Debug
env:
BOOST_ROOT: ${{ steps.install-boost.outputs.BOOST_ROOT }}
run: |
cmake -S . -B build/debug -DCMAKE_BUILD_TYPE=Debug -A ${{ matrix.platform }} -DCMAKE_TOOLCHAIN_FILE=C:/vcpkg/scripts/buildsystems/vcpkg.cmake -DCMAKE_INSTALL_PREFIX=dist/debug -DENABLE_LEGACY_TOR_PROVIDER=ON -DENABLE_ARTI_CLIENT_TOR_PROVIDER=ON -DBUILD_PYTHON_BINDINGS=ON -DBUILD_JAVA_BINDINGS=ON -DENABLE_TOR_EXPERT_BUNDLE=ON -DTEB_TARGET=${{ matrix.teb-target }}
cmake --build build/debug --config Debug
cmake --install build/debug --config Debug
- name: Upload Debug
uses: actions/upload-artifact@v4
with:
name: gosling-windows-msvc-${{ matrix.java-arch}}-debug
path: dist/debug
- name: Build Release
env:
BOOST_ROOT: ${{ steps.install-boost.outputs.BOOST_ROOT }}
run: |
cmake -S . -B build/release -DCMAKE_BUILD_TYPE=Release -A ${{ matrix.platform }} -DCMAKE_TOOLCHAIN_FILE=C:/vcpkg/scripts/buildsystems/vcpkg.cmake -DCMAKE_INSTALL_PREFIX=dist/release -DENABLE_LEGACY_TOR_PROVIDER=ON -DENABLE_ARTI_CLIENT_TOR_PROVIDER=ON -DBUILD_PYTHON_BINDINGS=ON -DBUILD_JAVA_BINDINGS=ON -DENABLE_TOR_EXPERT_BUNDLE=ON -DTEB_TARGET=${{ matrix.teb-target }}
cmake --build build/release --config Release
cmake --install build/release --config Release
- name: Upload Release
uses: actions/upload-artifact@v4
with:
name: gosling-windows-msvc-${{ matrix.java-arch}}-release
path: dist/release
macos:
strategy:
fail-fast: false
matrix:
include:
- runs-on: macos-12
arch: x86_64
teb-target: macos-x86_64
macosx-deployment-target: 12.7
- runs-on: macos-14
arch: aarch64
teb-target: macos-aarch64
macosx-deployment-target: 14.0
runs-on: ${{ matrix.runs-on }}
steps:
- name: Checkout Gosling
uses: actions/checkout@v4
with:
submodules: true
- name: Install Dependencies
run: |
brew install boost openssl sqlite xz
- name: Build Debug
env:
MACOSX_DEPLOYMENT_TARGET: ${{ matrix.macosx-deployment-target }}
run: |
mkdir -p build/debug
cd build/debug
cmake ../.. -G "Unix Makefiles" -DCMAKE_BUILD_TYPE=Debug -DCMAKE_PREFIX_PATH="$(brew --prefix)" -DCMAKE_INSTALL_PREFIX=../../dist/debug -DENABLE_LEGACY_TOR_PROVIDER=ON -DENABLE_ARTI_CLIENT_TOR_PROVIDER=ON -DBUILD_PYTHON_BINDINGS=ON -DBUILD_JAVA_BINDINGS=ON -DBUILD_EXAMPLES=ON -DBUILD_HOMEBREW_FORMULA=ON -DENABLE_TOR_EXPERT_BUNDLE=ON -DTEB_TARGET=${{ matrix.teb-target }}
make
make install
- name: Archive Debug
run: |
cd dist
tar -cf gosling-macos-${{ matrix.arch }}-debug.tar debug
- name: Upload Debug
uses: actions/upload-artifact@v4
with:
name: gosling-macos-${{ matrix.arch }}-debug.tar
path: dist/gosling-macos-${{ matrix.arch }}-debug.tar
- name: Build Release
env:
MACOSX_DEPLOYMENT_TARGET: ${{ matrix.macosx-deployment-target }}
run: |
mkdir -p build/release
cd build/release
cmake ../.. -G "Unix Makefiles" -DCMAKE_BUILD_TYPE=Release -DCMAKE_PREFIX_PATH="$(brew --prefix)" -DCMAKE_INSTALL_PREFIX=../../dist/release -DENABLE_LEGACY_TOR_PROVIDER=ON -DENABLE_ARTI_CLIENT_TOR_PROVIDER=ON -DBUILD_PYTHON_BINDINGS=ON -DBUILD_JAVA_BINDINGS=ON -DBUILD_EXAMPLES=ON -DBUILD_HOMEBREW_FORMULA=ON -DENABLE_TOR_EXPERT_BUNDLE=ON -DTEB_TARGET=${{ matrix.teb-target }}
make
make install
- name: Archive Release
run: |
cd dist
tar -cf gosling-macos-${{ matrix.arch }}-release.tar release
- name: Upload Release
uses: actions/upload-artifact@v4
with:
name: gosling-macos-${{ matrix.arch }}-release.tar
path: dist/gosling-macos-${{ matrix.arch }}-release.tar