blob: 8b155e1e50242209fa7d85d7c7b9530fe1ef09dc [file] [log] [blame]
name: build
on: [push]
jobs:
build-linux-ubuntu:
runs-on: ubuntu-latest
steps:
- name: prepare environment
run: |
echo "target_triplet=`gcc -dumpmachine`" >> $GITHUB_ENV
- name: fetch libplist
uses: dawidd6/action-download-artifact@v2
with:
github_token: ${{secrets.GITHUB_TOKEN}}
workflow: build.yml
name: libplist-latest_${{env.target_triplet}}
repo: libimobiledevice/libplist
- name: fetch libimobiledevice-glue
uses: dawidd6/action-download-artifact@v2
with:
github_token: ${{secrets.GITHUB_TOKEN}}
workflow: build.yml
name: libimobiledevice-glue-latest_${{env.target_triplet}}
repo: libimobiledevice/libimobiledevice-glue
- name: install external dependencies
run: |
mkdir extract
for I in *.tar; do
tar -C extract -xvf $I
done
sudo cp -r extract/* /
sudo ldconfig
- uses: actions/checkout@v2
- name: autogen
run: ./autogen.sh PKG_CONFIG_PATH=/usr/local/lib/pkgconfig LDFLAGS="-Wl,-rpath=/usr/local/lib"
- name: make
run: make
- name: make install
run: sudo make install
- name: prepare artifact
run: |
mkdir -p dest
DESTDIR=`pwd`/dest make install
tar -C dest -cf libusbmuxd.tar usr
- name: publish artifact
uses: actions/upload-artifact@v2
with:
name: libusbmuxd-latest_${{env.target_triplet}}
path: libusbmuxd.tar
build-macOS:
runs-on: macOS-latest
steps:
- name: install dependencies
run: |
if test -x "`which port`"; then
sudo port install libtool autoconf automake pkgconfig
else
brew install libtool autoconf automake pkgconfig
fi
shell: bash
- name: fetch libplist
uses: dawidd6/action-download-artifact@v2
with:
github_token: ${{secrets.GITHUB_TOKEN}}
workflow: build.yml
name: libplist-latest_macOS
repo: libimobiledevice/libplist
- name: fetch libimobiledevice-glue
uses: dawidd6/action-download-artifact@v2
with:
github_token: ${{secrets.GITHUB_TOKEN}}
workflow: build.yml
name: libimobiledevice-glue-latest_macOS
repo: libimobiledevice/libimobiledevice-glue
- name: install external dependencies
run: |
mkdir extract
for I in *.tar; do
tar -C extract -xvf $I
done
sudo cp -r extract/* /
- uses: actions/checkout@v2
- name: autogen
run: |
./autogen.sh PKG_CONFIG_PATH=/usr/local/lib/pkgconfig \
- name: make
run: make
- name: make install
run: sudo make install
- name: prepare artifact
run: |
mkdir -p dest
DESTDIR=`pwd`/dest make install
tar -C dest -cf libusbmuxd.tar usr
- name: publish artifact
uses: actions/upload-artifact@v2
with:
name: libusbmuxd-latest_macOS
path: libusbmuxd.tar
build-windows:
runs-on: windows-latest
defaults:
run:
shell: msys2 {0}
strategy:
fail-fast: false
matrix:
include: [
{ msystem: MINGW64, arch: x86_64 },
{ msystem: MINGW32, arch: i686 }
]
steps:
- uses: msys2/setup-msys2@v2
with:
msystem: ${{ matrix.msystem }}
release: false
update: false
install: >-
base-devel
git
mingw-w64-${{ matrix.arch }}-gcc
make
libtool
autoconf
automake-wrapper
- name: prepare environment
run: |
dest=`echo ${{ matrix.msystem }} |tr [:upper:] [:lower:]`
echo "dest=$dest" >> $GITHUB_ENV
echo "target_triplet=`gcc -dumpmachine`" >> $GITHUB_ENV
- name: fetch libplist
uses: dawidd6/action-download-artifact@v2
with:
github_token: ${{secrets.GITHUB_TOKEN}}
workflow: build.yml
name: libplist-latest_${{ matrix.arch }}-${{ env.dest }}
repo: libimobiledevice/libplist
- name: fetch libimobiledevice-glue
uses: dawidd6/action-download-artifact@v2
with:
github_token: ${{secrets.GITHUB_TOKEN}}
workflow: build.yml
name: libimobiledevice-glue-latest_${{ matrix.arch }}-${{ env.dest }}
repo: libimobiledevice/libimobiledevice-glue
- name: install external dependencies
run: |
mkdir extract
for I in *.tar; do
tar -C extract -xvf $I
done
cp -r extract/* /
- uses: actions/checkout@v2
- name: autogen
run: ./autogen.sh CC=gcc CXX=g++
- name: make
run: make
- name: make install
run: make install
- name: prepare artifact
run: |
mkdir -p dest
DESTDIR=`pwd`/dest make install
tar -C dest -cf libusbmuxd.tar ${{ env.dest }}
- name: publish artifact
uses: actions/upload-artifact@v2
with:
name: libusbmuxd-latest_${{ matrix.arch }}-${{ env.dest }}
path: libusbmuxd.tar