aboutsummaryrefslogtreecommitdiff
path: root/textproc/sgmlformat
diff options
context:
space:
mode:
authorBartek Rutkowski <robak@FreeBSD.org>2015-03-14 10:27:54 +0000
committerBartek Rutkowski <robak@FreeBSD.org>2015-03-14 10:27:54 +0000
commit939b26e8f591419bc6bf07a796380129184a2c17 (patch)
tree0086895710efb196c241e0bef4cd1db5af122b4d /textproc/sgmlformat
parent4a98411960e9ed79d870d4c419ca7699f7e1531c (diff)
downloadports-939b26e8f591419bc6bf07a796380129184a2c17.tar.gz
ports-939b26e8f591419bc6bf07a796380129184a2c17.zip
Notes
Diffstat (limited to 'textproc/sgmlformat')
-rw-r--r--textproc/sgmlformat/Makefile2
-rw-r--r--textproc/sgmlformat/files/patch-regex.txt201
2 files changed, 82 insertions, 121 deletions
diff --git a/textproc/sgmlformat/Makefile b/textproc/sgmlformat/Makefile
index b074cf7bafda..5340bb109e45 100644
--- a/textproc/sgmlformat/Makefile
+++ b/textproc/sgmlformat/Makefile
@@ -3,7 +3,7 @@
PORTNAME= sgmlformat
PORTVERSION= 1.7
-PORTREVISION= 5
+PORTREVISION= 6
CATEGORIES= textproc print
MASTER_SITES= ${MASTER_SITE_LOCAL}
MASTER_SITE_SUBDIR= kuriyama
diff --git a/textproc/sgmlformat/files/patch-regex.txt b/textproc/sgmlformat/files/patch-regex.txt
index 2770d9c16a80..c9129bd89846 100644
--- a/textproc/sgmlformat/files/patch-regex.txt
+++ b/textproc/sgmlformat/files/patch-regex.txt
@@ -1,5 +1,5 @@
---- instant/tables.c
-+++ instant/tables.c
+--- instant/tables.c.orig 1996-09-08 03:55:10.000000000 +0200
++++ instant/tables.c 2013-11-30 23:51:25.000000000 +0100
@@ -84,7 +84,7 @@
#include <sys/types.h>
#include <errno.h>
@@ -9,14 +9,79 @@
#include "general.h"
#include "translate.h"
---- instant/translate.h
-+++ instant/translate.h
+--- instant/traninit.c.orig 1997-07-16 18:44:12.000000000 +0200
++++ instant/traninit.c 2013-11-30 23:51:25.000000000 +0100
+@@ -69,7 +69,7 @@
+ #include <memory.h>
+ #include <sys/types.h>
+ #include <errno.h>
+-#include <regexp.h>
++#include <regex.h>
+
+ #include "general.h"
+ #include "translate.h"
+@@ -100,6 +100,23 @@
+ void AddSDATA(const char *from, const char *to);
+
+ /* ______________________________________________________________________ */
++/* minimal compatibility wrapper for UNIX V8 regexp, match only
++ */
++
++static regex_t *v8_regcomp(const char *pattern)
++{
++ regex_t *re;
++ if ((re = malloc(sizeof(regex_t))) != NULL) {
++ if (regcomp(re, pattern, REG_EXTENDED|REG_NOSUB)) {
++ free(re);
++ return NULL;
++ }
++ }
++ return re;
++}
++#define regcomp v8_regcomp
++
++/* ______________________________________________________________________ */
+ /* Read the translation specs from the input file, storing in memory.
+ * Arguments:
+ * Name of translation spec file.
+--- instant/translate.c.orig 1996-09-08 03:55:10.000000000 +0200
++++ instant/translate.c 2013-11-30 23:51:25.000000000 +0100
+@@ -69,7 +69,7 @@
+ #include <memory.h>
+ #include <sys/types.h>
+ #include <errno.h>
+-#include <regexp.h>
++#include <regex.h>
+
+ #include "general.h"
+ #define STORAGE
+@@ -82,6 +82,18 @@
+ static void WasProcessed(Element_t *);
+
+ /* ______________________________________________________________________ */
++/* minimal compatibility wrapper for UNIX V8 regexp, match only
++ */
++
++static int v8_regexec(const regex_t *re, const char *string)
++{
++ if (re == NULL)
++ return 0;
++ return !regexec(re, string, 0, NULL, 0);
++}
++#define regexec v8_regexec
++
++/* ______________________________________________________________________ */
+ /* Translate the subtree starting at 'e'. Output goes to 'fp'.
+ * This is the entry point for translating an instance.
+ * Arguments:
+--- instant/translate.h.orig 1996-09-08 03:55:10.000000000 +0200
++++ instant/translate.h 2013-11-30 23:51:25.000000000 +0100
@@ -75,7 +75,7 @@
typedef struct {
char *name; /* attribute name string */
char *val; /* attribute value string */
- regexp *rex; /* attribute value reg expr (compiled) */
-+ regex_t rex; /* attribute value reg expr (compiled) */
++ regex_t *rex; /* attribute value reg expr (compiled) */
} AttPair_t;
typedef struct _Trans {
@@ -25,7 +90,7 @@
char **gilist; /* list of element names (multiple gi's) */
char *context; /* context in tree - looking depth levels up */
- regexp *context_re; /* tree heirarchy looking depth levels up */
-+ regex_t context_re; /* tree heirarchy looking depth levels up */
++ regex_t *context_re; /* tree heirarchy looking depth levels up */
int depth; /* number of levels to look up the tree */
AttPair_t *attpair; /* attr name-value pairs */
int nattpairs; /* number of name-value pairs */
@@ -33,117 +98,23 @@
int nth_child; /* GI is Nth child of this of parent element */
char *content; /* element has this string in content */
- regexp *content_re; /* content reg expr (compiled) */
-+ regex_t content_re; /* content reg expr (compiled) */
++ regex_t *content_re; /* content reg expr (compiled) */
char *pattrset; /* is this attr set (any value) in parent? */
char *var_name; /* variable name */
char *var_value; /* variable value */
char *var_RE_name; /* variable name (for VarREValue) */
- regexp *var_RE_value; /* variable value (compiled, for VarREValue) */
-+ regex_t var_RE_value; /* variable value (compiled, for VarREValue) */
++ regex_t *var_RE_value; /* variable value (compiled, for VarREValue) */
Map_t *relations; /* various relations to check */
/* actions */
---- instant/traninit.c
-+++ instant/traninit.c
-@@ -69,7 +69,7 @@
- #include <memory.h>
- #include <sys/types.h>
- #include <errno.h>
--#include <regexp.h>
-+#include <regex.h>
+@@ -150,4 +150,3 @@
+ void OSFtable(Element_t *, FILE *, char **, int);
- #include "general.h"
- #include "translate.h"
-@@ -392,7 +392,7 @@
- tok = Split(cp, &i, S_STRDUP);
- T.var_RE_name = tok[0];
- ExpandVariables(tok[1], buf, 0);
-- if (!(T.var_RE_value=regcomp(buf))) {
-+ if (regcomp(&T.var_RE_value, buf, 0) != 0) {
- fprintf(stderr, "Regex error in VarREValue Content: %s\n",
- tok[1]);
- }
-@@ -454,7 +454,7 @@
-
- if (do_regex) {
- t->depth = MAX_DEPTH;
-- if (!(t->context_re=regcomp(t->context))) {
-+ if (regcomp(&t->context_re, t->context, 0) != 0) {
- fprintf(stderr, "Regex error in Context: %s\n", t->context);
- }
- }
-@@ -493,17 +493,17 @@
- else { /* value not found */
- t->attpair[i].val = ".";
- }
-- if (!(t->attpair[i].rex=regcomp(t->attpair[i].val))) {
-+ if (regcomp(&t->attpair[i].rex, t->attpair[i].val, 0) != 0) {
- fprintf(stderr, "Regex error in AttValue: %s %s\n",
- t->attpair[i].name, t->attpair[i].val);
- }
- }
-
- /* Compile regular expression for content */
-- t->content_re = 0;
-+ //t->content_re = 0;
- if (t->content) {
- ExpandVariables(t->content, buf, 0);
-- if (!(t->content_re=regcomp(buf)))
-+ if (regcomp(&t->content_re, buf, 0) != 0)
- fprintf(stderr, "Regex error in Content: %s\n",
- t->content);
- }
---- instant/translate.c
-+++ instant/translate.c
-@@ -69,7 +69,7 @@
- #include <memory.h>
- #include <sys/types.h>
- #include <errno.h>
--#include <regexp.h>
-+#include <regex.h>
-
- #include "general.h"
- #define STORAGE
-@@ -418,9 +418,9 @@
- FindContext(e, t->depth, context);
-
- /* If reg expr set, do regex compare; else just string compare. */
-- if (t->context_re) {
-- if (! regexec(t->context_re, context)) continue;
-- }
-+ //if (t->context_re) {
-+ if (! regexec(&t->context_re, context, 0, NULL, 0)) continue;
-+ //}
- else {
- /* Is depth of spec deeper than element's depth? */
- if (t->depth > e->depth) continue;
-@@ -439,7 +439,7 @@
- match = 0;
- break;
- }
-- if (!regexec(t->attpair[a].rex, atval)) match = 0;
-+ if (!regexec(&t->attpair[a].rex, atval, 0, NULL, 0)) match = 0;
- }
- if (!match) continue;
- }
-@@ -499,13 +499,13 @@
- /* check for variable regular expression match */
- if ( t->var_RE_name ) {
- cp = FindMappingVal(Variables, t->var_RE_name);
-- if (!cp || !regexec(t->var_RE_value, cp)) continue;
-+ if (!cp || !regexec(&t->var_RE_value, cp, 0, NULL, 0)) continue;
- }
-
- /* check content */
- if (t->content) { /* no att specified -> a match */
- for (match=0,i=0; i<e->ndcont; i++) {
-- if (regexec(t->content_re, e->dcont[i])) {
-+ if (regexec(&t->content_re, e->dcont[i], 0, NULL, 0)) {
- match = 1;
- break;
- }
---- instant/tranvar.c
-+++ instant/tranvar.c
+ /* ______________________________________________________________________ */
+-
+--- instant/tranvar.c.orig 1997-02-07 03:40:45.000000000 +0100
++++ instant/tranvar.c 2013-11-30 23:51:25.000000000 +0100
@@ -66,7 +66,7 @@
#include <sys/types.h>
#include <errno.h>
@@ -153,8 +124,8 @@
#include "general.h"
#include "translate.h"
---- instant/util.c
-+++ instant/util.c
+--- instant/util.c.orig 1996-09-08 03:55:10.000000000 +0200
++++ instant/util.c 2013-11-30 23:51:25.000000000 +0100
@@ -85,7 +85,7 @@
#include <sys/stat.h>
#include <sys/file.h>
@@ -164,13 +135,3 @@
/* CSS don't have it and I don't see where it's used
#include <values.h>
*/
---- instant/Makefile
-+++ instant/Makefile
-@@ -6,7 +6,6 @@
- SRCS+= sgmls.c
-
- CFLAGS+=-DTRANSPEC_DIR=\"${TRANSPEC_DIR}\"
--LDADD= -lcompat
-
- MAN1= instant.1
- MAN5= transpec.5