diff --git a/.github/workflows/check-magix3d.yml b/.github/workflows/check-magix3d.yml index 9856106..f142de7 100644 --- a/.github/workflows/check-magix3d.yml +++ b/.github/workflows/check-magix3d.yml @@ -29,6 +29,8 @@ jobs: shell: bash run: | source /spack/share/spack/setup-env.sh - spack env activate meshing-env + spack clean -a + spack clean -m + spack env activate -V meshing-env spack add magix3d~smooth3d~pythonaddon+doc ^vtk-maillage~opengl2+qt ^qt+opengl spack install -v --no-checksum diff --git a/meshing_supersede/packages/cgns/no-matherr.patch b/meshing_supersede/packages/cgns/no-matherr.patch deleted file mode 100644 index 00b3de2..0000000 --- a/meshing_supersede/packages/cgns/no-matherr.patch +++ /dev/null @@ -1,58 +0,0 @@ -Description: Remove matherr hack - Remove matherr hack, that is only needed for Sun shared libraries and - causes an FTBFS with glibc 2.27 onwards, as SVID error handling has - been removed. -Author: Aurelien Jarno -Last-Update: 2018-02-12 - ---- libcgns-3.3.0.orig/src/cgnstools/cgnscalc/calcwish.c -+++ libcgns-3.3.0/src/cgnstools/cgnscalc/calcwish.c -@@ -15,14 +15,6 @@ - #include "tk.h" - #include "locale.h" - --/* -- * The following variable is a special hack that is needed in order for -- * Sun shared libraries to be used for Tcl. -- */ -- --extern int matherr(); --int *tclDummyMathPtr = (int *) matherr; -- - #ifdef TK_TEST - extern int Tcltest_Init _ANSI_ARGS_((Tcl_Interp *interp)); - extern int Tktest_Init _ANSI_ARGS_((Tcl_Interp *interp)); ---- libcgns-3.3.0.orig/src/cgnstools/cgnsplot/plotwish.c -+++ libcgns-3.3.0/src/cgnstools/cgnsplot/plotwish.c -@@ -15,14 +15,6 @@ - #include "tk.h" - #include "locale.h" - --/* -- * The following variable is a special hack that is needed in order for -- * Sun shared libraries to be used for Tcl. -- */ -- --extern int matherr(); --int *tclDummyMathPtr = (int *) matherr; -- - extern int Cgnstcl_Init _ANSI_ARGS_((Tcl_Interp *interp)); - extern int Tkogl_Init _ANSI_ARGS_((Tcl_Interp *interp)); - ---- libcgns-3.3.0.orig/src/cgnstools/cgnsview/cgiowish.c -+++ libcgns-3.3.0/src/cgnstools/cgnsview/cgiowish.c -@@ -15,14 +15,6 @@ - #include "tk.h" - #include "locale.h" - --/* -- * The following variable is a special hack that is needed in order for -- * Sun shared libraries to be used for Tcl. -- */ -- --extern int matherr(); --int *tclDummyMathPtr = (int *) matherr; -- - #ifdef TK_TEST - extern int Tcltest_Init _ANSI_ARGS_((Tcl_Interp *interp)); - extern int Tktest_Init _ANSI_ARGS_((Tcl_Interp *interp)); diff --git a/meshing_supersede/packages/cgns/package.py b/meshing_supersede/packages/cgns/package.py deleted file mode 100644 index 8c49f73..0000000 --- a/meshing_supersede/packages/cgns/package.py +++ /dev/null @@ -1,117 +0,0 @@ -# Copyright 2013-2023 Lawrence Livermore National Security, LLC and other -# Spack Project Developers. See the top-level COPYRIGHT file for details. -# -# SPDX-License-Identifier: (Apache-2.0 OR MIT) - -import sys - -from spack.package import * - - -class Cgns(CMakePackage): - """The CFD General Notation System (CGNS) provides a general, portable, - and extensible standard for the storage and retrieval of computational - fluid dynamics (CFD) analysis data.""" - - homepage = "https://cgns.github.io/" - url = "https://github.com/CGNS/CGNS/archive/v4.3.0.tar.gz" - git = "https://github.com/CGNS/CGNS" - maintainers = ["gsjaardema"] - - parallel = False - - version("develop", branch="develop") - version("master", branch="master") - version("4.3.0", sha256="7709eb7d99731dea0dd1eff183f109eaef8d9556624e3fbc34dc5177afc0a032") - version("4.2.0", sha256="090ec6cb0916d90c16790183fc7c2bd2bd7e9a5e3764b36c8196ba37bf1dc817") - version("4.1.2", sha256="951653956f509b8a64040f1440c77f5ee0e6e2bf0a9eef1248d370f60a400050") - version("4.1.1", sha256="055d345c3569df3ae832fb2611cd7e0bc61d56da41b2be1533407e949581e226") - version("4.1.0", sha256="4674de1fac3c47998248725fd670377be497f568312c5903d1bb8090a3cf4da0") - version("4.0.0", sha256="748585a8e52dff4d250d6b603e6b847d05498e4566aba2dc3d7a7d85c4d55849") - version("3.4.1", sha256="d32595e7737b9332243bd3de1eb8c018a272f620f09b289dea8292eba1365994") - version("3.4.0", sha256="6372196caf25b27d38cf6f056258cb0bdd45757f49d9c59372b6dbbddb1e05da") - version("3.3.1", sha256="81093693b2e21a99c5640b82b267a495625b663d7b8125d5f1e9e7aaa1f8d469") - version("3.3.0", sha256="8422c67994f8dc6a2f201523a14f6c7d7e16313bdd404c460c16079dbeafc662") - - variant("hdf5", default=True, description="Enable HDF5 interface") - variant("fortran", default=False, description="Enable Fortran interface") - variant("base_scope", default=False, description="Enable base scope") - variant("scoping", default=True, description="Enable scoping") - variant("mpi", default=True, description="Enable parallel cgns") - variant("int64", default=False, description="Build with 64-bit integers") - variant("shared", default=True, description="Enable shared library") - variant("static", default=False, description="Build static libraries") - variant("testing", default=False, description="Build CGNS testing") - variant("legacy", default=False, description="Enable legacy options") - variant("mem_debug", default=False, description="Enable memory debugging option") - variant("tools", default=False, description="Enable CGNS tools") - - depends_on("cmake@3.12:", when="@4.3:", type="build") - depends_on("cmake@3.8:", when="@4.2:", type="build") - depends_on("cmake@2.8:", when="@:4.1", type="build") - depends_on("hdf5~mpi", when="+hdf5~mpi") - depends_on("hdf5+mpi", when="+hdf5+mpi") - depends_on("mpi", when="+mpi") - - # cgnsview requires tk to run - depends_on("tk", when="+tools", type=("build", "link", "run")) - depends_on("tcl", when="+tools") - depends_on("gl", when="+tools") - depends_on("glu", when="+tools") - depends_on("libxmu", when="+tools") - depends_on("libsm", when="+tools") - - # patch for error undefined reference to `matherr, see - # https://bugs.gentoo.org/662210 - patch("no-matherr.patch", when="@:3.3.1 +tools") - - def cmake_args(self): - spec = self.spec - options = [] - - options.extend( - [ - self.define_from_variant("CGNS_ENABLE_FORTRAN", "fortran"), - self.define_from_variant("CGNS_ENABLE_SCOPING", "scoping"), - self.define_from_variant("CGNS_ENABLE_PARALLEL", "mpi"), - "-DCGNS_ENABLE_TESTS:BOOL=OFF", - self.define_from_variant("CGNS_BUILD_TESTING", "testing"), - self.define_from_variant("CGNS_BUILD_CGNSTOOLS", "tools"), - self.define_from_variant("CGNS_BUILD_SHARED", "shared"), - self.define_from_variant("CGNS_BUILD_STATIC", "static"), - self.define_from_variant("CGNS_ENABLE_BASE_SCOPE", "base_scope"), - self.define_from_variant("CGNS_ENABLE_LEGACY", "legacy"), - self.define_from_variant("CGNS_ENABLE_MEM_DEBUG", "mem_debug"), - ] - ) - - if "+mpi" in spec: - options.extend( - [ - "-DCMAKE_C_COMPILER=%s" % spec["mpi"].mpicc, - "-DCMAKE_CXX_COMPILER=%s" % spec["mpi"].mpicxx, - "-DCMAKE_Fortran_COMPILER=%s" % spec["mpi"].mpifc, - ] - ) - - options.append(self.define_from_variant("CGNS_ENABLE_64BIT", "int64")) - - if "+hdf5" in spec: - options.extend( - [ - "-DCGNS_ENABLE_HDF5:BOOL=ON", - "-DHDF5_NEED_ZLIB:BOOL=ON", - "-DHDF5_INCLUDE_DIR:PATH=%s" % spec["hdf5"].prefix.include, - "-DHDF5_LIBRARY_DIR:PATH=%s" % spec["hdf5"].prefix.lib, - ] - ) - if "+mpi" in spec: - options.extend(["-DHDF5_NEED_MPI:BOOL=ON", "-DHDF5_ENABLE_PARALLEL:BOOL=ON"]) - else: - options.extend(["-DCGNS_ENABLE_HDF5=OFF"]) - - if self.version <= Version("3.3.1"): - if sys.platform == "darwin": - options.extend(["-DCMAKE_MACOSX_RPATH:BOOL=ON"]) - - return options diff --git a/meshing_supersede/packages/gts/package.py b/meshing_supersede/packages/gts/package.py deleted file mode 100644 index eb50d0c..0000000 --- a/meshing_supersede/packages/gts/package.py +++ /dev/null @@ -1,30 +0,0 @@ -# Copyright 2013-2023 Lawrence Livermore National Security, LLC and other -# Spack Project Developers. See the top-level COPYRIGHT file for details. -# -# SPDX-License-Identifier: (Apache-2.0 OR MIT) - -from spack.package import * - - -class Gts(AutotoolsPackage): - """GTS stands for the GNU Triangulated Surface Library. - - It is an Open Source Free Software Library intended to provide a set of - useful functions to deal with 3D surfaces meshed with interconnected - triangles. The source code is available free of charge under the Free - Software LGPL license. - - The code is written entirely in C with an object-oriented approach - based mostly on the design of GTK+. Careful attention is paid to - performance related issues as the initial goal of GTS is to provide a - simple and efficient library to scientists dealing with 3D computational - surface meshes. - """ - - homepage = "http://gts.sourceforge.net/index.html" - url = "http://gts.sourceforge.net/tarballs/gts-snapshot-121130.tar.gz" - - version("121130", sha256="c23f72ab74bbf65599f8c0b599d6336fabe1ec2a09c19b70544eeefdc069b73b") - - depends_on("glib") - depends_on("pkgconfig", type=("build")) diff --git a/meshing_supersede/packages/qwt/no-designer.patch b/meshing_supersede/packages/qwt/no-designer.patch deleted file mode 100644 index 750d14d..0000000 --- a/meshing_supersede/packages/qwt/no-designer.patch +++ /dev/null @@ -1,33 +0,0 @@ ---- qwt-6.1.3.orig/qwtconfig.pri 2016-06-13 03:14:23.000000000 -0400 -+++ qwt-6.1.3/qwtconfig.pri 2019-03-29 19:06:22.000000000 -0400 -@@ -42,7 +42,7 @@ - # runtime environment of designer/creator. - ###################################################################### - --QWT_INSTALL_PLUGINS = $${QWT_INSTALL_PREFIX}/plugins/designer -+#QWT_INSTALL_PLUGINS = $${QWT_INSTALL_PREFIX}/plugins/designer - - # linux distributors often organize the Qt installation - # their way and QT_INSTALL_PREFIX doesn't offer a good -@@ -118,7 +118,7 @@ - # Otherwise you have to build it from the designer directory. - ###################################################################### - --QWT_CONFIG += QwtDesigner -+#QWT_CONFIG += QwtDesigner - - ###################################################################### - # Compile all Qwt classes into the designer plugin instead -@@ -132,9 +132,9 @@ - # environment of the designer/creator. - ###################################################################### - --win32 { -- QWT_CONFIG += QwtDesignerSelfContained --} -+#win32 { -+# QWT_CONFIG += QwtDesignerSelfContained -+#} - - ###################################################################### - # If you want to auto build the examples, enable the line below diff --git a/meshing_supersede/packages/qwt/no-opengl_6_1.patch b/meshing_supersede/packages/qwt/no-opengl_6_1.patch deleted file mode 100644 index 6c84e22..0000000 --- a/meshing_supersede/packages/qwt/no-opengl_6_1.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -Naur qwt-6.1.4_orig/qwtconfig.pri qwt-6.1.4_dest/qwtconfig.pri ---- qwt-6.1.4_orig/qwtconfig.pri 2019-01-02 17:21:31.556467499 +0100 -+++ qwt-6.1.4_dest/qwtconfig.pri 2023-02-24 12:21:06.730207447 +0100 -@@ -99,7 +99,7 @@ - # If you want to use a OpenGL plot canvas - ###################################################################### - --QWT_CONFIG += QwtOpenGL -+#QWT_CONFIG += QwtOpenGL - - ###################################################################### - # You can use the MathML renderer of the Qt solutions package to diff --git a/meshing_supersede/packages/qwt/package.py b/meshing_supersede/packages/qwt/package.py deleted file mode 100644 index e2d7a8e..0000000 --- a/meshing_supersede/packages/qwt/package.py +++ /dev/null @@ -1,44 +0,0 @@ -# Copyright 2013-2023 Lawrence Livermore National Security, LLC and other -# Spack Project Developers. See the top-level COPYRIGHT file for details. -# -# SPDX-License-Identifier: (Apache-2.0 OR MIT) - -from spack.package import * - - -class Qwt(QMakePackage): - """The Qwt library contains GUI Components and utility classes which are - primarily useful for programs with a technical background. Beside a - framework for 2D plots it provides scales, sliders, dials, compasses, - thermometers, wheels and knobs to control or display values, arrays, or - ranges of type double. - """ - - homepage = "http://qwt.sourceforge.net/" - url = "https://sourceforge.net/projects/qwt/files/qwt/6.1.3/qwt-6.1.3.tar.bz2" - - version("6.1.6", sha256="99460d31c115ee4117b0175d885f47c2c590d784206f09815dc058fbe5ede1f6") - version("6.1.4", sha256="1529215329e51fc562e0009505a838f427919a18b362afff441f035b2d9b5bd9") - version("6.1.3", sha256="f3ecd34e72a9a2b08422fb6c8e909ca76f4ce5fa77acad7a2883b701f4309733") - version("5.2.2", sha256="36bf2ee51ca9c74fde1322510ffd39baac0db60d5d410bb157968a78d9c1464b") - - variant("designer", default=False, description="Build extensions to QT designer") - variant("opengl", default=False, description="Build OpenGL plot canvas") - - patch("no-designer.patch", when="~designer") - patch("no-opengl_6_1.patch", when="@6.1 ~opengl") - - depends_on("qt+tools", when="+designer") - depends_on("qt+opengl", when="+opengl") - - depends_on("qt") - # the qt@5.14.2 limitation was lifted in qwt@6.1.5 - # https://sourceforge.net/p/qwt/code/HEAD/tree/tags/qwt-6.1.6/CHANGES-6.1 - depends_on("qt@:5.14.2", when="@:6.1.4") - # Qwt 6.1.1 and older use a constant that was removed in Qt 5.4 - # https://bugs.launchpad.net/ubuntu/+source/qwt-qt5/+bug/1485213 - depends_on("qt@:5.3", when="@:6.1.1") - - def patch(self): - # Subvert hardcoded prefix - filter_file(r"/usr/local/qwt-\$\$(QWT_)?VERSION.*", self.prefix, "qwtconfig.pri")