mirror of
https://git.FreeBSD.org/ports.git
synced 2024-12-23 04:23:08 +00:00
Add new Ada port: textproc/opentoken 5.0a
OpenToken is a facility for performing token analysis and parsing within the Ada language. It is designed to provide all the functionality of a traditional lexical analyzer/parser generator, such as lex/yacc. But due to the magic of inheritance and runtime polymorphism it is implemented entirely in Ada as withed-in code. No precompilation step is required, and no messy tool-generated source code is created. The tradeoff is that the grammar is generated at runtime. WWW: http://stephe-leake.org/ada/opentoken.html
This commit is contained in:
parent
2e00ae46f1
commit
d1e5f1ed50
Notes:
svn2git
2021-03-31 03:12:20 +00:00
svn path=/head/; revision=348229
@ -458,6 +458,7 @@
|
||||
SUBDIR += openjade
|
||||
SUBDIR += opensched
|
||||
SUBDIR += opensp
|
||||
SUBDIR += opentoken
|
||||
SUBDIR += openvanilla-framework
|
||||
SUBDIR += openvanilla-modules
|
||||
SUBDIR += or-aspell
|
||||
|
43
textproc/opentoken/Makefile
Normal file
43
textproc/opentoken/Makefile
Normal file
@ -0,0 +1,43 @@
|
||||
# Created by: John Marino <marino@FreeBSD.org>
|
||||
# $FreeBSD$
|
||||
|
||||
PORTNAME= opentoken
|
||||
PORTVERSION= 5.0a
|
||||
CATEGORIES= textproc
|
||||
MASTER_SITES= http://stephe-leake.org/ada/
|
||||
|
||||
MAINTAINER= marino@FreeBSD.org
|
||||
COMMENT= Lexical analyser and parser for the Ada language
|
||||
|
||||
LICENSE= GPLv3 GPLv3RLE
|
||||
LICENSE_COMB= multi
|
||||
|
||||
BUILD_DEPENDS= gprbuild>=20130416:${PORTSDIR}/devel/gprbuild
|
||||
|
||||
USES= ada tar:bzip2
|
||||
|
||||
WRKSRC= ${WRKDIR}/org.${PORTNAME}-${PORTVERSION}
|
||||
BUILD_WRKSRC= ${WRKSRC}/build/release
|
||||
OTLIBVER= 5.0.0
|
||||
PLIST_SUB+= OTLIBVER=${OTLIBVER}
|
||||
|
||||
do-build:
|
||||
(cd ${BUILD_WRKSRC} && ${SETENV} ${MAKE_ENV} \
|
||||
gprbuild -p -P opentoken_lib )
|
||||
|
||||
do-install:
|
||||
${MKDIR} ${STAGEDIR}${PREFIX}/lib/gnat \
|
||||
${STAGEDIR}${PREFIX}/lib/opentoken \
|
||||
${STAGEDIR}${PREFIX}/include/opentoken
|
||||
${INSTALL_DATA} ${BUILD_WRKSRC}/lib/*.ali \
|
||||
${STAGEDIR}${PREFIX}/lib/opentoken
|
||||
${INSTALL_LIB} ${BUILD_WRKSRC}/lib/libopentoken.so.${OTLIBVER} \
|
||||
${STAGEDIR}${PREFIX}/lib/opentoken
|
||||
(cd ${STAGEDIR}${PREFIX}/lib/opentoken && \
|
||||
${LN} -s libopentoken.so.${OTLIBVER} libopentoken.so)
|
||||
${INSTALL_DATA} ${WRKSRC}/*.ad[bs] ${WRKSRC}/Language_Lexers/*.ad[bs] \
|
||||
${STAGEDIR}${PREFIX}/include/opentoken
|
||||
${INSTALL_DATA} ${FILESDIR}/opentoken.gpr \
|
||||
${STAGEDIR}${PREFIX}/lib/gnat
|
||||
|
||||
.include <bsd.port.mk>
|
2
textproc/opentoken/distinfo
Normal file
2
textproc/opentoken/distinfo
Normal file
@ -0,0 +1,2 @@
|
||||
SHA256 (opentoken-5.0a.tar.bz2) = 25d294e106b77b81b251405eb9e1424d2c216dec911c16afa2f2047b982ea641
|
||||
SIZE (opentoken-5.0a.tar.bz2) = 160140
|
7
textproc/opentoken/files/opentoken.gpr
Normal file
7
textproc/opentoken/files/opentoken.gpr
Normal file
@ -0,0 +1,7 @@
|
||||
project OpenToken is
|
||||
for Languages use ("ada");
|
||||
for Library_Name use "opentoken";
|
||||
for Source_Dirs use ("../../include/opentoken");
|
||||
for Library_Dir use "../../lib/opentoken";
|
||||
for Externally_Built use "true";
|
||||
end OpenToken;
|
11
textproc/opentoken/files/patch-build_common.gpr
Normal file
11
textproc/opentoken/files/patch-build_common.gpr
Normal file
@ -0,0 +1,11 @@
|
||||
--- build/common.gpr.orig 2014-02-21 20:14:57.000000000 +0000
|
||||
+++ build/common.gpr
|
||||
@@ -41,7 +41,7 @@ project Common is
|
||||
"-O2",
|
||||
"-gnat2012",
|
||||
"-gnatfnoqQ",
|
||||
- "-gnatwaeL",
|
||||
+ "-gnatwaL",
|
||||
"-fstack-check");
|
||||
|
||||
-- The project file syntax does not let us set a variable in a
|
10
textproc/opentoken/files/patch-build_release_opentoken.gpr
Normal file
10
textproc/opentoken/files/patch-build_release_opentoken.gpr
Normal file
@ -0,0 +1,10 @@
|
||||
--- build/release/opentoken.gpr.orig 2014-02-21 20:14:57.000000000 +0000
|
||||
+++ build/release/opentoken.gpr
|
||||
@@ -19,7 +19,6 @@ project OpenToken is
|
||||
package Compiler is
|
||||
for Default_Switches ("Ada") use
|
||||
Common.Compiler.Release_Switches &
|
||||
- Common.Compiler.Style_Checks &
|
||||
Common.Compiler'Default_Switches ("Ada");
|
||||
end Compiler;
|
||||
|
9
textproc/opentoken/pkg-descr
Normal file
9
textproc/opentoken/pkg-descr
Normal file
@ -0,0 +1,9 @@
|
||||
OpenToken is a facility for performing token analysis and parsing within
|
||||
the Ada language. It is designed to provide all the functionality of a
|
||||
traditional lexical analyzer/parser generator, such as lex/yacc. But due
|
||||
to the magic of inheritance and runtime polymorphism it is implemented
|
||||
entirely in Ada as withed-in code. No precompilation step is required, and
|
||||
no messy tool-generated source code is created. The tradeoff is that the
|
||||
grammar is generated at runtime.
|
||||
|
||||
WWW: http://stephe-leake.org/ada/opentoken.html
|
171
textproc/opentoken/pkg-plist
Normal file
171
textproc/opentoken/pkg-plist
Normal file
@ -0,0 +1,171 @@
|
||||
include/opentoken/ada_lexer.adb
|
||||
include/opentoken/ada_lexer.ads
|
||||
include/opentoken/html_lexer-basic.ads
|
||||
include/opentoken/html_lexer-tags.ads
|
||||
include/opentoken/html_lexer-task_safe.adb
|
||||
include/opentoken/html_lexer-task_safe.ads
|
||||
include/opentoken/html_lexer-task_unsafe.adb
|
||||
include/opentoken/html_lexer-task_unsafe.ads
|
||||
include/opentoken/html_lexer.adb
|
||||
include/opentoken/html_lexer.ads
|
||||
include/opentoken/java_lexer.ads
|
||||
include/opentoken/m3_lexer.ads
|
||||
include/opentoken/opentoken-production-list-print.adb
|
||||
include/opentoken/opentoken-production-list-print.ads
|
||||
include/opentoken/opentoken-production-list.adb
|
||||
include/opentoken/opentoken-production-list.ads
|
||||
include/opentoken/opentoken-production-parser-lalr.adb
|
||||
include/opentoken/opentoken-production-parser-lalr.ads
|
||||
include/opentoken/opentoken-production-parser-lrk_item.adb
|
||||
include/opentoken/opentoken-production-parser-lrk_item.ads
|
||||
include/opentoken/opentoken-production-parser.adb
|
||||
include/opentoken/opentoken-production-parser.ads
|
||||
include/opentoken/opentoken-production-print.adb
|
||||
include/opentoken/opentoken-production-print.ads
|
||||
include/opentoken/opentoken-production.adb
|
||||
include/opentoken/opentoken-production.ads
|
||||
include/opentoken/opentoken-recognizer-based_integer.adb
|
||||
include/opentoken/opentoken-recognizer-based_integer.ads
|
||||
include/opentoken/opentoken-recognizer-based_integer_ada_style.adb
|
||||
include/opentoken/opentoken-recognizer-based_integer_ada_style.ads
|
||||
include/opentoken/opentoken-recognizer-based_integer_java_style.adb
|
||||
include/opentoken/opentoken-recognizer-based_integer_java_style.ads
|
||||
include/opentoken/opentoken-recognizer-based_real_ada_style.adb
|
||||
include/opentoken/opentoken-recognizer-based_real_ada_style.ads
|
||||
include/opentoken/opentoken-recognizer-bracketed_comment.adb
|
||||
include/opentoken/opentoken-recognizer-bracketed_comment.ads
|
||||
include/opentoken/opentoken-recognizer-character_set.adb
|
||||
include/opentoken/opentoken-recognizer-character_set.ads
|
||||
include/opentoken/opentoken-recognizer-csv_field.adb
|
||||
include/opentoken/opentoken-recognizer-csv_field.ads
|
||||
include/opentoken/opentoken-recognizer-end_of_file.adb
|
||||
include/opentoken/opentoken-recognizer-end_of_file.ads
|
||||
include/opentoken/opentoken-recognizer-escape_sequence.adb
|
||||
include/opentoken/opentoken-recognizer-escape_sequence.ads
|
||||
include/opentoken/opentoken-recognizer-extended_digits.adb
|
||||
include/opentoken/opentoken-recognizer-extended_digits.ads
|
||||
include/opentoken/opentoken-recognizer-graphic_character.adb
|
||||
include/opentoken/opentoken-recognizer-graphic_character.ads
|
||||
include/opentoken/opentoken-recognizer-html_entity.adb
|
||||
include/opentoken/opentoken-recognizer-html_entity.ads
|
||||
include/opentoken/opentoken-recognizer-identifier.adb
|
||||
include/opentoken/opentoken-recognizer-identifier.ads
|
||||
include/opentoken/opentoken-recognizer-integer.adb
|
||||
include/opentoken/opentoken-recognizer-integer.ads
|
||||
include/opentoken/opentoken-recognizer-keyword.adb
|
||||
include/opentoken/opentoken-recognizer-keyword.ads
|
||||
include/opentoken/opentoken-recognizer-line_comment.adb
|
||||
include/opentoken/opentoken-recognizer-line_comment.ads
|
||||
include/opentoken/opentoken-recognizer-nothing.adb
|
||||
include/opentoken/opentoken-recognizer-nothing.ads
|
||||
include/opentoken/opentoken-recognizer-octal_escape.adb
|
||||
include/opentoken/opentoken-recognizer-octal_escape.ads
|
||||
include/opentoken/opentoken-recognizer-real.adb
|
||||
include/opentoken/opentoken-recognizer-real.ads
|
||||
include/opentoken/opentoken-recognizer-separator.adb
|
||||
include/opentoken/opentoken-recognizer-separator.ads
|
||||
include/opentoken/opentoken-recognizer-string.adb
|
||||
include/opentoken/opentoken-recognizer-string.ads
|
||||
include/opentoken/opentoken-recognizer.ads
|
||||
include/opentoken/opentoken-text_feeder-string.adb
|
||||
include/opentoken/opentoken-text_feeder-string.ads
|
||||
include/opentoken/opentoken-text_feeder-text_io.adb
|
||||
include/opentoken/opentoken-text_feeder-text_io.ads
|
||||
include/opentoken/opentoken-text_feeder.ads
|
||||
include/opentoken/opentoken-token-enumerated-analyzer.adb
|
||||
include/opentoken/opentoken-token-enumerated-analyzer.ads
|
||||
include/opentoken/opentoken-token-enumerated-identifier.adb
|
||||
include/opentoken/opentoken-token-enumerated-identifier.ads
|
||||
include/opentoken/opentoken-token-enumerated-integer.adb
|
||||
include/opentoken/opentoken-token-enumerated-integer.ads
|
||||
include/opentoken/opentoken-token-enumerated-list-print.adb
|
||||
include/opentoken/opentoken-token-enumerated-list-print.ads
|
||||
include/opentoken/opentoken-token-enumerated-list.adb
|
||||
include/opentoken/opentoken-token-enumerated-list.ads
|
||||
include/opentoken/opentoken-token-enumerated-nonterminal.adb
|
||||
include/opentoken/opentoken-token-enumerated-nonterminal.ads
|
||||
include/opentoken/opentoken-token-enumerated-real.adb
|
||||
include/opentoken/opentoken-token-enumerated-real.ads
|
||||
include/opentoken/opentoken-token-enumerated-string.adb
|
||||
include/opentoken/opentoken-token-enumerated-string.ads
|
||||
include/opentoken/opentoken-token-enumerated.adb
|
||||
include/opentoken/opentoken-token-enumerated.ads
|
||||
include/opentoken/opentoken-token-linked_list.adb
|
||||
include/opentoken/opentoken-token-linked_list.ads
|
||||
include/opentoken/opentoken-token-list.ads
|
||||
include/opentoken/opentoken-token-list_mixin.adb
|
||||
include/opentoken/opentoken-token-list_mixin.ads
|
||||
include/opentoken/opentoken-token-selection.ads
|
||||
include/opentoken/opentoken-token-selection_mixin.adb
|
||||
include/opentoken/opentoken-token-selection_mixin.ads
|
||||
include/opentoken/opentoken-token-sequence.ads
|
||||
include/opentoken/opentoken-token-sequence_mixin.adb
|
||||
include/opentoken/opentoken-token-sequence_mixin.ads
|
||||
include/opentoken/opentoken-token.adb
|
||||
include/opentoken/opentoken-token.ads
|
||||
include/opentoken/opentoken.adb
|
||||
include/opentoken/opentoken.ads
|
||||
lib/gnat/opentoken.gpr
|
||||
lib/opentoken/ada_lexer.ali
|
||||
lib/opentoken/html_lexer-basic.ali
|
||||
lib/opentoken/html_lexer-tags.ali
|
||||
lib/opentoken/html_lexer-task_safe.ali
|
||||
lib/opentoken/html_lexer-task_unsafe.ali
|
||||
lib/opentoken/html_lexer.ali
|
||||
lib/opentoken/java_lexer.ali
|
||||
lib/opentoken/libopentoken.so
|
||||
lib/opentoken/libopentoken.so.%%OTLIBVER%%
|
||||
lib/opentoken/m3_lexer.ali
|
||||
lib/opentoken/opentoken-production-list-print.ali
|
||||
lib/opentoken/opentoken-production-list.ali
|
||||
lib/opentoken/opentoken-production-parser-lalr.ali
|
||||
lib/opentoken/opentoken-production-parser-lrk_item.ali
|
||||
lib/opentoken/opentoken-production-parser.ali
|
||||
lib/opentoken/opentoken-production-print.ali
|
||||
lib/opentoken/opentoken-production.ali
|
||||
lib/opentoken/opentoken-recognizer-based_integer.ali
|
||||
lib/opentoken/opentoken-recognizer-based_integer_ada_style.ali
|
||||
lib/opentoken/opentoken-recognizer-based_integer_java_style.ali
|
||||
lib/opentoken/opentoken-recognizer-based_real_ada_style.ali
|
||||
lib/opentoken/opentoken-recognizer-bracketed_comment.ali
|
||||
lib/opentoken/opentoken-recognizer-character_set.ali
|
||||
lib/opentoken/opentoken-recognizer-csv_field.ali
|
||||
lib/opentoken/opentoken-recognizer-end_of_file.ali
|
||||
lib/opentoken/opentoken-recognizer-escape_sequence.ali
|
||||
lib/opentoken/opentoken-recognizer-extended_digits.ali
|
||||
lib/opentoken/opentoken-recognizer-graphic_character.ali
|
||||
lib/opentoken/opentoken-recognizer-html_entity.ali
|
||||
lib/opentoken/opentoken-recognizer-identifier.ali
|
||||
lib/opentoken/opentoken-recognizer-integer.ali
|
||||
lib/opentoken/opentoken-recognizer-keyword.ali
|
||||
lib/opentoken/opentoken-recognizer-line_comment.ali
|
||||
lib/opentoken/opentoken-recognizer-nothing.ali
|
||||
lib/opentoken/opentoken-recognizer-octal_escape.ali
|
||||
lib/opentoken/opentoken-recognizer-real.ali
|
||||
lib/opentoken/opentoken-recognizer-separator.ali
|
||||
lib/opentoken/opentoken-recognizer-string.ali
|
||||
lib/opentoken/opentoken-recognizer.ali
|
||||
lib/opentoken/opentoken-text_feeder-string.ali
|
||||
lib/opentoken/opentoken-text_feeder-text_io.ali
|
||||
lib/opentoken/opentoken-text_feeder.ali
|
||||
lib/opentoken/opentoken-token-enumerated-analyzer.ali
|
||||
lib/opentoken/opentoken-token-enumerated-identifier.ali
|
||||
lib/opentoken/opentoken-token-enumerated-integer.ali
|
||||
lib/opentoken/opentoken-token-enumerated-list-print.ali
|
||||
lib/opentoken/opentoken-token-enumerated-list.ali
|
||||
lib/opentoken/opentoken-token-enumerated-nonterminal.ali
|
||||
lib/opentoken/opentoken-token-enumerated-real.ali
|
||||
lib/opentoken/opentoken-token-enumerated-string.ali
|
||||
lib/opentoken/opentoken-token-enumerated.ali
|
||||
lib/opentoken/opentoken-token-linked_list.ali
|
||||
lib/opentoken/opentoken-token-list.ali
|
||||
lib/opentoken/opentoken-token-list_mixin.ali
|
||||
lib/opentoken/opentoken-token-selection.ali
|
||||
lib/opentoken/opentoken-token-selection_mixin.ali
|
||||
lib/opentoken/opentoken-token-sequence.ali
|
||||
lib/opentoken/opentoken-token-sequence_mixin.ali
|
||||
lib/opentoken/opentoken-token.ali
|
||||
lib/opentoken/opentoken.ali
|
||||
@dirrm lib/opentoken
|
||||
@dirrmtry lib/gnat
|
||||
@dirrm include/opentoken
|
Loading…
Reference in New Issue
Block a user