[arch-commits] Commit in cmucl/trunk (2 files)

2019-05-27 Thread Jürgen Hötzel via arch-commits
Date: Monday, May 27, 2019 @ 14:59:36
  Author: juergen
Revision: 471473

upgpkg: cmucl 21d-1

add gcc-8 workaround

Added:
  cmucl/trunk/0001-Fix-68-Use-O1-when-compiling-with-gcc-now.patch
Modified:
  cmucl/trunk/PKGBUILD

--+
 0001-Fix-68-Use-O1-when-compiling-with-gcc-now.patch |   33 +
 PKGBUILD |   22 +--
 2 files changed, 43 insertions(+), 12 deletions(-)

Added: 0001-Fix-68-Use-O1-when-compiling-with-gcc-now.patch
===
--- 0001-Fix-68-Use-O1-when-compiling-with-gcc-now.patch
(rev 0)
+++ 0001-Fix-68-Use-O1-when-compiling-with-gcc-now.patch2019-05-27 
14:59:36 UTC (rev 471473)
@@ -0,0 +1,33 @@
+From 9bd292bd1fca41d438d6eaeedec04c23cc442d4f Mon Sep 17 00:00:00 2001
+From: Raymond Toy 
+Date: Tue, 16 Apr 2019 19:17:32 -0700
+Subject: [PATCH] Fix #68: Use -O1 when compiling with gcc now
+
+As reported gcc 8.1.1 can't produce a working lisp.  gcc 8.3.1 also
+fails.  But as reported on cmucl-imp, 2019-04-08, by Juan Pablo Hierro
+Alverez, -O1 works.
+
+Use -O1.
+---
+ src/lisp/Config.x86_common | 5 -
+ 1 file changed, 4 insertions(+), 1 deletion(-)
+
+diff --git a/src/lisp/Config.x86_common b/src/lisp/Config.x86_common
+index 31aebfc1e..d5537657b 100644
+--- a/src/lisp/Config.x86_common
 b/src/lisp/Config.x86_common
+@@ -44,7 +44,10 @@ endif
+ 
+ CPPFLAGS := $(CPP_DEFINE_OPTIONS) $(CPP_INCLUDE_OPTIONS) 
+ CFLAGS += -Wstrict-prototypes -Wall -g -fno-omit-frame-pointer
+-CFLAGS += -O2
++
++# gcc 8.1.1 and 8.3.1 (and probably anything after 8.1.1?) won't
++# produce a working lisp with -O2.  Just use -O1.
++CFLAGS += -O1
+ ASFLAGS = -g 
+ 
+ ASSEM_SRC = x86-assem.S
+-- 
+2.21.0
+

Modified: PKGBUILD
===
--- PKGBUILD2019-05-27 14:59:29 UTC (rev 471472)
+++ PKGBUILD2019-05-27 14:59:36 UTC (rev 471473)
@@ -3,13 +3,13 @@
 # Maintainer: Juergen Hoetzel 
 
 pkgname=cmucl
-pkgver=21c
+pkgver=21d
 pkgrel=1
 pkgdesc="CMU Common Lisp"
 depends_i686=('glibc' 'openmotif')
 depends_x86_64=('lib32-glibc' 'openmotif')
 provides=('common-lisp')
-makedepends=('sed' 'bc' 'clang')
+makedepends=('sed' 'bc' 'lib32-gcc-libs')
 license=('custom')
 #license PublicDomain
 
