fastcap: fix build with gcc15

This commit is contained in:
Xiangyan Sun
2026-04-02 13:57:54 -07:00
parent d3d48af509
commit 6b4db724eb
2 changed files with 22 additions and 3 deletions
@@ -0,0 +1,12 @@
Fix implicit int truncating points in 64 bit systems.
--- a/src/mulGlobal.h
+++ b/src/mulGlobal.h
@@ -77,6 +77,8 @@
/* #define MALCORE malloc */
#define MALCORE ualloc
+extern char *ualloc(unsigned int);
+
/* counts of memory usage by multipole matrix type */
extern long memcount;
extern long memQ2M;
+10 -3
View File
@@ -19,6 +19,7 @@ stdenv.mkDerivation (finalAttrs: {
patches = [
./fastcap-mulglobal-drop-conflicting-lib.patch
./fastcap-mulsetup-add-forward-declarations.patch
./fastcap-mulglobal-add-ualloc-declaration.patch
];
nativeBuildInputs = [
@@ -28,7 +29,7 @@ stdenv.mkDerivation (finalAttrs: {
postPatch = ''
substituteInPlace ./doc/Makefile \
--replace '/bin/rm' 'rm'
--replace-fail '/bin/rm' 'rm'
for f in "doc/*.tex" ; do
sed -i -E $f \
@@ -54,8 +55,14 @@ stdenv.mkDerivation (finalAttrs: {
"all"
];
# GCC 14 makes these errors by default
env.NIX_CFLAGS_COMPILE = "-Wno-error=implicit-function-declaration -Wno-error=return-mismatch -Wno-error=implicit-int";
env.NIX_CFLAGS_COMPILE = toString [
# gcc14
"-Wno-error=implicit-function-declaration"
"-Wno-error=return-mismatch"
"-Wno-error=implicit-int"
# gcc15
"-std=gnu17"
];
outputs = [
"out"