Skip to content

Commit

Permalink
Test only windows build
Browse files Browse the repository at this point in the history
  • Loading branch information
ChristianFeldmann committed Jul 28, 2024
1 parent 2f9f75c commit fc05bfd
Showing 1 changed file with 144 additions and 144 deletions.
288 changes: 144 additions & 144 deletions .github/workflows/Build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -7,155 +7,155 @@ on:
- created

jobs:
build-unix-native:
runs-on: ${{ matrix.os }}
strategy:
matrix:
include:
- os: ubuntu-20.04
INSTALL_LIBS: libgl1-mesa-dev libxkbcommon-x11-0 libpcre2-16-0 qt5-default
QMAKE_COMMAND: qmake
- os: ubuntu-22.04
INSTALL_LIBS: qt6-base-dev
QMAKE_COMMAND: qmake6
steps:
- uses: actions/checkout@v4
with:
submodules: true
- run: git fetch --prune --unshallow
- name: Install Linux packages
run: |
sudo apt-get update
sudo apt-get install ${{matrix.INSTALL_LIBS}}
- name: Build
run: |
cd $GITHUB_WORKSPACE
mkdir build
cd build
${{matrix.QMAKE_COMMAND}} CONFIG+=UNITTESTS ..
make -j$(nproc)
make check
build-mac-native:
runs-on: ${{ matrix.os }}
strategy:
matrix:
include:
- os: macos-12
steps:
- uses: actions/checkout@v4
with:
submodules: true
- run: git fetch --prune --unshallow
- name: Install packages
run: |
brew install qt
- name: Build
run: |
cd $GITHUB_WORKSPACE
mkdir build
cd build
qmake6 CONFIG+=UNITTESTS ..
make -j $(sysctl -n hw.logicalcpu)
make check
build-unix:
runs-on: ${{ matrix.os }}
strategy:
matrix:
include:
- os: ubuntu-20.04
QT_FILE: qtBase_6.5.2_ubuntu20.zip
LIBDE265_REMOTE: libde265.so
LIBDE265_LOCAL: libde265-internals.so
ARTIFACT_NAME: YUView.Ubuntu20.AppImage
CPU_COUNT_COMMAND: nproc
- os: macos-11
QT_FILE: qtBase_6.5.2_mac11.zip
LIBDE265_REMOTE: libde265.dylib
LIBDE265_LOCAL: libde265-internals.dylib
ARTIFACT_NAME: YUView-Mac11-BigSur.zip
CPU_COUNT_COMMAND: sysctl -n hw.logicalcpu
- os: macos-12
QT_FILE: qtBase_6.5.2_mac12.zip
LIBDE265_REMOTE: libde265.dylib
LIBDE265_LOCAL: libde265-internals.dylib
ARTIFACT_NAME: YUView-Mac12-Monterey.zip
CPU_COUNT_COMMAND: sysctl -n hw.logicalcpu
steps:
- uses: actions/checkout@v4
with:
submodules: true
- run: git fetch --prune --unshallow
- name: Install Qt base
run: |
cd ../../
mkdir -p YUViewQt/YUViewQt
cd YUViewQt/YUViewQt
curl -L https://github.com/ChristianFeldmann/YUViewQt/releases/download/QtBase-6.5.2/${{matrix.QT_FILE}} -o Qt.zip
unzip -qa Qt.zip
echo "$GITHUB_WORKSPACE/../../YUViewQt/YUViewQt/Qt/bin" >> $GITHUB_PATH
shell: bash
- name: Install Linuxdeployqt
run: |
curl -L https://github.com/probonopd/linuxdeployqt/releases/download/continuous/linuxdeployqt-continuous-x86_64.AppImage -o linuxdeployqt-6-x86_64.AppImage
chmod a+x linuxdeployqt-6-x86_64.AppImage
if: matrix.os == 'ubuntu-20.04'
- name: Install Linux packages
run: |
sudo apt-get update
sudo apt-get install libgl1-mesa-dev libxkbcommon-x11-0 libpcre2-16-0 '^libxcb.*-dev' libx11-xcb-dev libglu1-mesa-dev libxi-dev libxkbcommon-dev libxkbcommon-x11-dev libatspi2.0-dev libfuse2
if: matrix.os == 'ubuntu-20.04'
- name: Install libde265
run: |
curl -L https://github.com/ChristianFeldmann/libde265/releases/download/v1.1/${{matrix.LIBDE265_REMOTE}} -o ${{matrix.LIBDE265_LOCAL}}
curl -L https://raw.githubusercontent.com/ChristianFeldmann/libde265/master/COPYING -o libde265License.txt
shell: bash
- name: Build Linux/Mac
run: |
cd $GITHUB_WORKSPACE
export PATH=$GITHUB_WORKSPACE/../../YUViewQt/YUViewQt/Qt/bin:$PATH
mkdir build
cd build
qmake CONFIG+=UNITTESTS ..
make -j $(${{matrix.CPU_COUNT_COMMAND}})
make check
- name: Build App (Mac)
run: |
macdeployqt build/YUViewApp/YUView.app -always-overwrite -verbose=2
cp ${{matrix.LIBDE265_LOCAL}} build/YUViewApp/YUView.app/Contents/MacOS/.
cd build/YUViewApp
# Zip
zip -r ${{matrix.ARTIFACT_NAME}} YUView.app/
mkdir $GITHUB_WORKSPACE/artifacts
cp ${{matrix.ARTIFACT_NAME}} $GITHUB_WORKSPACE/artifacts/
if: matrix.os == 'macos-11' || matrix.os == 'macos-12'
- name: Build Appimage (Linux)
run: |
cd build
make INSTALL_ROOT=appdir install
$GITHUB_WORKSPACE/linuxdeployqt-6-x86_64.AppImage YUViewApp/appdir/usr/local/share/applications/de.rwth_aachen.ient.YUView.desktop -appimage -bundle-non-qt-libs -verbose=2
mv YUView-*.AppImage YUView.AppImage
mkdir $GITHUB_WORKSPACE/artifacts
cp YUView.AppImage $GITHUB_WORKSPACE/artifacts/
if: matrix.os == 'ubuntu-20.04'
- name: Upload Artifact
uses: actions/upload-artifact@v4
with:
name: ${{matrix.ARTIFACT_NAME}}
path: artifacts
- name: Release
uses: softprops/action-gh-release@v1
if: startsWith(github.ref, 'refs/tags/')
with:
files: artifacts/${{matrix.ARTIFACT_NAME}}
# build-unix-native:
# runs-on: ${{ matrix.os }}
# strategy:
# matrix:
# include:
# - os: ubuntu-20.04
# INSTALL_LIBS: libgl1-mesa-dev libxkbcommon-x11-0 libpcre2-16-0 qt5-default
# QMAKE_COMMAND: qmake
# - os: ubuntu-22.04
# INSTALL_LIBS: qt6-base-dev
# QMAKE_COMMAND: qmake6
# steps:
# - uses: actions/checkout@v4
# with:
# submodules: true
# - run: git fetch --prune --unshallow
# - name: Install Linux packages
# run: |
# sudo apt-get update
# sudo apt-get install ${{matrix.INSTALL_LIBS}}
# - name: Build
# run: |
# cd $GITHUB_WORKSPACE
# mkdir build
# cd build
# ${{matrix.QMAKE_COMMAND}} CONFIG+=UNITTESTS ..
# make -j$(nproc)
# make check
# build-mac-native:
# runs-on: ${{ matrix.os }}
# strategy:
# matrix:
# include:
# - os: macos-12
# steps:
# - uses: actions/checkout@v4
# with:
# submodules: true
# - run: git fetch --prune --unshallow
# - name: Install packages
# run: |
# brew install qt
# - name: Build
# run: |
# cd $GITHUB_WORKSPACE
# mkdir build
# cd build
# qmake6 CONFIG+=UNITTESTS ..
# make -j $(sysctl -n hw.logicalcpu)
# make check
# build-unix:
# runs-on: ${{ matrix.os }}
# strategy:
# matrix:
# include:
# - os: ubuntu-20.04
# QT_FILE: qtBase_6.5.2_ubuntu20.zip
# LIBDE265_REMOTE: libde265.so
# LIBDE265_LOCAL: libde265-internals.so
# ARTIFACT_NAME: YUView.Ubuntu20.AppImage
# CPU_COUNT_COMMAND: nproc
# - os: macos-11
# QT_FILE: qtBase_6.5.2_mac11.zip
# LIBDE265_REMOTE: libde265.dylib
# LIBDE265_LOCAL: libde265-internals.dylib
# ARTIFACT_NAME: YUView-Mac11-BigSur.zip
# CPU_COUNT_COMMAND: sysctl -n hw.logicalcpu
# - os: macos-12
# QT_FILE: qtBase_6.5.2_mac12.zip
# LIBDE265_REMOTE: libde265.dylib
# LIBDE265_LOCAL: libde265-internals.dylib
# ARTIFACT_NAME: YUView-Mac12-Monterey.zip
# CPU_COUNT_COMMAND: sysctl -n hw.logicalcpu
# steps:
# - uses: actions/checkout@v4
# with:
# submodules: true
# - run: git fetch --prune --unshallow
# - name: Install Qt base
# run: |
# cd ../../
# mkdir -p YUViewQt/YUViewQt
# cd YUViewQt/YUViewQt
# curl -L https://github.com/ChristianFeldmann/YUViewQt/releases/download/QtBase-6.5.2/${{matrix.QT_FILE}} -o Qt.zip
# unzip -qa Qt.zip
# echo "$GITHUB_WORKSPACE/../../YUViewQt/YUViewQt/Qt/bin" >> $GITHUB_PATH
# shell: bash
# - name: Install Linuxdeployqt
# run: |
# curl -L https://github.com/probonopd/linuxdeployqt/releases/download/continuous/linuxdeployqt-continuous-x86_64.AppImage -o linuxdeployqt-6-x86_64.AppImage
# chmod a+x linuxdeployqt-6-x86_64.AppImage
# if: matrix.os == 'ubuntu-20.04'
# - name: Install Linux packages
# run: |
# sudo apt-get update
# sudo apt-get install libgl1-mesa-dev libxkbcommon-x11-0 libpcre2-16-0 '^libxcb.*-dev' libx11-xcb-dev libglu1-mesa-dev libxi-dev libxkbcommon-dev libxkbcommon-x11-dev libatspi2.0-dev libfuse2
# if: matrix.os == 'ubuntu-20.04'
# - name: Install libde265
# run: |
# curl -L https://github.com/ChristianFeldmann/libde265/releases/download/v1.1/${{matrix.LIBDE265_REMOTE}} -o ${{matrix.LIBDE265_LOCAL}}
# curl -L https://raw.githubusercontent.com/ChristianFeldmann/libde265/master/COPYING -o libde265License.txt
# shell: bash
# - name: Build Linux/Mac
# run: |
# cd $GITHUB_WORKSPACE
# export PATH=$GITHUB_WORKSPACE/../../YUViewQt/YUViewQt/Qt/bin:$PATH
# mkdir build
# cd build
# qmake CONFIG+=UNITTESTS ..
# make -j $(${{matrix.CPU_COUNT_COMMAND}})
# make check
# - name: Build App (Mac)
# run: |
# macdeployqt build/YUViewApp/YUView.app -always-overwrite -verbose=2
# cp ${{matrix.LIBDE265_LOCAL}} build/YUViewApp/YUView.app/Contents/MacOS/.
# cd build/YUViewApp
# # Zip
# zip -r ${{matrix.ARTIFACT_NAME}} YUView.app/
# mkdir $GITHUB_WORKSPACE/artifacts
# cp ${{matrix.ARTIFACT_NAME}} $GITHUB_WORKSPACE/artifacts/
# if: matrix.os == 'macos-11' || matrix.os == 'macos-12'
# - name: Build Appimage (Linux)
# run: |
# cd build
# make INSTALL_ROOT=appdir install
# $GITHUB_WORKSPACE/linuxdeployqt-6-x86_64.AppImage YUViewApp/appdir/usr/local/share/applications/de.rwth_aachen.ient.YUView.desktop -appimage -bundle-non-qt-libs -verbose=2
# mv YUView-*.AppImage YUView.AppImage
# mkdir $GITHUB_WORKSPACE/artifacts
# cp YUView.AppImage $GITHUB_WORKSPACE/artifacts/
# if: matrix.os == 'ubuntu-20.04'
# - name: Upload Artifact
# uses: actions/upload-artifact@v4
# with:
# name: ${{matrix.ARTIFACT_NAME}}
# path: artifacts
# - name: Release
# uses: softprops/action-gh-release@v1
# if: startsWith(github.ref, 'refs/tags/')
# with:
# files: artifacts/${{matrix.ARTIFACT_NAME}}
build-windows:
runs-on: ${{ matrix.os }}
strategy:
matrix:
include:
- os: windows-2019
auto_update: true
ARTIFACT_NAME: YUView-Win2019.zip
QT_FILE: qtBase_6.5.2_win2019.zip
# - os: windows-2019
# auto_update: true
# ARTIFACT_NAME: YUView-Win2019.zip
# QT_FILE: qtBase_6.5.2_win2019.zip
- os: windows-2019
auto_update: false
ARTIFACT_NAME: YUView-Win2019-noautoupdate.zip
Expand Down

0 comments on commit fc05bfd

Please sign in to comment.