source=("https://common-lisp.net/project/cmucl/downloads/release/${pkgver}/cmucl-src-${pkgver}.tar.bz2;
@@ -16,22 +16,20 @@
 
"https://common-lisp.net/project/cmucl/downloads/release/${pkgver}/cmucl-src-${pkgver}.tar.bz2.asc;
 
"https://common-lisp.net/project/cmucl/downloads/release/${pkgver}/cmucl-${pkgver}-x86-linux.tar.bz2;
 
"https://common-lisp.net/project/cmucl/downloads/release/${pkgver}/cmucl-${pkgver}-x86-linux.tar.bz2.asc;
-82bf2c727ba1d3c461fa360aaae176608eb9349b.patch)
-sha256sums=('3435963b594d44b5ca0e12674222b40fb00b3c44ea0226fead5d66041369a74d'
+   '0001-Fix-68-Use-O1-when-compiling-with-gcc-now.patch')
+sha256sums=('657d9332ef0453a513a55c4ed84993ac5157e215efa423d2d7aa432a4bbc4ab4'
 'SKIP'
-'f94a79ca4c2918cc4e7bdc58c934c98e56accc3c08f7cccde70ade02ab438105'
+'45d72d72a3d3b5087561bdc1ae943c8ed445427f3939cc0eb7597dd07eb10d9b'
 'SKIP'
-'6cb5b7921bee5c5cba19939de635870f56f1bce662d457aeccde29878a4d0ebc')
+'48ef3fd1038cc0c53c4a5151f5a3eccde1ac58cef28f4dfc8553b5f7977ea9c9')
 validpgpkeys=('0EF50ED55514BFF6B72B9DAC06CE3819086C750B') # "Raymond Toy 

 url="https://www.cons.org/cmucl/;
 arch=('x86_64')
 
 prepare() {
-  cd "${srcdir}"
-  patch -p1 -i 82bf2c727ba1d3c461fa360aaae176608eb9349b.patch
-
+  patch -p1 -d "${srcdir}" -i 
"${srcdir}/0001-Fix-68-Use-O1-when-compiling-with-gcc-now.patch"
   if [[ $CARCH == "i686" ]]; then
-sed -i 's|i386\*|i686\*|' bin/build-all.sh
+sed -i 's|i386\*|i686\*|' "${srcdir}"/bin/build-all.sh
   fi
 }
 
@@ -39,13 +37,13 @@
   cd "${srcdir}"
   export CMUCLLIB="${srcdir}"/lib/cmucl/lib
   # Build using binary-dist lisp
-  ./bin/build-all.sh -o "${srcdir}"/bin/lisp -C x86_linux_clang
+  ./bin/build-all.sh -o "${srcdir}"/bin/lisp -C x86_linux
 }
 
 package() {
   cd "${srcdir}"
   # install distribution
-  ./bin/make-dist.sh -I "${pkgdir}"/usr -M share/man/man1 -V 21c linux-4
+  ./bin/make-dist.sh -I "${pkgdir}"/usr -M share/man/man1 -V ${pkgver} linux-4
   # move docs
   mv "${pkgdir}"/usr/doc "${pkgdir}"/usr/share/
   # backwards compatibility


[arch-commits] Commit in cmucl/trunk (2 files)

2018-11-10 Thread Jürgen Hötzel via arch-commits
Date: Saturday, November 10, 2018 @ 13:03:28
  Author: juergen
Revision: 405667

Switch to clang, because of upstream gcc8 issue. Fixes #60280

Added:
  cmucl/trunk/82bf2c727ba1d3c461fa360aaae176608eb9349b.patch
Modified:
  cmucl/trunk/PKGBUILD

+
 82bf2c727ba1d3c461fa360aaae176608eb9349b.patch |   56 +++
 PKGBUILD   |   23 +
 2 files changed, 69 insertions(+), 10 deletions(-)

Added: 82bf2c727ba1d3c461fa360aaae176608eb9349b.patch
===
--- 82bf2c727ba1d3c461fa360aaae176608eb9349b.patch  
(rev 0)
+++ 82bf2c727ba1d3c461fa360aaae176608eb9349b.patch  2018-11-10 13:03:28 UTC 
(rev 405667)
@@ -0,0 +1,56 @@
+From 82bf2c727ba1d3c461fa360aaae176608eb9349b Mon Sep 17 00:00:00 2001
+From: Raymond Toy 
+Date: Sat, 25 Aug 2018 16:51:35 -0700
+Subject: [PATCH] Add support for compiling with clang on x86/linux
+
+Add `Config.x86_linux_clang` to use clang instead of gcc to build
+cmucl.  update `create-target.sh` so that it sets the motif variant
+correctly when using `Config.x86_linux_clang`
+
+See issue #68.
+
+With this config, Fedora 28 successfully builds cmucl and passes all
+the tests.
+---
+ bin/create-target.sh|  2 +-
+ src/lisp/Config.x86_linux_clang | 15 +++
+ 2 files changed, 16 insertions(+), 1 deletion(-)
+ create mode 100644 src/lisp/Config.x86_linux_clang
+
+diff --git a/bin/create-target.sh b/bin/create-target.sh
+index 400a2e52b..c1b763056 100755
+--- a/bin/create-target.sh
 b/bin/create-target.sh
+@@ -83,7 +83,7 @@ case $uname_s in
+   hp700*) motif_variant=hpux_cc ;;
+   pmax_mach) motif_variant=pmax_mach ;;
+   sgi*) motif_variant=irix ;;
+-  x86_linux|linux*) motif_variant=x86 ;;
++  x86_linux*|linux*) motif_variant=x86 ;;
+   esac
+   }
+   [ -f src/motif/server/Config.$motif_variant ] || quit "No such 
motif-variant could be found: Config.$motif_variant"
+diff --git a/src/lisp/Config.x86_linux_clang b/src/lisp/Config.x86_linux_clang
+new file mode 100644
+index 0..cbfb4306a
+--- /dev/null
 b/src/lisp/Config.x86_linux_clang
