From 1553ab42003e3a1b5b08f63bbbe2c35a4ba0b935 Mon Sep 17 00:00:00 2001 From: Thomas Zander Date: Wed, 3 Sep 2014 20:17:33 +0000 Subject: MFH: r367223 - Stagify - Fix build on clang - Add MAKE_JOBS_UNSAFE - Add LICENSE - Add DOCS option - Bump PORTREVISION - Pet portlint PR: 191049 Submitted by: k@stereochro.me Reviewed by: cpm@fbsd.es, joemann@beefree.free.de, marino, riggs Final patch by: cpm@fbsd.es, riggs Approved by: portmgr (erwin) --- lang/maude/Makefile | 35 +++++++++++++++------- lang/maude/files/extra-patch-Mixfix-lexerAux | 22 ++++++++++++++ .../files/patch-src__BuiltIn__stringOpSymbol.cc | 11 +++++++ lang/maude/files/patch-src__Mixfix__bottom.yy | 11 +++++++ lang/maude/files/patch-src__Mixfix__commands.yy | 17 +++++++++++ lang/maude/files/patch-src__Mixfix__interact.cc | 18 +++++++++++ lang/maude/files/patch-src__Mixfix__modules.yy | 11 +++++++ lang/maude/files/patch-src__Mixfix__token.cc | 11 +++++++ lang/maude/files/patch-src__Mixfix__top.yy | 25 ++++++++++++++++ .../files/patch-src__ObjectSystem__configSymbol.hh | 11 +++++++ .../files/patch-src__ObjectSystem__objectMap.cc | 11 +++++++ ...__ObjectSystem__objectSystemRewritingContext.hh | 11 +++++++ lang/maude/files/patch-src__Utility__ropeStuff.hh | 20 +++++++++++++ 13 files changed, 203 insertions(+), 11 deletions(-) create mode 100644 lang/maude/files/extra-patch-Mixfix-lexerAux create mode 100644 lang/maude/files/patch-src__BuiltIn__stringOpSymbol.cc create mode 100644 lang/maude/files/patch-src__Mixfix__bottom.yy create mode 100644 lang/maude/files/patch-src__Mixfix__commands.yy create mode 100644 lang/maude/files/patch-src__Mixfix__interact.cc create mode 100644 lang/maude/files/patch-src__Mixfix__modules.yy create mode 100644 lang/maude/files/patch-src__Mixfix__token.cc create mode 100644 lang/maude/files/patch-src__Mixfix__top.yy create mode 100644 lang/maude/files/patch-src__ObjectSystem__configSymbol.hh create mode 100644 lang/maude/files/patch-src__ObjectSystem__objectMap.cc create mode 100644 lang/maude/files/patch-src__ObjectSystem__objectSystemRewritingContext.hh create mode 100644 lang/maude/files/patch-src__Utility__ropeStuff.hh diff --git a/lang/maude/Makefile b/lang/maude/Makefile index 6c5902791866..2cc9be084653 100644 --- a/lang/maude/Makefile +++ b/lang/maude/Makefile @@ -3,17 +3,22 @@ PORTNAME= maude PORTVERSION= 2.6 +PORTREVISION= 1 CATEGORIES= lang MASTER_SITES= http://maude.cs.uiuc.edu/versions/${PORTVERSION}/ DISTNAME= Maude-${PORTVERSION} -MAINTAINER= joemann@beefree.free.de -COMMENT= A high-performance reflective language +MAINTAINER= ports@FreeBSD.org +COMMENT= High-performance reflective language -LIB_DEPENDS= bdd:${PORTSDIR}/science/buddy \ - tecla:${PORTSDIR}/devel/libtecla \ - gmp:${PORTSDIR}/math/gmp \ - sigsegv:${PORTSDIR}/devel/libsigsegv +LICENSE= GPLv2 +LICENSE_FILE= ${WRKSRC}/COPYING + +BUILD_DEPENDS= ${LOCALBASE}/bin/flex:${PORTSDIR}/textproc/flex +LIB_DEPENDS= libbdd.so:${PORTSDIR}/science/buddy \ + libtecla.so:${PORTSDIR}/devel/libtecla \ + libgmp.so:${PORTSDIR}/math/gmp \ + libsigsegv.so:${PORTSDIR}/devel/libsigsegv USES= bison USE_AUTOTOOLS= aclocal autoheader automake @@ -22,16 +27,22 @@ GNU_CONFIGURE= yes CPPFLAGS+= -I${LOCALBASE}/include LDFLAGS+= -L${LOCALBASE}/lib CONFIGURE_ARGS= --datadir=${DATADIR} +MAKE_JOBS_UNSAFE= yes FULL_MAUDE_VER= 26b -OPTIONS_DEFINE= FULL_MAUDE +OPTIONS_DEFINE= DOCS FULL_MAUDE OPTIONS_DEFAULT= FULL_MAUDE FULL_MAUDE_DESC= Install full-maude${FULL_MAUDE_VER} -NO_STAGE= yes +PORTDOCS= AUTHORS COPYING ChangeLog INSTALL NEWS README + .include +.if ${OSVERSION} >= 1000000 +EXTRA_PATCHES+= ${FILESDIR}/extra-patch-Mixfix-lexerAux +.endif + .if ${PORT_OPTIONS:MFULL_MAUDE} MASTER_SITES+= http://maude.lcc.uma.es/FullMaude/FM${FULL_MAUDE_VER}/:fm FULL_MAUDE= full-maude${FULL_MAUDE_VER}.maude @@ -45,8 +56,8 @@ PLIST_SUB+= FULL_MAUDE_VER="${FULL_MAUDE_VER}" PLIST_SUB+= FULL_MAUDE="@comment " .endif -.if ${PORT_OPTIONS:MFULL_MAUDE} post-extract: +.if ${PORT_OPTIONS:MFULL_MAUDE} ${UNZIP_CMD} ${DISTDIR}/${FULL_MAUDE_DIST} ${FULL_MAUDE} -d ${WRKDIR} .endif @@ -54,9 +65,11 @@ post-patch: @${REINPLACE_CMD} -e 's|%%DATADIR%%|${DATADIR}|' \ ${WRKSRC}/src/Mixfix/global.hh -.if ${PORT_OPTIONS:MFULL_MAUDE} post-install: - ${INSTALL_DATA} ${WRKDIR}/${FULL_MAUDE} ${DATADIR} + ${MKDIR} ${STAGEDIR}${DOCSDIR} + cd ${WRKSRC} && ${INSTALL_DATA} ${PORTDOCS} ${STAGEDIR}${DOCSDIR} +.if ${PORT_OPTIONS:MFULL_MAUDE} + ${INSTALL_DATA} ${WRKDIR}/${FULL_MAUDE} ${STAGEDIR}${DATADIR} .endif .include diff --git a/lang/maude/files/extra-patch-Mixfix-lexerAux b/lang/maude/files/extra-patch-Mixfix-lexerAux new file mode 100644 index 000000000000..f37b92b29821 --- /dev/null +++ b/lang/maude/files/extra-patch-Mixfix-lexerAux @@ -0,0 +1,22 @@ +--- ./src/Mixfix/lexerAux.cc.orig 2014-09-03 02:54:57.000000000 +0200 ++++ ./src/Mixfix/lexerAux.cc 2014-09-03 02:55:40.000000000 +0200 +@@ -35,7 +35,7 @@ + bool fakeNewlineStack[MAX_IN_DEPTH]; + + void +-getInput(char* buf, int& result, int max_size) ++getInput(char* buf, size_t& result, size_t max_size) + { + result = YY_NULL; + if (UserLevelRewritingContext::interrupted()) +--- ./src/Mixfix/lexerAux.hh.orig 2014-09-03 02:56:33.000000000 +0200 ++++ ./src/Mixfix/lexerAux.hh 2014-09-03 02:57:05.000000000 +0200 +@@ -27,7 +27,7 @@ + //extern int inStackPtr; + //extern YY_BUFFER_STATE inStack[]; + +-void getInput(char* buf, int& result, int max_size); ++void getInput(char* buf, size_t& result, size_t max_size); + void lexerIdMode(); + void lexerTokenTreeMode(int terminatingTokens); + void lexerCmdMode(); diff --git a/lang/maude/files/patch-src__BuiltIn__stringOpSymbol.cc b/lang/maude/files/patch-src__BuiltIn__stringOpSymbol.cc new file mode 100644 index 000000000000..f1d236663614 --- /dev/null +++ b/lang/maude/files/patch-src__BuiltIn__stringOpSymbol.cc @@ -0,0 +1,11 @@ +--- ./src/BuiltIn/stringOpSymbol.cc.orig 2014-09-03 02:36:06.000000000 +0200 ++++ ./src/BuiltIn/stringOpSymbol.cc 2014-09-03 02:32:45.000000000 +0200 +@@ -472,7 +472,7 @@ + const mpz_class& n0 = succSymbol->getNat(a0); + if (n0 <= 255) + { +- char c = n0.get_si(); ++ char c[2] = { n0.get_si(), 0 }; + return rewriteToString(subject, context, crope(c)); + } + } diff --git a/lang/maude/files/patch-src__Mixfix__bottom.yy b/lang/maude/files/patch-src__Mixfix__bottom.yy new file mode 100644 index 000000000000..5da5f16bd82f --- /dev/null +++ b/lang/maude/files/patch-src__Mixfix__bottom.yy @@ -0,0 +1,11 @@ +--- ./src/Mixfix/bottom.yy.orig 2014-09-03 02:49:14.000000000 +0200 ++++ ./src/Mixfix/bottom.yy 2014-09-03 02:50:56.000000000 +0200 +@@ -23,7 +23,7 @@ + %% + + static void +-yyerror(char *s) ++yyerror(UserLevelRewritingContext::ParseResult *parseResult, char *s) + { + if (!(UserLevelRewritingContext::interrupted())) + IssueWarning(LineNumber(lineNumber) << ": " << s); diff --git a/lang/maude/files/patch-src__Mixfix__commands.yy b/lang/maude/files/patch-src__Mixfix__commands.yy new file mode 100644 index 000000000000..c5ee2ba8312b --- /dev/null +++ b/lang/maude/files/patch-src__Mixfix__commands.yy @@ -0,0 +1,17 @@ +--- ./src/Mixfix/commands.yy.orig 2014-09-03 02:51:54.000000000 +0200 ++++ ./src/Mixfix/commands.yy 2014-09-03 02:53:05.000000000 +0200 +@@ -23,12 +23,12 @@ + /* + * Commands. + */ +-command : KW_SELECT { lexBubble(END_COMMAND, 1) } ++command : KW_SELECT { lexBubble(END_COMMAND, 1); } + endBubble + { + interpreter.setCurrentModule(lexerBubble); + } +- | KW_DUMP { lexBubble(END_COMMAND, 1) } ++ | KW_DUMP { lexBubble(END_COMMAND, 1); } + endBubble + { + if (interpreter.setCurrentModule(lexerBubble)) diff --git a/lang/maude/files/patch-src__Mixfix__interact.cc b/lang/maude/files/patch-src__Mixfix__interact.cc new file mode 100644 index 000000000000..e1b4925ceba5 --- /dev/null +++ b/lang/maude/files/patch-src__Mixfix__interact.cc @@ -0,0 +1,18 @@ +--- ./src/Mixfix/interact.cc.orig 2014-09-03 02:53:35.000000000 +0200 ++++ ./src/Mixfix/interact.cc 2014-09-03 02:54:14.000000000 +0200 +@@ -25,13 +25,14 @@ + // + #include + ++#include "surface.h" ++ + bool UserLevelRewritingContext::interactiveFlag = true; + bool UserLevelRewritingContext::ctrlC_Flag = false; + bool UserLevelRewritingContext::stepFlag = false; + bool UserLevelRewritingContext::abortFlag = false; + int UserLevelRewritingContext::debugLevel = 0; + +-int yyparse(void*); + void cleanUpParser(); + void cleanUpLexer(); + diff --git a/lang/maude/files/patch-src__Mixfix__modules.yy b/lang/maude/files/patch-src__Mixfix__modules.yy new file mode 100644 index 000000000000..370f3194d30a --- /dev/null +++ b/lang/maude/files/patch-src__Mixfix__modules.yy @@ -0,0 +1,11 @@ +--- ./src/Mixfix/modules.yy.orig 2014-09-03 02:57:44.000000000 +0200 ++++ ./src/Mixfix/modules.yy 2014-09-03 02:58:03.000000000 +0200 +@@ -247,7 +247,7 @@ + // press on. + // + opDescription = lexerBubble; +- lexBubble(END_STATEMENT, 1) ++ lexBubble(END_STATEMENT, 1); + } + endBubble + { diff --git a/lang/maude/files/patch-src__Mixfix__token.cc b/lang/maude/files/patch-src__Mixfix__token.cc new file mode 100644 index 000000000000..b32f6565b47f --- /dev/null +++ b/lang/maude/files/patch-src__Mixfix__token.cc @@ -0,0 +1,11 @@ +--- ./src/Mixfix/token.cc.orig 2014-09-03 02:58:50.000000000 +0200 ++++ ./src/Mixfix/token.cc 2014-09-03 02:59:18.000000000 +0200 +@@ -632,7 +632,7 @@ + } + } + } +- result.append(c); ++ result.push_back(c); + seenBackslash = false; + } + CantHappen("bad end to string"); diff --git a/lang/maude/files/patch-src__Mixfix__top.yy b/lang/maude/files/patch-src__Mixfix__top.yy new file mode 100644 index 000000000000..f95be50776fe --- /dev/null +++ b/lang/maude/files/patch-src__Mixfix__top.yy @@ -0,0 +1,25 @@ +--- ./src/Mixfix/top.yy.orig 2014-09-03 03:00:02.000000000 +0200 ++++ ./src/Mixfix/top.yy 2014-09-03 03:02:15.000000000 +0200 +@@ -59,7 +59,6 @@ + #define store(token) tokenSequence.append(token) + #define fragClear() fragments.contractTo(0); + #define fragStore(token) fragments.append(token) +-#define YYPARSE_PARAM parseResult + #define PARSE_RESULT (*((UserLevelRewritingContext::ParseResult*) parseResult)) + + #define CM interpreter.getCurrentModule() +@@ -91,12 +90,13 @@ + Int64 number; + Int64 number2; + +-static void yyerror(char *s); ++static void yyerror(UserLevelRewritingContext::ParseResult *parseResult, char *s); + + void cleanUpModuleExpression(); + void cleanUpParser(); + void missingSpace(const Token& token); + %} ++%parse-param { UserLevelRewritingContext::ParseResult *parseResult } + %pure_parser + + %union diff --git a/lang/maude/files/patch-src__ObjectSystem__configSymbol.hh b/lang/maude/files/patch-src__ObjectSystem__configSymbol.hh new file mode 100644 index 000000000000..43d8a90e1774 --- /dev/null +++ b/lang/maude/files/patch-src__ObjectSystem__configSymbol.hh @@ -0,0 +1,11 @@ +--- ./src/ObjectSystem/configSymbol.hh.orig 2014-09-03 02:37:37.000000000 +0200 ++++ ./src/ObjectSystem/configSymbol.hh 2014-09-03 02:38:05.000000000 +0200 +@@ -50,7 +50,7 @@ + private: + struct symbolLt + { +- bool operator()(const Symbol* d1, const Symbol* d2) ++ bool operator()(const Symbol* d1, const Symbol* d2) const + { + return d1->compare(d2) < 0; + } diff --git a/lang/maude/files/patch-src__ObjectSystem__objectMap.cc b/lang/maude/files/patch-src__ObjectSystem__objectMap.cc new file mode 100644 index 000000000000..29d4faa153d4 --- /dev/null +++ b/lang/maude/files/patch-src__ObjectSystem__objectMap.cc @@ -0,0 +1,11 @@ +--- ./src/ObjectSystem/objectMap.cc.orig 2014-09-03 02:39:09.000000000 +0200 ++++ ./src/ObjectSystem/objectMap.cc 2014-09-03 02:39:20.000000000 +0200 +@@ -50,7 +50,7 @@ + + struct ConfigSymbol::dagNodeLt + { +- bool operator()(const DagNode* d1, const DagNode* d2) ++ bool operator()(const DagNode* d1, const DagNode* d2) const + { + return d1->compare(d2) < 0; + } diff --git a/lang/maude/files/patch-src__ObjectSystem__objectSystemRewritingContext.hh b/lang/maude/files/patch-src__ObjectSystem__objectSystemRewritingContext.hh new file mode 100644 index 000000000000..84652ced73f4 --- /dev/null +++ b/lang/maude/files/patch-src__ObjectSystem__objectSystemRewritingContext.hh @@ -0,0 +1,11 @@ +--- ./src/ObjectSystem/objectSystemRewritingContext.hh.orig 2014-09-03 02:40:31.000000000 +0200 ++++ ./src/ObjectSystem/objectSystemRewritingContext.hh 2014-09-03 02:40:48.000000000 +0200 +@@ -62,7 +62,7 @@ + private: + struct dagNodeLt + { +- bool operator()(const DagNode* d1, const DagNode* d2) ++ bool operator()(const DagNode* d1, const DagNode* d2) const + { + return d1->compare(d2) < 0; + } diff --git a/lang/maude/files/patch-src__Utility__ropeStuff.hh b/lang/maude/files/patch-src__Utility__ropeStuff.hh new file mode 100644 index 000000000000..5ba62e4d60a0 --- /dev/null +++ b/lang/maude/files/patch-src__Utility__ropeStuff.hh @@ -0,0 +1,20 @@ +--- ./src/Utility/ropeStuff.hh.orig 2014-09-03 02:27:15.000000000 +0200 ++++ ./src/Utility/ropeStuff.hh 2014-09-03 02:28:58.000000000 +0200 +@@ -25,6 +25,11 @@ + // + #ifndef _ropeStuff_hh_ + #define _ropeStuff_hh_ ++#include ++#ifdef _LIBCPP_VERSION ++#include ++typedef std::string crope; ++#else + #ifdef __GNUC__ + #if __GNUC__ < 3 + #include +@@ -50,3 +55,5 @@ + #include + #endif + #endif ++ ++#endif -- cgit v1.2.3