public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
* [gentoo-commits] repo/gentoo:master commit in: dev-lisp/cmucl/files/, dev-lisp/cmucl/
@ 2016-04-03 15:48 Andrey Grozin
  0 siblings, 0 replies; 3+ messages in thread
From: Andrey Grozin @ 2016-04-03 15:48 UTC (permalink / raw
  To: gentoo-commits

commit:     2bbd01cf251c6ab7d32952dfadf93c5e4737678e
Author:     Andrey Grozin <grozin <AT> gentoo <DOT> org>
AuthorDate: Sun Apr  3 15:37:17 2016 +0000
Commit:     Andrey Grozin <grozin <AT> gentoo <DOT> org>
CommitDate: Sun Apr  3 15:38:25 2016 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=2bbd01cf

dev-lisp/cmucl: bump tp 21a

Package-Manager: portage-2.2.28

 dev-lisp/cmucl/Manifest                            |   2 +
 dev-lisp/cmucl/cmucl-21a.ebuild                    |  93 ++++++++++++++++
 dev-lisp/cmucl/files/21a-build.patch               |  22 ++++
 ...21a-customize-lisp-implementation-version.patch |  16 +++
 dev-lisp/cmucl/files/21a-execstack-fixes.patch     | 118 +++++++++++++++++++++
 5 files changed, 251 insertions(+)

diff --git a/dev-lisp/cmucl/Manifest b/dev-lisp/cmucl/Manifest
index 35610f6..296d1a4 100644
--- a/dev-lisp/cmucl/Manifest
+++ b/dev-lisp/cmucl/Manifest
@@ -1,2 +1,4 @@
 DIST cmucl-20e-x86-linux.tar.bz2 18861880 SHA256 94dc1c0ddcaa915f83cdc23462a4cc3c4af98d64fe42e79d7c5232225b149480 SHA512 1eee852b2a11733d0fac2c046137ccd099370bf208be71becc03710e832510b288768f557e326b1ce95cba16490413142e607fd71346e20e5f8592b51d86b0fe WHIRLPOOL 765476aeb037b782380b33fb8e7ae137bb38544547b427c54c23661122552108e8940413c55003c31ba05b4729bb18f99f5b462742cbd9c1c7426f0c04e26863
+DIST cmucl-21a-x86-linux.tar.bz2 10870693 SHA256 02d00c025723e7a2fa7a44e43d3f27ec39c9b871ea0332e472a439ada2620d71 SHA512 7f7d327e47b01dcee1cbb05aae826ef7c64d4d192d7d32d1aba51c8839a06d65942fff5d4c7dbccc955e1e233d2065d83d078266327caee07201e9dce59c39ee WHIRLPOOL 50e64b6d03464c9fc7015d3d6829949ab4bc41f69b890a82f36096f89d63da989197deaa7164c687d781b70ca2a7b23e3e23f9605bdb986f5a94553e9aa664c0
 DIST cmucl-src-20e.tar.bz2 6147575 SHA256 b18fd27b67321a0c00f2019bbb18557f239062ba947080149ed42e30f72ae7cd SHA512 d04f6ac7335572198d37d5df00934edfc82495294446cc5420dada4f2df44009f0983b438d6f10ce5bb02e46fd89df985da5eee3e91a6a75d98e9f86240c0dcc WHIRLPOOL babb020bacf474e1cea4bc865ba7352686ff5d92d01dd4d44d121b101ac328da6cd3e63798a2086ce29ba260fdbefc26f5f7d496ecb0af9566cb1cbdbb3846bf
+DIST cmucl-src-21a.tar.bz2 8195492 SHA256 41604a4f828a134dbf8a58623f45bd81b76ae05fc5c4cea5ccb74edfdc9e3167 SHA512 74b077732030dbc3681aadcf9c802fd5b399362c9653b972063e49eb0a2ad528d02d6dde74107210c94c94dc7e9664472c2d072a6ae6f75e7e8c4cf847987e3b WHIRLPOOL 8799e9a2171ef1a9eebce4deaed8aaaa3e2b5e0970ca158020792cc5d864f71525c175b2e9530f8faeee8d1c49a14b04803ed1aa83dc1247c2005a80f5fc972e

diff --git a/dev-lisp/cmucl/cmucl-21a.ebuild b/dev-lisp/cmucl/cmucl-21a.ebuild
new file mode 100644
index 0000000..257f739
--- /dev/null
+++ b/dev-lisp/cmucl/cmucl-21a.ebuild
@@ -0,0 +1,93 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+inherit eutils toolchain-funcs multilib
+
+MY_PV=${PV:0:3}
+
+DESCRIPTION="CMU Common Lisp is an implementation of ANSI Common Lisp"
+HOMEPAGE="http://www.cons.org/cmucl/"
+SRC_URI="http://common-lisp.net/project/cmucl/downloads/release/${MY_PV}/cmucl-src-${MY_PV}.tar.bz2
+	http://common-lisp.net/project/cmucl/downloads/release/${MY_PV}/cmucl-${MY_PV}-x86-linux.tar.bz2"
+
+LICENSE="public-domain"
+SLOT="0"
+KEYWORDS="~x86"
+IUSE="X source"
+
+CDEPEND=">=dev-lisp/asdf-2.33-r3:=
+		 x11-libs/motif:0"
+DEPEND="${CDEPEND}
+		sys-devel/bc"
+RDEPEND="${CDEPEND}"
+
+S="${WORKDIR}"
+
+TARGET=linux-4
+
+src_prepare() {
+	epatch "${FILESDIR}"/${MY_PV}-execstack-fixes.patch
+	epatch "${FILESDIR}"/${MY_PV}-customize-lisp-implementation-version.patch
+	epatch "${FILESDIR}"/${MY_PV}-build.patch
+
+	cp /usr/share/common-lisp/source/asdf/build/asdf.lisp src/contrib/asdf/ || die
+}
+
+src_compile() {
+	local cmuopts buildimage
+
+	if use X; then
+		cmuopts=""
+	else
+		cmuopts="-u"
+	fi
+
+	buildimage="bin/lisp -batch"
+
+	env CC="$(tc-getCC)" bin/build.sh -v "-gentoo-${PR}" -C "" -o "${buildimage}" ${cmuopts} || die "Cannot build the compiler"
+
+	# Compile up the asdf and defsystem modules
+	${TARGET}/lisp/lisp -noinit -nositeinit -batch << EOF || die
+(in-package :cl-user)
+(setf (ext:search-list "target:")
+	  '("$TARGET/" "src/"))
+(setf (ext:search-list "modules:")
+	  '("target:contrib/"))
+
+(compile-file "modules:asdf/asdf")
+(compile-file "modules:defsystem/defsystem")
+EOF
+}
+
+src_install() {
+	env MANDIR=share/man/man1 DOCDIR=share/doc/${PF} \
+		bin/make-dist.sh -S -g -G root -O root ${TARGET} ${MY_PV} x86 linux \
+		|| die "Cannot build installation archive"
+	# Necessary otherwise tar will fail
+	dodir /usr
+	pushd "${D}"/usr > /dev/null
+	tar xzpf "${WORKDIR}"/cmucl-${MY_PV}-x86-linux.tar.gz \
+		|| die "Cannot install main system"
+	if use X ; then
+		tar xzpf "${WORKDIR}"/cmucl-${MY_PV}-x86-linux.extra.tar.gz \
+			|| die "Cannot install extra files"
+	fi
+	if use source; then
+		# Necessary otherwise tar will fail
+		dodir /usr/share/common-lisp/source/${PN}
+		cd "${D}"/usr/share/common-lisp/source/${PN}
+		tar --strip-components 1 -xzpf "${WORKDIR}"/cmucl-src-${MY_PV}.tar.gz \
+			|| die "Cannot install sources"
+	fi
+	popd > /dev/null
+
+	# Install site config file
+	sed "s,@PF@,${PF},g ; s,@VERSION@,$(date +%F),g" \
+		< "${FILESDIR}"/site-init.lisp.in \
+		> "${D}"/usr/$(get_libdir)/cmucl/site-init.lisp \
+		|| die "Cannot fix site-init.lisp"
+	insinto /etc/common-lisp
+	doins "${FILESDIR}"/cmuclrc || die "Failed to install cmuclrc"
+}

diff --git a/dev-lisp/cmucl/files/21a-build.patch b/dev-lisp/cmucl/files/21a-build.patch
new file mode 100644
index 0000000..4642341
--- /dev/null
+++ b/dev-lisp/cmucl/files/21a-build.patch
@@ -0,0 +1,22 @@
+diff -r -U2 21a.orig/bin/build.sh 21a/bin/build.sh
+--- 21a.orig/bin/build.sh	2015-05-19 07:42:40.000000000 +0600
++++ 21a/bin/build.sh	2016-04-03 20:54:08.597016537 +0600
+@@ -40,5 +40,5 @@
+ ENABLE4="yes"
+ 
+-version=20f
++version=21a
+ SRCDIR=src
+ BINDIR=bin
+@@ -145,10 +145,9 @@
+ 	$TOOLDIR/load-world.sh $TARGET "$VERSION" || { echo "Failed: $TOOLDIR/load-world.sh"; exit 1; }
+ 
+-	$TARGET/lisp/lisp -batch -noinit -nositeinit $FPU_MODE < /dev/null || { echo "Failed: $TARGET/lisp/lisp -batch -noinit $FPU_MODE"; exit 1; }
++	$TARGET/lisp/lisp -batch -noinit -nositeinit < /dev/null || { echo "Failed: $TARGET/lisp/lisp -batch -noinit"; exit 1; }
+ 	return 0;
+     fi
+ }
+ 
+-FPU_MODE=
+ BUILDWORLD="$TOOLDIR/build-world.sh"
+ BUILD_POT="yes"

diff --git a/dev-lisp/cmucl/files/21a-customize-lisp-implementation-version.patch b/dev-lisp/cmucl/files/21a-customize-lisp-implementation-version.patch
new file mode 100644
index 0000000..8fc9278
--- /dev/null
+++ b/dev-lisp/cmucl/files/21a-customize-lisp-implementation-version.patch
@@ -0,0 +1,16 @@
+diff -ur cmucl.orig/src/code/misc.lisp cmucl/src/code/misc.lisp
+--- cmucl.orig/src/code/misc.lisp	2011-10-25 05:31:39.000000000 +0200
++++ cmucl/src/code/misc.lisp	2012-01-31 21:46:49.441273068 +0100
+@@ -187,8 +187,10 @@
+ 
+ (defun lisp-implementation-version ()
+   "Returns a string describing the implementation version."
+-  (format nil "~A (~X~A)" *lisp-implementation-version* c:byte-fasl-file-version
+-	  #+unicode _" Unicode" #-unicode ""))
++  (format nil "~X~A~A"
++          c:byte-fasl-file-version
++          #+unicode "-unicode" #-unicode ""
++          *lisp-implementation-version*))
+ 
+ (defun machine-instance ()
+   "Returns a string giving the name of the local machine."

diff --git a/dev-lisp/cmucl/files/21a-execstack-fixes.patch b/dev-lisp/cmucl/files/21a-execstack-fixes.patch
new file mode 100644
index 0000000..034848d
--- /dev/null
+++ b/dev-lisp/cmucl/files/21a-execstack-fixes.patch
@@ -0,0 +1,118 @@
+diff -Naur work.old/src/lisp/alpha-assem.S work/src/lisp/alpha-assem.S
+--- work.old/src/lisp/alpha-assem.S	2003-03-06 11:13:09.000000000 -0300
++++ work/src/lisp/alpha-assem.S	2010-05-10 00:06:34.000000000 -0300
+@@ -297,3 +297,7 @@
+ function_end_breakpoint_end:
+ 
+ 
++
++#if defined(__linux__) && defined(__ELF__)
++.section .note.GNU-stack,"",%progbits
++#endif
+diff -Naur work.old/src/lisp/amd64-assem.S work/src/lisp/amd64-assem.S
+--- work.old/src/lisp/amd64-assem.S	2004-07-27 19:03:53.000000000 -0300
++++ work/src/lisp/amd64-assem.S	2010-05-10 00:06:34.000000000 -0300
+@@ -1051,3 +1051,7 @@
+ 	.end
+ 
+ #endif /* LINKAGE_TABLE */
++
++#if defined(__linux__) && defined(__ELF__)
++.section .note.GNU-stack,"",%progbits
++#endif
+diff -Naur work.old/src/lisp/backtrace.c work/src/lisp/backtrace.c
+--- work.old/src/lisp/backtrace.c	2009-06-11 13:04:01.000000000 -0300
++++ work/src/lisp/backtrace.c	2010-05-10 00:06:22.000000000 -0300
+@@ -3,6 +3,8 @@
+  * Simple backtrace facility.  More or less from Rob's lisp version.
+  */
+ 
++#include "os-common.h"
++
+ #include <stdio.h>
+ #include <signal.h>
+ #include "lisp.h"
+diff -Naur work.old/src/lisp/hppa-assem.S work/src/lisp/hppa-assem.S
+--- work.old/src/lisp/hppa-assem.S	2002-08-23 14:05:35.000000000 -0300
++++ work/src/lisp/hppa-assem.S	2010-05-10 00:06:34.000000000 -0300
+@@ -460,3 +460,7 @@
+ 
+ 	.export	function_end_breakpoint_end
+ function_end_breakpoint_end
++
++#if defined(__linux__) && defined(__ELF__)
++.section .note.GNU-stack,"",%progbits
++#endif
+diff -Naur work.old/src/lisp/linux-stubs.S work/src/lisp/linux-stubs.S
+--- work.old/src/lisp/linux-stubs.S	2005-08-17 00:40:16.000000000 -0300
++++ work/src/lisp/linux-stubs.S	2010-05-10 00:06:34.000000000 -0300
+@@ -995,3 +995,7 @@
+ /*  doe(yperr_string) */
+ /*  doe(ypprot_err) */
+ #endif /* defined(LINKAGE_TABLE) && !defined(__FreeBSD__) */
++
++#if defined(__linux__) && defined(__ELF__)
++.section .note.GNU-stack,"",%progbits
++#endif
+diff -Naur work.old/src/lisp/lisp.c work/src/lisp/lisp.c
+--- work.old/src/lisp/lisp.c	2009-07-13 16:41:54.000000000 -0300
++++ work/src/lisp/lisp.c	2010-05-10 00:05:55.000000000 -0300
+@@ -5,6 +5,9 @@
+  *
+  */
+ 
++#include "os-common.h"
++#include <time.h>
++
+ #include <stdio.h>
+ #include <stdlib.h>
+ #include <limits.h>
+diff -Naur work.old/src/lisp/mips-assem.S work/src/lisp/mips-assem.S
+--- work.old/src/lisp/mips-assem.S	2002-08-23 14:01:02.000000000 -0300
++++ work/src/lisp/mips-assem.S	2010-05-10 00:06:34.000000000 -0300
+@@ -402,3 +402,7 @@
+ 	move	v0, a1
+ 	j	_restore_state
+ 	.end	save_state
++
++#if defined(__linux__) && defined(__ELF__)
++.section .note.GNU-stack,"",%progbits
++#endif
+diff -Naur work.old/src/lisp/os-common.h work/src/lisp/os-common.h
+--- work.old/src/lisp/os-common.h	1969-12-31 21:00:00.000000000 -0300
++++ work/src/lisp/os-common.h	2010-05-10 00:06:22.000000000 -0300
+@@ -0,0 +1 @@
++char* convert_lisp_string(char *c_string, void *lisp_string, int len);
+diff -Naur work.old/src/lisp/ppc-assem.S work/src/lisp/ppc-assem.S
+--- work.old/src/lisp/ppc-assem.S	2006-02-25 01:35:58.000000000 -0300
++++ work/src/lisp/ppc-assem.S	2010-05-10 00:06:34.000000000 -0300
+@@ -721,3 +721,7 @@
+ 	SET_SIZE(fpu_restore)
+ 	
+ #endif
++
++#if defined(__linux__) && defined(__ELF__)
++.section .note.GNU-stack,"",%progbits
++#endif
+diff -Naur work.old/src/lisp/sparc-assem.S work/src/lisp/sparc-assem.S
+--- work.old/src/lisp/sparc-assem.S	2003-10-23 23:57:00.000000000 -0300
++++ work/src/lisp/sparc-assem.S	2010-05-10 00:06:34.000000000 -0300
+@@ -837,3 +837,7 @@
+  * End:
+  */						
+ 		
++
++#if defined(__linux__) && defined(__ELF__)
++.section .note.GNU-stack,"",%progbits
++#endif
+diff -Naur work.old/src/lisp/x86-assem.S work/src/lisp/x86-assem.S
+--- work.old/src/lisp/x86-assem.S	2008-12-24 02:36:40.000000000 -0200
++++ work/src/lisp/x86-assem.S	2010-05-10 00:06:34.000000000 -0300
+@@ -798,3 +798,7 @@
+ ENDFUNC(undefined_foreign_symbol_trap)
+ 
+ #endif /* LINKAGE_TABLE */
++
++#if defined(__linux__) && defined(__ELF__)
++.section .note.GNU-stack,"",%progbits
++#endif


^ permalink raw reply related	[flat|nested] 3+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: dev-lisp/cmucl/files/, dev-lisp/cmucl/
@ 2018-05-14 18:27 José María Alonso
  0 siblings, 0 replies; 3+ messages in thread
From: José María Alonso @ 2018-05-14 18:27 UTC (permalink / raw
  To: gentoo-commits

commit:     0d265120515b68695cf2d3b2b3a8b7fe6f15806d
Author:     Chema Alonso Josa <nimiux <AT> gentoo <DOT> org>
AuthorDate: Mon May 14 18:26:23 2018 +0000
Commit:     José María Alonso <nimiux <AT> gentoo <DOT> org>
CommitDate: Mon May 14 18:26:51 2018 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=0d265120

dev-lisp/cmucl: Bump version from lisp overlay

Closes: https://bugs.gentoo.org/655700
Package-Manager: Portage-2.3.24, Repoman-2.3.6

 dev-lisp/cmucl/cmucl-21c.ebuild                    |  18 ++--
 dev-lisp/cmucl/files/cmucl-21c-build.patch         |  22 ++++
 .../cmucl/files/cmucl-21c-execstack-fixes.patch    | 118 +++++++++++++++++++++
 3 files changed, 149 insertions(+), 9 deletions(-)

diff --git a/dev-lisp/cmucl/cmucl-21c.ebuild b/dev-lisp/cmucl/cmucl-21c.ebuild
index d626b8677e9..e2175b108c1 100644
--- a/dev-lisp/cmucl/cmucl-21c.ebuild
+++ b/dev-lisp/cmucl/cmucl-21c.ebuild
@@ -1,7 +1,8 @@
-# Copyright 1999-2017 Gentoo Foundation
+# Copyright 1999-2018 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
 
 EAPI=6
+
 inherit eutils toolchain-funcs multilib
 
 MY_PV=${PV:0:3}
@@ -28,18 +29,17 @@ S="${WORKDIR}"
 TARGET=linux-4
 
 src_prepare() {
-	eapply "${FILESDIR}"/${MY_PV}-execstack-fixes.patch
-	eapply "${FILESDIR}"/${MY_PV}-customize-lisp-implementation-version.patch
-	eapply "${FILESDIR}"/${MY_PV}-build.patch
+	eapply "${FILESDIR}"/${P}-execstack-fixes.patch
+	eapply "${FILESDIR}"/${P}-build.patch
 	eapply_user
-	cp "${FILESDIR}"/os-common.h src/lisp/ || die
+	#cp "${FILESDIR}"/os-common.h src/lisp/ || die
 	cp /usr/share/common-lisp/source/asdf/build/asdf.lisp src/contrib/asdf/ || die
 }
 
 src_compile() {
 	local cmuopts buildimage
 
-	if use X; then
+	if use X ; then
 		cmuopts=""
 	else
 		cmuopts="-u"
@@ -61,7 +61,7 @@ src_compile() {
 (compile-file "modules:defsystem/defsystem")
 EOF
 
-	# documentation
+	# Documentation
 	if use doc; then
 		pushd src/docs/cmu-user > /dev/null || die "directory src/docs/cmu-user does not exist"
 		emake
@@ -86,7 +86,7 @@ src_install() {
 	if use source; then
 		# Necessary otherwise tar will fail
 		dodir /usr/share/common-lisp/source/${PN}
-		cd "${D}"/usr/share/common-lisp/source/${PN}
+		cd "${D}"/usr/share/common-lisp/source/${PN} || die
 		tar --strip-components 1 -xzpf "${WORKDIR}"/cmucl-src-${MY_PV}.tar.gz \
 			|| die "Cannot install sources"
 	fi
@@ -100,7 +100,7 @@ src_install() {
 	insinto /etc/common-lisp
 	doins "${FILESDIR}"/cmuclrc || die "Failed to install cmuclrc"
 
-	# documentation
+	# Documentation
 	dodoc doc/cmucl/README
 	if use doc; then
 		insinto /usr/share/doc/${PF}

diff --git a/dev-lisp/cmucl/files/cmucl-21c-build.patch b/dev-lisp/cmucl/files/cmucl-21c-build.patch
new file mode 100644
index 00000000000..4d7e4061c92
--- /dev/null
+++ b/dev-lisp/cmucl/files/cmucl-21c-build.patch
@@ -0,0 +1,22 @@
+diff -r -U2 21a.orig/bin/build.sh 21a/bin/build.sh
+--- 21a.orig/bin/build.sh	2015-05-19 07:42:40.000000000 +0600
++++ 21a/bin/build.sh	2016-04-03 20:54:08.597016537 +0600
+@@ -40,5 +40,5 @@
+ ENABLE4="yes"
+ 
+-version=21b
++version=21c
+ SRCDIR=src
+ BINDIR=bin
+@@ -145,10 +145,9 @@
+ 	$TOOLDIR/load-world.sh $TARGET "$VERSION" || { echo "Failed: $TOOLDIR/load-world.sh"; exit 1; }
+ 
+-	$TARGET/lisp/lisp -batch -noinit -nositeinit $FPU_MODE < /dev/null || { echo "Failed: $TARGET/lisp/lisp -batch -noinit $FPU_MODE"; exit 1; }
++	$TARGET/lisp/lisp -batch -noinit -nositeinit < /dev/null || { echo "Failed: $TARGET/lisp/lisp -batch -noinit"; exit 1; }
+ 	return 0;
+     fi
+ }
+ 
+-FPU_MODE=
+ BUILDWORLD="$TOOLDIR/build-world.sh"
+ BUILD_POT="yes"

diff --git a/dev-lisp/cmucl/files/cmucl-21c-execstack-fixes.patch b/dev-lisp/cmucl/files/cmucl-21c-execstack-fixes.patch
new file mode 100644
index 00000000000..034848d64a2
--- /dev/null
+++ b/dev-lisp/cmucl/files/cmucl-21c-execstack-fixes.patch
@@ -0,0 +1,118 @@
+diff -Naur work.old/src/lisp/alpha-assem.S work/src/lisp/alpha-assem.S
+--- work.old/src/lisp/alpha-assem.S	2003-03-06 11:13:09.000000000 -0300
++++ work/src/lisp/alpha-assem.S	2010-05-10 00:06:34.000000000 -0300
+@@ -297,3 +297,7 @@
+ function_end_breakpoint_end:
+ 
+ 
++
++#if defined(__linux__) && defined(__ELF__)
++.section .note.GNU-stack,"",%progbits
++#endif
+diff -Naur work.old/src/lisp/amd64-assem.S work/src/lisp/amd64-assem.S
+--- work.old/src/lisp/amd64-assem.S	2004-07-27 19:03:53.000000000 -0300
++++ work/src/lisp/amd64-assem.S	2010-05-10 00:06:34.000000000 -0300
+@@ -1051,3 +1051,7 @@
+ 	.end
+ 
+ #endif /* LINKAGE_TABLE */
++
++#if defined(__linux__) && defined(__ELF__)
++.section .note.GNU-stack,"",%progbits
++#endif
+diff -Naur work.old/src/lisp/backtrace.c work/src/lisp/backtrace.c
+--- work.old/src/lisp/backtrace.c	2009-06-11 13:04:01.000000000 -0300
++++ work/src/lisp/backtrace.c	2010-05-10 00:06:22.000000000 -0300
+@@ -3,6 +3,8 @@
+  * Simple backtrace facility.  More or less from Rob's lisp version.
+  */
+ 
++#include "os-common.h"
++
+ #include <stdio.h>
+ #include <signal.h>
+ #include "lisp.h"
+diff -Naur work.old/src/lisp/hppa-assem.S work/src/lisp/hppa-assem.S
+--- work.old/src/lisp/hppa-assem.S	2002-08-23 14:05:35.000000000 -0300
++++ work/src/lisp/hppa-assem.S	2010-05-10 00:06:34.000000000 -0300
+@@ -460,3 +460,7 @@
+ 
+ 	.export	function_end_breakpoint_end
+ function_end_breakpoint_end
++
++#if defined(__linux__) && defined(__ELF__)
++.section .note.GNU-stack,"",%progbits
++#endif
+diff -Naur work.old/src/lisp/linux-stubs.S work/src/lisp/linux-stubs.S
+--- work.old/src/lisp/linux-stubs.S	2005-08-17 00:40:16.000000000 -0300
++++ work/src/lisp/linux-stubs.S	2010-05-10 00:06:34.000000000 -0300
+@@ -995,3 +995,7 @@
+ /*  doe(yperr_string) */
+ /*  doe(ypprot_err) */
+ #endif /* defined(LINKAGE_TABLE) && !defined(__FreeBSD__) */
++
++#if defined(__linux__) && defined(__ELF__)
++.section .note.GNU-stack,"",%progbits
++#endif
+diff -Naur work.old/src/lisp/lisp.c work/src/lisp/lisp.c
+--- work.old/src/lisp/lisp.c	2009-07-13 16:41:54.000000000 -0300
++++ work/src/lisp/lisp.c	2010-05-10 00:05:55.000000000 -0300
+@@ -5,6 +5,9 @@
+  *
+  */
+ 
++#include "os-common.h"
++#include <time.h>
++
+ #include <stdio.h>
+ #include <stdlib.h>
+ #include <limits.h>
+diff -Naur work.old/src/lisp/mips-assem.S work/src/lisp/mips-assem.S
+--- work.old/src/lisp/mips-assem.S	2002-08-23 14:01:02.000000000 -0300
++++ work/src/lisp/mips-assem.S	2010-05-10 00:06:34.000000000 -0300
+@@ -402,3 +402,7 @@
+ 	move	v0, a1
+ 	j	_restore_state
+ 	.end	save_state
++
++#if defined(__linux__) && defined(__ELF__)
++.section .note.GNU-stack,"",%progbits
++#endif
+diff -Naur work.old/src/lisp/os-common.h work/src/lisp/os-common.h
+--- work.old/src/lisp/os-common.h	1969-12-31 21:00:00.000000000 -0300
++++ work/src/lisp/os-common.h	2010-05-10 00:06:22.000000000 -0300
+@@ -0,0 +1 @@
++char* convert_lisp_string(char *c_string, void *lisp_string, int len);
+diff -Naur work.old/src/lisp/ppc-assem.S work/src/lisp/ppc-assem.S
+--- work.old/src/lisp/ppc-assem.S	2006-02-25 01:35:58.000000000 -0300
++++ work/src/lisp/ppc-assem.S	2010-05-10 00:06:34.000000000 -0300
+@@ -721,3 +721,7 @@
+ 	SET_SIZE(fpu_restore)
+ 	
+ #endif
++
++#if defined(__linux__) && defined(__ELF__)
++.section .note.GNU-stack,"",%progbits
++#endif
+diff -Naur work.old/src/lisp/sparc-assem.S work/src/lisp/sparc-assem.S
+--- work.old/src/lisp/sparc-assem.S	2003-10-23 23:57:00.000000000 -0300
++++ work/src/lisp/sparc-assem.S	2010-05-10 00:06:34.000000000 -0300
+@@ -837,3 +837,7 @@
+  * End:
+  */						
+ 		
++
++#if defined(__linux__) && defined(__ELF__)
++.section .note.GNU-stack,"",%progbits
++#endif
+diff -Naur work.old/src/lisp/x86-assem.S work/src/lisp/x86-assem.S
+--- work.old/src/lisp/x86-assem.S	2008-12-24 02:36:40.000000000 -0200
++++ work/src/lisp/x86-assem.S	2010-05-10 00:06:34.000000000 -0300
+@@ -798,3 +798,7 @@
+ ENDFUNC(undefined_foreign_symbol_trap)
+ 
+ #endif /* LINKAGE_TABLE */
++
++#if defined(__linux__) && defined(__ELF__)
++.section .note.GNU-stack,"",%progbits
++#endif


^ permalink raw reply related	[flat|nested] 3+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: dev-lisp/cmucl/files/, dev-lisp/cmucl/
@ 2024-06-11 19:50 Ulrich Müller
  0 siblings, 0 replies; 3+ messages in thread
From: Ulrich Müller @ 2024-06-11 19:50 UTC (permalink / raw
  To: gentoo-commits

commit:     29ca91f7ef44417a7a126bee2bd7765a25f65bd6
Author:     Ulrich Müller <ulm <AT> gentoo <DOT> org>
AuthorDate: Tue Jun 11 19:46:48 2024 +0000
Commit:     Ulrich Müller <ulm <AT> gentoo <DOT> org>
CommitDate: Tue Jun 11 19:50:25 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=29ca91f7

dev-lisp/cmucl: add 21e

Closes: https://bugs.gentoo.org/925279
Signed-off-by: Ulrich Müller <ulm <AT> gentoo.org>

 dev-lisp/cmucl/Manifest                      |   2 +
 dev-lisp/cmucl/cmucl-21e.ebuild              | 106 +++++++++++++++++++++++++++
 dev-lisp/cmucl/files/cmucl-21e-version.patch |   9 +++
 dev-lisp/cmucl/metadata.xml                  |   1 +
 4 files changed, 118 insertions(+)

diff --git a/dev-lisp/cmucl/Manifest b/dev-lisp/cmucl/Manifest
index cd8cafb04080..99b0ed85820d 100644
--- a/dev-lisp/cmucl/Manifest
+++ b/dev-lisp/cmucl/Manifest
@@ -1,2 +1,4 @@
 DIST cmucl-21c-x86-linux.tar.bz2 11127872 BLAKE2B b9089a40b4a0738f9faccdfddb7b33256a561a07cedc3ef9b3ec7afddbbb9de493c2ffb9af4a8d6b6ce70ef857576870901a6b7a607f52bdaf8a0f53ddd2d07e SHA512 9097220aef612aa3d8367a86a86dc62d86d918190d2688f6e90d415c9f9d881f97f0829e9d310f700b014821d30bf5a15f7a05cdb9201c9deab10a7231e0bcb6
+DIST cmucl-21e-x86-linux.tar.bz2 11305452 BLAKE2B d7dde5afb0d6b0a42506c2a7bef09e93ddfb415eea1d41db95d63bdfc3d6f654859dabd641b4fd78c1ba4c36a6f6b5ac6318d4124a0cd21b389dd448e4bc109a SHA512 84193903a75356a28e14b4dc2f6c4dd20d6f0d424a24150c2f9b1094b4a91def4c85b8c5ade326487ca34a7705096c09109329f1eedba728e63e70b1dc011b5d
 DIST cmucl-src-21c.tar.bz2 6947775 BLAKE2B 828075c71ddf459d09076199af4a02f2294063bd9ef0beb6d4bcbb473dd0ff8cfdff7faa9416f640e125603301fa37c73a280db597bf4301c22fbe88c4cc2dbb SHA512 98ea0516b71af7c6f92b5f67f6c1545949fcd1dc95e1238a989c1c2858a75e2751e5eb765b29812ad5cc5de015333787dac2a63a9ddea9bb83cfd72fef6794f4
+DIST cmucl-src-21e.tar.bz2 7161287 BLAKE2B 1e52643917f05bbd2fa45f3cbed894506458a13047faf077388066035dfcb66440879c8cc4f79592b32dd5eb85679e3bb9fad5d9327f86e1c30e8446ffdda281 SHA512 fc2647fdd9adebe9c9a6a6398ef43203b750ff9c9437fec2b0c9b6fe2a50e430089308f0ff2362c3bc76724df9168c95293191e45489b3a5051942f63c0ed9b2

diff --git a/dev-lisp/cmucl/cmucl-21e.ebuild b/dev-lisp/cmucl/cmucl-21e.ebuild
new file mode 100644
index 000000000000..88d5d6bc3cc7
--- /dev/null
+++ b/dev-lisp/cmucl/cmucl-21e.ebuild
@@ -0,0 +1,106 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit toolchain-funcs
+
+MY_PV=${PV:0:3}
+
+DESCRIPTION="CMU Common Lisp is an implementation of ANSI Common Lisp"
+HOMEPAGE="https://www.cons.org/cmucl/"
+SRC_URI="
+	https://common-lisp.net/project/cmucl/downloads/release/${MY_PV}/cmucl-src-${MY_PV}.tar.bz2
+	https://common-lisp.net/project/cmucl/downloads/release/${MY_PV}/cmucl-${MY_PV}-x86-linux.tar.bz2
+"
+S="${WORKDIR}"
+
+LICENSE="public-domain"
+SLOT="0"
+KEYWORDS="-* ~x86"
+IUSE="doc gui source"
+
+CDEPEND=">=dev-lisp/asdf-2.33-r3:=
+	x11-libs/motif:0"
+DEPEND="${CDEPEND}
+	app-alternatives/bc
+	doc? ( virtual/latex-base )"
+RDEPEND="${CDEPEND}"
+
+TARGET=linux-4
+
+src_prepare() {
+	eapply "${FILESDIR}"/${PN}-21c-execstack-fixes.patch
+	eapply "${FILESDIR}"/${P}-version.patch
+	eapply_user
+	#cp "${FILESDIR}"/os-common.h src/lisp/ || die
+	cp /usr/share/common-lisp/source/asdf/build/asdf.lisp src/contrib/asdf/ || die
+}
+
+src_compile() {
+	local cmuopts=$(usex gui "" -u)
+	local buildimage="bin/lisp -batch"
+
+	env CC="$(tc-getCC)" bin/build.sh -v "-gentoo-${PR}" -C "" \
+		-o "${buildimage}" ${cmuopts} \
+		|| die "Cannot build the compiler"
+
+	# Compile up the asdf and defsystem modules
+	${TARGET}/lisp/lisp -noinit -nositeinit -batch << EOF || die
+(in-package :cl-user)
+(setf (ext:search-list "target:")
+	  '("$TARGET/" "src/"))
+(setf (ext:search-list "modules:")
+	  '("target:contrib/"))
+
+(compile-file "modules:asdf/asdf")
+(compile-file "modules:defsystem/defsystem")
+EOF
+
+	# Documentation
+	if use doc; then
+		pushd src/docs/cmu-user > /dev/null \
+			|| die "directory src/docs/cmu-user does not exist"
+		emake
+		cd ../internals || die "directory src/docs/internals does not exist"
+		emake
+		popd > /dev/null || die
+	fi
+}
+
+src_install() {
+	DOCDIR=share/doc/${PF} bin/make-dist.sh -S -g -G root -O root \
+		-M share/man/man1 -V ${MY_PV} -A x86 -o linux ${TARGET} \
+		|| die "Cannot build installation archive"
+	# Necessary otherwise tar will fail
+	dodir /usr
+	pushd "${D}"/usr > /dev/null || die
+	tar xzpf "${WORKDIR}"/cmucl-${MY_PV}-x86-linux.tar.gz \
+		|| die "Cannot install main system"
+	if use gui ; then
+		tar xzpf "${WORKDIR}"/cmucl-${MY_PV}-x86-linux.extra.tar.gz \
+			|| die "Cannot install extra files"
+	fi
+	if use source; then
+		# Necessary otherwise tar will fail
+		dodir /usr/share/common-lisp/source/${PN}
+		cd "${D}"/usr/share/common-lisp/source/${PN} || die
+		tar --strip-components 1 -xzpf "${WORKDIR}"/cmucl-src-${MY_PV}.tar.gz \
+			|| die "Cannot install sources"
+	fi
+	popd > /dev/null || die
+
+	# Install site config file
+	sed "s,@PF@,${PF},g ; s,@VERSION@,$(date +%F),g" \
+		< "${FILESDIR}"/site-init.lisp.in \
+		> "${D}"/usr/$(get_libdir)/cmucl/site-init.lisp \
+		|| die "Cannot fix site-init.lisp"
+	insinto /etc/common-lisp
+	doins "${FILESDIR}"/cmuclrc
+
+	# Documentation
+	if use doc; then
+		dodoc src/docs/cmu-user/cmu-user.pdf src/docs/internals/design.pdf
+		docompress -x /usr/share/doc/${PF}/{cmu-user,design}.pdf
+	fi
+}

diff --git a/dev-lisp/cmucl/files/cmucl-21e-version.patch b/dev-lisp/cmucl/files/cmucl-21e-version.patch
new file mode 100644
index 000000000000..204e1a396593
--- /dev/null
+++ b/dev-lisp/cmucl/files/cmucl-21e-version.patch
@@ -0,0 +1,9 @@
+--- cmucl/bin/build.sh
++++ cmucl/bin/build.sh
+@@ -40,5 +40,5 @@
+ ENABLE4="yes"
+ 
+-version=21d
++version=21e
+ SRCDIR=src
+ BINDIR=bin

diff --git a/dev-lisp/cmucl/metadata.xml b/dev-lisp/cmucl/metadata.xml
index bf312af3c421..f47933e812b4 100644
--- a/dev-lisp/cmucl/metadata.xml
+++ b/dev-lisp/cmucl/metadata.xml
@@ -31,6 +31,7 @@ ANSI Common Lisp standard. Here is a summary of its main features:
 </longdescription>
 <use>
 <flag name="doc">Installs package documentation</flag>
+<flag name="gui">Build CLX, CLM, or Hemlock</flag>
 <flag name="source">Include source code for CMUCL in installation</flag>
 <flag name="X">Build CLX, CLM, or Hemlock</flag>
 </use>


^ permalink raw reply related	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2024-06-11 19:50 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-06-11 19:50 [gentoo-commits] repo/gentoo:master commit in: dev-lisp/cmucl/files/, dev-lisp/cmucl/ Ulrich Müller
  -- strict thread matches above, loose matches on Subject: below --
2018-05-14 18:27 José María Alonso
2016-04-03 15:48 Andrey Grozin

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox