summaryrefslogtreecommitdiff
path: root/sci-mathematics/singular/files
diff options
context:
space:
mode:
authorV3n3RiX <venerix@koprulu.sector>2022-06-29 12:04:12 +0100
committerV3n3RiX <venerix@koprulu.sector>2022-06-29 12:04:12 +0100
commit0f558761aa2dee1017b4751e4017205e015a9560 (patch)
tree037df795519468a25d9362b4e95cdaeb84eb1cf9 /sci-mathematics/singular/files
parent752d6256e5204b958b0ef7905675a940b5e9172f (diff)
gentoo resync : 29.12.2022
Diffstat (limited to 'sci-mathematics/singular/files')
-rw-r--r--sci-mathematics/singular/files/singular-4.3.0-includes.patch29
-rw-r--r--sci-mathematics/singular/files/singular-4.3.0-slibtool.patch33
-rw-r--r--sci-mathematics/singular/files/singular-4.3.0_p1-gcc12.patch76
3 files changed, 76 insertions, 62 deletions
diff --git a/sci-mathematics/singular/files/singular-4.3.0-includes.patch b/sci-mathematics/singular/files/singular-4.3.0-includes.patch
deleted file mode 100644
index 07df5c0cc068..000000000000
--- a/sci-mathematics/singular/files/singular-4.3.0-includes.patch
+++ /dev/null
@@ -1,29 +0,0 @@
-From bbc293564bf76fcdfdc37354d406b7ca77bc780f Mon Sep 17 00:00:00 2001
-From: Hans Schoenemann <hannes@mathematik.uni-kl.de>
-Date: Wed, 19 Jan 2022 15:02:14 +0100
-Subject: [PATCH] fix: missing includes
-
----
- kernel/oswrapper/feread.cc | 2 ++
- 1 file changed, 2 insertions(+)
-
-diff --git a/kernel/oswrapper/feread.cc b/kernel/oswrapper/feread.cc
-index ccdd272285..5491007478 100644
---- a/kernel/oswrapper/feread.cc
-+++ b/kernel/oswrapper/feread.cc
-@@ -7,6 +7,7 @@
-
- #include "kernel/mod2.h"
- #include <errno.h>
-+#include <stdio.h>
-
- // ----------------------------------------
- // system settings:
-@@ -21,6 +22,7 @@
- #include "misc/options.h"
-
- #include "kernel/oswrapper/feread.h"
-+#include "reporter/reporter.h"
-
- #if defined(HAVE_DYN_RL)
- #include <unistd.h>
diff --git a/sci-mathematics/singular/files/singular-4.3.0-slibtool.patch b/sci-mathematics/singular/files/singular-4.3.0-slibtool.patch
deleted file mode 100644
index 72d88979e870..000000000000
--- a/sci-mathematics/singular/files/singular-4.3.0-slibtool.patch
+++ /dev/null
@@ -1,33 +0,0 @@
-diff --git a/libpolys/configure.ac b/libpolys/configure.ac
-index ba7d911..346602f 100644
---- a/libpolys/configure.ac
-+++ b/libpolys/configure.ac
-@@ -88,6 +88,7 @@ AC_CANONICAL_HOST
-
- case $host_os in
- *cygwin* ) AX_APPEND_LINK_FLAGS([-Wl,-Bdynamic]);;
-+ *) AX_APPEND_LINK_FLAGS([-shared -dynamic -export-dynamic -avoid-version -flat_namespace],[P_PROCS_MODULE_LDFLAGS]);;
- esac
-
- dnl INCLUDES=""
-diff --git a/libpolys/polys/Makefile.am b/libpolys/polys/Makefile.am
-index 23f216e..119c4ef 100644
---- a/libpolys/polys/Makefile.am
-+++ b/libpolys/polys/Makefile.am
-@@ -69,12 +69,10 @@ p_Procs_FieldIndep_la_CPPFLAGS = -Dp_Procs_FieldIndep ${P_PROCS_CPPFLAGS_COMMON}
- p_Procs_FieldQ_la_CPPFLAGS = -Dp_Procs_FieldQ ${P_PROCS_CPPFLAGS_COMMON}
- p_Procs_FieldZp_la_CPPFLAGS = -Dp_Procs_FieldZp ${P_PROCS_CPPFLAGS_COMMON}
-
--P_PROCS_MODULE_LDFLAGS = -shared -module -dynamic -export-dynamic -avoid-version -weak_reference_mismatches weak -undefined dynamic_lookup -flat_namespace
--
--p_Procs_FieldGeneral_la_LDFLAGS = ${P_PROCS_MODULE_LDFLAGS}
--p_Procs_FieldIndep_la_LDFLAGS = ${P_PROCS_MODULE_LDFLAGS}
--p_Procs_FieldQ_la_LDFLAGS = ${P_PROCS_MODULE_LDFLAGS}
--p_Procs_FieldZp_la_LDFLAGS = ${P_PROCS_MODULE_LDFLAGS}
-+p_Procs_FieldGeneral_la_LDFLAGS = -module ${P_PROCS_MODULE_LDFLAGS}
-+p_Procs_FieldIndep_la_LDFLAGS = -module ${P_PROCS_MODULE_LDFLAGS}
-+p_Procs_FieldQ_la_LDFLAGS = -module ${P_PROCS_MODULE_LDFLAGS}
-+p_Procs_FieldZp_la_LDFLAGS = -module ${P_PROCS_MODULE_LDFLAGS}
-
- P_PROCS = templates/p_Procs_Lib.cc
-
diff --git a/sci-mathematics/singular/files/singular-4.3.0_p1-gcc12.patch b/sci-mathematics/singular/files/singular-4.3.0_p1-gcc12.patch
new file mode 100644
index 000000000000..570d0be87a29
--- /dev/null
+++ b/sci-mathematics/singular/files/singular-4.3.0_p1-gcc12.patch
@@ -0,0 +1,76 @@
+diff --git a/kernel/oswrapper/vspace.cc b/kernel/oswrapper/vspace.cc
+index fa42bf5e28..aefa661600 100644
+--- a/kernel/oswrapper/vspace.cc
++++ b/kernel/oswrapper/vspace.cc
+@@ -197,7 +197,11 @@ static void print_freelists() {
+
+ void vmem_free(vaddr_t vaddr) {
+ lock_allocator();
++ #if defined(__GNUC__) && (__GNUC__>11)
++ vaddr -= (sizeof(vaddr_t)*2);
++ #else
+ vaddr -= offsetof(Block, data);
++ #endif
+ vmem.ensure_is_mapped(vaddr);
+ size_t segno = vmem.segment_no(vaddr);
+ VSeg seg = vmem.segment(vaddr);
+@@ -245,7 +249,11 @@ void vmem_free(vaddr_t vaddr) {
+
+ vaddr_t vmem_alloc(size_t size) {
+ lock_allocator();
++ #if defined(__GNUC__) && (__GNUC__>11)
++ size_t alloc_size = size + (sizeof(vaddr_t)*2);
++ #else
+ size_t alloc_size = size + offsetof(Block, data);
++ #endif
+ int level = find_level(alloc_size);
+ int flevel = level;
+ while (flevel < LOG2_SEGMENT_SIZE && vmem.freelist[flevel] == VADDR_NULL)
+@@ -275,7 +283,11 @@ vaddr_t vmem_alloc(size_t size) {
+ assert(vmem.freelist[level] != VADDR_NULL);
+ Block *block = vmem.block_ptr(vmem.freelist[level]);
+ vaddr_t vaddr = vmem.freelist[level];
++ #if defined(__GNUC__) && (__GNUC__>11)
++ vaddr_t result = vaddr + (sizeof(vaddr_t)*2);
++ #else
+ vaddr_t result = vaddr + offsetof(Block, data);
++ #endif
+ vmem.freelist[level] = block->next;
+ if (block->next != VADDR_NULL)
+ vmem.block_ptr(block->next)->prev = VADDR_NULL;
+@@ -751,7 +763,11 @@ static void print_freelists() {
+
+ void vmem_free(vaddr_t vaddr) {
+ lock_allocator();
++ #if defined(__GNUC__) && (__GNUC__>11)
++ vaddr -= (sizeof(vaddr_t)*2);
++ #else
+ vaddr -= offsetof(Block, data);
++ #endif
+ vmem.ensure_is_mapped(vaddr);
+ size_t segno = vmem.segment_no(vaddr);
+ VSeg seg = vmem.segment(vaddr);
+@@ -799,7 +815,11 @@ void vmem_free(vaddr_t vaddr) {
+
+ vaddr_t vmem_alloc(size_t size) {
+ lock_allocator();
++ #if defined(__GNUC__) && (__GNUC__>11)
++ size_t alloc_size = size + (sizeof(vaddr_t)*2);
++ #else
+ size_t alloc_size = size + offsetof(Block, data);
++ #endif
+ int level = find_level(alloc_size);
+ int flevel = level;
+ while (flevel < LOG2_SEGMENT_SIZE && vmem.freelist[flevel] == VADDR_NULL)
+@@ -829,7 +849,11 @@ vaddr_t vmem_alloc(size_t size) {
+ assert(vmem.freelist[level] != VADDR_NULL);
+ Block *block = vmem.block_ptr(vmem.freelist[level]);
+ vaddr_t vaddr = vmem.freelist[level];
++ #if defined(__GNUC__) && (__GNUC__>11)
++ vaddr_t result = vaddr + (sizeof(vaddr_t)*2);
++ #else
+ vaddr_t result = vaddr + offsetof(Block, data);
++ #endif
+ vmem.freelist[level] = block->next;
+ if (block->next != VADDR_NULL)
+ vmem.block_ptr(block->next)->prev = VADDR_NULL;