aboutsummaryrefslogtreecommitdiffstats
path: root/devel/noweb
diff options
context:
space:
mode:
authormarkm <markm@FreeBSD.org>2003-11-14 16:06:58 +0800
committermarkm <markm@FreeBSD.org>2003-11-14 16:06:58 +0800
commitc72b4276c9ec0b93b82b21f812fd7e2a982fb38d (patch)
treed720593d9f4817aaf7d896de78402537e93dc74f /devel/noweb
parentab928b39ab3651bf6e84fef28824b35ad9b4273a (diff)
downloadfreebsd-ports-graphics-c72b4276c9ec0b93b82b21f812fd7e2a982fb38d.tar.gz
freebsd-ports-graphics-c72b4276c9ec0b93b82b21f812fd7e2a982fb38d.tar.zst
freebsd-ports-graphics-c72b4276c9ec0b93b82b21f812fd7e2a982fb38d.zip
Small bug fix. This is of strong relevance to the Axiom port which
I hope to commit in a week or three.
Diffstat (limited to 'devel/noweb')
-rw-r--r--devel/noweb/Makefile3
-rw-r--r--devel/noweb/files/patch-Makefile (renamed from devel/noweb/files/patch-a)0
-rw-r--r--devel/noweb/files/patch-c_modules.c109
-rw-r--r--devel/noweb/files/patch-c_modules.nw21
4 files changed, 133 insertions, 0 deletions
diff --git a/devel/noweb/Makefile b/devel/noweb/Makefile
index 49da1f33bf9..b6c0fcf6e70 100644
--- a/devel/noweb/Makefile
+++ b/devel/noweb/Makefile
@@ -27,6 +27,9 @@ MLINKS= notangle.1 noweave.1 notangle.1 nountangle.1
NOWEBTEXDIR= ${PREFIX}/share/texmf-local/tex/plain/noweb
NOWEBLATEXDIR= ${PREFIX}/share/texmf-local/tex/latex/noweb
+post-patch:
+ @${TOUCH} ${WRKSRC}/c/modules.[ch]
+
post-build:
@(cd ${WRKSRC} && ${SH} ${WRKSRC}/awkname awk)
diff --git a/devel/noweb/files/patch-a b/devel/noweb/files/patch-Makefile
index 85f093cd3e6..85f093cd3e6 100644
--- a/devel/noweb/files/patch-a
+++ b/devel/noweb/files/patch-Makefile
diff --git a/devel/noweb/files/patch-c_modules.c b/devel/noweb/files/patch-c_modules.c
new file mode 100644
index 00000000000..0162d0e5d93
--- /dev/null
+++ b/devel/noweb/files/patch-c_modules.c
@@ -0,0 +1,109 @@
+--- c/modules.c.orig Wed Mar 28 14:49:00 2001
++++ c/modules.c Thu Nov 13 20:15:53 2003
+@@ -17,7 +17,7 @@
+
+ static
+ void append(Module mp, struct modpart *p);
+-#line 227 "modules.nw"
++#line 233 "modules.nw"
+ static int seekcycle(Module mp, Parent parent);
+ #line 132 "modules.nw"
+ static char *lastfilename = 0;
+@@ -81,12 +81,12 @@
+ struct parent thismodule; /* the value only matters when we're expanding a module */
+
+
+-#line 219 "modules.nw"
++#line 225 "modules.nw"
+ thismodule.this = mp;
+ thismodule.parent = parent;
+ #line 153 "modules.nw"
+
+-#line 222 "modules.nw"
++#line 228 "modules.nw"
+ if (seekcycle(mp, parent)) {
+ errormsg(Error, "<<%s>>", mp->name);
+ return Error;
+@@ -111,11 +111,12 @@
+ #line 157 "modules.nw"
+ ; break;
+ case MODULE:
+-#line 201 "modules.nw"
++#line 206 "modules.nw"
+ newmod = lookup(p->contents);
+ if (newmod==NULL) {
+- errormsg (Error, "undefined chunk name: <<%s>>", p->contents);
++ errormsg (Error, "ignoring undefined chunk name: <<%s>>", p->contents);
+ error=Error;
++ printf("<<%s>>",p->contents);
+ } else {
+ int retcode;
+ if (*locformat == 0 && partial_distance == 0) {
+@@ -142,7 +143,7 @@
+ }
+ return error;
+ }
+-#line 229 "modules.nw"
++#line 235 "modules.nw"
+ static int seekcycle(Module mp, Parent parent) {
+ if (parent == NULL) {
+ return 0;
+@@ -155,14 +156,14 @@
+ return 0;
+ }
+ }
+-#line 251 "modules.nw"
++#line 257 "modules.nw"
+ int printloc(FILE *fp, char *fmt, Location loc, int partial) {
+ char *p;
+ if (*fmt
+ && (loc.filename!=lastfilename || lastlineno != loc.lineno)) {
+ if (partial) putc('\n',fp);
+
+-#line 263 "modules.nw"
++#line 269 "modules.nw"
+ for (p = fmt; *p; p++) {
+ if (*p == '%') {
+ switch (*++p) {
+@@ -177,35 +178,35 @@
+ p += 2;
+ } else
+
+-#line 283 "modules.nw"
++#line 289 "modules.nw"
+ { static int complained = 0;
+ if (!complained) {
+ errormsg(Error,"Bad format sequence ``%%%c'' in -L%s",*p,fmt);
+ complained = 1;
+ }
+ }
+-#line 277 "modules.nw"
++#line 283 "modules.nw"
+ break;
+ default:
+-#line 283 "modules.nw"
++#line 289 "modules.nw"
+ { static int complained = 0;
+ if (!complained) {
+ errormsg(Error,"Bad format sequence ``%%%c'' in -L%s",*p,fmt);
+ complained = 1;
+ }
+ }
+-#line 278 "modules.nw"
++#line 284 "modules.nw"
+ break;
+ }
+ } else putc(*p, fp);
+ }
+-#line 257 "modules.nw"
++#line 263 "modules.nw"
+ lastfilename = loc.filename;
+ lastlineno = loc.lineno;
+ return 1;
+ } else return 0;
+ }
+-#line 309 "modules.nw"
++#line 315 "modules.nw"
+ void remove_final_newline (Module mp) {
+ /* remove trailing newline that must be in module */
+ if (mp->tail==NULL) /* module has no text */
diff --git a/devel/noweb/files/patch-c_modules.nw b/devel/noweb/files/patch-c_modules.nw
new file mode 100644
index 00000000000..c46d2d83ca8
--- /dev/null
+++ b/devel/noweb/files/patch-c_modules.nw
@@ -0,0 +1,21 @@
+--- c/modules.nw.orig Wed Mar 28 14:44:00 2001
++++ c/modules.nw Mon Nov 10 09:25:05 2003
+@@ -197,11 +197,17 @@
+ out as a special case.
+ This change probably blows the case where the module being expanded is
+ empty.
++
++If the lookup fails then the module (or chunk) is an undefined name.
++We complain about it but want to output the original source.
++We just wrap it in the bogus chunk name in the angle brackets
++that it must have had in the input and output it. (Tim Daly Nov 13, 2002)
+ <<expand a module>>=
+ newmod = lookup(p->contents);
+ if (newmod==NULL) {
+- errormsg (Error, "undefined chunk name: @<<%s@>>", p->contents);
++ errormsg (Error, "ignoring undefined chunk name: @<<%s@>>", p->contents);
+ error=Error;
++ printf("@<<%s@>>",p->contents);
+ } else {
+ int retcode;
+ if (*locformat == 0 && partial_distance == 0) {