+@@ -0,0 +1,15 @@
++# -*- Mode: makefile -*-
++include Config.x86_common
++
++CC = clang
++CPPFLAGS += -m32 -D__NO_CTYPE -D_GNU_SOURCE
++CFLAGS += -march=pentium4 -mfpmath=sse -mtune=generic
++
++UNDEFSYMPATTERN = -Xlinker -u -Xlinker &
++ASSEM_SRC +=  linux-stubs.S
++OS_SRC += Linux-os.c elf.c
++OS_LIBS = -ldl
++OS_LINK_FLAGS = -m32 -rdynamic -Xlinker --export-dynamic -Xlinker -Map 
-Xlinker foo
++OS_LINK_FLAGS += -Wl,-z,noexecstack
++
++EXEC_FINAL_OBJ = exec-final.o
+-- 
+2.18.1
+

Modified: PKGBUILD
===
--- PKGBUILD2018-11-10 12:58:08 UTC (rev 405666)
+++ PKGBUILD2018-11-10 13:03:28 UTC (rev 405667)
@@ -3,23 +3,25 @@
 # Maintainer: Juergen Hoetzel 
 
 pkgname=cmucl
-pkgver=21b
-pkgrel=2
+pkgver=21c
+pkgrel=1
 pkgdesc="CMU Common Lisp"
 depends_i686=('glibc' 'openmotif')
 depends_x86_64=('lib32-glibc' 'openmotif')
 provides=('common-lisp')
-makedepends=('sed' 'bc')
+makedepends=('sed' 'bc' 'clang')
 license=('custom')
 #license PublicDomain
 
source=("https://common-lisp.net/project/cmucl/downloads/release/${pkgver}/cmucl-src-${pkgver}.tar.bz2;
-   
"https://common-lisp.net/project/cmucl/downloads/release/${pkgver}/cmucl-src-${pkgver}.tar.bz2.asc;
+
"https://common-lisp.net/project/cmucl/downloads/release/${pkgver}/cmucl-src-${pkgver}.tar.bz2.asc;
 
"https://common-lisp.net/project/cmucl/downloads/release/${pkgver}/cmucl-${pkgver}-x86-linux.tar.bz2;
-   
"https://common-lisp.net/project/cmucl/downloads/release/${pkgver}/cmucl-${pkgver}-x86-linux.tar.bz2.asc;)
-sha256sums=('6f9ea5920d38d6881cee85d976565b3a6070bf6473dd64254e0e9f2f23625875'
+
"https://common-lisp.net/project/cmucl/downloads/release/${pkgver}/cmucl-${pkgver}-x86-linux.tar.bz2.asc;
+82bf2c727ba1d3c461fa360aaae176608eb9349b.patch)
+sha256sums=('3435963b594d44b5ca0e12674222b40fb00b3c44ea0226fead5d66041369a74d'
 'SKIP'
-'eaccb1d676dbf40c5327ae5c61a7a638e4c12525b1e4118535582ffb7c59638e'
-'SKIP')
+'f94a79ca4c2918cc4e7bdc58c934c98e56accc3c08f7cccde70ade02ab438105'
+'SKIP'
+'6cb5b7921bee5c5cba19939de635870f56f1bce662d457aeccde29878a4d0ebc')
 validpgpkeys=('0EF50ED55514BFF6B72B9DAC06CE3819086C750B') # "Raymond Toy 

 url="https://www.cons.org/cmucl/;
 arch=('x86_64')
