aboutsummaryrefslogtreecommitdiffstats
path: root/print
diff options
context:
space:
mode:
authorglarkin <glarkin@FreeBSD.org>2010-05-04 03:56:44 +0800
committerglarkin <glarkin@FreeBSD.org>2010-05-04 03:56:44 +0800
commit61f4f8ba6b14a2441f049c46c96876c169a0e385 (patch)
treea364c8c2a04f197c29e7ce93272fa5eff19769dc /print
parent71864b77b5e2906c139c0f30c652f5d7873c5587 (diff)
downloadfreebsd-ports-gnome-61f4f8ba6b14a2441f049c46c96876c169a0e385.tar.gz
freebsd-ports-gnome-61f4f8ba6b14a2441f049c46c96876c169a0e385.tar.zst
freebsd-ports-gnome-61f4f8ba6b14a2441f049c46c96876c169a0e385.zip
- Build pdftk with gcj45 instead of gcj42
- Add a bunch of patch files to work around the Java duplicate symbol problem reported here (http://gcc.gnu.org/bugzilla/show_bug.cgi?id=42143) until a real fix is committed to the upstream toolchain - Bump PORTREVISION
Diffstat (limited to 'print')
-rw-r--r--print/pdftk/Makefile12
-rw-r--r--print/pdftk/files/patch-Makefile.Generic11
-rw-r--r--print/pdftk/files/patch-java_libs__com__lowagie__bc__asn1__Makefile35
-rw-r--r--print/pdftk/files/patch-java_libs__com__lowagie__text__Makefile35
-rw-r--r--print/pdftk/files/patch-java_libs__com__lowagie__text__markup__Makefile35
-rw-r--r--print/pdftk/files/patch-java_libs__com__lowagie__text__pdf__Makefile35
-rw-r--r--print/pdftk/files/patch-java_libs__com__lowagie__text__pdf__PdfDate.java11
-rw-r--r--print/pdftk/files/patch-java_libs__com__lowagie__text__pdf__codec__Makefile36
-rw-r--r--print/pdftk/files/patch-java_libs__com__lowagie__text__pdf__codec__postscript__Makefile37
-rw-r--r--print/pdftk/files/patch-java_libs__com__lowagie__text__pdf__codec__wmf__Makefile37
-rw-r--r--print/pdftk/files/patch-java_libs__com__lowagie__text__pdf__fonts__Makefile37
-rw-r--r--print/pdftk/files/patch-java_libs__com__lowagie__text__xml__xmp__Makefile35
-rw-r--r--print/pdftk/files/patch-java_libs__gnu__gcj__convert__Makefile35
-rw-r--r--print/pdftk/files/patch-java_libs__gnu_local__java__security__Makefile35
-rw-r--r--print/pdftk/files/patch-java_libs__gnu_local__java__security__provider__Makefile35
-rw-r--r--print/pdftk/files/patch-java_libs__java_local__security__Makefile35
16 files changed, 480 insertions, 16 deletions
diff --git a/print/pdftk/Makefile b/print/pdftk/Makefile
index a24a690c5b1b..032fd3e0ce93 100644
--- a/print/pdftk/Makefile
+++ b/print/pdftk/Makefile
@@ -7,7 +7,7 @@
PORTNAME= pdftk
PORTVERSION= 1.41
-PORTREVISION= 2
+PORTREVISION= 3
CATEGORIES= print
MASTER_SITES= http://www.pdfhacks.com/pdftk/ \
http://www.accesspdf.com/pdftk/
@@ -24,18 +24,20 @@ BUILD_DEPENDS= gcj${CSUFF}:${PORTSDIR}/lang/gcc${CSUFF}
# Get gcc version suffix without the dot in USE_GCC
CSUFF= ${_USE_GCC:S/.//}
-USE_GCC= 4.2
+USE_GCC= 4.5
USE_GMAKE= yes
USE_ICONV= yes
+USE_LDCONFIG= ${PREFIX}/lib/gcc${CSUFF}
# gcj/libgcj don't exist on some platforms
ONLY_FOR_ARCHS= i386 amd64
ONLY_FOR_ARCHS_REASON= GNU gcj does not exist on this platform
WRKSRC= ${WRKDIR}/${DISTNAME}/${PORTNAME}
+PATCH_WRKSRC= ${WRKDIR}/${DISTNAME}
MAKEFILE= Makefile.Generic
-MAKE_ENV= GCJ=gcj${CSUFF} GCJH=gcjh${CSUFF}
+MAKE_ENV= GCJ=gcj${CSUFF} GCJH=gcjh${CSUFF} OBJCOPY=${OBJCOPY}
MAN1= ${PORTNAME}.1
PLIST_FILES= bin/pdftk
@@ -52,8 +54,8 @@ post-extract:
#Based on info found via Google USENET Search: Adam McDougall, Gerald Pfeifer
#
- @${REINPLACE_CMD} -e "s|GCJFLAGS=|GCJFLAGS= -L${LOCALBASE}/lib|g" ${WRKSRC}/Makefile.Generic
- @${REINPLACE_CMD} -e "s|CXXFLAGS= -lgcj|CXXFLAGS= -lgcj ${PTHREAD_CFLAGS} ${PTHREAD_LIBS} -liconv -lz -L${LOCALBASE}/lib|g" \
+ @${REINPLACE_CMD} -e "s|GCJFLAGS=|GCJFLAGS= -L${LOCALBASE}/lib -Wl,-rpath=${LOCALBASE}/lib/gcc${CSUFF} -w|g" ${WRKSRC}/Makefile.Generic
+ @${REINPLACE_CMD} -e "s|CXXFLAGS= -lgcj|CXXFLAGS= -lgcj ${PTHREAD_CFLAGS} ${PTHREAD_LIBS} -liconv -lz -L${LOCALBASE}/lib -Wl,-rpath=${LOCALBASE}/lib/gcc${CSUFF} -w|g" \
${WRKSRC}/Makefile.Generic
@${REINPLACE_CMD} -e "s|//SID import com.lowagie.text.ImgRaw;|import com.lowagie.text.ImgRaw;|g" \
${WRKSRC}/../java_libs/com/lowagie/text/pdf/codec/PngImage.java
diff --git a/print/pdftk/files/patch-Makefile.Generic b/print/pdftk/files/patch-Makefile.Generic
deleted file mode 100644
index 6fd62c877336..000000000000
--- a/print/pdftk/files/patch-Makefile.Generic
+++ /dev/null
@@ -1,11 +0,0 @@
---- ./Makefile.Generic.orig 2009-12-10 15:50:42.000000000 -0500
-+++ ./Makefile.Generic 2009-12-10 15:50:42.000000000 -0500
-@@ -28,7 +28,7 @@
-
- # itext compiler flags
- # -O3 might cause pdftk to segfault on cat operation (gcc 3.4.4)
--export GCJFLAGS= -L/usr/local/lib -O2
-+export GCJFLAGS= -L/usr/local/lib -O2 -w
-
- #
- export ARFLAGS= rs
diff --git a/print/pdftk/files/patch-java_libs__com__lowagie__bc__asn1__Makefile b/print/pdftk/files/patch-java_libs__com__lowagie__bc__asn1__Makefile
new file mode 100644
index 000000000000..a7a4bf6cc016
--- /dev/null
+++ b/print/pdftk/files/patch-java_libs__com__lowagie__bc__asn1__Makefile
@@ -0,0 +1,35 @@
+--- ./java_libs/com/lowagie/bc/asn1/Makefile.orig 2006-07-27 19:18:06.000000000 -0400
++++ ./java_libs/com/lowagie/bc/asn1/Makefile 2010-04-08 18:13:54.000000000 -0400
+@@ -11,12 +11,14 @@
+ objects= $(patsubst %.java, %.o, $(sources))
+ headers= $(patsubst %.java, %.h, $(sources))
+ classes= $(patsubst %.java, %.class, $(sources))
++package:=$(shell grep ^package *.java | awk -F : '{ print $$2 }' | awk -F \; '{ print $$1 } ' | awk '{ print $$2 }' | sort -u)
+
+ ##
+ # implicit rules for creating A from B
+
+ %.o : %.java
+ $(GCJ) $(GCJFLAGS) -c $< -o $@
++ ${OBJCOPY} -L '_ZGr8_$$_dummy' $@
+
+ %.class : %.java
+ $(GCJ) $(GCJFLAGS) -C $<
+@@ -25,14 +27,15 @@
+ # the "$*" automatic variable, here
+ #
+ %.h : %.class
+- $(GCJH) --classpath="." $*;
+- $(RM) $<
++ $(GCJH) -classpath ../../../.. -d ../../../.. $(package).$*;
+
+ ##
+ # targets
+
+ all : $(library) $(headers)
+
++$(headers): $(classes)
++
+ $(library) : $(objects)
+ $(AR) $(ARFLAGS) $(library) $(objects);
+
diff --git a/print/pdftk/files/patch-java_libs__com__lowagie__text__Makefile b/print/pdftk/files/patch-java_libs__com__lowagie__text__Makefile
new file mode 100644
index 000000000000..b42d7e2a7e75
--- /dev/null
+++ b/print/pdftk/files/patch-java_libs__com__lowagie__text__Makefile
@@ -0,0 +1,35 @@
+--- ./java_libs/com/lowagie/text/Makefile.orig 2006-07-26 17:14:34.000000000 -0400
++++ ./java_libs/com/lowagie/text/Makefile 2010-04-08 18:13:54.000000000 -0400
+@@ -11,12 +11,14 @@
+ objects= $(patsubst %.java, %.o, $(sources))
+ headers= $(patsubst %.java, %.h, $(sources))
+ classes= $(patsubst %.java, %.class, $(sources))
++package:=$(shell grep ^package *.java | awk -F : '{ print $$2 }' | awk -F \; '{ print $$1 } ' | awk '{ print $$2 }' | sort -u)
+
+ ##
+ # implicit rules for creating A from B
+
+ %.o : %.java
+ $(GCJ) $(GCJFLAGS) -c $< -o $@
++ ${OBJCOPY} -L '_ZGr8_$$_dummy' $@
+
+ %.class : %.java
+ $(GCJ) $(GCJFLAGS) -C $<
+@@ -25,14 +27,15 @@
+ # the "$*" automatic variable, here
+ #
+ %.h : %.class
+- $(GCJH) --classpath="." $*;
+- $(RM) $<
++ $(GCJH) -classpath ../../.. -d ../../.. $(package).$*;
+
+ ##
+ # targets
+
+ all : $(library) $(headers)
+
++$(headers): $(classes)
++
+ $(library) : $(objects)
+ $(AR) $(ARFLAGS) $(library) $(objects);
+
diff --git a/print/pdftk/files/patch-java_libs__com__lowagie__text__markup__Makefile b/print/pdftk/files/patch-java_libs__com__lowagie__text__markup__Makefile
new file mode 100644
index 000000000000..88f1fc951b48
--- /dev/null
+++ b/print/pdftk/files/patch-java_libs__com__lowagie__text__markup__Makefile
@@ -0,0 +1,35 @@
+--- ./java_libs/com/lowagie/text/markup/Makefile.orig 2006-07-26 17:14:54.000000000 -0400
++++ ./java_libs/com/lowagie/text/markup/Makefile 2010-04-08 18:13:54.000000000 -0400
+@@ -11,12 +11,14 @@
+ objects= $(patsubst %.java, %.o, $(sources))
+ headers= $(patsubst %.java, %.h, $(sources))
+ classes= $(patsubst %.java, %.class, $(sources))
++package:=$(shell grep ^package *.java | awk -F : '{ print $$2 }' | awk -F \; '{ print $$1 } ' | awk '{ print $$2 }' | sort -u)
+
+ ##
+ # implicit rules for creating A from B
+
+ %.o : %.java
+ $(GCJ) $(GCJFLAGS) -c $< -o $@
++ ${OBJCOPY} -L '_ZGr8_$$_dummy' $@
+
+ %.class : %.java
+ $(GCJ) $(GCJFLAGS) -C $<
+@@ -25,14 +27,15 @@
+ # the "$*" automatic variable, here
+ #
+ %.h : %.class
+- $(GCJH) --classpath="." $*;
+- $(RM) $<
++ $(GCJH) -classpath ../../../.. -d ../../../.. $(package).$*;
+
+ ##
+ # targets
+
+ all : $(library) $(headers)
+
++$(headers): $(classes)
++
+ $(library) : $(objects)
+ $(AR) $(ARFLAGS) $(library) $(objects);
+
diff --git a/print/pdftk/files/patch-java_libs__com__lowagie__text__pdf__Makefile b/print/pdftk/files/patch-java_libs__com__lowagie__text__pdf__Makefile
new file mode 100644
index 000000000000..8ba277623bae
--- /dev/null
+++ b/print/pdftk/files/patch-java_libs__com__lowagie__text__pdf__Makefile
@@ -0,0 +1,35 @@
+--- ./java_libs/com/lowagie/text/pdf/Makefile.orig 2006-07-26 17:15:10.000000000 -0400
++++ ./java_libs/com/lowagie/text/pdf/Makefile 2010-04-08 18:13:54.000000000 -0400
+@@ -11,12 +11,14 @@
+ objects= $(patsubst %.java, %.o, $(sources))
+ headers= $(patsubst %.java, %.h, $(sources))
+ classes= $(patsubst %.java, %.class, $(sources))
++package:=$(shell grep ^package *.java | awk -F : '{ print $$2 }' | awk -F \; '{ print $$1 } ' | awk '{ print $$2 }' | sort -u)
+
+ ##
+ # implicit rules for creating A from B
+
+ %.o : %.java
+ $(GCJ) $(GCJFLAGS) -c $< -o $@
++ ${OBJCOPY} -L '_ZGr8_$$_dummy' $@
+
+ %.class : %.java
+ $(GCJ) $(GCJFLAGS) -C $<
+@@ -25,14 +27,15 @@
+ # the "$*" automatic variable, here
+ #
+ %.h : %.class
+- $(GCJH) --classpath="." $*;
+- $(RM) $<
++ $(GCJH) -classpath ../../../.. -d ../../../.. $(package).$*;
+
+ ##
+ # targets
+
+ all : $(library) $(headers)
+
++$(headers): $(classes)
++
+ $(library) : $(objects)
+ $(AR) $(ARFLAGS) $(library) $(objects);
+
diff --git a/print/pdftk/files/patch-java_libs__com__lowagie__text__pdf__PdfDate.java b/print/pdftk/files/patch-java_libs__com__lowagie__text__pdf__PdfDate.java
new file mode 100644
index 000000000000..ff66750391c2
--- /dev/null
+++ b/print/pdftk/files/patch-java_libs__com__lowagie__text__pdf__PdfDate.java
@@ -0,0 +1,11 @@
+--- ./java_libs/com/lowagie/text/pdf/PdfDate.java.orig 2006-07-26 19:56:42.000000000 -0400
++++ ./java_libs/com/lowagie/text/pdf/PdfDate.java 2010-04-08 18:13:54.000000000 -0400
+@@ -76,7 +76,7 @@
+ // ssteward; static builds of pdftk (Windows, gcc 3.3.1) would
+ // omit this class because of its reference by reflection;
+ // this treatment ensures that ld will include it
+- private static Class c1= gnu.java.locale.Calendar.class;
++ private static Class c1= java.util.Calendar.class;
+
+ private static final int dateSpace[] = {Calendar.YEAR, 4, 0, Calendar.MONTH, 2, -1, Calendar.DAY_OF_MONTH, 2, 0,
+ Calendar.HOUR_OF_DAY, 2, 0, Calendar.MINUTE, 2, 0, Calendar.SECOND, 2, 0};
diff --git a/print/pdftk/files/patch-java_libs__com__lowagie__text__pdf__codec__Makefile b/print/pdftk/files/patch-java_libs__com__lowagie__text__pdf__codec__Makefile
new file mode 100644
index 000000000000..6316b99ad40b
--- /dev/null
+++ b/print/pdftk/files/patch-java_libs__com__lowagie__text__pdf__codec__Makefile
@@ -0,0 +1,36 @@
+--- ./java_libs/com/lowagie/text/pdf/codec/Makefile.orig 2006-07-26 17:15:20.000000000 -0400
++++ ./java_libs/com/lowagie/text/pdf/codec/Makefile 2010-04-08 18:13:54.000000000 -0400
+@@ -11,13 +11,15 @@
+ objects= $(patsubst %.java, %.o, $(sources))
+ headers= $(patsubst %.java, %.h, $(sources))
+ classes= $(patsubst %.java, %.class, $(sources))
++package:=$(shell grep ^package *.java | awk -F : '{ print $$2 }' | awk -F \; '{ print $$1 } ' | awk '{ print $$2 }' | sort -u)
+
+ ##
+ # implicit rules for creating A from B
+
+ %.o : %.java
+ $(GCJ) $(GCJFLAGS) -c $< -o $@
+-
++ ${OBJCOPY} -L '_ZGr8_$$_dummy' $@
++
+ %.class : %.java
+ $(GCJ) $(GCJFLAGS) -C $<
+
+@@ -25,13 +27,14 @@
+ # the "$*" automatic variable, here
+ #
+ %.h : %.class
+- $(GCJH) --classpath="." $*;
+- $(RM) $<
++ $(GCJH) -classpath ../../../../.. -d ../../../../.. $(package).$*;
+
+ ##
+ # targets
+
+ all : $(library) $(headers)
++
++$(headers): $(classes)
+
+ $(library) : $(objects)
+ $(AR) $(ARFLAGS) $(library) $(objects);
diff --git a/print/pdftk/files/patch-java_libs__com__lowagie__text__pdf__codec__postscript__Makefile b/print/pdftk/files/patch-java_libs__com__lowagie__text__pdf__codec__postscript__Makefile
new file mode 100644
index 000000000000..1290b545a5c0
--- /dev/null
+++ b/print/pdftk/files/patch-java_libs__com__lowagie__text__pdf__codec__postscript__Makefile
@@ -0,0 +1,37 @@
+--- ./java_libs/com/lowagie/text/pdf/codec/postscript/Makefile.orig 2006-07-27 19:21:06.000000000 -0400
++++ ./java_libs/com/lowagie/text/pdf/codec/postscript/Makefile 2010-04-08 18:13:54.000000000 -0400
+@@ -11,13 +11,15 @@
+ objects= $(patsubst %.java, %.o, $(sources))
+ headers= $(patsubst %.java, %.h, $(sources))
+ classes= $(patsubst %.java, %.class, $(sources))
++package:=$(shell grep ^package *.java | awk -F : '{ print $$2 }' | awk -F \; '{ print $$1 } ' | awk '{ print $$2 }' | sort -u)
+
+ ##
+ # implicit rules for creating A from B
+
+ %.o : %.java
+ $(GCJ) $(GCJFLAGS) -c $< -o $@
+-
++ ${OBJCOPY} -L '_ZGr8_$$_dummy' $@
++
+ %.class : %.java
+ $(GCJ) $(GCJFLAGS) -C $<
+
+@@ -25,14 +27,15 @@
+ # the "$*" automatic variable, here
+ #
+ %.h : %.class
+- $(GCJH) --classpath="." $*;
+- $(RM) $<
++ $(GCJH) -classpath ../../../../../.. -d ../../../../../.. $(package).$*;
+
+ ##
+ # targets
+
+ all : $(library) $(headers)
+
++$(headers): $(classes)
++
+ $(library) : $(objects)
+ $(AR) $(ARFLAGS) $(library) $(objects);
+
diff --git a/print/pdftk/files/patch-java_libs__com__lowagie__text__pdf__codec__wmf__Makefile b/print/pdftk/files/patch-java_libs__com__lowagie__text__pdf__codec__wmf__Makefile
new file mode 100644
index 000000000000..74c7136e3175
--- /dev/null
+++ b/print/pdftk/files/patch-java_libs__com__lowagie__text__pdf__codec__wmf__Makefile
@@ -0,0 +1,37 @@
+--- ./java_libs/com/lowagie/text/pdf/codec/wmf/Makefile.orig 2006-07-26 17:15:32.000000000 -0400
++++ ./java_libs/com/lowagie/text/pdf/codec/wmf/Makefile 2010-04-08 18:13:54.000000000 -0400
+@@ -11,13 +11,15 @@
+ objects= $(patsubst %.java, %.o, $(sources))
+ headers= $(patsubst %.java, %.h, $(sources))
+ classes= $(patsubst %.java, %.class, $(sources))
++package:=$(shell grep ^package *.java | awk -F : '{ print $$2 }' | awk -F \; '{ print $$1 } ' | awk '{ print $$2 }' | sort -u)
+
+ ##
+ # implicit rules for creating A from B
+
+ %.o : %.java
+ $(GCJ) $(GCJFLAGS) -c $< -o $@
+-
++ ${OBJCOPY} -L '_ZGr8_$$_dummy' $@
++
+ %.class : %.java
+ $(GCJ) $(GCJFLAGS) -C $<
+
+@@ -25,14 +27,15 @@
+ # the "$*" automatic variable, here
+ #
+ %.h : %.class
+- $(GCJH) --classpath="." $*;
+- $(RM) $<
++ $(GCJH) -classpath ../../../../../.. -d ../../../../../.. $(package).$*;
+
+ ##
+ # targets
+
+ all : $(library) $(headers)
+
++$(headers): $(classes)
++
+ $(library) : $(objects)
+ $(AR) $(ARFLAGS) $(library) $(objects);
+
diff --git a/print/pdftk/files/patch-java_libs__com__lowagie__text__pdf__fonts__Makefile b/print/pdftk/files/patch-java_libs__com__lowagie__text__pdf__fonts__Makefile
new file mode 100644
index 000000000000..ee9264d9158a
--- /dev/null
+++ b/print/pdftk/files/patch-java_libs__com__lowagie__text__pdf__fonts__Makefile
@@ -0,0 +1,37 @@
+--- ./java_libs/com/lowagie/text/pdf/fonts/Makefile.orig 2006-07-26 17:15:48.000000000 -0400
++++ ./java_libs/com/lowagie/text/pdf/fonts/Makefile 2010-04-08 18:13:54.000000000 -0400
+@@ -11,6 +11,7 @@
+ objects= $(patsubst %.java, %.o, $(sources))
+ headers= $(patsubst %.java, %.h, $(sources))
+ classes= $(patsubst %.java, %.class, $(sources))
++package:=$(shell grep ^package *.java | awk -F \; '{ print $$1 } ' | awk '{ print $$2 }' | sort -u)
+
+ # font metric files, included as resources
+ afms= $(wildcard *.afm)
+@@ -21,6 +22,7 @@
+
+ %.o : %.java
+ $(GCJ) $(GCJFLAGS) -c $< -o $@
++ ${OBJCOPY} -L '_ZGr8_$$_dummy' $@
+
+ %.class : %.java
+ $(GCJ) $(GCJFLAGS) -C $<
+@@ -34,8 +36,7 @@
+ # the "$*" automatic variable, here
+ #
+ %.h : %.class
+- $(GCJH) --classpath="." $*;
+- $(RM) $<
++ $(GCJH) --classpath="../../../../.." -d ../../../../.. $(package).$*;
+
+ ##
+ # targets
+@@ -45,6 +46,8 @@
+
+ all : $(library) $(headers) $(afm_objects)
+
++$(headers) : $(classes)
++
+ $(library) : $(objects)
+ $(AR) $(ARFLAGS) $(library) $(objects);
+
diff --git a/print/pdftk/files/patch-java_libs__com__lowagie__text__xml__xmp__Makefile b/print/pdftk/files/patch-java_libs__com__lowagie__text__xml__xmp__Makefile
new file mode 100644
index 000000000000..740ed0f45857
--- /dev/null
+++ b/print/pdftk/files/patch-java_libs__com__lowagie__text__xml__xmp__Makefile
@@ -0,0 +1,35 @@
+--- ./java_libs/com/lowagie/text/xml/xmp/Makefile.orig 2006-07-26 20:53:34.000000000 -0400
++++ ./java_libs/com/lowagie/text/xml/xmp/Makefile 2010-04-08 18:13:54.000000000 -0400
+@@ -11,12 +11,14 @@
+ objects= $(patsubst %.java, %.o, $(sources))
+ headers= $(patsubst %.java, %.h, $(sources))
+ classes= $(patsubst %.java, %.class, $(sources))
++package:=$(shell grep ^package *.java | awk -F : '{ print $$2 }' | awk -F \; '{ print $$1 } ' | awk '{ print $$2 }' | sort -u)
+
+ ##
+ # implicit rules for creating A from B
+
+ %.o : %.java
+ $(GCJ) $(GCJFLAGS) -c $< -o $@
++ ${OBJCOPY} -L '_ZGr8_$$_dummy' $@
+
+ %.class : %.java
+ $(GCJ) $(GCJFLAGS) -C $<
+@@ -25,14 +27,15 @@
+ # the "$*" automatic variable, here
+ #
+ %.h : %.class
+- $(GCJH) --classpath="." $*;
+- $(RM) $<
++ $(GCJH) -classpath ../../../../.. -d ../../../../.. $(package).$*;
+
+ ##
+ # targets
+
+ all : $(library) $(headers)
+
++$(headers): $(classes)
++
+ $(library) : $(objects)
+ $(AR) $(ARFLAGS) $(library) $(objects);
+
diff --git a/print/pdftk/files/patch-java_libs__gnu__gcj__convert__Makefile b/print/pdftk/files/patch-java_libs__gnu__gcj__convert__Makefile
new file mode 100644
index 000000000000..09005f66578e
--- /dev/null
+++ b/print/pdftk/files/patch-java_libs__gnu__gcj__convert__Makefile
@@ -0,0 +1,35 @@
+--- ./java_libs/gnu/gcj/convert/Makefile.orig 2006-07-26 17:13:44.000000000 -0400
++++ ./java_libs/gnu/gcj/convert/Makefile 2010-04-08 18:13:54.000000000 -0400
+@@ -11,12 +11,14 @@
+ objects= $(patsubst %.java, %.o, $(sources))
+ headers= $(patsubst %.java, %.h, $(sources))
+ classes= $(patsubst %.java, %.class, $(sources))
++package:=$(shell grep ^package *.java | awk -F \; '{ print $$1 } ' | awk '{ print $$2 }' | sort -u)
+
+ ##
+ # implicit rules for creating A from B
+
+ %.o : %.java
+ $(GCJ) $(GCJFLAGS) -c $< -o $@
++ ${OBJCOPY} -L '_ZGr8_$$_dummy' $@
+
+ %.class : %.java
+ $(GCJ) $(GCJFLAGS) -C $<
+@@ -25,14 +27,15 @@
+ # the "$*" automatic variable, here
+ #
+ %.h : %.class
+- $(GCJH) --classpath="." $*;
+- $(RM) $<
++ $(GCJH) -classpath ../../../.. -d ../../../.. $(package).$*;
+
+ ##
+ # targets
+
+ all : $(library) $(headers)
+
++$(headers): $(classes)
++
+ $(library) : $(objects)
+ $(AR) $(ARFLAGS) $(library) $(objects);
+
diff --git a/print/pdftk/files/patch-java_libs__gnu_local__java__security__Makefile b/print/pdftk/files/patch-java_libs__gnu_local__java__security__Makefile
new file mode 100644
index 000000000000..00c151561cb5
--- /dev/null
+++ b/print/pdftk/files/patch-java_libs__gnu_local__java__security__Makefile
@@ -0,0 +1,35 @@
+--- ./java_libs/gnu_local/java/security/Makefile.orig 2006-07-26 17:11:32.000000000 -0400
++++ ./java_libs/gnu_local/java/security/Makefile 2010-04-08 18:13:54.000000000 -0400
+@@ -11,12 +11,14 @@
+ objects= $(patsubst %.java, %.o, $(sources))
+ headers= $(patsubst %.java, %.h, $(sources))
+ classes= $(patsubst %.java, %.class, $(sources))
++package:=$(shell grep ^package *.java | awk -F \; '{ print $$1 } ' | awk '{ print $$2 }' | sort -u)
+
+ ##
+ # implicit rules for creating A from B
+
+ %.o : %.java
+ $(GCJ) $(GCJFLAGS) -c $< -o $@
++ ${OBJCOPY} -L '_ZGr8_$$_dummy' $@
+
+ %.class : %.java
+ $(GCJ) $(GCJFLAGS) -C $<
+@@ -25,14 +27,15 @@
+ # the "$*" automatic variable, here
+ #
+ %.h : %.class
+- $(GCJH) --classpath="." $*;
+- $(RM) $<
++ $(GCJH) -classpath ../../.. -d ../../.. $(package).$*;
+
+ ##
+ # targets
+
+ all : $(library) $(headers)
+
++$(headers): $(classes)
++
+ $(library) : $(objects)
+ $(AR) $(ARFLAGS) $(library) $(objects);
+
diff --git a/print/pdftk/files/patch-java_libs__gnu_local__java__security__provider__Makefile b/print/pdftk/files/patch-java_libs__gnu_local__java__security__provider__Makefile
new file mode 100644
index 000000000000..1c17bdbd54cd
--- /dev/null
+++ b/print/pdftk/files/patch-java_libs__gnu_local__java__security__provider__Makefile
@@ -0,0 +1,35 @@
+--- ./java_libs/gnu_local/java/security/provider/Makefile.orig 2006-07-26 17:13:22.000000000 -0400
++++ ./java_libs/gnu_local/java/security/provider/Makefile 2010-04-08 18:13:54.000000000 -0400
+@@ -11,12 +11,14 @@
+ objects= $(patsubst %.java, %.o, $(sources))
+ headers= $(patsubst %.java, %.h, $(sources))
+ classes= $(patsubst %.java, %.class, $(sources))
++package:=$(shell grep ^package *.java | awk -F : '{ print $$2 }' | awk -F \; '{ print $$1 } ' | awk '{ print $$2 }' | sort -u)
+
+ ##
+ # implicit rules for creating A from B
+
+ %.o : %.java
+ $(GCJ) $(GCJFLAGS) -c $< -o $@
++ ${OBJCOPY} -L '_ZGr8_$$_dummy' $@
+
+ %.class : %.java
+ $(GCJ) $(GCJFLAGS) -C $<
+@@ -25,14 +27,15 @@
+ # the "$*" automatic variable, here
+ #
+ %.h : %.class
+- $(GCJH) --classpath="." $*;
+- $(RM) $<
++ $(GCJH) -classpath ../../../.. -d ../../../.. $(package).$*;
+
+ ##
+ # targets
+
+ all : $(library) $(headers)
+
++$(headers): $(classes)
++
+ $(library) : $(objects)
+ $(AR) $(ARFLAGS) $(library) $(objects);
+
diff --git a/print/pdftk/files/patch-java_libs__java_local__security__Makefile b/print/pdftk/files/patch-java_libs__java_local__security__Makefile
new file mode 100644
index 000000000000..88d4f9982750
--- /dev/null
+++ b/print/pdftk/files/patch-java_libs__java_local__security__Makefile
@@ -0,0 +1,35 @@
+--- ./java_libs/java_local/security/Makefile.orig 2006-07-26 17:13:04.000000000 -0400
++++ ./java_libs/java_local/security/Makefile 2010-04-08 18:13:54.000000000 -0400
+@@ -11,12 +11,14 @@
+ objects= $(patsubst %.java, %.o, $(sources))
+ headers= $(patsubst %.java, %.h, $(sources))
+ classes= $(patsubst %.java, %.class, $(sources))
++package:=$(shell grep ^package *.java | awk -F : '{ print $$2 }' | awk -F \; '{ print $$1 } ' | awk '{ print $$2 }' | sort -u)
+
+ ##
+ # implicit rules for creating A from B
+
+ %.o : %.java
+ $(GCJ) $(GCJFLAGS) -c $< -o $@
++ ${OBJCOPY} -L '_ZGr8_$$_dummy' $@
+
+ %.class : %.java
+ $(GCJ) $(GCJFLAGS) -C $<
+@@ -25,14 +27,15 @@
+ # the "$*" automatic variable, here
+ #
+ %.h : %.class
+- $(GCJH) --classpath="." $*;
+- $(RM) $<
++ $(GCJH) -classpath ../.. -d ../.. $(package).$*;
+
+ ##
+ # targets
+
+ all : $(library) $(headers)
+
++$(headers): $(classes)
++
+ $(library) : $(objects)
+ $(AR) $(ARFLAGS) $(library) $(objects);
+