mirror of
https://github.com/fosslinux/live-bootstrap.git
synced 2026-03-04 18:35:24 +01:00
This way, heirloom-devtools is only linked to a libc with a CDDL-compatible license, making it fully redistributable. Heirloom yacc doesn't work properly with musl libc, but luckily byacc can do its job just fine, so we only need heirloom lex now. Thanks to the more complete libc, and bash being available, heirloom's bootstrap is significantly simplified.
45 lines
1,001 B
Bash
45 lines
1,001 B
Bash
#!/bin/sh
|
|
|
|
# SPDX-FileCopyrightText: 2021 Andrius Štikonas <andrius@stikonas.eu>
|
|
# SPDX-FileCopyrightText: 2021-22 fosslinux <fosslinux@aussies.space>
|
|
# SPDX-FileCopyrightText: 2024 Gábor Stefanik <netrolller.3d@gmail.com>
|
|
#
|
|
# SPDX-License-Identifier: GPL-3.0-or-later
|
|
|
|
set -ex
|
|
|
|
# Check tarball checksums
|
|
checksum-transcriber sources
|
|
sha256sum -c sources.SHA256SUM
|
|
|
|
mkdir build src
|
|
cd build
|
|
|
|
# Extract
|
|
cp ${DISTFILES}/${pkg}.tgz ../src/${pkg}.tar.gz
|
|
gunzip -f ../src/${pkg}.tar.gz
|
|
tar xf ../src/${pkg}.tar
|
|
rm -r ../src/
|
|
cd ${pkg}
|
|
|
|
# Prepare and patch
|
|
cp ../../files/Makefile .
|
|
patch -Np0 -i ../../patches/meslibc.patch
|
|
|
|
# Build yacc
|
|
make CC=tcc AR=tcc\ -ar CFLAGS=-DMAXPATHLEN=100\ -DEILSEQ=84\ -DMB_LEN_MAX=100 LDFLAGS=-lgetopt\ -static RANLIB=true
|
|
|
|
# Install yacc
|
|
install yacc ${BINDIR}/yacc
|
|
|
|
cd ../..
|
|
|
|
# Checksums
|
|
if match x${UPDATE_CHECKSUMS} xTrue; then
|
|
sha256sum -o ${pkg}.checksums \
|
|
/usr/bin/yacc
|
|
|
|
install ${pkg}.checksums ${SRCDIR}
|
|
else
|
|
sha256sum -c ${pkg}.checksums
|
|
fi
|