diff options
author | cjones <cjones@pkgsrc.org> | 2001-06-08 21:03:05 +0000 |
---|---|---|
committer | cjones <cjones@pkgsrc.org> | 2001-06-08 21:03:05 +0000 |
commit | 8a8b295ff4d8d493cb10f09359c66cf5dab101e3 (patch) | |
tree | 2b21ef34724dc3a0900af369ea8cde61db8603ab | |
parent | 3f93db328078288bb06b73e2c097b005312fe384 (diff) | |
download | pkgsrc-8a8b295ff4d8d493cb10f09359c66cf5dab101e3.tar.gz |
Import the Semantic Bovinator for Emacs. Lexer, parser-generator, and
parser. Required for JDE.
-rw-r--r-- | devel/semantic/Makefile | 54 | ||||
-rw-r--r-- | devel/semantic/distinfo | 4 | ||||
-rw-r--r-- | devel/semantic/pkg/DESCR | 32 | ||||
-rw-r--r-- | devel/semantic/pkg/PLIST | 31 |
4 files changed, 121 insertions, 0 deletions
diff --git a/devel/semantic/Makefile b/devel/semantic/Makefile new file mode 100644 index 00000000000..f1e557ba306 --- /dev/null +++ b/devel/semantic/Makefile @@ -0,0 +1,54 @@ +# $NetBSD: Makefile,v 1.1.1.1 2001/06/08 21:03:05 cjones Exp $ +# + +DISTNAME= semantic-1.3.3 +CATEGORIES= devel +MASTER_SITES= ${MASTER_SITE_SOURCEFORGE:=cedet/} + +MAINTAINER= cjones@netbsd.org +HOMEPAGE= http://cedet.sourceforge.net/semantic.shtml +COMMENT= Lexer, parser-generator, and parser written for Emacs + +DEPENDS+= speedbar-0.13a:../../editors/speedbar +DEPENDS+= eieio-0.16:../../lang/eieio + +.include "../../mk/bsd.prefs.mk" + +.if defined(USE_XEMACS) +DEPENDS+= xemacs-*:../../editors/xemacs +EMACS= xemacs +LISPDIR= lib/xemacs/xemacs-packages/lisp/semantic +.else +DEPENDS+= emacs-*:../../editors/emacs +EMACS= emacs +LISPDIR= share/emacs/site-lisp/semantic +.endif + +BUILD_ENV+= EMACS=${EMACS} +PLIST_SUBST+= LISPDIR=${LISPDIR} + +NO_CONFIGURE= # set +USE_GMAKE= # set + +# XXX The author claims that the info file is broken for current +# makeinfo. Should work with either newer makeinfo or newer semantic. +#INFO_FILES= semantic.info + +SRCS= semantic-bnf.el semantic.el semantic-util.el document.el \ + document-vars.el sformat.el semantic-make.el semantic-c.el \ + semantic-imenu.el semantic-el.el semantic-sb.el working.el \ + semantic-mode.el +BNFFILES= c.bnf make.bnf + +# XXX broken info +post-extract: + cd ${WRKSRC} && touch semantic.info + +do-install: + ${INSTALL_DATA_DIR} ${PREFIX}/${LISPDIR} + cd ${WRKSRC} && ${INSTALL_DATA} ${SRCS} ${SRCS:.el=.elc} \ + ${PREFIX}/${LISPDIR} + cd ${WRKSRC} && ${INSTALL_DATA} ${BNFFILES} ${PREFIX}/${LISPDIR} +# XXX cd ${WRKSRC} && ${INSTALL_DATA} ${INFO_FILES} ${PREFIX}/info + +.include "../../mk/bsd.pkg.mk" diff --git a/devel/semantic/distinfo b/devel/semantic/distinfo new file mode 100644 index 00000000000..c3d5c459310 --- /dev/null +++ b/devel/semantic/distinfo @@ -0,0 +1,4 @@ +$NetBSD: distinfo,v 1.1.1.1 2001/06/08 21:03:05 cjones Exp $ + +SHA1 (semantic-1.3.3.tar.gz) = 7238375f644453cab154d80bbb5ad80a96adec3b +Size (semantic-1.3.3.tar.gz) = 77828 bytes diff --git a/devel/semantic/pkg/DESCR b/devel/semantic/pkg/DESCR new file mode 100644 index 00000000000..30a69003f62 --- /dev/null +++ b/devel/semantic/pkg/DESCR @@ -0,0 +1,32 @@ +The Semantic Bovinator is a lexer, parser-generator, and parser. It is +written in Emacs Lisp and is customized to the way Emacs thinks about +language files, and is optimized to use Emacs' parsing capabilities. + +The Semantic Bovinator's goal is to provide an intermediate API for +authors of language agnostic tools who want to deal with languages in +a generic way. It also provides a simple way for Mode Authors who are +experts in their language to provide a parser for those tool +authors, without knowing anything about those tools. + +The Semantic Bovinator is made up of these important pieces: + + 1. lexer: Converts a language into a token stream + + 2. parser: Converts a token stream into a stream of nonterminals + defined by the language. + + 3. parser-generator: Converts a language definition into a table + usable by the parser. (Written using the Semantic Bovinator) + + 4. language definitions: Parsers already existing for the parser + generator language (Bovine Normal Form), Emacs Lisp, and C. + + 5. navigator: Senator is a navigator that permits simple + navigation through the parsed language. + + 6. speedbar browser: Code for browsing a generated nonterminal + list with Speedbar. + + 7. Documentation generator: Identifies inline documentation in + source code, and can convert it to texinfo. It can also create + inline documenation. diff --git a/devel/semantic/pkg/PLIST b/devel/semantic/pkg/PLIST new file mode 100644 index 00000000000..b8dd40bea1b --- /dev/null +++ b/devel/semantic/pkg/PLIST @@ -0,0 +1,31 @@ +@comment $NetBSD: PLIST,v 1.1.1.1 2001/06/08 21:03:05 cjones Exp $ +${LISPDIR}/semantic-bnf.el +${LISPDIR}/semantic-bnf.elc +${LISPDIR}/semantic.el +${LISPDIR}/semantic.elc +${LISPDIR}/semantic-util.el +${LISPDIR}/semantic-util.elc +${LISPDIR}/document.el +${LISPDIR}/document.elc +${LISPDIR}/document-vars.el +${LISPDIR}/document-vars.elc +${LISPDIR}/sformat.el +${LISPDIR}/sformat.elc +${LISPDIR}/semantic-make.el +${LISPDIR}/semantic-make.elc +${LISPDIR}/semantic-c.el +${LISPDIR}/semantic-c.elc +${LISPDIR}/semantic-imenu.el +${LISPDIR}/semantic-imenu.elc +${LISPDIR}/semantic-el.el +${LISPDIR}/semantic-el.elc +${LISPDIR}/semantic-sb.el +${LISPDIR}/semantic-sb.elc +${LISPDIR}/working.el +${LISPDIR}/working.elc +${LISPDIR}/semantic-mode.el +${LISPDIR}/semantic-mode.elc +${LISPDIR}/c.bnf +${LISPDIR}/make.bnf +@comment XXX info/semantic.info +@unexec rmdir %D/${LISPDIR} 2>/dev/null || true |