@@ -26,6 +28,7 @@
 
 prepare() {
   cd "${srcdir}"
+  patch -p1 -i 82bf2c727ba1d3c461fa360aaae176608eb9349b.patch
 
   if [[ $CARCH == "i686" ]]; then
 sed -i 's|i386\*|i686\*|' bin/build-all.sh
@@ -36,13 +39,13 @@
   cd "${srcdir}"
   export CMUCLLIB="${srcdir}"/lib/cmucl/lib
   # Build using binary-dist lisp
-  ./bin/build-all.sh -o "${srcdir}"/bin/lisp

[arch-commits] Commit in cmucl/trunk (2 files)

2012-02-20 Thread Juergen Hoetzel
Date: Monday, February 20, 2012 @ 18:34:00
  Author: juergen
Revision: 150710

update to 20c

Added:
  cmucl/trunk/workaround-for-gcc-4.6-overoptimization
Modified:
  cmucl/trunk/PKGBUILD

-+
 PKGBUILD|   12 
 workaround-for-gcc-4.6-overoptimization |   19 +++
 2 files changed, 27 insertions(+), 4 deletions(-)

Modified: PKGBUILD
===
--- PKGBUILD2012-02-20 22:31:08 UTC (rev 150709)
+++ PKGBUILD2012-02-20 23:34:00 UTC (rev 150710)
@@ -3,8 +3,8 @@
 # Maintainer: Juergen Hoetzel juer...@archlinux.org
 
 pkgname=cmucl
-pkgver=20a
-pkgrel=2
+pkgver=20c
+pkgrel=1
 pkgdesc=CMU Common Lisp
 depends=('glibc' 'lesstif')
 provides=('common-lisp')
@@ -12,13 +12,17 @@
 license=('custom')
 #license PublicDomain
 
source=(http://common-lisp.net/project/cmucl/downloads/release/${pkgver}/cmucl-src-${pkgver}.tar.bz2
 \
-
http://common-lisp.net/project/cmucl/downloads/release/${pkgver}/cmucl-${pkgver}-x86-linux.tar.bz2)
-md5sums=('e3e1daa3631d38ed3c3e7601d798aba1' 'bfc6eb859c9219d8e7b00796c69e504c')
+  
http://common-lisp.net/project/cmucl/downloads/release/${pkgver}/cmucl-${pkgver}-x86-linux.tar.bz2
 \
+  workaround-for-gcc-4.6-overoptimization)
+md5sums=('7eec1ddbd281261e2b08194859727e9a'
+ 'c200365b631c7b36b7675e4fc6e17177'
+ '02dd46e8b4b966d121a15037c713f6d4')
 url=http://www.cons.org/cmucl/;
 arch=(i686)
 
 build() {
   cd ${srcdir}
+  patch -Np1 -i workaround-for-gcc-4.6-overoptimization
   export CMUCLCORE=${srcdir}/lib/cmucl/lib/lisp-x87.core
   # Create target buildroot
   ./src/tools/create-target.sh $CHOST 

Added: workaround-for-gcc-4.6-overoptimization
===
--- workaround-for-gcc-4.6-overoptimization (rev 0)
+++ workaround-for-gcc-4.6-overoptimization 2012-02-20 23:34:00 UTC (rev 
150710)
@@ -0,0 +1,19 @@
+Description: GCC 4.6 optimizes away the direction of stack testing, so do it 
by hand
+Author: Peter Van Eynde pvane...@debian.org
+Forwarded: Done
+
+
+Index: cmucl/src/lisp/os-common.c
+===
+--- cmucl.orig/src/lisp/os-common.c2012-01-16 13:29:48.716895926 +
 cmucl/src/lisp/os-common.c 2012-01-16 13:30:42.855951009 +
+@@ -383,7 +383,8 @@
+ {
+ int dummy;
+ 
+-return os_stack_grows_down_1(dummy);
++/* return os_stack_grows_down_1(dummy); */
++return 1;
+ }
+ 
+