gnu: openscad: Update to 2025.06.01.

* gnu/packages/engineering.scm (openscad): Update to 2025.06.01.
[source]: Add patch.
[arguments]<#:phases>[configure-flags]: Add -DUSE_BUILTIN_MANIFOLD=OFF, set -DUSE_BUILTIN_OPENCSG=OFF.
Remove -DENABLE_TESTS=OFF, -DSNAPSHOT=ON.
[check]: Preserve phase.
[patch-source]: Remove bundled libraries.
[inputs]: Remove python-pip.  Add qtgamepad.
* gnu/packages/patches/openscad-fix-path-in-expected-test-results-to-acommodate-diff.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add reference to it.

Change-Id: Iec0e9201732a814af20e73a43ebc76bfaac494bb
Signed-off-by: Danny Milosavljevic <dannym@friendly-machines.com>
This commit is contained in:
nomike 2025-06-02 04:45:53 +02:00 committed by Danny Milosavljevic
parent c30acafd3c
commit 544ac628f5
No known key found for this signature in database
GPG key ID: E71A35542C30BAA5
3 changed files with 159 additions and 17 deletions

View file

@ -1979,6 +1979,7 @@ dist_patch_DATA = \
%D%/packages/patches/openssh-trust-guix-store-directory.patch \
%D%/packages/patches/openresolv-restartcmd-guix.patch \
%D%/packages/patches/openrgb-unbundle-hueplusplus.patch \
%D%/packages/patches/openscad-fix-path-in-expected-test-results-to-acommodate-diff.patch \
%D%/packages/patches/opensles-add-license-file.patch \
%D%/packages/patches/openssl-1.1-c-rehash-in.patch \
%D%/packages/patches/openssl-3.0-c-rehash-in.patch \

View file

