summaryrefslogtreecommitdiffstats
path: root/graphics
diff options
context:
space:
mode:
authorahze <ahze@df743ca5-7f9a-e211-a948-0013205c9059>2006-09-30 02:33:54 +0800
committerahze <ahze@df743ca5-7f9a-e211-a948-0013205c9059>2006-09-30 02:33:54 +0800
commitfe43916891981bf4949662dd2c27f94ebd9b605e (patch)
treef8e2a84213d72a5be593302920e7e11b9bd4eacc /graphics
parentd1fc7604a42708f06f1f61bed40801b3ee7e6cca (diff)
downloadmarcuscom-ports-fe43916891981bf4949662dd2c27f94ebd9b605e.tar
marcuscom-ports-fe43916891981bf4949662dd2c27f94ebd9b605e.tar.gz
marcuscom-ports-fe43916891981bf4949662dd2c27f94ebd9b605e.tar.bz2
marcuscom-ports-fe43916891981bf4949662dd2c27f94ebd9b605e.tar.lz
marcuscom-ports-fe43916891981bf4949662dd2c27f94ebd9b605e.tar.xz
marcuscom-ports-fe43916891981bf4949662dd2c27f94ebd9b605e.tar.zst
marcuscom-ports-fe43916891981bf4949662dd2c27f94ebd9b605e.zip
- Fix build with new freetype2
Pointed out by: Yuri Pankov Obtained from: freetype.org git-svn-id: svn://creme-brulee.marcuscom.com/ports/trunk@7345 df743ca5-7f9a-e211-a948-0013205c9059
Diffstat (limited to 'graphics')
-rw-r--r--graphics/xpdf/Makefile72
-rw-r--r--graphics/xpdf/distinfo6
-rw-r--r--graphics/xpdf/files/patch-Makefile.in20
-rw-r--r--graphics/xpdf/files/patch-configure15
-rw-r--r--graphics/xpdf/files/patch-configure.in11
-rw-r--r--graphics/xpdf/files/patch-gmem79
-rw-r--r--graphics/xpdf/files/patch-resize36
-rw-r--r--graphics/xpdf/files/patch-splash_SplashFTFont.cc77
-rw-r--r--graphics/xpdf/files/patch-xfont11
-rw-r--r--graphics/xpdf/files/patch-xpdf::Makefile.in11
-rw-r--r--graphics/xpdf/pkg-descr11
-rw-r--r--graphics/xpdf/pkg-plist14
12 files changed, 363 insertions, 0 deletions
diff --git a/graphics/xpdf/Makefile b/graphics/xpdf/Makefile
new file mode 100644
index 000000000..36f8456f4
--- /dev/null
+++ b/graphics/xpdf/Makefile
@@ -0,0 +1,72 @@
+# New ports collection makefile for: xpdf
+# Date created: 02 Feb 1996
+# Whom: chuckr@glue.umd.edu
+#
+# $FreeBSD: ports/graphics/xpdf/Makefile,v 1.74 2006/05/02 02:21:49 ahze Exp $
+#
+
+PORTNAME= xpdf
+PORTVERSION= 3.01
+PORTREVISION= 3
+CATEGORIES= graphics print
+MASTER_SITES= ftp://ftp.foolabs.com/pub/xpdf/ \
+ ${MASTER_SITE_TEX_CTAN}
+MASTER_SITE_SUBDIR= support/xpdf
+
+PATCH_SITES= ftp://ftp.foolabs.com/pub/xpdf/
+PATCHFILES= xpdf-3.01pl2.patch
+PATCH_DIST_STRIP= -p1
+
+MAINTAINER= nork@FreeBSD.org
+COMMENT= Display PDF files, and convert them to other formats
+
+BUILD_DEPENDS= freetype-config:${PORTSDIR}/print/freetype2
+LIB_DEPENDS= t1.5:${PORTSDIR}/devel/t1lib \
+ freetype.9:${PORTSDIR}/print/freetype2
+RUN_DEPENDS= ${LOCALBASE}/share/ghostscript/fonts/n021003l.pfb:${PORTSDIR}/print/gsfonts
+
+USE_GMAKE= yes
+USE_AUTOTOOLS= autoconf:259
+CONFIGURE_TARGET= --build=${MACHINE_ARCH}-portbld-freebsd${OSREL}
+CONFIGURE_ENV= CPPFLAGS="-I${LOCALBASE}/include" \
+ LDFLAGS="-L${LOCALBASE}/lib"
+CONFIGURE_ARGS= --with-gzip --enable-opi \
+ --with-t1-library="${LOCALBASE}/lib" \
+ --with-t1-includes="${LOCALBASE}/include" \
+ --with-freetype2-library="${LOCALBASE}/lib" \
+ --with-freetype2-includes="${LOCALBASE}/include/freetype2"
+.if defined(A4)
+CONFIGURE_ARGS+= --enable-a4-paper
+.endif
+
+MAN1= pdffonts.1 \
+ pdfimages.1 \
+ pdfinfo.1 \
+ pdftoppm.1 \
+ pdftops.1 \
+ pdftotext.1
+MAN5= xpdfrc.5
+
+CONFLICTS= poppler-utils-[0-9]*
+
+.if defined(WITHOUT_X11)
+PKGNAMESUFFIX+= -nox11
+CONFIGURE_ARGS+= --without-x
+PLIST_SUB+= X11="@comment "
+.else
+CONFIGURE_ARGS+= --with-x
+USE_X_PREFIX= yes
+USE_MOTIF= yes
+MAN1+= xpdf.1
+PLIST_SUB+= X11=""
+.endif
+
+post-install:
+.if !defined(NOPORTDOCS)
+ @${MKDIR} ${DOCSDIR}
+.for file in ANNOUNCE CHANGES INSTALL README misc/hello.pdf
+ ${INSTALL_DATA} ${WRKSRC}/${file} ${DOCSDIR}
+.endfor
+.endif
+
+.include <bsd.port.mk>
diff --git a/graphics/xpdf/distinfo b/graphics/xpdf/distinfo
new file mode 100644
index 000000000..0addf6e2e
--- /dev/null
+++ b/graphics/xpdf/distinfo
@@ -0,0 +1,6 @@
+MD5 (xpdf-3.01.tar.gz) = e004c69c7dddef165d768b1362b44268
+SHA256 (xpdf-3.01.tar.gz) = 7aedfb8cd113b868277c3d894633dd6e0f5a8ed28af12f5d883ae4ed98e9f789
+SIZE (xpdf-3.01.tar.gz) = 599778
+MD5 (xpdf-3.01pl2.patch) = 8f1f5d37153c7e98f794f18d0b80fc25
+SHA256 (xpdf-3.01pl2.patch) = f12ac2aafbe172ddd9d6392b7eab1ece8b5ca079ed3ddf924b4e796157243ab1
+SIZE (xpdf-3.01pl2.patch) = 12097
diff --git a/graphics/xpdf/files/patch-Makefile.in b/graphics/xpdf/files/patch-Makefile.in
new file mode 100644
index 000000000..f80b065c1
--- /dev/null
+++ b/graphics/xpdf/files/patch-Makefile.in
@@ -0,0 +1,20 @@
+--- Makefile.in.orig Thu Dec 1 17:04:10 2005
++++ Makefile.in Thu Dec 1 17:04:31 2005
+@@ -82,7 +82,7 @@
+ $(INSTALL_PROGRAM) xpdf/pdftotext$(EXE) $(DESTDIR)@bindir@/pdftotext$(EXE)
+ $(INSTALL_PROGRAM) xpdf/pdfinfo$(EXE) $(DESTDIR)@bindir@/pdfinfo$(EXE)
+ $(INSTALL_PROGRAM) xpdf/pdffonts$(EXE) $(DESTDIR)@bindir@/pdffonts$(EXE)
+-@X@ $(INSTALL_PROGRAM) xpdf/pdftoppm$(EXE) $(DESTDIR)@bindir@/pdftoppm$(EXE)
++ $(INSTALL_PROGRAM) xpdf/pdftoppm$(EXE) $(DESTDIR)@bindir@/pdftoppm$(EXE)
+ $(INSTALL_PROGRAM) xpdf/pdfimages$(EXE) $(DESTDIR)@bindir@/pdfimages$(EXE)
+ -mkdir -p $(DESTDIR)@mandir@/man1
+ @X@ $(INSTALL_DATA) $(srcdir)/doc/xpdf.1 $(DESTDIR)@mandir@/man1/xpdf.1
+@@ -90,7 +90,7 @@
+ $(INSTALL_DATA) $(srcdir)/doc/pdftotext.1 $(DESTDIR)@mandir@/man1/pdftotext.1
+ $(INSTALL_DATA) $(srcdir)/doc/pdfinfo.1 $(DESTDIR)@mandir@/man1/pdfinfo.1
+ $(INSTALL_DATA) $(srcdir)/doc/pdffonts.1 $(DESTDIR)@mandir@/man1/pdffonts.1
+-@X@ $(INSTALL_DATA) $(srcdir)/doc/pdftoppm.1 $(DESTDIR)@mandir@/man1/pdftoppm.1
++ $(INSTALL_DATA) $(srcdir)/doc/pdftoppm.1 $(DESTDIR)@mandir@/man1/pdftoppm.1
+ $(INSTALL_DATA) $(srcdir)/doc/pdfimages.1 $(DESTDIR)@mandir@/man1/pdfimages.1
+ -mkdir -p $(DESTDIR)@mandir@/man5
+ $(INSTALL_DATA) $(srcdir)/doc/xpdfrc.5 $(DESTDIR)@mandir@/man5/xpdfrc.5
diff --git a/graphics/xpdf/files/patch-configure b/graphics/xpdf/files/patch-configure
new file mode 100644
index 000000000..934043de6
--- /dev/null
+++ b/graphics/xpdf/files/patch-configure
@@ -0,0 +1,15 @@
+--- configure.orig Thu Dec 1 17:06:03 2005
++++ configure Thu Dec 1 17:06:25 2005
+@@ -11776,8 +11776,8 @@
+ { echo "$as_me:$LINENO: WARNING: Couldn't find FreeType" >&5
+ echo "$as_me: WARNING: Couldn't find FreeType" >&2;};
+ fi
+- { echo "$as_me:$LINENO: WARNING: -- You will be able to compile pdftops, pdftotext,
+- pdfinfo, pdffonts, and pdfimages, but not xpdf or pdftoppm" >&5
+-echo "$as_me: WARNING: -- You will be able to compile pdftops, pdftotext,
+- pdfinfo, pdffonts, and pdfimages, but not xpdf or pdftoppm" >&2;}
++ { echo "$as_me:$LINENO: WARNING: -- You will be able to compile pdftoppm, pdftops, pdftotext,
++ pdfinfo, pdffonts, and pdfimages, but not xpdf" >&5
++echo "$as_me: WARNING: -- You will be able to compile pdftoppm, pdftops, pdftotext,
++ pdfinfo, pdffonts, and pdfimages, but not xpdf" >&2;}
+ fi
diff --git a/graphics/xpdf/files/patch-configure.in b/graphics/xpdf/files/patch-configure.in
new file mode 100644
index 000000000..9af9af0fa
--- /dev/null
+++ b/graphics/xpdf/files/patch-configure.in
@@ -0,0 +1,11 @@
+--- configure.in.orig Thu Dec 1 17:05:11 2005
++++ configure.in Thu Dec 1 17:05:25 2005
+@@ -341,6 +341,6 @@
+ if test "x$smr_have_freetype2_library" != xyes; then
+ AC_MSG_WARN([Couldn't find FreeType]);
+ fi
+- AC_MSG_WARN([-- You will be able to compile pdftops, pdftotext,
+- pdfinfo, pdffonts, and pdfimages, but not xpdf or pdftoppm])
++ AC_MSG_WARN([-- You will be able to compile pdftoppm, pdftops, pdftotext,
++ pdfinfo, pdffonts, and pdfimages, but not xpdf])
+ fi
diff --git a/graphics/xpdf/files/patch-gmem b/graphics/xpdf/files/patch-gmem
new file mode 100644
index 000000000..6f8aba285
--- /dev/null
+++ b/graphics/xpdf/files/patch-gmem
@@ -0,0 +1,79 @@
+--- goo/gmem.c.orig Fri Sep 30 20:26:50 2005
++++ goo/gmem.c Fri Sep 30 20:28:56 2005
+@@ -54,9 +54,9 @@
+
+ #endif /* DEBUG_MEM */
+
+-void *gmalloc(int size) {
++void *gmalloc(size_t size) {
+ #ifdef DEBUG_MEM
+- int size1;
++ size_t size1;
+ char *mem;
+ GMemHdr *hdr;
+ void *data;
+@@ -96,11 +96,11 @@
+ #endif
+ }
+
+-void *grealloc(void *p, int size) {
++void *grealloc(void *p, size_t size) {
+ #ifdef DEBUG_MEM
+ GMemHdr *hdr;
+ void *q;
+- int oldSize;
++ size_t oldSize;
+
+ if (size == 0) {
+ if (p)
+@@ -137,8 +137,8 @@
+ #endif
+ }
+
+-void *gmallocn(int nObjs, int objSize) {
+- int n;
++void *gmallocn(int nObjs, size_t objSize) {
++ size_t n;
+
+ n = nObjs * objSize;
+ if (objSize == 0 || n / objSize != nObjs) {
+@@ -148,8 +148,8 @@
+ return gmalloc(n);
+ }
+
+-void *greallocn(void *p, int nObjs, int objSize) {
+- int n;
++void *greallocn(void *p, int nObjs, size_t objSize) {
++ size_t n;
+
+ n = nObjs * objSize;
+ if (objSize == 0 || n / objSize != nObjs) {
+--- goo/gmem.h.orig Wed Aug 17 01:34:30 2005
++++ goo/gmem.h Fri Sep 30 20:26:38 2005
+@@ -19,13 +19,13 @@
+ * Same as malloc, but prints error message and exits if malloc()
+ * returns NULL.
+ */
+-extern void *gmalloc(int size);
++extern void *gmalloc(size_t size);
+
+ /*
+ * Same as realloc, but prints error message and exits if realloc()
+ * returns NULL. If <p> is NULL, calls malloc instead of realloc().
+ */
+-extern void *grealloc(void *p, int size);
++extern void *grealloc(void *p, size_t size);
+
+ /*
+ * These are similar to gmalloc and grealloc, but take an object count
+@@ -33,8 +33,8 @@
+ * bytes, but there is an additional error check that the total size
+ * doesn't overflow an int.
+ */
+-extern void *gmallocn(int nObjs, int objSize);
+-extern void *greallocn(void *p, int nObjs, int objSize);
++extern void *gmallocn(int nObjs, size_t objSize);
++extern void *greallocn(void *p, int nObjs, size_t objSize);
+
+ /*
+ * Same as free, but checks for and ignores NULL pointers.
diff --git a/graphics/xpdf/files/patch-resize b/graphics/xpdf/files/patch-resize
new file mode 100644
index 000000000..ea3168dd2
--- /dev/null
+++ b/graphics/xpdf/files/patch-resize
@@ -0,0 +1,36 @@
+--- xpdf/XPDFCore.cc 2005-10-10 23:33:08.000000000 +1000
++++ xpdf/XPDFCore.cc 2005-10-10 23:33:44.000000000 +1000
+@@ -975,6 +975,9 @@
+ XPDFCore *core = (XPDFCore *)ptr;
+ XEvent event;
+ Widget top;
++ Window rootWin;
++ int x1, y1;
++ Guint w1, h1, bw1, depth1;
+ Arg args[2];
+ int n;
+ Dimension w, h;
+@@ -982,15 +985,20 @@
+
+ // find the top-most widget which has an associated window, and look
+ // for a pending ConfigureNotify in the event queue -- if there is
+- // one, that means we're still resizing, and we want to skip the
+- // current event
++ // one, and it specifies a different width or height, that means
++ // we're still resizing, and we want to skip the current event
+ for (top = core->parentWidget;
+ XtParent(top) && XtWindow(XtParent(top));
+ top = XtParent(top)) ;
+ if (XCheckTypedWindowEvent(core->display, XtWindow(top),
+ ConfigureNotify, &event)) {
+ XPutBackEvent(core->display, &event);
+- return;
++ XGetGeometry(core->display, event.xconfigure.window,
++ &rootWin, &x1, &y1, &w1, &h1, &bw1, &depth1);
++ if ((Guint)event.xconfigure.width != w1 ||
++ (Guint)event.xconfigure.height != h1) {
++ return;
++ }
+ }
+
+ n = 0;
diff --git a/graphics/xpdf/files/patch-splash_SplashFTFont.cc b/graphics/xpdf/files/patch-splash_SplashFTFont.cc
new file mode 100644
index 000000000..856e3376e
--- /dev/null
+++ b/graphics/xpdf/files/patch-splash_SplashFTFont.cc
@@ -0,0 +1,77 @@
+--- splash/SplashFTFont.cc.orig 2005-12-23 16:57:18.076514614 +0100
++++ splash/SplashFTFont.cc 2005-12-23 17:33:42.731318339 +0100
+@@ -14,7 +14,8 @@
+
+ #include <ft2build.h>
+ #include FT_OUTLINE_H
+-#include FT_INTERNAL_OBJECTS_H // needed for FT_New_Size decl
++#include FT_SIZES_H // needed for FT_New_Size decl
++#include FT_GLYPH_H
+ #include "gmem.h"
+ #include "SplashMath.h"
+ #include "SplashGlyphBitmap.h"
+@@ -25,11 +26,12 @@
+
+ //------------------------------------------------------------------------
+
+-static int glyphPathMoveTo(FT_Vector *pt, void *path);
+-static int glyphPathLineTo(FT_Vector *pt, void *path);
+-static int glyphPathConicTo(FT_Vector *ctrl, FT_Vector *pt, void *path);
+-static int glyphPathCubicTo(FT_Vector *ctrl1, FT_Vector *ctrl2,
+- FT_Vector *pt, void *path);
++static int glyphPathMoveTo( const FT_Vector *pt, void *path);
++static int glyphPathLineTo( const FT_Vector *pt, void *path);
++static int glyphPathConicTo( const FT_Vector *ctrl, const FT_Vector *pt,
++ void* path );
++static int glyphPathCubicTo( const FT_Vector *ctrl1, const FT_Vector *ctrl2,
++ const FT_Vector *pt, void *path);
+
+ //------------------------------------------------------------------------
+ // SplashFTFont
+@@ -210,7 +212,7 @@
+ };
+
+ SplashPath *SplashFTFont::getGlyphPath(int c) {
+- static FT_Outline_Funcs outlineFuncs = {
++ static const FT_Outline_Funcs outlineFuncs = {
+ &glyphPathMoveTo,
+ &glyphPathLineTo,
+ &glyphPathConicTo,
+@@ -249,7 +251,7 @@
+ return path.path;
+ }
+
+-static int glyphPathMoveTo(FT_Vector *pt, void *path) {
++static int glyphPathMoveTo( const FT_Vector *pt, void *path) {
+ SplashFTFontPath *p = (SplashFTFontPath *)path;
+
+ if (p->needClose) {
+@@ -260,7 +262,7 @@
+ return 0;
+ }
+
+-static int glyphPathLineTo(FT_Vector *pt, void *path) {
++static int glyphPathLineTo(const FT_Vector *pt, void *path) {
+ SplashFTFontPath *p = (SplashFTFontPath *)path;
+
+ p->path->lineTo(pt->x / 64.0, -pt->y / 64.0);
+@@ -268,7 +270,7 @@
+ return 0;
+ }
+
+-static int glyphPathConicTo(FT_Vector *ctrl, FT_Vector *pt, void *path) {
++static int glyphPathConicTo(const FT_Vector *ctrl, const FT_Vector *pt, void *path) {
+ SplashFTFontPath *p = (SplashFTFontPath *)path;
+ SplashCoord x0, y0, x1, y1, x2, y2, x3, y3, xc, yc;
+
+@@ -306,8 +308,8 @@
+ return 0;
+ }
+
+-static int glyphPathCubicTo(FT_Vector *ctrl1, FT_Vector *ctrl2,
+- FT_Vector *pt, void *path) {
++static int glyphPathCubicTo(const FT_Vector *ctrl1, const FT_Vector *ctrl2,
++ const FT_Vector *pt, void *path) {
+ SplashFTFontPath *p = (SplashFTFontPath *)path;
+
+ p->path->curveTo(ctrl1->x / 64.0, -ctrl1->y / 64.0,
diff --git a/graphics/xpdf/files/patch-xfont b/graphics/xpdf/files/patch-xfont
new file mode 100644
index 000000000..1393e2640
--- /dev/null
+++ b/graphics/xpdf/files/patch-xfont
@@ -0,0 +1,11 @@
+--- xpdf/XPDFViewer.cc.orig 2004-10-12 12:24:57.055068037 +0200
++++ xpdf/XPDFViewer.cc 2004-10-12 12:24:47.707449614 +0200
+@@ -1742,7 +1742,7 @@
+ aboutBigFont =
+ createFontList("-*-times-bold-i-normal--20-*-*-*-*-*-iso8859-1");
+ aboutVersionFont =
+- createFontList("-*-times-medium-r-normal--16-*-*-*-*-*-iso8859-1");
++ createFontList("-*-times-medium-r-normal--14-*-*-*-*-*-iso8859-1");
+ aboutFixedFont =
+ createFontList("-*-courier-medium-r-normal--12-*-*-*-*-*-iso8859-1");
+
diff --git a/graphics/xpdf/files/patch-xpdf::Makefile.in b/graphics/xpdf/files/patch-xpdf::Makefile.in
new file mode 100644
index 000000000..38859e5e6
--- /dev/null
+++ b/graphics/xpdf/files/patch-xpdf::Makefile.in
@@ -0,0 +1,11 @@
+--- xpdf/Makefile.in.orig Thu Dec 1 17:10:20 2005
++++ xpdf/Makefile.in Thu Dec 1 17:10:34 2005
+@@ -109,7 +109,7 @@
+ pdffonts$(EXE) pdftoppm$(EXE) pdfimages$(EXE)
+
+ all-no-x: pdftops$(EXE) pdftotext$(EXE) pdfinfo$(EXE) pdffonts$(EXE) \
+- pdfimages$(EXE)
++ pdftoppm$(EXE) pdfimages$(EXE)
+
+ #------------------------------------------------------------------------
+
diff --git a/graphics/xpdf/pkg-descr b/graphics/xpdf/pkg-descr
new file mode 100644
index 000000000..836302588
--- /dev/null
+++ b/graphics/xpdf/pkg-descr
@@ -0,0 +1,11 @@
+Xpdf is a viewer for Portable Document Format (PDF) files. These are
+also sometimes also called 'Acrobat' files, from the name of Adobe's
+PDF software.
+
+It can also convert PDF input to ps, text, and info formats; and
+split out fonts and images.
+
+WWW: http://www.foolabs.com/xpdf/
+
+- Doug Barton
+DougB@FreeBSD.org
diff --git a/graphics/xpdf/pkg-plist b/graphics/xpdf/pkg-plist
new file mode 100644
index 000000000..9ea660741
--- /dev/null
+++ b/graphics/xpdf/pkg-plist
@@ -0,0 +1,14 @@
+bin/pdffonts
+bin/pdfimages
+bin/pdfinfo
+bin/pdftoppm
+bin/pdftops
+bin/pdftotext
+%%X11%%bin/xpdf
+etc/xpdfrc
+%%PORTDOCS%%%%DOCSDIR%%/ANNOUNCE
+%%PORTDOCS%%%%DOCSDIR%%/CHANGES
+%%PORTDOCS%%%%DOCSDIR%%/INSTALL
+%%PORTDOCS%%%%DOCSDIR%%/README
+%%PORTDOCS%%%%DOCSDIR%%/hello.pdf
+%%PORTDOCS%%@dirrm %%DOCSDIR%%