blob: 45d76094af52309ca6049455229f2f7eac12dcbe (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
|
# Contributor: Jakub Jirutka <jakub@jirutka.cz>
# Maintainer: Jakub Jirutka <jakub@jirutka.cz>
#
# TODO: Separate packages into subpackages?
# TODO: Install even packages from the full tarball?
# TODO: Figure out how to run tests.
pkgname=racket
pkgver=6.10.1
pkgrel=0
pkgdesc="A general purpose programming language in the Lisp-Scheme family"
url="https://racket-lang.org/"
arch="all"
license="LGPL-3.0-or-later MIT"
makedepends="chrpath libffi-dev libucontext-dev paxmark"
subpackages="$pkgname-dev $pkgname-doc"
source="https://download.racket-lang.org/releases/$pkgver/installers/$pkgname-minimal-$pkgver-src.tgz
paxmark.patch
musl-fixes.patch
makefile-fix-bashism.patch"
builddir="$srcdir/$pkgname-$pkgver"
prepare() {
default_prepare
cd "$builddir"
# Remove bundled libffi to be sure that system-provided is used.
rm -Rf src/foreign/libffi
}
build() {
cd "$builddir"/src
export CFLAGS="$CFLAGS -D_GNU_SOURCE"
export LDFLAGS="$LDFLAGS -lucontext"
./configure \
--build=$CBUILD \
--host=$CHOST \
--target=$CTARGET \
--prefix=/usr \
--sysconfdir=/etc \
--enable-shared \
--disable-docs
make
}
package() {
cd "$builddir"/src
make install DESTDIR="$pkgdir"
cd "$pkgdir"
# Remove redundant RPATH.
chrpath -d usr/bin/racket usr/lib/racket/gracket
# Needed when running on Grsecurity kernel.
paxmark m usr/bin/racket
paxmark m usr/lib/racket/gracket
mkdir -p usr/share/licenses/$pkgname
mv usr/share/racket/COPYING* usr/share/licenses/$pkgname/
rm -Rf usr/share/applications
}
sha512sums="d342e9e3f3736ad7472e4baf6ada5e0e849377fcfeda4e38d8c0d8b11520ce97be0f37cceca36d7436858fec5fa5fc669fbe7eb0d7f97acd5fee741253c01c49 racket-minimal-6.10.1-src.tgz
ff7804e37cbab237921f7d4c334f6cbb2909e9284b7b2cec1dfd3e73ec189b8ecf0cb0cabd1abedb09020f2a57ad4c32088ea73e5cb71afdafce39a7a718b10c paxmark.patch
6af0ae984ac54f167f0513795905e9dc845e1c1554935f73958d4e21c5fad35eca791866cfdf94dfcee586ec28335d90520d769010c63cd6ab528e6be3f2c21c musl-fixes.patch
1a96718e6a065bd08f0ff046e799fd4d7657d99789b2cdda8cf7cdd8c2d91742dd34fb43f4c6fabde89a764e073bdecdd96e2caeee49feaac242d30b17d6422b makefile-fix-bashism.patch"
|