# Maintainer: Marian Buschsieweke pkgname=openscad pkgver=2021.01 pkgrel=11 pkgdesc="The programmers solid 3D CAD modeller" url="http://openscad.org/" # Glew and GLES on ARM don't play well with each other arch="all !armv7 !aarch64 !armhf" license="GPL-2.0-only" subpackages="$pkgname-doc" makedepends=" bison boost-dev cairo-dev cgal-dev cmake double-conversion-dev eigen-dev flex glew-dev gmp-dev harfbuzz-dev libxml2-dev libzip-dev libspnav-dev mpfr-dev opencsg-dev qscintilla-dev qt5-qtbase-dev qt5-qtmultimedia-dev " checkdepends=" imagemagick mesa mesa-dri-gallium python3 xvfb-run " source=" https://files.openscad.org/openscad-$pkgver.src.tar.gz 0001-fix-CVE-2022-0496.patch 0002-fix-CVE-2022-0497.patch 0003-fix-build-with-cgal-5.3.patch 0004-fix-build-with-cgal-5.4.patch 0005-fix-boost-join.patch " # Handle tests failing only on some arch's, or building against libs only # provided by some arch's. case "$CARCH" in x86_64) makedepends="$makedepends lib3mf-dev" export LIB3MF_INCLUDEPATH="/usr/include/lib3mf/Bindings/Cpp" ;; x86) makedepends="$makedepends lib3mf-dev" export LIB3MF_INCLUDEPATH="/usr/include/lib3mf/Bindings/Cpp" _arch_failing_tests=" 3mfpngtest_cube10 " ;; s390x) _arch_failing_tests=" 3mfpngtest_cube10 cgalbinstlcgalpngtest_bad-stl-pcbvicebar cgalbinstlcgalpngtest_bad-stl-tardis cgalbinstlcgalpngtest_fn_bug cgalbinstlcgalpngtest_issue1225 cgalpngtest_import_3mf-tests csgpngtest_import_3mf-tests opencsgtest_import_3mf-tests throwntogethertest_import_3mf-tests " ;; *) # lib3mf is not available on all other archs _arch_failing_tests=" 3mfpngtest_cube10 cgalpngtest_import_3mf-tests csgpngtest_import_3mf-tests opencsgtest_import_3mf-tests throwntogethertest_import_3mf-tests " ;; esac # secfixes: # 2021.01-r2: # - CVE-2022-0496 # - CVE-2022-0497 build() { qmake-qt5 PREFIX="/usr" make } check() { cd tests # collect failing tests in a way that creates friendly git diffs local failing_tests failing_tests=" 3mfexport_3mf-export astdumptest_allexpressions cgalbinstlcgalpngtest_polyhedron-nonplanar-tests cgalpngtest_nef3_broken cgalpngtest_polyhedron-nonplanar-tests cgalstlcgalpngtest_polyhedron-nonplanar-tests csgpngtest_nef3_broken csgpngtest_polyhedron-nonplanar-tests echotest_allexpressions echotest_function-literal-.* lazyunion-.* monotonepngtest_polyhedron-nonplanar-tests opencsgtest_nef3_broken pdfexporttest_centered pdfexporttest_simple-pdf throwntogethertest_nef3_broken $_arch_failing_tests " # trim whitespace before and after list and separate expressions by | (regex or) failing_tests="$(echo "$failing_tests" | tr -d '\n' | sed -e 's/^\s*//' -e 's/\s*$//' -e 's/\s\+/|/g')" cmake \ -DEXPERIMENTAL=OFF \ . make xvfb-run ctest -E "$failing_tests" } package() { make INSTALL_ROOT="$pkgdir" install } sha512sums=" 8deaa26bf4c295c12da38f323d2b2e6f827851337f5bc1cc9c79afc083c9f913c19a263086e6e853bf2c8434c1ccc705ea22ddb02dc99d39bb1e5e03fc58d128 openscad-2021.01.src.tar.gz 369353f13bb6d2bf123af1e25b5f264cd757efa5d0cd8c226a3803a41a0fdb74aff7411ddf91cb394f9cd295e10e05159487fb6e9c2d661280bf060e391bc3da 0001-fix-CVE-2022-0496.patch 708a491c5a6166bdf92419bce68dbcb4eccbb97ce1880c5a3c919a90ae5af19aa9092e46b81fe8705e8470189d43c4ecad19dece9f1e405681a186c0bd8f5ca4 0002-fix-CVE-2022-0497.patch 090b8a8e53cc7560695d4065db891a3602923d893d752e3d007a42f2cd32c5f6f444d735d716658fb6f3d979e8cf2489cbff3a58a9070621ab5448a6dbf3372b 0003-fix-build-with-cgal-5.3.patch 7d3067bcadf5a56b3b21b80f36e8d1fd99047029b86db6803b71760d47a8b199d3485c6486767707273aa57f9a83aaafcb763fe7a1ee295b01a776f7e5db038f 0004-fix-build-with-cgal-5.4.patch f0538eb98543a2a15534794f91c35f10d21fe04a8696639a4f08cd98daf63e6efc855b102f41ecb05a1e1bffeecc7c445fcfad7c3a90f32ec28c5a1646863466 0005-fix-boost-join.patch "