occt: update to 7.4.0.

ship an env file in /etc/profile.d to make sure the Draw command works
(stolen from arch linux)
This commit is contained in:
Piraty 2019-10-05 01:19:47 +02:00
parent 84a122a882
commit eebcaabd7a
4 changed files with 49 additions and 40 deletions

View file

@ -3239,6 +3239,7 @@ libTKOffset.so.7 occt-7.2.0p1_1
libTKXDESTEP.so.7 occt-7.2.0p1_1
libTKQADraw.so.7 occt-7.2.0p1_1
libTKXmlL.so.7 occt-7.2.0p1_1
libTKRWMesh.so.7 occt-7.4.0_1
libargon2.so.1 libargon2-20171227_1
libdazzle-1.0.so.0 libdazzle-3.28.0_1
libjsonrpc-glib-1.0.so.1 jsonrpc-glib-3.28.0_1

View file

@ -0,0 +1,24 @@
export CASROOT=/usr
export CSF_LANGUAGE=us
export MMGT_CLEAR=1
export CSF_EXCEPTION_PROMPT=1
export CSF_OCCTResourcePath=$CASROOT/share/opencascade/resources
export CSF_SHMessage=$CSF_OCCTResourcePath/SHMessage
export CSF_MDTVTexturesDirectory=$CSF_OCCTResourcePath/Textures
export CSF_ShadersDirectory=$CSF_OCCTResourcePath/Shaders
export CSF_XSMessage=$CSF_OCCTResourcePath/XSMessage
export CSF_TObjMessage=$CSF_OCCTResourcePath/TObj
export CSF_StandardDefaults=$CSF_OCCTResourcePath/StdResource
export CSF_PluginDefaults=$CSF_OCCTResourcePath/StdResource
export CSF_XCAFDefaults=$CSF_OCCTResourcePath/StdResource
export CSF_TObjDefaults=$CSF_OCCTResourcePath/StdResource
export CSF_StandardLiteDefaults=$CSF_OCCTResourcePath/StdResource
export CSF_IGESDefaults=$CSF_OCCTResourcePath/XSTEPResource
export CSF_STEPDefaults=$CSF_OCCTResourcePath/XSTEPResource
export CSF_XmlOcafResource=$CSF_OCCTResourcePath/XmlOcafResource
export CSF_MIGRATION_TYPES=$CSF_OCCTResourcePath/StdResource/MigrationSheet.txt
export CSF_DrawPluginDefaults=$CSF_OCCTResourcePath/DrawResources
export DRAWHOME=$CSF_OCCTResourcePath/DrawResources
export DRAWDEFAULT=$CSF_OCCTResourcePath/DrawResources/DrawDefault

View file

@ -7,7 +7,7 @@ non-posix functions fegetexcept(3) and feenableexcept(3).
--- src/OSD/OSD_signal.cxx.orig
+++ src/OSD/OSD_signal.cxx
@@ -645,7 +645,7 @@
@@ -703,7 +703,7 @@
#include <signal.h>
@ -16,40 +16,21 @@ non-posix functions fegetexcept(3) and feenableexcept(3).
#include <sys/signal.h>
#endif
@@ -687,7 +687,7 @@
// cout << "OSD::Handler: signal " << (int) theSignal << " occured inside a try block " << endl ;
if ( ADR_ACT_SIGIO_HANDLER != NULL )
(*ADR_ACT_SIGIO_HANDLER)() ;
-#ifdef __linux__
+#if defined(__linux__) && defined(__GLIBC__)
if (fFltExceptions)
feenableexcept (FE_INVALID | FE_DIVBYZERO | FE_OVERFLOW);
//feenableexcept (FE_INVALID | FE_DIVBYZERO);
@@ -805,7 +805,7 @@
(void)theSignal; // silence GCC warnings
(void)theContext;
-#ifdef __linux__
+#if defined(__linux__) && defined(__GLIBC__)
if (fFltExceptions)
feenableexcept (FE_INVALID | FE_DIVBYZERO | FE_OVERFLOW);
//feenableexcept (FE_INVALID | FE_DIVBYZERO);
@@ -892,14 +892,18 @@
#endif
}
#elif defined (__linux__)
+#if defined(__GLIBC__)
feenableexcept (FE_INVALID | FE_DIVBYZERO | FE_OVERFLOW);
+#endif
fFltExceptions = Standard_True;
#endif
}
else
@@ -914,7 +914,7 @@
//=======================================================================
void OSD::SetFloatingSignal (Standard_Boolean theFloatingSignal)
{
-#if defined (__linux__)
+#if defined (__linux__) && defined(__GLIBC__)
feclearexcept (FE_ALL_EXCEPT);
if (theFloatingSignal)
{
#if defined (__linux__)
+#if defined(__GLIBC__)
fedisableexcept (FE_INVALID | FE_DIVBYZERO | FE_OVERFLOW);
+#endif
fFltExceptions = Standard_False;
#endif
}
@@ -947,7 +947,7 @@
//=======================================================================
Standard_Boolean OSD::ToCatchFloatingSignals()
{
-#if defined (__linux__)
+#if defined (__linux__) && defined(__GLIBC__)
return (fegetexcept() & _OSD_FPX) != 0;
#else
return Standard_False;

View file

@ -1,6 +1,6 @@
# Template file for 'occt'
pkgname=occt
version=7.3.0p3
version=7.4.0
revision=1
_gittag="V${version//./_}"
wrksrc=occt-${_gittag}
@ -13,16 +13,19 @@ short_desc="OpenCASCADE Technology - library for CAD/CAM/CAE applications"
maintainer="Piraty <piraty1@inbox.ru>"
license="LGPL-2.1-only"
homepage="https://www.opencascade.com"
# distifile: use git instead of official tarball that requires registration
# distfile: use git instead of official tarball, which requires registration
# see https://www.opencascade.com/content/packaging-again-debian
distfiles="https://git.dev.opencascade.org/gitweb/?p=occt.git;a=snapshot;h=refs/tags/${_gittag};sf=tgz>occt-${_gittag}.tar.gz"
checksum=fbd46db3e75313131b88a606024ea4d4496c3c7f6e68c23988e9d3e673d4f21b
checksum=655da7717dac3460a22a6a7ee68860c1da56da2fec9c380d8ac0ac0349d67676
conflicts="oce>=0"
post_install() {
rm ${PKGDESTDIR}/usr/share/doc/opencascade/*_LGPL_*.txt
vlicense OCCT_LGPL_EXCEPTION.txt
rm ${DESTDIR}/usr/bin/custom*.sh
vmkdir /etc/profile.d
vinstall ${FILESDIR}/opencascade.sh 644 /etc/profile.d
}
occt-devel_package() {