mirror of
https://github.com/lucaspalomodevelop/meshlab.git
synced 2026-03-13 00:07:24 +00:00
116 lines
3.7 KiB
YAML
116 lines
3.7 KiB
YAML
name: BuildUbuntu
|
|
|
|
on:
|
|
[push, pull_request]
|
|
|
|
jobs:
|
|
ubuntu_build_appimage:
|
|
name: Build MeshLab (Ubuntu - AppImage)
|
|
runs-on: ubuntu-16.04 #in order to deploy, need to use oldest supported version
|
|
|
|
steps:
|
|
- uses: actions/checkout@v2
|
|
- name: Checkout submodules
|
|
shell: bash
|
|
run: |
|
|
auth_header="$(git config --local --get http.https://github.com/.extraheader)"
|
|
git submodule sync --recursive
|
|
git -c "http.extraheader=$auth_header" -c protocol.version=2 submodule update --init --force --recursive --depth=1
|
|
- name: Install Qt
|
|
uses: jurplel/install-qt-action@v2
|
|
with:
|
|
modules: xmlpatterns
|
|
- name: Install dependencies
|
|
run: |
|
|
sudo apt-get install -y mesa-common-dev libglu1-mesa-dev libglew-dev libeigen3-dev libgmp-dev
|
|
sudo apt-get install -y libxkbcommon-x11-0 chrpath
|
|
- name: Setup env variables
|
|
id: envs
|
|
run: |
|
|
echo ::set-output name=date::"$(cat ML_VERSION)"
|
|
- name: Build MeshLab
|
|
run: |
|
|
sh install/linux/linux_build.sh
|
|
- name: Deploy MeshLab and MeshLabServer
|
|
run : |
|
|
sh install/linux/linux_appimages.sh
|
|
- name: Upload Meshlab Portable
|
|
uses: actions/upload-artifact@v1
|
|
with:
|
|
name: meshlab_linux_portable
|
|
path: distrib/
|
|
- name: Upload MeshlabServer AppImage
|
|
uses: actions/upload-artifact@v1
|
|
with:
|
|
name: meshlabserver_linux_appimage
|
|
path: MeshLabServer${{steps.envs.outputs.date}}-linux.AppImage
|
|
- name: Upload Meshlab AppImage
|
|
uses: actions/upload-artifact@v1
|
|
with:
|
|
name: meshlab_linux_appimage
|
|
path: MeshLab${{steps.envs.outputs.date}}-linux.AppImage
|
|
|
|
ubuntu_build_snap:
|
|
name: Build MeshLab (Ubuntu - Snap)
|
|
runs-on: ubuntu-latest
|
|
|
|
steps:
|
|
- uses: actions/checkout@v2
|
|
- name: Checkout submodules
|
|
shell: bash
|
|
run: |
|
|
auth_header="$(git config --local --get http.https://github.com/.extraheader)"
|
|
git submodule sync --recursive
|
|
git -c "http.extraheader=$auth_header" -c protocol.version=2 submodule update --init --force --recursive --depth=1
|
|
- name: Install dependencies
|
|
run: |
|
|
#needed for some reason...
|
|
curl https://bazel.build/bazel-release.pub.gpg | sudo apt-key add -
|
|
sudo apt update
|
|
sudo apt-get install -y snapcraft
|
|
- name: Setup env variables
|
|
id: envs
|
|
run: |
|
|
echo ::set-output name=date::"$(cat ML_VERSION)"
|
|
- name: Build MeshLab Snap
|
|
run: |
|
|
snapcraft
|
|
- name: Rename Snap
|
|
run: |
|
|
mv ./meshlab*.snap ./MeshLab${{steps.envs.outputs.date}}-linux.snap
|
|
- name: Upload Meshlab Snap
|
|
uses: actions/upload-artifact@v1
|
|
with:
|
|
name: meshlab_linux_snap
|
|
path: MeshLab${{steps.envs.outputs.date}}-linux.snap
|
|
|
|
ubuntu_build_cmake:
|
|
name: Build MeshLab (Ubuntu - CMake)
|
|
runs-on: ubuntu-latest
|
|
|
|
steps:
|
|
- uses: actions/checkout@v2
|
|
- name: Checkout submodules
|
|
shell: bash
|
|
run: |
|
|
auth_header="$(git config --local --get http.https://github.com/.extraheader)"
|
|
git submodule sync --recursive
|
|
git -c "http.extraheader=$auth_header" -c protocol.version=2 submodule update --init --force --recursive --depth=1
|
|
- name: Install dependencies
|
|
run: |
|
|
sh install/linux/linux_setup_env_ubuntu.sh
|
|
sudo apt-get install cmake ninja-build
|
|
- name: Setup env variables
|
|
id: envs
|
|
run: |
|
|
echo ::set-output name=date::"$(cat ML_VERSION)"
|
|
- name: Configure
|
|
run: |
|
|
cmake src/ -G Ninja
|
|
- name: Build MeshLab
|
|
run: |
|
|
ninja -C .
|
|
- name: Install Meshlab
|
|
run: sudo ninja -C . install
|
|
|