summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMario Sergio Fujikawa Ferreira <lioux@FreeBSD.org>2005-10-17 23:40:35 +0000
committerMario Sergio Fujikawa Ferreira <lioux@FreeBSD.org>2005-10-17 23:40:35 +0000
commitdcf0c8b7257e9154b6fcacc34c7ffdf797844d8f (patch)
treec8f88ddf78e225263f7dae1ed902c6cab44eb699
parentUpdate to 1.3.5 (diff)
o Add compatibility patch against FreeBSD's texinfo. Define new
tags: - defentry - defsection o Bump PORTREVISION
Notes
Notes: svn path=/head/; revision=145698
-rw-r--r--print/texinfo/Makefile2
-rw-r--r--print/texinfo/files/patch-util__install-info.c90
2 files changed, 91 insertions, 1 deletions
diff --git a/print/texinfo/Makefile b/print/texinfo/Makefile
index 28cac5d8c00b..c99f87d5f66a 100644
--- a/print/texinfo/Makefile
+++ b/print/texinfo/Makefile
@@ -7,7 +7,7 @@
PORTNAME= texinfo
PORTVERSION= 4.8
-PORTREVISION= 1
+PORTREVISION= 2
CATEGORIES= print
MASTER_SITES= ${MASTER_SITE_GNU}
MASTER_SITE_SUBDIR= ${PORTNAME}
diff --git a/print/texinfo/files/patch-util__install-info.c b/print/texinfo/files/patch-util__install-info.c
new file mode 100644
index 000000000000..e1696c071e88
--- /dev/null
+++ b/print/texinfo/files/patch-util__install-info.c
@@ -0,0 +1,90 @@
+--- util/install-info.c.orig Mon Oct 17 21:05:19 2005
++++ util/install-info.c Mon Oct 17 21:24:07 2005
+@@ -22,6 +22,7 @@
+ #include <getopt.h>
+
+ static char *progname = "install-info";
++static char *default_section = NULL;
+
+ struct spec_entry;
+ struct spec_section;
+@@ -120,6 +121,8 @@
+ struct option longopts[] =
+ {
+ { "delete", no_argument, NULL, 'r' },
++ { "defentry", required_argument, NULL, 'E' },
++ { "defsection", required_argument, NULL, 'S' },
+ { "dir-file", required_argument, NULL, 'd' },
+ { "entry", required_argument, NULL, 'e' },
+ { "help", no_argument, NULL, 'h' },
+@@ -439,6 +442,10 @@
+ Options:\n\
+ --delete delete existing entries for INFO-FILE from DIR-FILE;\n\
+ don't insert any new entries.\n\
++ --defentry=TEXT like --entry, but only use TEXT if an entry\n\
++ is not present in INFO-FILE.\n\
++ --defsection=TEXT like --section, but only use TEXT if a section\n\
++ is not present in INFO-FILE.\n\
+ --dir-file=NAME specify file name of Info directory file.\n\
+ This is equivalent to using the DIR-FILE argument.\n\
+ --entry=TEXT insert TEXT as an Info directory entry.\n\
+@@ -1142,6 +1149,8 @@
+ struct spec_section *input_sections = NULL;
+ struct spec_entry *entries_to_add = NULL;
+ int n_entries_to_add = 0;
++ struct spec_entry *default_entries_to_add = NULL;
++ int n_default_entries_to_add = 0;
+
+ /* Record the old text of the dir file, as plain characters,
+ as lines, and as nodes. */
+@@ -1205,6 +1214,7 @@
+ dirfile = concat (optarg, "", "/dir");
+ break;
+
++ case 'E':
+ case 'e':
+ {
+ struct spec_entry *next
+@@ -1219,9 +1229,18 @@
+ next->text_len = olen;
+ next->entry_sections = NULL;
+ next->entry_sections_tail = NULL;
+- next->next = entries_to_add;
+- entries_to_add = next;
+- n_entries_to_add++;
++ if (opt == 'e')
++ {
++ next->next = entries_to_add;
++ entries_to_add = next;
++ n_entries_to_add++;
++ }
++ else
++ {
++ next->next = default_entries_to_add;
++ default_entries_to_add = next;
++ n_default_entries_to_add++;
++ }
+ }
+ break;
+
+@@ -1259,6 +1278,10 @@
+ }
+ break;
+
++ case 'S':
++ default_section = optarg;
++ break;
++
+ case 'V':
+ printf ("install-info (GNU %s) %s\n", PACKAGE, VERSION);
+ puts ("");
+@@ -1332,7 +1355,8 @@
+ {
+ input_sections = (struct spec_section *)
+ xmalloc (sizeof (struct spec_section));
+- input_sections->name = "Miscellaneous";
++ input_sections->name =
++ default_section ? default_section : "Miscellaneous";
+ input_sections->next = NULL;
+ input_sections->missing = 1;
+ }