aboutsummaryrefslogtreecommitdiff
path: root/textproc/scrollkeeper
diff options
context:
space:
mode:
authorJoe Marcus Clarke <marcus@FreeBSD.org>2003-01-20 00:30:26 +0000
committerJoe Marcus Clarke <marcus@FreeBSD.org>2003-01-20 00:30:26 +0000
commitf2ee0994622bac3a252fd6e492ea324373d67132 (patch)
tree630b7ef4c86762a35cdd6b426f4ab45325247704 /textproc/scrollkeeper
parentb995dc4301cc356d92beb448e96b747002d56228 (diff)
downloadports-f2ee0994622bac3a252fd6e492ea324373d67132.tar.gz
ports-f2ee0994622bac3a252fd6e492ea324373d67132.zip
Fix two long-standing bugs where scrollkeeper would overwrite the
SGML catalogs in favor of its own XML format catalogs as well as prevent scrollkeeper from making HTTP connections to obtain DTDs for OMF validation. PR: 39504 46179 Tested by: Stephen Hilton <nospam@hiltonbsd.com> Mezz bsdforums.org <reigncracks@hotmail.com>
Notes
Notes: svn path=/head/; revision=73581
Diffstat (limited to 'textproc/scrollkeeper')
-rw-r--r--textproc/scrollkeeper/Makefile13
-rw-r--r--textproc/scrollkeeper/files/patch-configure9
-rw-r--r--textproc/scrollkeeper/files/patch-extract_dtds_Makefile.in2
-rw-r--r--textproc/scrollkeeper/files/patch-libs_install.c15
-rw-r--r--textproc/scrollkeeper/files/patch-libs_merge.c11
-rw-r--r--textproc/scrollkeeper/files/patch-libs_uninstall.c11
-rw-r--r--textproc/scrollkeeper/files/patch-libs_update-uri.c10
-rw-r--r--textproc/scrollkeeper/files/patch-security23
-rw-r--r--textproc/scrollkeeper/pkg-install49
-rw-r--r--textproc/scrollkeeper/pkg-plist4
10 files changed, 93 insertions, 54 deletions
diff --git a/textproc/scrollkeeper/Makefile b/textproc/scrollkeeper/Makefile
index 94bb9727c4e1..0d25cbcd6113 100644
--- a/textproc/scrollkeeper/Makefile
+++ b/textproc/scrollkeeper/Makefile
@@ -7,7 +7,7 @@
PORTNAME= scrollkeeper
PORTVERSION= 0.3.11
-PORTREVISION= 5
+PORTREVISION= 6
PORTEPOCH= 1
CATEGORIES= textproc gnome
MASTER_SITES= ${MASTER_SITE_GNOME}
@@ -19,10 +19,10 @@ MAINTAINER= gnome@FreeBSD.org
LIB_DEPENDS= xslt.1:${PORTSDIR}/textproc/libxslt \
intl.4:${PORTSDIR}/devel/gettext
BUILD_DEPENDS= intltool-extract:${PORTSDIR}/textproc/intltool \
- ${LOCALBASE}/share/xml/docbook/${DOCBOOK_VERSION}/docbook.cat:${PORTSDIR}/textproc/docbook-xml \
+ ${LOCALBASE}/share/sk/docbook/${DOCBOOK_VERSION}/docbook.cat:${PORTSDIR}/textproc/docbook-sk \
${LOCALBASE}/share/xsl/docbook/xhtml/chunk.xsl:${PORTSDIR}/textproc/docbook-xsl
RUN_DEPENDS= intltool-extract:${PORTSDIR}/textproc/intltool \
- ${LOCALBASE}/share/xml/docbook/${DOCBOOK_VERSION}/docbook.cat:${PORTSDIR}/textproc/docbook-xml \
+ ${LOCALBASE}/share/sk/docbook/${DOCBOOK_VERSION}/docbook.cat:${PORTSDIR}/textproc/docbook-sk \
${LOCALBASE}/share/xsl/docbook/xhtml/chunk.xsl:${PORTSDIR}/textproc/docbook-xsl
# Don't use USE_X_PREFIX - the port doesn't really require X11 to run.
@@ -31,7 +31,7 @@ RUN_DEPENDS= intltool-extract:${PORTSDIR}/textproc/intltool \
# put in the right place.
PREFIX?= ${X11BASE}
-DOCBOOK_VERSION= 4.2
+DOCBOOK_VERSION= 4.1.2
USE_BZIP2= yes
USE_GMAKE= yes
@@ -72,7 +72,10 @@ post-patch:
@${REINPLACE_CMD} -e 's|%%PREFIX%%|${PREFIX}|g' \
${WRKSRC}/cl/src/update.c
@${REINPLACE_CMD} -e 's|%%LOCALBASE%%|${LOCALBASE}|g' \
- ${WRKSRC}/extract/dtds/Makefile.in
+ ${WRKSRC}/extract/dtds/Makefile.in \
+ ${WRKSRC}/libs/Makefile.in
+
+pre-configure:
.if !defined(BATCH) && !defined(PACKAGE_BUILDING)
@${SH} ${PKGINSTALL} ${PKGNAME} PRE-INSTALL
.endif
diff --git a/textproc/scrollkeeper/files/patch-configure b/textproc/scrollkeeper/files/patch-configure
index 7def51b74411..a15f7c66a4cc 100644
--- a/textproc/scrollkeeper/files/patch-configure
+++ b/textproc/scrollkeeper/files/patch-configure
@@ -1,5 +1,5 @@
--- configure.orig Wed Jul 24 22:26:07 2002
-+++ configure Wed Oct 9 15:45:48 2002
++++ configure Thu Jan 16 02:24:32 2003
@@ -5299,6 +5299,7 @@
# This can be used to rebuild libtool when needed
@@ -17,14 +17,13 @@
- if xmlcatalog /etc/xml/catalog "-//OASIS//DTD DocBook XML V4.1.2//EN" | grep "No entry" >/dev/null ; then
+ echo $ac_n "checking for docbook-dtd42-xml""... $ac_c" 1>&6
+echo "configure:6282: checking for docbook-dtd42-xml" >&5
-+ if test ! -f $LOCALBASE/share/xml/docbook/catalog ; then
++ if test ! -f $LOCALBASE/share/sk/docbook/catalog ; then
echo "* ERROR * "
echo " "
-- echo "Couldn't find the DocBook XML V4.1.2 DTD. Please make sure that you have the docbook-dtd412-xml package installed. If it is installed, the package probably did not register the DTD in the catalog properly. Consult http://scrollkeeper.sourceforge.net/docbook.shtml for more information."
-+ echo "Couldn't find the DocBook XML V4.2 DTD. Please make sure that you have the docbook-dtd412-xml package installed. If it is installed, the package probably did not register the DTD in the catalog properly. Consult http://scrollkeeper.sourceforge.net/docbook.shtml for more information."
+ echo "Couldn't find the DocBook XML V4.1.2 DTD. Please make sure that you have the docbook-dtd412-xml package installed. If it is installed, the package probably did not register the DTD in the catalog properly. Consult http://scrollkeeper.sourceforge.net/docbook.shtml for more information."
echo " "
- { echo "configure: error: DocBook XML V4.1.2 DTD not present in /etc/xml/catalog. Make sure docbook-dtd412-xml is installed and registers DTD in catalog." 1>&2; exit 1; }
-+ { echo "configure: error: DocBook XML V4.2 DTD not present in $LOCALBASE/share/xml. Make sure docbook-dtd412-xml is installed and registers DTD in catalog." 1>&2; exit 1; }
++ { echo "configure: error: DocBook XML V4.1.2 DTD not present in $LOCALBASE/share/sk. Make sure docbook-dtd412-xml is installed and registers DTD in catalog." 1>&2; exit 1; }
fi
echo "$ac_t""found" 1>&6
;;
diff --git a/textproc/scrollkeeper/files/patch-extract_dtds_Makefile.in b/textproc/scrollkeeper/files/patch-extract_dtds_Makefile.in
index fb2f768303bc..a5d4412dc175 100644
--- a/textproc/scrollkeeper/files/patch-extract_dtds_Makefile.in
+++ b/textproc/scrollkeeper/files/patch-extract_dtds_Makefile.in
@@ -5,7 +5,7 @@
XSLT_LIBS = @XSLT_LIBS@
-CATALOG = $(sysconfdir)/xml/catalog
-+CATALOG = %%LOCALBASE%%/share/xml/catalog
++CATALOG = %%LOCALBASE%%/share/sk/catalog
dtdsdir = $(datadir)/xml/scrollkeeper/dtds
dtds_HEADERS = scrollkeeper-omf.dtd scrollkeeper-cl.dtd
mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
diff --git a/textproc/scrollkeeper/files/patch-libs_install.c b/textproc/scrollkeeper/files/patch-libs_install.c
new file mode 100644
index 000000000000..30f873782bce
--- /dev/null
+++ b/textproc/scrollkeeper/files/patch-libs_install.c
@@ -0,0 +1,15 @@
+--- libs/install.c.orig Wed Jan 15 23:27:11 2003
++++ libs/install.c Wed Jan 15 23:26:31 2003
+@@ -165,6 +165,12 @@
+ char *toc_stylesheet_name, *index_name, *index_stylesheet_name, *uid;
+
+ /*
++ * Set up a custom catalog path.
++ */
++
++ setenv("XML_CATALOG_FILES", SK_XML_CATALOGS, 1);
++
++ /*
+ * Read in OMF file
+ */
+ omf_doc = xmlParseFile(omf_name);
diff --git a/textproc/scrollkeeper/files/patch-libs_merge.c b/textproc/scrollkeeper/files/patch-libs_merge.c
new file mode 100644
index 000000000000..e5b559c52456
--- /dev/null
+++ b/textproc/scrollkeeper/files/patch-libs_merge.c
@@ -0,0 +1,11 @@
+--- libs/merge.c.orig Thu Jan 16 01:40:06 2003
++++ libs/merge.c Thu Jan 16 01:40:34 2003
+@@ -192,6 +192,8 @@
+ char **lang_tab, *path;
+ int i, lang_num, count;
+ xmlDocPtr merged_tree, *tree_tab;
++
++ setenv("XML_CATALOG_FILES", SK_XML_CATALOGS, 1);
+
+ lang_tab = sk_get_language_list();
+
diff --git a/textproc/scrollkeeper/files/patch-libs_uninstall.c b/textproc/scrollkeeper/files/patch-libs_uninstall.c
new file mode 100644
index 000000000000..f3439b34553e
--- /dev/null
+++ b/textproc/scrollkeeper/files/patch-libs_uninstall.c
@@ -0,0 +1,11 @@
+--- libs/uninstall.c.orig Wed Jul 24 22:25:34 2002
++++ libs/uninstall.c Thu Jan 16 01:50:53 2003
+@@ -70,6 +70,8 @@
+ int start, end;
+ char cl_filename[PATHLEN], cl_ext_filename[PATHLEN];
+ xmlDocPtr cl_doc, cl_ext_doc;
++
++ setenv("XML_CATALOG_FILES", SK_XML_CATALOGS, 1);
+
+ if (id_tab == NULL)
+ return;
diff --git a/textproc/scrollkeeper/files/patch-libs_update-uri.c b/textproc/scrollkeeper/files/patch-libs_update-uri.c
new file mode 100644
index 000000000000..435f61e1d55e
--- /dev/null
+++ b/textproc/scrollkeeper/files/patch-libs_update-uri.c
@@ -0,0 +1,10 @@
+--- libs/update-url.c.orig Thu Jan 16 01:41:36 2003
++++ libs/update-url.c Thu Jan 16 01:41:40 2003
+@@ -33,6 +33,7 @@
+ xmlNodePtr node;
+ xmlDocPtr omf_doc;
+
++ setenv("XML_CATALOG_FILES", SK_XML_CATALOGS, 1);
+
+ /* Parse file and make sure it is well-formed */
+ omf_doc = xmlParseFile(omf_name);
diff --git a/textproc/scrollkeeper/files/patch-security b/textproc/scrollkeeper/files/patch-security
index 8ca68bd701e4..2523ed58b548 100644
--- a/textproc/scrollkeeper/files/patch-security
+++ b/textproc/scrollkeeper/files/patch-security
@@ -38,9 +38,9 @@ into the next release.
return filename;
}
---- libs/extract.c 2002/03/16 19:08:48 1.12
-+++ libs/extract.c 2002/09/22 07:14:01 1.14
-@@ -43,16 +43,16 @@
+--- libs/extract.c.orig Wed Jul 24 22:25:34 2002
++++ libs/extract.c Thu Jan 16 01:39:54 2003
+@@ -43,16 +43,18 @@
int i;
int returnval = 1;
FILE *fid;
@@ -56,10 +56,12 @@ into the next release.
+ int temp1_fd, temp2_fd, errors_fd;
#endif
- struct stat buf;
++
++ setenv("XML_CATALOG_FILES", SK_XML_CATALOGS, 1);
if (input_file == NULL ||
stylesheets == NULL ||
-@@ -69,11 +69,23 @@
+@@ -69,11 +71,23 @@
#ifdef SOLARIS
doc = docbParseFile(input_file, NULL);
#else
@@ -88,7 +90,7 @@ into the next release.
snprintf(command, 1024, "sgml2xml -xlower -f%s %s > %s", errors, input_file, temp1);
system(command);
-@@ -83,6 +95,7 @@
+@@ -83,6 +97,7 @@
fid = fopen(input_file, "r");
if (fid == NULL) {
sk_message(outputprefs, SKOUT_DEFAULT, SKOUT_QUIET, "(apply_stylesheets)", _("Cannot read file: %s : %s\n"),input_file, strerror(errno));
@@ -96,7 +98,7 @@ into the next release.
return 0;
}
-@@ -106,14 +119,25 @@
+@@ -106,14 +121,25 @@
}
if (doctype == NULL) {
@@ -125,15 +127,16 @@ into the next release.
unlink(temp2);
return 0;
}
---- libs/Makefile.in.orig Wed Oct 9 12:36:43 2002
-+++ libs/Makefile.in Wed Oct 9 12:37:05 2002
-@@ -130,7 +130,8 @@
+--- libs/Makefile.in.orig Thu Jan 16 01:38:23 2003
++++ libs/Makefile.in Thu Jan 16 01:47:46 2003
+@@ -130,7 +130,9 @@
INCLUDES = \
$(XML_CFLAGS) \
$(XSLT_CFLAGS) \
- $(HOST_TYPE)
+ $(HOST_TYPE) \
-+ -DSCROLLKEEPER_STATEDIR=\""$(localstatedir)"\"
++ -DSCROLLKEEPER_STATEDIR=\""$(localstatedir)"\" \
++ -DSK_XML_CATALOGS=\""%%LOCALBASE%%/share/sk/catalog %%LOCALBASE%%/share/sk/docbook/catalog"\"
libscrollkeeper_la_SOURCES = \
diff --git a/textproc/scrollkeeper/pkg-install b/textproc/scrollkeeper/pkg-install
index add95fa381ce..51f59fcc32ee 100644
--- a/textproc/scrollkeeper/pkg-install
+++ b/textproc/scrollkeeper/pkg-install
@@ -8,21 +8,10 @@ PATH=${PATH}:/bin:/usr/bin:/usr/local/bin:/usr/X11R6/bin
export PATH
PREFIX=`xml2-config --prefix`
-ROOTCATALOG=${PREFIX}/share/xml/catalog
-CATALOG=${PREFIX}/share/xml/docbook/catalog
+ROOTCATALOG=${PREFIX}/share/sk/catalog
+CATALOG=${PREFIX}/share/sk/docbook/catalog
if [ "$2" = "PRE-INSTALL" ]; then
-if [ -r $ROOTCATALOG ] ; then
- echo backing up XML Catalog root $ROOTCATALOG
- cp -f $ROOTCATALOG ${ROOTCATALOG}.bak
- rm -f $ROOTCATALOG
-fi
-
-if [ -r $CATALOG ] ; then
- echo backing up XML Catalog $CATALOG
- cp -f $CATALOG ${CATALOG}.bak
- rm -f $CATALOG
-fi
#
# create the catalogs root and docbook specific
@@ -53,52 +42,52 @@ if [ "$found" = "" ] ; then
exit 1
fi
-dtd421=""
+dtd412=""
for dtd in $found; do
- check=`grep '//OASIS//DTD DocBook XML V4.2//EN' $dtd`
+ check=`grep '//OASIS//DTD DocBook XML V4.1.2//EN' $dtd`
if [ "$check" != "" ] ; then
- dtd421=$dtd
+ dtd412=$dtd
break
fi
done
-if [ "$dtd421" = "" ] ; then
- echo could not locate version 4.2 of DocBook XML
+if [ "$dtd412" = "" ] ; then
+ echo could not locate version 4.1.2 of DocBook XML
exit 1
fi
-docbookdir=`dirname $dtd421`
-echo Found DocBook XML 4.2 DTD in $docbookdir
+docbookdir=`dirname $dtd412`
+echo Found DocBook XML 4.1.2 DTD in $docbookdir
xmlcatalog --noout --add "public" \
- "-//OASIS//ELEMENTS DocBook XML Information Pool V4.2//EN" \
+ "-//OASIS//ELEMENTS DocBook XML Information Pool V4.1.2//EN" \
"file://$docbookdir/dbpoolx.mod" $CATALOG
xmlcatalog --noout --add "public" \
- "-//OASIS//DTD DocBook XML V4.2//EN" \
+ "-//OASIS//DTD DocBook XML V4.1.2//EN" \
"file://$docbookdir/docbookx.dtd" $CATALOG
xmlcatalog --noout --add "public" \
- "-//OASIS//ENTITIES DocBook XML Character Entities V4.2//EN" \
+ "-//OASIS//ENTITIES DocBook XML Character Entities V4.1.2//EN" \
"file://$docbookdir/dbcentx.mod" $CATALOG
xmlcatalog --noout --add "public" \
- "-//OASIS//ENTITIES DocBook XML Notations V4.2//EN" \
+ "-//OASIS//ENTITIES DocBook XML Notations V4.1.2//EN" \
"file://$docbookdir/dbnotnx.mod" $CATALOG
xmlcatalog --noout --add "public" \
- "-//OASIS//ENTITIES DocBook XML Additional General Entities V4.2//EN" \
+ "-//OASIS//ENTITIES DocBook XML Additional General Entities V4.1.2//EN" \
"file://$docbookdir/dbgenent.mod" $CATALOG
xmlcatalog --noout --add "public" \
- "-//OASIS//ELEMENTS DocBook XML Document Hierarchy V4.2//EN" \
+ "-//OASIS//ELEMENTS DocBook XML Document Hierarchy V4.1.2//EN" \
"file://$docbookdir/dbhierx.mod" $CATALOG
xmlcatalog --noout --add "public" \
"-//OASIS//DTD XML Exchange Table Model 19990315//EN" \
"file://$docbookdir/soextblx.dtd" $CATALOG
xmlcatalog --noout --add "public" \
- "-//OASIS//DTD DocBook XML CALS Table Model V4.2//EN" \
+ "-//OASIS//DTD DocBook XML CALS Table Model V4.1.2//EN" \
"file://$docbookdir/calstblx.dtd" $CATALOG
xmlcatalog --noout --add "rewriteSystem" \
- "http://www.oasis-open.org/docbook/xml/4.2" \
+ "http://www.oasis-open.org/docbook/xml/4.1.2" \
"file://$docbookdir" $CATALOG
xmlcatalog --noout --add "rewriteURI" \
- "http://www.oasis-open.org/docbook/xml/4.2" \
+ "http://www.oasis-open.org/docbook/xml/4.1.2" \
"file://$docbookdir" $CATALOG
xmlcatalog --noout --add "delegatePublic" \
@@ -255,7 +244,7 @@ if [ "$2" = "POST-INSTALL" ]; then
xmlcatalog --noout --add "public" \
"-//OMF//DTD Scrollkeeper OMF Variant V1.0//EN" \
"${SKPREFIX}/share/gnome/xml/scrollkeeper/dtds/scrollkeeper-omf.dtd" \
- ${PREFIX}/share/xml/catalog
+ ${ROOTCATALOG}
scrollkeeper-rebuilddb -q -p /var/db/scrollkeeper || /usr/bin/true
fi
diff --git a/textproc/scrollkeeper/pkg-plist b/textproc/scrollkeeper/pkg-plist
index 0249e65fbb8a..9e38818ecccc 100644
--- a/textproc/scrollkeeper/pkg-plist
+++ b/textproc/scrollkeeper/pkg-plist
@@ -104,10 +104,8 @@ share/locale/zh_TW/LC_MESSAGES/scrollkeeper.mo
@dirrm share/gnome/scrollkeeper/Templates
@dirrm share/gnome/scrollkeeper
@dirrm share/gnome/omf/scrollkeeper
-@unexec xmlcatalog --noout --del "%D/share/gnome/xml/scrollkeeper/dtds/scrollkeeper-omf.dtd" %%LOCALBASE%%/share/xml/catalog 2>/dev/null || true
-@unexec cp -f %%LOCALBASE%%/share/xml/catalog.bak %%LOCALBASE%%/share/xml/catalog 2>/dev/null || true
-@unexec cp -f %%LOCALBASE%%/share/xml/docbook/catalog.bak %%LOCALBASE%%/share/xml/docbook/catalog 2>/dev/null || true
@unexec rm -f /var/log/scrollkeeper.log 2>/dev/null || true
@unexec rm -rf /var/db/scrollkeeper 2>/dev/null || true
+@unexec echo "If you are permantly removing this port, you should do a ``rm -rf %%LOCALBASE%%/share/sk/catalog %%LOCALBASE%%/share/sk/docbook/catalog`` to remove the XML catalogs that are left." | fmt
@exec touch -f /var/log/scrollkeeper.log
@exec mkdir -p /var/db/scrollkeeper