mirror of
https://git.FreeBSD.org/ports.git
synced 2024-12-25 04:43:33 +00:00
The BNF Converter is a compiler construction tool generating a
compiler front-end from a Labelled BNF grammar. It was originally written to generate Haskell, but starting from Version 2.0, it can also be used for generating Java, C++, and C. Given a Labelled BNF grammar the tool produces: * an abstract syntax as a Haskell/C++/C module or Java directory * a case skeleton for the abstract syntax in the same language * an Alex, JLex, or Flex lexer generator file * a Happy, CUP, or Bison parser generator file * a pretty-printer as a Haskell/Java/C++/C module * a Latex file containing a readable specification of the language WWW: http://www.cs.chalmers.se/~markus/BNFC/ PR: ports/109038 Submitted by: Kai Wang <kaiw27 at gmail.com>
This commit is contained in:
parent
e9c645ef8a
commit
9284de6ed8
Notes:
svn2git
2021-03-31 03:12:20 +00:00
svn path=/head/; revision=184874
@ -96,6 +96,7 @@
|
||||
SUBDIR += bison2
|
||||
SUBDIR += bisongen
|
||||
SUBDIR += bnf
|
||||
SUBDIR += bnfc
|
||||
SUBDIR += boaconstructor
|
||||
SUBDIR += boehm-gc
|
||||
SUBDIR += bonobo
|
||||
|
37
devel/bnfc/Makefile
Normal file
37
devel/bnfc/Makefile
Normal file
@ -0,0 +1,37 @@
|
||||
# New ports collection makefile for: bnfc
|
||||
# Date created: 2007-02-11
|
||||
# Whom: Kai Wang <kaiw27@gmail.com>
|
||||
#
|
||||
# $FreeBSD$
|
||||
#
|
||||
|
||||
PORTNAME= bnfc
|
||||
PORTVERSION= 2.3b
|
||||
CATEGORIES= devel
|
||||
MASTER_SITES= http://www.cs.chalmers.se/~markus/BNFC/ \
|
||||
http://www.cs.chalmers.se/Cs/Grundutb/Kurser/komp/current/resources/
|
||||
DISTNAME= BNFC_${PORTVERSION}
|
||||
EXTRACT_SUFX= .tgz
|
||||
|
||||
MAINTAINER= kaiw27@gmail.com
|
||||
COMMENT= A Labelled BNF converter
|
||||
|
||||
BUILD_DEPENDS= ghc:${PORTSDIR}/lang/ghc
|
||||
|
||||
USE_GMAKE= yes
|
||||
|
||||
.include <bsd.port.pre.mk>
|
||||
|
||||
do-install:
|
||||
${INSTALL_DATA} ${WRKSRC}/bnfc ${PREFIX}/bin
|
||||
|
||||
.if !defined(NOPORTDOCS)
|
||||
post-install:
|
||||
${RM} -f ${WRKSRC}/examples/haskell-core/.cvsignore
|
||||
${MKDIR} ${EXAMPLESDIR}
|
||||
${CP} -pR ${WRKSRC}/examples/* ${EXAMPLESDIR}
|
||||
${MKDIR} ${DOCSDIR}
|
||||
${INSTALL_DATA} ${WRKSRC}/doc/LBNF-report.tex ${DOCSDIR}
|
||||
.endif
|
||||
|
||||
.include <bsd.port.post.mk>
|
3
devel/bnfc/distinfo
Normal file
3
devel/bnfc/distinfo
Normal file
@ -0,0 +1,3 @@
|
||||
MD5 (BNFC_2.3b.tgz) = 1c31e0ef06ed27032a0f50d1b0ea860d
|
||||
SHA256 (BNFC_2.3b.tgz) = 502245ca5624a1458f0a5ca1c928329a56e4da31c9fee496c327f0849f7361f7
|
||||
SIZE (BNFC_2.3b.tgz) = 338176
|
15
devel/bnfc/pkg-descr
Normal file
15
devel/bnfc/pkg-descr
Normal file
@ -0,0 +1,15 @@
|
||||
The BNF Converter is a compiler construction tool generating a
|
||||
compiler front-end from a Labelled BNF grammar. It was originally
|
||||
written to generate Haskell, but starting from Version 2.0, it can
|
||||
also be used for generating Java, C++, and C.
|
||||
|
||||
Given a Labelled BNF grammar the tool produces:
|
||||
|
||||
* an abstract syntax as a Haskell/C++/C module or Java directory
|
||||
* a case skeleton for the abstract syntax in the same language
|
||||
* an Alex, JLex, or Flex lexer generator file
|
||||
* a Happy, CUP, or Bison parser generator file
|
||||
* a pretty-printer as a Haskell/Java/C++/C module
|
||||
* a Latex file containing a readable specification of the language
|
||||
|
||||
WWW: http://www.cs.chalmers.se/~markus/BNFC/
|
27
devel/bnfc/pkg-plist
Normal file
27
devel/bnfc/pkg-plist
Normal file
@ -0,0 +1,27 @@
|
||||
bin/bnfc
|
||||
%%PORTDOCS%%%%DOCSDIR%%/LBNF-report.tex
|
||||
%%PORTDOCS%%%%EXAMPLESDIR%%/C4.cf
|
||||
%%PORTDOCS%%%%EXAMPLESDIR%%/JavaletteLight.cf
|
||||
%%PORTDOCS%%%%EXAMPLESDIR%%/OCL.cf
|
||||
%%PORTDOCS%%%%EXAMPLESDIR%%/Prolog.cf
|
||||
%%PORTDOCS%%%%EXAMPLESDIR%%/fstStudio.cf
|
||||
%%PORTDOCS%%%%EXAMPLESDIR%%/haskell-core/AbsCore.hcr
|
||||
%%PORTDOCS%%%%EXAMPLESDIR%%/haskell-core/Core.cf
|
||||
%%PORTDOCS%%%%EXAMPLESDIR%%/haskell-core/Hello.hcr
|
||||
%%PORTDOCS%%%%EXAMPLESDIR%%/haskell-core/ParCore.hcr
|
||||
%%PORTDOCS%%%%EXAMPLESDIR%%/haskell-core/README
|
||||
%%PORTDOCS%%%%EXAMPLESDIR%%/haskell-core/TopCore.hs
|
||||
%%PORTDOCS%%%%EXAMPLESDIR%%/haskell-core/notes.txt
|
||||
%%PORTDOCS%%%%EXAMPLESDIR%%/koe.jll
|
||||
%%PORTDOCS%%%%EXAMPLESDIR%%/koe2.c
|
||||
%%PORTDOCS%%%%EXAMPLESDIR%%/multi/Arithm.cf
|
||||
%%PORTDOCS%%%%EXAMPLESDIR%%/multi/TestArithm.hs
|
||||
%%PORTDOCS%%%%EXAMPLESDIR%%/multi/types/Types.cf
|
||||
%%PORTDOCS%%%%EXAMPLESDIR%%/multi/types/ex.old
|
||||
%%PORTDOCS%%%%EXAMPLESDIR%%/prolog.pl
|
||||
%%PORTDOCS%%%%EXAMPLESDIR%%/small.pl
|
||||
%%PORTDOCS%%@dirrm %%EXAMPLESDIR%%/multi/types
|
||||
%%PORTDOCS%%@dirrm %%EXAMPLESDIR%%/multi
|
||||
%%PORTDOCS%%@dirrm %%EXAMPLESDIR%%/haskell-core
|
||||
%%PORTDOCS%%@dirrm %%EXAMPLESDIR%%
|
||||
%%PORTDOCS%%@dirrm %%DOCSDIR%%
|
37
devel/hs-BNFC/Makefile
Normal file
37
devel/hs-BNFC/Makefile
Normal file
@ -0,0 +1,37 @@
|
||||
# New ports collection makefile for: bnfc
|
||||
# Date created: 2007-02-11
|
||||
# Whom: Kai Wang <kaiw27@gmail.com>
|
||||
#
|
||||
# $FreeBSD$
|
||||
#
|
||||
|
||||
PORTNAME= bnfc
|
||||
PORTVERSION= 2.3b
|
||||
CATEGORIES= devel
|
||||
MASTER_SITES= http://www.cs.chalmers.se/~markus/BNFC/ \
|
||||
http://www.cs.chalmers.se/Cs/Grundutb/Kurser/komp/current/resources/
|
||||
DISTNAME= BNFC_${PORTVERSION}
|
||||
EXTRACT_SUFX= .tgz
|
||||
|
||||
MAINTAINER= kaiw27@gmail.com
|
||||
COMMENT= A Labelled BNF converter
|
||||
|
||||
BUILD_DEPENDS= ghc:${PORTSDIR}/lang/ghc
|
||||
|
||||
USE_GMAKE= yes
|
||||
|
||||
.include <bsd.port.pre.mk>
|
||||
|
||||
do-install:
|
||||
${INSTALL_DATA} ${WRKSRC}/bnfc ${PREFIX}/bin
|
||||
|
||||
.if !defined(NOPORTDOCS)
|
||||
post-install:
|
||||
${RM} -f ${WRKSRC}/examples/haskell-core/.cvsignore
|
||||
${MKDIR} ${EXAMPLESDIR}
|
||||
${CP} -pR ${WRKSRC}/examples/* ${EXAMPLESDIR}
|
||||
${MKDIR} ${DOCSDIR}
|
||||
${INSTALL_DATA} ${WRKSRC}/doc/LBNF-report.tex ${DOCSDIR}
|
||||
.endif
|
||||
|
||||
.include <bsd.port.post.mk>
|
3
devel/hs-BNFC/distinfo
Normal file
3
devel/hs-BNFC/distinfo
Normal file
@ -0,0 +1,3 @@
|
||||
MD5 (BNFC_2.3b.tgz) = 1c31e0ef06ed27032a0f50d1b0ea860d
|
||||
SHA256 (BNFC_2.3b.tgz) = 502245ca5624a1458f0a5ca1c928329a56e4da31c9fee496c327f0849f7361f7
|
||||
SIZE (BNFC_2.3b.tgz) = 338176
|
15
devel/hs-BNFC/pkg-descr
Normal file
15
devel/hs-BNFC/pkg-descr
Normal file
@ -0,0 +1,15 @@
|
||||
The BNF Converter is a compiler construction tool generating a
|
||||
compiler front-end from a Labelled BNF grammar. It was originally
|
||||
written to generate Haskell, but starting from Version 2.0, it can
|
||||
also be used for generating Java, C++, and C.
|
||||
|
||||
Given a Labelled BNF grammar the tool produces:
|
||||
|
||||
* an abstract syntax as a Haskell/C++/C module or Java directory
|
||||
* a case skeleton for the abstract syntax in the same language
|
||||
* an Alex, JLex, or Flex lexer generator file
|
||||
* a Happy, CUP, or Bison parser generator file
|
||||
* a pretty-printer as a Haskell/Java/C++/C module
|
||||
* a Latex file containing a readable specification of the language
|
||||
|
||||
WWW: http://www.cs.chalmers.se/~markus/BNFC/
|
27
devel/hs-BNFC/pkg-plist
Normal file
27
devel/hs-BNFC/pkg-plist
Normal file
@ -0,0 +1,27 @@
|
||||
bin/bnfc
|
||||
%%PORTDOCS%%%%DOCSDIR%%/LBNF-report.tex
|
||||
%%PORTDOCS%%%%EXAMPLESDIR%%/C4.cf
|
||||
%%PORTDOCS%%%%EXAMPLESDIR%%/JavaletteLight.cf
|
||||
%%PORTDOCS%%%%EXAMPLESDIR%%/OCL.cf
|
||||
%%PORTDOCS%%%%EXAMPLESDIR%%/Prolog.cf
|
||||
%%PORTDOCS%%%%EXAMPLESDIR%%/fstStudio.cf
|
||||
%%PORTDOCS%%%%EXAMPLESDIR%%/haskell-core/AbsCore.hcr
|
||||
%%PORTDOCS%%%%EXAMPLESDIR%%/haskell-core/Core.cf
|
||||
%%PORTDOCS%%%%EXAMPLESDIR%%/haskell-core/Hello.hcr
|
||||
%%PORTDOCS%%%%EXAMPLESDIR%%/haskell-core/ParCore.hcr
|
||||
%%PORTDOCS%%%%EXAMPLESDIR%%/haskell-core/README
|
||||
%%PORTDOCS%%%%EXAMPLESDIR%%/haskell-core/TopCore.hs
|
||||
%%PORTDOCS%%%%EXAMPLESDIR%%/haskell-core/notes.txt
|
||||
%%PORTDOCS%%%%EXAMPLESDIR%%/koe.jll
|
||||
%%PORTDOCS%%%%EXAMPLESDIR%%/koe2.c
|
||||
%%PORTDOCS%%%%EXAMPLESDIR%%/multi/Arithm.cf
|
||||
%%PORTDOCS%%%%EXAMPLESDIR%%/multi/TestArithm.hs
|
||||
%%PORTDOCS%%%%EXAMPLESDIR%%/multi/types/Types.cf
|
||||
%%PORTDOCS%%%%EXAMPLESDIR%%/multi/types/ex.old
|
||||
%%PORTDOCS%%%%EXAMPLESDIR%%/prolog.pl
|
||||
%%PORTDOCS%%%%EXAMPLESDIR%%/small.pl
|
||||
%%PORTDOCS%%@dirrm %%EXAMPLESDIR%%/multi/types
|
||||
%%PORTDOCS%%@dirrm %%EXAMPLESDIR%%/multi
|
||||
%%PORTDOCS%%@dirrm %%EXAMPLESDIR%%/haskell-core
|
||||
%%PORTDOCS%%@dirrm %%EXAMPLESDIR%%
|
||||
%%PORTDOCS%%@dirrm %%DOCSDIR%%
|
Loading…
Reference in New Issue
Block a user