Files
heimdal/.github/workflows/osx.yml
2022-01-14 13:52:50 -06:00

95 lines
2.8 KiB
YAML

name: OS X Build
on:
push:
paths:
- '!docs/**'
- '!**.md'
- '!**.[1-9]'
- '**.[chly]'
- '**.hin'
- '**.in'
- '**.am'
- '**.m4'
- '**.ac'
- '**.pl'
- '**.py'
- '**.asn1'
- '**.opt'
- '**/COPYING'
- '**/INSTALL'
- '**/README*'
- '.github/workflows/build.yml'
- '!appveyor.yml'
- '!.travis.yml'
pull_request:
paths:
- '!docs/**'
- '!**.md'
- '!**.[1-9]'
- '**.[chly]'
- '**.hin'
- '**.in'
- '**.am'
- '**.m4'
- '**.ac'
- '**.pl'
- '**.py'
- '**.asn1'
- '**.opt'
- '**/COPYING'
- '**/INSTALL'
- '**/README*'
- '.github/workflows/build.yml'
- '!appveyor.yml'
- '!.travis.yml'
jobs:
osx:
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
name: [osx-clang]
include:
- name: osx-clang
os: macos-latest
compiler: clang
steps:
- name: Install packages
run: |
echo "bison, flex, ncurses, texinfo, and unzip are in the base OS."
echo "berkeley-db, perl, python, curl, and jq are installed in the"
echo "base image already."
brew install autoconf automake libtool cpanm
sudo cpanm install JSON
- name: Clone repository
uses: actions/checkout@v1
- name: Build
env:
CC: ${{ matrix.compiler }}
MAKEVARS: ${{ matrix.makevars }}
CONFIGURE_OPTS: ${{ matrix.configureopts }}
run: |
/bin/sh ./autogen.sh
mkdir build
cd build
../configure --srcdir=`dirname "$PWD"` --disable-afs-support --enable-maintainer-mode --enable-developer $CONFIGURE_OPTS --prefix=$HOME/inst CFLAGS="-Wno-error=shadow -Wno-error=bad-function-cast -Wno-error=unused-function -Wno-error=unused-result -Wno-error=deprecated-declarations"
ulimit -c unlimited
make -j4
make check
make install
- name: Test logs
if: ${{ failure() }}
run: |
find build -name \*.trs|xargs grep -lw FAIL|sed -e 's/trs$/log/'|xargs cat
- name: distclean
run: |
cd build
make distclean
if [ "$(git ls-files -o|grep -v ^build/ | wc -l)" -ne 0 ]; then
echo "Files not removed by make distclean:"
git ls-files -o|grep -v ^build/
fi