Github messages for voidlinux
 help / color / mirror / Atom feed
From: Phicem <Phicem@users.noreply.github.com>
To: ml@inbox.vuxu.org
Subject: [PR PATCH] CalculiX-2.20
Date: Sun, 16 Oct 2022 12:05:03 +0200	[thread overview]
Message-ID: <gh-mailinglist-notifications-41a7ca26-5023-4802-975b-f1789d68868e-void-packages-39984@inbox.vuxu.org> (raw)

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

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

https://github.com/Phicem/void-packages CalculiX-2.20
https://github.com/void-linux/void-packages/pull/39984

CalculiX-2.20
### NEW PACKAGE - CalculiX

This new package conforms to the [package requirements](https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md#package-requirements): **YES**

CalculiX is a 3D finite element program. It is an optional but important dependency of FreeCAD (for mechanical and thermal calculations).

CalculiX is split in two parts: the solver (CalculiX-ccx) and the graphical interface and pre/post-processing (CalculiX-cgx).

This PR includes 5 packages, each in a separate commit:
- SPOOLES (build dependency for CalculiX-ccx)
- CalculiX-ccx
- tetgen (runtime dependency for CalculiX-cgx)
- CalculiX-cgx
- CalculiX meta-package (which brings CalculiX-ccx and CalculiX-cgx)


### Tests
#### Local build testing
- Native x86_64 (glibc): **OK**
- Native armv7l (glibc): **OK**
- Native *-musl: **NOT TESTED**

#### Cross build testing (from x86_64 machine)
- Cross-compiling to i686: **OK**
- Cross-compiling to *-musl: **FAILED** (package building has been disabled for musl architectures in the template file of this PR, until someone is able to test building on native musl architecture)
- Cross-compiling to armv7l / armv6l: **FAILED** (building works when compiling natively so it's probably not a big issue)

#### Runtime testing
- On x86_64: **OK** (for CalculiX-ccx: some calculation tests differ from the official reference results files)
- On armv7l: **OK** (for CalculiX-ccx: only basic tests have been run)
- On i686: **NOT TESTED** 



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

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-CalculiX-2.20-39984.patch --]
[-- Type: text/x-diff, Size: 8423 bytes --]

From 5fa72d179479bac45b4054f7d2d627eda1d7f68d Mon Sep 17 00:00:00 2001
From: Phicem <phicem@gmx.com>
Date: Sun, 16 Oct 2022 11:14:40 +0200
Subject: [PATCH 1/5] New package: SPOOLES-2.2

---
 srcpkgs/SPOOLES/template | 26 ++++++++++++++++++++++++++
 1 file changed, 26 insertions(+)
 create mode 100644 srcpkgs/SPOOLES/template

diff --git a/srcpkgs/SPOOLES/template b/srcpkgs/SPOOLES/template
new file mode 100644
index 000000000000..c38940c96a02
--- /dev/null
+++ b/srcpkgs/SPOOLES/template
@@ -0,0 +1,26 @@
+# Template file for 'SPOOLES'
+pkgname=SPOOLES
+version=2.2
+revision=1
+wrksrc="${pkgname}-${version}"
+create_wrksrc=yes
+build_style="gnu-makefile"
+make_build_target="lib"
+hostmakedepends="perl"
+short_desc="SParse Object Oriented Linear Equations Solver"
+maintainer="Phicem <phicem@gmx.com>"
+license="Public Domain"
+homepage="https://netlib.org/linalg/spooles/spooles.2.2.html"
+distfiles="https://netlib.org/linalg/spooles/spooles.${version}.tgz"
+checksum=a84559a0e987a1e423055ef4fdf3035d55b65bbe4bf915efaa1a35bef7f8c5dd
+
+do_install() {
+	vinstall spooles.a 755 usr/lib
+	HEADERS_DIR=usr/include/SPOOLES-2.2
+	for file in $(find -name '*.h') ; do
+		dir=$(dirname ${file})
+ 		vmkdir ${HEADERS_DIR}/${dir}
+ 		vinstall ${file} 644 ${HEADERS_DIR}/${dir}
+ 	done
+
+}

From 4cd7f52d0e5186a2937f746a8372a3543e4ac8e0 Mon Sep 17 00:00:00 2001
From: Phicem <phicem@gmx.com>
Date: Sun, 16 Oct 2022 11:14:55 +0200
Subject: [PATCH 2/5] CalculiX-ccx-2.20

---
 srcpkgs/CalculiX-ccx/template | 36 +++++++++++++++++++++++++++++++++++
 1 file changed, 36 insertions(+)
 create mode 100644 srcpkgs/CalculiX-ccx/template

diff --git a/srcpkgs/CalculiX-ccx/template b/srcpkgs/CalculiX-ccx/template
new file mode 100644
index 000000000000..e3c485f85298
--- /dev/null
+++ b/srcpkgs/CalculiX-ccx/template
@@ -0,0 +1,36 @@
+# Template file for 'CalculiX-ccx'
+pkgname=CalculiX-ccx
+version=2.20
+revision=1
+archs=~"*-musl"
+wrksrc=CalculiX
+_ccx_dir=ccx_${version}
+_LIBS=" ${XBPS_CROSS_BASE}/usr/lib/spooles.a ${XBPS_CROSS_BASE}/usr/lib/libarpack.so ${XBPS_CROSS_BASE}/lib/libopenblas.so  -lpthread -lm -lc"
+hostmakedepends="perl gcc-fortran"
+makedepends="SPOOLES arpack-ng-devel libgomp-devel openblas-devel"
+_FFLAGS=" -Wall -O2 -fallow-argument-mismatch"
+
+if [ "$XBPS_MACHINE" == "x86_64" ]  && [ "$XBPS_TARGET_MACHINE" == "i686" ]; then
+	makedepends+=" libquadmath"
+	hostmakedepends+=" libgomp-devel-32bit"
+fi
+short_desc="3D Structural Finite Element Program - Solver part"
+maintainer="Phicem <phicem@gmx.com>"
+license="GPL-2.0-or-later"
+homepage="http://www.dhondt.de/"
+distfiles="http://www.dhondt.de/ccx_${version}.src.tar.bz2"
+checksum=63bf6ea09e7edcae93e0145b1bb0579ea7ae82e046f6075a27c8145b72761bcf
+CFLAGS=" -Wall -O2  -I ${XBPS_CROSS_BASE}/usr/include/SPOOLES-2.2 -DARCH='Linux' -DSPOOLES -DARPACK -DMATRIXSTORAGE -DNETWORKOUT"
+CFLAGS+=" ${XBPS_CROSS_CFLAGS}"
+_FFLAGS+=" ${XBPS_CROSS_CFLAGS}"
+
+do_build() {
+	if [ "$CROSS_BUILD" ]; then
+		_xbps_cross_prefix="${XBPS_CROSS_TRIPLET}-"
+	fi
+	make -C ${_ccx_dir}/src CC="${_xbps_cross_prefix}gcc" FC="${_xbps_cross_prefix}gfortran" LIBS="$_LIBS" FFLAGS="$_FFLAGS" CFLAGS="$CFLAGS"
+}
+
+do_install() {
+	vbin ${_ccx_dir}/src/ccx_${version} ccx
+}

From 8a42d9c6739ccd880c1fe221b63eb784846395c8 Mon Sep 17 00:00:00 2001
From: Phicem <phicem@gmx.com>
Date: Sun, 16 Oct 2022 11:15:07 +0200
Subject: [PATCH 3/5] New package: tetgen-1.5.1

---
 srcpkgs/tetgen/template | 25 +++++++++++++++++++++++++
 1 file changed, 25 insertions(+)
 create mode 100644 srcpkgs/tetgen/template

diff --git a/srcpkgs/tetgen/template b/srcpkgs/tetgen/template
new file mode 100644
index 000000000000..6dddf28d446e
--- /dev/null
+++ b/srcpkgs/tetgen/template
@@ -0,0 +1,25 @@
+# Template file for 'tetgen'
+pkgname=tetgen
+version=1.5.1
+revision=1
+build_style="gnu-makefile"
+make_cmd="make -C ${pkgname}${version} -f makefile"
+hostmakedepends="tar"
+short_desc="Quality Tetrahedral Mesh Generator and 3D Delaunay Triangulator"
+maintainer="Phicem <phicem@gmx.com>"
+license="AGPL-3.0-or-later"
+homepage="https://www.wias-berlin.de/software/index.jsp?id=TetGen"
+distfiles="http://www.dhondt.de/cgx_2.20.all.tar.bz2"
+checksum=f4c840c3633718547e33f86b2d7bc6b35608dd8d6cbf9fa192cecef34f2dc908
+
+do_extract() {
+	local srcdir="$XBPS_SRCDISTDIR/$pkgname-$version"
+	tar -xvjf $srcdir/"$(basename ${distfiles})"
+	pwd
+	tar -xvf ${pkgname}${version}.tar
+}
+
+do_install() {
+	vbin ${pkgname}${version}/tetgen
+	vlicense ${pkgname}${version}/LICENSE
+}

From aaacc09a04aee53b632b9412b709c17b4bd3ade5 Mon Sep 17 00:00:00 2001
From: Phicem <phicem@gmx.com>
Date: Sun, 16 Oct 2022 11:15:26 +0200
Subject: [PATCH 4/5] New package: CalculiX-cgx-2.20

---
 srcpkgs/CalculiX-cgx/files/README_LICENSES  |  5 ++++
 srcpkgs/CalculiX-cgx/patches/Makefile.patch | 16 ++++++++++++
 srcpkgs/CalculiX-cgx/template               | 28 +++++++++++++++++++++
 3 files changed, 49 insertions(+)
 create mode 100644 srcpkgs/CalculiX-cgx/files/README_LICENSES
 create mode 100644 srcpkgs/CalculiX-cgx/patches/Makefile.patch
 create mode 100644 srcpkgs/CalculiX-cgx/template

diff --git a/srcpkgs/CalculiX-cgx/files/README_LICENSES b/srcpkgs/CalculiX-cgx/files/README_LICENSES
new file mode 100644
index 000000000000..7b4d6ea22898
--- /dev/null
+++ b/srcpkgs/CalculiX-cgx/files/README_LICENSES
@@ -0,0 +1,5 @@
+cgx program is released under GNU GPL v2 or later (except for a few functions, see CGX_LICENSE)
+
+To be compiled, this program makes use of other programs released under different licenses:
+* glut is released under a custom license (see GLUT_LICENSE)
+* libSN is released under GNU GPL v2 or later
diff --git a/srcpkgs/CalculiX-cgx/patches/Makefile.patch b/srcpkgs/CalculiX-cgx/patches/Makefile.patch
new file mode 100644
index 000000000000..2b9bd1b60462
--- /dev/null
+++ b/srcpkgs/CalculiX-cgx/patches/Makefile.patch
@@ -0,0 +1,16 @@
+--- CalculiX/cgx_2.20/src/Makefile.orig	2022-07-29 11:41:00.438531485 +0200
++++ CalculiX/cgx_2.20/src/Makefile	2022-10-15 13:34:33.978116884 +0200
+@@ -1,3 +1,4 @@
++CXX=g++
+ # on MacOS it might be necessary to remove -DSEMINIT
+ CFLAGS = -O2 -Wall -Wno-narrowing -DSEMINIT \
+   -I./ \
+@@ -67,7 +68,7 @@
+ OUTIL = $(SUTIL:.c=.o)
+ 
+ cgx: $(OLIB) $(OUTIL) $(OULIB)
+-	g++  $(OULIB)  $(OLIB) $(OUTIL)  $(CFLAGS) $(LFLAGS) -o  $@
++	${CXX}  $(OULIB)  $(OLIB) $(OUTIL)  $(CFLAGS) $(LFLAGS) -o  $@
+ 
+ 
+ 
diff --git a/srcpkgs/CalculiX-cgx/template b/srcpkgs/CalculiX-cgx/template
new file mode 100644
index 000000000000..771210a04545
--- /dev/null
+++ b/srcpkgs/CalculiX-cgx/template
@@ -0,0 +1,28 @@
+# Template file for 'CalculiX-cgx'
+pkgname=CalculiX-cgx
+version=2.20
+revision=1
+archs=~"*-musl"
+wrksrc=CalculiX
+_cgx_dir=cgx_${version}
+build_style="gnu-makefile"
+make_build_args="-C ${_cgx_dir}/src"
+makedepends="glu-devel libglvnd-devel libXmu-devel libXi-devel"
+depends="tetgen"
+short_desc="3D Structural Finite Element Program - Graphical interface"
+maintainer="Phicem <phicem@gmx.com>"
+license="GPL-2.0-or-later, custom:GLUT"
+homepage="http://www.dhondt.de/"
+distfiles="http://www.dhondt.de/cgx_${version}.all.tar.bz2"
+checksum=f4c840c3633718547e33f86b2d7bc6b35608dd8d6cbf9fa192cecef34f2dc908
+if [ "$XBPS_MACHINE" == "x86_64" ] ; then
+	hostmakedepends+="glibc-devel-32bit"
+fi
+CFLAGS=" -O2 -Wall -Wno-narrowing  -I./  -I/usr/include/  -I/usr/include/GL  -I../../libSNL/src  -I../../glut-3.5/src  -I/usr/X11/include"
+
+do_install() {
+	vbin ${_cgx_dir}/src/cgx
+	vlicense ${_cgx_dir}/README CGX_LICENSE
+	vlicense glut-3.5/NOTICE GLUT_LICENSE
+	vlicense ${FILESDIR}/README_LICENSES
+}

From e4342c2dc5bdc8c947815f4a4575f0016fe37de9 Mon Sep 17 00:00:00 2001
From: Phicem <phicem@gmx.com>
Date: Sun, 16 Oct 2022 11:15:33 +0200
Subject: [PATCH 5/5] New package: CalculiX-2.20

---
 srcpkgs/CalculiX/template | 10 ++++++++++
 1 file changed, 10 insertions(+)
 create mode 100644 srcpkgs/CalculiX/template

diff --git a/srcpkgs/CalculiX/template b/srcpkgs/CalculiX/template
new file mode 100644
index 000000000000..b807d972e945
--- /dev/null
+++ b/srcpkgs/CalculiX/template
@@ -0,0 +1,10 @@
+# Template file for 'CalculiX'
+pkgname=CalculiX
+version=2.20
+revision=1
+build_style=meta
+depends="CalculiX-cgx-${version}_${revision} CalculiX-ccx-${version}_${revision}"
+short_desc="3D Structural Finite Element Program"
+maintainer="Phicem <phicem@gmx.com>"
+license="GPL-2.0-only"
+homepage="http://www.dhondt.de/"

             reply	other threads:[~2022-10-16 10:05 UTC|newest]

Thread overview: 105+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-10-16 10:05 Phicem [this message]
2022-10-16 10:21 ` [PR REVIEW] CalculiX-2.20 classabbyamp
2022-10-16 10:21 ` classabbyamp
2022-10-16 11:22 ` Phicem
2022-10-16 11:23 ` paper42
2022-10-16 11:23 ` paper42
2022-10-16 11:37 ` Phicem
2022-10-16 11:46 ` Phicem
2022-10-16 18:27 ` [PR PATCH] [Updated] CalculiX-2.20 Phicem
2022-10-16 18:30 ` [PR REVIEW] CalculiX-2.20 Phicem
2022-10-16 18:33 ` CalculiX-2.20 Phicem
2022-10-16 19:38 ` [PR PATCH] [Updated] CalculiX-2.20 Phicem
2022-10-16 19:40 ` CalculiX-2.20 Phicem
2022-10-16 20:41 ` CalculiX-2.20 Phicem
2022-10-17 23:56 ` [PR REVIEW] CalculiX-2.20 classabbyamp
2022-10-17 23:56 ` classabbyamp
2022-10-17 23:56 ` classabbyamp
2022-10-17 23:56 ` classabbyamp
2022-10-17 23:56 ` classabbyamp
2022-10-17 23:56 ` classabbyamp
2022-10-17 23:56 ` classabbyamp
2022-10-17 23:56 ` classabbyamp
2022-10-17 23:56 ` classabbyamp
2022-10-17 23:56 ` classabbyamp
2022-10-17 23:56 ` classabbyamp
2022-10-17 23:56 ` classabbyamp
2022-10-17 23:56 ` classabbyamp
2022-10-17 23:56 ` classabbyamp
2022-10-17 23:56 ` classabbyamp
2022-10-17 23:56 ` classabbyamp
2022-10-17 23:56 ` classabbyamp
2022-10-17 23:56 ` classabbyamp
2022-10-17 23:56 ` classabbyamp
2022-10-17 23:56 ` classabbyamp
2022-10-17 23:56 ` classabbyamp
2022-10-17 23:56 ` classabbyamp
2022-10-17 23:56 ` classabbyamp
2022-10-17 23:56 ` classabbyamp
2022-10-17 23:56 ` classabbyamp
2022-10-17 23:56 ` classabbyamp
2022-10-17 23:56 ` classabbyamp
2022-10-17 23:56 ` classabbyamp
2022-10-18  2:34 ` ahesford
2022-10-18  2:34 ` ahesford
2022-10-18  6:38 ` 0x5c
2022-10-18  6:42 ` classabbyamp
2022-10-22  7:49 ` CalculiX-2.20 Phicem
2022-10-22  8:07 ` [PR REVIEW] [WIP] CalculiX-2.20 Phicem
2022-10-22  8:10 ` Phicem
2022-10-22  8:48 ` Phicem
2022-10-22  8:50 ` [PR PATCH] [Updated] " Phicem
2022-10-22  9:03 ` [PR REVIEW] " Phicem
2022-10-22 11:55 ` 0x5c
2022-10-22 11:55 ` 0x5c
2022-10-22 19:17 ` Phicem
2022-10-23  7:11 ` 0x5c
2022-10-23  9:35 ` Phicem
2022-10-23  9:35 ` [PR PATCH] [Updated] " Phicem
2022-10-23  9:59 ` [PR REVIEW] " Phicem
2022-10-23 10:00 ` [PR PATCH] [Updated] " Phicem
2022-10-23 10:00 ` Phicem
2022-10-23 11:20 ` Phicem
2022-10-23 11:39 ` Phicem
2022-10-23 11:42 ` Phicem
2022-10-23 13:14 ` [PR REVIEW] " ahesford
2022-10-23 13:15 ` ahesford
2022-10-23 13:25 ` ahesford
2022-10-23 16:50 ` [PR PATCH] [Updated] " Phicem
2022-10-23 16:52 ` [PR REVIEW] " Phicem
2022-10-23 18:25 ` [PR PATCH] [Updated] " Phicem
2022-10-23 18:29 ` [PR REVIEW] " Phicem
2022-10-23 18:49 ` Phicem
2022-10-23 18:51 ` [PR PATCH] [Updated] " Phicem
2022-10-23 19:56 ` [PR REVIEW] " Phicem
2022-10-23 20:02 ` classabbyamp
2022-10-26  6:37 ` Phicem
2022-10-26  7:45 ` [PR PATCH] [Updated] " Phicem
2022-10-26  7:47 ` Phicem
2022-10-26  7:55 ` Phicem
2022-10-26  7:56 ` Phicem
2022-10-26  8:02 ` Phicem
2022-10-26  8:03 ` Phicem
2022-10-26  8:13 ` Phicem
2022-10-26  8:13 ` Phicem
2022-10-26  9:35 ` [PR REVIEW] " Phicem
2022-10-26  9:37 ` [PR PATCH] [Updated] " Phicem
2022-10-26  9:41 ` Phicem
2022-10-26 10:01 ` Phicem
2022-10-26 10:46 ` Phicem
2022-10-26 16:42 ` Phicem
2022-10-26 19:18 ` Phicem
2022-10-26 19:25 ` [PR REVIEW] " Phicem
2022-10-30 20:31 ` [PR PATCH] [Updated] " Phicem
2022-10-31 14:17 ` Phicem
2022-10-31 14:25 ` Phicem
2022-10-31 16:45 ` Phicem
2022-11-04 21:44 ` New package: CalculiX-2.20 classabbyamp
2022-11-04 21:44 ` classabbyamp
2022-11-05 15:38 ` Phicem
2022-11-05 15:38 ` [PR PATCH] [Updated] " Phicem
2022-11-05 17:48 ` Phicem
2023-02-04  1:58 ` github-actions
2023-02-05 18:21 ` [PR PATCH] [Updated] " Phicem
2023-05-08  1:52 ` github-actions
2023-05-22  1:57 ` [PR PATCH] [Closed]: " github-actions

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=gh-mailinglist-notifications-41a7ca26-5023-4802-975b-f1789d68868e-void-packages-39984@inbox.vuxu.org \
    --to=phicem@users.noreply.github.com \
    --cc=ml@inbox.vuxu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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).