diff options
author | Dominic | 2025-03-28 23:35:09 +0100 |
---|---|---|
committer | Dominic | 2025-03-28 23:36:03 +0100 |
commit | 0a122b64d3851e0dc8cfabf2352ff8c1538f6dc2 (patch) | |
tree | 9f5aaf93b638865db8c758b78f68dc2f88fc8035 /PKGBUILD | |
parent | 5355a535ef45e31d74d54090f8dd89c1266d203d (diff) | |
download | aur-0a122b64d3851e0dc8cfabf2352ff8c1538f6dc2.tar.gz |
superslicer-prerelease 2.7.61.0
Diffstat (limited to 'PKGBUILD')
-rw-r--r-- | PKGBUILD | 142 |
1 files changed, 103 insertions, 39 deletions
@@ -3,74 +3,140 @@ # Maintainer: Lukas1818 aur at lukas1818 dot de pkgname=superslicer-prerelease -pkgver=2.5.60.0 +pkgver=2.7.61.0 _pkgtag=$pkgver -pkgrel=2 +# https://github.com/supermerill/SuperSlicer/blob/2.7.61.0/deps/%2BLibBGCode/LibBGCode.cmake +_libbgcode=6f43cb004ef3d3bda37dde49f6235e24d2717629 +pkgrel=1 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' 'imath' 'libspnav' 'nlopt' 'openvdb' 'qhull>=2020.2-4' 'slicer-udev' 'wxwidgets-gtk3') -makedepends=('boost>=1.73.0' 'cereal>=1.3.0' 'cmake' 'eigen' 'libigl' 'openvdb' 'samurai') +depends=( + 'boost-libs' + 'cgal' + 'glew' + 'imath' + 'heatshrink' + 'libspnav' + 'nanosvg' + 'nlopt' + 'openvdb' + 'qhull>=2020.2-4' + 'slicer-udev' + 'wxwidgets-gtk3' +) +makedepends=( + 'boost' + 'cereal>=1.3.0' + 'cmake' + 'eigen' + 'libigl' + 'ninja' + 'openvdb' +) optdepends=('superslicer-profiles: Predefined printer profiles') provides=("superslicer=$epoch:$pkgver") conflicts=('superslicer' 'superslicer-git') source=("https://github.com/supermerill/SuperSlicer/archive/$_pkgtag.tar.gz" - "0001-boost1.79.patch" - "0002-fix-cereal.patch" + "https://github.com/prusa3d/libbgcode/archive/$_libbgcode.tar.gz" + "prusaslicer-2.8.1-boost-1.87.0-asio.patch::https://bugs.gentoo.org/attachment.cgi?id=914594" + "prusaslicer-2.8.1-cgal-6.0.patch" + "0001-libbgcode-binarize-public-deps.patch" + "0001-findwxwidgets.patch" + "0002-addlib-expat.patch" "0003-openexr3.patch" "0004-fix-opencascade-version-check.patch" "0005-fix-opencascade-libs.patch" - "0006-fix-non-const-lvalue.patch" - "0007-boost1.84.patch" "0008-boost1.85.patch" "0009-fix-multiple-choice.patch" - "0010-occtwrapper-install-dir.patch") -sha512sums=('a53f4cc9b5a20f3f60d38553d47bfd19ce8bd739a8a16493bbcf64f75825fa760b8c107d7f927d49d967f7d067fac8c428c8f6e67219e74b0970d9ab7aa5b9e6' - 'fc18e8edf516f9479c3b0e201d1c74b42289f15ef8a64ff3a88c2bb14613978a9dcf7be50ff8b79faf054c7721a095a70715b0fb0747be48757f9502ba0eb859' - '58467732161eb0abe58cfb1e64e080f64f9f2221032b0d6176739fc81a61fe7838fa6479e9aac7fa0ee9805898f9293081c5e35a146df103830199b46354b97e' + "0010-occtwrapper-install-dir.patch" + "0011-fix-constructible-svgfile.patch" + "0012-boost1.87.patch" + "0013-fix-missing-template-args.patch") +sha512sums=('0d72bf61adcafe8eef2ed860449dc25ca295ba0732d956bff8c0ae50b381387b803fd88241ab855a9b38daf8f5eaa4c41d17241b8c15c66d63576874179aa1c0' + '04cb7cb69d887e1fa5ced5c0219b0ee6cab81f09d1bc1226ebd26563e2ce60b85fb6e5aef11a36dffd3e00779849906fc5c19ad2cdd22d45360226912b6af31b' + '3466fbbb00a4b9295c4c6a8fc5a983b5c5a78c7f091cd4502137301e10d0087abb50d5994ceba717a435693d8e4b6f5e4b084bd950b82ec91a33b1981d13226b' + '188a5efa0128f848c6b3d882c2e472b3fbdd9db8c130735083b3410095197bc69dea855f4622d1011c8540cdfbfc25dc4a14e81fd28f2510067293ae5de15fce' + 'ecbe9bdec72a372dfdc25b32dee382a9937c544567fa2da42a30467ddff2594495bf244a773401f655930301a2debc94636a362383239fa08808d0e51bc687a4' + 'd910cf1fc07219b6c776240eae0f203813368e69b6a0215bcdcabba385531744093b6214b21d0dffbafa8992d3549c96bbdb02e939c52a4e81dbce98389397f9' + '93a943eb9be52085a811d7cc8379dc5a3942befdc3d19eecf6310f8dfcfdef72bfa15dfcb85ac1f4f9d7731c973b9815a532ae444e3fe275f8f624825fe8e98b' '840e51b8feb3568ff46d309ece063f7188018fcaa43d19ec50ede408fdf2c237a3b7eaa11ba24409d8c3f7d6f5fb270181508cc56e0b2b0fef68b766130ef1eb' - '4efb6dd48c8184f47b838228cf624a74429f35d133fb85316ddcde9d78bd462d64009ec9fe0b3f34232ddf4971f81ea03385ed661c771de9f0fd5bffcbe2a74c' + '8512ace14c71b04eb98532e71592447475cf7feccf1c85f376487615c8a95f6afa645e4581f577ee26d91532c57f389eac7534a875d5a24e871f3ef593af33c9' 'a01abf748f82bc423f2c012ac430f78cfd5e56dede1d5999376e780267d0302d9a2a80c3eb15226c2f82102dda4c567c721ff99ab1fdeef504cbf9d9cb63ca53' - 'aca3a028eaab63baf83dd80d82615394435c97b9b45c99764ca84995d246096e3e5c2b564ed29e194652c8e221a80cf6abdc165cb3009fd20af586b0432b2bc9' - 'a92af974cb62901aab5a5c8c34672e9a7c90ea7246bbd7423421a9b7ee12a7b17073d90a6f36f994328c7dc9c2d0a6e4fd18c980a71863bc530d873ebaa80433' 'ca9f407d87d8dd0181077bc2da5a8e2f8995eed88a4787b73ee6c62ef6d2380fd1394fe5412cdc34276d4182bce6f272173e9ccb653d1e28978e16f379114002' '6d7ab93042a75f04e1c3c8f294d19dd39abaf22aa75caf996c6a0cf753f6472134a3d4fa443b73924800b2d3a710416a931745c168911c0df3709fb71ec00570' - '92929ba1cb6ee104a10f34a649eba3789ca02f1725104a57412279ff68c46614b1812b13e7dcdf0d235618b9f2a868b4798b1404d9e712d9f1efd46e6c71fcb5') + '92929ba1cb6ee104a10f34a649eba3789ca02f1725104a57412279ff68c46614b1812b13e7dcdf0d235618b9f2a868b4798b1404d9e712d9f1efd46e6c71fcb5' + '6b677b68ebc7eda67d2f378c4d1cb5aca0a92fcecb04f685ae04aa4975655c36a606887526c4ff34b7e0b0ae2627eaf759fdeda896dffa0e0925132be36881ca' + '559b52ed83f4032b00e2daaf22e2f86c66ce016bd4f1368f216cffed38fd5436ae12ddea427655d39c969e7de35cdcec06a0be317e58cf3d8ba1388a29664164' + '2141359af03193ef8afe7e5cd38b03e8888dadabe58be8c9625e24572062167a10a3bf990728f16ab765cae776e834eaab88ff9c7e6a96f909a7c6ae807a1e82') + +_apply_patches() { + for patch in "${@}" + do + msg2 "Applying patch $patch" + patch -Np1 -i "$patch" + done +} + +prepare() { + cd "$srcdir/libbgcode-$_libbgcode" + rm -rf build + mkdir -p build + + _apply_patches \ + "$srcdir/0001-libbgcode-binarize-public-deps.patch" -prepare() -{ cd "$srcdir/SuperSlicer-$_pkgtag" - [ ! -f build/Makefile ] || rm -rf build - rm -rf build # build does fail everytime if it is not clean build ? + rm -rf build # build fails everytime if it isn't a clean build?!? mkdir -p build # disabling tests is not enough, we need to remove them explicitly sed -i 's,add_subdirectory(test),,g' src/CMakeLists.txt - # apply patches - patch -Np1 -i "$srcdir/0001-boost1.79.patch" - patch -Np1 -i "$srcdir/0002-fix-cereal.patch" - patch -Np1 -i "$srcdir/0003-openexr3.patch" - patch -Np0 -i "$srcdir/0004-fix-opencascade-version-check.patch" - patch -Np1 -i "$srcdir/0005-fix-opencascade-libs.patch" - patch -Np1 -i "$srcdir/0006-fix-non-const-lvalue.patch" - patch -Np1 -i "$srcdir/0007-boost1.84.patch" - patch -Np1 -i "$srcdir/0008-boost1.85.patch" - patch -Np1 -i "$srcdir/0009-fix-multiple-choice.patch" - patch -Np1 -i "$srcdir/0010-occtwrapper-install-dir.patch" + # apply patches for superslicer + _apply_patches \ + "$srcdir/prusaslicer-2.8.1-boost-1.87.0-asio.patch" \ + "$srcdir/prusaslicer-2.8.1-cgal-6.0.patch" \ + "$srcdir/0001-findwxwidgets.patch" \ + "$srcdir/0002-addlib-expat.patch" \ + "$srcdir/0003-openexr3.patch" \ + "$srcdir/0004-fix-opencascade-version-check.patch" \ + "$srcdir/0005-fix-opencascade-libs.patch" \ + "$srcdir/0008-boost1.85.patch" \ + "$srcdir/0009-fix-multiple-choice.patch" \ + "$srcdir/0010-occtwrapper-install-dir.patch" \ + "$srcdir/0011-fix-constructible-svgfile.patch" \ + "$srcdir/0012-boost1.87.patch" \ + "$srcdir/0013-fix-missing-template-args.patch" } -build() -{ - cd "$srcdir/SuperSlicer-$_pkgtag" +build() { + msg2 "Building libbgcode" + cd "$srcdir/libbgcode-$_libbgcode" cd build cmake .. \ -G Ninja \ - -DCMAKE_BUILD_TYPE=Release \ + -DCMAKE_BUILD_TYPE=None \ + -DCMAKE_INSTALL_PREFIX= \ + -DLibBGCode_BUILD_CMD_TOOL=OFF \ + -DLibBGCode_BUILD_TESTS=OFF \ + -Wno-dev + ninja + mkdir destdir + DESTDIR=destdir ninja install + export "CMAKE_PREFIX_PATH=$PWD/destdir:$CMAKE_PREFIX_PATH" + + msg2 "Building SuperSlicer" + cd "$srcdir/SuperSlicer-$_pkgtag" + cd build + + cmake .. -DCMAKE_MESSAGE_LOG_LEVEL=DEBUG \ + -G Ninja \ + -DCMAKE_BUILD_TYPE=None \ -DCMAKE_INSTALL_PREFIX=/usr \ -DOpenGL_GL_PREFERENCE=GLVND \ -DSLIC3R_FHS=ON \ @@ -80,12 +146,10 @@ build() -DSLIC3R_BUILD_TESTS=OFF \ -DSLIC3R_ALPHA=ON \ -Wno-dev - - samu + ninja } -package() -{ +package() { cd "$srcdir/SuperSlicer-$_pkgtag/build" DESTDIR="$pkgdir" samu install |