From 6754147dd13f121848c9cc6810920b7dc8751e38 Mon Sep 17 00:00:00 2001 From: Sander Boer Date: Mon, 3 Feb 2020 16:43:38 +0100 Subject: [PATCH 1/2] New package: swig3-3.0.12 --- srcpkgs/swig3/template | 15 +++++++++++++++ 1 file changed, 15 insertions(+) create mode 100644 srcpkgs/swig3/template diff --git a/srcpkgs/swig3/template b/srcpkgs/swig3/template new file mode 100644 index 00000000000..9fc02b1b433 --- /dev/null +++ b/srcpkgs/swig3/template @@ -0,0 +1,15 @@ +# Template file for 'swig3' +pkgname=swig3 +version=3.0.12 +revision=1 +wrksrc=swig-3.0.12 +build_style=gnu-configure +configure_args="--program-suffix=3 --with-pcre-prefix=${XBPS_CROSS_BASE}/usr --with-python=/bin/python2 --with-python3=/bin/python3" +hostmakedepends="bison" +makedepends="zlib-devel pcre-devel" +short_desc="Simplified Wrapper and Interface Generator" +maintainer="Sander Boer " +license="GPL-3.0-or-later" +homepage="http://www.swig.org" +distfiles="${SOURCEFORGE_SITE}/swig/swig-${version}.tar.gz" +checksum=7cf9f447ae7ed1c51722efc45e7f14418d15d7a1e143ac9f09a668999f4fc94d From 2c70871dc2ed2c6a711a8dedac2d115e55dfe837 Mon Sep 17 00:00:00 2001 From: Sander Boer Date: Mon, 3 Feb 2020 16:47:11 +0100 Subject: [PATCH 2/2] New package: ifcopenshell-v0.6.0b0 --- .../ifcopenshell/patches/001-ifcblender.patch | 13 ++++++ ...2-fix-segfault-on-curve-intersection.patch | 23 +++++++++++ srcpkgs/ifcopenshell/template | 41 +++++++++++++++++++ 3 files changed, 77 insertions(+) create mode 100644 srcpkgs/ifcopenshell/patches/001-ifcblender.patch create mode 100644 srcpkgs/ifcopenshell/patches/002-fix-segfault-on-curve-intersection.patch create mode 100644 srcpkgs/ifcopenshell/template diff --git a/srcpkgs/ifcopenshell/patches/001-ifcblender.patch b/srcpkgs/ifcopenshell/patches/001-ifcblender.patch new file mode 100644 index 00000000000..b3bbe634f68 --- /dev/null +++ b/srcpkgs/ifcopenshell/patches/001-ifcblender.patch @@ -0,0 +1,13 @@ +--- /src/ifcblender/io_import_scene_ifc/__init__.py ++++ /src/ifcblender/io_import_scene_ifc/__init__.py +@@ -64,8 +64,8 @@ + + + def import_ifc(filename, use_names, process_relations, blender_booleans): +- from . import ifcopenshell +- from .ifcopenshell import geom as ifcopenshell_geom ++ import ifcopenshell ++ from ifcopenshell import geom as ifcopenshell_geom + print(f"Reading {bpy.path.basename(filename)}...") + settings = ifcopenshell_geom.settings() + settings.set(settings.DISABLE_OPENING_SUBTRACTIONS, blender_booleans) diff --git a/srcpkgs/ifcopenshell/patches/002-fix-segfault-on-curve-intersection.patch b/srcpkgs/ifcopenshell/patches/002-fix-segfault-on-curve-intersection.patch new file mode 100644 index 00000000000..17a64e31bc1 --- /dev/null +++ b/srcpkgs/ifcopenshell/patches/002-fix-segfault-on-curve-intersection.patch @@ -0,0 +1,23 @@ +--- /src/ifcgeom/IfcGeomFunctions.cpp ++++ /src/ifcgeom/IfcGeomFunctions.cpp +@@ -3645,10 +3645,9 @@ + if (i == n - 1 && j == 0) continue; + + double u11, u12, u21, u22, U1, U2; +- GeomAPI_ExtremaCurveCurve ecc( +- BRep_Tool::Curve(wd->Edge(i + 1), u11, u12), +- BRep_Tool::Curve(wd->Edge(j + 1), u21, u22) +- ); ++ thread_local Handle(Geom_Curve) c0 = BRep_Tool::Curve(wd->Edge(i + 1), u11, u12); ++ thread_local Handle(Geom_Curve) c1 = BRep_Tool::Curve(wd->Edge(j + 1), u21, u22); ++ GeomAPI_ExtremaCurveCurve ecc(c0, c1); + + // @todo: extend this to work in case of multiple extrema and curved segments. + const bool unbounded_intersects = (ecc.NbExtrema() == 1 && ecc.Distance(1) < eps); +@@ -4227,4 +4226,4 @@ + if (loops_removed || (non_manifold && l->declaration().is(IfcSchema::IfcClosedShell::Class()))) { + Logger::Warning(boost::lexical_cast(duplicate_faces) + " duplicate faces removed, " + boost::lexical_cast(loops_removed) + " loops removed and " + boost::lexical_cast(non_manifold) + " non-manifold edges for:", l); + } +-} +\ No newline at end of file ++} diff --git a/srcpkgs/ifcopenshell/template b/srcpkgs/ifcopenshell/template new file mode 100644 index 00000000000..902f93bb7bc --- /dev/null +++ b/srcpkgs/ifcopenshell/template @@ -0,0 +1,41 @@ +# Template file for 'ifcopenshell' +pkgname=ifcopenshell +version=0.6.0b0 +revision=1 + +wrksrc="IfcOpenShell-${version}" +distfiles="https://github.com/IfcOpenShell/IfcOpenShell/archive/v${version}.tar.gz" +checksum=d4a9a28b715512659670f2a101bef64363df7808a64ed30e7019161caae6a914 + +build_style=cmake +_blenderversion=2.81 +configure_args=" +-Wno-dev +-DCMAKE_INSTALL_PREFIX=/usr +-DOCC_INCLUDE_DIR=/usr/include/opencascade +-Dgp_Pnt_hxx=/usr/include/opencascade/gp_Pnt.hxx +-DPYTHON_INCLUDE_DIR=/usr/include/python3.8 +-DPYTHON_EXECUTABLE=/bin/python3 +-DPYTHON_LIBRARY=/usr/lib/libpython3.8.so +-DLIBXML2_INCLUDE_DIR=/usr/include/libxml2 +-DLIBXML2_LIBRARIES=/usr/lib/libxml2.so +-DSWIG_DIR=/usr/share/swig/3.0.12 +-DSWIG_EXECUTABLE=/bin/swig3 +-DSWIG_VERSION=3.0.12 +../cmake/ +" +patch_args="-Np1" +hostmakedepends="swig3" +makedepends="python3-devel boost-devel occt-devel icu-devel libxml2-devel opencollada-devel pcre-devel" +depends="python3 boost occt libxml2 opencollada icu" + +short_desc="Open source ifc toolkit and geometry engine. Provides IfcConvert IfcGeomserver, ifcopenshell python bindings and blender ifc import addon" +maintainer="Sander Boer " +license="LGPL-v3.0" +homepage="http://www.ifcopenshell.org/" + +post_install(){ + vmkdir usr/share/blender/${_blenderversion}/scripts/addons_contrib + vcopy src/ifcblender/* usr/share/blender/${_blenderversion}/scripts/addons_contrib/ + } +