Add windows build to ci
This commit is contained in:
parent
f9f3756c0c
commit
0d2fac7110
33
.gitea/workflows/build-win.yml
Normal file
33
.gitea/workflows/build-win.yml
Normal file
|
@ -0,0 +1,33 @@
|
||||||
|
name: Build eismuliplexer for windows
|
||||||
|
run-name: Building eismuliplexer for windows
|
||||||
|
on: [push]
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
Build:
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
steps:
|
||||||
|
- name: Install dependancies
|
||||||
|
run: |
|
||||||
|
apt update
|
||||||
|
apt install -y cmake mingw-w64-x86-64-dev gcc-mingw-w64 g++-mingw-w64 p7zip-full
|
||||||
|
wget https://github.com/libusb/libusb/releases/download/v1.0.29/libusb-1.0.29.7z -o ${{ gitea.workspace }}/libusb.7z
|
||||||
|
mkdir ${{ gitea.workspace }}/libusb
|
||||||
|
7z x ${{ gitea.workspace }}/libusb.7z -o${{ gitea.workspace }}/libusb
|
||||||
|
- name: Check out repository code
|
||||||
|
uses: ischanx/checkout@8c80eac3058d03dc5301629e8f7d59ae255d6cc3
|
||||||
|
- name: Version
|
||||||
|
id: version
|
||||||
|
run: git fetch -a; echo "tag=$(git describe --tags `git rev-list --tags --max-count=1`)" >> $GITHUB_OUTPUT
|
||||||
|
- name: Build
|
||||||
|
run: |
|
||||||
|
mkdir ${{ gitea.workspace }}/build
|
||||||
|
cd ${{ gitea.workspace }}/build
|
||||||
|
cmake -DCMAKE_INSTALL_PREFIX=/usr/x86_64-w64-mingw32/ -DCMAKE_TOOLCHAIN_FILE=../crossW64.cmake -DCMAKE_BUILD_TYPE=Release -DLIBUSB_INCLUDE_DIRS=${{ gitea.workspace }}/libusb/include/ -DLIBUSB_LIBRARIES=${{ gitea.workspace }}/libusb/MinGW64/static/libusb-1.0.a -DGIT_TAG=${{ steps.version.outputs.tag }} ..
|
||||||
|
make
|
||||||
|
- name: Package
|
||||||
|
run: cd ${{ gitea.workspace }}/build; make package
|
||||||
|
- name: Upload artifacts
|
||||||
|
uses: actions/upload-artifact@v3
|
||||||
|
with:
|
||||||
|
name: eismultiplexer-win-x86_64-${{ steps.version.outputs.tag }}
|
||||||
|
path: ${{ gitea.workspace }}/build/packaged/${{ steps.version.outputs.tag }}/*
|
|
@ -4,7 +4,10 @@ project(eismultiplexer C)
|
||||||
|
|
||||||
find_package(PkgConfig REQUIRED)
|
find_package(PkgConfig REQUIRED)
|
||||||
find_package(Doxygen)
|
find_package(Doxygen)
|
||||||
pkg_check_modules(LIBUSB REQUIRED libusb-1.0)
|
|
||||||
|
if(NOT LIBUSB_INCLUDE_DIRS OR NOT LIBUSB_LIBRARIES)
|
||||||
|
pkg_check_modules(LIBUSB REQUIRED libusb-1.0)
|
||||||
|
endif()
|
||||||
|
|
||||||
list(APPEND CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/cmake/")
|
list(APPEND CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/cmake/")
|
||||||
include(GitVersion)
|
include(GitVersion)
|
||||||
|
|
|
@ -34,9 +34,9 @@ install -d $RELDIRECTORY
|
||||||
cp libeismultiplexer.dll $RELDIRECTORY
|
cp libeismultiplexer.dll $RELDIRECTORY
|
||||||
cp libeismultiplexer_static.a $RELDIRECTORY
|
cp libeismultiplexer_static.a $RELDIRECTORY
|
||||||
cp libeismultiplexer.dll.a $RELDIRECTORY
|
cp libeismultiplexer.dll.a $RELDIRECTORY
|
||||||
cp $ROOTPATH/bin/libwinpthread-1.dll $RELDIRECTORY
|
#cp $ROOTPATH/bin/libwinpthread-1.dll $RELDIRECTORY
|
||||||
cp $ROOTPATH/bin/libusb-1.0.dll $RELDIRECTORY
|
#cp $ROOTPATH/bin/libusb-1.0.dll $RELDIRECTORY
|
||||||
cp $ROOTPATH/bin/libssp-0.dll $RELDIRECTORY
|
#cp $ROOTPATH/bin/libssp-0.dll $RELDIRECTORY
|
||||||
cp eismultiplexer_cli.exe $RELDIRECTORY
|
cp eismultiplexer_cli.exe $RELDIRECTORY
|
||||||
cp -r $SRCDIR/EisMultiplexerWinDriver $RELDIRECTORY/driver
|
cp -r $SRCDIR/EisMultiplexerWinDriver $RELDIRECTORY/driver
|
||||||
mkdir $RELDIRECTORY/include || true
|
mkdir $RELDIRECTORY/include || true
|
||||||
|
|
Loading…
Reference in a new issue