aboutsummaryrefslogtreecommitdiff
path: root/lang/rexx-regina
diff options
context:
space:
mode:
authorKurt Jaeger <pi@FreeBSD.org>2016-08-29 18:37:40 +0000
committerKurt Jaeger <pi@FreeBSD.org>2016-08-29 18:37:40 +0000
commitf1e794db90ee2873a3aebd4dec19e104401fe8ec (patch)
tree8fd463b0cc0d533c931e5e0aaf68fb8a32370b08 /lang/rexx-regina
parent3ee368c7bc9d1d2a72eae4773c54b467f946d71c (diff)
downloadports-f1e794db90ee2873a3aebd4dec19e104401fe8ec.tar.gz
ports-f1e794db90ee2873a3aebd4dec19e104401fe8ec.zip
lang/rexx-regina: 3.8.2 -> 3.9.1
- submitter becomes maintainer - Makefile tidied, and passes portlint -C - rc.d file corrected; now passes rclint - port now installs documentation (PDF), not previously included - added DOCS option, controlling installation of above - files in /usr/local/share now in directories that actually match the name of the port PR: 212242 Submitted by: bob@eager.cx
Notes
Notes: svn path=/head/; revision=421087
Diffstat (limited to 'lang/rexx-regina')
-rw-r--r--lang/rexx-regina/Makefile31
-rw-r--r--lang/rexx-regina/distinfo9
-rw-r--r--lang/rexx-regina/files/patch-Makefile.in11
-rw-r--r--lang/rexx-regina/files/patch-builtin.c29
-rw-r--r--lang/rexx-regina/files/patch-configure15
-rw-r--r--lang/rexx-regina/files/patch-files.c56
-rw-r--r--lang/rexx-regina/files/patch-options.c11
-rw-r--r--lang/rexx-regina/files/patch-regutil_inifile.c39
-rw-r--r--lang/rexx-regina/files/patch-regutil_regfilesys.c11
-rw-r--r--lang/rexx-regina/files/patch-regutil_regini.c10
-rw-r--r--lang/rexx-regina/files/patch-regutil_regmacrospace.c56
-rw-r--r--lang/rexx-regina/files/patch-regutil_regscreenux.c40
-rw-r--r--lang/rexx-regina/files/patch-regutil_regtrig.c11
-rw-r--r--lang/rexx-regina/files/patch-regutil_regunicode.c10
-rw-r--r--lang/rexx-regina/files/patch-regutil_regutil.c19
-rw-r--r--lang/rexx-regina/files/patch-rxstack.c38
-rw-r--r--lang/rexx-regina/files/patch-strmath.c11
-rw-r--r--lang/rexx-regina/files/rxstack.in13
-rw-r--r--lang/rexx-regina/pkg-plist2
19 files changed, 399 insertions, 23 deletions
diff --git a/lang/rexx-regina/Makefile b/lang/rexx-regina/Makefile
index 47d3f55f808d..1f61a0590f9e 100644
--- a/lang/rexx-regina/Makefile
+++ b/lang/rexx-regina/Makefile
@@ -2,21 +2,24 @@
# $FreeBSD$
PORTNAME= regina
-PORTVERSION= 3.8.2
-PORTREVISION= 1
+PORTVERSION= 3.9.1
CATEGORIES= lang
-MASTER_SITES= SF/${PORTNAME}-rexx/${PORTNAME}-rexx/${PORTVERSION}
+MASTER_SITES= SF/${PORTNAME}-rexx/${PORTNAME}-rexx/${PORTVERSION}:source \
+ SF/${PORTNAME}-rexx/${PORTNAME}-documentation/${PORTVERSION}:docs
PKGNAMEPREFIX= rexx-
DISTNAME= Regina-REXX-${PORTVERSION}
+DISTFILES= ${DISTNAME}${EXTRACT_SUFX}:source
+DIST_SUBDIR= ${PORTNAME}
+EXTRACT_ONLY= Regina-REXX-${PORTVERSION}.tar.gz
-MAINTAINER= ports@FreeBSD.org
+MAINTAINER= bob@eager.cx
COMMENT= Rexx interpreter
LICENSE= LGPL21+
BROKEN_powerpc64= Does not build
-USES= gmake iconv tar:bzip2
+USES= gmake iconv ncurses
USE_RC_SUBR= rxstack
GNU_CONFIGURE= yes
CONFIGURE_ENV= ac_cv_c_char_unsigned=yes
@@ -24,12 +27,15 @@ CONFIGURE_ARGS= --with-addon-dir=${PREFIX}/lib/Regina-REXX/addons
USE_LDCONFIG= yes
MAKE_JOBS_UNSAFE= yes
-DATADIR= ${PREFIX}/share/Regina-REXX
-EXAMPLESDIR= ${PREFIX}/share/examples/Regina-REXX
+DATADIR= ${PREFIX}/share/${PKGNAMEPREFIX}${PORTNAME}
+DOCSDIR= ${PREFIX}/share/doc/${PKGNAMEPREFIX}${PORTNAME}
+EXAMPLESDIR= ${PREFIX}/share/examples/${PKGNAMEPREFIX}${PORTNAME}
CONFLICTS= rexx-imc-[0-0]* oorexx-[0-9]*
-OPTIONS_DEFINE= EXAMPLES
+OPTIONS_DEFINE= DOCS EXAMPLES
+DOCS_DISTFILES= regina.pdf:docs \
+ regutil.pdf:docs
.include <bsd.port.options.mk>
@@ -37,6 +43,10 @@ OPTIONS_DEFINE= EXAMPLES
CONFIGURE_ARGS+= --enable-32bit
.endif
+post-extract-DOCS-on:
+ @${CP} ${DISTDIR}/${DIST_SUBDIR}/regina.pdf ${WRKDIR}
+ @${CP} ${DISTDIR}/${DIST_SUBDIR}/regutil.pdf ${WRKDIR}
+
post-patch:
@${REINPLACE_CMD} -e \
'/$${CFLAGS}/s|^|#| ; \
@@ -45,4 +55,9 @@ post-patch:
'/^examplesdir/s|=.*|= $$(datadir)/examples/$$(PACKAGE)| ; \
/$$(sysconfdir)/s|^|#|' ${WRKSRC}/Makefile.in
+post-install-DOCS-on:
+ ${MKDIR} ${STAGEDIR}${DOCSDIR}
+ ${INSTALL_MAN} ${WRKDIR}/regina.pdf ${STAGEDIR}${DOCSDIR}
+ ${INSTALL_MAN} ${WRKDIR}/regutil.pdf ${STAGEDIR}${DOCSDIR}
+
.include <bsd.port.mk>
diff --git a/lang/rexx-regina/distinfo b/lang/rexx-regina/distinfo
index ebdc3cc89796..95b63a2a14d0 100644
--- a/lang/rexx-regina/distinfo
+++ b/lang/rexx-regina/distinfo
@@ -1,2 +1,7 @@
-SHA256 (Regina-REXX-3.8.2.tar.bz2) = 7a83b5caccdd14aa0cef71971af41fc3eaeb14b842c35ff8dda4c673d354a78b
-SIZE (Regina-REXX-3.8.2.tar.bz2) = 1006856
+TIMESTAMP = 1472469079
+SHA256 (regina/Regina-REXX-3.9.1.tar.gz) = 5d13df26987e27f25e7779a2efa87a5775213beeda449a9efac59b57a5d5f3ee
+SIZE (regina/Regina-REXX-3.9.1.tar.gz) = 1358458
+SHA256 (regina/regina.pdf) = b64693e9629b09eb5ea1e74cb246b11645cbc1f32197dcfbb97f5a5f35786ca4
+SIZE (regina/regina.pdf) = 3646139
+SHA256 (regina/regutil.pdf) = 7f75ff9cdca0b659695bb33df18aa0d6b4bc20b2817cc5ab401bbdfabf78fa9f
+SIZE (regina/regutil.pdf) = 283470
diff --git a/lang/rexx-regina/files/patch-Makefile.in b/lang/rexx-regina/files/patch-Makefile.in
new file mode 100644
index 000000000000..b43519fa6c4f
--- /dev/null
+++ b/lang/rexx-regina/files/patch-Makefile.in
@@ -0,0 +1,11 @@
+--- Makefile.in.orig 2014-10-19 04:03:24 UTC
++++ Makefile.in
+@@ -944,7 +944,7 @@ regtrig.$(OBJ): $(regutildir)/regtrig.c
+ $(CC) -c $(COPT) $(CC2O) $(DYN_COMP) $(regutildir)/regtrig.c
+
+ $(SHLPRE)regutil$(MODPST): $(REGUTILOBJ) $(SHLPRE)$(SHLFILE)$(SHLPST) $(REGUTILEXP)
+- $(LD_RXLIB_UTILA) $(REGUTILEXPORTS) $(REGUTILOBJ) $(LD_RXLIB_UTILB) $(BOTHLIBS) #$(REGUTIL_TERM_LIB) $(REGUTIL_MATH_LIB)
++ $(LD_RXLIB_UTILA) $(REGUTILEXPORTS) $(REGUTILOBJ) $(LD_RXLIB_UTILB) $(BOTHLIBS) $(REGUTIL_TERM_LIB) $(REGUTIL_MATH_LIB)
+ $(RANLIB_DYNAMIC)
+
+
diff --git a/lang/rexx-regina/files/patch-builtin.c b/lang/rexx-regina/files/patch-builtin.c
new file mode 100644
index 000000000000..40c2d9925bc8
--- /dev/null
+++ b/lang/rexx-regina/files/patch-builtin.c
@@ -0,0 +1,29 @@
+--- builtin.c.orig 2015-03-31 04:38:58 UTC
++++ builtin.c
+@@ -1039,7 +1039,7 @@ streng *std_time( tsd_t *TSD, cparamboxp
+ break ;
+
+ case 'L':
+- answer->len = sprintf(answer->value, "%02d:%02d:%02d.%06ld", tmdata.tm_hour, tmdata.tm_min, tmdata.tm_sec, unow );
++ answer->len = sprintf(answer->value, "%02d:%02d:%02d.%06ld", tmdata.tm_hour, tmdata.tm_min, tmdata.tm_sec, (long) unow );
+ break ;
+
+ case 'M':
+@@ -1068,7 +1068,7 @@ streng *std_time( tsd_t *TSD, cparamboxp
+
+ case 'T':
+ rnow = mktime( &tmdata );
+- answer->len = sprintf(answer->value, "%ld", rnow );
++ answer->len = sprintf(answer->value, "%ld", (long) rnow );
+ break ;
+
+ default:
+@@ -1308,7 +1308,7 @@ streng *std_date( tsd_t *TSD, cparamboxp
+ case 'T':
+ tmdata.tm_year -= 1900;
+ rnow = mktime( &tmdata );
+- answer->len = sprintf(answer->value, "%ld", rnow );
++ answer->len = sprintf(answer->value, "%ld", (long) rnow );
+ break ;
+
+ case 'U':
diff --git a/lang/rexx-regina/files/patch-configure b/lang/rexx-regina/files/patch-configure
index eb32856f13ae..e251c3fd5bed 100644
--- a/lang/rexx-regina/files/patch-configure
+++ b/lang/rexx-regina/files/patch-configure
@@ -1,6 +1,6 @@
---- configure.orig 2014-06-29 02:01:39 UTC
+--- configure.orig 2015-01-18 20:33:40 UTC
+++ configure
-@@ -3486,6 +3486,13 @@ case "$target" in
+@@ -3490,6 +3490,13 @@ case "$target" in
osis64bit=yes
fi
;;
@@ -11,21 +11,21 @@
+ osis64bit=yes
+ fi
+ ;;
- *-freebsd*)
+ *-freebsd* | *-openbsd*)
mach="`uname -m`"
if test "$mach" = "amd64"; then
-@@ -6235,6 +6242,10 @@ rm -f core conftest.err conftest.$ac_obj
+@@ -6256,6 +6263,10 @@ rm -f core conftest.err conftest.$ac_obj
;;
*linux*)
;;
+ *dragonfly*)
+ THREADING_COMPILE="-pthread -D_REENTRANT -DPOSIX -DREGINA_REENTRANT"
-+ THREADING_LINK="-lpthread"
++ THREADING_LINK="-pthread"
+ ;;
*freebsd*)
THREADING_COMPILE="-pthread -D_REENTRANT -DPOSIX -DREGINA_REENTRANT"
THREADING_LINK="-pthread"
-@@ -8658,7 +8669,13 @@ case "$target" in
+@@ -8679,7 +8690,14 @@ case "$target" in
SHLPRE="lib"
SHL_LD="ld -assert pure-text -o ${SHLPRE}${SHLFILE}${SHLPST} "'$('SHOFILES')'
;;
@@ -35,12 +35,13 @@
+ LD_RXLIB_A2="$ac_cv_prog_CC -shared ${LDFLAGS} -o \$(@)"
+ LD_RXLIB_UTILA="$ac_cv_prog_CC -shared ${LDFLAGS} -o \$(@)"
+ SHL_LD="$ac_cv_prog_CC -shared ${LDFLAGS} -o ${SHLPRE}${SHLFILE}${SHLPST} -Wl,-soname=${SHLPRE}${SHLFILE}${SHLPST} "'$('SHOFILES')'
++ REGINA_PACKAGE_NAME="rexx-regina"
+ ;;
+ *openbsd*)
if test "$ac_cv_prog_CC" = "gcc" -o "$ac_cv_prog_CC" = "g++" -o "$ac_cv_prog_CC" = "clang"; then
LD_RXLIB_A1="$ac_cv_prog_CC -shared ${LDFLAGS} -o \$(@)"
LD_RXLIB_A2="$ac_cv_prog_CC -shared ${LDFLAGS} -o \$(@)"
-@@ -9407,7 +9424,7 @@ $as_echo_n "checking OS distribution nam
+@@ -9429,7 +9447,7 @@ $as_echo_n "checking OS distribution nam
$as_echo "$MYDISTRO" >&6; }
else
case "$target" in
diff --git a/lang/rexx-regina/files/patch-files.c b/lang/rexx-regina/files/patch-files.c
new file mode 100644
index 000000000000..0a978a45106d
--- /dev/null
+++ b/lang/rexx-regina/files/patch-files.c
@@ -0,0 +1,56 @@
+--- files.c.orig 2015-04-04 05:20:44 UTC
++++ files.c
+@@ -4252,9 +4252,9 @@ static streng *getstatus( tsd_t *TSD, co
+ sprintf( result->value, "%I64u", buffer.st_ctime );
+ #else
+ if ( sizeof(off_t) > 4 )
+- sprintf( result->value, "%lld", buffer.st_ctime );
++ sprintf( result->value, "%lld", (long long) buffer.st_ctime );
+ else
+- sprintf( result->value, "%ld", buffer.st_ctime);
++ sprintf( result->value, "%ld", (long) buffer.st_ctime);
+ #endif
+ }
+ break;
+@@ -4270,9 +4270,9 @@ static streng *getstatus( tsd_t *TSD, co
+ sprintf( result->value, "%I64u", buffer.st_mtime );
+ #else
+ if ( sizeof(off_t) > 4 )
+- sprintf( result->value, "%lld", buffer.st_mtime );
++ sprintf( result->value, "%lld", (long long) buffer.st_mtime );
+ else
+- sprintf( result->value, "%ld", buffer.st_mtime);
++ sprintf( result->value, "%ld", (long) buffer.st_mtime);
+ #endif
+ }
+ break;
+@@ -4288,9 +4288,9 @@ static streng *getstatus( tsd_t *TSD, co
+ sprintf( result->value, "%I64u", buffer.st_atime );
+ #else
+ if ( sizeof(off_t) > 4 )
+- sprintf( result->value, "%lld", buffer.st_atime );
++ sprintf( result->value, "%lld", (long long) buffer.st_atime );
+ else
+- sprintf( result->value, "%ld", buffer.st_atime);
++ sprintf( result->value, "%ld", (long) buffer.st_atime);
+ #endif
+ }
+ break;
+@@ -6061,7 +6061,7 @@ static streng *get_external_routine_file
+ if ( *fp == NULL )
+ return NULL;
+
+- my_fullpath( TSD, buf, inname );
++ my_fullpath( (tsd_t *) TSD, buf, inname );
+
+ return Str_crestrTSD( buf );
+ }
+@@ -6673,7 +6673,7 @@ int my_fullpathstreng( const tsd_t *TSD,
+ int retval;
+
+ copy = str_ofTSD( src );
+- retval = my_fullpath( TSD, dst, copy );
++ retval = my_fullpath( (tsd_t *) TSD, dst, copy );
+ FreeTSD( copy );
+
+ return retval;
diff --git a/lang/rexx-regina/files/patch-options.c b/lang/rexx-regina/files/patch-options.c
new file mode 100644
index 000000000000..80b4fc0d372f
--- /dev/null
+++ b/lang/rexx-regina/files/patch-options.c
@@ -0,0 +1,11 @@
+--- options.c.orig 2012-06-11 07:26:33 UTC
++++ options.c
+@@ -125,7 +125,7 @@ void do_options( const tsd_t *TSD, procl
+ */
+ if ( get_options_flag( pl, EXT_SINGLE_INTERPRETER ) )
+ {
+- setGlobalTSD( TSD );
++ setGlobalTSD( (tsd_t *) TSD );
+ }
+ }
+
diff --git a/lang/rexx-regina/files/patch-regutil_inifile.c b/lang/rexx-regina/files/patch-regutil_inifile.c
new file mode 100644
index 000000000000..1356f7c7fe03
--- /dev/null
+++ b/lang/rexx-regina/files/patch-regutil_inifile.c
@@ -0,0 +1,39 @@
+--- regutil/inifile.c.orig 2014-10-25 01:36:33 UTC
++++ regutil/inifile.c
+@@ -31,6 +31,7 @@
+ #include <ctype.h>
+
+ #include "inifile.h"
++#include </usr/include/strings.h>
+
+ typedef struct value_T {
+ struct value_T * N;
+@@ -197,7 +198,7 @@ static int read_ini_raw(inif_t fit)
+ fseek(fit->fp, 0, SEEK_SET);
+
+ while ((oldoff = ftell(fit->fp)),
+- fgets(buf, sizeof(buf), fit->fp) != NULL) {
++ fgets((char *) buf, sizeof(buf), fit->fp) != NULL) {
+
+ /* skip leading whitespace */
+ for (i = 0; !pt[buf[i]]; i++)
+@@ -207,8 +208,8 @@ static int read_ini_raw(inif_t fit)
+ * line */
+ switch (pt[buf[i]]) {
+ /* errors */
+- case CV_RBRACK: n = "closing bracket"; goto oops;
+- case CV_EQUALS: n = "equals sign"; goto oops;
++ case CV_RBRACK: n = (unsigned char *) "closing bracket"; goto oops;
++ case CV_EQUALS: n = (unsigned char *) "equals sign"; goto oops;
+
+ oops:
+ fprintf(stderr, "oops: line starts with %s: %s\n", n, buf);
+@@ -287,7 +288,7 @@ static int read_ini_raw(inif_t fit)
+ * write anything before the first section */
+ case CV_EOS:
+ case CV_COMMENT:
+- i = strlen(buf);
++ i = strlen((char *) buf);
+ if (lvt) {
+ lvt->comment = realloc(lvt->comment, cl + i + 1);
+ memcpy(lvt->comment+cl, buf, i+1);
diff --git a/lang/rexx-regina/files/patch-regutil_regfilesys.c b/lang/rexx-regina/files/patch-regutil_regfilesys.c
new file mode 100644
index 000000000000..9b2c68f4c687
--- /dev/null
+++ b/lang/rexx-regina/files/patch-regutil_regfilesys.c
@@ -0,0 +1,11 @@
+--- regutil/regfilesys.c.orig 2015-04-04 08:16:55 UTC
++++ regutil/regfilesys.c
+@@ -27,6 +27,8 @@
+ #endif
+
+ #include "regutil.h"
++
++#pragma clang diagnostic ignored "-Wpointer-sign"
+ #include <errno.h>
+ #ifdef __EMX__
+ # include <sys/types.h>
diff --git a/lang/rexx-regina/files/patch-regutil_regini.c b/lang/rexx-regina/files/patch-regutil_regini.c
new file mode 100644
index 000000000000..e17cda9b8d3e
--- /dev/null
+++ b/lang/rexx-regina/files/patch-regutil_regini.c
@@ -0,0 +1,10 @@
+--- regutil/regini.c.orig 2014-10-30 04:54:43 UTC
++++ regutil/regini.c
+@@ -26,6 +26,7 @@
+ #endif
+
+ #include "regutil.h"
++#include </usr/include/strings.h>
+
+ #ifdef _WIN32
+ # include <windows.h>
diff --git a/lang/rexx-regina/files/patch-regutil_regmacrospace.c b/lang/rexx-regina/files/patch-regutil_regmacrospace.c
new file mode 100644
index 000000000000..fa2392bfd4d2
--- /dev/null
+++ b/lang/rexx-regina/files/patch-regutil_regmacrospace.c
@@ -0,0 +1,56 @@
+--- regutil/regmacrospace.c.orig 2009-10-07 07:51:51 UTC
++++ regutil/regmacrospace.c
+@@ -59,7 +59,7 @@ rxfunc(sysaddrexxmacro)
+ flags = RXMACRO_SEARCH_AFTER;
+ }
+
+- result->strlength = sprintf(result->strptr, "%d", RexxAddMacro(fn, file, flags));
++ result->strlength = sprintf(result->strptr, "%lu", RexxAddMacro(fn, file, flags));
+
+ return 0;
+ }
+@@ -69,7 +69,7 @@ rxfunc(sysclearrexxmacrospace)
+ {
+ checkparam(0, 0);
+
+- result->strlength = sprintf(result->strptr, "%d", RexxClearMacroSpace());
++ result->strlength = sprintf(result->strptr, "%lu", RexxClearMacroSpace());
+ return 0;
+ }
+
+@@ -81,7 +81,7 @@ rxfunc(sysdroprexxmacro)
+
+ rxstrdup(fn, argv[0]);
+
+- result->strlength = sprintf(result->strptr, "%d", RexxDropMacro(fn));
++ result->strlength = sprintf(result->strptr, "%lu", RexxDropMacro(fn));
+ return 0;
+ }
+
+@@ -94,7 +94,7 @@ rxfunc(sysloadrexxmacrospace)
+
+ rxstrdup(file, argv[0]);
+
+- result->strlength = sprintf(result->strptr, "%d", RexxLoadMacroSpace(0, NULL, file));
++ result->strlength = sprintf(result->strptr, "%lu", RexxLoadMacroSpace(0, NULL, file));
+ return 0;
+ }
+
+@@ -143,7 +143,7 @@ rxfunc(sysreorderrexxmacro)
+ else
+ flags = RXMACRO_SEARCH_BEFORE;
+
+- result->strlength = sprintf(result->strptr, "%d", RexxReorderMacro(fn, flags));
++ result->strlength = sprintf(result->strptr, "%lu", RexxReorderMacro(fn, flags));
+
+ return 0;
+ }
+@@ -157,7 +157,7 @@ rxfunc(syssaverexxmacrospace)
+
+ rxstrdup(file, argv[0]);
+
+- result->strlength = sprintf(result->strptr, "%d", RexxSaveMacroSpace(0, NULL, file));
++ result->strlength = sprintf(result->strptr, "%lu", RexxSaveMacroSpace(0, NULL, file));
+ return 0;
+ }
+
diff --git a/lang/rexx-regina/files/patch-regutil_regscreenux.c b/lang/rexx-regina/files/patch-regutil_regscreenux.c
new file mode 100644
index 000000000000..583d619759bb
--- /dev/null
+++ b/lang/rexx-regina/files/patch-regutil_regscreenux.c
@@ -0,0 +1,40 @@
+--- regutil/regscreenux.c.orig 2012-08-08 01:23:45 UTC
++++ regutil/regscreenux.c
+@@ -21,6 +21,8 @@
+ * $Header: /opt/cvs/Regina/regutil/regscreenux.c,v 1.9 2012/08/08 01:23:45 mark Exp $
+ */
+ #include "regutil.h"
++#include </usr/include/strings.h>
++
+ #ifdef USE_TERMCAP_DB
+ # ifdef HAVE_NCURSES_H
+ # include <ncurses.h>
+@@ -91,7 +93,7 @@ rxfunc(syscls)
+
+ if (!*clr) {
+ sethandles();
+- clr = tgetstr("cl", &clrbuf);
++ clr = tgetstr("cl", (char **) &clrbuf);
+ }
+ #else
+ /* ansi terminal control for clearing the screen should work with any
+@@ -128,7 +130,7 @@ rxfunc(syscurpos)
+ #ifdef USE_TERMCAP_DB
+ if (!*cpos) {
+ sethandles();
+- cpos = tgetstr("cm", &cposbuf);
++ cpos = tgetstr("cm", (char **) &cposbuf);
+ }
+ #endif
+
+@@ -179,8 +181,8 @@ rxfunc(syscurstate)
+ if (!*css) {
+ char *pcss = css;
+ sethandles();
+- pcsson = tgetstr("ve", &css);
+- pcssoff = tgetstr("vi", &css);
++ pcsson = tgetstr("ve", (char **) &css);
++ pcssoff = tgetstr("vi", (char **) &css);
+ }
+ #endif
+
diff --git a/lang/rexx-regina/files/patch-regutil_regtrig.c b/lang/rexx-regina/files/patch-regutil_regtrig.c
new file mode 100644
index 000000000000..e127ded125bd
--- /dev/null
+++ b/lang/rexx-regina/files/patch-regutil_regtrig.c
@@ -0,0 +1,11 @@
+--- regutil/regtrig.c.orig 2014-06-22 03:53:33 UTC
++++ regutil/regtrig.c
+@@ -124,7 +124,7 @@ static void FormatResult(double res, uns
+ }
+ else
+ /* format the result */
+- result->strlength = sprintf( result->strptr, "%.*f", precision, res );
++ result->strlength = sprintf( result->strptr, "%.*f", (int) precision, res );
+ /* end in a period? */
+ if (result->strptr[result->strlength - 1] == '.')
+ result->strlength--; /* remove the period */
diff --git a/lang/rexx-regina/files/patch-regutil_regunicode.c b/lang/rexx-regina/files/patch-regutil_regunicode.c
new file mode 100644
index 000000000000..197edd8dcb4f
--- /dev/null
+++ b/lang/rexx-regina/files/patch-regutil_regunicode.c
@@ -0,0 +1,10 @@
+--- regutil/regunicode.c.orig 2012-08-08 01:26:20 UTC
++++ regutil/regunicode.c
+@@ -20,6 +20,7 @@
+ *
+ * $Header: /opt/cvs/Regina/regutil/regunicode.c,v 1.3 2012/08/08 01:26:20 mark Exp $
+ */
++#include </usr/include/strings.h>
+ #include "rxproto.h"
+
+ #ifdef _WIN32
diff --git a/lang/rexx-regina/files/patch-regutil_regutil.c b/lang/rexx-regina/files/patch-regutil_regutil.c
new file mode 100644
index 000000000000..da7c7c8169e8
--- /dev/null
+++ b/lang/rexx-regina/files/patch-regutil_regutil.c
@@ -0,0 +1,19 @@
+--- regutil/regutil.c.orig 2014-10-19 04:07:12 UTC
++++ regutil/regutil.c
+@@ -183,6 +183,8 @@ extern void *getRexxUtilFunctionAddress(
+ }
+ #endif
+
++#pragma clang diagnostic push
++#pragma clang diagnostic ignored "-Wincompatible-pointer-types"
+ /* sysloadfuncs() */
+ rxfunc(sysloadfuncs)
+ {
+@@ -198,6 +200,7 @@ rxfunc(sysloadfuncs)
+
+ return 0;
+ }
++#pragma clang diagnostic pop
+
+
+ /* sysdropfuncs() */
diff --git a/lang/rexx-regina/files/patch-rxstack.c b/lang/rexx-regina/files/patch-rxstack.c
new file mode 100644
index 000000000000..fc89bffbc801
--- /dev/null
+++ b/lang/rexx-regina/files/patch-rxstack.c
@@ -0,0 +1,38 @@
+--- rxstack.c.orig 2014-06-22 03:45:14 UTC
++++ rxstack.c
+@@ -1575,7 +1575,7 @@ int rxstack_pull_line_off_queue( Client
+ if ( q->oldest == NULL )
+ q->oldest = client;
+ rc = RXSTACK_WAITING; /* waiting */
+- DEBUGDUMP(printf("waiting until %ld.%d\n", client->deadline.seconds,client->deadline.milli ););
++ DEBUGDUMP(printf("waiting until %ld.%d\n", (long) client->deadline.seconds,client->deadline.milli ););
+ }
+ }
+ }
+@@ -1854,7 +1854,7 @@ int rxstack_process_websockets_headers(
+ key[end-start] = '\0';
+
+ start = strstr(ws_headers, "\r\n\r\n");
+- DEBUGDUMP(printf("end of headers at %x: [%s]\n",start,start ););
++ DEBUGDUMP(printf("end of headers at %x: [%s]\n",(unsigned int) start,start ););
+
+ /*
+ * Generate our response key
+@@ -2958,7 +2958,7 @@ int rxstack_doit( )
+ rc = 0 ; /* already timed out */
+ if ( ( rc == -1 ) || ( rc > DEFAULT_WAKEUP ) )
+ rc = DEFAULT_WAKEUP ;
+- DEBUGDUMP(printf("), to=%d) ms at %ld,%03d\n", rc, now.seconds, now.milli ););
++ DEBUGDUMP(printf("), to=%d) ms at %ld,%03d\n", rc, (long) now.seconds, now.milli ););
+ #if defined(HAVE_POLL) && (defined(HAVE_POLL_H) || defined(HAVE_SYS_POLL_H))
+ rc = poll( pd, poll_cnt, rc ) ;
+ #else
+@@ -2967,7 +2967,7 @@ int rxstack_doit( )
+ rc = select( max_sock + 1, &ready, (fd_set *)0, (fd_set *)0, &to ) ;
+ #endif
+ now = get_now( ) ;
+- DEBUGDUMP(printf("****** after waiting(), rc=%d at %ld,%03d\n", rc, now.seconds, now.milli ););
++ DEBUGDUMP(printf("****** after waiting(), rc=%d at %ld,%03d\n", rc, (long) now.seconds, now.milli ););
+ if ( rc < 0 )
+ {
+ if ( os_errno != EINTR ) /* Win32 doesn't know about it ? */
diff --git a/lang/rexx-regina/files/patch-strmath.c b/lang/rexx-regina/files/patch-strmath.c
new file mode 100644
index 000000000000..388bccd8d0f1
--- /dev/null
+++ b/lang/rexx-regina/files/patch-strmath.c
@@ -0,0 +1,11 @@
+--- strmath.c.orig 2012-08-09 00:43:53 UTC
++++ strmath.c
+@@ -296,7 +296,7 @@ int descr_to_int( const tsd_t *TSD, cons
+ streng *h;
+
+ h = name_of_node( TSD, NULL, input );
+- fs = tmpstr_of( TSD, h );
++ fs = tmpstr_of( (tsd_t *) TSD, h );
+ Free_stringTSD( h );
+ switch( errnum )
+ {
diff --git a/lang/rexx-regina/files/rxstack.in b/lang/rexx-regina/files/rxstack.in
index 58d2341e34b3..3da90aed0e60 100644
--- a/lang/rexx-regina/files/rxstack.in
+++ b/lang/rexx-regina/files/rxstack.in
@@ -3,7 +3,7 @@
# $FreeBSD$
#
# PROVIDE: rxstack
-# REQUIRE: DAEMON
+# REQUIRE: LOGIN
# KEYWORD: shutdown
#
# Add the following lines to /etc/rc.conf.local or /etc/rc.conf
@@ -16,14 +16,15 @@
. /etc/rc.subr
-name="rxstack"
+name=rxstack
rcvar=rxstack_enable
-
-command=%%PREFIX%%/bin/${name}
+desc="Regina REXX queue daemon"
load_rc_config $name
-: ${rxstack_enable="NO"}
-: ${rxstack_flags="-d"}
+: ${rxstack_enable:=NO}
+
+command=%%PREFIX%%/bin/${name}
+command_args=-d
run_rc_command "$1"
diff --git a/lang/rexx-regina/pkg-plist b/lang/rexx-regina/pkg-plist
index 366b186b2e43..d08183ab3026 100644
--- a/lang/rexx-regina/pkg-plist
+++ b/lang/rexx-regina/pkg-plist
@@ -21,6 +21,8 @@ man/man1/rxstack.1.gz
%%DATADIR%%/pt.mtb
%%DATADIR%%/sv.mtb
%%DATADIR%%/tr.mtb
+%%PORTDOCS%%%%DOCSDIR%%/regina.pdf
+%%PORTDOCS%%%%DOCSDIR%%/regutil.pdf
%%PORTEXAMPLES%%%%EXAMPLESDIR%%/animal.rexx
%%PORTEXAMPLES%%%%EXAMPLESDIR%%/block.rexx
%%PORTEXAMPLES%%%%EXAMPLESDIR%%/dateconv.rexx