Combined scanner/parser generator for LR compliant grammar definitions.
The generated C++ parser class is used as a super class from which a parser
implementation class must be derived. The implementation class implements the
scanner feed methods but also all required semantic action method. dragon has
been used for several large projects with complex grammar definitions (about
200 productions/ 80 tokens ). Since for those grammar defintions, the analyse
phase to build up the parse table is quite CPU intensive, it is recommended to
use state of the art hardware. dragon requires the base package to get compiled
but also for the compilation of the generated C++ code.
It can be used for databases/cego and probably other applications.
Many more details are available at:
Remove WWW entries moved into port Makefiles
Commit b7f05445c00f has added WWW entries to port Makefiles based on
WWW: lines in pkg-descr files.
This commit removes the WWW: lines of moved-over URLs from these
pkg-descr files.
Approved by: portmgr (tcberner)
Add WWW entries to port Makefiles
It has been common practice to have one or more URLs at the end of the
ports' pkg-descr files, one per line and prefixed with "WWW:". These
URLs should point at a project website or other relevant resources.
Access to these URLs required processing of the pkg-descr files, and
they have often become stale over time. If more than one such URL was
present in a pkg-descr file, only the first one was tarnsfered into
the port INDEX, but for many ports only the last line did contain the
port specific URL to further information.
There have been several proposals to make a project URL available as
a macro in the ports' Makefiles, over time.
(Only the first 15 lines of the commit message are shown above )
Fix CONFLICTS entries of multiple ports
There have been lots of missing CONFLICTS_INSTALL entries, either
because conflicting ports were added without updating existing ports,
due to name changes of generated packages, due to mis-understanding
the format and semantics of the conflicts entries, or just due to
typoes in package names.
This patch is the result of a comparison of all files contained in
the official packages with each other. This comparison was based on
packages built with default options and may therefore have missed
further conflicts with optionally installed files.
Where possible, version numbers in conflicts entries have been
generalized, some times taking advantage of the fact that a port
(Only the first 15 lines of the commit message are shown above )
devel/dragon: update 1.5.4 -> 1.5.5
- For CPlusParser generator, catched exception in case of exceeded
max token length. In the past, exceeded token length lead to seg
faults ...
devel/dragon: update 1.5.3 -> 1.5.4
- Added stdlib.h include for generated parser code with dynamic
parse table allocation ( malloc is used ). For Linux compiles, this
is required
Submitted by: Bjorn Lemke <lemke@lemke-it.com>
devel/dragon: upgrade 1.5.2 -> 1.5.3
- Small cosmetic patch in CPlusGenerator parse method. Instead of
default, NULLACTION case has been added to avoid compile warnings
with -Wswitch-enum
Submitted by: Bjoern Lemke <lemke@lemke-it.com>
devel/dragon: update 1.5.0 -> 1.5.1
- Fix in src/Main.cc and samples/gxmain-master.cc. Include of stdlib.h
added, since this is needed for Linux compiles ( exit function )
- In GoLangGenerator.cc scanner code was added to complete scanner state
machine ( there still was missing some code for transition jumps )
Submitted by: Bjoern Lemke <lemke@lemke-it.com>
devel/dragon: update 1.4.3 -> 1.5.0
- Added code generation for GoLang. GoCode is generated, compiles and
basically works Still some cleanup stuff required
Submitted by: Bjoern Lemke <lemke@lemke-it.com>
Give the KDE SC4 applications ports a -kde4 suffix
In order to make room for the up-to-date version of the KDE Desktop and its
applications move the KDE Application ports based on Qt4.
PR: 225992
Exp-run by: antoine
Reviewed by: rakuco, adridg
Differential Revision: https://reviews.freebsd.org/D14413
devel/dragon: update 1.4.1 -> 1.4.3
- add conflicts with multimedia/dragon
- New generated configure script with libtool-2.4.6
- Changed generated Java code to abstract class with abstract
methods, which have been implemented by the parser action subclass.
This seems to be a cleaner modeling
Submitted by: Bjoern Lemke <lemke@lemke-it.com>
Move devel/lfc to devel/lfcbase, to avoid conflicts with other software using
liblfc as name. [1]
Update devel/lfcbase to 1.5.4: [1]
Several shared lib issues were addressed
The license was changed from GPLv2 to GPLv3.
Update devel/lfcxml to 1.1.3 and chase the move of devel/lfc [2]
Update devel/dragon to 1.3.10 and chase the move of devel/lfc [3]
Update databases/cego to 2.18.6 and chase the move of devel/lfc [4]
Several shared lib issues were addressed.
The license was changed from GPLv2 to GPLv3.
Update databases/my2cego to 1.1.3 and chase the move of devel/lfc [5]
Updated the autoconf setup
Changed License from GPLv2 to GPLv3
PR: ports/178745 [1]
ports/178746 [2]
ports/178747 [3]
ports/178752 [4]
ports/178754 [5]
Submitted by: Kurt Jaeger <fbsd-ports@opsec.eu> (maintainer) [1-5]
Combined scanner/parser generator for LR compliant grammar definitions.
The generated C++ parser class is used as a super class from which a parser
implementation class must be derived. The implementation class implements the
scanner feed methods but also all required semantic action method. dragon has
been used for several large projects with complex grammar definitions (about
200 productions/ 80 tokens ). Since for those grammar defintions, the analyse
phase to build up the parse table is quite CPU intensive, it is recommended to
use state of the art hardware. dragon requires the base package to get compiled
but also for the compilation of the generated C++ code.
It can be used for databases/cego and probably other applications.
Many more details are available at:
WWW: http://www.lemke-it.com/
PR: ports/150683
Submitted by: Kurt Jaeger <fbsd-ports@opsec.eu>