@ -3189,8 +3189,8 @@ ontinuous-time and discret-time expressions.")
(license license:lgpl2.1+)))
(define-public openscad
(let ((commit "72c9919d63116f8e711f3566ae34e9eb63a2d6e6")
(version "2025.05.08")
(let ((commit "7245089d3226de41ab55faee62ffe326f6efcb69")
(version "2025.06.01")
(revision "0"))
(package
(name "openscad")
@ -3201,23 +3201,27 @@ ontinuous-time and discret-time expressions.")
(uri (git-reference
(url "https://github.com/openscad/openscad")
(commit commit)
;; Needed for libraries/MCAD, a library specific to OpenSCAD
;; which is included as a submodule. All other libraries are
;; deleted in the patch-source build phase.
(recursive? #t)))
(sha256
(base32 "077x7s3z65mz6rnrzan3qn06045d2fkqnd6ss6ibw1fhlaypzfbf"))
(base32 "0lynjxa5y9wi443vxgaj2r8lr98dyfxinq7n4gcw9gz7cfc52a4a"))
(patches (search-patches
"openscad-fix-path-in-expected-test-results-to-acommodate-diff.patch"))
(file-name (git-file-name name version))))
(build-system qt-build-system)
(arguments
(list
#:configure-flags
#~(list "-DCMAKE_BUILD_TYPE=Release"
"-DUSE_BUILTIN_OPENCSG=ON"
"-DUSE_BUILTIN_CLIPPER2=OFF"
"-DUSE_BUILTIN_MANIFOLD=OFF"
"-DUSE_BUILTIN_OPENCSG=OFF"
"-DMANIFOLD_PYBIND=OFF"
"-DMANIFOLD_TEST=OFF"
"-DENABLE_TESTS=OFF"
"-DEXPERIMENTAL=ON"
"-DSNAPSHOT=ON"
"-DENABLE_PYTHON=ON"
"-DUSE_BUILTIN_CLIPPER2=OFF"
(string-append "-DOPENSCAD_VERSION="
#$version)
(string-append "-DOPENSCAD_COMMIT="
@ -3226,27 +3230,47 @@ ontinuous-time and discret-time expressions.")
"-DENABLE_GLX=ON")
#:phases
#~(modify-phases %standard-phases
(delete 'check)
(add-after 'unpack 'patch-source
(lambda* (#:key inputs #:allow-other-keys)
;; <https://github.com/openscad/openscad/issues/5877>
;; Delete all unbundled libraries to replace them with guix
;; packages.
(delete-file-recursively "submodules")
;; Fix: Dependency lib3mf is not found due to using a wrong
;; variable name in the CMake config (see
;; https://github.com/openscad/openscad/issues/5877).
(substitute* "cmake/Modules/FindLib3MF.cmake"
(("PC_LIB3MF_INCLUDE_DIRS")
"PC_LIB3MF_INCLUDEDIR"))
(substitute* "CMakeLists.txt"
;; <https://github.com/openscad/openscad/issues/5880>
;; Remove bundled libraries from cmake.
(("add_subdirectory\\(submodules\\)")
"")
;; Fix detection of EGL (see
;; https://github.com/openscad/openscad/issues/5880).
(("target_link_libraries\\(OpenSCAD PRIVATE OpenGL::EGL\\)")
" find_package(ECM REQUIRED NO_MODULE)
"find_package(ECM REQUIRED NO_MODULE)
list(APPEND CMAKE_MODULE_PATH ${ECM_MODULE_PATH})
find_package(EGL REQUIRED)
target_link_libraries(OpenSCAD PRIVATE EGL::EGL)")
;; <https://github.com/openscad/openscad/issues/5897>
(("find_package\\(Nettle 3.4\\)")
"find_package(Nettle 3.4 REQUIRED)")
;; Use the system sanitizers-cmake module.
(("\\$\\{CMAKE_SOURCE_DIR\\}/submodules/sanitizers-cmake/cmake")
(string-append (assoc-ref inputs "sanitizers-cmake")
"/share/sanitizers-cmake/cmake"))))))))
"/share/sanitizers-cmake/cmake")))
;; Fix test-tool expecting build directory to be a direct
;; subdirectory of the source directory (see
;; https://github.com/openscad/openscad/issues/5937).
(substitute* "tests/test_cmdline_tool.py"
(("build_to_test_sources = \"../../tests\"")
"build_to_test_sources = \"../../source/tests\""))))
(add-before 'check 'patch-tests
(lambda _
;; Fix tests expecting build directory to be a direct descendant
;; of the source dir (see
;; https://github.com/openscad/openscad/issues/5938).
(copy-recursively "../source/color-schemes" "./color-schemes")
(copy-recursively "../source/shaders" "./shaders")
;; Required for fontconfig
(setenv "HOME" "/tmp"))))))
(inputs (list boost
cairomm
cgal
@ -3267,7 +3291,7 @@ ontinuous-time and discret-time expressions.")
libxml2
libzip
manifold
mesa ; or libglvnd if we had mesa-glvnd, too
mesa
mimalloc
mpfr
nettle
@ -3275,9 +3299,9 @@ ontinuous-time and discret-time expressions.")
python
python-numpy
python-pillow
python-pip
qscintilla
qtbase-5
qtgamepad
qtmultimedia-5
qtsvg-5
qtwayland-5

View file

@ -0,0 +1,117 @@
From 4fd0053f89728d03c3123c9473c36209556d1018 Mon Sep 17 00:00:00 2001
From: nomike <nomike@nomike.com>
Date: Sat, 31 May 2025 23:54:08 +0200
Subject: [PATCH] Fix path in expected test results to acommodate different
directory structure in guix build
(see https://github.com/openscad/openscad/issues/5938)
---
.../echo/bitwise-operators-expected.echo | 10 +++++-----
.../echo/include-recursive-test-expected.echo | 18 +++++++++---------
.../echo/include-tests-expected.echo | 8 ++++----
tests/regression/echo/linenumber-expected.echo | 18 +++++++++---------
tests/regression/echo/use-tests-expected.echo | 8 ++++----
5 files changed, 31 insertions(+), 31 deletions(-)
diff --git a/tests/regression/echo/bitwise-operators-expected.echo b/tests/regression/echo/bitwise-operators-expected.echo
index d85a95915..91f3155ba 100644
--- a/tests/regression/echo/bitwise-operators-expected.echo
+++ b/tests/regression/echo/bitwise-operators-expected.echo
@@ -1,8 +1,8 @@
-WARNING: Hexadecimal constant "0x10000000000000000" too large in file ../../tests/data/scad/functions/bitwise-operators.scad, line 106
-WARNING: Integer "0x1000000000000001" cannot be represented precisely in file ../../tests/data/scad/functions/bitwise-operators.scad, line 108
-WARNING: Integer "1152921504606846977" cannot be represented precisely in file ../../tests/data/scad/functions/bitwise-operators.scad, line 109
-WARNING: Integer "0xfffffffffffffff0" cannot be represented precisely in file ../../tests/data/scad/functions/bitwise-operators.scad, line 113
-WARNING: Integer "18446744073709551600" cannot be represented precisely in file ../../tests/data/scad/functions/bitwise-operators.scad, line 113
+WARNING: Hexadecimal constant "0x10000000000000000" too large in file ../../source/tests/data/scad/functions/bitwise-operators.scad, line 106
+WARNING: Integer "0x1000000000000001" cannot be represented precisely in file ../../source/tests/data/scad/functions/bitwise-operators.scad, line 108
+WARNING: Integer "1152921504606846977" cannot be represented precisely in file ../../source/tests/data/scad/functions/bitwise-operators.scad, line 109
+WARNING: Integer "0xfffffffffffffff0" cannot be represented precisely in file ../../source/tests/data/scad/functions/bitwise-operators.scad, line 113
+WARNING: Integer "18446744073709551600" cannot be represented precisely in file ../../source/tests/data/scad/functions/bitwise-operators.scad, line 113
ECHO: "Expect two warnings:"
WARNING: undefined operation (number | bool) in file bitwise-operators.scad, line 42
WARNING: undefined operation (bool | number) in file bitwise-operators.scad, line 44
diff --git a/tests/regression/echo/include-recursive-test-expected.echo b/tests/regression/echo/include-recursive-test-expected.echo
index c20e44cbe..855c16d10 100644
--- a/tests/regression/echo/include-recursive-test-expected.echo
+++ b/tests/regression/echo/include-recursive-test-expected.echo
@@ -1,12 +1,12 @@
-WARNING: Can't open include file 'include-recursive-test.scad'. in file ../../tests/data/scad/misc/include-recursive-test.scad, line 1
-WARNING: Can't open include file '../misc/include-recursive-test.scad'. in file ../../tests/data/scad/misc/include-recursive-test.scad, line 2
-WARNING: Can't open include file '../../scad/misc/include-recursive-test.scad'. in file ../../tests/data/scad/misc/include-recursive-test.scad, line 3
-WARNING: Can't open include file 'include-recursive-test.scad'. in file ../../tests/data/scad/misc/include-recursive-test.scad, line 1
-WARNING: Can't open include file '../misc/include-recursive-test.scad'. in file ../../tests/data/scad/misc/include-recursive-test.scad, line 2
-WARNING: Can't open include file '../../scad/misc/include-recursive-test.scad'. in file ../../tests/data/scad/misc/include-recursive-test.scad, line 3
-WARNING: Can't open include file 'include-recursive-test.scad'. in file ../../tests/data/scad/misc/include-recursive-test.scad, line 1
-WARNING: Can't open include file '../misc/include-recursive-test.scad'. in file ../../tests/data/scad/misc/include-recursive-test.scad, line 2
-WARNING: Can't open include file '../../scad/misc/include-recursive-test.scad'. in file ../../tests/data/scad/misc/include-recursive-test.scad, line 3
+WARNING: Can't open include file 'include-recursive-test.scad'. in file ../../source/tests/data/scad/misc/include-recursive-test.scad, line 1
+WARNING: Can't open include file '../misc/include-recursive-test.scad'. in file ../../source/tests/data/scad/misc/include-recursive-test.scad, line 2
+WARNING: Can't open include file '../../scad/misc/include-recursive-test.scad'. in file ../../source/tests/data/scad/misc/include-recursive-test.scad, line 3
+WARNING: Can't open include file 'include-recursive-test.scad'. in file ../../source/tests/data/scad/misc/include-recursive-test.scad, line 1
+WARNING: Can't open include file '../misc/include-recursive-test.scad'. in file ../../source/tests/data/scad/misc/include-recursive-test.scad, line 2
+WARNING: Can't open include file '../../scad/misc/include-recursive-test.scad'. in file ../../source/tests/data/scad/misc/include-recursive-test.scad, line 3
+WARNING: Can't open include file 'include-recursive-test.scad'. in file ../../source/tests/data/scad/misc/include-recursive-test.scad, line 1
+WARNING: Can't open include file '../misc/include-recursive-test.scad'. in file ../../source/tests/data/scad/misc/include-recursive-test.scad, line 2
+WARNING: Can't open include file '../../scad/misc/include-recursive-test.scad'. in file ../../source/tests/data/scad/misc/include-recursive-test.scad, line 3
ECHO: "INC"
ECHO: "INC"
ECHO: "INC"
diff --git a/tests/regression/echo/include-tests-expected.echo b/tests/regression/echo/include-tests-expected.echo
index d0aaecf88..64098d5d6 100644
--- a/tests/regression/echo/include-tests-expected.echo
+++ b/tests/regression/echo/include-tests-expected.echo
@@ -1,6 +1,6 @@
-WARNING: Can't open include file 'not_exist.scad'. in file ../../tests/data/scad/misc/sub1/included.scad, line 3
-WARNING: Can't open include file 'non/existent/path/non-file'. in file ../../tests/data/scad/misc/include-tests.scad, line 8
-WARNING: Can't open include file 'test/'. in file ../../tests/data/scad/misc/include-tests.scad, line 20
-WARNING: Can't open include file '/'. in file ../../tests/data/scad/misc/include-tests.scad, line 23
+WARNING: Can't open include file 'not_exist.scad'. in file ../../source/tests/data/scad/misc/sub1/included.scad, line 3
+WARNING: Can't open include file 'non/existent/path/non-file'. in file ../../source/tests/data/scad/misc/include-tests.scad, line 8
+WARNING: Can't open include file 'test/'. in file ../../source/tests/data/scad/misc/include-tests.scad, line 20
+WARNING: Can't open include file '/'. in file ../../source/tests/data/scad/misc/include-tests.scad, line 23
ECHO: "included.scad"
ECHO: "included2.scad"
diff --git a/tests/regression/echo/linenumber-expected.echo b/tests/regression/echo/linenumber-expected.echo
index 35a74ebe0..f243ae2c0 100644
--- a/tests/regression/echo/linenumber-expected.echo
+++ b/tests/regression/echo/linenumber-expected.echo
@@ -1,12 +1,12 @@
-WARNING: Can't open library 'line 1'. in file ../../tests/data/scad/misc/linenumber.scad, line 1
-WARNING: Can't open include file 'line 1'. in file ../../tests/data/scad/misc/linenumber.scad, line 1
-WARNING: new lines in 'include<>'-statement is not defined - behavior may change in the future in file ../../tests/data/scad/misc/linenumber.scad, line 7
-WARNING: new lines in 'include<>'-statement is not defined - behavior may change in the future in file ../../tests/data/scad/misc/linenumber.scad, line 8
-WARNING: new lines in 'include<>'-statement is not defined - behavior may change in the future in file ../../tests/data/scad/misc/linenumber.scad, line 9
-WARNING: new lines in 'include<>'-statement is not defined - behavior may change in the future in file ../../tests/data/scad/misc/linenumber.scad, line 10
-WARNING: Can't open include file 'line 9'. in file ../../tests/data/scad/misc/linenumber.scad, line 10
-WARNING: new lines 'use<>'-statement is not defined - behavior may change in the future in file ../../tests/data/scad/misc/linenumber.scad, line 16
-WARNING: Can't open library 'line 16'. in file ../../tests/data/scad/misc/linenumber.scad, line 16
+WARNING: Can't open library 'line 1'. in file ../../source/tests/data/scad/misc/linenumber.scad, line 1
+WARNING: Can't open include file 'line 1'. in file ../../source/tests/data/scad/misc/linenumber.scad, line 1
+WARNING: new lines in 'include<>'-statement is not defined - behavior may change in the future in file ../../source/tests/data/scad/misc/linenumber.scad, line 7
+WARNING: new lines in 'include<>'-statement is not defined - behavior may change in the future in file ../../source/tests/data/scad/misc/linenumber.scad, line 8
+WARNING: new lines in 'include<>'-statement is not defined - behavior may change in the future in file ../../source/tests/data/scad/misc/linenumber.scad, line 9
+WARNING: new lines in 'include<>'-statement is not defined - behavior may change in the future in file ../../source/tests/data/scad/misc/linenumber.scad, line 10
+WARNING: Can't open include file 'line 9'. in file ../../source/tests/data/scad/misc/linenumber.scad, line 10
+WARNING: new lines 'use<>'-statement is not defined - behavior may change in the future in file ../../source/tests/data/scad/misc/linenumber.scad, line 16
+WARNING: Can't open library 'line 16'. in file ../../source/tests/data/scad/misc/linenumber.scad, line 16
WARNING: Unable to convert cube(size="line 3", ...) parameter to a number or a vec3 of numbers in file linenumber.scad, line 3
WARNING: Unable to convert cube(size="line 12", ...) parameter to a number or a vec3 of numbers in file linenumber.scad, line 12
WARNING: Unable to convert cube(size="line 18", ...) parameter to a number or a vec3 of numbers in file linenumber.scad, line 18
diff --git a/tests/regression/echo/use-tests-expected.echo b/tests/regression/echo/use-tests-expected.echo
index 2da158d03..1cfa234e7 100644
--- a/tests/regression/echo/use-tests-expected.echo
+++ b/tests/regression/echo/use-tests-expected.echo
@@ -1,7 +1,7 @@
-WARNING: Can't open library ''. in file ../../tests/data/scad/misc/use-tests.scad, line 2
-WARNING: Can't open library 'non/existent/path/non-file'. in file ../../tests/data/scad/misc/use-tests.scad, line 8
-WARNING: Can't open library 'test/'. in file ../../tests/data/scad/misc/use-tests.scad, line 20
-WARNING: Can't open library '/'. in file ../../tests/data/scad/misc/use-tests.scad, line 23
+WARNING: Can't open library ''. in file ../../source/tests/data/scad/misc/use-tests.scad, line 2
+WARNING: Can't open library 'non/existent/path/non-file'. in file ../../source/tests/data/scad/misc/use-tests.scad, line 8
+WARNING: Can't open library 'test/'. in file ../../source/tests/data/scad/misc/use-tests.scad, line 20
+WARNING: Can't open library '/'. in file ../../source/tests/data/scad/misc/use-tests.scad, line 23
WARNING: Ignoring unknown module 'test3' in file use-tests.scad, line 42
WARNING: Ignoring unknown module 'test4' in file use-tests.scad, line 43
WARNING: Ignoring unknown variable "test2_variable" in file use-tests.scad, line 49
--
2.49.0