mirror of
https://github.com/flatcar/scripts.git
synced 2025-08-15 00:46:58 +02:00
app-alternatives/yacc: Sync with Gentoo
It's from Gentoo commit e773377026c28a1324d074e8af1039cc8c432eb4.
This commit is contained in:
parent
54dc427086
commit
d769f45218
@ -3,54 +3,42 @@
|
||||
|
||||
EAPI=8
|
||||
|
||||
DESCRIPTION="yacc symlinks"
|
||||
HOMEPAGE="https://wiki.gentoo.org/wiki/Project:Base/Alternatives"
|
||||
SRC_URI=""
|
||||
S=${WORKDIR}
|
||||
ALTERNATIVES=(
|
||||
"bison:>=sys-devel/bison-3.8.2-r1"
|
||||
byacc:dev-util/byacc
|
||||
"reference:>=dev-util/yacc-1.9.1-r7"
|
||||
)
|
||||
|
||||
LICENSE="CC0-1.0"
|
||||
SLOT="0"
|
||||
inherit app-alternatives
|
||||
|
||||
DESCRIPTION="yacc symlinks"
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
|
||||
IUSE="+bison byacc reference"
|
||||
REQUIRED_USE="^^ ( bison byacc reference )"
|
||||
|
||||
RDEPEND="
|
||||
bison? ( >=sys-devel/bison-3.8.2-r1 )
|
||||
byacc? ( dev-util/byacc )
|
||||
reference? ( >=dev-util/yacc-1.9.1-r7 )
|
||||
!<dev-util/yacc-1.9.1-r7
|
||||
!<sys-devel/bison-3.8.2-r1
|
||||
"
|
||||
|
||||
src_install() {
|
||||
if use bison; then
|
||||
local alt=$(get_alternative)
|
||||
|
||||
case ${alt} in
|
||||
# bison installs its own small wrapper script 'yacc-bison'
|
||||
# around bison(1).
|
||||
dosym yacc.bison /usr/bin/yacc
|
||||
newman - yacc.1 <<<".so yacc.bison.1"
|
||||
bison) alt=yacc.bison;;
|
||||
reference) alt=yacc-reference;;
|
||||
esac
|
||||
|
||||
# Leaving this for now to be safe, as it's closer to pre-alternatives
|
||||
# status quo to leave it unset and let autoconf probe for Bison by itself
|
||||
# as it prefers it anyway, and might be a CPP-like situation wrt
|
||||
# calling bison or bison -y if YACC is set.
|
||||
#newenvd - 90yacc <<-EOF
|
||||
# YACC=yacc.bison
|
||||
#EOF
|
||||
elif use byacc; then
|
||||
dosym byacc /usr/bin/yacc
|
||||
newman - yacc.1 <<<".so byacc.1"
|
||||
dosym "${alt}" /usr/bin/yacc
|
||||
newman - yacc.1 <<<".so ${alt}.1"
|
||||
|
||||
# Leaving this for now to be safe, as it's closer to pre-alternatives
|
||||
# status quo to leave it unset and let autoconf probe for Bison by itself
|
||||
# as it prefers it anyway, and might be a CPP-like situation wrt
|
||||
# calling bison or bison -y if YACC is set.
|
||||
if [[ ${alt} != yacc.bison ]]; then
|
||||
newenvd - 90yacc <<-EOF
|
||||
YACC=byacc
|
||||
YACC=${alt}
|
||||
EOF
|
||||
elif use reference; then
|
||||
dosym yacc-reference /usr/bin/yacc
|
||||
newman - yacc.1 <<<".so yacc-reference.1"
|
||||
|
||||
newenvd - 90yacc <<-EOF
|
||||
YACC=yacc
|
||||
EOF
|
||||
else
|
||||
die "Invalid USE flag combination (broken REQUIRED_USE?)"
|
||||
fi
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user