aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--lang/Makefile1
-rw-r--r--lang/maude/Makefile30
-rw-r--r--lang/maude/distinfo3
-rw-r--r--lang/maude/files/patch-src_Mixfix_main.cc26
-rw-r--r--lang/maude/pkg-descr25
-rw-r--r--lang/maude/pkg-plist6
6 files changed, 91 insertions, 0 deletions
diff --git a/lang/Makefile b/lang/Makefile
index b1069892637c..6870a94e8306 100644
--- a/lang/Makefile
+++ b/lang/Makefile
@@ -135,6 +135,7 @@
SUBDIR += lua-mode.el
SUBDIR += lua4
SUBDIR += lush
+ SUBDIR += maude
SUBDIR += mawk
SUBDIR += mdk
SUBDIR += metaocaml
diff --git a/lang/maude/Makefile b/lang/maude/Makefile
new file mode 100644
index 000000000000..fa1d8510cd05
--- /dev/null
+++ b/lang/maude/Makefile
@@ -0,0 +1,30 @@
+# New ports collection makefile for: maude
+# Date created: 25 Mar 2005
+# Whom: Rick van der Zwet <rick@wzoeterwoude.net>
+#
+# $FreeBSD$
+#
+
+PORTNAME= maude
+PORTVERSION= 2.2
+CATEGORIES= lang
+MASTER_SITES= http://maude.cs.uiuc.edu/download/current/
+DISTNAME= Maude-${PORTVERSION}
+
+MAINTAINER= rick@wzoeterwoude.net
+COMMENT= A high-performance reflective language
+
+BUILD_DEPENDS= bison:${PORTSDIR}/devel/bison
+LIB_DEPENDS= bdd:${PORTSDIR}/science/buddy \
+ tecla:${PORTSDIR}/devel/libtecla \
+ gmp:${PORTSDIR}/math/libgmp4
+
+GNU_CONFIGURE= yes
+CONFIGURE_ENV= CPPFLAGS="-I${LOCALBASE}/include" LDFLAGS="-L${LOCALBASE}/lib"
+CONFIGURE_ARGS= --datadir=${DATADIR}
+
+post-patch:
+ @${REINPLACE_CMD} -e 's|%%DATADIR%%|${DATADIR}|' \
+ ${WRKSRC}/src/Mixfix/main.cc
+
+.include <bsd.port.mk>
diff --git a/lang/maude/distinfo b/lang/maude/distinfo
new file mode 100644
index 000000000000..38ef0a556087
--- /dev/null
+++ b/lang/maude/distinfo
@@ -0,0 +1,3 @@
+MD5 (Maude-2.2.tar.gz) = c3b3cadec1ab792a64f0d441e56de15a
+SHA256 (Maude-2.2.tar.gz) = 7b85941cb8441eeca23ed3ea291ea6ac9571ce09a9a28a2193e8414b1ca13118
+SIZE (Maude-2.2.tar.gz) = 8243200
diff --git a/lang/maude/files/patch-src_Mixfix_main.cc b/lang/maude/files/patch-src_Mixfix_main.cc
new file mode 100644
index 000000000000..96138bd9b679
--- /dev/null
+++ b/lang/maude/files/patch-src_Mixfix_main.cc
@@ -0,0 +1,26 @@
+--- src/Mixfix/main.cc.orig Wed Apr 5 22:46:48 2006
++++ src/Mixfix/main.cc Wed Apr 5 22:49:23 2006
+@@ -284,6 +284,11 @@
+ directory = ".";
+ return true;
+ }
++ if (directoryManager.checkAccess("%%DATADIR%%", fileName, R_OK))
++ {
++ directory = "%%DATADIR%%";
++ return true;
++ }
+ IssueWarning(LineNumber(FileTable::AUTOMATIC) <<
+ ": unable to locate file: " << QUOTE(fileName));
+ return false;
+@@ -307,6 +312,11 @@
+ directoryManager.checkAccess(executableDirectory, fileName, R_OK, ext))
+ {
+ directory = executableDirectory;
++ return true;
++ }
++ if (directoryManager.checkAccess("%%DATADIR%%", fileName, R_OK))
++ {
++ directory = "%%DATADIR%%";
+ return true;
+ }
+ }
diff --git a/lang/maude/pkg-descr b/lang/maude/pkg-descr
new file mode 100644
index 000000000000..a7cf187e67ee
--- /dev/null
+++ b/lang/maude/pkg-descr
@@ -0,0 +1,25 @@
+Maude is a high-performance reflective language and system supporting both
+equational and rewriting logic specification and programming for a wide range
+of applications. Maude has been influenced in important ways by the OBJ3
+language, which can be regarded as an equational logic sublanguage. Besides
+supporting equational specification and programming, Maude also supports
+rewriting logic computation.
+
+Rewriting logic is a logic of concurrent change that can naturally deal with
+state and with concurrent computations. It has good properties as a general
+semantic framework for giving executable semantics to a wide range of
+languages and models of concurrency. In particular, it supports very well
+concurrent object-oriented computation. The same reasons making rewriting
+logic a good semantic framework make it also a good logical framework, that
+is, a metalogic in which many other logics can be naturally represented and
+executed.
+
+Maude supports in a systematic and efficient way logical reflection. This
+makes Maude remarkably extensible and powerful, supports an extensible algebra
+of module composition operations, and allows many advanced metaprogramming and
+metalanguage applications. Indeed, some of the most interesting applications
+of Maude are metalanguage applications, in which Maude is used to create
+executable environments for different logics, theorem provers, languages, and
+models of computation.
+
+WWW: http://maude.cs.uiuc.edu/
diff --git a/lang/maude/pkg-plist b/lang/maude/pkg-plist
new file mode 100644
index 000000000000..efcc928aa1de
--- /dev/null
+++ b/lang/maude/pkg-plist
@@ -0,0 +1,6 @@
+bin/maude
+%%DATADIR%%/linear.maude
+%%DATADIR%%/model-checker.maude
+%%DATADIR%%/prelude.maude
+%%DATADIR%%/socket.maude
+@dirrm %%DATADIR%%