[arch-commits] Commit in tcsh/trunk (3 files)

Lukas Fleischer lfleischer at archlinux.org
Fri Jul 10 08:07:41 UTC 2015


    Date: Friday, July 10, 2015 @ 10:07:40
  Author: lfleischer
Revision: 136604

upgpkg: tcsh 6.19.00-2

Add upstream patches to workaround GCC 5 issue (fixes FS#45602).

Added:
  tcsh/trunk/0001-avoid-gcc-5-optimization-malloc-memset-calloc-Fridol.patch
  tcsh/trunk/0002-make-k-volatile-to-prevent-gcc-5-memset-optimization.patch
Modified:
  tcsh/trunk/PKGBUILD

-----------------------------------------------------------------+
 0001-avoid-gcc-5-optimization-malloc-memset-calloc-Fridol.patch |   32 ++++++++++
 0002-make-k-volatile-to-prevent-gcc-5-memset-optimization.patch |   26 ++++++++
 PKGBUILD                                                        |   12 +++
 3 files changed, 69 insertions(+), 1 deletion(-)

Added: 0001-avoid-gcc-5-optimization-malloc-memset-calloc-Fridol.patch
===================================================================
--- 0001-avoid-gcc-5-optimization-malloc-memset-calloc-Fridol.patch	                        (rev 0)
+++ 0001-avoid-gcc-5-optimization-malloc-memset-calloc-Fridol.patch	2015-07-10 08:07:40 UTC (rev 136604)
@@ -0,0 +1,32 @@
+From 624d3aebb6e6afadb4f35e894d11b5ebe290cd87 Mon Sep 17 00:00:00 2001
+From: christos <christos>
+Date: Thu, 28 May 2015 11:47:03 +0000
+Subject: [PATCH] avoid gcc-5 optimization malloc + memset = calloc (Fridolin
+ Pokorny)
+
+---
+ tc.alloc.c | 5 ++++-
+ 1 file changed, 4 insertions(+), 1 deletion(-)
+
+diff --git a/tc.alloc.c b/tc.alloc.c
+index b9aec63..c1cb330 100644
+--- a/tc.alloc.c
++++ b/tc.alloc.c
+@@ -348,10 +348,13 @@ calloc(size_t i, size_t j)
+ {
+ #ifndef lint
+     char *cp;
++    size_t k;
+ 
+     i *= j;
+     cp = xmalloc(i);
+-    memset(cp, 0, i);
++    /* Stop gcc 5.x from optimizing malloc+memset = calloc */
++    k = i;
++    memset(cp, 0, k);
+ 
+     return ((memalign_t) cp);
+ #else
+-- 
+2.4.5
+

Added: 0002-make-k-volatile-to-prevent-gcc-5-memset-optimization.patch
===================================================================
--- 0002-make-k-volatile-to-prevent-gcc-5-memset-optimization.patch	                        (rev 0)
+++ 0002-make-k-volatile-to-prevent-gcc-5-memset-optimization.patch	2015-07-10 08:07:40 UTC (rev 136604)
@@ -0,0 +1,26 @@
+From 05e7406049bd2686dee0ee8d819dcd38eb131f6f Mon Sep 17 00:00:00 2001
+From: christos <christos>
+Date: Tue, 7 Jul 2015 12:24:54 +0000
+Subject: [PATCH] make k volatile to prevent gcc-5 memset() optimization
+ (Fridolin Pokorny)
+
+---
+ tc.alloc.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/tc.alloc.c b/tc.alloc.c
+index c1cb330..f68a8c5 100644
+--- a/tc.alloc.c
++++ b/tc.alloc.c
+@@ -348,7 +348,7 @@ calloc(size_t i, size_t j)
+ {
+ #ifndef lint
+     char *cp;
+-    size_t k;
++    volatile size_t k;
+ 
+     i *= j;
+     cp = xmalloc(i);
+-- 
+2.4.5
+

Modified: PKGBUILD
===================================================================
--- PKGBUILD	2015-07-09 22:05:39 UTC (rev 136603)
+++ PKGBUILD	2015-07-10 08:07:40 UTC (rev 136604)
@@ -4,7 +4,7 @@
 
 pkgname=tcsh
 pkgver=6.19.00
-pkgrel=1
+pkgrel=2
 pkgdesc='Enhanced version of the Berkeley C shell.'
 arch=('i686' 'x86_64')
 url='http://www.tcsh.org/Welcome'
@@ -14,12 +14,22 @@
         'etc/csh.login')
 install='tcsh.install'
 source=("ftp://ftp.astron.com/pub/${pkgname}/${pkgname}-${pkgver}.tar.gz"
+        '0001-avoid-gcc-5-optimization-malloc-memset-calloc-Fridol.patch'
+        '0002-make-k-volatile-to-prevent-gcc-5-memset-optimization.patch'
         'csh.cshrc'
         'csh.login')
 md5sums=('f5f854833578647795bc906dd4bcb5d5'
+         '2a28679d1cc9db48720f69ea55e19cdb'
+         '8b63b83ae940706cce8db7ecda023441'
          '7ca0fe6d1a1b9a0093f632499d4fb112'
          '4869b9da87c79854e2cc97241f125853')
 
+prepare() {
+  cd "${srcdir}/${pkgname}-${pkgver}"
+  patch -p1 -i ../0001-avoid-gcc-5-optimization-malloc-memset-calloc-Fridol.patch
+  patch -p1 -i ../0002-make-k-volatile-to-prevent-gcc-5-memset-optimization.patch
+}
+
 build() {
   cd "${srcdir}/${pkgname}-${pkgver}"
 



More information about the arch-commits mailing list