diff options
author | Daniel Solano Gómez <gentoo@sattvik.com> | 2020-12-16 18:08:23 -0600 |
---|---|---|
committer | Daniel Solano Gómez <gentoo@sattvik.com> | 2020-12-16 18:08:44 -0600 |
commit | 97034cd6bd5e38a668960af3c0102af80e723b10 (patch) | |
tree | f597cce27cf3348d3534b98569aed0f06b515cda /media-gfx | |
parent | Remove gqrx (diff) | |
download | sattvik-97034cd6bd5e38a668960af3c0102af80e723b10.tar.gz sattvik-97034cd6bd5e38a668960af3c0102af80e723b10.tar.bz2 sattvik-97034cd6bd5e38a668960af3c0102af80e723b10.zip |
Add media-gfx/prusa-slicer
Signed-off-by: Daniel Solano <gentoo@sattvik.com>
Diffstat (limited to 'media-gfx')
-rw-r--r-- | media-gfx/prusa-slicer/Manifest | 5 | ||||
-rw-r--r-- | media-gfx/prusa-slicer/files/prusa-slicer-2.2.0-boost-1.73.patch | 60 | ||||
-rw-r--r-- | media-gfx/prusa-slicer/files/prusa-slicer-2.2.0-include-atomic.patch | 23 | ||||
-rw-r--r-- | media-gfx/prusa-slicer/metadata.xml | 7 | ||||
-rw-r--r-- | media-gfx/prusa-slicer/prusa-slicer-2.2.0.ebuild | 75 |
5 files changed, 170 insertions, 0 deletions
diff --git a/media-gfx/prusa-slicer/Manifest b/media-gfx/prusa-slicer/Manifest new file mode 100644 index 0000000..05d72cf --- /dev/null +++ b/media-gfx/prusa-slicer/Manifest @@ -0,0 +1,5 @@ +AUX prusa-slicer-2.2.0-boost-1.73.patch 2339 BLAKE2B b6b35d48a9d4de1efa896f8d007244a34cd42cdcd68137bee265e1c7eced2bad410a8f33d006ea635253418ed21109d1b91bf5b86490e01289613fbaccbedf8b SHA512 fb3c09b2339260df0c1d1ab5b3102038c3ef82e19ea883ac0f10811ec9911a70d3a2b6eab63a06b0d06e7d62daf51feda40d7e09e5d981fca671b512b69acf97 +AUX prusa-slicer-2.2.0-include-atomic.patch 718 BLAKE2B b820c0f61081fd99b5f83b979a643728d1abeae5496013405e04cc94b720969f1b33ea05afd6424841225f83843d737bccb33535cfd56ae45512eb6bfc1d3a6d SHA512 5bdbfaaa358a43824bf0e9d64b2ae00030ebc712bd4f753473687f260f8e84480edd850badc4d7994962aba4e30c94a1a3ead2c3da4b70675b8ec13fed5b3185 +DIST prusa-slicer-2.2.0.tar.gz 30811929 BLAKE2B cde004add53ee025728d566cb7331cb7b1eac5412e9ad3bee037d13277c24dcdc6024c91f09bb9ef0653a12a3ee7c5cb5cec21e2a00825d185472ea7036e08f5 SHA512 5c8dc5b581e04208a1ae53771ef2607da189ee85aadf501ce1480008f5a6ddb10bb528ddc2608d3f04acd26c583ff895ad4148d6a1397f002292e20098971e1d +EBUILD prusa-slicer-2.2.0.ebuild 1724 BLAKE2B 21bf7360f05954f399ee6ed48761d9b0a89ae6c73bc703b111a89b4d930f5463652de592ead5f0857ecc6e6d75da3fbcd8de90802e2461b74d6f82e8d7b02d72 SHA512 8987ce3969c8d861277821142d4a08b4c76a625901951597051a97a99867fbf198facb74a7ecb4f0d7dc70fc8de16db6488b7f09fbe6af0d1ace6140ffce55b4 +MISC metadata.xml 203 BLAKE2B c6e21b67977c25397c014c8a709a0568bef0d455dbad7aa9787c63895c9dac8e1405522bc1dc82745b18d37f48d01a822ca29880ea374c895446dfba5c33d9cc SHA512 05b7902daead1819658dd3c1b9539056a410ed454703125399504ef2816dced3dfb606894ada0ca325da3e149f845078fefa21af4fb24e9d224d93813d66e68e diff --git a/media-gfx/prusa-slicer/files/prusa-slicer-2.2.0-boost-1.73.patch b/media-gfx/prusa-slicer/files/prusa-slicer-2.2.0-boost-1.73.patch new file mode 100644 index 0000000..8cdf78a --- /dev/null +++ b/media-gfx/prusa-slicer/files/prusa-slicer-2.2.0-boost-1.73.patch @@ -0,0 +1,60 @@ +From 3a194f91871684b5fc8c6c78300b87e0ee1cb610 Mon Sep 17 00:00:00 2001 +From: Megidd <megiddgit@gmail.com> +Date: Mon, 21 Sep 2020 18:00:52 +0330 +Subject: [PATCH] Replace deprecated Boost header in "admesh" + +--- + src/admesh/stlinit.cpp | 14 +++++++------- + 1 file changed, 7 insertions(+), 7 deletions(-) + +diff --git a/src/admesh/stlinit.cpp b/src/admesh/stlinit.cpp +index 390fe56a40..6aa2c44177 100644 +--- a/src/admesh/stlinit.cpp ++++ b/src/admesh/stlinit.cpp +@@ -28,7 +28,7 @@ + + #include <boost/log/trivial.hpp> + #include <boost/nowide/cstdio.hpp> +-#include <boost/detail/endian.hpp> ++#include <boost/predef/other/endian.h> + + #include "stl.h" + +@@ -36,9 +36,9 @@ + #error "SEEK_SET not defined" + #endif + +-#ifndef BOOST_LITTLE_ENDIAN ++#if BOOST_ENDIAN_BIG_BYTE + extern void stl_internal_reverse_quads(char *buf, size_t cnt); +-#endif /* BOOST_LITTLE_ENDIAN */ ++#endif /* BOOST_ENDIAN_BIG_BYTE */ + + static FILE* stl_open_count_facets(stl_file *stl, const char *file) + { +@@ -89,10 +89,10 @@ static FILE* stl_open_count_facets(stl_file *stl, const char *file) + // Read the int following the header. This should contain # of facets. + uint32_t header_num_facets; + bool header_num_faces_read = fread(&header_num_facets, sizeof(uint32_t), 1, fp) != 0; +-#ifndef BOOST_LITTLE_ENDIAN ++#if BOOST_ENDIAN_BIG_BYTE + // Convert from little endian to big endian. + stl_internal_reverse_quads((char*)&header_num_facets, 4); +-#endif /* BOOST_LITTLE_ENDIAN */ ++#endif /* BOOST_ENDIAN_BIG_BYTE */ + if (! header_num_faces_read || num_facets != header_num_facets) + BOOST_LOG_TRIVIAL(info) << "stl_open_count_facets: Warning: File size doesn't match number of facets in the header: " << file; + } +@@ -158,10 +158,10 @@ static bool stl_read(stl_file *stl, FILE *fp, int first_facet, bool first) + // Read a single facet from a binary .STL file. We assume little-endian architecture! + if (fread(&facet, 1, SIZEOF_STL_FACET, fp) != SIZEOF_STL_FACET) + return false; +-#ifndef BOOST_LITTLE_ENDIAN ++#if BOOST_ENDIAN_BIG_BYTE + // Convert the loaded little endian data to big endian. + stl_internal_reverse_quads((char*)&facet, 48); +-#endif /* BOOST_LITTLE_ENDIAN */ ++#endif /* BOOST_ENDIAN_BIG_BYTE */ + } else { + // Read a single facet from an ASCII .STL file + // skip solid/endsolid diff --git a/media-gfx/prusa-slicer/files/prusa-slicer-2.2.0-include-atomic.patch b/media-gfx/prusa-slicer/files/prusa-slicer-2.2.0-include-atomic.patch new file mode 100644 index 0000000..14dd291 --- /dev/null +++ b/media-gfx/prusa-slicer/files/prusa-slicer-2.2.0-include-atomic.patch @@ -0,0 +1,23 @@ +From 44f71f0ed13e3b1f0aae8185decd4ab94abcd2e0 Mon Sep 17 00:00:00 2001 +From: Yuri D'Elia <wavexx@thregr.org> +Date: Sun, 13 Dec 2020 19:41:47 +0100 +Subject: [PATCH] Include <atomic> for std::atomic where needed + +Fixes build on linux using clang 11 +--- + src/libslic3r/Thread.cpp | 1 + + src/slic3r/GUI/Mouse3DController.hpp | 1 + + 2 files changed, 2 insertions(+) + +diff --git a/src/slic3r/GUI/Mouse3DController.hpp b/src/slic3r/GUI/Mouse3DController.hpp +index d99cbad1e5..af131992ce 100644 +--- a/src/slic3r/GUI/Mouse3DController.hpp ++++ b/src/slic3r/GUI/Mouse3DController.hpp +@@ -9,6 +9,7 @@ + #include "hidapi.h" + + #include <queue> ++#include <atomic> + #include <thread> + #include <vector> + #include <chrono> diff --git a/media-gfx/prusa-slicer/metadata.xml b/media-gfx/prusa-slicer/metadata.xml new file mode 100644 index 0000000..b119258 --- /dev/null +++ b/media-gfx/prusa-slicer/metadata.xml @@ -0,0 +1,7 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <use> + <flag name="gui">Enable GUI</flag> + </use> +</pkgmetadata> diff --git a/media-gfx/prusa-slicer/prusa-slicer-2.2.0.ebuild b/media-gfx/prusa-slicer/prusa-slicer-2.2.0.ebuild new file mode 100644 index 0000000..1c83820 --- /dev/null +++ b/media-gfx/prusa-slicer/prusa-slicer-2.2.0.ebuild @@ -0,0 +1,75 @@ +# Copyright 1999-2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 +WX_GTK_VER="3.0-gtk3" + +inherit desktop perl-module cmake wxwidgets + +DESCRIPTION="G-code generator for 3D printers" +HOMEPAGE="https://www.prusa3d.com/prusaslicer/" +SRC_URI="https://github.com/prusa3d/PrusaSlicer/archive/version_${PV/_/-}.tar.gz -> ${P}.tar.gz" + +LICENSE="AGPL-3 CC-BY-3.0" +SLOT="0" +KEYWORDS="~amd64 ~x86" +IUSE="+gui test" + +RDEPEND="!media-gfx/slic3r + >=dev-libs/boost-1.55[threads] + dev-cpp/eigen + dev-cpp/gtest + >=dev-cpp/tbb-2020.2 + dev-libs/cereal + dev-libs/expat + dev-libs/openssl + >=media-gfx/openvdb-5.2.0-r2 + media-libs/glew:0 + net-misc/curl + sci-libs/nlopt + >=sci-mathematics/cgal-4.14 + x11-libs/wxGTK:${WX_GTK_VER}" +DEPEND="${RDEPEND}" + +S="${WORKDIR}/PrusaSlicer-version_${PV/_/-}" + +PATCHES=( + "${FILESDIR}/${P}-boost-1.73.patch" + "${FILESDIR}/${P}-include-atomic.patch" +) + +src_configure() { + setup-wxwidgets + local mycmakeargs=( + -DSLIC3R_WX_STABLE=1 + -DSLIC3R_GUI=$(usex gui 1 0) + -DSLIC3R_FHS=1 + -DSLIC3R_STATIC=0 + -DSLIC3R_GTK=3 + -DSLIC3R_PERL_XS=0 + -DSLIC3R_BUILD_SANDBOXES=0 + -DSLIC3R_BUILD_TESTS=$(usex test 1 0) + -DSLIC3R_PCH=0 + ) + cmake_src_configure +} + +src_test() { + perl-module_src_test + pushd .. || die + prove -Ixs/blib/arch -Ixs/blib/lib/ t/ || die "Tests failed" + popd || die +} + +src_install() { + cmake_src_install + + ( + dodir "/usr/share/pixmaps"; + dosym "../PrusaSlicer/icons/PrusaSlicer_192px.png" "/usr/share/pixmaps/prusa-slicer.png" + ) + + make_desktop_entry "prusa-slicer %F" "PrusaSlicer" "prusa-slicer" \ + "Graphics;3DGraphics;Engineering;Development" \ + "MimeType=model/stl;application/xml;application/prs.wavefront-obj;application/vnd.ms-3mfdocument;" +} |