22#
33# SPDX-License-Identifier: CC0-1.0
44
5- name : Linux
5+ name : CI
66
77' on ' :
88 push :
@@ -11,14 +11,12 @@ name: Linux
1111 - ' */ci'
1212 paths-ignore :
1313 - ' **/*.md'
14- - ' .cirrus.yml'
1514 - ' .appveyor.yml'
1615 pull_request :
1716 branches :
1817 - master
1918 paths-ignore :
2019 - ' **/*.md'
21- - ' .cirrus.yml'
2220 - ' .appveyor.yml'
2321
2422permissions : {}
@@ -130,3 +128,51 @@ jobs:
130128 with :
131129 github-token : ${{ secrets.github_token }}
132130 file : libexif-testsuite/lcov.info
131+
132+ freebsd :
133+ runs-on : ubuntu-latest
134+ defaults :
135+ run :
136+ shell : cpa.sh {0}
137+ strategy :
138+ fail-fast : false
139+ matrix :
140+ osver : ['13.5', '14.3', '15.0']
141+ arch : ['x86_64', 'aarch64']
142+ cflags : [-Wall -Wextra -O2]
143+ steps :
144+ - uses : actions/checkout@v6
145+ - name : start VM
146+ uses : cross-platform-actions/action@v1
147+ with :
148+ operating_system : ' freebsd'
149+ version : ${{ matrix.osver }}
150+ architecture : ${{ matrix.arch }}
151+ - name : install deps
152+ run : sudo pkg install -y autoconf automake libtool gettext-tools gettext-runtime popt pkgconf git
153+ - name : build libexif
154+ run : |
155+ git clone --depth=1 https://github.com/libexif/libexif.git /tmp/libexif
156+ cd /tmp/libexif
157+ autoreconf -sivf
158+ ./configure --prefix=/tmp/libexif/install --disable-dependency-tracking
159+ make -j 3 V=1
160+ make -j 3 V=1 install
161+ - name : autoconf
162+ run : autoreconf -sivf
163+ - name : configure
164+ if : matrix.osver == '13.5'
165+ run : ./configure --prefix="${HOME}" CFLAGS="${{ matrix.cflags }}" PKG_CONFIG_PATH="/tmp/libexif/install/lib/pkgconfig:/usr/libdata/pkgconfig:/usr/local/libdata/pkgconfig" POPT_CFLAGS="`pkg-config --cflags popt`" POPT_LIBS="`pkg-config --libs popt`"
166+ - name : configure
167+ if : matrix.osver != '13.5'
168+ run : ./configure --prefix="${HOME}" CFLAGS="${{ matrix.cflags }}" PKG_CONFIG_PATH="/tmp/libexif/install/lib/pkgconfig:/usr/libdata/pkgconfig:/usr/local/libdata/pkgconfig" POPT_CFLAGS="$(pkg-config --cflags popt)" POPT_LIBS="$(pkg-config --libs popt)" || { tail -400 config.log; false; }
169+ - name : build
170+ run : make -j 3 V=1
171+ - name : test
172+ if : matrix.osver == '13.5'
173+ run : make -j 3 V=1 check
174+ - name : test
175+ if : matrix.osver != '13.5'
176+ run : make -j 3 V=1 check || { tail -400 test/test-suite.log; false; }
177+ - name : install test
178+ run : make -j 3 V=1 install
0 commit comments