diff options
-rw-r--r-- | .SRCINFO | 9 | ||||
-rw-r--r-- | 0003-openexr3.patch | 77 | ||||
-rw-r--r-- | PKGBUILD | 16 |
3 files changed, 90 insertions, 12 deletions
@@ -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() @@ -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" } |