Github messages for voidlinux
 help / color / mirror / Atom feed
* [PR PATCH] [WIP] occt: update to 7.6.1
@ 2022-03-26  4:42 karl-nilsson
  2022-03-26 15:07 ` [PR PATCH] [Updated] " karl-nilsson
                   ` (41 more replies)
  0 siblings, 42 replies; 43+ messages in thread
From: karl-nilsson @ 2022-03-26  4:42 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 2103 bytes --]

There is a new pull request by karl-nilsson against master on the void-packages repository

https://github.com/karl-nilsson/void-packages occt_7.6
https://github.com/void-linux/void-packages/pull/36356

[WIP] occt: update to 7.6.1


#### Testing the changes
- I tested the changes in this PR: **briefly**


#### Local build testing
- I built this PR locally for my native architecture, x64-glibc


Like previously, broken ABI
```console
During initialization the error "/usr/lib/freecad/lib64/Part.so: undefined symbol: _ZN24BRepBuilderAPI_MakeShape5BuildEv" occurred in /home/nilsson/.FreeCAD/Mod/A2plus/InitGui.py                                                                                                                        
Please look into the log file for further information                                                                                                
Wizard shaft module cannot be loaded                                                                                                                 
/usr/lib/freecad/lib64/Part.so: undefined symbol: _ZN24BRepBuilderAPI_MakeShape5BuildEv                                                              
connect failed: No such file or directory      
```

Looks like we'll have to update or patch freecad
```console
In file included from /usr/include/opencascade/Extrema_POnSurf.lxx:15,
                 from /usr/include/opencascade/Extrema_POnSurf.hxx:75,
                 from /usr/include/opencascade/Extrema_ExtPElS.hxx:27,
                 from /usr/include/opencascade/Extrema_ExtPS.hxx:24,
                 from /usr/include/opencascade/ShapeAnalysis_Surface.hxx:20,
                 from ../src/3rdParty/salomesmesh/inc/SMESH_MesherHelper.hxx:37,
                 from ../src/3rdParty/salomesmesh/src/SMESH/SMESH_Mesh.cpp:34:
/usr/include/opencascade/Precision.hxx:98:7: note: previous definition of 'class Precision'
   98 | class Precision
      |       ^~~~~~~~~

```

ping @Piraty 

A patch file from https://github.com/void-linux/void-packages/pull/36356.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-occt_7.6-36356.patch --]
[-- Type: text/x-diff, Size: 9783 bytes --]

From 330f1a6511259207ecd527e00e9c11bb68292bbf Mon Sep 17 00:00:00 2001
From: Karl Nilsson <karl.robert.nilsson@gmail.com>
Date: Fri, 25 Mar 2022 20:24:49 -0400
Subject: [PATCH 1/2] python3-occ: remove package

* upstream is well behind occt
---
 srcpkgs/python3-occ/patches/python3.10.patch | 15 ---------------
 srcpkgs/python3-occ/template                 | 17 -----------------
 srcpkgs/removed-packages/template            |  3 ++-
 3 files changed, 2 insertions(+), 33 deletions(-)
 delete mode 100644 srcpkgs/python3-occ/patches/python3.10.patch
 delete mode 100644 srcpkgs/python3-occ/template

diff --git a/srcpkgs/python3-occ/patches/python3.10.patch b/srcpkgs/python3-occ/patches/python3.10.patch
deleted file mode 100644
index e192608fd3b3..000000000000
--- a/srcpkgs/python3-occ/patches/python3.10.patch
+++ /dev/null
@@ -1,15 +0,0 @@
-diff --git a/src/Display/SimpleGui.py b/src/Display/SimpleGui.py
-index 42705a82..6a274c16 100644
---- a/src/Display/SimpleGui.py
-+++ b/src/Display/SimpleGui.py
-@@ -161,8 +161,8 @@ def init_display(backend_str: Optional[str]=None,
-             def centerOnScreen(self) -> None:
-                 '''Centers the window on the screen.'''
-                 resolution = QtWidgets.QApplication.desktop().screenGeometry()
--                x = (resolution.width() - self.frameSize().width()) / 2
--                y = (resolution.height() - self.frameSize().height()) / 2
-+                x = (resolution.width() - self.frameSize().width()) // 2
-+                y = (resolution.height() - self.frameSize().height()) // 2
-                 self.move(x, y)
- 
-             def add_menu(self, menu_name: str) -> None:
diff --git a/srcpkgs/python3-occ/template b/srcpkgs/python3-occ/template
deleted file mode 100644
index bee03373a3d1..000000000000
--- a/srcpkgs/python3-occ/template
+++ /dev/null
@@ -1,17 +0,0 @@
-# Template file for 'python3-occ'
-pkgname=python3-occ
-version=7.4.1
-revision=3
-archs="i686* x86_64* armv7l* aarch64* ppc*"
-wrksrc="pythonocc-core-${version}"
-build_style=cmake
-configure_args="-DPYTHONOCC_BUILD_TYPE=None -DCMAKE_BUILD_TYPE=None"
-hostmakedepends="python3 swig"
-makedepends="python3-devel occt-devel freetype-devel swig"
-depends="python3 occt freetype"
-short_desc="Industrial strength 3D CAD Python3 package"
-maintainer="Karl Nilsson <karl.robert.nilsson@gmail.com>"
-license="LGPL-3.0-or-later"
-homepage="http://pythonocc.org"
-distfiles="https://github.com/tpaviot/pythonocc-core/archive/${version}.tar.gz"
-checksum=6d62002244a0e7f4e5c1ad590d332a60601c44b2501ad017361443b54371e667
diff --git a/srcpkgs/removed-packages/template b/srcpkgs/removed-packages/template
index df264c9d7501..dc8107f36e09 100644
--- a/srcpkgs/removed-packages/template
+++ b/srcpkgs/removed-packages/template
@@ -1,7 +1,7 @@
 # Template file for 'removed-packages'
 pkgname=removed-packages
 version=0.1
-revision=67
+revision=68
 build_style=meta
 short_desc="Uninstalls packages removed from repository"
 maintainer="Piotr Wójcik <chocimier@tlen.pl>"
@@ -327,6 +327,7 @@ replaces="
  python3-keepalive<=0.5_6
  python3-pgpdump<=1.5_10
  python3-lockfile<=0.12.2_7
+ python3-occ<=7.4.1_3
  python3-pyPEG2<=2.15.2_7
  python3-pyenet<=5.15.0_2
  python3-pyside-phonon<=5.15.0_2

From 4ff9f0b1f5971b4a3409aed5cfccd00df017786e Mon Sep 17 00:00:00 2001
From: Karl Nilsson <karl.robert.nilsson@gmail.com>
Date: Fri, 25 Mar 2022 19:29:00 -0400
Subject: [PATCH 2/2] occt: update to 7.6.1.

---
 .../occt/patches/cmake-build-type-none.patch  |  6 +--
 srcpkgs/occt/patches/musl-fenv.patch          | 18 ++++----
 srcpkgs/occt/patches/musl-mallinfo.patch      | 45 ++++++++++++++-----
 srcpkgs/occt/template                         | 24 +++++-----
 srcpkgs/occt/update                           |  2 -
 5 files changed, 56 insertions(+), 39 deletions(-)
 delete mode 100644 srcpkgs/occt/update

diff --git a/srcpkgs/occt/patches/cmake-build-type-none.patch b/srcpkgs/occt/patches/cmake-build-type-none.patch
index ecb0e3da3929..d2caec8c4e87 100644
--- a/srcpkgs/occt/patches/cmake-build-type-none.patch
+++ b/srcpkgs/occt/patches/cmake-build-type-none.patch
@@ -1,8 +1,8 @@
-Index: CMakeLists.txt
-===================================================================
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index f4ec871f5..9b0644e94 100644
 --- a/CMakeLists.txt
 +++ b/CMakeLists.txt
-@@ -4,7 +4,7 @@ set (CMAKE_MODULE_PATH "${CMAKE_SOURCE_D
+@@ -4,7 +4,7 @@ set (CMAKE_MODULE_PATH "${CMAKE_SOURCE_DIR}/adm/cmake")
  
  set (CMAKE_SUPPRESS_REGENERATION TRUE)
  
diff --git a/srcpkgs/occt/patches/musl-fenv.patch b/srcpkgs/occt/patches/musl-fenv.patch
index 09da8d0afeae..06a8e3a89cfd 100644
--- a/srcpkgs/occt/patches/musl-fenv.patch
+++ b/srcpkgs/occt/patches/musl-fenv.patch
@@ -5,18 +5,20 @@ is probably wrong, but I don't have a replacement for the
 non-posix functions fegetexcept(3) and feenableexcept(3).
 """
 
+diff --git a/src/OSD/OSD_signal.cxx b/src/OSD/OSD_signal.cxx
+index 007f5ccaa..fe39e07ac 100644
 --- a/src/OSD/OSD_signal.cxx
 +++ b/src/OSD/OSD_signal.cxx
-@@ -703,7 +703,7 @@
- 
+@@ -761,7 +761,7 @@ typedef void (* SIG_PFV) (int);
+
  #include <signal.h>
- 
--#if !defined(__ANDROID__) && !defined(__QNX__)
-+#if !defined(__ANDROID__) && !defined(__QNX__) && defined(__GLIBC__)
+
+-#if !defined(__ANDROID__) && !defined(__QNX__) && !defined(__EMSCRIPTEN__)
++#if !defined(__ANDROID__) && !defined(__QNX__) && !defined(__EMSCRIPTEN__) && defined(__GLIBC__)
    #include <sys/signal.h>
  #endif
- 
-@@ -914,7 +914,7 @@
+
+@@ -977,7 +977,7 @@ static void SegvHandler(const int theSignal,
  //=======================================================================
  void OSD::SetFloatingSignal (Standard_Boolean theFloatingSignal)
  {
@@ -25,7 +27,7 @@ non-posix functions fegetexcept(3) and feenableexcept(3).
    feclearexcept (FE_ALL_EXCEPT);
    if (theFloatingSignal)
    {
-@@ -947,7 +947,7 @@
+@@ -1010,7 +1010,7 @@ void OSD::SetFloatingSignal (Standard_Boolean theFloatingSignal)
  //=======================================================================
  Standard_Boolean OSD::ToCatchFloatingSignals()
  {
diff --git a/srcpkgs/occt/patches/musl-mallinfo.patch b/srcpkgs/occt/patches/musl-mallinfo.patch
index 4e5825bf1cb0..6ae94992eaf8 100644
--- a/srcpkgs/occt/patches/musl-mallinfo.patch
+++ b/srcpkgs/occt/patches/musl-mallinfo.patch
@@ -1,17 +1,38 @@
-In musl libc there is no struct mallinfo and no function mallinf()
+Adapted from alpine's patch
 
+diff --git a/src/OSD/OSD_MemInfo.cxx b/src/OSD/OSD_MemInfo.cxx
+index d9bb91398..d608e04fc 100644
 --- a/src/OSD/OSD_MemInfo.cxx
 +++ b/src/OSD/OSD_MemInfo.cxx
-@@ -147,8 +147,12 @@
-   }
-   aFile.close();
+@@ -35,6 +35,9 @@
+ #include <sstream>
+ #include <fstream>
+ 
++#include <sys/time.h>
++#include <sys/resource.h>
++
+ #include <OSD_MemInfo.hxx>
  
-+  #if defined(__GLIBC__)
-   struct mallinfo aMI = mallinfo();
-   myCounters[MemHeapUsage] = aMI.uordblks;
-+  #else /* XXX not yet coded */
-+  myCounters[MemHeapUsage] = 0;
-+  #endif
+ #if defined(__EMSCRIPTEN__)
+@@ -182,18 +185,9 @@ void OSD_MemInfo::Update()
+ #elif (defined(__linux__) || defined(__linux))
+   if (IsActive (MemHeapUsage))
+   {
+-  #if defined(__GLIBC__) && defined(__GLIBC_PREREQ)
+-    #if __GLIBC_PREREQ(2,33)
+-      #define HAS_MALLINFO2
+-    #endif
+-  #endif
+-
+-  #ifdef HAS_MALLINFO2
+-    const struct mallinfo2 aMI = mallinfo2();
+-  #else
+-    const struct mallinfo aMI = mallinfo();
+-  #endif
+-    myCounters[MemHeapUsage] = aMI.uordblks;
++    struct rusage ru = { .ru_maxrss = 0 };
++    getrusage(RUSAGE_SELF, &ru);
++    myCounters[MemHeapUsage] = ru.ru_maxrss;
+   }
  
- #elif (defined(__APPLE__))
-   struct task_basic_info aTaskInfo;
+   if (!IsActive (MemVirtual)
diff --git a/srcpkgs/occt/template b/srcpkgs/occt/template
index 6624fea8b53f..ee6838efc30f 100644
--- a/srcpkgs/occt/template
+++ b/srcpkgs/occt/template
@@ -1,24 +1,20 @@
 # Template file for 'occt'
 pkgname=occt
-reverts=7.5.0_1
-version=7.4.0p1
-revision=5
-_gittag="V${version//./_}"
-wrksrc=occt-${_gittag}
+version=7.6.1
+revision=1
+_ver="${version//./_}"
+wrksrc=OCCT-${_ver}
 build_style=cmake
-# XXX: re-enable -DUSE_TBB=ON if possible when updating
-configure_args="-DUSE_FREEIMAGE=ON -DUSE_GL2PS=ON -DUSE_VTK=OFF
+configure_args="-DUSE_FREEIMAGE=ON -DUSE_TBB=ON -DUSE_GL2PS=ON -DUSE_VTK=OFF
  -DINSTALL_SAMPLES=ON"
-makedepends="freetype-devel glu-devel freeimage-devel gl2ps-devel tcl-devel
- tk-devel"
+makedepends="freetype-devel glu-devel freeimage-devel gl2ps-devel tbb-devel
+ tcl-devel tk-devel"
 short_desc="OpenCASCADE Technology - library for CAD/CAM/CAE applications"
 maintainer="Piraty <piraty1@inbox.ru>"
 license="custom:LGPL-2.1-only-with-exceptions"
 homepage="https://www.opencascade.com"
-# 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=e00fedc221560fda31653c23a8f3d0eda78095c87519f338d4f4088e2ee9a9c0
+distfiles="https://github.com/Open-Cascade-SAS/OCCT/archive/V${_ver}.tar.gz"
+checksum=48969bf9130966a30b370b335133f87e8614b7cbc077b0df9d895bbefc5cfeae
 conflicts="oce>=0"
 
 post_install() {
@@ -28,7 +24,7 @@ post_install() {
 
 	vmkdir /etc/profile.d
 	vinstall ${FILESDIR}/opencascade.sh 644 /etc/profile.d
-	chmod 755 ${DESTDIR}/usr/bin/draw.sh
+    chmod 755 ${DESTDIR}/usr/bin/draw.sh
 }
 
 occt-devel_package() {
diff --git a/srcpkgs/occt/update b/srcpkgs/occt/update
deleted file mode 100644
index c128eec6d9c9..000000000000
--- a/srcpkgs/occt/update
+++ /dev/null
@@ -1,2 +0,0 @@
-site="https://git.dev.opencascade.org/gitweb/?p=occt.git;a=tags"
-pattern=">V\K[\d_p]+(?=</a>)"

^ permalink raw reply	[flat|nested] 43+ messages in thread

end of thread, other threads:[~2023-04-30 19:32 UTC | newest]

Thread overview: 43+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-03-26  4:42 [PR PATCH] [WIP] occt: update to 7.6.1 karl-nilsson
2022-03-26 15:07 ` [PR PATCH] [Updated] " karl-nilsson
2022-03-26 15:26 ` karl-nilsson
2022-03-28 19:00 ` Piraty
2022-05-01 20:20 ` [PR PATCH] [Updated] " karl-nilsson
2022-05-01 20:24 ` karl-nilsson
2022-05-01 20:24 ` karl-nilsson
2022-05-02 14:17 ` karl-nilsson
2022-05-02 14:18 ` karl-nilsson
2022-05-02 14:51 ` [WIP] occt: update to 7.6.2 karl-nilsson
2022-07-04 11:21 ` luzpaz
2022-07-24  1:21 ` [PR PATCH] [Updated] " karl-nilsson
2022-07-24  1:40 ` karl-nilsson
2022-07-24  3:02 ` karl-nilsson
2022-07-24  4:11 ` luzpaz
2022-07-25  1:10 ` [PR PATCH] [Updated] " karl-nilsson
2022-07-25  1:31 ` karl-nilsson
2022-07-25  3:02 ` karl-nilsson
2022-07-25  3:38 ` karl-nilsson
2022-07-25 13:16 ` [PR PATCH] [Updated] " karl-nilsson
2022-07-26  3:39 ` [PR REVIEW] " yopito
2022-07-26  3:40 ` yopito
2022-08-12  9:12 ` yopito
2022-08-12 14:24 ` luzpaz
2022-08-12 14:25 ` luzpaz
2022-08-22 11:48 ` yopito
2022-08-22 11:57 ` yopito
2022-08-22 13:59 ` karl-nilsson
2022-08-23 13:29 ` yopito
2022-09-27 19:34 ` enderger
2022-10-01 16:02 ` [PR PATCH] [Updated] " karl-nilsson
2022-10-01 21:16 ` karl-nilsson
2022-10-01 21:18 ` karl-nilsson
2022-10-01 21:35 ` karl-nilsson
2022-10-01 21:50 ` karl-nilsson
2022-10-02  2:13 ` karl-nilsson
2022-10-02  2:31 ` karl-nilsson
2022-12-19  0:31 ` Piraty
2023-01-20  3:23 ` luzpaz
2023-04-21  1:52 ` github-actions
2023-04-24 22:34 ` luzpaz
2023-04-30 19:32 ` Piraty
2023-04-30 19:32 ` [PR PATCH] [Closed]: " Piraty

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).