[PATCH 0/5] gnu: coin3d: Improve and update to 4.0.2.

  • Done
  • quality assurance status badge
Details
3 participants
  • Buttons Presser
  • Jean-Pierre De Jesus DIAZ
  • Christopher Baines
Owner
unassigned
Submitted by
Jean-Pierre De Jesus DIAZ
Severity
normal
J
J
Jean-Pierre De Jesus DIAZ wrote on 9 Apr 12:13 +0200
(address . guix-patches@gnu.org)(name . Jean-Pierre De Jesus DIAZ)(address . jean@foundation.xyz)
cover.1712657465.git.jean@foundation.xyz
This patch series update Coin3D to 4.0.2 and make a few changes to the
package, mainly renaming the variable to use lowercase, using
G-Expressions and changes to avoid using dlopen and unbundling
of expat.

Jean-Pierre De Jesus DIAZ (5):
gnu: coin3D: Rename to coin3d.
gnu: coin3d: Use G-Expressions.
gnu: coin3d: Use system expat.
gnu: coin3d: Avoid use of dlopen.
gnu: coin3d: Update to 4.0.2.

gnu/packages/engineering.scm | 2 +-
gnu/packages/graphics.scm | 74 ++++++++++++++++++++++++------------
gnu/packages/python-xyz.scm | 2 +-
gnu/packages/qt.scm | 2 +-
4 files changed, 53 insertions(+), 27 deletions(-)


base-commit: cd45294d576975a3bff2f755764a3f46f09ea6f9
--
2.41.0
J
J
Jean-Pierre De Jesus DIAZ wrote on 9 Apr 12:22 +0200
[PATCH 1/5] gnu: coin3D: Rename to coin3d.
(address . 70305@debbugs.gnu.org)(name . Jean-Pierre De Jesus DIAZ)(address . jean@foundation.xyz)
33289d4c89dcfecd83484873595d9f1833bfd87f.1712657465.git.jean@foundation.xyz
* gnu/packages/graphics.scm (coin3d): New Variable.
(coin3D): Define as deprecated.
(coin3D-4): Point to coin3d.
* gnu/packages/engineering.scm (freecad): Use coin3d instead of coin3D.
* gnu/packages/python-xyz.scm (python-pivy): Ditto.
* gnu/packages/qt.scm (soqt): Ditto.

Change-Id: I4e83e25e80c512350f38024847891eac14723f26
---
gnu/packages/engineering.scm | 2 +-
gnu/packages/graphics.scm | 9 ++++++---
gnu/packages/python-xyz.scm | 2 +-
gnu/packages/qt.scm | 2 +-
4 files changed, 9 insertions(+), 6 deletions(-)

