aboutsummaryrefslogtreecommitdiff
path: root/devel/kimwitu++
diff options
context:
space:
mode:
authorYing-Chieh Liao <ijliao@FreeBSD.org>2001-04-23 16:02:11 +0000
committerYing-Chieh Liao <ijliao@FreeBSD.org>2001-04-23 16:02:11 +0000
commit975808169825ad8af03d264edc9e5ef051735154 (patch)
tree6ef8c19f07201b8b01b5e913f48deb463e051e29 /devel/kimwitu++
parent0c7ea54ffe053e27ffebe3c85fbb9e0808fcd3e7 (diff)
downloadports-975808169825ad8af03d264edc9e5ef051735154.tar.gz
ports-975808169825ad8af03d264edc9e5ef051735154.zip
Notes
Diffstat (limited to 'devel/kimwitu++')
-rw-r--r--devel/kimwitu++/Makefile21
-rw-r--r--devel/kimwitu++/distinfo1
-rw-r--r--devel/kimwitu++/files/patch-src::Makefile.in25
-rw-r--r--devel/kimwitu++/pkg-comment1
-rw-r--r--devel/kimwitu++/pkg-descr25
-rw-r--r--devel/kimwitu++/pkg-plist1
6 files changed, 74 insertions, 0 deletions
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++