[arch-commits] Commit in symmetrica/repos (4 files)
Evangelos Foutras
foutrelis at archlinux.org
Fri Nov 9 23:54:51 UTC 2018
Date: Friday, November 9, 2018 @ 23:54:51
Author: foutrelis
Revision: 405418
archrelease: copy trunk to community-staging-x86_64
Added:
symmetrica/repos/community-staging-x86_64/
symmetrica/repos/community-staging-x86_64/LICENSE
(from rev 405417, symmetrica/trunk/LICENSE)
symmetrica/repos/community-staging-x86_64/PKGBUILD
(from rev 405417, symmetrica/trunk/PKGBUILD)
symmetrica/repos/community-staging-x86_64/symmetrica-int32.patch
(from rev 405417, symmetrica/trunk/symmetrica-int32.patch)
------------------------+
LICENSE | 16 ++++++++++++++++
PKGBUILD | 39 +++++++++++++++++++++++++++++++++++++++
symmetrica-int32.patch | 37 +++++++++++++++++++++++++++++++++++++
3 files changed, 92 insertions(+)
Copied: symmetrica/repos/community-staging-x86_64/LICENSE (from rev 405417, symmetrica/trunk/LICENSE)
===================================================================
--- community-staging-x86_64/LICENSE (rev 0)
+++ community-staging-x86_64/LICENSE 2018-11-09 23:54:51 UTC (rev 405418)
@@ -0,0 +1,16 @@
+/*
+Copyright (c) 1987-2010 , symmetrica (at) symmetrica.de
+
+Permission to use, copy, modify, and/or distribute this software for any
+purpose with or without fee is hereby granted, provided that the above
+copyright notice and this permission notice appear in all copies.
+
+THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHORS DISCLAIM ALL WARRANTIES
+WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
+MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
+ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
+WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
+ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
+OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
+*/
+
Copied: symmetrica/repos/community-staging-x86_64/PKGBUILD (from rev 405417, symmetrica/trunk/PKGBUILD)
===================================================================
--- community-staging-x86_64/PKGBUILD (rev 0)
+++ community-staging-x86_64/PKGBUILD 2018-11-09 23:54:51 UTC (rev 405418)
@@ -0,0 +1,39 @@
+# Maintainer: Antonio Rojas <arojas at archlinux.org>
+# Contributor: Rémy Oudompheng <oudomphe at clipper.ens.fr>
+
+pkgname=symmetrica
+pkgver=2.0
+pkgrel=6
+pkgdesc="Algorithms for symmetric groups and classical groups"
+arch=(x86_64)
+url="http://www.algorithm.uni-bayreuth.de/en/research/SYMMETRICA/"
+license=(custom)
+source=('http://www.algorithm.uni-bayreuth.de/en/research/SYMMETRICA/SYM2_0_tar.gz' 'symmetrica-int32.patch' 'LICENSE')
+sha256sums=('bf52788dedc14c482e89f5e7efe8c60864a633314ddd446dd4602d5fdaca0ee2'
+ 'b68792fe9e0adf08addc71437b61c4f002edb20e06d795df63a38ca2dd40d1df'
+ '0bf9103563587f077f2155d1e7f514f8389a3f9749ee3e690ce2d449a4bc699e')
+
+prepare() {
+ sed -i -e 's/-O2/$(CFLAGS)/' makefile
+# fix integer overflow on 64 bits
+ patch -p1 -i symmetrica-int32.patch
+
+# disable banner
+ sed -i 's|no_banner = FALSE|no_banner = TRUE|' de.c
+}
+
+build() {
+ export CFLAGS="-fPIC $CFLAGS"
+ make
+ ar crs libsymmetrica.a *.o
+}
+
+package() {
+ install -D -m 644 libsymmetrica.a "$pkgdir"/usr/lib/libsymmetrica.a
+ mkdir -p "$pkgdir"/usr/include/symmetrica/
+ install -m 644 *.h "$pkgdir"/usr/include/symmetrica/
+
+ mkdir -p "$pkgdir"/usr/share/licenses/symmetrica
+ install LICENSE "$pkgdir"/usr/share/licenses/symmetrica
+}
+
Copied: symmetrica/repos/community-staging-x86_64/symmetrica-int32.patch (from rev 405417, symmetrica/trunk/symmetrica-int32.patch)
===================================================================
--- community-staging-x86_64/symmetrica-int32.patch (rev 0)
+++ community-staging-x86_64/symmetrica-int32.patch 2018-11-09 23:54:51 UTC (rev 405418)
@@ -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;
More information about the arch-commits
mailing list