Skip to content

Update ccpp.yml

Update ccpp.yml #1320

Workflow file for this run

name: C/C++ CI
on: [push]
concurrency:
group: environment-${{ github.head_ref }}
cancel-in-progress: true
jobs:
#build-linux:
# runs-on: ubuntu-22.04
# steps:
# - uses: actions/checkout@v2
# with:
# repository: 'davidgiven/fluxengine'
# path: 'fluxengine'
# - uses: actions/checkout@v2
# with:
# repository: 'davidgiven/fluxengine-testdata'
# path: 'fluxengine-testdata'
# - name: apt
# run: |
# sudo apt install libudev-dev libsqlite3-dev protobuf-compiler libwxgtk3.0-gtk3-dev libfmt-dev libprotobuf-dev wx-common
# - name: make
# run: CXXFLAGS="-Wp,-D_GLIBCXX_ASSERTIONS" make -j`nproc` -C fluxengine
#build-macos-current:
# runs-on: macos-latest
# steps:
# - uses: actions/checkout@v2
# with:
# repository: 'davidgiven/fluxengine'
# path: 'fluxengine'
# - uses: actions/checkout@v2
# with:
# repository: 'davidgiven/fluxengine-testdata'
# path: 'fluxengine-testdata'
# - name: brew
# run: brew install sqlite pkg-config libusb protobuf wxwidgets fmt make coreutils dylibbundler libjpeg
# - name: make
# run: gmake -j`nproc` -C fluxengine
# - name: Upload build artifacts
# uses: actions/upload-artifact@v2
# with:
# name: ${{ github.event.repository.name }}.${{ github.sha }}
# path: fluxengine/FluxEngine.pkg
build-windows:
runs-on: windows-latest
steps:
- name: setup WSL
run: |
curl -L https://github.com/VSWSL/Fedora-WSL/releases/download/v37.0.3.0/rootfs.tar.gz | wsl --import fedora fedora -
wsl --set-default fedora
wsl sh -c 'dnf -y install gcc gcc-c++ protobuf-c-compiler protobuf-devel fmt-devel systemd-devel sqlite-devel wxGTK-devel mingw32-gcc mingw32-gcc-c++ mingw32-zlib-static mingw32-protobuf-static mingw32-sqlite-static mingw32-wxWidgets3-static mingw32-libpng-static mingw32-libjpeg-static mingw32-libtiff-static mingw32-nsis'
- name: fix line endings
run: |
git config --global core.autocrlf false
git config --global core.eol lf
- uses: actions/checkout@v3
with:
repository: 'davidgiven/fluxengine'
path: 'fluxengine'
- uses: actions/checkout@v3
with:
repository: 'davidgiven/fluxengine-testdata'
path: 'fluxengine-testdata'
- name: run
run: |
wsl sh -c 'make -C fluxengine BUILDTYPE=windows -j$(nproc)'
#- uses: Vampire/setup-wsl@v3
# with:
# distribution: openSUSE-Leap-15.2
# use-cache: true
# additional-packages:
#- name: go
# run: |
# ls
#build-windows:
# runs-on: windows-latest
# defaults:
# run:
# shell: msys2 {0}
# steps:
# - uses: msys2/setup-msys2@v2
# with:
# update: true
# msystem: MINGW32
# install: >-
# diffutils
# make
# mingw-w64-i686-binutils
# mingw-w64-i686-fmt
# mingw-w64-i686-gcc
# mingw-w64-i686-libusb
# mingw-w64-i686-nsis
# mingw-w64-i686-pkg-config
# mingw-w64-i686-protobuf
# mingw-w64-i686-python
# mingw-w64-i686-sqlite3
# mingw-w64-i686-wxWidgets
# mingw-w64-i686-zlib
# mingw-w64-i686-png2ico
# vim
# zip
# - name: update-protobuf
# run: |
# pacman -U --noconfirm https://repo.msys2.org/mingw/mingw32/mingw-w64-i686-protobuf-21.9-1-any.pkg.tar.zst
# - uses: actions/checkout@v2
# with:
# repository: 'davidgiven/fluxengine'
# path: 'fluxengine'
# - uses: actions/checkout@v2
# with:
# repository: 'davidgiven/fluxengine-testdata'
# path: 'fluxengine-testdata'
# - name: build
# run: MAGICK_TIME_LIMIT=100 make -j`nproc` -C fluxengine
# - name: nsis
# run: |
# cd fluxengine
# strip fluxengine.exe -o fluxengine-stripped.exe
# strip fluxengine-gui.exe -o fluxengine-gui-stripped.exe
# makensis -v2 -nocd -dOUTFILE=fluxengine-installer.exe extras/windows-installer.nsi
# - name: zip
# run: |
# cd fluxengine
# zip -9 fluxengine-windows.zip fluxengine.exe fluxengine-gui.exe upgrade-flux-file.exe brother120tool.exe brother240tool.exe FluxEngine.cydsn/CortexM3/ARM_GCC_541/Release/FluxEngine.hex fluxengine-installer.exe
# - name: Upload build artifacts
# uses: actions/upload-artifact@v2
# with:
# name: ${{ github.event.repository.name }}.${{ github.sha }}
# path: fluxengine/fluxengine-windows.zip