void-packages/srcpkgs/ccl/template
Đoàn Trần Công Danh c987560802 srcpkgs/c*: convert patches to -Np1
```sh
git grep -l '^patch_args=-Np0' "srcpkgs/$1*/template" |
while read template; do
	for p in ${template%/template}/patches/*; do
		sed -i '
			\,^[+-][+-][+-] /dev/null,b
			/^[*-]\+ [0-9]\+\(,[0-9]\+\)\? [*-]\+$/b
			s,^[*][*][*] ,&a/,
			/^--- /{
				s,\(^--- \)\(./\)*,\1a/,
				s,[.][Oo][Rr][Ii][Gg]\([	/]\),\1,
				s/[.][Oo][Rr][Ii][Gg]$//
				s/[.]patched[.]\([^.]\)/.\1/
				h
			}
			/^+++ -/{
				g
				s/^--- a/+++ b/
				b
			}
			s,\(^+++ \)\(./\)*,\1b/,
		' "$p"
	done
	sed -i '/^patch_args=/d' $template
done
```
2021-06-20 13:17:29 +07:00

72 lines
1.7 KiB
Bash

# Template file for 'ccl'
pkgname=ccl
version=1.12
revision=1
archs="i686* x86_64*"
create_wrksrc=yes
hostmakedepends="m4"
short_desc="Clozure Common Lisp interpreter and compiler"
maintainer="rc-05 <rc23@email.it>"
license="Apache-2.0"
homepage="https://ccl.clozure.com/"
distfiles="
https://github.com/Clozure/ccl/archive/v${version}.tar.gz
https://github.com/Clozure/ccl/releases/download/v${version}/linuxx86.tar.gz
"
checksum="
774a06b4fb6dc4b51dfb26da8e1cc809c605e7706c12180805d1be6f2885bd52
7fbdb04fb1b19f0307c517aa5ee329cb4a21ecc0a43afd1b77531e4594638796
"
nopie=1
nostrip=1
disable_parallel_build=1
python_version=3
case $XBPS_MACHINE in
x86_64*) _arch=64 ;;
i686-musl) broken="SIGSEGV accessing context->regs: address not mapped to object" ;;
*) _arch='' ;;
esac
post_extract() {
mv ccl-${version}/* .
vsed -i -e"/^COPT =/s/$/ -fcommon/" lisp-kernel/*/Makefile
}
do_build() {
# recompile kernel, mandatory for musl
cd "lisp-kernel/linuxx86${_arch:-32}"
make
cd ../..
./lx86cl$_arch -n -Q -b -e '(ccl:rebuild-ccl :full t)' -e '(ccl:quit)'
}
do_install() {
find . -type d -name .svn -exec rm -rf '{}' +
find . -name '*.o' -delete
find . -name '*.*fsl' -delete
vmkdir usr/lib/$pkgname
vcopy lx86cl$_arch usr/lib/$pkgname
vcopy lx86cl$_arch.image usr/lib/$pkgname
cat > exe.sh <<EOF
#!/bin/sh
exec /usr/lib/$pkgname/"lx86cl$_arch" "\$@"
EOF
vbin exe.sh ccl
# vcopy compiler usr/lib/$pkgname
# vcopy level-0 usr/lib/$pkgname
# vcopy level-1 usr/lib/$pkgname
vcopy lib usr/lib/$pkgname
vcopy library usr/lib/$pkgname
vcopy scripts usr/lib/$pkgname
vcopy tools usr/lib/$pkgname
vcopy xdump usr/lib/$pkgname
vmkdir usr/share/examples/$pkgname
vcopy "examples/*" usr/share/examples/$pkgname
}