Hello community,
here is the log from the commit of package ghostscript-library
checked in at Tue Mar 11 18:39:51 CET 2008.
--------
--- ghostscript-library/ghostscript-library.changes 2008-01-31 14:57:35.000000000 +0100
+++ /mounts/work_src_done/STABLE/ghostscript-library/ghostscript-library.changes 2008-03-06 18:41:57.000000000 +0100
@@ -1,0 +2,42 @@
+Thu Mar 06 17:30:39 CET 2008 - mfabian@suse.de
+
+- bnc#367188: for the condensed variants of "Nimbus Sans L",
+ move the "Condensed" from the style to the end of the family
+ name. Otherwise these fonts are not selectable in most
+ applications.
+
+-------------------------------------------------------------------
+Fri Feb 22 16:15:37 CET 2008 - werner@suse.de
+
+- Update to GPL ghostscript 8.61 (bnc#297524)
+ * default device is now x11alpha is available otherwise bbox
+ * Check that a device halftone exists before writing it
+ * Change the product name for the release
+ * Wrong background color of a soft mask group
+ * Remove spurious executable bits
+ * pdfwrite: type 3 fonts with exceedingly small BoundingBox
+ entries were clamped to 0 or 1
+ * pdfwrite: named objects, created via a pdfmark such as /BP,
+ could not have their content modified after the object was
+ completed
+ * Correct obvious typo in default rgb to cmyk color mapping
+ * TT font handler: Place the True Type interpreter and its
+ data into stable memory
+ * TT fonts: Ignore invalid entries in loca table
+ * Fix command list-based devices on 64-bit platforms
+ * pdfwrite: A wrong encoding of Metadata.
+ * Fix for seg fault caused by undersized buffer
+ * transparency in clist: Write transparent paths and images
+ to clist as high level objcts
+
+-------------------------------------------------------------------
+Wed Feb 6 10:48:12 CET 2008 - werner@suse.de
+
+- Make member counting of range_buff array independend from type
+
+-------------------------------------------------------------------
+Tue Feb 5 18:07:49 CET 2008 - werner@suse.de
+
+- Fix stack-based buffer overflow (CESA-2008-001, bnc#358914)
+
+-------------------------------------------------------------------
--- ghostscript-library/ghostscript-mini.changes 2008-01-31 14:57:38.000000000 +0100
+++ /mounts/work_src_done/STABLE/ghostscript-library/ghostscript-mini.changes 2008-03-06 18:42:22.000000000 +0100
@@ -1,0 +2,42 @@
+Thu Mar 06 17:30:39 CET 2008 - mfabian@suse.de
+
+- bnc#367188: for the condensed variants of "Nimbus Sans L",
+ move the "Condensed" from the style to the end of the family
+ name. Otherwise these fonts are not selectable in most
+ applications.
+
+-------------------------------------------------------------------
+Fri Feb 22 16:15:37 CET 2008 - werner@suse.de
+
+- Update to GPL ghostscript 8.61 (bnc#297524)
+ * default device is now x11alpha is available otherwise bbox
+ * Check that a device halftone exists before writing it
+ * Change the product name for the release
+ * Wrong background color of a soft mask group
+ * Remove spurious executable bits
+ * pdfwrite: type 3 fonts with exceedingly small BoundingBox
+ entries were clamped to 0 or 1
+ * pdfwrite: named objects, created via a pdfmark such as /BP,
+ could not have their content modified after the object was
+ completed
+ * Correct obvious typo in default rgb to cmyk color mapping
+ * TT font handler: Place the True Type interpreter and its
+ data into stable memory
+ * TT fonts: Ignore invalid entries in loca table
+ * Fix command list-based devices on 64-bit platforms
+ * pdfwrite: A wrong encoding of Metadata.
+ * Fix for seg fault caused by undersized buffer
+ * transparency in clist: Write transparent paths and images
+ to clist as high level objcts
+
+-------------------------------------------------------------------
+Wed Feb 6 10:48:12 CET 2008 - werner@suse.de
+
+- Make member counting of range_buff array independend from type
+
+-------------------------------------------------------------------
+Tue Feb 5 18:07:49 CET 2008 - werner@suse.de
+
+- Fix stack-based buffer overflow (CESA-2008-001, bnc#358914)
+
+-------------------------------------------------------------------
@@ -4 +46 @@
-- ghostscript-mini: No self conflict but provide
+- ghostscript-mini: No self conflict but provide
Old:
----
ghostscript-8.60-bjc.dif
ghostscript-8.60-broken64.dif
ghostscript-8.60.dif
ghostscript-8.60-dmpr.dif
ghostscript-8.60-freetype2.dif
ghostscript-8.60-ijs.dif
ghostscript-8.60-inferno.dif
ghostscript-8.60-pipe.dif
ghostscript-8.60-stroke-loop.dif
ghostscript-8.60.tar.bz2
ghostscript-8.60-x11.dif
New:
----
ghostscript-8.60-CESA-2008-001.dif
ghostscript-8.61-bjc.dif
ghostscript-8.61-broken64.dif
ghostscript-8.61.dif
ghostscript-8.61-dmpr.dif
ghostscript-8.61-freetype2.dif
ghostscript-8.61-ijs.dif
ghostscript-8.61-inferno.dif
ghostscript-8.61-pipe.dif
ghostscript-8.61-stroke-loop.dif
ghostscript-8.61.tar.bz2
ghostscript-8.61-x11.dif
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ ghostscript-library.spec ++++++
--- /var/tmp/diff_new_pack.sg8438/_old 2008-03-11 18:37:23.000000000 +0100
+++ /var/tmp/diff_new_pack.sg8438/_new 2008-03-11 18:37:23.000000000 +0100
@@ -1,5 +1,5 @@
#
-# spec file for package ghostscript-library (Version 8.60)
+# spec file for package ghostscript-library (Version 8.61)
#
# Copyright (c) 2008 SUSE LINUX Products GmbH, Nuernberg, Germany.
# This file and all modifications and additions to the pristine
@@ -10,25 +10,22 @@
# norootforbuild
+
Name: ghostscript-library
%if "%name" != "ghostscript-mini"
BuildRequires: cups-devel cups-libs dos2unix ed gcc-c++ glib2-devel libpng-devel libtiff-devel libxml2-devel t1utils xorg-x11-devel zlib-devel
%if %suse_version > 1020
-BuildRequires: fdupes flex libjasper-devel libopenssl-devel pkg-config
+BuildRequires: fdupes flex libexpat-devel libjasper-devel libopenssl-devel pkg-config
%else
-BuildRequires: libjasper openssl-devel pkgconfig
+BuildRequires: expat libjasper openssl-devel pkgconfig
%endif
%if %suse_version > 1010
BuildRequires: xorg-x11-fonts
%else
BuildRequires: xorg-x11
%endif
-%if %suse_version > 1000
BuildRequires: freetype2-devel
%else
-BuildRequires: libstdc++-devel
-%endif
-%else
BuildRequires: ed libpng-devel zlib-devel
%if %suse_version > 1020
BuildRequires: pkg-config
@@ -38,17 +35,11 @@
%endif
Url: http://www.ghostscript.com/
Group: System/Libraries
-Provides: ghostscript gs gs_lib pstoraster ghostscript_any
+Provides: ghostscript gs gs_lib pstoraster ghostscript_any ghostscript-serv
Obsoletes: gs_lib ghostscript-serv
%if "%name" != "ghostscript-mini"
-%if %suse_version > 1000
Suggests: hplip-hpijs
-%else
-Requires: hplip-hpijs
-%endif
-%if %suse_version > 1000
Recommends: ghostscript-omni ghostscript-fonts-other
-%endif
Requires: ghostscript-fonts-std
Conflicts: ghostscript-mini
%else
@@ -60,10 +51,10 @@
%else
Summary: Necessary Files for Running Ghostscript
%endif
-Version: 8.60
-Release: 27
+Version: 8.61
+Release: 1
License: GPL v2 or later
-Source0: ghostscript-8.60.tar.bz2
+Source0: ghostscript-8.61.tar.bz2
Source1: ftp://mirror.cs.wisc.edu/pub/mirrors/ghost/GPL/current/ghostscript-fonts-std-8.11.tar.bz2
Source2: ftp://mirror.cs.wisc.edu/pub/mirrors/ghost/fonts/ghostscript-fonts-other-6.0.tar.bz2
Source3: ftp://ftp.kapella.gpi.ru/pub/cyrillic/psfonts/gs_rusfonts.tar.bz2
@@ -85,28 +76,28 @@
Source52: make.lost
Source60: catalog.devices
Source61: rpmlintrc
-Patch0: ghostscript-8.60.dif
+Patch0: ghostscript-8.61.dif
Patch1: ghostscript-8.60-pdf.dif
Patch2: ghostscript-8.57-sgirdb.dif
-Patch3: ghostscript-8.60-x11.dif
-Patch4: ghostscript-8.60-bjc.dif
+Patch3: ghostscript-8.61-x11.dif
+Patch4: ghostscript-8.61-bjc.dif
Patch5: ghostscript-8.60-alignment.dif
-Patch6: ghostscript-8.60-broken64.dif
+Patch6: ghostscript-8.61-broken64.dif
Patch7: ghostscript-8.60-cgmout.dif
Patch8: ghostscript-8.60-cljet5.dif
Patch9: ghostscript-8.60-cmap.dif
-Patch10: ghostscript-8.60-freetype2.dif
+Patch10: ghostscript-8.61-freetype2.dif
Patch11: ghostscript-8.60-gsj_update.dif
-Patch12: ghostscript-8.60-inferno.dif
-Patch13: ghostscript-8.60-pipe.dif
+Patch12: ghostscript-8.61-inferno.dif
+Patch13: ghostscript-8.61-pipe.dif
Patch14: ghostscript-8.60-ppd.dif
Patch15: ghostscript-8.60-truetype.dif
Patch16: ghostscript-8.60-runlibfileifexists.dif
-Patch17: ghostscript-8.60-dmpr.dif
-Patch18: ghostscript-8.60-stroke-loop.dif
-Patch19: ghostscript-8.60-ijs.dif
+Patch17: ghostscript-8.61-dmpr.dif
+Patch18: ghostscript-8.61-stroke-loop.dif
+Patch19: ghostscript-8.61-ijs.dif
Patch20: ghostscript-8.60-bbox.dif
-Patch21: ghostscript-8.60-jasper-1.701.0-CVE-2007-2721.dif
+Patch21: ghostscript-8.60-CESA-2008-001.dif
Patch24: ghostscript-fonts-std-8.11.patch
Patch25: Omni-0.9.2.dif.bz2
Patch26: hpdj-2.6-gs8.60.dif
@@ -186,7 +177,7 @@
%description -n ghostscript-fonts-std
The necessary fonts for the PostScript interpreter Ghostscript. The
-URW fonts (URW Software, Poppenb�tteler Bogen 29A, D-22399 Hamburg,
+URW fonts (URW Software, Poppenbuetteler Bogen 29A, D-22399 Hamburg,
Germany).
@@ -306,7 +297,7 @@
%package -n libgimpprint
Version: 4.2.7
-Release: 217
+Release: 233
Summary: Gimp-Print libraries
Group: Development/Libraries/C and C++
@@ -321,8 +312,8 @@
%package -n libgimpprint-devel
Version: 4.2.7
-Release: 217
-Requires: %install_info_prereq
+Release: 233
+PreReq: %install_info_prereq
Requires: libgimpprint = %{version}
Requires: glibc-devel
Summary: Gimp-Print Include Files
@@ -410,7 +401,7 @@
%patch18 -p0 -b .stroke
%patch19 -p0 -b .ijs
%patch20 -p0 -b .bbox
-%patch21 -p0 -b .CVE20072721
+%patch21 -p0 -b .CESA2008001
%patch0 -p0
%build
@@ -421,29 +412,36 @@
export LANG LC_CTYPE
#
%ifarch s390 s390x
- RPM_OPT_FLAGS="${RPM_OPT_FLAGS/-O[0-9]/-O1}"
+ RPM_OPT_FLAGS="${RPM_OPT_FLAGS//-O[123]/-O1}"
%endif
#
DEBUG=""
# DEBUG="-g3 -DDEBUG"
LATECFLAGS=""
LATECXXFLAGS=""
- STACK_PROTECTOR=""
- if gcc -fno-const-strings -S -o /dev/null -xc++ /dev/null > /dev/null 2>&1 ; then
- LATECXXFLAGS="${LATECXXFLAGS} -fno-const-strings"
- fi
- if gcc -Wno-write-strings -S -o /dev/null -xc /dev/null > /dev/null 2>&1 ; then
- LATECFLAGS="${LATECFLAGS} -Wno-write-strings"
- LATECXXFLAGS="${LATECXXFLAGS} -Wno-write-strings"
- fi
- if gcc -Wno-return-type -S -o /dev/null -xc /dev/null > /dev/null 2>&1 ; then
- LATECFLAGS="${LATECFLAGS} -Wno-return-type"
- LATECXXFLAGS="${LATECXXFLAGS} -Wno-return-type"
+ cflags ()
+ {
+ local flag=$1; shift
+ case "${RPM_OPT_FLAGS}" in
+ *${flag}*) return
+ esac
+ if test -n "$1" && gcc $flag -S -o /dev/null -xc /dev/null > /dev/null 2>&1 ; then
+ local var=$1; shift
+ eval $var=\${$var:+\$$var\ }$flag
fi
- if gcc -fstack-protector -S -o /dev/null -xc++ /dev/null > /dev/null 2>&1 ; then
- STACK_PROTECTOR=-fstack-protector
+ if test -n "$1" && gcc $flag -S -o /dev/null -xc++ /dev/null > /dev/null 2>&1 ; then
+ local var=$1; shift
+ eval $var=\${$var:+\$$var\ }$flag
fi
- CFLAGS="${RPM_OPT_FLAGS} -fno-strict-aliasing ${STACK_PROTECTOR} -fPIC -D_GNU_SOURCE -pipe ${DEBUG} ${LATECFLAGS}"
+ }
+ cflags -fno-const-strings LATECFLAGS LATECXXFLAGS
+ cflags -Wno-write-strings LATECFLAGS LATECXXFLAGS
+ cflags -Wno-return-type LATECFLAGS LATECXXFLAGS
+ cflags -Wno-unknown-pragmas LATECFLAGS LATECXXFLAGS
+ cflags -Wno-pointer-sign LATECFLAGS
+ cflags -fstack-protector LATECFLAGS LATECXXFLAGS
+ CFLAGS="${RPM_OPT_FLAGS} -fno-strict-aliasing -fPIC -D_GNU_SOURCE -pipe ${DEBUG} ${LATECFLAGS}"
+ CXXFLAGS="${RPM_OPT_FLAGS} -fno-strict-aliasing -fPIC -D_GNU_SOURCE -pipe ${DEBUG} ${LATECXXFLAGS}"
%if "%name" != "ghostscript-mini"
GLIB_CONFIG=%{S:50}
GLIBOPT="$(/bin/sh %{S:50} --cflags)"
@@ -461,10 +459,10 @@
FT_SUB=/freetype2
PATH=${PATH}:${RPM_SOURCE_DIR}
PKG_CONFIG_PATH=%{_libdir}/pkgconfig:/opt/gnome/%{_lib}/pkgconfig
-%if %suse_version > 1000 && "%name" != "ghostscript-mini"
+%if "%name" != "ghostscript-mini"
export FT_BRIDGE FT_CFLAGS FT_LIB_EXT FT_ROOT FT_SUB
%endif
- export LATECFLAGS LATECXXFLAGS CFLAGS DEBUG GLIBOPT GLIB_CONFIG PATH PKG_CONFIG_PATH EXTRADEVS EXTEND_NAMES
+ export CFLAGS CXXFLAGS DEBUG GLIBOPT GLIB_CONFIG PATH PKG_CONFIG_PATH EXTRADEVS EXTEND_NAMES
%if "%name" != "ghostscript-mini"
# Just in case of shared X11 and/or VGA support
STATIC_DEVS=""
@@ -585,8 +583,14 @@
# auto(re)conf is called by setupOmni
XML_CONFIG=xml2-config
DEFAULTCUPSEXEROOT=%{_libdir}/cups/filter
+ SAVE_CFLAGS="$CFLAGS"
CXX=g++
- CXXFLAGS="${CFLAGS} -O1 -pipe"
+%ifarch s390 s390x
+ CXXFLAGS="${CXXFLAGS//-O[123]/-O1} -pipe"
+%else
+ CXXFLAGS="${CXXFLAGS//-O[123]/-Os} -pipe"
+%endif
+ CFLAGS="${CXXFLAGS}"
export XML_CONFIG DEFAULTCUPSEXEROOT CXX CXXFLAGS
libtoolize --copy --force
./setupOmni --build=%{buildsys} \
@@ -605,6 +609,8 @@
--disable-gomni-compat \
--disable-device-fonts \
--with-gnu-ld
+ CFLAGS="$SAVE_CFLAGS"
+ unset SAVE_CFLAGS
popd
#
# Remark: Do never add -j here!
@@ -746,12 +752,13 @@
done
mv -v %{buildroot}%{_bindir}/fixmswrd.pl %{buildroot}%{_bindir}/fixmswrd
%if %suse_version > 1030 && "%name" != "ghostscript-mini"
- mkdir -p %{buildroot}%{_includedir}/gs
- install -m 0644 src/iapi.h %{buildroot}%{_includedir}/gs/
- install -m 0644 src/ierrors.h %{buildroot}%{_includedir}/gs/
- install -m 0644 src/gdevdsp.h %{buildroot}%{_includedir}/gs/
+ mkdir -p %{buildroot}%{_includedir}/ghostscript
+ install -m 0644 src/iapi.h %{buildroot}%{_includedir}/ghostscript/
+ install -m 0644 src/ierrors.h %{buildroot}%{_includedir}/ghostscript/
+ install -m 0644 src/gdevdsp.h %{buildroot}%{_includedir}/ghostscript/
%else
rm -vf %{buildroot}%{_libdir}/libgs.so
+ rm -vrf %{buildroot}%{_includedir}/ghostscript
%endif
#
tar xfj %{S:1} -C %{buildroot}%{_datadir}/ghostscript/
@@ -1046,7 +1053,7 @@
%files -n ghostscript-devel
%defattr(-, root, root)
%{_libdir}/libgs.so
-%{_includedir}/gs
+%{_includedir}/ghostscript
%endif
%files -n ghostscript-omni
@@ -1289,6 +1296,36 @@
%endif
%changelog
+* Thu Mar 06 2008 mfabian@suse.de
+- bnc#367188: for the condensed variants of "Nimbus Sans L",
+ move the "Condensed" from the style to the end of the family
+ name. Otherwise these fonts are not selectable in most
+ applications.
+* Fri Feb 22 2008 werner@suse.de
+- Update to GPL ghostscript 8.61 (bnc#297524)
+ * default device is now x11alpha is available otherwise bbox
+ * Check that a device halftone exists before writing it
+ * Change the product name for the release
+ * Wrong background color of a soft mask group
+ * Remove spurious executable bits
+ * pdfwrite: type 3 fonts with exceedingly small BoundingBox
+ entries were clamped to 0 or 1
+ * pdfwrite: named objects, created via a pdfmark such as /BP,
+ could not have their content modified after the object was
+ completed
+ * Correct obvious typo in default rgb to cmyk color mapping
+ * TT font handler: Place the True Type interpreter and its
+ data into stable memory
+ * TT fonts: Ignore invalid entries in loca table
+ * Fix command list-based devices on 64-bit platforms
+ * pdfwrite: A wrong encoding of Metadata.
+ * Fix for seg fault caused by undersized buffer
+ * transparency in clist: Write transparent paths and images
+ to clist as high level objcts
+* Wed Feb 06 2008 werner@suse.de
+- Make member counting of range_buff array independend from type
+* Tue Feb 05 2008 werner@suse.de
+- Fix stack-based buffer overflow (CESA-2008-001, bnc#358914)
* Thu Jan 31 2008 werner@suse.de
- ghostscript-mini: No self conflict but provide
ghostscript-fonts-std and ghostscript-library
++++++ ghostscript-mini.spec ++++++
--- /var/tmp/diff_new_pack.sg8438/_old 2008-03-11 18:37:23.000000000 +0100
+++ /var/tmp/diff_new_pack.sg8438/_new 2008-03-11 18:37:23.000000000 +0100
@@ -1,5 +1,5 @@
#
-# spec file for package ghostscript-mini (Version 8.60)
+# spec file for package ghostscript-mini (Version 8.61)
#
# Copyright (c) 2008 SUSE LINUX Products GmbH, Nuernberg, Germany.
# This file and all modifications and additions to the pristine
@@ -10,25 +10,22 @@
# norootforbuild
+
Name: ghostscript-mini
%if "%name" != "ghostscript-mini"
BuildRequires: cups-devel cups-libs dos2unix ed gcc-c++ glib2-devel libpng-devel libtiff-devel libxml2-devel t1utils xorg-x11-devel zlib-devel
%if %suse_version > 1020
-BuildRequires: fdupes flex libjasper-devel libopenssl-devel pkg-config
+BuildRequires: fdupes flex libexpat-devel libjasper-devel libopenssl-devel pkg-config
%else
-BuildRequires: libjasper openssl-devel pkgconfig
+BuildRequires: expat libjasper openssl-devel pkgconfig
%endif
%if %suse_version > 1010
BuildRequires: xorg-x11-fonts
%else
BuildRequires: xorg-x11
%endif
-%if %suse_version > 1000
BuildRequires: freetype2-devel
%else
-BuildRequires: libstdc++-devel
-%endif
-%else
BuildRequires: ed libpng-devel zlib-devel
%if %suse_version > 1020
BuildRequires: pkg-config
@@ -38,17 +35,11 @@
%endif
Url: http://www.ghostscript.com/
Group: System/Libraries
-Provides: ghostscript gs gs_lib pstoraster ghostscript_any
+Provides: ghostscript gs gs_lib pstoraster ghostscript_any ghostscript-serv
Obsoletes: gs_lib ghostscript-serv
%if "%name" != "ghostscript-mini"
-%if %suse_version > 1000
Suggests: hplip-hpijs
-%else
-Requires: hplip-hpijs
-%endif
-%if %suse_version > 1000
Recommends: ghostscript-omni ghostscript-fonts-other
-%endif
Requires: ghostscript-fonts-std
Conflicts: ghostscript-mini
%else
@@ -60,10 +51,10 @@
%else
Summary: SuSE internal replacement for ghostscript-library and ghostscript-any (Ghostscript)
%endif
-Version: 8.60
-Release: 20
+Version: 8.61
+Release: 1
License: GPL v2 or later
-Source0: ghostscript-8.60.tar.bz2
+Source0: ghostscript-8.61.tar.bz2
Source1: ftp://mirror.cs.wisc.edu/pub/mirrors/ghost/GPL/current/ghostscript-fonts-std-8.11.tar.bz2
Source2: ftp://mirror.cs.wisc.edu/pub/mirrors/ghost/fonts/ghostscript-fonts-other-6.0.tar.bz2
Source3: ftp://ftp.kapella.gpi.ru/pub/cyrillic/psfonts/gs_rusfonts.tar.bz2
@@ -85,28 +76,28 @@
Source52: make.lost
Source60: catalog.devices
Source61: rpmlintrc
-Patch0: ghostscript-8.60.dif
+Patch0: ghostscript-8.61.dif
Patch1: ghostscript-8.60-pdf.dif
Patch2: ghostscript-8.57-sgirdb.dif
-Patch3: ghostscript-8.60-x11.dif
-Patch4: ghostscript-8.60-bjc.dif
+Patch3: ghostscript-8.61-x11.dif
+Patch4: ghostscript-8.61-bjc.dif
Patch5: ghostscript-8.60-alignment.dif
-Patch6: ghostscript-8.60-broken64.dif
+Patch6: ghostscript-8.61-broken64.dif
Patch7: ghostscript-8.60-cgmout.dif
Patch8: ghostscript-8.60-cljet5.dif
Patch9: ghostscript-8.60-cmap.dif
-Patch10: ghostscript-8.60-freetype2.dif
+Patch10: ghostscript-8.61-freetype2.dif
Patch11: ghostscript-8.60-gsj_update.dif
-Patch12: ghostscript-8.60-inferno.dif
-Patch13: ghostscript-8.60-pipe.dif
+Patch12: ghostscript-8.61-inferno.dif
+Patch13: ghostscript-8.61-pipe.dif
Patch14: ghostscript-8.60-ppd.dif
Patch15: ghostscript-8.60-truetype.dif
Patch16: ghostscript-8.60-runlibfileifexists.dif
-Patch17: ghostscript-8.60-dmpr.dif
-Patch18: ghostscript-8.60-stroke-loop.dif
-Patch19: ghostscript-8.60-ijs.dif
+Patch17: ghostscript-8.61-dmpr.dif
+Patch18: ghostscript-8.61-stroke-loop.dif
+Patch19: ghostscript-8.61-ijs.dif
Patch20: ghostscript-8.60-bbox.dif
-Patch21: ghostscript-8.60-jasper-1.701.0-CVE-2007-2721.dif
+Patch21: ghostscript-8.60-CESA-2008-001.dif
Patch24: ghostscript-fonts-std-8.11.patch
Patch25: Omni-0.9.2.dif.bz2
Patch26: hpdj-2.6-gs8.60.dif
@@ -179,7 +170,7 @@
%description -n ghostscript-fonts-std
The necessary fonts for the PostScript interpreter Ghostscript. The
-URW fonts (URW Software, Poppenb�tteler Bogen 29A, D-22399 Hamburg,
+URW fonts (URW Software, Poppenbuetteler Bogen 29A, D-22399 Hamburg,
Germany).
@@ -299,7 +290,7 @@
%package -n libgimpprint
Version: 4.2.7
-Release: 217
+Release: 233
Summary: Gimp-Print libraries
Group: Development/Libraries/C and C++
@@ -314,8 +305,8 @@
%package -n libgimpprint-devel
Version: 4.2.7
-Release: 217
-Requires: %install_info_prereq
+Release: 233
+PreReq: %install_info_prereq
Requires: libgimpprint = %{version}
Requires: glibc-devel
Summary: Gimp-Print Include Files
@@ -403,7 +394,7 @@
%patch18 -p0 -b .stroke
%patch19 -p0 -b .ijs
%patch20 -p0 -b .bbox
-%patch21 -p0 -b .CVE20072721
+%patch21 -p0 -b .CESA2008001
%patch0 -p0
%build
@@ -414,29 +405,36 @@
export LANG LC_CTYPE
#
%ifarch s390 s390x
- RPM_OPT_FLAGS="${RPM_OPT_FLAGS/-O[0-9]/-O1}"
+ RPM_OPT_FLAGS="${RPM_OPT_FLAGS//-O[123]/-O1}"
%endif
#
DEBUG=""
# DEBUG="-g3 -DDEBUG"
LATECFLAGS=""
LATECXXFLAGS=""
- STACK_PROTECTOR=""
- if gcc -fno-const-strings -S -o /dev/null -xc++ /dev/null > /dev/null 2>&1 ; then
- LATECXXFLAGS="${LATECXXFLAGS} -fno-const-strings"
- fi
- if gcc -Wno-write-strings -S -o /dev/null -xc /dev/null > /dev/null 2>&1 ; then
- LATECFLAGS="${LATECFLAGS} -Wno-write-strings"
- LATECXXFLAGS="${LATECXXFLAGS} -Wno-write-strings"
- fi
- if gcc -Wno-return-type -S -o /dev/null -xc /dev/null > /dev/null 2>&1 ; then
- LATECFLAGS="${LATECFLAGS} -Wno-return-type"
- LATECXXFLAGS="${LATECXXFLAGS} -Wno-return-type"
+ cflags ()
+ {
+ local flag=$1; shift
+ case "${RPM_OPT_FLAGS}" in
+ *${flag}*) return
+ esac
+ if test -n "$1" && gcc $flag -S -o /dev/null -xc /dev/null > /dev/null 2>&1 ; then
+ local var=$1; shift
+ eval $var=\${$var:+\$$var\ }$flag
fi
- if gcc -fstack-protector -S -o /dev/null -xc++ /dev/null > /dev/null 2>&1 ; then
- STACK_PROTECTOR=-fstack-protector
+ if test -n "$1" && gcc $flag -S -o /dev/null -xc++ /dev/null > /dev/null 2>&1 ; then
+ local var=$1; shift
+ eval $var=\${$var:+\$$var\ }$flag
fi
- CFLAGS="${RPM_OPT_FLAGS} -fno-strict-aliasing ${STACK_PROTECTOR} -fPIC -D_GNU_SOURCE -pipe ${DEBUG} ${LATECFLAGS}"
+ }
+ cflags -fno-const-strings LATECFLAGS LATECXXFLAGS
+ cflags -Wno-write-strings LATECFLAGS LATECXXFLAGS
+ cflags -Wno-return-type LATECFLAGS LATECXXFLAGS
+ cflags -Wno-unknown-pragmas LATECFLAGS LATECXXFLAGS
+ cflags -Wno-pointer-sign LATECFLAGS
+ cflags -fstack-protector LATECFLAGS LATECXXFLAGS
+ CFLAGS="${RPM_OPT_FLAGS} -fno-strict-aliasing -fPIC -D_GNU_SOURCE -pipe ${DEBUG} ${LATECFLAGS}"
+ CXXFLAGS="${RPM_OPT_FLAGS} -fno-strict-aliasing -fPIC -D_GNU_SOURCE -pipe ${DEBUG} ${LATECXXFLAGS}"
%if "%name" != "ghostscript-mini"
GLIB_CONFIG=%{S:50}
GLIBOPT="$(/bin/sh %{S:50} --cflags)"
@@ -454,10 +452,10 @@
FT_SUB=/freetype2
PATH=${PATH}:${RPM_SOURCE_DIR}
PKG_CONFIG_PATH=%{_libdir}/pkgconfig:/opt/gnome/%{_lib}/pkgconfig
-%if %suse_version > 1000 && "%name" != "ghostscript-mini"
+%if "%name" != "ghostscript-mini"
export FT_BRIDGE FT_CFLAGS FT_LIB_EXT FT_ROOT FT_SUB
%endif
- export LATECFLAGS LATECXXFLAGS CFLAGS DEBUG GLIBOPT GLIB_CONFIG PATH PKG_CONFIG_PATH EXTRADEVS EXTEND_NAMES
+ export CFLAGS CXXFLAGS DEBUG GLIBOPT GLIB_CONFIG PATH PKG_CONFIG_PATH EXTRADEVS EXTEND_NAMES
%if "%name" != "ghostscript-mini"
# Just in case of shared X11 and/or VGA support
STATIC_DEVS=""
@@ -578,8 +576,14 @@
# auto(re)conf is called by setupOmni
XML_CONFIG=xml2-config
DEFAULTCUPSEXEROOT=%{_libdir}/cups/filter
+ SAVE_CFLAGS="$CFLAGS"
CXX=g++
- CXXFLAGS="${CFLAGS} -O1 -pipe"
+%ifarch s390 s390x
+ CXXFLAGS="${CXXFLAGS//-O[123]/-O1} -pipe"
+%else
+ CXXFLAGS="${CXXFLAGS//-O[123]/-Os} -pipe"
+%endif
+ CFLAGS="${CXXFLAGS}"
export XML_CONFIG DEFAULTCUPSEXEROOT CXX CXXFLAGS
libtoolize --copy --force
./setupOmni --build=%{buildsys} \
@@ -598,6 +602,8 @@
--disable-gomni-compat \
--disable-device-fonts \
--with-gnu-ld
+ CFLAGS="$SAVE_CFLAGS"
+ unset SAVE_CFLAGS
popd
#
# Remark: Do never add -j here!
@@ -739,12 +745,13 @@
done
mv -v %{buildroot}%{_bindir}/fixmswrd.pl %{buildroot}%{_bindir}/fixmswrd
%if %suse_version > 1030 && "%name" != "ghostscript-mini"
- mkdir -p %{buildroot}%{_includedir}/gs
- install -m 0644 src/iapi.h %{buildroot}%{_includedir}/gs/
- install -m 0644 src/ierrors.h %{buildroot}%{_includedir}/gs/
- install -m 0644 src/gdevdsp.h %{buildroot}%{_includedir}/gs/
+ mkdir -p %{buildroot}%{_includedir}/ghostscript
+ install -m 0644 src/iapi.h %{buildroot}%{_includedir}/ghostscript/
+ install -m 0644 src/ierrors.h %{buildroot}%{_includedir}/ghostscript/
+ install -m 0644 src/gdevdsp.h %{buildroot}%{_includedir}/ghostscript/
%else
rm -vf %{buildroot}%{_libdir}/libgs.so
+ rm -vrf %{buildroot}%{_includedir}/ghostscript
%endif
#
tar xfj %{S:1} -C %{buildroot}%{_datadir}/ghostscript/
@@ -1039,7 +1046,7 @@
%files -n ghostscript-devel
%defattr(-, root, root)
%{_libdir}/libgs.so
-%{_includedir}/gs
+%{_includedir}/ghostscript
%endif
%files -n ghostscript-omni
@@ -1282,6 +1289,36 @@
%endif
%changelog
+* Thu Mar 06 2008 mfabian@suse.de
+- bnc#367188: for the condensed variants of "Nimbus Sans L",
+ move the "Condensed" from the style to the end of the family
+ name. Otherwise these fonts are not selectable in most
+ applications.
+* Fri Feb 22 2008 werner@suse.de
+- Update to GPL ghostscript 8.61 (bnc#297524)
+ * default device is now x11alpha is available otherwise bbox
+ * Check that a device halftone exists before writing it
+ * Change the product name for the release
+ * Wrong background color of a soft mask group
+ * Remove spurious executable bits
+ * pdfwrite: type 3 fonts with exceedingly small BoundingBox
+ entries were clamped to 0 or 1
+ * pdfwrite: named objects, created via a pdfmark such as /BP,
+ could not have their content modified after the object was
+ completed
+ * Correct obvious typo in default rgb to cmyk color mapping
+ * TT font handler: Place the True Type interpreter and its
+ data into stable memory
+ * TT fonts: Ignore invalid entries in loca table
+ * Fix command list-based devices on 64-bit platforms
+ * pdfwrite: A wrong encoding of Metadata.
+ * Fix for seg fault caused by undersized buffer
+ * transparency in clist: Write transparent paths and images
+ to clist as high level objcts
+* Wed Feb 06 2008 werner@suse.de
+- Make member counting of range_buff array independend from type
+* Tue Feb 05 2008 werner@suse.de
+- Fix stack-based buffer overflow (CESA-2008-001, bnc#358914)
* Thu Jan 31 2008 werner@suse.de
- ghostscript-mini: No self conflict but provide
ghostscript-fonts-std and ghostscript-library
++++++ gdev820c.c.bz2 ++++++
Files ghostscript-library/gdev820c.c.bz2 and /mounts/work_src_done/STABLE/ghostscript-library/gdev820c.c.bz2 differ
++++++ gdevbff.c.bz2 ++++++
Files ghostscript-library/gdevbff.c.bz2 and /mounts/work_src_done/STABLE/ghostscript-library/gdevbff.c.bz2 differ
++++++ gdevcd8-cdj880.c.bz2 ++++++
Files ghostscript-library/gdevcd8-cdj880.c.bz2 and /mounts/work_src_done/STABLE/ghostscript-library/gdevcd8-cdj880.c.bz2 differ
++++++ gdevcd8-chp2200.c.bz2 ++++++
Files ghostscript-library/gdevcd8-chp2200.c.bz2 and /mounts/work_src_done/STABLE/ghostscript-library/gdevcd8-chp2200.c.bz2 differ
++++++ ghostscript-8.60-CESA-2008-001.dif ++++++
--- src/zicc.c
+++ src/zicc.c 2008-02-05 16:11:59.000000000 +0000
@@ -77,6 +77,9 @@ zseticcspace(i_ctx_t * i_ctx_p)
dict_find_string(op, "N", &pnval);
ncomps = pnval->value.intval;
+ if (2*ncomps > sizeof(range_buff)/sizeof(range_buff[0]))
+ return_error(e_rangecheck);
+
/* verify the DataSource entry */
if (dict_find_string(op, "DataSource", &pstrmval) <= 0)
return_error(e_undefined);
++++++ ghostscript-8.60-bjc.dif -> ghostscript-8.61-bjc.dif ++++++
--- ghostscript-library/ghostscript-8.60-bjc.dif 2007-08-06 12:21:03.000000000 +0200
+++ /mounts/work_src_done/STABLE/ghostscript-library/ghostscript-8.61-bjc.dif 2008-02-21 14:48:57.000000000 +0100
@@ -47,14 +47,14 @@
case 1:\
pa.data = 0; /* mark as not filled */\
}
-@@ -249,6 +248,7 @@ private int cdj_param_check_float(gs_par
+@@ -249,6 +248,7 @@ static int cdj_param_check_float(gs_par
/* Colour mapping procedures */
- private dev_proc_map_cmyk_color (gdev_cmyk_map_cmyk_color);
- private dev_proc_map_rgb_color (gdev_cmyk_map_rgb_color);
-+private dev_proc_map_color_rgb (gdev_cmyk_map_color_rgb);
+ static dev_proc_map_cmyk_color (gdev_cmyk_map_cmyk_color);
+ static dev_proc_map_rgb_color (gdev_cmyk_map_rgb_color);
++static dev_proc_map_color_rgb (gdev_cmyk_map_color_rgb);
- private dev_proc_map_rgb_color (gdev_pcl_map_rgb_color);
- private dev_proc_map_color_rgb (gdev_pcl_map_color_rgb);
+ static dev_proc_map_rgb_color (gdev_pcl_map_rgb_color);
+ static dev_proc_map_color_rgb (gdev_pcl_map_color_rgb);
@@ -422,7 +422,7 @@ typedef struct {
prn_colour_device_body(dtype, procs, dev_name,\
DEFAULT_WIDTH_10THS, DEFAULT_HEIGHT_10THS, x_dpi, y_dpi, 0, 0, 0, 0,\
@@ -118,7 +118,7 @@
+ gdev_cmyk_map_cmyk_color\
}
- private gx_device_procs cdj500_procs =
+ static gx_device_procs cdj500_procs =
@@ -567,11 +530,11 @@ cdj_device(cdj500_procs, "cdjmono", 300,
dj500c_print_page, 4, 0, 1);
@@ -133,9 +133,9 @@
dj500c_print_page, 4, 2, 1);
gx_device_cdj far_data gs_cdj500_device =
-@@ -684,6 +647,17 @@ private int cdj_set_bpp(gx_device *, int
- private void cdj_expand_line(word *, int, short, int, int);
- private int bjc_fscmyk(byte**, byte*[4][4], int**, int, int);
+@@ -684,6 +647,17 @@ static int cdj_set_bpp(gx_device *, int
+ static void cdj_expand_line(word *, int, short, int, int);
+ static int bjc_fscmyk(byte**, byte*[4][4], int**, int, int);
+typedef struct var_input_media_s {
+ float PageSize[4];
@@ -145,7 +145,7 @@
+} var_input_media;
+
+int gdev_prn_input_var_media(int, gs_param_dict *, const var_input_media*);
-+private int gdev_prn_finish_media(gs_param_list *, gs_param_name, const char *);
++static int gdev_prn_finish_media(gs_param_list *, gs_param_name, const char *);
+int gdev_prn_input_var_page_size(int, gs_param_dict *, floatp, floatp);
+
/* String parameters manipulation */
@@ -383,7 +383,7 @@
params->ditheringType = BJC_DITHER_NONE;
}
-@@ -1662,6 +1666,7 @@ private int
+@@ -1662,6 +1666,7 @@ static int
bjc_init_page(gx_device_printer* pdev, FILE* f)
{
byte pagemargins[3], resolution[4], paperloading[2];
@@ -410,7 +410,7 @@
/* Set paper loading. */
@@ -1778,8 +1783,10 @@ bjc_v_skip(int n, gx_device_printer* pde
- private int
+ static int
bjc_finish_page(gx_device_printer* pdev, FILE* f)
{
- bjc_cmd('a', 1, (byte*) "\000", pdev, f);
@@ -493,7 +493,7 @@
return 0;
}
-+private int
++static int
+gdev_cmyk_map_color_rgb(gx_device *pdev, gx_color_index color, gx_color_value prgb[3])
+{
+ switch (pdev->color_info.depth) {
@@ -690,7 +690,7 @@
-/* This returns either the number of pixels in a scan line, or the number
- * of bytes required to store the line, both clipped to the page margins */
--private uint
+-static uint
-gdev_prn_rasterwidth(const gx_device_printer *pdev, int pixelcount)
-{
- ulong raster_width = (ulong)(pdev->width -
@@ -702,7 +702,7 @@
-
/* Functions for manipulation params strings */
- private const byte*
+ static const byte*
@@ -3476,7 +3525,7 @@ paramStringValue(const stringParamDescri
{
@@ -774,7 +774,7 @@
+ media.MediaType = 0;
+ return gdev_prn_input_var_media(index, pdict, &media);
+}
-+private int
++static int
+gdev_prn_finish_media(gs_param_list *mlist, gs_param_name key, const char *media_type)
+{ int code = 0;
+ if ( media_type != 0 )
@@ -830,7 +830,7 @@
+
+/* This returns either the number of pixels in a scan line, or the number
+ * of bytes required to store the line, both clipped to the page margins */
-+private uint
++static uint
+gdev_prn_rasterwidth(const gx_device_printer *pdev, int pixelcount)
+{
+ ulong raster_width =
++++++ ghostscript-8.60-broken64.dif -> ghostscript-8.61-broken64.dif ++++++
--- ghostscript-library/ghostscript-8.60-broken64.dif 2007-08-02 18:18:23.000000000 +0200
+++ /mounts/work_src_done/STABLE/ghostscript-library/ghostscript-8.61-broken64.dif 2008-02-21 14:50:01.000000000 +0100
@@ -21,7 +21,7 @@
--- src/igc.c
+++ src/igc.c 2005-03-14 00:00:00.000000000 +0100
@@ -1148,7 +1148,7 @@ gc_clear_reloc(chunk_t * cp)
- private void
+ static void
gc_objects_set_reloc(chunk_t * cp)
{
- uint reloc = 0;
++++++ ghostscript-8.60-bjc.dif -> ghostscript-8.61.dif ++++++
++++ 2544 lines (skipped)
++++ between ghostscript-library/ghostscript-8.60-bjc.dif
++++ and /mounts/work_src_done/STABLE/ghostscript-library/ghostscript-8.61.dif
++++++ ghostscript-8.60-dmpr.dif -> ghostscript-8.61-dmpr.dif ++++++
--- ghostscript-library/ghostscript-8.60-dmpr.dif 2007-09-04 11:31:17.000000000 +0200
+++ /mounts/work_src_done/STABLE/ghostscript-library/ghostscript-8.61-dmpr.dif 2008-02-21 15:03:24.000000000 +0100
@@ -32,7 +32,7 @@
code = param_read_bool(plist, "Verbose", &vbool);
if (code < 0) return code;
@@ -837,13 +841,16 @@
- private FILE *
+ static FILE *
gdev_dmprt_dviprt_lib_fopen(const char *fnamebase,char *fname)
{
- FILE *fp;
@@ -59,11 +59,11 @@
char *dviprt_encodename[] = { CFG_ENCODE_NAME, NULL };
-#if 0
--private FILE *dviprt_messagestream = stderr;
+-static FILE *dviprt_messagestream = stderr;
-#else /* patch for glibc 2.1.x by Shin Fukui */
--private FILE *dviprt_messagestream;
+-static FILE *dviprt_messagestream;
-#endif
-+private int dviprt_messagestream;
++static int dviprt_messagestream;
/*--- library functions ---*/
int
++++++ ghostscript-8.60-freetype2.dif -> ghostscript-8.61-freetype2.dif ++++++
--- ghostscript-library/ghostscript-8.60-freetype2.dif 2007-09-21 11:07:32.000000000 +0200
+++ /mounts/work_src_done/STABLE/ghostscript-library/ghostscript-8.61-freetype2.dif 2008-02-25 15:27:49.000000000 +0100
@@ -14,10 +14,10 @@
-% "Disk fonts" are fonts being installed to Ghostscript with 'lib/Fontmap' or with GS_FONTPATH,
-% and CID font resource files.
-% "Embedded fonts" are fonts and CID fonts being embedded into a document.
-+/FontPath (/usr/share/fonts) % A default directory for FAPI-handled font files path in FAPIfontmap.
-+/CIDFontPath (/usr/share/fonts/CID) % A default directory for FAPI-handled CID font files path in FAPIcidfmap.
-+/HookDiskFonts [1 9 11 42] % FontType values for disk PS fonts to be redirected to FAPI.
-+/HookEmbeddedFonts [1 9 11 42] % FontType values for embedded PS fonts to be redirected to FAPI.
++/FontPath (/usr/share/fonts/truetype) % A default directory for FAPI-handled font files path in FAPIfontmap.
++/CIDFontPath (/usr/share/fonts/CID) % A default directory for FAPI-handled CID font files path in FAPIcidfmap.
++/HookDiskFonts [1 9 11 42] % FontType values for disk PS fonts to be redirected to FAPI.
++/HookEmbeddedFonts [1 9 11 42] % FontType values for embedded PS fonts to be redirected to FAPI.
+% Only allowed values for HookDiskFonts and HookEmbeddedFonts are 1, 9, 11, 42.
+% Note that 9 and 11 correspond to CIDFontType 0 and 2. "Disk fonts" are fonts
@@ -36,6 +36,17 @@
} {
pop //FAPI_is_hook_disabled exec dup
{ pop
+--- lib/gs_typ42.ps
++++ lib/gs_typ42.ps 2008-02-22 13:28:37.316987000 +0100
+@@ -54,7 +54,7 @@ buildfontdict 42
+ } bind put
+ //.buildfont3 exec
+ } {
+- //.buildfont42 exec
++ systemdict /.buildfont42 get exec
+ } ifelse
+ } bind
+ put
--- src/int.mak
+++ src/int.mak 2007-08-03 16:03:22.247071811 +0000
@@ -1945,8 +1945,8 @@
@@ -68,8 +79,34 @@
--- src/zfapi.c
+++ src/zfapi.c 2007-09-06 12:37:26.000000000 +0000
-@@ -718,7 +718,9 @@ private int FAPI_get_xlatmap(i_ctx_t *i_
- private int renderer_retcode(i_ctx_t *i_ctx_p, FAPI_server *I, FAPI_retcode rc)
+@@ -562,16 +562,18 @@ static int get_GlyphDirectory_data_ptr(c
+ ref *pdr, int char_code, const byte **ptr)
+ {
+ ref *GlyphDirectory, glyph0, *glyph = &glyph0, glyph_index;
+- if ((dict_find_string(pdr, "GlyphDirectory", &GlyphDirectory) > 0 &&
+- (r_type(GlyphDirectory) == t_dictionary &&
+- ( make_int(&glyph_index, char_code),
+- dict_find(GlyphDirectory, &glyph_index, &glyph) > 0))) ||
+- ((r_type(GlyphDirectory) == t_array &&
+- array_get(mem, GlyphDirectory, char_code, &glyph0) >= 0) &&
+- r_type(glyph) == t_string)) {
++ if (dict_find_string(pdr, "GlyphDirectory", &GlyphDirectory) > 0) {
++ if (((r_type(GlyphDirectory) == t_dictionary &&
++ (make_int(&glyph_index, char_code),
++ dict_find(GlyphDirectory, &glyph_index, &glyph) > 0)) ||
++ (r_type(GlyphDirectory) == t_array &&
++ array_get(mem, GlyphDirectory, char_code, &glyph0) >= 0)
++ )
++ && r_type(glyph) == t_string) {
+ *ptr = glyph->value.const_bytes;
+ return r_size(glyph);
+ }
++ }
+ return -1;
+ }
+
+@@ -718,7 +720,9 @@ static int FAPI_get_xlatmap(i_ctx_t *i_
+ static int renderer_retcode(i_ctx_t *i_ctx_p, FAPI_server *I, FAPI_retcode rc)
{ if (rc == 0)
return 0;
+#if 0
++++++ ghostscript-8.60-ijs.dif -> ghostscript-8.61-ijs.dif ++++++
--- ghostscript-library/ghostscript-8.60-ijs.dif 2007-10-01 12:10:01.000000000 +0200
+++ /mounts/work_src_done/STABLE/ghostscript-library/ghostscript-8.61-ijs.dif 2008-02-21 19:08:07.000000000 +0100
@@ -1,6 +1,6 @@
--- src/gdevijs.c
-+++ src/gdevijs.c 2007-10-01 12:09:31.714207258 +0200
-@@ -23,6 +23,38 @@
++++ src/gdevijs.c 2008-02-21 15:47:41.303217676 +0100
+@@ -23,15 +23,54 @@
* which is a security risk, since any program can be run.
* You should use -dSAFER which sets .LockSafetyParams to true
* before opening this device.
@@ -36,45 +36,41 @@
+ * 6. K-plane 1-bit definition; 1=black, 0=nothing (KRGB).
+ * 7. K-plane 8-bit definition; 255=black, 0=nothing (KxRGB).
+ *
++ * 1/15/08 David Suffield (gdevijs-krgb-1.5.patch)
++ * 1. Added checks for null forward device in the graphic procedures.
++ * 2. Corrected the "force banding" code in gsijs_open. Needed for small images (IE: hagaki in landscape).
++ *
*/
#include "unistd_.h" /* for dup() */
-@@ -32,12 +64,17 @@
+ #include
++#include
+ #include "gdevprn.h"
+ #include "gp.h"
#include "ijs.h"
#include "ijs_client.h"
-+/*#define KRGB_DEBUG*/
-+#ifdef KRGB_DEBUG
-+#include
-+#endif
++//#define KRGB_DEBUG
+
/* This should go into gdevprn.h, or, better yet, gdevprn should
acquire an API for changing resolution. */
int gdev_prn_maybe_realloc_memory(gx_device_printer *pdev,
- gdev_prn_space_params *old_space,
-- int old_width, int old_height,
-- bool old_page_uses_transparency);
-+ int old_width, int old_height,
-+ bool old_page_uses_transparency);
-
- /* Device procedures */
-
-@@ -47,6 +84,14 @@ private dev_proc_close_device(gsijs_clos
- private dev_proc_output_page(gsijs_output_page);
- private dev_proc_get_params(gsijs_get_params);
- private dev_proc_put_params(gsijs_put_params);
-+
-+/* Following definitions are for krgb support. */
-+private dev_proc_create_buf_device(gsijs_create_buf_device);
-+private dev_proc_fill_rectangle(gsijs_fill_rectangle);
-+private dev_proc_copy_mono(gsijs_copy_mono);
-+private dev_proc_fill_mask(gsijs_fill_mask);
-+private dev_proc_fill_path(gsijs_fill_path);
-+private dev_proc_stroke_path(gsijs_stroke_path);
- private dev_proc_finish_copydevice(gsijs_finish_copydevice);
+@@ -49,6 +88,14 @@ static dev_proc_get_params(gsijs_get_par
+ static dev_proc_put_params(gsijs_put_params);
+ static dev_proc_finish_copydevice(gsijs_finish_copydevice);
- private const gx_device_procs gsijs_procs = {
-@@ -123,6 +168,15 @@ struct gx_device_ijs_s {
++/* Following definitions are for krgb support. */
++static dev_proc_create_buf_device(gsijs_create_buf_device);
++static dev_proc_fill_rectangle(gsijs_fill_rectangle);
++static dev_proc_copy_mono(gsijs_copy_mono);
++static dev_proc_fill_mask(gsijs_fill_mask);
++static dev_proc_fill_path(gsijs_fill_path);
++static dev_proc_stroke_path(gsijs_stroke_path);
++
+ static const gx_device_procs gsijs_procs = {
+ gsijs_open,
+ NULL, /* get_initial_matrix */
+@@ -123,6 +170,15 @@ struct gx_device_ijs_s {
IjsClientCtx *ctx;
int ijs_version;
@@ -90,7 +86,7 @@
};
#define DEFAULT_DPI 74 /* See gsijs_set_resolution() below. */
-@@ -150,7 +204,13 @@ gx_device_ijs gs_ijs_device =
+@@ -150,7 +206,13 @@ gx_device_ijs gs_ijs_device =
FALSE, /* Tumble_set */
NULL, /* IjsClient *ctx */
@@ -105,7 +101,7 @@
};
-@@ -166,12 +226,300 @@ private int gsijs_read_string(gs_param_l
+@@ -166,12 +228,314 @@ static int gsijs_read_string(gs_param_li
/**************************************************************************/
@@ -124,11 +120,14 @@
+ 0x01 /* 7 */
+};
+
-+private int gsijs_fill_rectangle(gx_device * dev, int x, int y, int w, int h,
++static int gsijs_fill_rectangle(gx_device * dev, int x, int y, int w, int h,
+ gx_color_index color)
+{
+ gx_device_ijs *ijsdev = (gx_device_ijs *)((gx_device_forward *)dev)->target;
+
++ if (!ijsdev)
++ return 0; /* no forward device, bug?? */
++
+ if (ijsdev->krgb_mode && ijsdev->k_path && y >= 0 && x >= 0)
+ {
+ int raster = (ijsdev->k_width+7) >> 3;
@@ -186,12 +185,15 @@
+ return (*ijsdev->prn_procs.fill_rectangle)(dev, x, y, w, h, color);
+}
+
-+private int gsijs_copy_mono(gx_device * dev, const byte * data,
++static int gsijs_copy_mono(gx_device * dev, const byte * data,
+ int dx, int draster, gx_bitmap_id id,
+ int x, int y, int w, int height, gx_color_index zero, gx_color_index one)
+{
+ gx_device_ijs *ijsdev = (gx_device_ijs *)((gx_device_forward *)dev)->target;
+
++ if (!ijsdev)
++ return 0; /* no forward device, bug?? */
++
+ // if (ijsdev->krgb_mode && ijsdev->k_path && one==0x0)
+ if (ijsdev->krgb_mode && ijsdev->k_path)
+ {
@@ -263,7 +265,7 @@
+
+/* ---------------- High-level graphic procedures ---------------- */
+
-+private int gsijs_fill_mask(gx_device * dev,
++static int gsijs_fill_mask(gx_device * dev,
+ const byte * data, int dx, int raster, gx_bitmap_id id,
+ int x, int y, int w, int h,
+ const gx_drawing_color * pdcolor, int depth,
@@ -272,6 +274,9 @@
+ gx_device_ijs *ijsdev = (gx_device_ijs *)((gx_device_forward *)dev)->target;
+ int code;
+
++ if (!ijsdev)
++ return 0; /* no forward device, bug?? */
++
+ ijsdev->k_path = 1;
+
+ code = (*ijsdev->prn_procs.fill_mask)(dev, data, dx, raster, id, x, y, w, h, pdcolor, depth, lop, pcpath);
@@ -281,7 +286,7 @@
+ return code;
+}
+
-+private int gsijs_fill_path(gx_device * dev, const gs_imager_state * pis,
++static int gsijs_fill_path(gx_device * dev, const gs_imager_state * pis,
+ gx_path * ppath, const gx_fill_params * params,
+ const gx_drawing_color * pdcolor,
+ const gx_clip_path * pcpath)
@@ -289,20 +294,23 @@
+ gx_device_ijs *ijsdev = (gx_device_ijs *)((gx_device_forward *)dev)->target;
+ int code;
+
++ if (!ijsdev)
++ return 0; /* no forward device, bug?? */
++
+ ijsdev->k_path = 1;
+
+ code = (*ijsdev->prn_procs.fill_path)(dev, pis, ppath, params, pdcolor, pcpath);
-+
-+ ijsdev->k_path = 0;
-+
-+ return 0;
-+}
-/* Versions 1.0 through 1.0.2 of hpijs report IJS version 0.29, and
- require some workarounds. When more up-to-date hpijs versions
- become ubiquitous, all these workarounds should be removed. */
-#define HPIJS_1_0_VERSION 29
-+private int gsijs_stroke_path(gx_device * dev, const gs_imager_state * pis,
++ ijsdev->k_path = 0;
++
++ return 0;
++}
++
++static int gsijs_stroke_path(gx_device * dev, const gs_imager_state * pis,
+ gx_path * ppath, const gx_stroke_params * params,
+ const gx_drawing_color * pdcolor,
+ const gx_clip_path * pcpath)
@@ -310,6 +318,9 @@
+ gx_device_ijs *ijsdev = (gx_device_ijs *)((gx_device_forward *)dev)->target;
+ int code;
+
++ if (!ijsdev)
++ return 0; /* no forward device, bug?? */
++
+ ijsdev->k_path = 1;
+
+ code = (*ijsdev->prn_procs.stroke_path)(dev, pis, ppath, params, pdcolor, pcpath);
@@ -321,7 +332,7 @@
+
+/* ---------------- krgb banding playback procedures ---------------- */
+
-+private int gsijs_get_bits(gx_device_printer * pdev, int y, byte * str, byte ** actual_data)
++static int gsijs_get_bits(gx_device_printer * pdev, int y, byte * str, byte ** actual_data)
+{
+ gx_device_ijs *ijsdev = (gx_device_ijs *)pdev;
+ gx_device_clist_common *cdev = (gx_device_clist_common *)pdev;
@@ -339,7 +350,7 @@
+ return gdev_prn_get_bits(pdev, y, str, actual_data); /* get raster from regular band */
+}
+
-+private int gsijs_k_get_bits(gx_device_printer * pdev, int y, byte ** actual_data)
++static int gsijs_k_get_bits(gx_device_printer * pdev, int y, byte ** actual_data)
+{
+ gx_device_ijs *ijsdev = (gx_device_ijs *)pdev;
+ gx_device_clist_common *cdev = (gx_device_clist_common *)pdev;
@@ -353,9 +364,8 @@
+ return 0;
+}
+
-+private int gsijs_create_buf_device(gx_device **pbdev, gx_device *target,
-+ const gx_render_plane_t *render_plane, gs_memory_t *mem,
-+ gx_band_complexity_t *for_band)
++static int gsijs_create_buf_device(gx_device **pbdev, gx_device *target,
++ const gx_render_plane_t *render_plane, gs_memory_t *mem, gx_band_complexity_t *for_band)
+{
+ gx_device_ijs *ijsdev = (gx_device_ijs *)target;
+ int n_chan = ijsdev->color_info.num_components;
@@ -376,8 +386,8 @@
+ return code;
+}
+
-+/* See if IJS server supports krgb. Return value: 0=false, 1=true. */
-+private int
++/* See if IJS server supports krgb. */
++static int
+gsijs_set_krgb_mode(gx_device_ijs *ijsdev)
+{
+ char buf[256];
@@ -409,9 +419,9 @@
+
+/* ------ Private definitions ------ */
- private int
+ static int
gsijs_parse_wxh (const char *val, int size, double *pw, double *ph)
-@@ -209,34 +557,6 @@ gsijs_parse_wxh (const char *val, int si
+@@ -209,34 +573,6 @@ gsijs_parse_wxh (const char *val, int si
}
/**
@@ -420,7 +430,7 @@
- * This version is specialized for hpijs 1.0 through 1.0.2, and
- * accommodates a number of quirks.
- **/
--private int
+-static int
-gsijs_set_generic_params_hpijs(gx_device_ijs *ijsdev)
-{
- char buf[256];
@@ -445,8 +455,8 @@
-/**
* gsijs_set_generic_params: Set generic IJS parameters.
**/
- private int
-@@ -247,9 +567,6 @@ gsijs_set_generic_params(gx_device_ijs *
+ static int
+@@ -247,9 +583,6 @@ gsijs_set_generic_params(gx_device_ijs *
int i, j;
char *value;
@@ -456,7 +466,7 @@
/* Split IjsParams into separate parameters and send to ijs server */
value = NULL;
for (i=0, j=0; (j < ijsdev->IjsParams_size) && (i < sizeof(buf)-1); j++) {
-@@ -290,68 +607,6 @@ gsijs_set_generic_params(gx_device_ijs *
+@@ -290,68 +623,6 @@ gsijs_set_generic_params(gx_device_ijs *
}
/**
@@ -465,7 +475,7 @@
- * This version is specialized for hpijs 1.0 through 1.0.2, and
- * accommodates a number of quirks.
- **/
--private int
+-static int
-gsijs_set_margin_params_hpijs(gx_device_ijs *ijsdev)
-{
- char buf[256];
@@ -524,8 +534,8 @@
-/**
* gsijs_set_margin_params: Do margin negotiation with IJS server.
**/
- private int
-@@ -362,9 +617,6 @@ gsijs_set_margin_params(gx_device_ijs *i
+ static int
+@@ -362,9 +633,6 @@ gsijs_set_margin_params(gx_device_ijs *i
int i, j;
char *value;
@@ -535,18 +545,11 @@
/* Split IjsParams into separate parameters and send to ijs server */
value = NULL;
for (i=0, j=0; (j < ijsdev->IjsParams_size) && (i < sizeof(buf)-1); j++) {
-@@ -531,12 +783,18 @@ gsijs_open(gx_device *dev)
- char buf[256];
- bool use_outputfd;
- int fd = -1;
-+ long max_bitmap = ijsdev->space_params.MaxBitmap;
-
- if (strlen(ijsdev->IjsServer) == 0) {
- eprintf("ijs server not specified\n");
+@@ -537,6 +805,11 @@ gsijs_open(gx_device *dev)
return gs_note_error(gs_error_ioerror);
}
-+ ijsdev->space_params.MaxBitmap = 0; /* force banding */
++ ijsdev->space_params.banding_type = BandingAlways; /* always force banding */
+
+ /* Set create_buf_device in printer device, so that we can hook the banding playback procedures. */
+ ijsdev->printer_procs.buf_procs.create_buf_device = gsijs_create_buf_device;
@@ -554,16 +557,7 @@
/* Decide whether to use OutputFile or OutputFD. Note: how to
determine this is a tricky question, so we just allow the
user to set it.
-@@ -551,6 +809,8 @@ gsijs_open(gx_device *dev)
- if (code < 0)
- return code;
-
-+ ijsdev->space_params.MaxBitmap = max_bitmap;
-+
- if (use_outputfd) {
- /* Note: dup() may not be portable to all interesting IJS
- platforms. In that case, this branch should be #ifdef'ed out.
-@@ -610,6 +870,9 @@ gsijs_open(gx_device *dev)
+@@ -610,6 +883,9 @@ gsijs_open(gx_device *dev)
if (code >= 0)
code = gsijs_set_margin_params(ijsdev);
@@ -573,11 +567,11 @@
return code;
}
-@@ -690,21 +953,6 @@ gsijs_raster_width(gx_device *pdev)
+@@ -690,21 +966,6 @@ gsijs_raster_width(gx_device *pdev)
return min(width, end);
}
--private int ijs_all_white(unsigned char *data, int size)
+-static int ijs_all_white(unsigned char *data, int size)
-{
- int clean = 1;
- int i;
@@ -595,7 +589,7 @@
/* Print a page. Don't use normal printer gdev_prn_output_page
* because it opens the output file.
*/
-@@ -715,8 +963,10 @@ gsijs_output_page(gx_device *dev, int nu
+@@ -715,8 +976,10 @@ gsijs_output_page(gx_device *dev, int nu
gx_device_printer *pdev = (gx_device_printer *)dev;
int raster = gdev_prn_raster(pdev);
int ijs_width, ijs_height;
@@ -607,24 +601,15 @@
unsigned char *data;
char buf[256];
double xres = pdev->HWResolution[0];
-@@ -726,19 +976,30 @@ gsijs_output_page(gx_device *dev, int nu
- int status = 0;
- int i, y;
-
-- if ((data = gs_alloc_bytes(pdev->memory, raster, "gsijs_output_page"))
-- == (unsigned char *)NULL)
-+ data = gs_alloc_bytes(pdev->memory, raster, "gsijs_output_page");
-+ if (data == (unsigned char *)NULL)
- return gs_note_error(gs_error_VMerror);
+@@ -732,13 +995,23 @@ gsijs_output_page(gx_device *dev, int nu
/* Determine bitmap width and height */
ijs_height = gdev_prn_print_scan_lines(dev);
- if (ijsdev->ijs_version == HPIJS_1_0_VERSION) {
- ijs_width = pdev->width;
- } else {
-- ijs_width = gsijs_raster_width(dev);
+ ijs_width = gsijs_raster_width(dev);
- }
-+ ijs_width = gsijs_raster_width(dev);
+
row_bytes = (ijs_width * pdev->color_info.depth + 7) >> 3;
@@ -637,20 +622,19 @@
+ /* Create banding buffer for k plane. */
+ ijsdev->k_width = ijs_width;
+ ijsdev->k_band_size = band_height * k_row_bytes;
-+ ijsdev->k_band = gs_malloc(pdev->memory, ijsdev->k_band_size, 1, "gsijs_output_page");
-+ if (ijsdev->k_band == (unsigned char *)NULL)
++ if ((ijsdev->k_band = gs_malloc(pdev->memory, ijsdev->k_band_size, 1, "gsijs_output_page")) == (unsigned char *)NULL)
+ return gs_note_error(gs_error_VMerror);
+ }
+
/* Required page parameters */
sprintf(buf, "%d", n_chan);
gsijs_client_set_param(ijsdev, "NumChan", buf);
-@@ -747,44 +1008,76 @@ gsijs_output_page(gx_device *dev, int nu
+@@ -747,44 +1020,71 @@ gsijs_output_page(gx_device *dev, int nu
/* This needs to become more sophisticated for DeviceN. */
strcpy(buf, (n_chan == 4) ? "DeviceCMYK" :
- ((n_chan == 3) ? "DeviceRGB" : "DeviceGray"));
-+ ((n_chan == 3) ? (krgb_mode ? ((k_bits == 1) ? "KRGB" : "KxRGB") : "DeviceRGB") : "DeviceGray"));
++ ((n_chan == 3) ? (krgb_mode ? ((k_bits == 1) ? "KRGB" : "KxRGB") : "DeviceRGB") : "DeviceGray"));
gsijs_client_set_param(ijsdev, "ColorSpace", buf);
- /* If hpijs 1.0, don't set width and height here, because it
@@ -674,11 +658,9 @@
+ char sz[128];
+ kfd = open("/tmp/k.pbm", O_CREAT | O_TRUNC | O_RDWR, 0644);
+ rgbfd = open("/tmp/rgb.ppm", O_CREAT | O_TRUNC | O_RDWR, 0644);
-+ snprintf(sz, sizeof(sz), "P4\n#gdevijs test\n%d\n%d\n",
-+ ijs_width, ijs_height);
++ snprintf(sz, sizeof(sz), "P4\n#gdevijs test\n%d\n%d\n", ijs_width, ijs_height);
+ write(kfd, sz, strlen(sz));
-+ snprintf(sz, sizeof(sz), "P6\n#gdevijs test\n%d\n%d\n255\n",
-+ ijs_width, ijs_height);
++ snprintf(sz, sizeof(sz), "P6\n#gdevijs test\n%d\n%d\n255\n", ijs_width, ijs_height);
+ write(rgbfd, sz, strlen(sz));
+#endif
+
@@ -700,8 +682,7 @@
+#ifdef KRGB_DEBUG
+ write(rgbfd, actual_data, row_bytes);
+#endif
-+ status = ijs_client_send_data_wait(ijsdev->ctx, 0,
-+ (char *)actual_data, row_bytes);
++ status = ijs_client_send_data_wait(ijsdev->ctx, 0, (char *)actual_data, row_bytes);
+ if (status)
+ break;
@@ -720,8 +701,7 @@
+#ifdef KRGB_DEBUG
+ write(kfd, actual_data, k_row_bytes);
+#endif
-+ status = ijs_client_send_data_wait(ijsdev->ctx, 0,
-+ (char *)actual_data, k_row_bytes);
++ status = ijs_client_send_data_wait(ijsdev->ctx, 0, (char *)actual_data, k_row_bytes);
+ if (status)
+ break;
+ }
@@ -736,13 +716,12 @@
+#endif
+
+ if(krgb_mode)
-+ gs_free(pdev->memory, ijsdev->k_band, ijsdev->k_band_size,
-+ 1, "gsijs_output_page");
++ gs_free(pdev->memory, ijsdev->k_band, ijsdev->k_band_size, 1, "gsijs_output_page");
+
gs_free_object(pdev->memory, data, "gsijs_output_page");
endcode = (pdev->buffer_space && !pdev->is_async_renderer ?
-@@ -975,7 +1268,7 @@ gsijs_read_string_malloc(gs_param_list *
+@@ -975,7 +1275,7 @@ gsijs_read_string_malloc(gs_param_list *
code = gs_error_rangecheck;
goto e;
}
@@ -751,11 +730,11 @@
if (*str)
gs_free(plist->memory, *str, *size, 1,
"gsijs_read_string_malloc");
-@@ -1090,7 +1383,6 @@ gsijs_client_set_param(gx_device_ijs *ij
+@@ -1090,7 +1390,6 @@ gsijs_client_set_param(gx_device_ijs *ij
dprintf2("ijs: Can't set parameter %s=%s\n", key, value);
return code;
}
-
- private int
+ static int
gsijs_set_color_format(gx_device_ijs *ijsdev)
++++++ ghostscript-8.60-inferno.dif -> ghostscript-8.61-inferno.dif ++++++
--- ghostscript-library/ghostscript-8.60-inferno.dif 2007-08-03 18:24:15.000000000 +0200
+++ /mounts/work_src_done/STABLE/ghostscript-library/ghostscript-8.61-inferno.dif 2008-02-21 14:53:13.000000000 +0100
@@ -1,16 +1,16 @@
--- src/gdevifno.c
+++ src/gdevifno.c 2005-08-31 00:00:00.000000000 +0200
-@@ -53,7 +53,8 @@ private WImage* initwriteimage(FILE *f,
- private int writeimageblock(WImage *w, uchar *data, int ndata);
- private int bytesperline(Rectangle, int);
- private int rgb2cmap(int, int, int);
--private long cmap2rgb(int);
-+/* private long cmap2rgb(int); */
-+private void init_p9color(void);
+@@ -53,7 +53,8 @@ static WImage* initwriteimage(FILE *f,
+ static int writeimageblock(WImage *w, uchar *data, int ndata);
+ static int bytesperline(Rectangle, int);
+ static int rgb2cmap(int, int, int);
+-static long cmap2rgb(int);
++/* static long cmap2rgb(int); */
++static void init_p9color(void);
#define X_DPI 100
#define Y_DPI 100
-@@ -81,7 +82,7 @@ private const gx_device_procs inferno_pr
+@@ -81,7 +82,7 @@ static const gx_device_procs inferno_pr
inferno_device far_data gs_inferno_device =
@@ -24,10 +24,10 @@
#define Bfactor (Rlevs*Glevs)
-ulong p9color[Rlevs*Glevs*Blevs]; /* index blue most sig, red least sig */
-+private ulong p9color[Rlevs*Glevs*Blevs]; /* index blue most sig, red least sig */
++static ulong p9color[Rlevs*Glevs*Blevs]; /* index blue most sig, red least sig */
-void init_p9color(void) /* init at run time since p9color[] is so big */
-+private void
++static void
+init_p9color(void) /* init at run time since p9color[] is so big */
{
int r, g, b, o;
++++++ ghostscript-8.60-pipe.dif -> ghostscript-8.61-pipe.dif ++++++
--- ghostscript-library/ghostscript-8.60-pipe.dif 2007-11-06 15:36:25.000000000 +0100
+++ /mounts/work_src_done/STABLE/ghostscript-library/ghostscript-8.61-pipe.dif 2008-02-21 15:00:38.000000000 +0100
@@ -12,7 +12,7 @@
--- src/imainarg.c
+++ src/imainarg.c 2007-11-06 10:42:50.073965358 +0000
@@ -248,9 +248,10 @@ gs_main_run_start(gs_main_instance * min
- private int
+ static int
swproc(gs_main_instance * minst, const char *arg, arg_list * pal)
{
+ struct stat rstat;
++++++ ghostscript-8.60-stroke-loop.dif -> ghostscript-8.61-stroke-loop.dif ++++++
--- ghostscript-library/ghostscript-8.60-stroke-loop.dif 2007-10-02 12:49:02.000000000 +0200
+++ /mounts/work_src_done/STABLE/ghostscript-library/ghostscript-8.61-stroke-loop.dif 2008-02-21 15:05:47.000000000 +0100
@@ -12,7 +12,7 @@
/*
* Properly designed fonts, which have no self-intersecting outlines
* and in which outer and inner outlines are drawn in opposite
-@@ -428,22 +433,34 @@ private int
+@@ -428,22 +433,34 @@ static int
bbox_finish_fill(i_ctx_t *i_ctx_p)
{
op_proc_t exec_cont = 0;
@@ -30,7 +30,7 @@
+out:
return code;
}
- private int
+ static int
bbox_finish_stroke(i_ctx_t *i_ctx_p)
{
op_proc_t exec_cont = 0;
++++++ ghostscript-8.60.tar.bz2 -> ghostscript-8.61.tar.bz2 ++++++
ghostscript-library/ghostscript-8.60.tar.bz2 /mounts/work_src_done/STABLE/ghostscript-library/ghostscript-8.61.tar.bz2 differ: byte 11, line 1
++++++ ghostscript-8.60-x11.dif -> ghostscript-8.61-x11.dif ++++++
--- ghostscript-library/ghostscript-8.60-x11.dif 2007-10-02 14:11:54.000000000 +0200
+++ /mounts/work_src_done/STABLE/ghostscript-library/ghostscript-8.61-x11.dif 2008-02-21 18:31:36.000000000 +0100
@@ -1,6 +1,6 @@
--- src/gdevx.c
+++ src/gdevx.c 2007-09-26 10:20:40.086961112 +0000
-@@ -1039,27 +1039,41 @@ private void
+@@ -1039,27 +1039,41 @@ static void
update_do_flush(gx_device_X * xdev)
{
flush_text(xdev);
++++++ ghostscript-fonts-std-8.11.patch ++++++
--- /var/tmp/diff_new_pack.sg8438/_old 2008-03-11 18:37:24.000000000 +0100
+++ /var/tmp/diff_new_pack.sg8438/_new 2008-03-11 18:37:24.000000000 +0100
@@ -107,3 +107,55 @@
UnderlinePosition -100
UnderlineThickness 50
Version 1.06
+--- n019043l.pfa.~1~ 2008-03-06 17:23:47.000000000 +0100
++++ n019043l.pfa 2008-03-06 17:25:20.000000000 +0100
+@@ -26,8 +26,8 @@
+ /FontInfo 10 dict dup begin
+ /version (1.06) readonly def
+ /Notice (Copyright \050URW\051++,Copyright 1999 by \050URW\051++ Design & Development; Cyrillic glyphs added by Valek Filippov \050C\051 2001-2002) readonly def
+- /FullName (Nimbus Sans L Regular Condensed) readonly def
+- /FamilyName (Nimbus Sans L) readonly def
++ /FullName (Nimbus Sans L Condensed Regular) readonly def
++ /FamilyName (Nimbus Sans L Condensed) readonly def
+ /Weight (Regular) readonly def
+ /FSType 0 def
+ /ItalicAngle 0 def
+--- n019044l.pfa.~1~ 2008-03-06 17:23:47.000000000 +0100
++++ n019044l.pfa 2008-03-06 17:26:16.000000000 +0100
+@@ -26,8 +26,8 @@
+ /FontInfo 10 dict dup begin
+ /version (1.06) readonly def
+ /Notice (Copyright \050URW\051++,Copyright 1999 by \050URW\051++ Design & Development; Cyrillic glyphs added by Valek Filippov \050C\051 2001) readonly def
+- /FullName (Nimbus Sans L Bold Condensed) readonly def
+- /FamilyName (Nimbus Sans L) readonly def
++ /FullName (Nimbus Sans L Condensed Bold) readonly def
++ /FamilyName (Nimbus Sans L Condensed) readonly def
+ /Weight (Bold) readonly def
+ /FSType 0 def
+ /ItalicAngle 0 def
+--- n019063l.pfa.~1~ 2008-03-06 17:23:47.000000000 +0100
++++ n019063l.pfa 2008-03-06 17:27:16.000000000 +0100
+@@ -26,8 +26,8 @@
+ /FontInfo 10 dict dup begin
+ /version (1.06) readonly def
+ /Notice (Copyright \050URW\051++,Copyright 1999 by \050URW\051++ Design & Development; Cyrillic glyphs added by Valek Filippov \050C\051 2001) readonly def
+- /FullName (Nimbus Sans L Regular Condensed Italic) readonly def
+- /FamilyName (Nimbus Sans L) readonly def
++ /FullName (Nimbus Sans L Condensed Regular Italic) readonly def
++ /FamilyName (Nimbus Sans L Condensed) readonly def
+ /Weight (Regular) readonly def
+ /FSType 0 def
+ /ItalicAngle -9.9 def
+--- n019064l.pfa.~1~ 2008-03-06 17:23:47.000000000 +0100
++++ n019064l.pfa 2008-03-06 17:28:06.000000000 +0100
+@@ -19,8 +19,8 @@
+ /FontInfo 10 dict dup begin
+ /version (1.06) readonly def
+ /Notice (Copyright \050URW\051++,Copyright 1999 by \050URW\051++ Design & Development; Cyrillic glyphs added by Valek Filippov \050C\051 2001-2002) readonly def
+- /FullName (Nimbus Sans L Bold Condensed Italic) readonly def
+- /FamilyName (Nimbus Sans L) readonly def
++ /FullName (Nimbus Sans L Condensed Bold Italic) readonly def
++ /FamilyName (Nimbus Sans L Condensed) readonly def
+ /Weight (Bold) readonly def
+ /FSType 12 def
+ /ItalicAngle -9.9 def
++++++ gimp-print-4.2.7.dif ++++++
--- /var/tmp/diff_new_pack.sg8438/_old 2008-03-11 18:37:24.000000000 +0100
+++ /var/tmp/diff_new_pack.sg8438/_new 2008-03-11 18:37:24.000000000 +0100
@@ -1,5 +1,5 @@
--- gimp-print-4.2.7/src/ghost/Makefile.am
-+++ gimp-print-4.2.7/src/ghost/Makefile.am 2007-09-04 09:19:14.000000000 +0000
++++ gimp-print-4.2.7/src/ghost/Makefile.am 2008-02-21 18:27:55.613956690 +0100
@@ -140,9 +140,9 @@ EXTRA_DIST = \
## Variables
@@ -13,7 +13,7 @@
## Programs
--- gimp-print-4.2.7/src/ghost/Makefile.in
-+++ gimp-print-4.2.7/src/ghost/Makefile.in 2007-09-04 09:19:14.000000000 +0000
++++ gimp-print-4.2.7/src/ghost/Makefile.in 2008-02-21 18:27:55.613956690 +0100
@@ -214,9 +214,9 @@ EXTRA_DIST = COPYING Makefile Makefi
@@ -27,7 +27,7 @@
IJS_BIN = ijsgimpprint
--- gimp-print-4.2.7/src/ghost/README
-+++ gimp-print-4.2.7/src/ghost/README 2007-09-04 09:19:14.000000000 +0000
++++ gimp-print-4.2.7/src/ghost/README 2008-02-21 18:27:55.637959754 +0100
@@ -429,214 +429,214 @@ driver ignores it. It should be CANON,
HEWLETT-PACKARD. The value of the -sDeviceModel parameter is the same
as the value of the -sModel parameter in the stp driver.
@@ -452,8 +452,8 @@
others vary. In particular, all of the listed Epson Stylus Photo
printers print in full 6-color photo mode; most of the others do not.
--- gimp-print-4.2.7/src/ghost/gdevstp.c
-+++ gimp-print-4.2.7/src/ghost/gdevstp.c 2007-09-04 09:54:52.000000000 +0000
-@@ -38,6 +38,9 @@
++++ gimp-print-4.2.7/src/ghost/gdevstp.c 2008-02-21 18:30:21.628617571 +0100
+@@ -38,9 +38,12 @@
#include
#endif
@@ -462,9 +462,58 @@
+
/* internal debugging output ? */
- private int stp_debug = 0;
-@@ -140,34 +143,34 @@ static stp_image_t theImage =
- private void
+-private int stp_debug = 0;
++static int stp_debug = 0;
+
+ #define STP_DEBUG(x) do { if (stp_debug || getenv("STP_DEBUG")) x; } while (0)
+
+@@ -49,15 +52,15 @@ private int stp_debug = 0;
+ #define X_DPI 360
+ #define Y_DPI 360
+
+-private dev_proc_map_rgb_color(stp_map_16m_rgb_color);
+-private dev_proc_map_color_rgb(stp_map_16m_color_rgb);
+-private dev_proc_print_page(stp_print_page);
+-private dev_proc_get_params(stp_get_params);
+-private dev_proc_put_params(stp_put_params);
+-private dev_proc_open_device(stp_open);
++static dev_proc_map_rgb_color(stp_map_16m_rgb_color);
++static dev_proc_map_color_rgb(stp_map_16m_color_rgb);
++static dev_proc_print_page(stp_print_page);
++static dev_proc_get_params(stp_get_params);
++static dev_proc_put_params(stp_put_params);
++static dev_proc_open_device(stp_open);
+
+ /* 24-bit color. ghostscript driver */
+-private const gx_device_procs stpm_procs =
++static const gx_device_procs stpm_procs =
+ prn_color_params_procs(
+ stp_open, /*gdev_prn_open,*/ /* open file, delegated */
+ gdev_prn_output_page, /* output page, delegated */
+@@ -75,7 +78,7 @@ prn_device(stpm_procs, "stp",
+ 0, 0, 0, 0, /* margins */
+ 24, stp_print_page);
+
+-/* private data structure */
++/* static data structure */
+ typedef struct
+ {
+ int topoffset; /* top offset in pixels */
+@@ -84,7 +87,7 @@ typedef struct
+ } privdata_t;
+
+ /* global variables, RO for subfunctions */
+-private privdata_t stp_data =
++static privdata_t stp_data =
+ { 0, 0, NULL };
+
+ typedef struct
+@@ -137,89 +140,89 @@ static stp_image_t theImage =
+ * ghostscript driver function calls *
+ ***********************************************************************/
+
+-private void
++static void
stp_dbg(const char *msg, const privdata_t *stp_data)
{
- fprintf(gs_stderr,"%s Settings: c: %f m: %f y: %f\n",
@@ -511,8 +560,9 @@
+ errprintf("Settings: OutputTo %s\n", stp_get_output_to(stp_data->v));
}
- private void
-@@ -175,7 +178,7 @@ stp_print_dbg(const char *msg, gx_device
+-private void
++static void
+ stp_print_dbg(const char *msg, gx_device_printer *pdev,
const privdata_t *stp_data)
{
STP_DEBUG(if (pdev)
@@ -521,7 +571,11 @@
msg, pdev->width, pdev->height, pdev->x_pixels_per_inch,
pdev->y_pixels_per_inch));
STP_DEBUG(stp_dbg(msg, stp_data));
-@@ -186,7 +189,7 @@ stp_print_debug(const char *msg, gx_devi
+ }
+
+-private void
++static void
+ stp_print_debug(const char *msg, gx_device *pdev,
const privdata_t *stp_data)
{
STP_DEBUG(if (pdev)
@@ -530,8 +584,10 @@
msg, pdev->width, pdev->height, pdev->x_pixels_per_inch,
pdev->y_pixels_per_inch));
STP_DEBUG(stp_dbg(msg, stp_data));
-@@ -195,16 +198,16 @@ stp_print_debug(const char *msg, gx_devi
- private void
+ }
+
+-private void
++static void
stp_init_vars(void)
{
- STP_DEBUG(fprintf(gs_stderr, "Calling "));
@@ -550,6 +606,24 @@
}
+-private void
++static void
+ stp_writefunc(void *file, const char *buf, size_t bytes)
+ {
+ FILE *prn = (FILE *)file;
+ fwrite(buf, 1, bytes, prn);
+ }
+
+-private int
++static int
+ stp_print_page(gx_device_printer * pdev, FILE * file)
+ {
+ stp_priv_image_t gsImage;
+- private int printvars_merged = 0;
++ static int printvars_merged = 0;
+ int code; /* return code */
+ stp_printer_t printer = NULL;
+ uint stp_raster;
@@ -227,6 +230,10 @@ stp_print_page(gx_device_printer * pdev,
stp_papersize_t p;
theImage.rep = &gsImage;
@@ -579,19 +653,50 @@
if (stp_printer_get_printfuncs(printer)->verify(printer, stp_data.v))
(stp_printer_get_printfuncs(printer)->print)
(printer, &theImage, stp_data.v);
-@@ -297,9 +304,9 @@ stp_print_page(gx_device_printer * pdev,
+@@ -296,17 +303,17 @@ stp_print_page(gx_device_printer * pdev,
+ /* 24-bit color mappers (taken from gdevmem2.c). */
/* Map a r-g-b color to a color index. */
- private gx_color_index
+-private gx_color_index
-stp_map_16m_rgb_color(gx_device * dev, gx_color_value r, gx_color_value g,
- gx_color_value b)
++static gx_color_index
+stp_map_16m_rgb_color(gx_device * dev, const gx_color_value cv[])
{
+ gx_color_value r = cv[0], g = cv[1], b = cv[2];
return gx_color_value_to_byte(b) +
((uint) gx_color_value_to_byte(g) << 8) +
((ulong) gx_color_value_to_byte(r) << 16);
-@@ -334,14 +341,14 @@ c_strdup(const char *s)
+ }
+
+ /* Map a color index to a r-g-b color. */
+-private int
++static int
+ stp_map_16m_color_rgb(gx_device * dev, gx_color_index color,
+ gx_color_value prgb[3])
+ {
+@@ -316,32 +323,32 @@ stp_map_16m_color_rgb(gx_device * dev, g
+ return 0;
+ }
+
+-private int
++static int
+ stp_write_float(gs_param_list *plist, const char *name, float value)
+ {
+ return param_write_float(plist, name, &value);
+ }
+
+-private int
++static int
+ stp_write_int(gs_param_list *plist, const char *name, int value)
+ {
+ return param_write_int(plist, name, &value);
+ }
+
+-private char *
++static char *
+ c_strdup(const char *s)
+ {
char *ret;
if (!s)
{
@@ -608,6 +713,15 @@
ret = malloc(strlen(s) + 1);
strcpy(ret, s);
return ret;
+@@ -354,7 +361,7 @@ c_strdup(const char *s)
+ * for maximum quality out of the photo printer
+ */
+ /* Yeah, I could have used a list for the options but... */
+-private int
++static int
+ stp_get_params(gx_device *pdev, gs_param_list *plist)
+ {
+ int code;
@@ -415,7 +422,7 @@ stp_get_params(gx_device *pdev, gs_param
free(pinktypestr);
free(palgorithmstr);
@@ -617,6 +731,15 @@
return code;
}
+@@ -450,7 +457,7 @@ do { \
+ } \
+ } while (0)
+
+-private int
++static int
+ stp_put_params(gx_device *pdev, gs_param_list *plist)
+ {
+ const stp_vars_t lower = stp_minimum_settings();
@@ -524,11 +531,11 @@ stp_put_params(gx_device *pdev, gs_param
return code;
}
@@ -632,6 +755,15 @@
pquality.size, pquality.data));
stp_set_driver_n(stp_data.v, pmodel.data, pmodel.size);
printer = stp_get_printer_by_driver(stp_get_driver(stp_data.v));
+@@ -559,7 +566,7 @@ stp_put_params(gx_device *pdev, gs_param
+ return code;
+ }
+
+-private int
++static int
+ stp_open(gx_device *pdev)
+ {
+ /* Change the margins if necessary. */
@@ -572,9 +579,9 @@ stp_open(gx_device *pdev)
if (!printer)
{
@@ -653,7 +785,42 @@
st[0], st[1], st[2], st[3]));
gx_device_set_margins(pdev, st, true);
-@@ -682,7 +689,7 @@ Image_height(stp_image_t *image)
+@@ -612,7 +619,7 @@ stp_open(gx_device *pdev)
+ ***********************************************************************/
+
+ /* get one row of the image */
+-private stp_image_status_t
++static stp_image_status_t
+ Image_get_row(stp_image_t *image, unsigned char *data, int row)
+ {
+ stp_priv_image_t *im = (stp_priv_image_t *) (image->rep);
+@@ -644,14 +651,14 @@ Image_get_row(stp_image_t *image, unsign
+ }
+
+ /* return bpp of picture (24 here) */
+-private int
++static int
+ Image_bpp(stp_image_t *image)
+ {
+ return 3;
+ }
+
+ /* return width of picture */
+-private int
++static int
+ Image_width(stp_image_t *image)
+ {
+ stp_priv_image_t *im = (stp_priv_image_t *) (image->rep);
+@@ -665,7 +672,7 @@ Image_width(stp_image_t *image)
+ input
+
+ */
+-private int
++static int
+ Image_height(stp_image_t *image)
+ {
+ stp_priv_image_t *im = (stp_priv_image_t *) (image->rep);
+@@ -682,55 +689,55 @@ Image_height(stp_image_t *image)
/* calculate new image height */
tmp2 *= (float)(im->dev->x_pixels_per_inch) / 72.;
@@ -662,24 +829,66 @@
return (int)tmp2;
}
-@@ -721,13 +728,13 @@ Image_progress_init(stp_image_t *image)
- private void
+
+-private void
++static void
+ Image_rotate_ccw(stp_image_t *image)
+ {
+ /* dummy function, Landscape printing unsupported atm */
+ }
+
+-private void
++static void
+ Image_rotate_cw(stp_image_t *image)
+ {
+ /* dummy function, Seascape printing unsupported atm */
+ }
+
+-private void
++static void
+ Image_rotate_180(stp_image_t *image)
+ {
+ /* dummy function, upside down printing unsupported atm */
+ }
+
+-private void
++static void
+ Image_init(stp_image_t *image)
+ {
+ /* dummy function */
+ }
+
+-private void
++static void
+ Image_progress_init(stp_image_t *image)
+ {
+ /* dummy function */
+ }
+
+ /* progress display */
+-private void
++static void
Image_note_progress(stp_image_t *image, double current, double total)
{
- STP_DEBUG(fprintf(gs_stderr, "."));
+ STP_DEBUG(errprintf("."));
}
- private void
+-private void
++static void
Image_progress_conclude(stp_image_t *image)
{
- STP_DEBUG(fprintf(gs_stderr, "\n"));
+ STP_DEBUG(errprintf("\n"));
}
- private const char *
+-private const char *
++static const char *
+ Image_get_appname(stp_image_t *image)
+ {
+ return "GhostScript/stp";
--- gimp-print-4.2.7/src/ghost/gs-stp.1
-+++ gimp-print-4.2.7/src/ghost/gs-stp.1 2007-09-04 09:19:14.000000000 +0000
++++ gimp-print-4.2.7/src/ghost/gs-stp.1 2008-02-21 18:27:55.689966406 +0100
@@ -0,0 +1,1634 @@
+'\" t
+.TH \fBGS\-STP\fR 1 \fB2 Jul 2001\fR \fBVersion 4.2.5\fR \fBGIMP Manual Pages\fR
++++++ rpmlintrc ++++++
--- ghostscript-library/rpmlintrc 2007-09-21 16:23:48.000000000 +0200
+++ /mounts/work_src_done/STABLE/ghostscript-library/rpmlintrc 2008-02-22 16:10:09.000000000 +0100
@@ -9,3 +9,4 @@
addFilter(".*explicit-lib-dependency.*libxml2-devel.*")
addFilter(".*devel-dependency.*glibc-devel.*")
addFilter(".*devel-dependency.*libxml2-devel.*")
+addFilter(".*no-dependency-on.*ghostscript-ijs.*")
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Remember to have fun...
---------------------------------------------------------------------
To unsubscribe, e-mail: opensuse-commit+unsubscribe@opensuse.org
For additional commands, e-mail: opensuse-commit+help@opensuse.org