add pkgconf x11 #86
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: CI | |
on: | |
push: | |
pull_request: | |
workflow_dispatch: | |
schedule: | |
- cron: "0 5 * * 3" # At 05:00 on Wednesday # https://crontab.guru/#0_5_*_*_3 | |
jobs: | |
job_test_gem: | |
name: Test in source tree | |
strategy: | |
fail-fast: false | |
matrix: | |
include: | |
# - os: windows | |
# ruby: "head" | |
# - os: windows | |
# ruby: "2.7" | |
# - os: ubuntu | |
# ruby: "head" | |
# - os: ubuntu | |
# ruby: "3.4" | |
# - os: ubuntu | |
# ruby: "2.7" | |
# - os: macos-13 | |
# ruby: "3.1" | |
# - os: macos-13 | |
# ruby: "head" | |
# - os: macos | |
# ruby: "3.1" | |
- os: macos | |
ruby: "head" | |
runs-on: ${{ matrix.os }}-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: ruby/setup-ruby-pkgs@v1 | |
with: | |
ruby-version: ${{ matrix.ruby }} # passed to ruby/setup-ruby | |
apt-get: "xpra xserver-xorg-video-dummy libxrandr-dev libfox-1.6-dev swig" # Ubuntu | |
brew: "fox swig xquartz pkgconf" # macOS | |
mingw: "fox swig gcc" # Windows mingw / mswin /ucrt | |
- name: Print tool versions | |
run: | | |
ruby -v | |
gcc -v | |
swig -version | |
gem env | |
- name: try to find pkg-config file | |
run: find / -name 'libX11*' || true | |
- name: Bundle install | |
run: bundle install | |
- name: Un-Install pkg-config | |
run: | | |
# pkg-config formula is deprecated but it's still installed | |
# in GitHub Actions runner now. We can remove this once | |
# pkg-config formula is removed from GitHub Actions runner. | |
brew uninstall pkg-config || : | |
- name: List pkg-config | |
run: ls -l /opt/homebrew/lib/pkgconfig/ | |
- name: Compile extension | |
env: | |
PKG_CONFIG_PATH: /opt/homebrew/lib/pkgconfig/:/Library/Frameworks/GStreamer.framework/Versions/1.0/lib/pkgconfig | |
run: bundle exec rake compile | |
- name: Linux Start xpra to enable GLX | |
if: matrix.os == 'ubuntu' | |
run: | | |
xpra --xvfb="Xorg +extension GLX -config `pwd`/test/dummy.xorg.conf -logfile ${HOME}/.xpra/xorg.log" start :9 | |
echo "DISPLAY=:9" >> $GITHUB_ENV | |
- name: MacOS Start XQuartz | |
if: matrix.os == 'macos' | |
run: | | |
open -a /Applications/Utilities/XQuartz.app | |
# wait some seconds until XQuartz has started | |
sleep 10 | |
- name: Run tests | |
run: bundle exec rake test | |
- name: Linux Print logs if job failed | |
if: ${{ failure() && matrix.os == 'ubuntu' }} | |
run: cat ~/.xpra/* | |
- name: Print compile logs if failed | |
if: ${{ failure() && matrix.os != 'windows' }} | |
run: find . -name '*.log' -print0 | xargs -0 cat | |