summary refs log tree commit diff
path: root/gnu/packages/patches/symmetrica-int32.patch
diff options
context:
space:
mode:
authorNicolas Goaziou <mail@nicolasgoaziou.fr>2019-06-19 07:57:57 +0200
committerNicolas Goaziou <mail@nicolasgoaziou.fr>2019-06-20 10:19:12 +0200
commit75a73bb024c840dc7a917a527915ff8d8d918af8 (patch)
tree3f0ccfad8e6c452499b1fff852b8d816b002e70f /gnu/packages/patches/symmetrica-int32.patch
parenta42cb6f1f18e33d0e8d54260ebe5ad23c5d3f2fe (diff)
downloadguix-75a73bb024c840dc7a917a527915ff8d8d918af8.tar.gz
gnu: Add symmetrica.
* gnu/packages/algebra.scm (symmetrica): New variable.
* gnu/packages/patches/symmetrica-bruch.patch:
* gnu/packages/patches/symmetrica-int32.patch:
* gnu/packages/patches/symmetrica-return_values.patch:
* gnu/packages/patches/symmetrica-sort_sum_rename.patch: New files.
* gnu/local.mk (dist_patch_DATA): Add patches.
Diffstat (limited to 'gnu/packages/patches/symmetrica-int32.patch')
-rw-r--r--gnu/packages/patches/symmetrica-int32.patch37
1 files changed, 37 insertions, 0 deletions
diff --git a/gnu/packages/patches/symmetrica-int32.patch b/gnu/packages/patches/symmetrica-int32.patch
new file mode 100644
index 0000000000..b64f27d51e
--- /dev/null
+++ b/gnu/packages/patches/symmetrica-int32.patch
@@ -0,0 +1,37 @@
+diff -ru src/def.h c/def.h
+--- src/def.h	2007-12-06 17:30:56.000000000 +0100
++++ c/def.h	2013-10-19 18:42:55.118745730 +0200
+@@ -2,14 +2,9 @@
+ /* INT should always be 4 byte */
+ #ifndef DEF_H
+ 
+-
+-#ifdef __alpha
+-typedef  int INT;
+-typedef unsigned  int  UINT;
+-#else /* __alpha */
+-typedef long INT;
+-typedef unsigned long UINT;
+-#endif /* __alpha */
++#include <stdint.h>
++typedef int32_t INT;
++typedef uint32_t UINT;
+ 
+ #include <stdio.h>
+ #include <memory.h>
+@@ -65,10 +60,13 @@
+ 
+ 
+ /* definitionen fuer object.c */
+-typedef INT OBJECTKIND;   /* 4 byte */
++/* NOTE: partition code assumes that there is no unused space in the
++ * object struct when an INT is stored. This requires both OBJECTKIND
++ * and OBJECTSELF to have a size equal to a machine word. */
++typedef intptr_t OBJECTKIND;
+ 
+ typedef union {
+-	INT ob_INT;
++	intptr_t ob_INT;
+ 	INT * ob_INTpointer;
+ 	char *ob_charpointer;
+ 	struct bruch *ob_bruch;