mirror of
https://github.com/archlinuxarm/PKGBUILDs.git
synced 2024-11-08 22:45:43 +00:00
added extra/sbcl
This commit is contained in:
parent
32a54e17dd
commit
a29145dc41
4 changed files with 149 additions and 0 deletions
78
extra/sbcl/PKGBUILD
Normal file
78
extra/sbcl/PKGBUILD
Normal file
|
@ -0,0 +1,78 @@
|
|||
# $Id$
|
||||
# Contributor: John Proctor <jproctor@prium.net>
|
||||
# Contributor: Daniel White <daniel@whitehouse.id.au>
|
||||
# Maintainer: Juergen Hoetzel <juergen@archlinux.org>
|
||||
# Contributor: Leslie Polzer (skypher)
|
||||
|
||||
# ALARM: Kevin Mihelich <kevin@archlinuxarm.org>
|
||||
# - disable sb-thread, not supported on ARM
|
||||
|
||||
buildarch=4
|
||||
|
||||
pkgname=sbcl
|
||||
pkgver=1.2.14
|
||||
pkgrel=1
|
||||
pkgdesc="Steel Bank Common Lisp"
|
||||
url="http://www.sbcl.org/"
|
||||
arch=('i686' 'x86_64')
|
||||
license=('custom')
|
||||
depends=('glibc' 'zlib')
|
||||
provides=('common-lisp' 'cl-asdf')
|
||||
makedepends=('sbcl')
|
||||
install=sbcl.install
|
||||
source=("http://downloads.sourceforge.net/project/sbcl/sbcl/$pkgver/$pkgname-$pkgver-source.tar.bz2"
|
||||
"arch-fixes.lisp")
|
||||
md5sums=('b7a7f95808a2a6614d6dcb402b744d9e'
|
||||
'7ac0c1936547f4278198b8bf7725204d')
|
||||
|
||||
|
||||
build() {
|
||||
cd "$srcdir/$pkgname-$pkgver"
|
||||
|
||||
export CFLAGS+=" -D_GNU_SOURCE -fno-omit-frame-pointer -DSBCL_HOME=/usr/lib/sbcl"
|
||||
export GNUMAKE="make"
|
||||
|
||||
# build system uses LINKFLAGS and OS_LIBS to build LDFLAGS
|
||||
export LINKFLAGS="$LDFLAGS"
|
||||
unset LDFLAGS
|
||||
unset MAKEFLAGS
|
||||
|
||||
# Make a multi-threaded SBCL, disable LARGEFILE
|
||||
cat >customize-target-features.lisp <<EOF
|
||||
(lambda (features)
|
||||
(flet ((enable (x) (pushnew x features))
|
||||
(disable (x) (setf features (remove x features))))
|
||||
(disable :sb-thread)
|
||||
(enable :sb-core-compression)
|
||||
(disable :largefile)))
|
||||
EOF
|
||||
|
||||
sh make.sh sbcl --prefix=/usr
|
||||
make -C doc/manual info
|
||||
}
|
||||
|
||||
package() {
|
||||
cd "$srcdir/$pkgname-$pkgver"
|
||||
|
||||
# cannot have both SBCL_HOME and INSTALL_ROOT
|
||||
SBCL_HOME="" INSTALL_ROOT="$pkgdir/usr" sh install.sh
|
||||
|
||||
src/runtime/sbcl --core output/sbcl.core --script "${srcdir}/arch-fixes.lisp"
|
||||
mv sbcl-new.core "${pkgdir}/usr/lib/sbcl/sbcl.core"
|
||||
|
||||
# sources
|
||||
mkdir -p "$pkgdir/usr/share/sbcl-source"
|
||||
cp -R -t "$pkgdir/usr/share/sbcl-source" "$srcdir/$pkgname-$pkgver/"{src,contrib}
|
||||
|
||||
# license
|
||||
install -D -m644 "$srcdir/$pkgname-$pkgver/COPYING" \
|
||||
"$pkgdir/usr/share/licenses/$pkgname/license.txt"
|
||||
|
||||
# drop unwanted files
|
||||
find "$pkgdir" \( -name Makefile -o -name .cvsignore \) -delete
|
||||
find "$pkgdir/usr/share/sbcl-source" -type f \
|
||||
\( -name \*.fasl -o -name \*.o -o -name \*.log -o -name \*.so -o -name a.out \) -delete
|
||||
|
||||
rm "$pkgdir/usr/share/sbcl-source/src/runtime/sbcl"{,.nm}
|
||||
|
||||
}
|
21
extra/sbcl/arch-fixes.lisp
Normal file
21
extra/sbcl/arch-fixes.lisp
Normal file
|
@ -0,0 +1,21 @@
|
|||
(in-package "COMMON-LISP-USER")
|
||||
|
||||
(let* ((parent (make-pathname :directory '(:absolute "usr" "share" "sbcl-source")))
|
||||
(src
|
||||
(merge-pathnames
|
||||
(make-pathname :directory '(:relative "src" :wild-inferiors)
|
||||
:name :wild :type :wild)
|
||||
parent))
|
||||
(contrib
|
||||
(merge-pathnames
|
||||
(make-pathname :directory '(:relative "contrib" :wild-inferiors)
|
||||
:name :wild :type :wild)
|
||||
parent)))
|
||||
(setf (logical-pathname-translations "SYS")
|
||||
`(("SYS:SRC;**;*.*.*" ,src)
|
||||
("SYS:CONTRIB;**;*.*.*" ,contrib))))
|
||||
|
||||
(ignore-errors
|
||||
(sb-ext:gc :full t)
|
||||
(sb-ext:enable-debugger)
|
||||
(sb-ext:save-lisp-and-die "sbcl-new.core"))
|
18
extra/sbcl/sbcl.install
Normal file
18
extra/sbcl/sbcl.install
Normal file
|
@ -0,0 +1,18 @@
|
|||
info_dir=/usr/share/info
|
||||
info_files=(asdf.info sbcl.info)
|
||||
|
||||
post_install() {
|
||||
for f in ${info_files[@]}; do
|
||||
install-info ${info_dir}/$f.gz ${info_dir}/dir 2> /dev/null
|
||||
done
|
||||
}
|
||||
|
||||
post_upgrade() {
|
||||
post_install $1
|
||||
}
|
||||
|
||||
pre_remove() {
|
||||
for f in ${info_files[@]}; do
|
||||
install-info --delete ${info_dir}/$f.gz ${info_dir}/dir 2> /dev/null
|
||||
done
|
||||
}
|
32
extra/sbcl/texinfo-4.13a-data_types.patch
Normal file
32
extra/sbcl/texinfo-4.13a-data_types.patch
Normal file
|
@ -0,0 +1,32 @@
|
|||
diff -up texinfo-4.13/info/window.c_old texinfo-4.13/info/window.c
|
||||
--- texinfo-4.13/info/window.c_old 2009-08-04 13:46:15.000000000 +0200
|
||||
+++ texinfo-4.13/info/window.c 2009-08-04 13:47:29.000000000 +0200
|
||||
@@ -1581,7 +1581,7 @@ process_node_text (WINDOW *win, char *st
|
||||
const char *carried_over_ptr;
|
||||
size_t carried_over_len, carried_over_count;
|
||||
const char *cur_ptr = mbi_cur_ptr (iter);
|
||||
- int cur_len = mb_len (mbi_cur (iter));
|
||||
+ size_t cur_len = mb_len (mbi_cur (iter));
|
||||
int replen;
|
||||
int delim = 0;
|
||||
int rc;
|
||||
@@ -1754,7 +1754,7 @@ clean_manpage (char *manpage)
|
||||
mbi_advance (iter))
|
||||
{
|
||||
const char *cur_ptr = mbi_cur_ptr (iter);
|
||||
- int cur_len = mb_len (mbi_cur (iter));
|
||||
+ size_t cur_len = mb_len (mbi_cur (iter));
|
||||
|
||||
if (cur_len == 1)
|
||||
{
|
||||
@@ -1852,8 +1852,8 @@ window_scan_line (WINDOW *win, int line,
|
||||
mbi_advance (iter))
|
||||
{
|
||||
const char *cur_ptr = mbi_cur_ptr (iter);
|
||||
- int cur_len = mb_len (mbi_cur (iter));
|
||||
- int replen;
|
||||
+ size_t cur_len = mb_len (mbi_cur (iter));
|
||||
+ size_t replen;
|
||||
|
||||
if (cur_ptr >= endp)
|
||||
break;
|
Loading…
Reference in a new issue