Toggle diff (69 lines)
diff --git a/gnu/packages/engineering.scm b/gnu/packages/engineering.scm
index 6f42d674e5..7a60036c28 100644
--- a/gnu/packages/engineering.scm
+++ b/gnu/packages/engineering.scm
@@ -2816,7 +2816,7 @@ (define-public freecad
swig))
(inputs
(list boost
- coin3D
+ coin3d
double-conversion
eigen
fmt
diff --git a/gnu/packages/graphics.scm b/gnu/packages/graphics.scm
index a63629823a..ebbc705cfc 100644
--- a/gnu/packages/graphics.scm
+++ b/gnu/packages/graphics.scm
@@ -1951,9 +1951,9 @@ (define-public opencsg
(home-page "https://www.opencsg.org/")
(license license:gpl2))))
-(define-public coin3D
+(define-public coin3d
(package
- (name "coin3D")
+ (name "coin3d")
(version "4.0.0")
(source
(origin
@@ -2001,7 +2001,10 @@ (define-public coin3D
and engineering community.")
(license license:bsd-3)))
-(define-deprecated coin3D-4 coin3D)
+(define-deprecated coin3D coin3d)
+(export coin3D)
+
+(define-deprecated coin3D-4 coin3d)
(export coin3D-4)
(define-public skia
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 92566abfed..44c709a880 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -32421,7 +32421,7 @@ (define-public python-pivy
libice
soqt
glew
- coin3D))
+ coin3d))
(home-page "https://github.com/coin3d/pivy")
(synopsis "Python bindings to Coin3D")
(description
diff --git a/gnu/packages/qt.scm b/gnu/packages/qt.scm
index dcc9bfeb62..2f23e292e8 100644
--- a/gnu/packages/qt.scm
+++ b/gnu/packages/qt.scm
@@ -5115,7 +5115,7 @@ (define-public soqt
(native-inputs
(list pkg-config cmake))
(inputs
- (list qtbase-5 coin3D))
+ (list qtbase-5 coin3d))
(home-page "https://github.com/coin3d/soqt")
(synopsis "Qt GUI component toolkit library for Coin")
(description "SoQt is a Qt GUI component toolkit library for Coin. It is
--
2.41.0
J
J
Jean-Pierre De Jesus DIAZ wrote on 9 Apr 12:22 +0200
[PATCH 2/5] gnu: coin3d: Use G-Expressions.
(address . 70305@debbugs.gnu.org)(name . Jean-Pierre De Jesus DIAZ)(address . jean@foundation.xyz)
e50384824c7dfaf96d96ff730fa7f0fc3b494ee6.1712657465.git.jean@foundation.xyz
* gnu/packages/graphics.scm (coin3d) <source>, <arguments>: Use
G-Expressions.

Change-Id: I79a77bda6fc919d9c3b80e77e38855824e81f6e6
---
gnu/packages/graphics.scm | 32 +++++++++++++++-----------------
1 file changed, 15 insertions(+), 17 deletions(-)

Toggle diff (50 lines)
diff --git a/gnu/packages/graphics.scm b/gnu/packages/graphics.scm
index ebbc705cfc..f866318289 100644
--- a/gnu/packages/graphics.scm
+++ b/gnu/packages/graphics.scm
@@ -1967,28 +1967,26 @@ (define-public coin3d
(base32 "1ayg0hl8wanhadahm5xbghghxw1qjwqbrs3dl3ngnff027hsyf8p"))
(modules '((guix build utils)))
(snippet
- '(begin
- ;; Delete binaries
- (for-each delete-file
- '("cfg/csubst.exe"
- "cfg/wrapmsvc.exe"))
- ;; Delete references to packaging tool cpack. Otherwise the build
- ;; fails with "add_subdirectory given source "cpack.d" which is not
- ;; an existing directory."
- (substitute* "CMakeLists.txt"
- ((".*cpack.d.*") ""))
- #t))))
+ #~(begin
+ ;; Delete binaries
+ (for-each delete-file
+ '("cfg/csubst.exe"
+ "cfg/wrapmsvc.exe"))
+ ;; Delete references to packaging tool cpack. Otherwise the build
+ ;; fails with "add_subdirectory given source "cpack.d" which is not
+ ;; an existing directory."
+ (substitute* "CMakeLists.txt"
+ ((".*cpack.d.*") ""))))))
(build-system cmake-build-system)
+ (arguments
+ (list #:configure-flags
+ #~(list "-DCOIN_BUILD_DOCUMENTATION_MAN=ON"
+ (string-append "-DBOOST_ROOT="
+ #$(this-package-input "boost")))))
(native-inputs
(list doxygen graphviz))
(inputs
(list boost freeglut glew))
- (arguments
- `(#:configure-flags
- (list
- "-DCOIN_BUILD_DOCUMENTATION_MAN=ON"
- (string-append "-DBOOST_ROOT="
- (assoc-ref %build-inputs "boost")))))
(home-page "https://github.com/coin3d/coin")
(synopsis
"High-level 3D visualization library with Open Inventor 2.1 API")
--
2.41.0
J
J
Jean-Pierre De Jesus DIAZ wrote on 9 Apr 12:22 +0200
[PATCH 3/5] gnu: coin3d: Use system expat.
(address . 70305@debbugs.gnu.org)(name . Jean-Pierre De Jesus DIAZ)(address . jean@foundation.xyz)
7137561dd15207078db943555e392a3ba876d548.1712657465.git.jean@foundation.xyz
* gnu/packages/graphics.scm (coin3d): Remove bundled expat and use the
system one.

Change-Id: Ief176e320b7f57c5c3f349f244ed7d76e54f8281
---
gnu/packages/graphics.scm | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)

Toggle diff (32 lines)
diff --git a/gnu/packages/graphics.scm b/gnu/packages/graphics.scm
index f866318289..7f704c3e58 100644
--- a/gnu/packages/graphics.scm
+++ b/gnu/packages/graphics.scm
@@ -1972,6 +1972,10 @@ (define-public coin3d
(for-each delete-file
'("cfg/csubst.exe"
"cfg/wrapmsvc.exe"))
+ ;; Unbundle expat.
+ (delete-file-recursively "src/xml/expat")
+ (substitute* "src/xml/document.cpp"
+ (("expat/expat\\.h") "expat.h"))
;; Delete references to packaging tool cpack. Otherwise the build
;; fails with "add_subdirectory given source "cpack.d" which is not
;; an existing directory."
@@ -1981,12 +1985,13 @@ (define-public coin3d
(arguments
(list #:configure-flags
#~(list "-DCOIN_BUILD_DOCUMENTATION_MAN=ON"
+ "-DUSE_EXTERNAL_EXPAT=ON"
(string-append "-DBOOST_ROOT="
#$(this-package-input "boost")))))
(native-inputs
(list doxygen graphviz))
(inputs
- (list boost freeglut glew))
+ (list boost expat freeglut glew))
(home-page "https://github.com/coin3d/coin")
(synopsis
"High-level 3D visualization library with Open Inventor 2.1 API")
--
2.41.0
J
J
Jean-Pierre De Jesus DIAZ wrote on 9 Apr 12:22 +0200
[PATCH 5/5] gnu: coin3d: Update to 4.0.2.
(address . 70305@debbugs.gnu.org)(name . Jean-Pierre De Jesus DIAZ)(address . jean@foundation.xyz)
9a56bc24b55b962a54939a99a6948aad65c56f51.1712657465.git.jean@foundation.xyz
* gnu/packages/graphics.scm (coin3d): Update to 4.0.2.

Change-Id: I0ca8cd6eff933a764005447d648ca2f020d8ee7f
---
gnu/packages/graphics.scm | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)

Toggle diff (27 lines)
diff --git a/gnu/packages/graphics.scm b/gnu/packages/graphics.scm
index 5d7c95a2a9..85e4eed3b1 100644
--- a/gnu/packages/graphics.scm
+++ b/gnu/packages/graphics.scm
@@ -1955,17 +1955,17 @@ (define-public opencsg
(define-public coin3d
(package
(name "coin3d")
- (version "4.0.0")
+ (version "4.0.2")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/coin3d/coin")
- (commit (string-append "Coin-" version))
+ (commit (string-append "v" version))
(recursive? #t)))
(file-name (git-file-name name version))
(sha256
- (base32 "1ayg0hl8wanhadahm5xbghghxw1qjwqbrs3dl3ngnff027hsyf8p"))
+ (base32 "1p59q67zc45pwicknsccvmby09snhz35725wr3xsh2v6kxza76a4"))
(modules '((guix build utils)))
(snippet
#~(begin
--
2.41.0
J
J
Jean-Pierre De Jesus DIAZ wrote on 9 Apr 12:22 +0200
[PATCH 4/5] gnu: coin3d: Avoid use of dlopen.
(address . 70305@debbugs.gnu.org)(name . Jean-Pierre De Jesus DIAZ)(address . jean@foundation.xyz)
b1140ce2e2d629a701c65fa3f261d54d473c33c4.1712657465.git.jean@foundation.xyz
* gnu/packages/graphics.scm (coin3d): Avoid use of dlopen and add
missing inputs.

Change-Id: I48d93218bd93f6ef4f10fb1c4f1cc22396040d7d
---
gnu/packages/graphics.scm | 22 +++++++++++++++++++++-
1 file changed, 21 insertions(+), 1 deletion(-)

Toggle diff (47 lines)
diff --git a/gnu/packages/graphics.scm b/gnu/packages/graphics.scm
index 7f704c3e58..5d7c95a2a9 100644
--- a/gnu/packages/graphics.scm
+++ b/gnu/packages/graphics.scm
@@ -81,6 +81,7 @@ (define-module (gnu packages graphics)
#:use-module (gnu packages glib)
#:use-module (gnu packages gnome)
#:use-module (gnu packages gnunet)
+ #:use-module (gnu packages gnuzilla)
#:use-module (gnu packages graphviz)
#:use-module (gnu packages gstreamer)
#:use-module (gnu packages gtk)
@@ -1986,12 +1987,31 @@ (define-public coin3d
(list #:configure-flags
#~(list "-DCOIN_BUILD_DOCUMENTATION_MAN=ON"
"-DUSE_EXTERNAL_EXPAT=ON"
+ ;; Disable "runtime linking" of libraries, i.e. `dlopen`,
+ ;; force to use libraries at build time.
+ "-DFONTCONFIG_RUNTIME_LINKING=OFF"
+ "-DFREETYPE_RUNTIME_LINKING=OFF"
+ "-DLIBBZIP2_RUNTIME_LINKING=OFF"
+ "-DOPENAL_RUNTIME_LINKING=OFF"
+ ;"-DSIMAGE_RUNTIME_LINKING=OFF" -- Not packaged yet.
+ "-DZLIB_RUNTIME_LINKING=OFF"
+ "-DGLU_RUNTIME_LINKING=OFF"
+ ;"-DSPIDERMONKEY_RUNTIME_LINKING=OFF" -- Can't find mozjs.
(string-append "-DBOOST_ROOT="
#$(this-package-input "boost")))))
(native-inputs
(list doxygen graphviz))
(inputs
- (list boost expat freeglut glew))
+ (list boost
+ bzip2
+ expat
+ fontconfig
+ freeglut
+ freetype
+ glew
+ libx11
+ openal
+ zlib))
(home-page "https://github.com/coin3d/coin")
(synopsis
"High-level 3D visualization library with Open Inventor 2.1 API")
--
2.41.0
C
C
Christopher Baines wrote on 15 Apr 11:52 +0200
Re: [bug#70305] [PATCH 0/5] gnu: coin3d: Improve and update to 4.0.2.
(name . Jean-Pierre De Jesus DIAZ)(address . jean@foundation.xyz)(address . 70305-done@debbugs.gnu.org)
87a5lvx8ae.fsf@cbaines.net
Jean-Pierre De Jesus DIAZ <jean@foundation.xyz> writes:

Toggle quote (18 lines)
> This patch series update Coin3D to 4.0.2 and make a few changes to the
> package, mainly renaming the variable to use lowercase, using
> G-Expressions and changes to avoid using dlopen and unbundling
> of expat.
>
> Jean-Pierre De Jesus DIAZ (5):
> gnu: coin3D: Rename to coin3d.
> gnu: coin3d: Use G-Expressions.
> gnu: coin3d: Use system expat.
> gnu: coin3d: Avoid use of dlopen.
> gnu: coin3d: Update to 4.0.2.
>
> gnu/packages/engineering.scm | 2 +-
> gnu/packages/graphics.scm | 74 ++++++++++++++++++++++++------------
> gnu/packages/python-xyz.scm | 2 +-
> gnu/packages/qt.scm | 2 +-
> 4 files changed, 53 insertions(+), 27 deletions(-)

Looks good to me, I've pushed these changes to master as
37579d04dc76c2badd1b7feca6d6cdfadd4e61d3.

Chris
-----BEGIN PGP SIGNATURE-----

iQKlBAEBCgCPFiEEPonu50WOcg2XVOCyXiijOwuE9XcFAmYc+MlfFIAAAAAALgAo
aXNzdWVyLWZwckBub3RhdGlvbnMub3BlbnBncC5maWZ0aGhvcnNlbWFuLm5ldDNF
ODlFRUU3NDU4RTcyMEQ5NzU0RTBCMjVFMjhBMzNCMEI4NEY1NzcRHG1haWxAY2Jh
aW5lcy5uZXQACgkQXiijOwuE9Xd4ChAAqYWqceluymjICmOcPxh2CNvDiE7WhuHn
RUMXaLlwjJm3ySf5GVWsuq1Rt3t9N3Q5nnynokHdbTt5IvBLxoxf+0aVm2eHgJK2
R7J2Uv448ZQR5HJb+blokQ3acqi/A5WSzd1VaRLo0qB32WUhGG1heFR4MqqMdj54
Azzn4LtGadoIuEGVthaj4Y/GxYMyNYn633x+B9RveW/m4jhvUKIVAb1JMYjj/JHA
ZCS2eQ+WwW/0qfy7UWc0Ef54GpUdmnDtSmUKZEGbVa5KG37Z9du2OhHCZjLEuLod
+Ad+e9TwXjmFk8iRdoRSzv9ZSeXA9OlMpGY0zbNShbrvg8vbqroAS3Ii8WCrDuKL
/H7TGKROl6ECgI5loL4OG4KBUezwGPjdGnIBZZyE5Xrzrf29Ihyv5Q2hB1esSPsi
9k52U8HBrdG0UmQvCorAZsUeNvpOyVwHrPrWIeB8qxHWNZlDvZkfV4UZp/VEES6c
4wn+YzmNm9gFNt4U0c85WW9CMFcggkqhCexdFzNjVMsXsR1nZabGDQPUUtXt9qoe
lHuqL115kcqijqSLagDrk8fJPgL4JQLl7LhC9t/ZpHJxvZbMvt65xaRgCUzHFMRh
N55u6enPE8E5hzSW0ULR3fFDB33jZ0yoQNA6oWaS/hLgY+Ut+R478qqhOq5lVHaF
t5X95HDdNqA=
=8qsa
-----END PGP SIGNATURE-----

Closed
B
B
Buttons Presser wrote 103 minutes ago
Related issue?
(address . 70305@debbugs.gnu.org)
87zft8nu9c.fsf@disroot.org
Could it be that this patch breaks python-pivy in current guix (2aeb9fa)?

python-pivy is a freecad dependency so freecad is also can not be installed now which is reported here - https://issues.guix.gnu.org/70698

Anyway I would appreciate any suggestions on how to fix/patch python-pivy and ultimately freecad.

Kind regards,
BP
?