diff --git a/sys-devel/bison/bison-2.4.3.bep b/sys-devel/bison/bison-2.4.3.bep new file mode 100644 index 000000000..1d6c85945 --- /dev/null +++ b/sys-devel/bison/bison-2.4.3.bep @@ -0,0 +1,25 @@ +DESCRIPTION="bison - A yacc-compatible parser generator" +HOMEPAGE="http://www.gnu.org/software/bison/bison.html" +SRC_URI="http://ftp.gnu.org/gnu/bison/bison-2.4.3.tar.gz" +CHECKSUM_MD5="ea45c778b36bdc7a720096819e292a73" +REVISION="2" +STATUS_HAIKU="stable" +DEPEND="" +BUILD { + cd bison-2.4.3 + ./configure --prefix=/boot/common --disable-nls + make +} + +INSTALL { + cd bison-2.4.3 + make install +} + +TEST { + cd bison-2.4.3 + make check +} + +LICENSE="GNU GPL v3" +COPYRIGHT="1992-2010 Free Software Foundation, Inc." diff --git a/sys-devel/bison/patches/bison-2.4.3.patch b/sys-devel/bison/patches/bison-2.4.3.patch new file mode 100644 index 000000000..eecc9f41e --- /dev/null +++ b/sys-devel/bison/patches/bison-2.4.3.patch @@ -0,0 +1,67 @@ +diff -urN bison-2.4.3/lib/binary-io.h bison-2.4.3-haiku/lib/binary-io.h +--- bison-2.4.3/lib/binary-io.h 2010-02-06 21:15:26.051118080 +0000 ++++ bison-2.4.3-haiku/lib/binary-io.h 2011-01-26 11:15:38.000000000 +0000 +@@ -19,24 +19,13 @@ + #define _BINARY_H + + /* For systems that distinguish between text and binary I/O. +- O_BINARY is usually declared in . */ ++ O_BINARY is guaranteed by the gnulib . */ + #include + + /* The MSVC7 doesn't like to be included after '#define fileno ...', + so we include it here first. */ + #include + +-#if !defined O_BINARY && defined _O_BINARY +- /* For MSC-compatible compilers. */ +-# define O_BINARY _O_BINARY +-# define O_TEXT _O_TEXT +-#endif +-#if defined __BEOS__ || defined __HAIKU__ +- /* BeOS 5 and Haiku have O_BINARY and O_TEXT, but they have no effect. */ +-# undef O_BINARY +-# undef O_TEXT +-#endif +- + /* SET_BINARY (fd); + changes the file descriptor fd to perform binary I/O. */ + #if O_BINARY +@@ -58,8 +47,6 @@ + # endif + #else + /* On reasonable systems, binary I/O is the default. */ +-# undef O_BINARY +-# define O_BINARY 0 + # define SET_BINARY(fd) /* do nothing */ ((void) 0) + #endif + +diff -urN bison-2.4.3/src/location.c bison-2.4.3-haiku/src/location.c +--- bison-2.4.3/src/location.c 2010-08-06 00:37:58.001572864 +0000 ++++ bison-2.4.3-haiku/src/location.c 2011-01-26 10:23:20.032505856 +0000 +@@ -141,11 +141,11 @@ + /* Must search in reverse since the file name field may + * contain `.' or `:'. */ + char *delim = strrchr (loc_str, '.'); +- aver (delim); ++ aver (delim != NULL); + *delim = '\0'; + bound->column = atoi (delim+1); + delim = strrchr (loc_str, ':'); +- aver (delim); ++ aver (delim != NULL); + *delim = '\0'; + bound->line = atoi (delim+1); + bound->file = uniqstr_new (loc_str); +diff -urN bison-2.4.3/src/muscle_tab.c bison-2.4.3-haiku/src/muscle_tab.c +--- bison-2.4.3/src/muscle_tab.c 2010-08-06 00:37:58.065011712 +0000 ++++ bison-2.4.3-haiku/src/muscle_tab.c 2011-01-26 10:23:20.033030144 +0000 +@@ -338,7 +338,7 @@ + { + location loc; + char const *value = muscle_find_const (key); +- aver (value); ++ aver (value != NULL); + aver (*value == '['); + aver (*++value == '['); + while (*++value)