Merge pull request #11860 from mmuetzel/openscenegraph

OpenSceneGraph: build OpenCASCADE plugin
This commit is contained in:
Christoph Reiter
2022-06-17 16:11:15 +02:00
committed by GitHub
3 changed files with 65 additions and 38 deletions

View File

@@ -0,0 +1,23 @@
diff -urN OpenSceneGraph-OpenSceneGraph-3.6.5/src/osgPlugins/OpenCASCADE/ReaderWriterOpenCASCADE.cpp.orig OpenSceneGraph-OpenSceneGraph-3.6.5/src/osgPlugins/OpenCASCADE/ReaderWriterOpenCASCADE.cpp
--- OpenSceneGraph-OpenSceneGraph-3.6.5/src/osgPlugins/OpenCASCADE/ReaderWriterOpenCASCADE.cpp.orig 2020-01-31 12:03:07.000000000 +0100
+++ OpenSceneGraph-OpenSceneGraph-3.6.5/src/osgPlugins/OpenCASCADE/ReaderWriterOpenCASCADE.cpp 2022-06-15 18:01:51.140786000 +0200
@@ -30,6 +30,7 @@
#include <Standard_ErrorHandler.hxx>
#include <Standard_CString.hxx>
#include <Standard_Macro.hxx>
+#include <Standard_Version.hxx>
#include <TopoDS.hxx>
#include <TopoDS_Face.hxx>
@@ -211,7 +212,11 @@
{
// populate vertex list
// Ref: http://www.opencascade.org/org/forum/thread_16694/?forum=3
+#if OCC_VERSION_HEX < 0x070600
gp_Pnt pt = (triangulation->Nodes())(j).Transformed(transformation * location.Transformation());
+#else
+ gp_Pnt pt = triangulation->Node(j).Transformed(transformation * location.Transformation());
+#endif
vertexList->push_back(osg::Vec3(pt.X(), pt.Y(), pt.Z()));
// populate color list

View File

@@ -5,13 +5,14 @@ pkgbase=mingw-w64-${_realname}
pkgname=("${MINGW_PACKAGE_PREFIX}-${_realname}" "${MINGW_PACKAGE_PREFIX}-${_realname}-debug")
_pkgver=3.6.5
pkgver=${_pkgver//-/}
pkgrel=10
pkgrel=11
arch=('any')
mingw_arch=('mingw32' 'mingw64' 'ucrt64' 'clang64' 'clang32')
url="http://www.openscenegraph.org/"
license=("LGPL")
makedepends=("${MINGW_PACKAGE_PREFIX}-cmake"
"${MINGW_PACKAGE_PREFIX}-cc"
license=("spdx:LGPL-2.1-only WITH WxWindows-exception-3.1")
makedepends=("${MINGW_PACKAGE_PREFIX}-cc"
"${MINGW_PACKAGE_PREFIX}-cmake"
"${MINGW_PACKAGE_PREFIX}-ninja"
"${MINGW_PACKAGE_PREFIX}-cyrus-sasl")
depends=("${MINGW_PACKAGE_PREFIX}-boost"
"${MINGW_PACKAGE_PREFIX}-collada-dom-svn"
@@ -32,6 +33,7 @@ depends=("${MINGW_PACKAGE_PREFIX}-boost"
"${MINGW_PACKAGE_PREFIX}-libvncserver"
"${MINGW_PACKAGE_PREFIX}-libxml2"
"${MINGW_PACKAGE_PREFIX}-lua"
"${MINGW_PACKAGE_PREFIX}-opencascade"
"${MINGW_PACKAGE_PREFIX}-SDL"
"${MINGW_PACKAGE_PREFIX}-SDL2"
"${MINGW_PACKAGE_PREFIX}-poppler"
@@ -45,8 +47,12 @@ source=(https://github.com/openscenegraph/OpenSceneGraph/archive/${_realname}-${
additional-gl-header.patch
add-gstreamer-cflags.patch
las-link-with-boost.patch
# https://github.com/openscenegraph/OpenSceneGraph/pull/1055
backport-1055.patch
backport-977.patch)
# https://github.com/openscenegraph/OpenSceneGraph/pull/977
backport-977.patch
# https://github.com/openscenegraph/OpenSceneGraph/pull/1144
0008-opencascade-7.6.0.patch)
sha256sums=('aea196550f02974d6d09291c5d83b51ca6a03b3767e234a8c0e21322927d1e12'
'24f64f975e776fc018f9c65a1bcae043dded1d4174342d863f9f205b013acc13'
'3c7469cf0741905f2c46e4632159220213532d8f194b711b0600b50ad94ab4f8'
@@ -54,20 +60,29 @@ sha256sums=('aea196550f02974d6d09291c5d83b51ca6a03b3767e234a8c0e21322927d1e12'
'feb994964fe636e4591394a4c287d27d54cf61c8e5fc5324aebb161cafe2e3dc'
'54457dcee1cdd1c486607640e4e0272e619f445291ec4edd04dda99e3c4eb4f7'
'108bc2ab77959b007dbe5a28be4d06bce364959c89d142a02870f6de466af9bb'
'a70765ce5e4493e9047b33ab89f322a5d6145649d700e5f6a89e84db7880ecb7')
'a70765ce5e4493e9047b33ab89f322a5d6145649d700e5f6a89e84db7880ecb7'
'0413b3244e91ca7664bd6d6c2a646fae6adb126b181d484eea41a4b7346d1078')
apply_patch_with_msg() {
for _patch in "$@"
do
msg2 "Applying $_patch"
patch -Np1 -i "${srcdir}/$_patch"
done
}
prepare() {
cd "${srcdir}/${_realname}-${_realname}-${_pkgver}"
patch -p1 -i ${srcdir}/find-collada.patch
patch -p1 -i ${srcdir}/find-freetype.patch
patch -p1 -i ${srcdir}/additional-gl-header.patch
patch -p1 -i ${srcdir}/add-gstreamer-cflags.patch
patch -p1 -i ${srcdir}/las-link-with-boost.patch
# https://github.com/openscenegraph/OpenSceneGraph/pull/1055
patch -p1 -i ${srcdir}/backport-1055.patch
# https://github.com/openscenegraph/OpenSceneGraph/pull/977
patch -p1 -i ${srcdir}/backport-977.patch
apply_patch_with_msg \
find-collada.patch \
find-freetype.patch \
additional-gl-header.patch \
add-gstreamer-cflags.patch \
las-link-with-boost.patch \
backport-1055.patch \
backport-977.patch \
0008-opencascade-7.6.0.patch
}
build() {
@@ -86,15 +101,15 @@ build() {
msg "Building ${builddir%-${MSYSTEM}} version..."
MSYS2_ARG_CONV_EXCL="-DCMAKE_INSTALL_PREFIX=" \
COLLADA_DIR=${MINGW_PREFIX} \
${MINGW_PREFIX}/bin/cmake.exe \
-G"MSYS Makefiles" \
-DCMAKE_INSTALL_PREFIX=${MINGW_PREFIX} \
COLLADA_DIR="${MINGW_PREFIX}" \
"${MINGW_PREFIX}"/bin/cmake.exe \
-GNinja \
-DCMAKE_INSTALL_PREFIX="${MINGW_PREFIX}" \
-DCMAKE_BUILD_TYPE=${builddir%-${MSYSTEM}} \
${_opts} \
../${_realname}-${_realname}-${_pkgver}
cmake --build .
"${MINGW_PREFIX}"/bin/cmake.exe --build .
popd
done
}
@@ -103,9 +118,9 @@ package_OpenSceneGraph() {
pkgdesc="Open source high performance 3D graphics toolkit (mingw-w64)"
cd Release-${MSYSTEM}
DESTDIR=${pkgdir} cmake --install .
DESTDIR="${pkgdir}" "${MINGW_PREFIX}"/bin/cmake.exe --install .
install -Dm644 ${srcdir}/${_realname}-${_realname}-${_pkgver}/LICENSE.txt "${pkgdir}${MINGW_PREFIX}"/share/licenses/${_realname}/LICENSE
install -Dm644 "${srcdir}"/${_realname}-${_realname}-${_pkgver}/LICENSE.txt "${pkgdir}${MINGW_PREFIX}"/share/licenses/${_realname}/LICENSE
}
package_OpenSceneGraph-debug() {
@@ -114,13 +129,13 @@ package_OpenSceneGraph-debug() {
pkgdesc="Open source high performance 3D graphics toolkit (debug) (mingw-w64)"
cd Debug-${MSYSTEM}
DESTDIR=${pkgdir} cmake --install .
DESTDIR="${pkgdir}" "${MINGW_PREFIX}"/bin/cmake.exe --install .
rm -rf ${pkgdir}${MINGW_PREFIX}/include
rm -rf ${pkgdir}${MINGW_PREFIX}/lib/pkgconfig
rm -rf ${pkgdir}${MINGW_PREFIX}/share
rm -rf "${pkgdir}${MINGW_PREFIX}"/include
rm -rf "${pkgdir}${MINGW_PREFIX}"/lib/pkgconfig
rm -rf "${pkgdir}${MINGW_PREFIX}"/share
install -Dm644 ${srcdir}/${_realname}-${_realname}-${_pkgver}/LICENSE.txt "${pkgdir}${MINGW_PREFIX}"/share/licenses/${_realname}-debug/LICENSE
install -Dm644 "${srcdir}"/${_realname}-${_realname}-${_pkgver}/LICENSE.txt "${pkgdir}${MINGW_PREFIX}"/share/licenses/${_realname}-debug/LICENSE
}
# template start; name=mingw-w64-splitpkg-wrappers; version=1.0;

View File

@@ -1,11 +0,0 @@
--- OpenSceneGraph-OpenSceneGraph-3.5.5/src/osgPlugins/3ds/ReaderWriter3DS.cpp 2017-02-24 13:09:52.785969600 +0100
+++ OpenSceneGraph-OpenSceneGraph-3.5.5/src/osgPlugins/3ds/ReaderWriter3DS.cpp.orig 2017-02-24 13:01:55.130353400 +0100
@@ -619,7 +619,7 @@
{
// add our geometry to group (where our children already are)
// creates geometry under modifier node
- processMesh(drawStateMap,group,mesh,meshAppliedMatPtr);
+ processMesh(drawStateMap,meshTransform,mesh,meshAppliedMatPtr);
return group;
}
else