diff options
author | ijliao <ijliao@FreeBSD.org> | 2001-04-24 00:02:11 +0800 |
---|---|---|
committer | ijliao <ijliao@FreeBSD.org> | 2001-04-24 00:02:11 +0800 |
commit | 847388274fd4e1bb4354184d287b14fb39e52c1b (patch) | |
tree | 00e6446778e2769c41a3c423b7f3d791877627f3 /devel | |
parent | 9fb377c18ee82137477237e78d720379f623171a (diff) | |
download | freebsd-ports-gnome-847388274fd4e1bb4354184d287b14fb39e52c1b.tar.gz freebsd-ports-gnome-847388274fd4e1bb4354184d287b14fb39e52c1b.tar.zst freebsd-ports-gnome-847388274fd4e1bb4354184d287b14fb39e52c1b.zip |
add kimwitu++
A tool for processing trees (i.e. terms)
Diffstat (limited to 'devel')
-rw-r--r-- | devel/Makefile | 1 | ||||
-rw-r--r-- | devel/kimwitu++/Makefile | 21 | ||||
-rw-r--r-- | devel/kimwitu++/distinfo | 1 | ||||
-rw-r--r-- | devel/kimwitu++/files/patch-src::Makefile.in | 25 | ||||
-rw-r--r-- | devel/kimwitu++/pkg-comment | 1 | ||||
-rw-r--r-- | devel/kimwitu++/pkg-descr | 25 | ||||
-rw-r--r-- | devel/kimwitu++/pkg-plist | 1 |
7 files changed, 75 insertions, 0 deletions
diff --git a/devel/Makefile b/devel/Makefile index 46a41a7c19bf..af9ce766dd7f 100644 --- a/devel/Makefile +++ b/devel/Makefile @@ -169,6 +169,7 @@ SUBDIR += kdevelop SUBDIR += kelp SUBDIR += kimwitu + SUBDIR += kimwitu++ SUBDIR += kpp SUBDIR += ktranslator SUBDIR += lclint diff --git a/devel/kimwitu++/Makefile b/devel/kimwitu++/Makefile new file mode 100644 index 000000000000..c0ee5251570b --- /dev/null +++ b/devel/kimwitu++/Makefile @@ -0,0 +1,21 @@ +# ex:ts=8 +# New ports collection makefile for: kimwitu++ +# Date created: Apr 23, 2001 +# Whom: Ying-Chieh Liao <ijliao@FreeBSD.org> +# +# $FreeBSD$ +# + +PORTNAME= kimwitu++ +PORTVERSION= 2.0.1 +CATEGORIES= devel +MASTER_SITES= http://site.informatik.hu-berlin.de/kimwitu++/ + +MAINTAINER= ijliao@FreeBSD.org + +GNU_CONFIGURE= yes +USE_GMAKE= yes + +MAN1= kc++.1 + +.include <bsd.port.mk> diff --git a/devel/kimwitu++/distinfo b/devel/kimwitu++/distinfo new file mode 100644 index 000000000000..310dc845b4fc --- /dev/null +++ b/devel/kimwitu++/distinfo @@ -0,0 +1 @@ +MD5 (kimwitu++-2.0.1.tar.gz) = 9f5e3d15e6668a525dda09aa96e09e2c diff --git a/devel/kimwitu++/files/patch-src::Makefile.in b/devel/kimwitu++/files/patch-src::Makefile.in new file mode 100644 index 000000000000..7cad4c3184c6 --- /dev/null +++ b/devel/kimwitu++/files/patch-src::Makefile.in @@ -0,0 +1,25 @@ +--- src/Makefile.in.orig Fri Mar 16 00:15:52 2001 ++++ src/Makefile.in Mon Apr 23 23:38:09 2001 +@@ -167,13 +167,9 @@ + #YCFLAGS += -DMYLEXDEBUG + #YCFLAGS += -DYYDEBUG=1 -DMYLEXDEBUG + DEFINES := -DARCH=$(ARCH) +-CXXFLAGS := -g +-CXXFLAGSOPT := -O2\ -s + + ifneq (,$(findstring ++,$(CXX))) + # -ansi should be here but it's buggy (and should be called -iso anyway) +-CXXFLAGS := -Wall -Wno-unused -Wno-uninitialized -g +-CXXFLAGSOPT := $(CXXFLAGSOPT)\ -Os + ifeq "$(WARN)" "y" + CXXFLAGS += -Wold-style-cast -Weffc++ + endif +@@ -229,7 +225,7 @@ + touch tstamp.kc ; \ + $(MAKE) -e -f $${olddir}/Makefile \ + ROOT=$${olddir} \ +- CXXFLAGS=$(CXXFLAGSOPT) \ ++ CXXFLAGS+=$(CXXFLAGSOPT) \ + $(BOOTSTRAPTARGET) + + s1: diff --git a/devel/kimwitu++/pkg-comment b/devel/kimwitu++/pkg-comment new file mode 100644 index 000000000000..12e1aa304eb3 --- /dev/null +++ b/devel/kimwitu++/pkg-comment @@ -0,0 +1 @@ +A tool for processing trees (i.e. terms) diff --git a/devel/kimwitu++/pkg-descr b/devel/kimwitu++/pkg-descr new file mode 100644 index 000000000000..e42837b5ef11 --- /dev/null +++ b/devel/kimwitu++/pkg-descr @@ -0,0 +1,25 @@ +Kimwitu++ is the successor to Kimwitu. Like Kimwitu, it is a tool for +processing trees (i.e. terms). It is a meta tool: Kimwitu++ can be used for +generating software - especially when building compilers. Kimwitu++ has its +own input language, which allows the definition fo the tree structure and of +functions operating on the tree. It uses the input to generate a number of +C++ files, which are then bound to a program using the C++ compiler. + +Kimwitu++ can be easily combined with parser generators like lex and yacc. +While the parser deals with processing the grammar rules, kimwitu++ deals +with creating an abstract syntax tree. In further passes, this tree can be +used to generate target code. These passes can be implemented in the same +program or a different one - kimwitu++ supports saving the tree into files. + +For processing the tree, Kimwitu++ supports two mechanisms: unparse rules +(for code generation), and rewrite rules (for transformations). Each rule +can be tailored to a specific node structure using pattern matching; all +rules together are applied to the tree recursively. To support different +rules for the same kind of node (in different application contexts), +Kimwitu++ supports the definition of views. + +Inside the rules, Kimwitu++ allows to integrate C++ code; it also provides +some extensions to C++. For each node type, a class is generated, which can +be extended with user-defined methods. + +WWW: http://site.informatik.hu-berlin.de/kimwitu++/ diff --git a/devel/kimwitu++/pkg-plist b/devel/kimwitu++/pkg-plist new file mode 100644 index 000000000000..a3987ba70257 --- /dev/null +++ b/devel/kimwitu++/pkg-plist @@ -0,0 +1 @@ +bin/kc++ |