1SUMMARY="A yacc-compatible parser generator"
2DESCRIPTION="Bison is a general-purpose parser generator that converts an \
3annotated context-free grammar into an LALR(1) or GLR parser for that \
4grammar. Once you are proficient with Bison, you can use it to develop a wide \
5range of language parsers, from those used in simple desk calculators to \
6complex programming languages.
7
8Bison is upward compatible with Yacc: all properly-written Yacc grammars ought \
9to work with Bison with no change. Anyone familiar with Yacc should be able to \
10use Bison with little trouble. You need to be fluent in C or C++ programming \
11in order to use Bison."
12HOMEPAGE="http://www.gnu.org/software/bison/bison.html"
13COPYRIGHT="1992-2018 Free Software Foundation, Inc."
14LICENSE="GNU GPL v3"
15REVISION="1"
16SOURCE_URI="https://ftpmirror.gnu.org/bison/bison-$portVersion.tar.xz
17	https://ftp.gnu.org/gnu/bison/bison-$portVersion.tar.xz"
18CHECKSUM_SHA256="075cef2e814642e30e10e8155e93022e4a91ca38a65aa1d5467d4e969f97f338"
19PATCHES="bison-${portVersion}.patchset"
20
21ARCHITECTURES="all ?arm ?ppc"
22SECONDARY_ARCHITECTURES="x86 x86_gcc2"
23
24PROVIDES="
25	bison$secondaryArchSuffix = $portVersion compat >= 2
26	cmd:bison$secondaryArchSuffix = $portVersion compat >= 2
27	cmd:yacc$secondaryArchSuffix
28	devel:liby$secondaryArchSuffix = $portVersion compat >= 2
29	"
30REQUIRES="
31	haiku$secondaryArchSuffix
32	cmd:m4
33	"
34
35BUILD_REQUIRES="
36	haiku${secondaryArchSuffix}_devel
37	"
38BUILD_PREREQUIRES="
39	cmd:awk
40	cmd:diff
41	cmd:flex
42	cmd:gcc$secondaryArchSuffix
43	cmd:help2man
44	cmd:ld$secondaryArchSuffix
45	cmd:m4
46	cmd:make
47	cmd:perl
48	cmd:sed
49	"
50
51TEST_REQUIRES="
52	cmd:doxygen
53	cmd:find
54	cmd:g++$secondaryArchSuffix
55	"
56
57defineDebugInfoPackage bison$secondaryArchSuffix \
58	$binDir/bison
59
60BUILD()
61{
62	MAKEINFO=true \
63	runConfigure ./configure
64	make $jobArgs
65}
66
67INSTALL()
68{
69	make install
70
71	prepareInstalledDevelLibs liby
72
73	rm $libDir/charset.alias
74	rmdir $libDir
75}
76
77TEST()
78{
79	make check
80}
81