summarylogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--.SRCINFO9
-rw-r--r--0003-openexr3.patch77
-rw-r--r--PKGBUILD16
3 files changed, 90 insertions, 12 deletions
diff --git a/.SRCINFO b/.SRCINFO
index 28e005393b0c..0914619b2d70 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -1,7 +1,7 @@
pkgbase = superslicer
pkgdesc = G-code generator for 3D printers (RepRap, Makerbot, Ultimaker etc.)
pkgver = 2.3.57.11
- pkgrel = 1
+ pkgrel = 2
epoch = 1
url = https://github.com/supermerill/SuperSlicer
arch = x86_64
@@ -17,18 +17,19 @@ pkgbase = superslicer
depends = boost-libs>=1.73.0
depends = cgal
depends = glew
- depends = nlopt
depends = imath
+ depends = libspnav
+ depends = nlopt
depends = openvdb
depends = qhull>=2020.2-4
depends = wxgtk3-dev-314-opt
optdepends = superslicer-profiles: Predefined printer profiles
replaces = slic3r++
options = !emptydirs
- source = https://github.com/supermerill//SuperSlicer/archive/2.3.57.11.tar.gz
+ source = https://github.com/supermerill/SuperSlicer/archive/2.3.57.11.tar.gz
source = 0001-wxgtk3-is-broken-on-wayland.patch
source = 0002-fix-cereal.patch
- source = https://raw.githubusercontent.com/archlinux/svntogit-community/1dea61c0b581ff5001d073689f68b0323740be93/trunk/prusa-slicer-openexr3.patch
+ source = 0003-openexr3.patch
sha512sums = 978eb5004d788e93ea58b788fbf8fe7a7c1c515b0a138e20662c3c1973b5c72373cd14c76d25ee180095c030416b5b4429b61bb73432910fe9288897a5d7cb4d
sha512sums = acf35ebe467e9fb30f1b77d15348f1a7b82dcf45a5b829e375e972b5d6b49968603b3fa090c4d1f56e8b5148e2b820e79afa269da60ace70de1ceadcf6e820c5
sha512sums = 5e42f43f7b4d72c6d8d118728a8df22cc6127b3fdc0081871a43763fcaed76143bcad59a6abb56f918b94b227bb58bdd9bc06eb51f2abbc66b5725d7cc3c98d6
diff --git a/0003-openexr3.patch b/0003-openexr3.patch
new file mode 100644
index 000000000000..772c77bf5e6a
--- /dev/null
+++ b/0003-openexr3.patch
@@ -0,0 +1,77 @@
+diff --git a/cmake/modules/FindOpenVDB.cmake b/cmake/modules/FindOpenVDB.cmake
+index 02420fed8..4b93111ab 100644
+--- a/cmake/modules/FindOpenVDB.cmake
++++ b/cmake/modules/FindOpenVDB.cmake
+@@ -326,28 +326,10 @@ macro(just_fail msg)
+ return()
+ endmacro()
+
+-find_package(IlmBase QUIET COMPONENTS Half)
+-if(NOT IlmBase_FOUND)
+- pkg_check_modules(IlmBase QUIET IlmBase)
+-endif()
+-if (IlmBase_FOUND AND NOT TARGET IlmBase::Half)
+- message(STATUS "Falling back to IlmBase found by pkg-config...")
+-
+- find_library(IlmHalf_LIBRARY NAMES Half)
+- if(IlmHalf_LIBRARY-NOTFOUND OR NOT IlmBase_INCLUDE_DIRS)
+- just_fail("IlmBase::Half can not be found!")
+- endif()
+-
+- add_library(IlmBase::Half UNKNOWN IMPORTED)
+- set_target_properties(IlmBase::Half PROPERTIES
+- IMPORTED_LOCATION "${IlmHalf_LIBRARY}"
+- INTERFACE_INCLUDE_DIRECTORIES "${IlmBase_INCLUDE_DIRS}")
+-elseif(NOT IlmBase_FOUND)
+- just_fail("IlmBase::Half can not be found!")
+-endif()
+ find_package(TBB ${_quiet} ${_required} COMPONENTS tbb)
+ find_package(ZLIB ${_quiet} ${_required})
+ find_package(Boost ${_quiet} ${_required} COMPONENTS iostreams system )
++find_package(Imath CONFIG)
+
+ # Use GetPrerequisites to see which libraries this OpenVDB lib has linked to
+ # which we can query for optional deps. This basically runs ldd/otoll/objdump
+@@ -398,7 +380,7 @@ foreach(PREREQUISITE ${_OPENVDB_PREREQUISITE_LIST})
+ set(OpenVDB_USES_LOG4CPLUS ON)
+ endif()
+
+- string(FIND ${PREREQUISITE} "IlmImf" _HAS_DEP)
++ string(FIND ${PREREQUISITE} "OpenEXR" _HAS_DEP)
+ if(NOT ${_HAS_DEP} EQUAL -1)
+ set(OpenVDB_USES_ILM ON)
+ endif()
+@@ -429,11 +411,7 @@ if(OpenVDB_USES_LOG4CPLUS)
+ find_package(Log4cplus ${_quiet} ${_required})
+ endif()
+
+-if(OpenVDB_USES_ILM)
+- find_package(IlmBase ${_quiet} ${_required})
+-endif()
+-
+-if(OpenVDB_USES_EXR)
++if(OpenVDB_USES_ILM OR OpenVDB_USES_EXR)
+ find_package(OpenEXR ${_quiet} ${_required})
+ endif()
+
+@@ -450,7 +428,7 @@ endif()
+ set(_OPENVDB_VISIBLE_DEPENDENCIES
+ Boost::iostreams
+ Boost::system
+- IlmBase::Half
++ Imath::Imath
+ )
+
+ set(_OPENVDB_DEFINITIONS)
+@@ -460,10 +438,7 @@ endif()
+
+ if(OpenVDB_USES_EXR)
+ list(APPEND _OPENVDB_VISIBLE_DEPENDENCIES
+- IlmBase::IlmThread
+- IlmBase::Iex
+- IlmBase::Imath
+- OpenEXR::IlmImf
++ OpenEXR::OpenEXR
+ )
+ list(APPEND _OPENVDB_DEFINITIONS "-DOPENVDB_TOOLS_RAYTRACER_USE_EXR")
+ endif()
diff --git a/PKGBUILD b/PKGBUILD
index 1ec3a2d9b572..5a691c66a9be 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -3,21 +3,21 @@
pkgname=superslicer
pkgver=2.3.57.11
_pkgtag=$pkgver
-pkgrel=1
+pkgrel=2
epoch=1
pkgdesc="G-code generator for 3D printers (RepRap, Makerbot, Ultimaker etc.)"
arch=("$CARCH")
url="https://github.com/supermerill/SuperSlicer"
license=('AGPL3')
options=(!emptydirs)
-depends=('boost-libs>=1.73.0' 'cgal' 'glew' 'nlopt' 'imath' 'openvdb' 'qhull>=2020.2-4' 'wxgtk3-dev-314-opt')
+depends=('boost-libs>=1.73.0' 'cgal' 'glew' 'imath' 'libspnav' 'nlopt' 'openvdb' 'qhull>=2020.2-4' 'wxgtk3-dev-314-opt')
makedepends=('boost>=1.73.0' 'cereal>=1.3.0' 'cmake' 'eigen' 'libigl' 'openvdb' 'samurai' 'wxgtk2-dev-314-opt') # cmake doesn't detect wx if not both gtk2 and gtk3 are installed
optdepends=('superslicer-profiles: Predefined printer profiles')
replaces=('slic3r++')
-source=("https://github.com/supermerill//SuperSlicer/archive/$_pkgtag.tar.gz"
+source=("https://github.com/supermerill/SuperSlicer/archive/$_pkgtag.tar.gz"
"0001-wxgtk3-is-broken-on-wayland.patch"
- "0002-fix-cereal.patch"
- "https://raw.githubusercontent.com/archlinux/svntogit-community/1dea61c0b581ff5001d073689f68b0323740be93/trunk/prusa-slicer-openexr3.patch")
+ "0002-fix-cereal.patch"
+ "0003-openexr3.patch")
sha512sums=('978eb5004d788e93ea58b788fbf8fe7a7c1c515b0a138e20662c3c1973b5c72373cd14c76d25ee180095c030416b5b4429b61bb73432910fe9288897a5d7cb4d'
'acf35ebe467e9fb30f1b77d15348f1a7b82dcf45a5b829e375e972b5d6b49968603b3fa090c4d1f56e8b5148e2b820e79afa269da60ace70de1ceadcf6e820c5'
'5e42f43f7b4d72c6d8d118728a8df22cc6127b3fdc0081871a43763fcaed76143bcad59a6abb56f918b94b227bb58bdd9bc06eb51f2abbc66b5725d7cc3c98d6'
@@ -33,9 +33,9 @@ prepare()
sed -i 's,add_subdirectory(test),,g' src/CMakeLists.txt
# apply patches
- patch --forward --strip=1 --input="$srcdir/0001-wxgtk3-is-broken-on-wayland.patch"
- patch -p1 < "$srcdir/prusa-slicer-openexr3.patch" # Fix build with openEXR 3
- patch --forward --strip=1 --input="$srcdir/0002-fix-cereal.patch"
+ patch -Np1 -i "$srcdir/0001-wxgtk3-is-broken-on-wayland.patch"
+ patch -Np1 -i "$srcdir/0002-fix-cereal.patch"
+ patch -Np1 -i "$srcdir/0003-openexr3.patch"
}