Skip to content

CI

CI #99

Workflow file for this run

name: CI
on: [push,workflow_dispatch]
env:
BUILD_TYPE: release
OTHER_PROJECTS: "mulle-objc/mulle-objc-developer;
mulle-c/mulle-c-developer;"
jobs:
build:
runs-on: ${{ matrix.os }}
strategy:
matrix:
os: [ ubuntu-latest, macos-latest, macos-14 ]
steps:
- name: Set MULLE_HOSTNAME
run: |
name="${GITHUB_REF##*/}"
MULLE_HOSTNAME="${MULLE_HOSTNAME:-ci-${name##*-}}"
echo "MULLE_HOSTNAME=${MULLE_HOSTNAME}" >> $GITHUB_ENV
- name: Add to path
run: echo "$HOME/bin" >> $GITHUB_PATH
- name: Dump Environment
run: env | sort
- uses: actions/checkout@v3
- uses: mulle-sde/github-ci@v1
- uses: mulle-cc/github-ci@v4
- name: List extensions
run: |
mulle-sde -DMULLE_SDE_EXTENSION_BASE_PATH="${PWD}/src" extension show
- name: mulle-objc Library
run: |
mulle-sde -DMULLE_SDE_EXTENSION_BASE_PATH="${PWD}/src" init -d lib -m mulle-objc/objc-developer library &&
cd lib &&
mulle-sde hostname &&
mulle-sde environment &&
echo "Adding environment-host-ci-prerelease file from MulleObjC/test" >&2 &&
curl -L --output .mulle/etc/env/environment-host-ci-prerelease.sh "https://raw.githubusercontent.com/mulle-objc/MulleObjC/prerelease/test/.mulle/etc/env/environment-host-ci-prerelease.sh" >&2 &&
mulle-sde craft
- name: mulle-objc Executable
run: |
mulle-sde -DMULLE_SDE_EXTENSION_BASE_PATH="${PWD}/src" extension show &&
mulle-sde -DMULLE_SDE_EXTENSION_BASE_PATH="${PWD}/src" init -d exe -m mulle-objc/objc-developer executable &&
cd exe &&
echo "Adding environment-host-ci-prerelease file from MulleObjC/test" >&2 &&
curl -L --output .mulle/etc/env/environment-host-ci-prerelease.sh "https://raw.githubusercontent.com/mulle-objc/MulleObjC/prerelease/test/.mulle/etc/env/environment-host-ci-prerelease.sh" >&2 &&
mulle-sde craft --release &&
[ -x "./kitchen/Release/exe" -o "./kitchen/exe" ] &&
( [ ! -x "./kitchen/Release/exe" ] || "./kitchen/Release/exe" ) &&
( [ ! -x "./kitchen/exe" ] || "./kitchen/exe" )