# Known to build in Ubuntu 18.04 name: meshlab base: core18 version: '2020.06' summary: MeshLab description: | The open source system for processing and editing 3D triangular meshes. It provides a set of tools for editing, cleaning, healing, inspecting, rendering, texturing and converting meshes. It offers features for processing raw data produced by 3D digitization tools/devices and for preparing models for 3D printing. icon: meshlab.png grade: stable confinement: strict apps: meshlab: command: desktop-launch meshlab plugs: [home, x11, mir, opengl] desktop: usr/share/applications/meshlab.desktop meshlabserver: command: desktop-launch meshlabserver plugs: [home, x11, opengl] parts: desktop-qt5: build-packages: - build-essential - qtbase5-dev - dpkg-dev make-parameters: - FLAVOR=qt5 plugin: make source: https://github.com/ubuntu/snapcraft-desktop-helpers.git source-subdir: qt stage-packages: - libxkbcommon0 - ttf-ubuntu-font-family - dmz-cursor-theme - light-themes - adwaita-icon-theme - gnome-themes-standard - shared-mime-info - libqt5gui5 - libgdk-pixbuf2.0-0 - libqt5svg5 - try: - appmenu-qt5 - locales-all - xdg-user-dirs - fcitx-frontend-qt5 meshlab: after: [desktop-qt5] plugin: qmake qt-version: qt5 source: https://github.com/alemuntoni/meshlab.git build-packages: - qt5-default - qttools5-dev-tools - qtdeclarative5-dev - libqt5xmlpatterns5-dev - mesa-common-dev - libglu1-mesa-dev - lib3ds-dev - libglew-dev - libeigen3-dev - libopenctm-dev - libgmp-dev - libqhull-dev stage-packages: - lib3ds-1-3 - libgomp1 - libopenctm1 - libqhull7 - libglew-dev - libqt5opengl5-dev - libqt5xmlpatterns5-dev - libqt5gui5 override-build: | qmake src/meshlab.pro "CONFIG+= system_eigen3 system_glew system_bzip2 system_openctm system_lib3ds" make -j4 mkdir -p $SNAPCRAFT_PART_INSTALL/usr/bin mkdir -p $SNAPCRAFT_PART_INSTALL/usr/lib/meshlab mkdir -p $SNAPCRAFT_PART_INSTALL/usr/share/applications mkdir -p $SNAPCRAFT_PART_INSTALL/usr/share/meshlab mkdir -p $SNAPCRAFT_PART_INSTALL/usr/share/doc/meshlab mkdir -p $SNAPCRAFT_PART_INSTALL/usr/share/icons cd distrib rm -r lib/macx64/ rm -r lib/win32-msvc/ rm -r lib/win32-msvc2008/ rm -r lib/win32-msvc2015/ rm -r lib/readme.txt rm -r plugins/plugins.txt rm -r README.md cp ../install/linux/resources/snap/meshlab.desktop $SNAPCRAFT_PART_INSTALL/usr/share/applications/ mv meshlab.png $SNAPCRAFT_PART_INSTALL/usr/share/icons/meshlab.png mv meshlabserver $SNAPCRAFT_PART_INSTALL/usr/bin mv meshlab $SNAPCRAFT_PART_INSTALL/usr/bin mv LICENSE.txt $SNAPCRAFT_PART_INSTALL/usr/share/doc/meshlab/ mv privacy.txt $SNAPCRAFT_PART_INSTALL/usr/share/doc/meshlab/ mv readme.txt $SNAPCRAFT_PART_INSTALL/usr/share/doc/meshlab/ mv lib/libmeshlab-common* $SNAPCRAFT_PART_INSTALL/usr/lib/ mv plugins/ $SNAPCRAFT_PART_INSTALL/usr/lib/meshlab/ mv lib/linux/* $SNAPCRAFT_PART_INSTALL/usr/lib/meshlab/ mv shaders/ $SNAPCRAFT_PART_INSTALL/usr/share/meshlab/ #tmp: moving libIXF to bin directory echo "--------" ls -l $SNAPCRAFT_PART_INSTALL/usr/lib/meshlab/ echo "--------" mv $SNAPCRAFT_PART_INSTALL/usr/lib/meshlab/libIFX* $SNAPCRAFT_PART_INSTALL/usr/bin/ mv $SNAPCRAFT_PART_INSTALL/usr/bin/libIFXCoreStatic.a $SNAPCRAFT_PART_INSTALL/usr/lib/meshlab/