Source-Changes-HG archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

[src/trunk]: src/external/bsd/byacc add build glue.



details:   https://anonhg.NetBSD.org/src/rev/3063567318fe
branches:  trunk
changeset: 748606:3063567318fe
user:      christos <christos%NetBSD.org@localhost>
date:      Thu Oct 29 00:56:35 2009 +0000

description:
add build glue.

diffstat:

 external/bsd/byacc/Makefile         |    5 +
 external/bsd/byacc/Makefile.inc     |   13 ++
 external/bsd/byacc/bin/Makefile     |    9 +
 external/bsd/byacc/bin/yacc.1       |  196 ++++++++++++++++++++++++++++++++++++
 external/bsd/byacc/byacc2netbsd     |  131 ++++++++++++++++++++++++
 external/bsd/byacc/include/config.h |    6 +
 6 files changed, 360 insertions(+), 0 deletions(-)

diffs (truncated from 384 to 300 lines):

diff -r 3e59d5eeb431 -r 3063567318fe external/bsd/byacc/Makefile
--- /dev/null   Thu Jan 01 00:00:00 1970 +0000
+++ b/external/bsd/byacc/Makefile       Thu Oct 29 00:56:35 2009 +0000
@@ -0,0 +1,5 @@
+#      $NetBSD: Makefile,v 1.1 2009/10/29 00:56:35 christos Exp $
+
+SUBDIR=        bin
+
+.include <bsd.subdir.mk>
diff -r 3e59d5eeb431 -r 3063567318fe external/bsd/byacc/Makefile.inc
--- /dev/null   Thu Jan 01 00:00:00 1970 +0000
+++ b/external/bsd/byacc/Makefile.inc   Thu Oct 29 00:56:35 2009 +0000
@@ -0,0 +1,13 @@
+#      $NetBSD: Makefile.inc,v 1.1 2009/10/29 00:56:35 christos Exp $
+
+WARNS=4
+
+.include <bsd.own.mk>
+
+BINDIR?= /usr/bin
+
+IDIST= ${NETBSDSRCDIR}/external/bsd/byacc/dist
+
+CPPFLAGS+= -DHAVE_CONFIG_H -I${.CURDIR}/../include -I${IDIST}
+
+.PATH: ${IDIST}
diff -r 3e59d5eeb431 -r 3063567318fe external/bsd/byacc/bin/Makefile
--- /dev/null   Thu Jan 01 00:00:00 1970 +0000
+++ b/external/bsd/byacc/bin/Makefile   Thu Oct 29 00:56:35 2009 +0000
@@ -0,0 +1,9 @@
+#      $NetBSD: Makefile,v 1.1 2009/10/29 00:56:35 christos Exp $
+
+.include "bsd.own.mk"
+
+PROG=  yacc
+SRCS=  closure.c error.c lalr.c lr0.c main.c mkpar.c output.c reader.c \
+       skeleton.c symtab.c verbose.c warshall.c graph.c
+
+.include <bsd.prog.mk>
diff -r 3e59d5eeb431 -r 3063567318fe external/bsd/byacc/bin/yacc.1
--- /dev/null   Thu Jan 01 00:00:00 1970 +0000
+++ b/external/bsd/byacc/bin/yacc.1     Thu Oct 29 00:56:35 2009 +0000
@@ -0,0 +1,196 @@
+.\"    $NetBSD: yacc.1,v 1.1 2009/10/29 00:56:35 christos Exp $
+.\"
+.\" Copyright (c) 1989, 1990 The Regents of the University of California.
+.\" All rights reserved.
+.\"
+.\" This code is derived from software contributed to Berkeley by
+.\" Robert Paul Corbett.
+.\"
+.\" Redistribution and use in source and binary forms, with or without
+.\" modification, are permitted provided that the following conditions
+.\" are met:
+.\" 1. Redistributions of source code must retain the above copyright
+.\"    notice, this list of conditions and the following disclaimer.
+.\" 2. Redistributions in binary form must reproduce the above copyright
+.\"    notice, this list of conditions and the following disclaimer in the
+.\"    documentation and/or other materials provided with the distribution.
+.\" 3. Neither the name of the University nor the names of its contributors
+.\"    may be used to endorse or promote products derived from this software
+.\"    without specific prior written permission.
+.\"
+.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
+.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+.\" ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
+.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+.\" SUCH DAMAGE.
+.\"
+.\"    from: @(#)yacc.1        5.7 (Berkeley) 7/30/91
+.\"    $NetBSD: yacc.1,v 1.1 2009/10/29 00:56:35 christos Exp $
+.\"
+.Dd October 29, 2009
+.Dt YACC 1
+.Os
+.Sh NAME
+.Nm yacc
+.Nd an
+.Tn LALR(1)
+parser generator
+.Sh SYNOPSIS
+.Nm
+.Op Fl dglrtv
+.Op Fl b Ar prefix
+.Op Fl o Ar outputfile
+.Op Fl p Ar symbol_prefix
+.Ar filename
+.Sh DESCRIPTION
+.Nm
+reads the grammar specification in the file
+.Ar filename
+and generates an
+.Tn LR(1)
+parser for it.
+The parsers consist of a set of
+.Tn LALR(1)
+parsing tables and a driver routine
+written in the C programming language.
+.Nm
+normally writes the parse tables and the driver routine to the file
+.Pa y.tab.c .
+.Pp
+The following options are available:
+.Bl -tag -width Ar
+.It Fl b Ar prefix
+The
+.Fl b
+option changes the prefix prepended to the output file names to
+the string denoted by
+.Ar prefix .
+The default prefix is the character
+.Ar y .
+.It Fl d
+The
+.Fl d
+option causes the header file
+.Pa y.tab.h
+to be written.
+.It Fl g
+The
+.Fl g
+option causes a graphical description of the generated LALR(1) parser to
+be written to the file
+.Pa y.dot
+in graphviz format, ready to be processed by
+.Xr dot 1 .
+.It Fl l
+If the
+.Fl l
+option is not specified,
+.Nm
+will insert #line directives in the generated code.
+The #line directives let the C compiler relate errors in the
+generated code to the user's original code.
+If the
+.Fl l
+option is specified,
+.Nm
+will not insert the #line directives.
+#line directives specified by the user will be retained.
+.It Fl o Ar outputfile
+The
+.Fl o
+option specifies an explicit output file name should be used instead
+of the default.
+.It Fl p Ar symbol_prefix
+The
+.Fl p
+option changes the prefix prepended to yacc-generated symbols to
+the string denoted by
+.Ar symbol_prefix .
+The default prefix is the string
+.Ar yy .
+.It Fl r
+The
+.Fl r
+option causes
+.Nm
+to produce separate files for code and tables.
+The code file is named
+.Pa y.code.c ,
+and the tables file is named
+.Pa y.tab.c .
+.It Fl t
+The
+.Fl t
+option changes the preprocessor directives generated by
+.Nm
+so that debugging statements will be incorporated in the compiled code.
+.It Fl v
+The
+.Fl v
+option causes a human-readable description of the generated parser to
+be written to the file
+.Pa y.output .
+.El
+.Sh ENVIRONMENT
+The following environment variable is referenced by
+.Nm :
+.Bl -tag -width TMPDIR
+.It Ev TMPDIR
+If the environment variable
+.Ev TMPDIR
+is set, the string denoted by
+.Ev TMPDIR
+will be used as the name of the directory where the temporary
+files are created.
+.El
+.Sh TABLES
+The names of the tables generated by this version of
+.Nm
+are
+.Dq yylhs ,
+.Dq yylen ,
+.Dq yydefred ,
+.Dq yydgoto ,
+.Dq yysindex ,
+.Dq yyrindex ,
+.Dq yygindex ,
+.Dq yytable ,
+and
+.Dq yycheck .
+Two additional tables,
+.Dq yyname
+and
+.Dq yyrule ,
+are created if
+.Dv YYDEBUG
+is defined and non-zero.
+.Sh FILES
+.Bl -tag -width /tmp/yacc.uXXXXXXXX -compact
+.It Pa y.code.c
+.It Pa y.tab.c
+.It Pa y.tab.h
+.It Pa y.output
+.It Pa /tmp/yacc.aXXXXXX
+.It Pa /tmp/yacc.tXXXXXX
+.It Pa /tmp/yacc.uXXXXXX
+.El
+.Sh DIAGNOSTICS
+If there are rules that are never reduced, the number of such rules is
+written to the standard error.
+If there are any
+.Tn LALR(1)
+conflicts, the number of conflicts is also written
+to the standard error.
+.\" .Sh SEE ALSO
+.\" .Xr yyfix 1
+.Sh STANDARDS
+The
+.Nm
+utility conforms to
+.St -p1003.2 .
diff -r 3e59d5eeb431 -r 3063567318fe external/bsd/byacc/byacc2netbsd
--- /dev/null   Thu Jan 01 00:00:00 1970 +0000
+++ b/external/bsd/byacc/byacc2netbsd   Thu Oct 29 00:56:35 2009 +0000
@@ -0,0 +1,131 @@
+#! /bin/sh
+#
+#      $NetBSD: byacc2netbsd,v 1.1 2009/10/29 00:56:35 christos Exp $
+#
+# Copyright (c) 2000 The NetBSD Foundation, Inc.
+# All rights reserved.
+#
+# Redistribution and use in source and binary forms, with or without
+# modification, are permitted provided that the following conditions
+# are met:
+# 1. Redistributions of source code must retain the above copyright
+#    notice, this list of conditions and the following disclaimer.
+# 2. Redistributions in binary form must reproduce the above copyright
+#    notice, this list of conditions and the following disclaimer in the
+#    documentation and/or other materials provided with the distribution.
+#
+# THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
+# ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
+# TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+# PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
+# BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
+# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
+# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
+# POSSIBILITY OF SUCH DAMAGE.
+#
+# byacc2netbsd:  convert a byacc tree into a
+# netbsd byacc source tree, under src/external/bsd/byacc/dist,
+# based on byacc2netbsd by Bernd Ernesti and changes by Simon Burge
+#
+# Rough instructions for importing new byacc release:
+#
+#      $ cd /some/where/temporary
+#      $ tar xpfz /new/byacc/release/tar/file
+#      $ sh /usr/src/external/bsd/byacc/dist/byacc2netbsd byacc-20091027 `pwd`
+#      $ cd src/external/bsd/byacc/dist
+#      $ cvs import -m "Import byacc 20091027" src/external/bsd/byacc/dist FLEX byacc-20091027
+#      $ cd ../../../../../byacc-20091027
+#      $ run ./configure
+#      $ run make
+#      check the config file and copy it to /usr/src/external/bsd/byacc/include
+#      check the manual page against our copy if there are new options and
+#      update
+
+if [ $# -ne 2 ]; then echo "byacc2netbsd src dest"; exit 1; fi
+
+r=$1
+d=$2/src/external/bsd/byacc/dist
+
+case "$d" in
+       /*)
+               ;;
+       *)
+               d=`/bin/pwd`/$d
+               ;;



Home | Main Index | Thread Index | Old Index