mirror of
https://github.com/troglobit/finit.git
synced 2026-10-07 16:14:21 +07:00
GitHub have now stepped their 'ubuntu-latest' image to Ubuntu 22.04. With that comes the GLIBC bump to >= 2.34 which require aligning the time bits and file offset bits to 64 bits. This is libuev v2.4.0. We also make sure to align libite to the same version between the workflows to avoid any nasty surprises. Signed-off-by: Joachim Wiberg <troglobit@gmail.com>
74 lines
2.4 KiB
YAML
74 lines
2.4 KiB
YAML
name: Bob the Builder
|
|
|
|
# Run on all branches, including all pull requests, except the 'dev'
|
|
# branch since that's where we run Coverity Scan (limited tokens/day)
|
|
on:
|
|
push:
|
|
branches:
|
|
- '**'
|
|
- '!dev'
|
|
pull_request:
|
|
branches:
|
|
- '**'
|
|
|
|
jobs:
|
|
build:
|
|
# Verify we can build on latest Ubuntu with both gcc and clang
|
|
name: ${{ matrix.compiler }}
|
|
runs-on: ubuntu-latest
|
|
strategy:
|
|
matrix:
|
|
compiler: [gcc, clang]
|
|
fail-fast: false
|
|
env:
|
|
MAKEFLAGS: -j3
|
|
CC: ${{ matrix.compiler }}
|
|
steps:
|
|
- name: Install dependencies
|
|
run: |
|
|
sudo apt-get -y update
|
|
sudo apt-get -y install pkg-config tree jq
|
|
wget https://github.com/troglobit/libuev/releases/download/v2.4.0/libuev-2.4.0.tar.xz
|
|
wget https://github.com/troglobit/libite/releases/download/v2.5.2/libite-2.5.2.tar.gz
|
|
tar xf libuev-2.4.0.tar.xz
|
|
tar xf libite-2.5.2.tar.gz
|
|
(cd libuev-2.4.0 && ./configure --prefix=/usr && make && sudo make install-strip)
|
|
(cd libite-2.5.2 && ./configure --prefix=/usr && make && sudo make install-strip)
|
|
sudo ldconfig
|
|
- uses: actions/checkout@v3
|
|
- name: Static Finit
|
|
run: |
|
|
./autogen.sh
|
|
./configure --prefix= --enable-static
|
|
make V=1
|
|
- name: Regular Finit
|
|
run: |
|
|
./configure --prefix=/usr --exec-prefix= --sysconfdir=/etc --localstatedir=/var --enable-x11-common-plugin --with-watchdog --with-keventd
|
|
make clean
|
|
make V=1
|
|
- name: Install to ~/tmp and Inspect
|
|
run: |
|
|
DESTDIR=/tmp make install-strip
|
|
tree /tmp
|
|
ldd /tmp/sbin/finit
|
|
size /tmp/sbin/finit
|
|
ldd /tmp/sbin/initctl
|
|
size /tmp/sbin/initctl
|
|
ldd /tmp/sbin/reboot
|
|
size /tmp/sbin/reboot
|
|
/tmp/sbin/finit -h
|
|
/tmp/sbin/initctl -h
|
|
- name: Run Unit Tests
|
|
run: |
|
|
make check || (cat test/test-suite.log; false)
|
|
- name: Check dist tarball
|
|
run: |
|
|
ver=$(/tmp/sbin/initctl -V | awk '/Finit.*/ {print $2;}')
|
|
dir=finit-$ver/_build/sub
|
|
make -j1 distcheck || (cat $dir/test/test-suite.log; false)
|
|
- name: Upload Test Results
|
|
uses: actions/upload-artifact@v3
|
|
with:
|
|
name: finit-test-${{ matrix.compiler }}
|
|
path: test/*.log
|