diff options
author | Patrick J Volkerding <volkerdi@slackware.com> | 2011-04-25 13:37:00 +0000 |
---|---|---|
committer | Eric Hameleers <alien@slackware.com> | 2018-05-31 22:45:18 +0200 |
commit | 75a4a592e5ccda30715f93563d741b83e0dcf39e (patch) | |
tree | 502f745607e77a2c4386ad38d818ddcafe81489c /source/xap | |
parent | b76270bf9e6dd375e495fec92140a79a79415d27 (diff) | |
download | current-75a4a592e5ccda30715f93563d741b83e0dcf39e.tar.gz |
Slackware 13.37slackware-13.37
Mon Apr 25 13:37:00 UTC 2011
Slackware 13.37 x86_64 stable is released!
Thanks to everyone who pitched in on this release: the Slackware team,
the folks producing upstream code, and linuxquestions.org for providing
a great forum for collaboration and testing.
The ISOs are off to be replicated, a 6 CD-ROM 32-bit set and a
dual-sided
32-bit/64-bit x86/x86_64 DVD. Please consider supporting the Slackware
project by picking up a copy from store.slackware.com. We're taking
pre-orders now, and offer a discount if you sign up for a subscription.
As always, thanks to the Slackware community for testing, suggestions,
and feedback. :-)
Have fun!
Diffstat (limited to 'source/xap')
85 files changed, 2643 insertions, 3823 deletions
diff --git a/source/xap/MPlayer/MPlayer.SlackBuild b/source/xap/MPlayer/MPlayer.SlackBuild index 0ce4b79e..17b8b036 100755 --- a/source/xap/MPlayer/MPlayer.SlackBuild +++ b/source/xap/MPlayer/MPlayer.SlackBuild @@ -32,7 +32,7 @@ # ----------------------------------------------------------------------------- PRGNAM=MPlayer -VERSION=${VERSION:-20100218} +VERSION=${VERSION:-20101218} BUILD=${BUILD:-1} TAG=${TAG:-} @@ -274,8 +274,6 @@ echo Building ... --enable-largefiles \ --disable-arts \ --codecsdir=${CODECSDIR} \ - --win32codecsdir=${CODECSDIR} \ - --realcodecsdir=${CODECSDIR} \ --language="${LANGUAGES}" \ ${EXTRACONFIGUREOPTIONS} \ ${DO_PATENTED} \ diff --git a/source/xap/audacious-plugins/audacious-plugins.SlackBuild b/source/xap/audacious-plugins/audacious-plugins.SlackBuild index 84417ccb..50274f1f 100755 --- a/source/xap/audacious-plugins/audacious-plugins.SlackBuild +++ b/source/xap/audacious-plugins/audacious-plugins.SlackBuild @@ -1,6 +1,6 @@ #!/bin/sh -# Copyright 2006, 2007, 2008, 2009 Patrick J. Volkerding, Sebeka, MN, USA +# Copyright 2006, 2007, 2008, 2009, 2010, 2011 Patrick J. Volkerding, Sebeka, MN, USA # All rights reserved. # # Redistribution and use of this script, with or without modification, is @@ -22,7 +22,7 @@ PKGNAM=audacious-plugins -VERSION=${VERSION:-2.3} +VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)} BUILD=${BUILD:-1} NUMJOBS=${NUMJOBS:-" -j7 "} @@ -66,6 +66,8 @@ rm -rf ${PKGNAM}-${VERSION} tar xvf $CWD/${PKGNAM}-$VERSION.tar.xz || exit 1 cd ${PKGNAM}-$VERSION || exit 1 +zcat $CWD/audacious-plugins.alsa.noise.is.not.helpful.diff.gz | patch -p1 --verbose || exit 1 + # Make sure ownerships and permissions are sane: chown -R root:root . find . \ diff --git a/source/xap/audacious-plugins/audacious-plugins.alsa.noise.is.not.helpful.diff b/source/xap/audacious-plugins/audacious-plugins.alsa.noise.is.not.helpful.diff new file mode 100644 index 00000000..e904ab8d --- /dev/null +++ b/source/xap/audacious-plugins/audacious-plugins.alsa.noise.is.not.helpful.diff @@ -0,0 +1,25 @@ +--- ./src/alsa/alsa.c.orig 2011-02-22 11:29:46.000000000 -0600 ++++ ./src/alsa/alsa.c 2011-03-11 15:02:53.340999637 -0600 +@@ -207,10 +207,20 @@ + static gboolean warned = FALSE; + if (! warned) + { +- fprintf (stderr, "\n** WARNING **\nAudacious has detected that " ++ /* fprintf (stderr, "\n** WARNING **\nAudacious has detected that " + "your ALSA device has a broken timer. A workaround\nis being " + "used to prevent CPU overload. Please report this problem to " +- "your\nLinux distributor or to the ALSA developers.\n\n"); ++ "your\nLinux distributor or to the ALSA developers.\n\n"); */ ++ /* ^^^ COMMENTED OUT ^^^ */ ++ ++ /* I'm glad there is a workaround for this, and the reports ++ are that it works, so spamming the console about it seems ++ a little bit extreme. It's not an issue to be solved here ++ by Slackware, and I would be surprised if the ALSA ++ developers did not know by now, given this warning. ++ FWIW, this seems a strange method of communicating with the ++ ALSA developers. Did they report the bug to them? */ ++ + warned = TRUE; + } + diff --git a/source/xap/audacious/audacious.SlackBuild b/source/xap/audacious/audacious.SlackBuild index 45b5c171..4a651490 100755 --- a/source/xap/audacious/audacious.SlackBuild +++ b/source/xap/audacious/audacious.SlackBuild @@ -22,7 +22,7 @@ PKGNAM=audacious -VERSION=${VERSION:-2.3} +VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)} BUILD=${BUILD:-1} NUMJOBS=${NUMJOBS:-" -j7 "} diff --git a/source/xap/blackbox/blackbox.SlackBuild b/source/xap/blackbox/blackbox.SlackBuild index 130355f4..af000496 100755 --- a/source/xap/blackbox/blackbox.SlackBuild +++ b/source/xap/blackbox/blackbox.SlackBuild @@ -1,6 +1,6 @@ #!/bin/sh -# Copyright 2006, 2007, 2008, 2009, 2010 Patrick J. Volkerding, Sebeka, MN, USA +# Copyright 2006, 2007, 2008, 2009, 2010, 2011 Patrick J. Volkerding, Sebeka, MN, USA # All rights reserved. # # Redistribution and use of this script, with or without modification, is @@ -26,7 +26,7 @@ PKGNAM=blackbox VERSION=${VERSION:-0.70.1} BBKEYSVER=${BBKEYSVER:-0.9.1} -BUILD=${BUILD:-3} +BUILD=${BUILD:-4} NUMJOBS=${NUMJOBS:-" -j7 "} PKGEXT=${PKGEXT:-txz} diff --git a/source/xap/blackbox/xinitrc.blackbox b/source/xap/blackbox/xinitrc.blackbox index fbe0997b..58bd9259 100644 --- a/source/xap/blackbox/xinitrc.blackbox +++ b/source/xap/blackbox/xinitrc.blackbox @@ -25,4 +25,8 @@ if [ -f $usermodmap ]; then fi # Start the window manager: -exec /usr/bin/blackbox +if [ -z "$DESKTOP_SESSION" -a -x /usr/bin/ck-launch-session ]; then + exec ck-launch-session /usr/bin/blackbox +else + exec /usr/bin/blackbox +fi diff --git a/source/xap/blueman/blueman.SlackBuild b/source/xap/blueman/blueman.SlackBuild index bdb134e0..737dae98 100755 --- a/source/xap/blueman/blueman.SlackBuild +++ b/source/xap/blueman/blueman.SlackBuild @@ -26,7 +26,6 @@ PKGNAM=blueman VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)} BUILD=${BUILD:-1} -POLKIT_OPTION=" --disable-polkit " # Automatically determine the architecture we're building on: if [ -z "$ARCH" ]; then @@ -71,17 +70,13 @@ find . \ \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \ -exec chmod 644 {} \; -# Address a couple of bugs that have been fixed in the bzr repo -zcat $CWD/no_hide_applet.diff.gz | patch -p0 --verbose || exit 1 -zcat $CWD/fix_on_off_loop.diff.gz | patch -p0 --verbose || exit 1 - # Use blueman-open, a modified version of this, to browse obexfs shares: # http://www.kde-apps.org/content/show.php/kde4+bluetooth+files+open?content=108869 zcat $CWD/blueman-use_blueman-open_for_obexfs.diff.gz | patch -p1 || exit 1 CFLAGS="$SLKCFLAGS" \ CXXFLAGS="$SLKCFLAGS" \ -./configure \ +./autogen.sh \ --prefix=/usr \ --libdir=/usr/lib${LIBDIRSUFFIX} \ --sysconfdir=/etc \ @@ -90,18 +85,13 @@ CXXFLAGS="$SLKCFLAGS" \ --docdir=/usr/doc/$PKGNAM-$VERSION \ --disable-static \ --with-dhcp-config=/etc/dhcpd.conf \ - --enable-hal \ - $POLKIT_OPTION \ + --disable-hal \ + --enable-polkit \ --build=$ARCH-slackware-linux make $NUMJOBS || make || exit 1 make install DESTDIR=$PKG || exit 1 -if echo $POLKIT_OPTION | grep -q '\--disable-polkit' ; then - # Remove unneeded junk - rm -rf $PKG/usr/share/polkit-1 -fi - # Add the blueman-open script to /usr/libexec for browsing obexfs shares # I don't want to put this in PATH and have someone accidentally run it mkdir -p $PKG/usr/libexec diff --git a/source/xap/blueman/fix_on_off_loop.diff b/source/xap/blueman/fix_on_off_loop.diff deleted file mode 100644 index ac11c135..00000000 --- a/source/xap/blueman/fix_on_off_loop.diff +++ /dev/null @@ -1,58 +0,0 @@ -revno: 602 -committer: walmis -timestamp: Sun 2009-10-25 15:49:33 +0000 -message: - fix bluetooth on/off loop - -=== modified file 'blueman/plugins/applet/PowerManager.py' ---- blueman/plugins/applet/PowerManager.py 2009-10-25 15:16:14 +0000 -+++ blueman/plugins/applet/PowerManager.py 2009-10-25 15:49:33 +0000 -@@ -66,22 +66,6 @@ - dprint("adapter powered on while in off state, turning bluetooth on") - self.bluetooth_off = False - -- -- def on_manager_state_changed(self, state): -- if state: -- adapters = self.Applet.Manager.ListAdapters() -- for adapter in adapters: -- props = adapter.GetProperties() -- if not props["Powered"]: -- self.bluetooth_off = True -- if self.state_change_deferred != -1: -- break -- else: -- return -- -- if self.state_change_deferred != -1: -- self.bluetooth_off = self.state_change_deferred -- self.state_change_deferred = -1 - - def on_bluetooth_toggled(self): - self.bluetooth_off = not self.bluetooth_off -@@ -97,9 +81,17 @@ - - return pixbuf - -+ def process_deferred(self): -+ if self.state_change_deferred != -1: -+ dprint("Setting deferred status") -+ self.bluetooth_off = self.state_change_deferred -+ self.state_change_deferred = -1 -+ - def on_adapter_added(self, path): - adapter = Bluez.Adapter(path) - def on_ready(): -+ self.process_deferred() -+ - if self.bluetooth_off: - adapter.SetProperty("Powered", False) - else: -@@ -134,6 +126,7 @@ - self.__dict__[key] = value - - if not self.Applet.Manager: -+ dprint("deferring status change") - self.state_change_deferred = value - return - diff --git a/source/xap/blueman/no_hide_applet.diff b/source/xap/blueman/no_hide_applet.diff deleted file mode 100644 index a57a2b8f..00000000 --- a/source/xap/blueman/no_hide_applet.diff +++ /dev/null @@ -1,30 +0,0 @@ -revno: 647 -committer: Valmantas Palikša <walmis@balticum-tv.lt> -branch nick: trunk -timestamp: Wed 2009-12-02 21:31:16 +0200 -message: - don't force hide the applet if bluez manager is not initialized - -=== modified file 'blueman/plugins/applet/StatusIcon.py' ---- blueman/plugins/applet/StatusIcon.py 2009-10-27 16:10:53 +0000 -+++ blueman/plugins/applet/StatusIcon.py 2009-12-02 19:31:16 +0000 -@@ -55,15 +55,16 @@ - self.Query() - - def Query(self): -- if not self.Applet.Manager: -- self.props.visible = False -- return - - rets = self.Applet.Plugins.Run("on_query_status_icon_visibility") - if not StatusIcon.FORCE_HIDE in rets: - if StatusIcon.FORCE_SHOW in rets: - self.props.visible = True - else: -+ if not self.Applet.Manager: -+ self.props.visible = False -+ return -+ - try: - if self.Applet.Manager.ListAdapters() == []: - self.props.visible = False diff --git a/source/xap/fluxbox/fluxbox.SlackBuild b/source/xap/fluxbox/fluxbox.SlackBuild index 9685e3f6..2be30410 100755 --- a/source/xap/fluxbox/fluxbox.SlackBuild +++ b/source/xap/fluxbox/fluxbox.SlackBuild @@ -1,6 +1,6 @@ #!/bin/sh -# Copyright 2008, 2009, 2010 Patrick J. Volkerding, Sebeka, MN, USA +# Copyright 2008, 2009, 2010, 2011 Patrick J. Volkerding, Sebeka, MN, USA # All rights reserved. # # Redistribution and use of this script, with or without modification, is @@ -21,8 +21,9 @@ # ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -VERSION=1.1.1 -BUILD=${BUILD:-2} +PKGNAM=fluxbox +VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)} +BUILD=${BUILD:-1} NUMJOBS=${NUMJOBS:-" -j7 "} @@ -76,7 +77,6 @@ CXXFLAGS="$SLKCFLAGS" \ --enable-xinerama \ --enable-shape \ --enable-slit \ - --enable-interlace \ --enable-nls \ --enable-timed-cache \ --build=$ARCH-slackware-linux @@ -91,12 +91,20 @@ gzip -9 $PKG/usr/man/man?/* mkdir -p $PKG/etc/X11/xinit zcat $CWD/xinitrc.fluxbox.gz > $PKG/etc/X11/xinit/xinitrc.fluxbox -chmod 755 $PKG/etc/X11/xinit/xinitrc.fluxbox +chmod 0755 $PKG/etc/X11/xinit/xinitrc.fluxbox mkdir -p $PKG/usr/doc/fluxbox-$VERSION cp -a AUTHORS COPYING* INSTALL NEWS README* TODO \ $PKG/usr/doc/fluxbox-$VERSION -chmod 644 $PKG/usr/doc/fluxbox-$VERSION/* +chmod 0644 $PKG/usr/doc/fluxbox-$VERSION/* + +# If there's a ChangeLog, installing at least part of the recent history +# is useful, but don't let it get totally out of control: +if [ -r ChangeLog ]; then + DOCSDIR=$(echo $PKG/usr/doc/*-$VERSION) + cat ChangeLog | head -n 1000 > $DOCSDIR/ChangeLog + touch -r ChangeLog $DOCSDIR/ChangeLog +fi mkdir -p $PKG/install cat $CWD/slack-desc > $PKG/install/slack-desc diff --git a/source/xap/fluxbox/xinitrc.fluxbox b/source/xap/fluxbox/xinitrc.fluxbox index 593875db..62e425b3 100644 --- a/source/xap/fluxbox/xinitrc.fluxbox +++ b/source/xap/fluxbox/xinitrc.fluxbox @@ -25,4 +25,8 @@ if [ -f $usermodmap ]; then fi # Start the window manager: -exec /usr/bin/startfluxbox +if [ -z "$DESKTOP_SESSION" -a -x /usr/bin/ck-launch-session ]; then + exec ck-launch-session /usr/bin/startfluxbox +else + exec /usr/bin/startfluxbox +fi diff --git a/source/xap/fvwm/fvwm.SlackBuild b/source/xap/fvwm/fvwm.SlackBuild index c990f1a0..7906a473 100755 --- a/source/xap/fvwm/fvwm.SlackBuild +++ b/source/xap/fvwm/fvwm.SlackBuild @@ -23,11 +23,19 @@ PKGNAM=fvwm VERSION=${VERSION:-2.4.20} -ARCH=${ARCH:-x86_64} -BUILD=${BUILD:-1} +BUILD=${BUILD:-2} NUMJOBS=${NUMJOBS:-" -j7 "} +# Automatically determine the architecture we're building on: +if [ -z "$ARCH" ]; then + case "$( uname -m )" in + i?86) export ARCH=i486 ;; + arm*) export ARCH=arm ;; + # Unless $ARCH is already set, use uname -m for all other archs: + *) export ARCH=$( uname -m ) ;; + esac +fi if [ "$ARCH" = "i486" ]; then SLKCFLAGS="-O2 -march=i486 -mtune=i686" @@ -43,9 +51,9 @@ fi CWD=$(pwd) TMP=${TMP:-/tmp} PKG=$TMP/package-${PKGNAM} + rm -rf $PKG mkdir -p $TMP $PKG - cd $TMP rm -rf ${PKGNAM}-${VERSION} tar xvf $CWD/${PKGNAM}-$VERSION.tar.bz2 || exit 1 diff --git a/source/xap/fvwm/xinitrc.fvwm2 b/source/xap/fvwm/xinitrc.fvwm2 index 955629fc..788a4e43 100644 --- a/source/xap/fvwm/xinitrc.fvwm2 +++ b/source/xap/fvwm/xinitrc.fvwm2 @@ -27,4 +27,9 @@ fi # start some nice programs xsetroot -solid SteelBlue -fvwm2 +if [ -z "$DESKTOP_SESSION" -a -x /usr/bin/ck-launch-session ]; then + ck-launch-session fvwm2 +else + fvwm2 +fi + diff --git a/source/xap/geeqie/geeqie.SlackBuild b/source/xap/geeqie/geeqie.SlackBuild index 55b0b69d..dbde32bb 100755 --- a/source/xap/geeqie/geeqie.SlackBuild +++ b/source/xap/geeqie/geeqie.SlackBuild @@ -1,6 +1,6 @@ #!/bin/sh -# Copyright 2010 Patrick Volkerding, Sebeka, MN, USA +# Copyright 2010, 2011 Patrick Volkerding, Sebeka, MN, USA # All rights reserved. # # Redistribution and use of this script, with or without modification, is @@ -25,7 +25,7 @@ PKGNAM=geeqie VERSION=1.0 -BUILD=${BUILD:-1} +BUILD=${BUILD:-3} # Automatically determine the architecture we're building on: if [ -z "$ARCH" ]; then @@ -40,15 +40,15 @@ fi NUMJOBS=${NUMJOBS:-" -j7 "} if [ "$ARCH" = "i486" ]; then - SLKCFLAGS="-O2 -march=i486 -mtune=i686" + SLKCFLAGS="-O2 -D_FILE_OFFSET_BITS=64 -march=i486 -mtune=i686" elif [ "$ARCH" = "i686" ]; then - SLKCFLAGS="-O2 -march=i686" + SLKCFLAGS="-O2 -D_FILE_OFFSET_BITS=64 -march=i686" elif [ "$ARCH" = "s390" ]; then - SLKCFLAGS="-O2" + SLKCFLAGS="-O2 -D_FILE_OFFSET_BITS=64" elif [ "$ARCH" = "x86_64" ]; then - SLKCFLAGS="-O2 -fPIC" + SLKCFLAGS="-O2 -D_FILE_OFFSET_BITS=64 -fPIC" else - SLKCFLAGS="-O2" + SLKCFLAGS="-O2 -D_FILE_OFFSET_BITS=64" fi CWD=$(pwd) diff --git a/source/xap/gimp/gimp.SlackBuild b/source/xap/gimp/gimp.SlackBuild index 377f519c..330ca4f1 100755 --- a/source/xap/gimp/gimp.SlackBuild +++ b/source/xap/gimp/gimp.SlackBuild @@ -1,6 +1,6 @@ #!/bin/sh -# Copyright 2008, 2009, 2010 Patrick J. Volkerding, Sebeka, MN, USA +# Copyright 2008, 2009, 2010, 2011 Patrick J. Volkerding, Sebeka, MN, USA # All rights reserved. # # Redistribution and use of this script, with or without modification, is @@ -21,8 +21,9 @@ # ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -VERSION=2.6.8 -BUILD=${BUILD:-2} +PKGNAM=gimp +VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)} +BUILD=${BUILD:-3} # Automatically determine the architecture we're building on: if [ -z "$ARCH" ]; then @@ -51,6 +52,9 @@ elif [ "$ARCH" = "s390" ]; then elif [ "$ARCH" = "x86_64" ]; then SLKCFLAGS="-O2 -fPIC" LIBDIRSUFFIX="64" +else + SLKCFLAGS="-O2" + LIBDIRSUFFIX="" fi cd $TMP @@ -58,8 +62,6 @@ rm -rf gimp-$VERSION tar xvf $CWD/gimp-$VERSION.tar.?z* || exit 1 cd gimp-$VERSION || exit 1 -zcat $CWD/gimp.png14.diff.gz | patch -p1 --verbose || exit 1 - chown -R root:root . find . \ \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \ @@ -96,7 +98,7 @@ make install DESTDIR=$PKG || exit 1 mkdir -p $PKG/usr/doc/gimp-$VERSION cp -a \ - AUTHORS COPYING HACKING INSTALL LICENSE NEWS README* docs/Wilber* \ + AUTHORS COPYING* HACKING INSTALL LICENSE NEWS README* docs/Wilber* \ $PKG/usr/doc/gimp-$VERSION ( cd $PKG/usr/doc/gimp-$VERSION for i in \ diff --git a/source/xap/gimp/gimp.png14.diff b/source/xap/gimp/gimp.png14.diff deleted file mode 100644 index 5af06d6e..00000000 --- a/source/xap/gimp/gimp.png14.diff +++ /dev/null @@ -1,19 +0,0 @@ ---- ./plug-ins/file-ico/ico-load.c.orig 2009-07-20 15:20:51.000000000 -0500 -+++ ./plug-ins/file-ico/ico-load.c 2010-02-15 22:54:44.000000000 -0600 -@@ -287,14 +287,14 @@ - switch (color_type) - { - case PNG_COLOR_TYPE_GRAY: -- png_set_gray_1_2_4_to_8 (png_ptr); -+ png_set_expand_gray_1_2_4_to_8 (png_ptr); - if ( bit_depth == 16 ) - png_set_strip_16 (png_ptr); - png_set_gray_to_rgb (png_ptr); - png_set_add_alpha (png_ptr, 0xff, PNG_FILLER_AFTER); - break; - case PNG_COLOR_TYPE_GRAY_ALPHA: -- png_set_gray_1_2_4_to_8 (png_ptr); -+ png_set_expand_gray_1_2_4_to_8 (png_ptr); - if ( bit_depth == 16 ) - png_set_strip_16 (png_ptr); - png_set_gray_to_rgb (png_ptr); diff --git a/source/xap/gkrellm/gkrellm.SlackBuild b/source/xap/gkrellm/gkrellm.SlackBuild index f5243b75..e156f181 100755 --- a/source/xap/gkrellm/gkrellm.SlackBuild +++ b/source/xap/gkrellm/gkrellm.SlackBuild @@ -1,6 +1,6 @@ #!/bin/sh -# Copyright 2008, 2009, 2010 Patrick J. Volkerding, Sebeka, MN, USA +# Copyright 2008, 2009, 2010, 2011 Patrick J. Volkerding, Sebeka, MN, USA # All rights reserved. # # Redistribution and use of this script, with or without modification, is @@ -20,8 +20,8 @@ # OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF # ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -VERSION=2.3.4 -PKGVER=2.3.4 +VERSION=2.3.5 +PKGVER=2.3.5 BUILD=${BUILD:-1} # Automatically determine the architecture we're building on: diff --git a/source/xap/gnuchess/gnuchess.SlackBuild b/source/xap/gnuchess/gnuchess.SlackBuild index 99cb5c06..b27193dc 100755 --- a/source/xap/gnuchess/gnuchess.SlackBuild +++ b/source/xap/gnuchess/gnuchess.SlackBuild @@ -1,6 +1,6 @@ #!/bin/sh -# Copyright 2008, 2009, 2010 Patrick J. Volkerding, Sebeka, MN, USA +# Copyright 2008, 2009, 2010, 2011 Patrick J. Volkerding, Sebeka, MN, USA # All rights reserved. # # Redistribution and use of this script, with or without modification, is @@ -21,11 +21,11 @@ # ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -VERGNUCHESS=5.07 +VERGNUCHESS=5.08 VERSJENG=11.2 VEREBOARD=1.1.1 -VERXBOARD=4.4.2 -BUILD=${BUILD:-5} +VERXBOARD=4.5.1 +BUILD=${BUILD:-2} # Automatically determine the architecture we're building on: if [ -z "$ARCH" ]; then @@ -59,11 +59,8 @@ mkdir -p $TMP $PKG ### gnuchess cd $TMP rm -rf gnuchess-$VERGNUCHESS -tar xvf $CWD/gnuchess-$VERGNUCHESS.tar.bz2 || exit 1 +tar xvf $CWD/gnuchess-$VERGNUCHESS.tar.?z* || exit 1 cd gnuchess-$VERGNUCHESS || exit 1 -# make gnuchess compile with gcc4 -zcat $CWD/gnuchess.gcc4_fix.diff.gz | patch -p1 --verbose --backup --suffix=.orig || exit 1 -zcat $CWD/gnuchess.getline.glibc.diff.gz | patch -p1 --verbose --backup --suffix=.orig || exit 1 chown -R root:root . find . \ \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \ @@ -80,8 +77,8 @@ make install DESTDIR=$PKG || exit 1 mkdir -p $PKG/usr/doc/gnuchess-$VERGNUCHESS cp -a \ - doc/README \ - AUTHORS COPYING INSTALL NEWS TODO \ + doc/README* \ + AUTHORS COPYING* INSTALL NEWS TODO \ $PKG/usr/doc/gnuchess-$VERGNUCHESS ### Sjeng @@ -105,7 +102,7 @@ make install DESTDIR=$PKG || exit 1 mkdir -p $PKG/usr/doc/Sjeng-Free-$VERSJENG cp -a \ - AUTHORS BUGS COPYING NEWS README THANKS TODO \ + AUTHORS BUGS COPYING* NEWS README* THANKS TODO \ $PKG/usr/doc/Sjeng-Free-$VERSJENG ### eboard @@ -129,7 +126,7 @@ make install DESTDIR=$PKG || exit 1 mkdir -p $PKG/usr/doc/eboard-$VEREBOARD cp -a \ - AUTHORS COPYING README TODO Documentation/*.txt \ + AUTHORS COPYING* README* TODO Documentation/*.txt \ $PKG/usr/doc/eboard-$VEREBOARD ### XBoard @@ -146,9 +143,6 @@ find . \ # --infodir is fubar. #zcat $CWD/xboard.infodir.diff.gz | patch -p1 --verbose --backup --suffix=.orig || exit 1 -# Taken from Debian to fix CVE-2004-2552 -# FOR WHICH THERE IS NO ATTACK VECTOR!!! -#zcat $CWD/xboard.buffer_overflow_fix.diff.gz | patch -p1 --verbose --backup --suffix=.orig || exit 1 CFLAGS="$SLKCFLAGS" \ ./configure \ --prefix=/usr \ diff --git a/source/xap/gnuchess/gnuchess.SlackBuild.diff b/source/xap/gnuchess/gnuchess.SlackBuild.diff deleted file mode 100644 index 0112a9d2..00000000 --- a/source/xap/gnuchess/gnuchess.SlackBuild.diff +++ /dev/null @@ -1,89 +0,0 @@ ---- gnuchess.SlackBuild 2006-04-04 03:47:10.000000000 +0300 -+++ gnuchess.SlackBuild 2007-05-08 17:06:11.000000000 +0300 -@@ -4,10 +4,10 @@ - - VERGNUCHESS=5.07 - VERSJENG=11.2 --VEREBOARD=0.9.5 -+VEREBOARD=1.0.3 - VERXBOARD=4.2.7 - ARCH=${ARCH:-i486} --BUILD=${BUILD:-2} -+BUILD=${BUILD:-3} - - if [ "$ARCH" = "i386" ]; then - SLKCFLAGS="-O2 -march=i386 -mcpu=i686" -@@ -27,6 +27,8 @@ - rm -rf gnuchess-$VERGNUCHESS - tar xjvf $CWD/gnuchess-$VERGNUCHESS.tar.bz2 - cd gnuchess-$VERGNUCHESS -+# make gnuchess compile with gcc4 -+zcat $CWD/gnuchess.gcc4_fix.diff.gz | patch -p1 --verbose --backup --suffix=.orig - chown -R root:root . - find . -perm 664 -exec chmod 644 {} \; - find . -perm 600 -exec chmod 644 {} \; -@@ -93,33 +95,13 @@ - find . -perm 511 -exec chmod 755 {} \; - find . -perm 711 -exec chmod 755 {} \; - find . -perm 555 -exec chmod 755 {} \; --CFLAGS="$SLKCFLAGS" \ - ./configure \ -- --prefix=/usr -+ --prefix=/usr --extra-flags=`echo $SLKCFLAGS | sed -e "y/ /:/"` - make -j3 --#make install DESTDIR=$PKG --install -d $PKG/usr/bin --install -m 0755 eboard $PKG/usr/bin/eboard --install -m 0755 eboard-config $PKG/usr/bin/eboard-config --install -m 0755 eboard-addtheme $PKG/usr/bin/eboard-addtheme --install -d $PKG/usr/man/man1 --install -d $PKG/usr/man/man6 --install -m 0644 eboard.6 $PKG/usr/man/man6 --install -m 0644 eboard-addtheme.1 $PKG/usr/man/man1 --install -m 0644 eboard-config.1 $PKG/usr/man/man1 --install -d $PKG/usr/share/eboard --install -m 0644 classic.png $PKG/usr/share/eboard/classic.png --install -m 0644 ghouls.png $PKG/usr/share/eboard/ghouls.png --install -m 0644 plastic.png $PKG/usr/share/eboard/plastic.png --install -m 0644 eboard_themes.conf $PKG/usr/share/eboard/eboard_themes.conf --install -m 0644 NAG.en.txt $PKG/usr/share/eboard/NAG.en.txt --( cd multilang -- install -d $PKG/usr/share/eboard -- install -m 0644 eboard.cs.dict eboard.de.dict eboard.es.dict eboard.it.dict eboard.pt_BR.dict $PKG/usr/share/eboard --) -+make install DESTDIR=$PKG - mkdir -p $PKG/usr/doc/eboard-$VEREBOARD - cp -a \ -- AUTHORS COPYING README TODO \ -+ AUTHORS COPYING README TODO Documentation/*.txt \ - $PKG/usr/doc/eboard-$VEREBOARD - - ### XBoard -@@ -140,6 +122,8 @@ - find . -perm 555 -exec chmod 755 {} \; - # --infodir is fubar. - zcat $CWD/xboard.infodir.diff.gz | patch -p1 --verbose --backup --suffix=.orig -+# Taken from Debian to fix CVE-2004-2552 -+zcat $CWD/xboard.buffer_overflow_fix.diff.gz | patch -p1 --verbose --backup --suffix=.orig || exit 1 - CFLAGS="$SLKCFLAGS" \ - ./configure \ - --prefix=/usr \ -@@ -153,6 +137,7 @@ - install -c ./pxboard $PKG/usr/bin/pxboard - install -c -m 644 ./xboard.man $PKG/usr/man/man6/xboard.6 - install -c -m 644 ./zic2xpm.man $PKG/usr/man/man6/zic2xpm.6 -+mkdir -p $PKG/usr/info - install -c -m 644 xboard.info $PKG/usr/info/xboard.info - mkdir -p $PKG/usr/doc/xboard-$VERXBOARD - cp -a \ -@@ -165,8 +150,9 @@ - find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null - ) - gzip -9 $PKG/usr/man/man?/*.? -+gzip -9 $PKG/usr/info/*.info - mkdir -p $PKG/usr/share/pixmaps --cat $CWD/chess.png > $PKG/usr/share/pixmaps/chess.png -+cp $CWD/chess.png $PKG/usr/share/pixmaps/chess.png - mkdir -p $PKG/usr/share/applications - cat $CWD/eboard.desktop > $PKG/usr/share/applications/eboard.desktop - cat $CWD/xboard.desktop > $PKG/usr/share/applications/xboard.desktop diff --git a/source/xap/gnuchess/gnuchess.gcc4_fix.diff b/source/xap/gnuchess/gnuchess.gcc4_fix.diff deleted file mode 100644 index a6835194..00000000 --- a/source/xap/gnuchess/gnuchess.gcc4_fix.diff +++ /dev/null @@ -1,11 +0,0 @@ ---- gnuchess-5.07/src/input.c 2007-05-08 15:55:16.688003280 +0300 -+++ gnuchess-5.07/src/input.c 2007-05-08 15:55:29.238088685 +0300 -@@ -92,7 +92,7 @@ - fgets(inputstr, MAXSTR, stdin); - } - --static pthread_t input_thread; -+pthread_t input_thread; - - /* Mutex and condition variable for thread communication */ - diff --git a/source/xap/gnuchess/gnuchess.getline.glibc.diff b/source/xap/gnuchess/gnuchess.getline.glibc.diff deleted file mode 100644 index 51a45df1..00000000 --- a/source/xap/gnuchess/gnuchess.getline.glibc.diff +++ /dev/null @@ -1,39 +0,0 @@ ---- ./src/input.c.orig 2010-02-19 21:34:10.000000000 -0600 -+++ ./src/input.c 2010-02-19 21:36:33.000000000 -0600 -@@ -127,7 +127,7 @@ - (RealGameCnt+1)/2 + 1 ); - } - pthread_mutex_lock(&input_mutex); -- getline(prompt); -+ chess_getline(prompt); - input_status = INPUT_AVAILABLE; - pthread_cond_signal(&input_cond); - pthread_mutex_unlock(&input_mutex); -@@ -173,13 +173,13 @@ - { - #ifdef HAVE_LIBREADLINE - if (isatty(STDIN_FILENO)) { -- getline = getline_readline; -+ chess_getline = getline_readline; - using_history(); - } else { -- getline = getline_standard; -+ chess_getline = getline_standard; - } - #else -- getline = getline_standard; -+ chess_getline = getline_standard; - #endif - /* Start input thread */ - pthread_create(&input_thread, NULL, input_func, NULL); ---- ./src/common.h.orig 2003-06-30 06:28:38.000000000 -0500 -+++ ./src/common.h 2010-02-19 21:35:33.000000000 -0600 -@@ -745,7 +745,7 @@ - * Input routine, initialized to one of the specific - * input routines. The given argument is the prompt. - */ --void (*getline) (char *); -+void (*chess_getline) (char *); - - #define MAXSTR 128 - extern char inputstr[MAXSTR]; diff --git a/source/xap/gnuchess/xboard.desktop b/source/xap/gnuchess/xboard.desktop index 6336cb63..c1b2a2d3 100644 --- a/source/xap/gnuchess/xboard.desktop +++ b/source/xap/gnuchess/xboard.desktop @@ -3,7 +3,7 @@ Encoding=UTF-8 Name=XBoard GenericName=Chess Game Comment=A graphical chess engine frontend -Exec=xboard +Exec=xboard -fcp gnuchess Icon=/usr/share/pixmaps/chess.png Terminal=false Type=Application diff --git a/source/xap/gnuplot/gnuplot.SlackBuild b/source/xap/gnuplot/gnuplot.SlackBuild index 18033683..47cf5eb7 100755 --- a/source/xap/gnuplot/gnuplot.SlackBuild +++ b/source/xap/gnuplot/gnuplot.SlackBuild @@ -20,8 +20,8 @@ # OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF # ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -VERSION=4.2.6 +PKGNAM=gnuplot +VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)} BUILD=${BUILD:-1} # Automatically determine the architecture we're building on: @@ -113,12 +113,20 @@ fi mkdir -p $PKG/usr/doc/gnuplot-$VERSION cp -a \ - BUGS CodeStyle Copyright FAQ INSTALL NEWS PATCHLEVEL PGPKEYS PORTING \ + BUGS CodeStyle Copyright FAQ.bloat INSTALL NEWS PATCHLEVEL PGPKEYS PORTING \ README* TODO VERSION \ $PKG/usr/doc/gnuplot-$VERSION cp -a demo $PKG/usr/doc/gnuplot-$VERSION rm -f $PKG/usr/doc/gnuplot-$VERSION/demo/Make* +# If there's a ChangeLog, installing at least part of the recent history +# is useful, but don't let it get totally out of control: +if [ -r ChangeLog ]; then + DOCSDIR=$(echo $PKG/usr/doc/${PKGNAM}-$VERSION) + cat ChangeLog | head -n 1000 > $DOCSDIR/ChangeLog + touch -r ChangeLog $DOCSDIR/ChangeLog +fi + mkdir -p $PKG/install cat $CWD/slack-desc > $PKG/install/slack-desc diff --git a/source/xap/gucharmap/gucharmap.SlackBuild b/source/xap/gucharmap/gucharmap.SlackBuild index f9576662..13b249a9 100755 --- a/source/xap/gucharmap/gucharmap.SlackBuild +++ b/source/xap/gucharmap/gucharmap.SlackBuild @@ -76,7 +76,6 @@ CFLAGS="$SLKCFLAGS" \ --localstatedir=/var/lib \ --docdir=/usr/doc/gucharmap-$VERSION \ --enable-static=no \ - --enable-python-bindings \ --disable-gconf \ --disable-schemas-install \ --disable-scrollkeeper \ diff --git a/source/xap/gv/gv.SlackBuild b/source/xap/gv/gv.SlackBuild index b30eb321..1f300165 100755 --- a/source/xap/gv/gv.SlackBuild +++ b/source/xap/gv/gv.SlackBuild @@ -1,6 +1,6 @@ #!/bin/sh -# Copyright 2006, 2007, 2008, 2009, 2010 Patrick J. Volkerding, Sebeka, MN, USA +# Copyright 2006, 2007, 2008, 2009, 2010, 2011 Patrick J. Volkerding, Sebeka, MN, USA # All rights reserved. # # Redistribution and use of this script, with or without modification, is @@ -23,7 +23,7 @@ PKGNAM=gv VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)} -BUILD=${BUILD:-1} +BUILD=${BUILD:-2} # Automatically determine the architecture we're building on: if [ -z "$ARCH" ]; then @@ -58,6 +58,8 @@ rm -rf ${PKGNAM}-${VERSION} tar xvf $CWD/${PKGNAM}-$VERSION.tar.?z* || exit 1 cd ${PKGNAM}-$VERSION || exit 1 +zcat $CWD/gv.keysym.diff.gz | patch -p1 --verbose || exit 1 + # Make sure ownerships and permissions are sane: chown -R root:root . find . \ diff --git a/source/xap/gv/gv.keysym.diff b/source/xap/gv/gv.keysym.diff new file mode 100644 index 00000000..f2e0a7ca --- /dev/null +++ b/source/xap/gv/gv.keysym.diff @@ -0,0 +1,12 @@ +diff -ur a/src/gv_misc_res.dat b/src/gv_misc_res.dat +--- a/src/gv_misc_res.dat 2010-10-15 09:21:36.000000000 +0200 ++++ b/src/gv_misc_res.dat 2010-10-15 09:21:48.000000000 +0200 +@@ -476,7 +476,6 @@ + <Key>BackSpace: GV_Page(up,left-bottom,!page-1,bottom-rightedge)\n\ + <Key>Insert: GV_Page(page-5) \n\ + <Key>Delete: GV_Page(page+5) \n\ +- <Key>apLineDel: GV_Page(page+5) \n\ + <Key>Home: GV_Page(page=0) \n\ + <Key>End: GV_Page(page=99999) \n\ + <Key>Prior: GV_Page(page-1) \n\ + diff --git a/source/xap/gxine/gxine.SlackBuild b/source/xap/gxine/gxine.SlackBuild deleted file mode 100755 index d9b75d0b..00000000 --- a/source/xap/gxine/gxine.SlackBuild +++ /dev/null @@ -1,99 +0,0 @@ -#!/bin/sh - -# Copyright 2008, 2009 Patrick J. Volkerding, Sebeka, MN, USA -# All rights reserved. -# -# Redistribution and use of this script, with or without modification, is -# permitted provided that the following conditions are met: -# -# 1. Redistributions of this script must retain the above copyright -# notice, this list of conditions and the following disclaimer. -# -# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED -# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF -# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO -# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, -# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; -# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, -# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR -# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF -# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -VERSION=0.5.903 -ARCH=${ARCH:-x86_64} -BUILD=${BUILD:-2} - -NUMJOBS=${NUMJOBS:-" -j7 "} - -if [ "$ARCH" = "i486" ]; then - SLKCFLAGS="-O2 -march=i486 -mtune=i686" - LIBDIRSUFFIX="" -elif [ "$ARCH" = "s390" ]; then - SLKCFLAGS="-O2" - LIBDIRSUFFIX="" -elif [ "$ARCH" = "x86_64" ]; then - SLKCFLAGS="-O2 -fPIC" - LIBDIRSUFFIX="64" -fi - -CWD=$(pwd) -TMP=${TMP:-/tmp} -PKG=$TMP/package-gxine -rm -rf $PKG -mkdir -p $TMP $PKG - -cd $TMP -rm -rf gxine-$VERSION -tar xvf $CWD/gxine-$VERSION.tar.bz2 || exit 1 -cd gxine-$VERSION || exit 1 -chown -R root:root . -find . \ - \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \ - -exec chmod 755 {} \; -o \ - \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \ - -exec chmod 644 {} \; - -CFLAGS="$SLKCFLAGS" \ -./configure \ - --prefix=/usr \ - --libdir=/usr/lib${LIBDIRSUFFIX} \ - --sysconfdir=/etc \ - --localstatedir=/var/lib \ - --mandir=/usr/man \ - --disable-static \ - --with-browser-plugin \ - --build=$ARCH-slackware-linux - -make $NUMJOBS || make || exit 1 -make install DESTDIR=$PKG || exit 1 - -#zcat $CWD/gxine.desktop.gz > $PKG/usr/share/applications/gxine.desktop -#if [ ! -r $PKG/usr/share/pixmaps/gxine.png ]; then -# exit 1 -#fi - -# I'm sorry, but making this link was the worst suggestion I ever -# went along with. I'll continue to include it (for now), but having -# (buggy) gxine pop up without prompting all the time is ANNOYING!!! -#mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}/mozilla/plugins -#( cd $PKG/usr/lib${LIBDIRSUFFIX}/mozilla/plugins -# ln -sf /usr/lib${LIBDIRSUFFIX}/gxine/gxineplugin.so . -#) - -find $PKG | xargs file | grep -e "executable" -e "shared object" \ - | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null - -find $PKG/usr/man -type f -exec gzip -9 {} \; - -mkdir -p $PKG/usr/doc/gxine-$VERSION -cp -a \ - ABOUT-NLS AUTHORS COPYING* INSTALL NEWS README TODO \ - $PKG/usr/doc/gxine-$VERSION - -mkdir -p $PKG/install -cat $CWD/slack-desc > $PKG/install/slack-desc - -cd $PKG -/sbin/makepkg -l y -c n $TMP/gxine-$VERSION-$ARCH-$BUILD.txz - diff --git a/source/xap/gxine/gxine.desktop b/source/xap/gxine/gxine.desktop deleted file mode 100644 index 54e5e6c2..00000000 --- a/source/xap/gxine/gxine.desktop +++ /dev/null @@ -1,14 +0,0 @@ -[Desktop Entry] -Version=1.0 -Encoding=UTF-8 -Name=gxine -GenericName=Video Player -Comment=Play films and songs, or watch digital TV -Exec=gxine -MultipleArgs=true -Icon=/usr/share/pixmaps/gxine.png -Terminal=false -Type=Application -StartupNotify=true -Categories=GTK;Application;AudioVideo; -MimeType=video/mpeg;video/msvideo;video/quicktime;video/x-avi;video/x-ms-asf;video/x-ms-wmv;video/x-msvideo;application/x-ogg;application/ogg;audio/x-mp3;audio/x-mpeg;video/x-mpeg;video/x-fli;audio/x-wav;audio/x-mpegurl;audio/x-scpls;audio/x-ms-asx;application/vnd.rn-realmedia;audio/x-real-audio;audio/x-pn-realaudio;application/x-flac;audio/x-flac;application/x-shockwave-flash;audio/mpeg;audio/x-ms-asf;audio/x-m4a;audio/x-ms-wax;video/dv;video/x-anim;video/x-flc;misc/ultravox;application/x-matroska;audio/vnd.rn-realaudio;audio/x-pn-aiff;audio/x-pn-au;audio/x-pn-wav;audio/x-pn-windows-acm;image/vnd.rn-realpix;video/vnd.rn-realvideo diff --git a/source/xap/gxine/slack-desc b/source/xap/gxine/slack-desc deleted file mode 100644 index 18f7cef4..00000000 --- a/source/xap/gxine/slack-desc +++ /dev/null @@ -1,19 +0,0 @@ -# HOW TO EDIT THIS FILE: -# The "handy ruler" below makes it easier to edit a package description. Line -# up the first '|' above the ':' following the base package name, and the '|' -# on the right side marks the last column you can put a character in. You must -# make exactly 11 lines for the formatting to be correct. It's also -# customary to leave one space after the ':'. - - |-----handy-ruler------------------------------------------------------| -gxine: gxine (GTK+ media player based on Xine) -gxine: -gxine: Xine is a free multimedia player. It plays back CDs, DVDs, and VCDs, -gxine: multimedia files, and multimedia streamed over a network. -gxine: -gxine: The gxine package contains a GTK+ graphical user interface for the -gxine: Xine multimedia player. -gxine: -gxine: -gxine: -gxine: diff --git a/source/xap/imagemagick/imagemagick.SlackBuild b/source/xap/imagemagick/imagemagick.SlackBuild index eb285daf..565d3a0a 100755 --- a/source/xap/imagemagick/imagemagick.SlackBuild +++ b/source/xap/imagemagick/imagemagick.SlackBuild @@ -1,6 +1,6 @@ #!/bin/sh -# Copyright 2008, 2009, 2010 Patrick J. Volkerding, Sebeka, MN, USA +# Copyright 2008, 2009, 2010, 2011 Patrick J. Volkerding, Sebeka, MN, USA # All rights reserved. # # Redistribution and use of this script, with or without modification, is @@ -29,14 +29,14 @@ BUILD=${BUILD:-1} # This is a bit messy, so we'll explain it well. :-) # This is the base version number, which is needed to cd into the source tree -BASEVER=6.5.9-6 +BASEVER=6.6.6-10 # This is the version number used in the source tarball filename -FILEVER=6.5.9-6 +FILEVER=6.6.6-10 # This is the version number used in the package, where a version number cannot # contain a '-' -PKGVER=6.5.9_6 +PKGVER=6.6.6_10 # Automatically determine the architecture we're building on: if [ -z "$ARCH" ]; then @@ -108,7 +108,7 @@ CXXFLAGS="$SLKCFLAGS" \ --enable-static=no \ --enable-shared \ --with-perl \ - --build=$ARCH-slackware-linux + --build=$ARCH-slackware-linux || exit 1 make $NUMJOBS INSTALLDIRS=vendor || make INSTALLDIRS=vendor || exit 1 make install INSTALLDIRS=vendor DESTDIR=$PKG || exit 1 diff --git a/source/xap/mozilla-firefox/mozilla-firefox.SlackBuild b/source/xap/mozilla-firefox/mozilla-firefox.SlackBuild index 4de24038..812a7b16 100755 --- a/source/xap/mozilla-firefox/mozilla-firefox.SlackBuild +++ b/source/xap/mozilla-firefox/mozilla-firefox.SlackBuild @@ -1,6 +1,6 @@ #!/bin/sh -# Copyright 2008, 2009, 2010 Patrick J. Volkerding, Sebeka, Minnesota, USA +# Copyright 2008, 2009, 2010, 2011 Patrick J. Volkerding, Sebeka, Minnesota, USA # All rights reserved. # # Redistribution and use of this script, with or without modification, is @@ -23,9 +23,6 @@ # Thanks to the folks at the Mozilla Foundation for permission to # distribute this, and for all the great work! :-) -# This is a source build script. Unfortunately, there is no official -# binary tarball available for x86_64 - VERSION=$(basename $(ls firefox-*.tar.bz2 | cut -d - -f 2 | rev | cut -f 3- -d . | rev) .source) # Automatically determine the architecture we're building on: if [ -z "$ARCH" ]; then @@ -36,9 +33,10 @@ if [ -z "$ARCH" ]; then *) export ARCH=$( uname -m ) ;; esac fi -BUILD=${BUILD:-1} +BUILD=${BUILD:-2} -MOZVERS=${MOZVERS:-1.9.2} +MOZVERS=${MOZVERS:-2.0} +RELEASEVER=$(echo $VERSION | cut -f 1 -d r) NUMJOBS=${NUMJOBS:-" -j7 "} @@ -103,26 +101,28 @@ export CXXFLAGS="$SLKCFLAGS" && --enable-official-branding \ --prefix=/usr \ --libdir=/usr/lib${LIBDIRSUFFIX} \ - --with-default-mozilla-five-home=/usr/lib${LIBDIRSUFFIX}/firefox-$VERSION \ + --with-default-mozilla-five-home=/usr/lib${LIBDIRSUFFIX}/firefox-$RELEASEVER \ --with-system-zlib \ --enable-application=browser \ --enable-default-toolkit=cairo-gtk2 \ + --enable-system-cairo \ + --enable-startup-notification \ --enable-crypto \ --enable-svg \ --enable-canvas \ + --enable-logging \ --enable-xft \ + --enable-webm \ --enable-xinerama \ --enable-optimize \ --enable-reorder \ --enable-strip \ - --enable-system-cairo \ --enable-cpp-rtti \ --enable-single-profile \ --disable-ldap \ --disable-accessibility \ --disable-debug \ --disable-tests \ - --disable-logging \ --disable-pedantic \ --disable-installer \ --disable-mailnews \ @@ -136,14 +136,16 @@ make MOZ_MAKE_FLAGS="$NUMJOBS" || exit 1 make install DESTDIR=$PKG || exit 1 # We don't need these (just symlinks anyway): -rm -rf $PKG/usr/lib${LIBDIRSUFFIX}/firefox-devel-$VERSION +rm -rf $PKG/usr/lib${LIBDIRSUFFIX}/firefox-devel-$RELEASEVER # Nor these: rm -rf $PKG/usr/include -( cd $PKG/usr/lib${LIBDIRSUFFIX}/firefox-$VERSION +( cd $PKG/usr/lib${LIBDIRSUFFIX}/firefox-$RELEASEVER #mv defaults/profile/mimeTypes.rdf defaults/profile/mimeTypes.rdf.orig || exit 1 - zcat $CWD/mimeTypes.rdf > defaults/profile/mimeTypes.rdf || exit 1 + if [ -d defaults/profile ]; then + zcat $CWD/mimeTypes.rdf > defaults/profile/mimeTypes.rdf || exit 1 + fi zcat $CWD/firefox.moz_plugin_path.diff.gz \ | sed -e "s#usr/lib#usr/lib${LIBDIRSUFFIX}#g" \ | patch -p1 --verbose --backup --suffix=.orig || exit 1 @@ -160,7 +162,7 @@ cat $CWD/firefox.png > $PKG/usr/share/pixmaps/firefox.png # These files/directories are usually created if Firefox is run as root, # which on many systems might (and possibly should) be never. Therefore, if we # don't see them we'll put stubs in place to prevent startup errors. -( cd $PKG/usr/lib${LIBDIRSUFFIX}/firefox-$VERSION +( cd $PKG/usr/lib${LIBDIRSUFFIX}/firefox-$RELEASEVER if [ -d extensions/talkback\@mozilla.org ]; then if [ ! -r extensions/talkback\@mozilla.org/chrome.manifest ]; then echo > extensions/talkback\@mozilla.org/chrome.manifest @@ -172,17 +174,17 @@ cat $CWD/firefox.png > $PKG/usr/share/pixmaps/firefox.png ) # Need some default icons in the right place: -mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}/firefox-$VERSION/chrome/icons/default +mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}/firefox-$RELEASEVER/chrome/icons/default install -m 644 other-licenses/branding/firefox/default16.png \ - $PKG/usr/lib${LIBDIRSUFFIX}/firefox-$VERSION/icons/ + $PKG/usr/lib${LIBDIRSUFFIX}/firefox-$RELEASEVER/icons/ install -m 644 other-licenses/branding/firefox/default16.png \ - $PKG/usr/lib${LIBDIRSUFFIX}/firefox-$VERSION/chrome/icons/default/ -( cd $PKG/usr/lib${LIBDIRSUFFIX}/firefox-$VERSION + $PKG/usr/lib${LIBDIRSUFFIX}/firefox-$RELEASEVER/chrome/icons/default/ +( cd $PKG/usr/lib${LIBDIRSUFFIX}/firefox-$RELEASEVER install -m 644 icons/{default,mozicon50}.xpm chrome/icons/default/ ) # Copy over the LICENSE -install -p -c -m 644 LICENSE $PKG/usr/lib${LIBDIRSUFFIX}/firefox-$VERSION/ +install -p -c -m 644 LICENSE $PKG/usr/lib${LIBDIRSUFFIX}/firefox-$RELEASEVER/ mkdir $PKG/install cat $CWD/slack-desc > $PKG/install/slack-desc diff --git a/source/xap/mozilla-thunderbird/mozilla-thunderbird.SlackBuild b/source/xap/mozilla-thunderbird/mozilla-thunderbird.SlackBuild index 0a521dd7..d36fe937 100755 --- a/source/xap/mozilla-thunderbird/mozilla-thunderbird.SlackBuild +++ b/source/xap/mozilla-thunderbird/mozilla-thunderbird.SlackBuild @@ -1,6 +1,6 @@ #!/bin/sh -# Copyright 2008, 2009, 2010 Patrick J. Volkerding, Sebeka, Minnesota, USA +# Copyright 2008, 2009, 2010, 2011 Patrick J. Volkerding, Sebeka, Minnesota, USA # All rights reserved. # # Redistribution and use of this script, with or without modification, is @@ -23,10 +23,8 @@ # Thanks to the folks at the Mozilla Foundation for permission to # distribute this, and for all the great work! :-) -# This is a source build script. Unfortunately, there is no official -# binary tarball available for x86_64 - VERSION=$(basename $(ls thunderbird-*.tar.bz2 | cut -d - -f 2 | rev | cut -f 3- -d . | rev) .source) +BUILD=${BUILD:-2} # Automatically determine the architecture we're building on: if [ -z "$ARCH" ]; then @@ -37,9 +35,8 @@ if [ -z "$ARCH" ]; then *) export ARCH=$( uname -m ) ;; esac fi -BUILD=${BUILD:-1} -MOZVERS=${MOZVERS:-1.9.1} +MOZVERS=${MOZVERS:-1.9.2} NUMJOBS=${NUMJOBS:-" -j7 "} @@ -103,11 +100,13 @@ export CXXFLAGS="$SLKCFLAGS" && --with-system-zlib \ --enable-application=mail \ --enable-default-toolkit=cairo-gtk2 \ + --enable-startup-notification \ --enable-crypto \ --enable-svg \ --enable-canvas \ --enable-xft \ --enable-xinerama \ + --enable-ldap \ --enable-optimize \ --enable-reorder \ --enable-static \ @@ -115,7 +114,6 @@ export CXXFLAGS="$SLKCFLAGS" && --enable-system-cairo \ --enable-cpp-rtti \ --enable-single-profile \ - --disable-ldap \ --disable-accessibility \ --disable-debug \ --disable-tests \ diff --git a/source/xap/pan/pan.SlackBuild b/source/xap/pan/pan.SlackBuild index 4bfbcf7f..0aab423c 100755 --- a/source/xap/pan/pan.SlackBuild +++ b/source/xap/pan/pan.SlackBuild @@ -1,6 +1,6 @@ #!/bin/sh -# Copyright 2006, 2007, 2008, 2009, 2010 Patrick J. Volkerding, Sebeka, MN, USA +# Copyright 2006, 2007, 2008, 2009, 2010, 2011 Patrick J. Volkerding, Sebeka, MN, USA # All rights reserved. # # Redistribution and use of this script, with or without modification, is @@ -23,7 +23,7 @@ PKGNAM=pan VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | cut -d - -f 2 | rev | cut -f 3- -d . | rev)} -BUILD=${BUILD:-2} +BUILD=${BUILD:-1} # Automatically determine the architecture we're building on: if [ -z "$ARCH" ]; then @@ -56,12 +56,9 @@ mkdir -p $TMP $PKG cd $TMP rm -rf ${PKGNAM}-${VERSION} -tar xvf $CWD/${PKGNAM}-$VERSION.tar.bz2 || exit 1 +tar xvf $CWD/${PKGNAM}-$VERSION.tar.?z* || exit 1 cd ${PKGNAM}-$VERSION || exit 1 -zcat $CWD/pan.gmime2.4.diff.gz | patch -p1 || exit 1 -zcat $CWD/pan.gcc44.diff.gz | patch -p1 || exit 1 - # Make sure ownerships and permissions are sane: chown -R root:root . find . \ @@ -115,8 +112,18 @@ fi # Add a documentation directory: mkdir -p $PKG/usr/doc/${PKGNAM}-$VERSION cp -a \ - AUTHORS COPYING* INSTALL NEWS README TODO \ + AUTHORS COPYING* NEWS README* TODO \ $PKG/usr/doc/${PKGNAM}-$VERSION +# junk removal +rm -f $PKG/usr/doc/${PKGNAM}-$VERSION/{README.mingw,README.windows*} + +# If there's a ChangeLog, installing at least part of the recent history +# is useful, but don't let it get totally out of control: +if [ -r ChangeLog ]; then + DOCSDIR=$(echo $PKG/usr/doc/${PKGNAM}-$VERSION) + cat ChangeLog | head -n 1000 > $DOCSDIR/ChangeLog + touch -r ChangeLog $DOCSDIR/ChangeLog +fi mkdir -p $PKG/install #zcat $CWD/doinst.sh.gz > $PKG/install/doinst.sh diff --git a/source/xap/pan/pan.gcc44.diff b/source/xap/pan/pan.gcc44.diff deleted file mode 100644 index 22df125f..00000000 --- a/source/xap/pan/pan.gcc44.diff +++ /dev/null @@ -1,50 +0,0 @@ ---- ./pan/usenet-utils/numbers.cc.orig 2008-07-04 10:01:53.000000000 -0500 -+++ ./pan/usenet-utils/numbers.cc 2010-02-03 18:06:16.000000000 -0600 -@@ -19,6 +19,7 @@ - - #include <config.h> - #include <cctype> -+#include <cstdio> - #include <pan/general/string-view.h> - #include "numbers.h" - #include <algorithm> ---- ./pan/tasks/nntp.cc.orig 2008-07-05 14:16:06.000000000 -0500 -+++ ./pan/tasks/nntp.cc 2010-02-03 18:07:19.000000000 -0600 -@@ -20,6 +20,7 @@ - #include <config.h> - #include <cassert> - #include <cstdarg> -+#include <cstdio> - #include <cstdlib> // abort, atoi, strtoul - extern "C" { - #include <glib.h> ---- ./pan/tasks/nntp-pool.cc.orig 2008-07-05 01:39:27.000000000 -0500 -+++ ./pan/tasks/nntp-pool.cc 2010-02-03 18:07:55.000000000 -0600 -@@ -19,6 +19,7 @@ - - #include <config.h> - #include <ctime> -+#include <cstdio> - #include <glib/gi18n.h> - #include <pan/general/debug.h> - #include <pan/general/log.h> ---- ./pan/general/progress.cc.orig 2007-08-01 12:00:01.000000000 -0500 -+++ ./pan/general/progress.cc 2010-02-03 18:05:38.000000000 -0600 -@@ -19,6 +19,7 @@ - - #include <config.h> - #include <cstdarg> -+#include <cstdio> - #include "progress.h" - #include "string-view.h" - ---- ./pan/general/log.cc.orig 2007-08-01 12:00:01.000000000 -0500 -+++ ./pan/general/log.cc 2010-02-03 18:05:19.000000000 -0600 -@@ -20,6 +20,7 @@ - #include <config.h> - #include <iostream> - #include <cstdarg> -+#include <cstdio> - #include "log.h" - - using namespace pan; diff --git a/source/xap/pan/pan.gmime2.4.diff b/source/xap/pan/pan.gmime2.4.diff deleted file mode 100644 index 4816ea6c..00000000 --- a/source/xap/pan/pan.gmime2.4.diff +++ /dev/null @@ -1,1271 +0,0 @@ -diff -ru pan-0.133.orig/configure pan-0.133/configure ---- pan-0.133.orig/configure 2008-07-29 19:02:08.000000000 -0700 -+++ pan-0.133/configure 2009-09-12 14:58:05.000000000 -0700 -@@ -2377,7 +2377,7 @@ - - PCRE_REQUIRED=5.0 - GLIB_REQUIRED=2.4.0 --GMIME_REQUIRED=2.1.9 -+GMIME_REQUIRED=2.3.5 - GTK_REQUIRED=2.4.0 - GTKSPELL_REQUIRED=2.0.7 - -@@ -7957,12 +7957,12 @@ - pkg_cv_GMIME_CFLAGS="$GMIME_CFLAGS" - elif test -n "$PKG_CONFIG"; then - if test -n "$PKG_CONFIG" && \ -- { (echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"gmime-2.0 >= \$GMIME_REQUIRED\"") >&5 -- ($PKG_CONFIG --exists --print-errors "gmime-2.0 >= $GMIME_REQUIRED") 2>&5 -+ { (echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"gmime-2.4 >= \$GMIME_REQUIRED\"") >&5 -+ ($PKG_CONFIG --exists --print-errors "gmime-2.4 >= $GMIME_REQUIRED") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; then -- pkg_cv_GMIME_CFLAGS=`$PKG_CONFIG --cflags "gmime-2.0 >= $GMIME_REQUIRED" 2>/dev/null` -+ pkg_cv_GMIME_CFLAGS=`$PKG_CONFIG --cflags "gmime-2.4 >= $GMIME_REQUIRED" 2>/dev/null` - else - pkg_failed=yes - fi -@@ -7973,12 +7973,12 @@ - pkg_cv_GMIME_LIBS="$GMIME_LIBS" - elif test -n "$PKG_CONFIG"; then - if test -n "$PKG_CONFIG" && \ -- { (echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"gmime-2.0 >= \$GMIME_REQUIRED\"") >&5 -- ($PKG_CONFIG --exists --print-errors "gmime-2.0 >= $GMIME_REQUIRED") 2>&5 -+ { (echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"gmime-2.4 >= \$GMIME_REQUIRED\"") >&5 -+ ($PKG_CONFIG --exists --print-errors "gmime-2.4 >= $GMIME_REQUIRED") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; then -- pkg_cv_GMIME_LIBS=`$PKG_CONFIG --libs "gmime-2.0 >= $GMIME_REQUIRED" 2>/dev/null` -+ pkg_cv_GMIME_LIBS=`$PKG_CONFIG --libs "gmime-2.4 >= $GMIME_REQUIRED" 2>/dev/null` - else - pkg_failed=yes - fi -@@ -7996,14 +7996,14 @@ - _pkg_short_errors_supported=no - fi - if test $_pkg_short_errors_supported = yes; then -- GMIME_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors "gmime-2.0 >= $GMIME_REQUIRED" 2>&1` -+ GMIME_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors "gmime-2.4 >= $GMIME_REQUIRED" 2>&1` - else -- GMIME_PKG_ERRORS=`$PKG_CONFIG --print-errors "gmime-2.0 >= $GMIME_REQUIRED" 2>&1` -+ GMIME_PKG_ERRORS=`$PKG_CONFIG --print-errors "gmime-2.4 >= $GMIME_REQUIRED" 2>&1` - fi - # Put the nasty error message in config.log where it belongs - echo "$GMIME_PKG_ERRORS" >&5 - -- { { echo "$as_me:$LINENO: error: Package requirements (gmime-2.0 >= $GMIME_REQUIRED) were not met: -+ { { echo "$as_me:$LINENO: error: Package requirements (gmime-2.4 >= $GMIME_REQUIRED) were not met: - - $GMIME_PKG_ERRORS - -@@ -8014,7 +8014,7 @@ - and GMIME_LIBS to avoid the need to call pkg-config. - See the pkg-config man page for more details. - " >&5 --echo "$as_me: error: Package requirements (gmime-2.0 >= $GMIME_REQUIRED) were not met: -+echo "$as_me: error: Package requirements (gmime-2.4 >= $GMIME_REQUIRED) were not met: - - $GMIME_PKG_ERRORS - -diff -ru pan-0.133.orig/configure.in pan-0.133/configure.in ---- pan-0.133.orig/configure.in 2008-07-29 19:00:01.000000000 -0700 -+++ pan-0.133/configure.in 2009-09-12 14:52:37.000000000 -0700 -@@ -18,7 +18,7 @@ - - PCRE_REQUIRED=5.0 - GLIB_REQUIRED=2.4.0 --GMIME_REQUIRED=2.1.9 -+GMIME_REQUIRED=2.3.5 - GTK_REQUIRED=2.4.0 - GTKSPELL_REQUIRED=2.0.7 - AC_SUBST(PCRE_REQUIRED) -@@ -50,7 +50,7 @@ - - PKG_CHECK_MODULES(PCRE, libpcre >= $PCRE_REQUIRED) - AM_PATH_GLIB_2_0($GLIB_REQUIRED,,exit 1,gobject gmodule gthread) --PKG_CHECK_MODULES(GMIME, gmime-2.0 >= $GMIME_REQUIRED) -+PKG_CHECK_MODULES(GMIME, gmime-2.4 >= $GMIME_REQUIRED) - AM_PATH_GTK_2_0($GTK_REQUIRED,,exit 1,gthread) - - ---- pan-0.133.orig/pan/general/utf8-utils.cc 2008-07-04 23:13:14.000000000 -0700 -+++ pan-0.133/pan/general/utf8-utils.cc 2009-09-12 14:38:13.000000000 -0700 -@@ -136,7 +136,7 @@ - { - std::string s = content_to_utf8 (header, fallback_charset1, fallback_charset2); - if (header.strstr ("=?")) { -- char * decoded (g_mime_utils_8bit_header_decode ((const guchar*) s.c_str())); -+ char * decoded (g_mime_utils_header_decode_text (s.c_str())); - s = clean_utf8 (decoded); - g_free (decoded); - } -@@ -147,15 +147,26 @@ - pan :: mime_part_to_utf8 (GMimePart * part, - const char * fallback_charset) - { -+ GMimeDataWrapper *content; -+ GMimeStream *stream; -+ const char *charset; -+ GByteArray *buffer; - std::string ret; - - g_return_val_if_fail (GMIME_IS_PART(part), ret); - -- size_t content_len (0); -- const char * specified_charset (g_mime_object_get_content_type_parameter (GMIME_OBJECT (part), "charset")); -- const char * content = g_mime_part_get_content (part, &content_len); -- if (content && content_len) -- ret = content_to_utf8 (StringView (content, content_len), specified_charset, fallback_charset); -+ charset = g_mime_object_get_content_type_parameter (GMIME_OBJECT (part), "charset"); -+ content = g_mime_part_get_content_object (part); -+ -+ stream = g_mime_stream_mem_new (); -+ g_mime_data_wrapper_write_to_stream (content, stream); -+//g_object_unref(content); //SKG gmime 2.4 don't unref returned data wrapper -+ -+ buffer = ((GMimeStreamMem *) stream)->buffer; -+ -+ ret = content_to_utf8 (StringView ((const char *) buffer->data, buffer->len), charset, fallback_charset); -+ -+ g_object_unref (stream); - - return ret; - } -diff -ru pan-0.133.orig/pan/gui/body-pane.cc pan-0.133/pan/gui/body-pane.cc ---- pan-0.133.orig/pan/gui/body-pane.cc 2008-07-06 07:20:54.000000000 -0700 -+++ pan-0.133/pan/gui/body-pane.cc 2009-09-12 14:41:46.000000000 -0700 -@@ -837,7 +837,7 @@ - } - - g_object_unref (mem_stream); -- g_object_unref (wrapper); -+ //g_object_unref (wrapper); //SKG gmime 2.4 don't unref returned data wrapper - } - - // flush the loader -@@ -874,7 +874,7 @@ - return; - - GMimePart * part = GMIME_PART (obj); -- const GMimeContentType * type = g_mime_object_get_content_type (GMIME_OBJECT (part)); -+ GMimeContentType * type = g_mime_object_get_content_type (GMIME_OBJECT (part)); - - // decide whether or not this part is a picture - bool is_image (g_mime_content_type_is_type (type, "image", "*")); -@@ -952,11 +952,11 @@ - GtkTextIter iter; - gtk_text_buffer_get_end_iter (_buffer, &iter); - gtk_text_buffer_insert (_buffer, &iter, pch, -1); -- g_free (pch); -+// g_free (pch); //SKG don't unref returned const char * - } - } - void --BodyPane :: foreach_part_cb (GMimeObject* o, gpointer self) -+BodyPane :: foreach_part_cb (GMimeObject* /*parent*/, GMimeObject* o, gpointer self) - { - if (GMIME_IS_MULTIPART (o)) - g_mime_multipart_foreach (GMIME_MULTIPART (o), foreach_part_cb, self); -@@ -978,7 +978,7 @@ - const char * key, - const char * fallback_charset) - { -- const char * val (message ? g_mime_message_get_header (message, key) : ""); -+ const char * val (message ? g_mime_object_get_header ((GMimeObject *) message, key) : ""); - const std::string utf8_val (header_to_utf8 (val, fallback_charset)); - char * e (0); - if (strcmp (key, "From")) -@@ -1015,7 +1015,7 @@ - const char * key, - const char * fallback_charset) - { -- const char * val (msg ? g_mime_message_get_header (msg, key) : ""); -+ const char * val (msg ? g_mime_object_get_header ((GMimeObject *) msg, key) : ""); - return add_header_line (s, key_i18n, key, val, fallback_charset); - } - } -@@ -1037,19 +1037,19 @@ - - // conditional headers... - if (message) { -- const StringView newsgroups (g_mime_message_get_header (message, "Newsgroups")); -+ const StringView newsgroups (g_mime_object_get_header ((GMimeObject *) message, "Newsgroups")); - if (newsgroups.strchr(',')) { - l = add_header_line (s, message, _("Newsgroups"), "Newsgroups", fallback_charset); - w = std::max (w, l); - } -- const StringView followup_to (g_mime_message_get_header (message, "Followup-To")); -+ const StringView followup_to (g_mime_object_get_header ((GMimeObject *) message, "Followup-To")); - if (!followup_to.empty() && (followup_to!=newsgroups)) { - l = add_header_line (s, message, _("Followup-To"), "Followup-To", fallback_charset); - w = std::max (w, l); - } -- const StringView reply_to (g_mime_message_get_header (message, "Reply-To")); -+ const StringView reply_to (g_mime_object_get_header ((GMimeObject *) message, "Reply-To")); - if (!reply_to.empty()) { -- const StringView from (g_mime_message_get_header (message, "From")); -+ const StringView from (g_mime_object_get_header ((GMimeObject *) message, "From")); - StringView f_addr, f_name, rt_addr, rt_name; - GNKSA :: do_check_from (from, f_addr, f_name, false); - GNKSA :: do_check_from (reply_to, rt_addr, rt_name, false); -@@ -1070,7 +1070,7 @@ - - // set the x-face... - GdkPixbuf * pixbuf (0); -- const char * pch = message ? g_mime_message_get_header (message, "X-Face") : 0; -+ const char * pch = message ? g_mime_object_get_header ((GMimeObject *) message, "X-Face") : 0; - if (pch && _xface->window) - pixbuf = pan_gdk_pixbuf_create_from_x_face (gtk_widget_get_colormap(_xface), _xface->window, pch); - gtk_image_set_from_pixbuf (GTK_IMAGE(_xface), pixbuf); -@@ -1101,7 +1101,7 @@ - // maybe add the headers - const bool do_show_headers (_prefs.get_flag ("show-all-headers", false)); - if (message && do_show_headers) { -- char * headers (g_mime_message_get_headers (message)); -+ char * headers (g_mime_object_get_headers ((GMimeObject *) message)); - GtkTextIter end; - gtk_text_buffer_get_end_iter (_buffer, &end); - StringView line, v(headers); -@@ -1119,7 +1119,7 @@ - - // set the text buffer... - if (message) -- g_mime_message_foreach_part (message, foreach_part_cb, this); -+ g_mime_message_foreach (message, foreach_part_cb, this); - - // if there was a picture, scroll to it. - // otherwise scroll to the top of the body. -@@ -1514,7 +1514,7 @@ - const char * fallback_charset_1, - const char * fallback_charset_2) - { -- const StringView v (g_mime_message_get_header (msg, key)); -+ const StringView v (g_mime_object_get_header ((GMimeObject *) msg, key)); - std::string s; - if (!v.empty()) - s = header_to_utf8 (v, fallback_charset_1, fallback_charset_2); -@@ -1527,7 +1527,7 @@ - std::string body; - }; - -- void get_utf8_body_foreach_part (GMimeObject *o, gpointer user_data) -+ void get_utf8_body_foreach_part (GMimeObject * /*parent*/, GMimeObject *o, gpointer user_data) - { - if (GMIME_IS_MULTIPART(o)) - { -@@ -1538,7 +1538,7 @@ - else - { - GMimePart * part = GMIME_PART (o); -- const GMimeContentType * type = g_mime_object_get_content_type (o); -+ GMimeContentType * type = g_mime_object_get_content_type (o); - const bool is_text (g_mime_content_type_is_type (type, "text", "*")); - if (is_text) - { -@@ -1555,7 +1555,7 @@ - if (fallback_charset) - tmp.fallback_charset = fallback_charset; - if (source) -- g_mime_message_foreach_part (source, get_utf8_body_foreach_part, &tmp); -+ g_mime_message_foreach (source, get_utf8_body_foreach_part, &tmp); - return tmp.body; - } - } -@@ -1571,7 +1571,7 @@ - - // fallback character encodings - const char * group_charset (_charset.c_str()); -- const GMimeContentType * type (g_mime_object_get_content_type (GMIME_OBJECT(_message))); -+ GMimeContentType * type (g_mime_object_get_content_type (GMIME_OBJECT(_message))); - const char * message_charset (type ? g_mime_content_type_get_parameter (type, "charset") : 0); - - /// -@@ -1585,14 +1585,14 @@ - const std::string reply_to (get_header (_message, "Reply-To", message_charset, group_charset)); - if (is_reply || fup_to=="poster") { - const std::string& to (reply_to.empty() ? from : reply_to); -- g_mime_message_add_recipients_from_string (msg, (char*)GMIME_RECIPIENT_TYPE_TO, to.c_str()); -+ g_mime_message_add_recipients_from_string (msg, GMIME_RECIPIENT_TYPE_TO, to.c_str()); - } else { - const std::string& groups (fup_to.empty() ? newsgroups : fup_to); -- g_mime_message_add_header (msg, "Newsgroups", groups.c_str()); -+ g_mime_object_append_header ((GMimeObject *) msg, "Newsgroups", groups.c_str()); - } - - // Subject: -- StringView v = g_mime_message_get_header (_message, "Subject"); -+ StringView v = g_mime_object_get_header ((GMimeObject *) _message, "Subject"); - std::string h = header_to_utf8 (v, message_charset, group_charset); - std::string val (normalize_subject_re (h)); - if (val.find ("Re:") != 0) // add "Re: " if we don't have one -@@ -1601,22 +1601,22 @@ - - // attribution lines - -- const char * cpch = g_mime_message_get_header (_message, "From"); -+ const char * cpch = g_mime_object_get_header ((GMimeObject *) _message, "From"); - h = header_to_utf8 (cpch, message_charset, group_charset); -- g_mime_message_add_header (msg, "X-Draft-Attribution-Author", h.c_str()); -+ g_mime_object_append_header ((GMimeObject *) msg, "X-Draft-Attribution-Author", h.c_str()); - - cpch = g_mime_message_get_message_id (_message); - h = header_to_utf8 (cpch, message_charset, group_charset); -- g_mime_message_add_header (msg, "X-Draft-Attribution-Id", h.c_str()); -+ g_mime_object_append_header ((GMimeObject *) msg, "X-Draft-Attribution-Id", h.c_str()); - -- char * tmp = g_mime_message_get_date_string (_message); -+ char * tmp = g_mime_message_get_date_as_string (_message); - h = header_to_utf8 (tmp, message_charset, group_charset); -- g_mime_message_add_header (msg, "X-Draft-Attribution-Date", h.c_str()); -+ g_mime_object_append_header ((GMimeObject *) msg, "X-Draft-Attribution-Date", h.c_str()); - g_free (tmp); - - // references - const char * header = "References"; -- v = g_mime_message_get_header (_message, header); -+ v = g_mime_object_get_header ((GMimeObject *) _message, header); - val.assign (v.str, v.len); - if (!val.empty()) - val += ' '; -@@ -1624,7 +1624,7 @@ - val += g_mime_message_get_message_id (_message); - val += ">"; - val = GNKSA :: trim_references (val); -- g_mime_message_add_header (msg, header, val.c_str()); -+ g_mime_object_append_header ((GMimeObject *) msg, header, val.c_str()); - - /// - /// BODY -@@ -1660,17 +1660,17 @@ - // set the clone's content object with our modified body - GMimeStream * stream = g_mime_stream_mem_new (); - g_mime_stream_write_string (stream, s.c_str()); -- GMimeDataWrapper * wrapper = g_mime_data_wrapper_new_with_stream (stream, GMIME_PART_ENCODING_8BIT); -+ GMimeDataWrapper * wrapper = g_mime_data_wrapper_new_with_stream (stream, GMIME_CONTENT_ENCODING_8BIT); - GMimePart * part = g_mime_part_new (); - GMimeContentType * new_type = g_mime_content_type_new_from_string ("text/plain; charset=UTF-8"); -- g_mime_part_set_content_type (part, new_type); -+ g_mime_object_set_content_type ((GMimeObject *) part, new_type); - g_mime_part_set_content_object (part, wrapper); -- g_mime_part_set_encoding (part, GMIME_PART_ENCODING_8BIT); -+ g_mime_part_set_content_encoding (part, GMIME_CONTENT_ENCODING_8BIT); - g_mime_message_set_mime_part (msg, GMIME_OBJECT(part)); - g_object_unref (wrapper); - g_object_unref (part); - g_object_unref (stream); --//std::cerr << LINE_ID << " here is the modified clone\n [" << g_mime_message_to_string(msg) << ']' << std::endl; -+//std::cerr << LINE_ID << " here is the modified clone\n [" << g_mime_object_to_string((GMimeObject *) msg) << ']' << std::endl; - } - - return msg; -diff -ru pan-0.133.orig/pan/gui/body-pane.h pan-0.133/pan/gui/body-pane.h ---- pan-0.133.orig/pan/gui/body-pane.h 2008-07-04 10:57:39.000000000 -0700 -+++ pan-0.133/pan/gui/body-pane.h 2009-09-08 20:40:40.000000000 -0700 -@@ -86,7 +86,7 @@ - void append_part (GMimeObject*, GtkAllocation*); - static gboolean expander_activated_idle (gpointer self); - static void expander_activated_cb (GtkExpander*, gpointer self); -- static void foreach_part_cb (GMimeObject*, gpointer self); -+ static void foreach_part_cb (GMimeObject*, GMimeObject*, gpointer self); - static void text_size_allocated (GtkWidget*, GtkAllocation*, gpointer); - static gboolean text_size_allocated_idle_cb (gpointer p); - void text_size_allocated_idle (); -diff -ru pan-0.133.orig/pan/gui/gui.cc pan-0.133/pan/gui/gui.cc ---- pan-0.133.orig/pan/gui/gui.cc 2008-07-05 00:14:56.000000000 -0700 -+++ pan-0.133/pan/gui/gui.cc 2009-09-12 14:44:06.000000000 -0700 -@@ -31,6 +31,7 @@ - #include <pan/general/file-util.h> - #include <pan/general/macros.h> - #include <pan/usenet-utils/scorefile.h> -+#include <pan/usenet-utils/mime-utils.h> - #include <pan/tasks/task-article.h> - #include <pan/tasks/task-groups.h> - #include <pan/tasks/task-xover.h> -@@ -567,7 +568,7 @@ - ArticleCache& c, const Article& a, const std::string& path): - _data(d), _queue(q), _root(r), _prefs(p), _cache(c), _article(a), _path(path) {} - -- static void foreach_part_cb (GMimeObject *o, gpointer self) -+ static void foreach_part_cb (GMimeObject * /*parent*/, GMimeObject *o, gpointer self) - { - static_cast<SaveArticlesFromNZB*>(self)->foreach_part (o); - } -@@ -591,7 +592,7 @@ - if (!tasks.empty()) - _queue.add_tasks (tasks, Queue::BOTTOM); - g_object_unref (mem_stream); -- g_object_unref (wrapper); -+// g_object_unref (wrapper); //SKG gmime 2.4 don't unref returned data wrapper - } - } - -@@ -601,7 +602,7 @@ - { - if (status == OK) { - GMimeMessage * message = _cache.get_message (_article.get_part_mids()); -- g_mime_message_foreach_part (message, foreach_part_cb, this); -+ g_mime_message_foreach (message, foreach_part_cb, this); - g_object_unref (message); - } - delete this; -@@ -1041,19 +1042,19 @@ - const char * cpch; - char * old_mid (g_strdup_printf ("<%s>", g_mime_message_get_message_id(message))); - GMimeMessage * new_message (g_mime_message_new (false)); -- g_mime_message_set_header (new_message, "Supersedes", old_mid); -+ g_mime_object_set_header ((GMimeObject *) new_message, "Supersedes", old_mid); - g_mime_message_set_sender (new_message, g_mime_message_get_sender (message)); - g_mime_message_set_subject (new_message, g_mime_message_get_subject (message)); -- g_mime_message_set_header (new_message, "Newsgroups", g_mime_message_get_header (message, "Newsgroups")); -- g_mime_message_set_header (new_message, "References", g_mime_message_get_header (message, "References")); -+ g_mime_object_set_header ((GMimeObject *) new_message, "Newsgroups", g_mime_object_get_header ((GMimeObject *) message, "Newsgroups")); -+ g_mime_object_set_header ((GMimeObject *) new_message, "References", g_mime_object_get_header ((GMimeObject *) message, "References")); - if ((cpch = g_mime_message_get_reply_to (message))) - g_mime_message_set_reply_to (new_message, cpch); -- if ((cpch = g_mime_message_get_header (message, "Followup-To"))) -- g_mime_message_set_header (new_message, "Followup-To", cpch); -+ if ((cpch = g_mime_object_get_header ((GMimeObject *) message, "Followup-To"))) -+ g_mime_object_set_header ((GMimeObject *) new_message, "Followup-To", cpch); - gboolean unused (false); -- char * body (g_mime_message_get_body (message, true, &unused)); -+ char * body (g_mime_message_get_body (message, &unused)); - GMimeStream * stream = g_mime_stream_mem_new_with_buffer (body, strlen(body)); -- GMimeDataWrapper * content_object = g_mime_data_wrapper_new_with_stream (stream, GMIME_PART_ENCODING_DEFAULT); -+ GMimeDataWrapper * content_object = g_mime_data_wrapper_new_with_stream (stream, GMIME_CONTENT_ENCODING_DEFAULT); - GMimePart * part = g_mime_part_new (); - g_mime_part_set_content_object (part, content_object); - g_mime_message_set_mime_part (new_message, GMIME_OBJECT(part)); -@@ -1111,11 +1112,11 @@ - char * cancel_message = g_strdup_printf ("cancel <%s>", g_mime_message_get_message_id(message)); - g_mime_message_set_sender (cancel, g_mime_message_get_sender (message)); - g_mime_message_set_subject (cancel, "Cancel"); -- g_mime_message_set_header (cancel, "Newsgroups", g_mime_message_get_header (message, "Newsgroups")); -- g_mime_message_set_header (cancel, "Control", cancel_message); -+ g_mime_object_set_header ((GMimeObject *) cancel, "Newsgroups", g_mime_object_get_header ((GMimeObject *) message, "Newsgroups")); -+ g_mime_object_set_header ((GMimeObject *) cancel, "Control", cancel_message); - const char * body ("Ignore\r\nArticle canceled by author using " PACKAGE_STRING "\r\n"); - GMimeStream * stream = g_mime_stream_mem_new_with_buffer (body, strlen(body)); -- GMimeDataWrapper * content_object = g_mime_data_wrapper_new_with_stream (stream, GMIME_PART_ENCODING_DEFAULT); -+ GMimeDataWrapper * content_object = g_mime_data_wrapper_new_with_stream (stream, GMIME_CONTENT_ENCODING_DEFAULT); - GMimePart * part = g_mime_part_new (); - g_mime_part_set_content_object (part, content_object); - g_mime_message_set_mime_part (cancel, GMIME_OBJECT(part)); -@@ -1194,12 +1195,12 @@ - newsgroups = group; - } - if (!newsgroups.empty()) -- g_mime_message_add_header (message, "Newsgroups", newsgroups.c_str()); -+ g_mime_object_append_header ((GMimeObject *) message, "Newsgroups", newsgroups.c_str()); - - // content type - GMimePart * part = g_mime_part_new (); -- g_mime_part_set_content_type (part, g_mime_content_type_new_from_string ("text/plain; charset=UTF-8")); -- g_mime_part_set_encoding (part, GMIME_PART_ENCODING_8BIT); -+ g_mime_object_set_content_type ((GMimeObject *) part, g_mime_content_type_new_from_string ("text/plain; charset=UTF-8")); -+ g_mime_part_set_content_encoding (part, GMIME_CONTENT_ENCODING_8BIT); - g_mime_message_set_mime_part (message, GMIME_OBJECT(part)); - g_object_unref (part); - -@@ -1754,8 +1755,8 @@ - g_snprintf (str, sizeof(str), "%s: %u/%u", _("Tasks"), running, size); - - // build the tooltip -- gulong queued, unused, stopped; -- guint64 KiB_remain; -+ long unsigned int queued, unused, stopped; //SKG MacPorts can't find function -+ uint64_t KiB_remain; //SKG using gulong and guint64 types. - double KiBps; - int hr, min, sec; - _queue.get_stats (queued, unused, stopped, -diff -ru pan-0.133.orig/pan/gui/pan.cc pan-0.133/pan/gui/pan.cc ---- pan-0.133.orig/pan/gui/pan.cc 2008-07-04 11:30:29.000000000 -0700 -+++ pan-0.133/pan/gui/pan.cc 2009-09-12 13:39:13.000000000 -0700 -@@ -211,7 +211,7 @@ - textdomain (GETTEXT_PACKAGE); - - g_thread_init (0); -- g_mime_init (GMIME_INIT_FLAG_UTF8); -+ g_mime_init (GMIME_ENABLE_RFC2047_WORKAROUNDS); - - bool gui(true), nzb(false); - std::string url; -diff -ru pan-0.133.orig/pan/gui/post-ui.cc pan-0.133/pan/gui/post-ui.cc ---- pan-0.133.orig/pan/gui/post-ui.cc 2008-07-13 06:32:11.000000000 -0700 -+++ pan-0.133/pan/gui/post-ui.cc 2009-09-12 13:04:51.000000000 -0700 -@@ -529,8 +529,8 @@ - { - std::string url, to, groups; - gboolean unused; -- char * headers (g_mime_message_get_headers (message)); -- char * body (g_mime_message_get_body (message, true, &unused)); -+ char * headers (g_mime_object_get_headers ((GMimeObject *) message)); -+ char * body (g_mime_message_get_body (message, &unused)); - StringView key, val, v(headers); - v.trim (); - while (v.pop_token (val, '\n') && val.pop_token(key,':')) { -@@ -629,7 +629,7 @@ - *** If this is email only, skip the rest of the posting... - *** we only stayed this long to get check_message() - **/ -- const StringView groups (g_mime_message_get_header (message, "Newsgroups")); -+ const StringView groups (g_mime_object_get_header ((GMimeObject *) message, "Newsgroups")); - if (groups.empty()) { - maybe_mail_message (message); - return true; -@@ -903,9 +903,9 @@ - */ - void pan_g_mime_message_set_message_id (GMimeMessage *msg, const char *mid) - { -- g_mime_message_add_header (msg, "Message-ID", mid); -+ g_mime_object_append_header ((GMimeObject *) msg, "Message-ID", mid); - char * bracketed = g_strdup_printf ("<%s>", mid); -- g_mime_header_set (GMIME_OBJECT(msg)->headers, "Message-ID", bracketed); -+ g_mime_header_list_set (GMIME_OBJECT(msg)->headers, "Message-ID", bracketed); - g_free (bracketed); - } - } -@@ -928,27 +928,27 @@ - // headers from the ui: To - const StringView to (gtk_entry_get_text (GTK_ENTRY(_to_entry))); - if (!to.empty()) -- g_mime_message_add_recipients_from_string (msg, (char*)GMIME_RECIPIENT_TYPE_TO, to.str); -+ g_mime_message_add_recipients_from_string (msg, GMIME_RECIPIENT_TYPE_TO, to.str); - - // headers from the ui: Newsgroups - const StringView groups (gtk_entry_get_text (GTK_ENTRY(_groups_entry))); - if (!groups.empty()) -- g_mime_message_set_header (msg, "Newsgroups", groups.str); -+ g_mime_object_set_header ((GMimeObject *) msg, "Newsgroups", groups.str); - - // headers from the ui: Followup-To - const StringView followupto (gtk_entry_get_text (GTK_ENTRY(_followupto_entry))); - if (!followupto.empty()) -- g_mime_message_set_header (msg, "Followup-To", followupto.str); -+ g_mime_object_set_header ((GMimeObject *) msg, "Followup-To", followupto.str); - - // headers from the ui: Reply-To - const StringView replyto (gtk_entry_get_text (GTK_ENTRY(_replyto_entry))); - if (!replyto.empty()) -- g_mime_message_set_header (msg, "Reply-To", replyto.str); -+ g_mime_object_set_header ((GMimeObject *) msg, "Reply-To", replyto.str); - - // add the 'hidden headers' - foreach_const (str2str_t, _hidden_headers, it) - if ((mode==DRAFTING) || (it->first.find ("X-Draft-")!=0)) -- g_mime_message_set_header (msg, it->first.c_str(), it->second.c_str()); -+ g_mime_object_set_header ((GMimeObject *) msg, it->first.c_str(), it->second.c_str()); - - // build headers from the 'more headers' entry field - std::map<std::string,std::string> headers; -@@ -964,14 +964,14 @@ - val.trim (); - std::string key_str (key.to_string()); - if (extra_header_is_editable (key, val)) -- g_mime_message_set_header (msg, key.to_string().c_str(), -- val.to_string().c_str()); -+ g_mime_object_set_header ((GMimeObject *) msg, key.to_string().c_str(), -+ val.to_string().c_str()); - } - g_free (pch); - - // User-Agent - if (mode==POSTING && _prefs.get_flag (USER_AGENT_PREFS_KEY, true)) -- g_mime_message_set_header (msg, "User-Agent", get_user_agent()); -+ g_mime_object_set_header ((GMimeObject *) msg, "User-Agent", get_user_agent()); - - // Message-ID - if (mode==POSTING && _prefs.get_flag (MESSAGE_ID_PREFS_KEY, false)) { -@@ -987,22 +987,22 @@ - const std::string charset ((mode==POSTING && !_charset.empty()) ? _charset : "UTF-8"); - if (charset != "UTF-8") { - // add a wrapper to convert from UTF-8 to $charset -- GMimeStream * tmp = g_mime_stream_filter_new_with_stream (stream); -+ GMimeStream * tmp = g_mime_stream_filter_new (stream); - g_object_unref (stream); - GMimeFilter * filter = g_mime_filter_charset_new ("UTF-8", charset.c_str()); - g_mime_stream_filter_add (GMIME_STREAM_FILTER(tmp), filter); - g_object_unref (filter); - stream = tmp; - } -- GMimeDataWrapper * content_object = g_mime_data_wrapper_new_with_stream (stream, GMIME_PART_ENCODING_DEFAULT); -+ GMimeDataWrapper * content_object = g_mime_data_wrapper_new_with_stream (stream, GMIME_CONTENT_ENCODING_DEFAULT); - g_object_unref (stream); - GMimePart * part = g_mime_part_new (); - pch = g_strdup_printf ("text/plain; charset=%s", charset.c_str()); - GMimeContentType * type = g_mime_content_type_new_from_string (pch); - g_free (pch); -- g_mime_part_set_content_type (part, type); // part owns type now. type isn't refcounted. -+ g_mime_object_set_content_type ((GMimeObject *) part, type); // part owns type now. type isn't refcounted. - g_mime_part_set_content_object (part, content_object); -- g_mime_part_set_encoding (part, GMIME_PART_ENCODING_8BIT); -+ g_mime_part_set_content_encoding (part, GMIME_CONTENT_ENCODING_8BIT); - g_object_unref (content_object); - g_mime_message_set_mime_part (msg, GMIME_OBJECT(part)); - g_object_unref (part); -@@ -1036,7 +1036,7 @@ - - errno = 0; - std::ofstream o (filename); -- char * pch = g_mime_message_to_string (msg); -+ char * pch = g_mime_object_to_string ((GMimeObject *) msg); - o << pch; - o.close (); - -@@ -1504,16 +1504,16 @@ - std::string s = utf8ize (g_mime_message_get_subject (message)); - gtk_entry_set_text (GTK_ENTRY(_subject_entry), s.c_str()); - -- s = utf8ize (g_mime_message_get_header (message, "Newsgroups")); -+ s = utf8ize (g_mime_object_get_header ((GMimeObject *) message, "Newsgroups")); - gtk_entry_set_text (GTK_ENTRY(_groups_entry), s.c_str()); - -- s = utf8ize (g_mime_message_get_header (message, "Followup-To")); -+ s = utf8ize (g_mime_object_get_header ((GMimeObject *) message, "Followup-To")); - gtk_entry_set_text (GTK_ENTRY(_followupto_entry), s.c_str()); - -- s = utf8ize (g_mime_message_get_header (message, "Reply-To")); -+ s = utf8ize (g_mime_object_get_header ((GMimeObject *) message, "Reply-To")); - gtk_entry_set_text (GTK_ENTRY(_replyto_entry), s.c_str()); - -- const InternetAddressList * addresses = g_mime_message_get_recipients (message, GMIME_RECIPIENT_TYPE_TO); -+ InternetAddressList * addresses = g_mime_message_get_recipients (message, GMIME_RECIPIENT_TYPE_TO); - char * pch = internet_address_list_to_string (addresses, true); - s = utf8ize (pch); - gtk_entry_set_text (GTK_ENTRY(_to_entry), s.c_str()); -@@ -1521,16 +1521,34 @@ - - // update 'other headers' - SetMessageForeachHeaderData data; -- if (message->mime_part && g_mime_header_has_raw (message->mime_part->headers)) -- g_mime_header_foreach (message->mime_part->headers, set_message_foreach_header_func, &data); -- g_mime_header_foreach (GMIME_OBJECT(message)->headers, set_message_foreach_header_func, &data); -+ const char *name, *value; -+ GMimeHeaderIter iter; -+ -+ if (message->mime_part && g_mime_header_list_has_raw (message->mime_part->headers)) { -+ if (g_mime_header_list_get_iter (message->mime_part->headers, &iter)) { -+ do { -+ value = g_mime_header_iter_get_value (&iter); -+ name = g_mime_header_iter_get_name (&iter); -+ set_message_foreach_header_func (name, value, &data); -+ } while (g_mime_header_iter_next (&iter)); -+ } -+ } -+ -+ if (g_mime_header_list_get_iter (GMIME_OBJECT (message)->headers, &iter)) { -+ do { -+ value = g_mime_header_iter_get_value (&iter); -+ name = g_mime_header_iter_get_name (&iter); -+ set_message_foreach_header_func (name, value, &data); -+ } while (g_mime_header_iter_next (&iter)); -+ } -+ - s = utf8ize (data.visible_headers); - gtk_text_buffer_set_text (_headers_buf, s.c_str(), -1); - _hidden_headers = data.hidden_headers; - - // update body - int ignored; -- char * tmp = g_mime_message_get_body (message, true, &ignored); -+ char * tmp = g_mime_message_get_body (message, &ignored); - s = utf8ize (tmp); - g_free (tmp); - if (!s.empty()) { -diff -ru pan-0.133.orig/pan/usenet-utils/message-check-test.cc pan-0.133/pan/usenet-utils/message-check-test.cc ---- pan-0.133.orig/pan/usenet-utils/message-check-test.cc 2007-08-01 09:59:59.000000000 -0700 -+++ pan-0.133/pan/usenet-utils/message-check-test.cc 2009-09-12 13:41:22.000000000 -0700 -@@ -22,6 +22,20 @@ - std::cerr << LINE_ID << " [" << i << "][" << *it << ']' << std::endl; \ - } - -+static void -+mime_part_set_content (GMimePart *part, const char *str) -+{ -+ GMimeDataWrapper *content; -+ GMimeStream *stream; -+ -+ stream = g_mime_stream_mem_new_with_buffer (str, strlen (str)); -+ content = g_mime_data_wrapper_new_with_stream (stream, GMIME_CONTENT_ENCODING_DEFAULT); -+ g_object_unref (stream); -+ -+ g_mime_part_set_content_object (part, content); -+ g_object_unref (content); -+} -+ - int main (void) - { - g_mime_init (0); -@@ -41,11 +55,11 @@ - std::string message_id = GNKSA :: generate_message_id ("rebelbase.com"); - g_mime_message_set_message_id (msg, message_id.c_str()); - g_mime_message_set_subject (msg, "MAKE MONEY FAST"); -- g_mime_message_set_header (msg, "Organization", "Lazars Android Works"); -- g_mime_message_set_header (msg, "Newsgroups", "alt.test"); -+ g_mime_object_set_header ((GMimeObject *) msg, "Organization", "Lazars Android Works"); -+ g_mime_object_set_header ((GMimeObject *) msg, "Newsgroups", "alt.test"); - GMimePart * part = g_mime_part_new_with_type ("text", "plain"); - const char * cpch = "Hello World!"; -- g_mime_part_set_content (part, cpch, strlen(cpch)); -+ mime_part_set_content (part, cpch); - g_mime_message_set_mime_part (msg, GMIME_OBJECT(part)); - // this should pass the tests - MessageCheck :: message_check (msg, attribution, groups_our_server_has, errors, goodness); -@@ -54,7 +68,7 @@ - - // all quoted - cpch = "> Hello World!\n> All quoted text."; -- g_mime_part_set_content (part, cpch, strlen(cpch)); -+ mime_part_set_content (part, cpch); - MessageCheck :: message_check (msg, attribution, groups_our_server_has, errors, goodness); - std::vector<std::string> e (errors.begin(), errors.end()); - check (errors.size() == 2) -@@ -64,7 +78,7 @@ - - // mostly quoted - cpch = "> Hello World!\n> quoted\n> text\n> foo\n> bar\nnew text"; -- g_mime_part_set_content (part, cpch, strlen(cpch)); -+ mime_part_set_content (part, cpch); - MessageCheck :: message_check (msg, attribution, groups_our_server_has, errors, goodness); - e.assign (errors.begin(), errors.end()); - check (errors.size() == 1) -@@ -73,14 +87,14 @@ - - // mostly quoted border condition: 20% of message is new content (should pass) - cpch = "> Hello World!\n> quoted\n> text\n> foo\nnew text"; -- g_mime_part_set_content (part, cpch, strlen(cpch)); -+ mime_part_set_content (part, cpch); - MessageCheck :: message_check (msg, attribution, groups_our_server_has, errors, goodness); - check (errors.empty()) - check (goodness.is_ok()) - - // sig check: too long - cpch = "Hello!\n\n-- \nThis\nSig\nIs\nToo\nLong\n"; -- g_mime_part_set_content (part, cpch, strlen(cpch)); -+ mime_part_set_content (part, cpch); - MessageCheck :: message_check (msg, attribution, groups_our_server_has, errors, goodness); - e.assign (errors.begin(), errors.end()); - check (errors.size() == 1) -@@ -95,7 +109,7 @@ - "This sig line is greater than 80 characters wide. In fact, it's 84 characters wide.\n" - "This sig line is greater than 80 characters wide. In fact, it measures 95 characters in width!\n" - "This sig line is less than 80 characters wide."; -- g_mime_part_set_content (part, cpch, strlen(cpch)); -+ mime_part_set_content (part, cpch); - MessageCheck :: message_check (msg, attribution, groups_our_server_has, errors, goodness); - e.assign (errors.begin(), errors.end()); - check (errors.size() == 1) -@@ -104,7 +118,7 @@ - - // sig check: sig marker, no sig - cpch = "Hello!\n\n-- \n"; -- g_mime_part_set_content (part, cpch, strlen(cpch)); -+ mime_part_set_content (part, cpch); - MessageCheck :: message_check (msg, attribution, groups_our_server_has, errors, goodness); - e.assign (errors.begin(), errors.end()); - check (errors.size() == 1) -@@ -113,7 +127,7 @@ - - // sig check: okay sig - cpch = "Hello!\n\n-- \nThis is a short, narrow sig.\nIt should pass.\n"; -- g_mime_part_set_content (part, cpch, strlen(cpch)); -+ mime_part_set_content (part, cpch); - MessageCheck :: message_check (msg, attribution, groups_our_server_has, errors, goodness); - check (errors.empty()) - check (goodness.is_ok()) -@@ -146,7 +160,7 @@ - "This sig line is greater than 80 characters wide. In fact, it's 84 characters wide.\n" - "This sig line is greater than 80 characters wide. In fact, it measures 95 characters in width!\n" - "This sig line is less than 80 characters wide."; -- g_mime_part_set_content (part, cpch, strlen(cpch)); -+ mime_part_set_content (part, cpch); - MessageCheck :: message_check (msg, attribution, groups_our_server_has, errors, goodness); - e.assign (errors.begin(), errors.end()); - check (errors.size() == 1) -@@ -155,7 +169,7 @@ - - // body empty - cpch = "\n\t\n \n-- \nThis is the sig."; -- g_mime_part_set_content (part, cpch, strlen(cpch)); -+ mime_part_set_content (part, cpch); - MessageCheck :: message_check (msg, attribution, groups_our_server_has, errors, goodness); - e.assign (errors.begin(), errors.end()); - check (errors.size() == 2) -@@ -163,7 +177,7 @@ - check (e[0] == "Error: Message appears to have no new content."); - check (e[1] == "Error: Message is empty."); - cpch = "Some valid message."; -- g_mime_part_set_content (part, cpch, strlen(cpch)); -+ mime_part_set_content (part, cpch); - - // empty subject - g_mime_message_set_subject (msg, ""); -@@ -175,17 +189,17 @@ - g_mime_message_set_subject (msg, "Happy Lucky Feeling"); - - // newsgroups -- g_mime_message_set_header (msg, "Newsgroups", "alt.test,unknown.group"); -+ g_mime_object_set_header ((GMimeObject *) msg, "Newsgroups", "alt.test,unknown.group"); - MessageCheck :: message_check (msg, attribution, groups_our_server_has, errors, goodness); - e.assign (errors.begin(), errors.end()); - check (errors.size() == 1) - check (goodness.is_warn()) - check (e[0] == "Warning: The posting profile's server doesn't carry newsgroup\n\t\"unknown.group\".\n\tIf the group name is correct, switch profiles in the \"From:\"\n\tline or edit the profile with \"Edit|Manage Posting Profiles\".") -- g_mime_message_set_header (msg, "Newsgroups", "alt.test"); -+ g_mime_object_set_header ((GMimeObject *) msg, "Newsgroups", "alt.test"); - - // newsgroups w/o followup -- g_mime_message_set_header (msg, "Newsgroups", "alt.test,alt.religion.kibology,alt.binaries.sounds.mp3.indie"); -- g_mime_header_remove (GMIME_OBJECT(msg)->headers, "Followup-To"); -+ g_mime_object_set_header ((GMimeObject *) msg, "Newsgroups", "alt.test,alt.religion.kibology,alt.binaries.sounds.mp3.indie"); -+ g_mime_header_list_remove (GMIME_OBJECT(msg)->headers, "Followup-To"); - MessageCheck :: message_check (msg, attribution, groups_our_server_has, errors, goodness); - e.assign (errors.begin(), errors.end()); - check (errors.size() == 1) -@@ -193,8 +207,8 @@ - check (e[0] == "Warning: Crossposting without setting Followup-To header.") - - // unknown follow-up -- g_mime_message_set_header (msg, "Newsgroups", "alt.test"); -- g_mime_message_set_header (msg, "Followup-To", "alt.test,unknown.group"); -+ g_mime_object_set_header ((GMimeObject *) msg, "Newsgroups", "alt.test"); -+ g_mime_object_set_header ((GMimeObject *) msg, "Followup-To", "alt.test,unknown.group"); - MessageCheck :: message_check (msg, attribution, groups_our_server_has, errors, goodness); - e.assign (errors.begin(), errors.end()); - check (errors.size() == 1) -@@ -203,11 +217,11 @@ - g_mime_object_remove_header (GMIME_OBJECT(msg), "Followup-To"); - - // top posting -- g_mime_message_set_header (msg, "References", "<asdf@foo.com>"); -+ g_mime_object_set_header ((GMimeObject *) msg, "References", "<asdf@foo.com>"); - cpch = "How Fascinating!\n" - "\n" - "> Blah blah blah.\n"; -- g_mime_part_set_content (part, cpch, strlen(cpch)); -+ mime_part_set_content (part, cpch); - MessageCheck :: message_check (msg, attribution, groups_our_server_has, errors, goodness); - e.assign (errors.begin(), errors.end()); - check (errors.size() == 1) -@@ -216,7 +230,7 @@ - g_mime_object_remove_header (GMIME_OBJECT(msg), "References"); - - // top posting -- g_mime_message_set_header (msg, "References", "<asdf@foo.com>"); -+ g_mime_object_set_header ((GMimeObject *) msg, "References", "<asdf@foo.com>"); - cpch = "How Fascinating!\n" - "\n" - "> Blah blah blah.\n" -@@ -224,7 +238,7 @@ - "-- \n" - "Pan shouldn't mistake this signature for\n" - "original content in the top-posting check.\n"; -- g_mime_part_set_content (part, cpch, strlen(cpch)); -+ mime_part_set_content (part, cpch); - MessageCheck :: message_check (msg, attribution, groups_our_server_has, errors, goodness); - e.assign (errors.begin(), errors.end()); - check (errors.size() == 1) -@@ -238,7 +252,7 @@ - "\n" - "--\n" - "This is my signature.\n"; -- g_mime_part_set_content (part, cpch, strlen(cpch)); -+ mime_part_set_content (part, cpch); - MessageCheck :: message_check (msg, attribution, groups_our_server_has, errors, goodness); - e.assign (errors.begin(), errors.end()); - check (errors.size() == 1) -diff -ru pan-0.133.orig/pan/usenet-utils/message-check.cc pan-0.133/pan/usenet-utils/message-check.cc ---- pan-0.133.orig/pan/usenet-utils/message-check.cc 2008-07-04 23:15:22.000000000 -0700 -+++ pan-0.133/pan/usenet-utils/message-check.cc 2009-09-12 13:42:37.000000000 -0700 -@@ -30,6 +30,7 @@ - #include "gnksa.h" - #include "message-check.h" - #include "text-massager.h" -+#include "mime-utils.h" - - using namespace pan; - -@@ -62,7 +63,7 @@ - std::string body (body_in.to_string()); - - // strip attribution -- const char * attribution = g_mime_message_get_header (message, PAN_ATTRIBUTION); -+ const char * attribution = g_mime_object_get_header ((GMimeObject *) message, PAN_ATTRIBUTION); - if (attribution && *attribution) - { - std::string::size_type attrib_start_pos = body.find (attribution); -@@ -99,7 +100,7 @@ - GMimeMessage * message) - { - // if it's not a reply, then top-posting check is moot -- if (g_mime_message_get_header (message, "References") == NULL) -+ if (g_mime_object_get_header ((GMimeObject *) message, "References") == NULL) - return; - - bool quoted_found (false); -@@ -414,7 +415,6 @@ - } - } - -- - void - MessageCheck :: message_check (const GMimeMessage * message_const, - const StringView & attribution, -@@ -432,7 +432,7 @@ - check_subject (errors, goodness, g_mime_message_get_subject (message)); - - // check the author... -- if (GNKSA::check_from (g_mime_message_get_header (message, "From"), true)) { -+ if (GNKSA::check_from (g_mime_object_get_header ((GMimeObject *) message, "From"), true)) { - errors.insert (_("Error: Bad email address.")); - goodness.raise_to_warn (); - } -@@ -440,17 +440,17 @@ - // check the body... - TextMassager tm; - gboolean is_html; -- char * body = g_mime_message_get_body (message, true, &is_html); -+ char * body = g_mime_message_get_body (message, &is_html); - if (is_html) { - errors.insert (_("Warning: Most newsgroups frown upon HTML posts.")); - goodness.raise_to_warn (); - } - check_body (errors, goodness, tm, message, body, attribution); - g_free (body); -- -+ - // check the optional followup-to... - bool followup_to_set (false); -- const char * cpch = g_mime_message_get_header (message, "Followup-To"); -+ const char * cpch = g_mime_object_get_header ((GMimeObject *) message, "Followup-To"); - if (cpch && *cpch) { - quarks_t groups; - get_nntp_rcpts (cpch, groups); -@@ -460,7 +460,7 @@ - - // check the groups... - size_t group_qty (0); -- cpch = g_mime_message_get_header (message, "Newsgroups"); -+ cpch = g_mime_object_get_header ((GMimeObject *) message, "Newsgroups"); - if (cpch && *cpch) { - quarks_t groups; - get_nntp_rcpts (cpch, groups); -@@ -469,7 +469,7 @@ - } - - // one last error check -- const InternetAddressList * list (g_mime_message_get_recipients (message, GMIME_RECIPIENT_TYPE_TO)); -+ InternetAddressList * list (g_mime_message_get_recipients (message, GMIME_RECIPIENT_TYPE_TO)); - const int n_to (internet_address_list_length (list)); - if (!group_qty && !n_to) { - errors.insert (_("Error: No Recipients.")); -diff -ru pan-0.133.orig/pan/usenet-utils/mime-utils.cc pan-0.133/pan/usenet-utils/mime-utils.cc ---- pan-0.133.orig/pan/usenet-utils/mime-utils.cc 2008-07-04 23:15:24.000000000 -0700 -+++ pan-0.133/pan/usenet-utils/mime-utils.cc 2009-09-12 14:46:25.000000000 -0700 -@@ -455,10 +455,10 @@ - part->stream = g_mime_stream_mem_new (); - if (part->type != ENC_PLAIN) { - part->filter_stream = -- g_mime_stream_filter_new_with_stream (part->stream); -+ g_mime_stream_filter_new (part->stream); - part->filter = part->type == ENC_UU -- ? g_mime_filter_basic_new_type (GMIME_FILTER_BASIC_UU_DEC) -- : g_mime_filter_yenc_new (GMIME_FILTER_YENC_DIRECTION_DECODE); -+ ? g_mime_filter_basic_new (GMIME_CONTENT_ENCODING_UUENCODE, FALSE) -+ : g_mime_filter_yenc_new (FALSE); - g_mime_stream_filter_add (GMIME_STREAM_FILTER(part->filter_stream), - part->filter); - } -@@ -722,18 +722,21 @@ - { - // if the part is a multipart, check its subparts - if (GMIME_IS_MULTIPART (*part)) { -- GList * subparts = GMIME_MULTIPART (*part)->subparts; -- while (subparts) { -- GMimeObject * subpart = (GMimeObject *) subparts->data; -+ GMimeMultipart *multipart = (GMimeMultipart *) *part; -+ int count = g_mime_multipart_get_count(multipart); -+ int i; -+ -+ for (i = 0; i < count; i++) { -+ GMimeObject * subpart = g_mime_multipart_remove_at (multipart, i); - handle_uu_and_yenc_in_text_plain (&subpart); -- subparts->data = subpart; -- subparts = subparts->next; -+ g_mime_multipart_insert (multipart, i, subpart); -+ g_object_unref (subpart); - } - return; - } - - // we assume that inlined yenc and uu are only in text/plain blocks -- const GMimeContentType * content_type = g_mime_object_get_content_type (*part); -+ GMimeContentType * content_type = g_mime_object_get_content_type (*part); - if (!g_mime_content_type_is_type (content_type, "text", "plain")) - return; - -@@ -746,8 +749,8 @@ - GMimeStream * stream = g_mime_data_wrapper_get_stream (content); - g_mime_stream_reset (stream); - GMimeStream * istream = g_mime_stream_buffer_new (stream, GMIME_STREAM_BUFFER_BLOCK_READ); -- g_object_unref (stream); -- g_object_unref (content); -+// g_object_unref (stream); //SKG if this is unrefed, when istream is unrefed below, content loses its stream -+// g_object_unref (content); //SKG gmime 2.4 don't unref returned data wrapper - - // break it into separate parts for text, uu, and yenc pieces. - temp_parts_t parts; -@@ -774,22 +777,22 @@ - g_mime_part_set_filename (subpart, filename); - - GMimeStream * subpart_stream = tmp_part->stream; -- content = g_mime_data_wrapper_new_with_stream (subpart_stream, GMIME_PART_ENCODING_DEFAULT); -+ content = g_mime_data_wrapper_new_with_stream (subpart_stream, GMIME_CONTENT_ENCODING_DEFAULT); - g_mime_part_set_content_object (subpart, content); -- g_mime_multipart_add_part (GMIME_MULTIPART (multipart), GMIME_OBJECT (subpart)); -+ g_mime_multipart_add (GMIME_MULTIPART (multipart), GMIME_OBJECT (subpart)); - - g_object_unref (content); - g_object_unref (subpart); - } - - // replace the old part with the new multipart -- g_mime_object_unref (*part); -+ g_object_unref (*part); - *part = GMIME_OBJECT (multipart); - } - - foreach (temp_parts_t, parts, it) - delete *it; -- g_mime_stream_unref (istream); -+ g_object_unref (istream); - } - } - -@@ -831,15 +834,15 @@ - GMimeStream * stream = g_mime_data_wrapper_get_stream (wrapper); - g_mime_stream_reset (stream); - g_mime_stream_cat_add_source (GMIME_STREAM_CAT (cat), stream); -- g_object_unref (stream); -- g_object_unref (wrapper); -+// g_object_unref (stream); //SKG if this is unrefed cat loses its stream -+// g_object_unref (wrapper); //SKG gmime 2.4 don't unref returned data wrapper - } - - GMimeMessage * message = messages[0]; - GMimeDataWrapper * wrapper = g_mime_part_get_content_object (GMIME_PART(message->mime_part)); - g_mime_stream_reset (cat); - g_mime_data_wrapper_set_stream (wrapper, cat); -- g_object_unref (wrapper); -+// g_object_unref (wrapper); //SKG gmime 2.4 don't unref returned data wrapper - g_object_unref (cat); - } - -@@ -1007,3 +1010,174 @@ - { - normalize_subject (subject, STRIP_MULTIPART_NUMERATOR, setme); - } -+ -+static GMimeObject * -+handle_multipart_mixed (GMimeMultipart *multipart, gboolean *is_html); -+ -+static GMimeObject * -+handle_multipart_alternative (GMimeMultipart *multipart, gboolean *is_html) -+{ -+ GMimeObject *mime_part, *text_part = NULL; -+ GMimeContentType *type; -+ int count = g_mime_multipart_get_count (multipart); -+ -+ for (int i = 0; i < count; ++i) { -+ mime_part = g_mime_multipart_get_part (multipart, i); -+ -+ type = g_mime_object_get_content_type (mime_part); -+ if (g_mime_content_type_is_type (type, "text", "*")) { -+ if (!text_part || !g_ascii_strcasecmp (type->subtype, "plain")) { -+ *is_html = !g_ascii_strcasecmp (type->subtype, "html"); -+ text_part = mime_part; -+ } -+ } -+ } -+ -+ return text_part; -+} -+ -+static GMimeObject * -+handle_multipart_mixed (GMimeMultipart *multipart, gboolean *is_html) -+{ -+ GMimeObject *mime_part, *text_part = NULL; -+ GMimeContentType *type, *first_type = NULL; -+ int count = g_mime_multipart_get_count (multipart); -+ -+ for (int i = 0; i < count; ++i) { -+ mime_part = g_mime_multipart_get_part (multipart, i); -+ -+ type = g_mime_object_get_content_type (mime_part); -+ if (GMIME_IS_MULTIPART (mime_part)) { -+ multipart = GMIME_MULTIPART (mime_part); -+ if (g_mime_content_type_is_type (type, "multipart", "alternative")) { -+ mime_part = handle_multipart_alternative (multipart, is_html); -+ if (mime_part) -+ return mime_part; -+ } else { -+ mime_part = handle_multipart_mixed (multipart, is_html); -+ if (mime_part && !text_part) -+ text_part = mime_part; -+ } -+ } else if (g_mime_content_type_is_type (type, "text", "*")) { -+ if (!g_ascii_strcasecmp (type->subtype, "plain")) { -+ /* we got what we came for */ -+ *is_html = !g_ascii_strcasecmp (type->subtype, "html"); -+ return mime_part; -+ } -+ -+ /* if we haven't yet found a text part or if it is a type we can -+ * * understand and it is the first of that type, save it */ -+ if (!text_part || (!g_ascii_strcasecmp (type->subtype, "plain") && (first_type && -+ g_ascii_strcasecmp (type->subtype, first_type->subtype) != 0))) { -+ *is_html = !g_ascii_strcasecmp (type->subtype, "html"); -+ text_part = mime_part; -+ first_type = type; -+ } -+ } -+ } -+ -+ return text_part; -+} -+ -+#define NEEDS_DECODING(encoding) ((encoding == GMIME_CONTENT_ENCODING_BASE64) || \ -+ (encoding == GMIME_CONTENT_ENCODING_UUENCODE) || \ -+ (encoding == GMIME_CONTENT_ENCODING_QUOTEDPRINTABLE)) -+ -+static const char * -+g_mime_part_get_content (const GMimePart *mime_part, size_t *len) -+{ -+ const char *retval = NULL; -+ GMimeStream *stream; -+ -+ g_return_val_if_fail (GMIME_IS_PART (mime_part), NULL); -+ -+ if (!mime_part->content || !mime_part->content->stream) { -+ g_warning ("no content set on this mime part"); -+ return NULL; -+ } -+ -+ stream = mime_part->content->stream; -+ if (!GMIME_IS_STREAM_MEM (stream) || NEEDS_DECODING (mime_part->content->encoding)) { -+ /* Decode and cache this mime part's contents... */ -+ GMimeStream *cache; -+ GByteArray *buf; -+ -+ buf = g_byte_array_new (); -+ cache = g_mime_stream_mem_new_with_byte_array (buf); -+ -+ g_mime_data_wrapper_write_to_stream (mime_part->content, cache); -+ -+ g_mime_data_wrapper_set_stream (mime_part->content, cache); -+ g_mime_data_wrapper_set_encoding (mime_part->content, GMIME_CONTENT_ENCODING_DEFAULT); -+ g_object_unref (cache); -+ -+ *len = buf->len; -+ retval = (char *) buf->data; -+ } else { -+ GByteArray *buf = GMIME_STREAM_MEM (stream)->buffer; -+ off_t end_index = (off_t) buf->len; -+ off_t start_index = 0; -+ -+ /* check boundaries */ -+ if (stream->bound_start >= 0) -+ start_index = CLAMP (stream->bound_start, 0, (off_t) buf->len); -+ if (stream->bound_end >= 0) -+ end_index = CLAMP (stream->bound_end, 0, (off_t) buf->len); -+ if (end_index < start_index) -+ end_index = start_index; -+ -+ *len = end_index - start_index; -+ retval = (char *) buf->data + start_index; -+ } -+ -+ return retval; -+} -+ -+char *g_mime_message_get_body (GMimeMessage *message, gboolean *is_html) -+{ -+ GMimeObject *mime_part = NULL; -+ GMimeContentType *type; -+ GMimeMultipart *multipart; -+ const char *content; -+ char *body = NULL; -+ size_t len = 0; -+ -+ g_return_val_if_fail (GMIME_IS_MESSAGE (message), NULL); -+ g_return_val_if_fail (is_html != NULL, NULL); -+ -+ type = g_mime_object_get_content_type (message->mime_part); -+ if (GMIME_IS_MULTIPART (message->mime_part)) { -+ /* let's see if we can find a body in the multipart */ -+ multipart = GMIME_MULTIPART (message->mime_part); -+ if (g_mime_content_type_is_type (type, "multipart", "alternative")) -+ mime_part = handle_multipart_alternative (multipart, is_html); -+ else -+ mime_part = handle_multipart_mixed (multipart, is_html); -+ } else if (g_mime_content_type_is_type (type, "text", "*")) { -+ /* this *has* to be the message body */ -+ if (g_mime_content_type_is_type (type, "text", "html")) -+ *is_html = TRUE; -+ else -+ *is_html = FALSE; -+ mime_part = message->mime_part; -+ } -+ -+ if (mime_part != NULL) { -+ content = g_mime_part_get_content (GMIME_PART (mime_part), &len); -+ body = g_strndup (content, len); -+ } -+ -+ return body; -+} -+ -+void g_mime_message_add_recipients_from_string (GMimeMessage *message, GMimeRecipientType type, const char *string) -+{ -+ InternetAddressList *addrlist; -+ if ((addrlist = internet_address_list_parse_string (string))) { -+ for (int i = 0; i < internet_address_list_length (addrlist); ++i) { -+ InternetAddress *ia = internet_address_list_get_address (addrlist, i); -+ if (INTERNET_ADDRESS_IS_MAILBOX(ia)) -+ g_mime_message_add_recipient (message, type, internet_address_get_name(ia), internet_address_mailbox_get_addr(INTERNET_ADDRESS_MAILBOX(ia))); -+ } -+ } -+} -diff -ru pan-0.133.orig/pan/usenet-utils/mime-utils.h pan-0.133/pan/usenet-utils/mime-utils.h ---- pan-0.133.orig/pan/usenet-utils/mime-utils.h 2007-08-01 09:59:59.000000000 -0700 -+++ pan-0.133/pan/usenet-utils/mime-utils.h 2009-09-12 13:20:11.000000000 -0700 -@@ -64,4 +64,8 @@ - }; - } - -+char *g_mime_message_get_body (GMimeMessage *message, gboolean *is_html); -+void g_mime_message_add_recipients_from_string (GMimeMessage *message, GMimeRecipientType type, const char *string); -+ -+ - #endif -diff -ru pan-0.133.orig/pan.spec pan-0.133/pan.spec ---- pan-0.133.orig/pan.spec 2008-07-29 19:05:05.000000000 -0700 -+++ pan-0.133/pan.spec 2009-09-12 14:58:20.000000000 -0700 -@@ -15,14 +15,14 @@ - - BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-buildroot - BuildRequires: glib2-devel >= 2.4.0 --BuildRequires: gmime-devel >= 2.1.9 -+BuildRequires: gmime-devel >= 2.3.5 - BuildRequires: gtk2-devel >= 2.4.0 - BuildRequires: pcre-devel >= 5.0 - %{!?_without_gtkspell:BuildRequires: gtkspell-devel >= 2.0.7} - - Requires: pcre >= 5.0 - Requires: glib2 >= 2.4.0 --Requires: gmime >= 2.1.9 -+Requires: gmime >= 2.3.5 - Requires: gtk2 >= 2.4.0 - %{!?_without_gtkspell:Requires: gtkspell >= 2.0.7} - diff --git a/source/xap/pidgin/pidgin.SlackBuild b/source/xap/pidgin/pidgin.SlackBuild index d61713b6..bfefef2e 100755 --- a/source/xap/pidgin/pidgin.SlackBuild +++ b/source/xap/pidgin/pidgin.SlackBuild @@ -1,6 +1,6 @@ #!/bin/sh -# Copyright 2006, 2007, 2008, 2009, 2010 Patrick J. Volkerding, Sebeka, MN, USA +# Copyright 2006, 2007, 2008, 2009, 2010, 2011 Patrick J. Volkerding, Sebeka, MN, USA # All rights reserved. # # Redistribution and use of this script, with or without modification, is @@ -22,7 +22,7 @@ PKGNAM=pidgin -VERSION=${VERSION:-2.7.0} +VERSION=${VERSION:-$(echo $PKGNAM-2.*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)} PIDGINENC=${PIDGINENC:-3.1} BUILD=${BUILD:-1} diff --git a/source/xap/rdesktop/rdesktop.CVE-2011-1595.diff b/source/xap/rdesktop/rdesktop.CVE-2011-1595.diff new file mode 100644 index 00000000..0db8c3bc --- /dev/null +++ b/source/xap/rdesktop/rdesktop.CVE-2011-1595.diff @@ -0,0 +1,22 @@ +--- ./disk.c.orig 2008-02-15 18:13:25.000000000 -0600 ++++ ./disk.c 2011-04-20 20:27:55.978000772 -0500 +@@ -356,6 +356,19 @@ + filename[strlen(filename) - 1] = 0; + sprintf(path, "%s%s", g_rdpdr_device[device_id].local_path, filename); + ++ /* Protect against mailicous servers: ++ somelongpath/.. not allowed ++ somelongpath/../b not allowed ++ somelongpath/..b in principle ok, but currently not allowed ++ somelongpath/b.. ok ++ somelongpath/b..b ok ++ somelongpath/b../c ok ++ */ ++ if (strstr(path, "/..")) ++ { ++ return RD_STATUS_ACCESS_DENIED; ++ } ++ + switch (create_disposition) + { + case CREATE_ALWAYS: diff --git a/source/xap/rdesktop/rdesktop.SlackBuild b/source/xap/rdesktop/rdesktop.SlackBuild index cbfc1498..5e1ae2e2 100755 --- a/source/xap/rdesktop/rdesktop.SlackBuild +++ b/source/xap/rdesktop/rdesktop.SlackBuild @@ -1,6 +1,6 @@ #!/bin/sh -# Copyright 2006, 2008, 2009 Patrick J. Volkerding, Sebeka, MN, USA +# Copyright 2006, 2008, 2009, 2011 Patrick J. Volkerding, Sebeka, MN, USA # All rights reserved. # # Redistribution and use of this script, with or without modification, is @@ -23,10 +23,17 @@ PKGNAM=rdesktop VERSION=${VERSION:-1.6.0} -ARCH=${ARCH:-x86_64} -NUMJOBS=${NUMJOBS:-" -j7 "} -BUILD=${BUILD:-1} - +BUILD=${BUILD:-2} + +# Automatically determine the architecture we're building on: +if [ -z "$ARCH" ]; then + case "$( uname -m )" in + i?86) export ARCH=i486 ;; + arm*) export ARCH=arm ;; + # Unless $ARCH is already set, use uname -m for all other archs: + *) export ARCH=$( uname -m ) ;; + esac +fi if [ "$ARCH" = "i486" ]; then SLKCFLAGS="-O2 -march=i486 -mtune=i686" @@ -39,6 +46,8 @@ elif [ "$ARCH" = "x86_64" ]; then LIBDIRSUFFIX="64" fi +NUMJOBS=${NUMJOBS:-" -j7 "} + CWD=$(pwd) TMP=${TMP:-/tmp} PKG=$TMP/package-${PKGNAM} @@ -50,6 +59,8 @@ rm -rf ${PKGNAM}-${VERSION} tar xvf $CWD/${PKGNAM}-$VERSION.tar.bz2 || exit 1 cd ${PKGNAM}-$VERSION || exit 1 +zcat $CWD/rdesktop.CVE-2011-1595.diff.gz | patch -p1 --verbose || exit 1 + # Make sure ownerships and permissions are sane: chown -R root:root . find . \ diff --git a/source/xap/sane/sane.SlackBuild b/source/xap/sane/sane.SlackBuild index 95daed9d..613393dc 100755 --- a/source/xap/sane/sane.SlackBuild +++ b/source/xap/sane/sane.SlackBuild @@ -1,6 +1,6 @@ #!/bin/sh -# Copyright 2008, 2009, 2010 Patrick Volkerding, Sebeka, MN, USA +# Copyright 2008, 2009, 2010, 2011 Patrick Volkerding, Sebeka, MN, USA # All rights reserved. # # Redistribution and use of this script, with or without modification, is @@ -20,10 +20,10 @@ # OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF # ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -VERSION=1.0.21 -BACKVER=1.0.21 +VERSION=1.0.22 +BACKVER=1.0.22 FRONTVER=1.0.14 -BUILD=${BUILD:-1} +BUILD=${BUILD:-2} # Automatically determine the architecture we're building on: if [ -z "$ARCH" ]; then @@ -80,6 +80,7 @@ CFLAGS="$SLKCFLAGS" \ --enable-locking \ --with-lockdir=/var/lock/sane \ --with-group=scanner \ + --enable-libusb_1_0 \ --build=$ARCH-slackware-linux make $NUMJOBS || make || exit 1 diff --git a/source/xap/seamonkey/seamonkey.SlackBuild b/source/xap/seamonkey/seamonkey.SlackBuild index af563c09..6b4173e2 100755 --- a/source/xap/seamonkey/seamonkey.SlackBuild +++ b/source/xap/seamonkey/seamonkey.SlackBuild @@ -1,6 +1,6 @@ #!/bin/sh -# Copyright 2008, 2009, 2010 Patrick J. Volkerding, Sebeka, MN, USA +# Copyright 2008, 2009, 2010, 2011 Patrick J. Volkerding, Sebeka, MN, USA # All rights reserved. # # Redistribution and use of this script, with or without modification, is @@ -21,8 +21,8 @@ # ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. VERSION=${VERSION:-$(basename $(ls seamonkey-*.tar.* | cut -d - -f 2 | rev | cut -f 3- -d . | rev) .source)} -BUILD=${BUILD:-1} -NUMJOBS=${NUMJOBS:-" -j7 "} +COMM=${COMM:-central} +BUILD=${BUILD:-2} # Automatically determine the architecture we're building on: if [ -z "$ARCH" ]; then @@ -40,6 +40,8 @@ else LIBDIRSUFFIX="" fi +NUMJOBS=${NUMJOBS:-" -j7 "} + CWD=$(pwd) TMP=${TMP:-/tmp} PKG=$TMP/package-seamonkey @@ -47,9 +49,9 @@ rm -rf $PKG mkdir -p $TMP $PKG/usr cd $TMP -rm -rf comm-1.9.1 +rm -rf comm-$COMM tar xvf $CWD/seamonkey-${VERSION}.source.tar.?z* || exit 1 -cd comm-1.9.1 || exit 1 +cd comm-$COMM || exit 1 # Make sure the perms/ownerships are sane: chown -R root:root . @@ -79,12 +81,13 @@ BUILD_OFFICIAL=1 MOZILLA_OFFICIAL=1 \ --enable-strip \ --disable-tests \ --enable-svg \ - --enable-system-cairo \ --enable-canvas \ --disable-short-wchar \ --enable-nspr-autoconf \ --enable-extensions=default,irc \ --enable-crypto \ + --enable-shared-js \ + --enable-libxul \ --disable-xprint \ --without-system-nspr \ --with-system-zlib \ @@ -101,18 +104,25 @@ make $NUMJOBS || exit 1 DESTDIR=$PKG make install || exit 1 # Install js/nspr/nss headers. -for includedir in js nspr nspr/obsolete nspr/private nss plugin xpcom ; do +for includedir in nspr nspr/obsolete nspr/private ; do mkdir -p $PKG/usr/include/seamonkey-${VERSION}/$includedir cp -aL mozilla/dist/include/${includedir}/*.h $PKG/usr/include/seamonkey-${VERSION}/$includedir done -cp -aL mozilla/dist/include/js/*.tbl mozilla/dist/include/js/*.msg $PKG/usr/include/seamonkey-${VERSION}/js +cp -aL mozilla/dist/include/*.tbl mozilla/dist/include/*.msg $PKG/usr/include/seamonkey-${VERSION} cp -aL mozilla/dist/include/*.h $PKG/usr/include/seamonkey-${VERSION} cp -aL mozilla/dist/sdk/include/* $PKG/usr/include/seamonkey-${VERSION} -( cd $PKG/usr/include/seamonkey-${VERSION}/plugin - for file in ../j*.h ; do - ln -sf $file . - done +# compat symlinks +( cd $PKG/usr/include/seamonkey-${VERSION} + ln -sf . js + ln -sf . nss + ln -sf . plugin + ln -sf . xpcom ) +#( cd $PKG/usr/include/seamonkey-${VERSION}/plugin +# for file in ../j*.h ; do +# ln -sf $file . +# done +#) chown -R root:root $PKG/usr/include/seamonkey-${VERSION} find $PKG/usr/include/seamonkey-${VERSION} -name "*.h" -type f -exec chmod 644 {} \; # Create a more generic include files symlink: @@ -198,9 +208,9 @@ rm -r $TMP/package-seamonkey-solibs mkdir -p $TMP/package-seamonkey-solibs/usr/doc cp -a $PKG/usr/doc/seamonkey-$VERSION $TMP/package-seamonkey-solibs/usr/doc mkdir -p $TMP/package-seamonkey-solibs/usr/lib${LIBDIRSUFFIX}/seamonkey-${VERSION} -for file in libfreebl3.chk libfreebl3.so libmozjs.so libnspr4.so libnss3.so \ - libnssckbi.so libnssutil3.so libplc4.so libplds4.so libsmime3.so \ - libsoftokn3.chk libsoftokn3.so libssl3.so ; do +for file in libfreebl3.chk libfreebl3.so libmozjs.so libmozsqlite3.so \ + libnspr4.so libnss* libplc4.so libplds4.so libsmime3.so libsoftokn3.chk \ + libsoftokn3.so libssl3.so ; do cp -a $PKG/usr/lib${LIBDIRSUFFIX}/seamonkey-${VERSION}/$file \ $TMP/package-seamonkey-solibs/usr/lib${LIBDIRSUFFIX}/seamonkey-${VERSION} done diff --git a/source/xap/windowmaker/windowmaker.SlackBuild b/source/xap/windowmaker/windowmaker.SlackBuild index 15e32edf..74462e28 100755 --- a/source/xap/windowmaker/windowmaker.SlackBuild +++ b/source/xap/windowmaker/windowmaker.SlackBuild @@ -22,7 +22,7 @@ VERSION=20060427cvs -BUILD=${BUILD:-3} +BUILD=${BUILD:-4} NUMJOBS=${NUMJOBS:-" -j7 "} diff --git a/source/xap/windowmaker/xinitrc.wmaker b/source/xap/windowmaker/xinitrc.wmaker index 09ca61b4..2c43c1eb 100644 --- a/source/xap/windowmaker/xinitrc.wmaker +++ b/source/xap/windowmaker/xinitrc.wmaker @@ -35,4 +35,8 @@ if [ ! -x /usr/bin/cpp ]; then fi # Start the window manager: -exec /usr/bin/wmaker $NOCPP +if [ -z "$DESKTOP_SESSION" -a -x /usr/bin/ck-launch-session ]; then + exec ck-launch-session /usr/bin/wmaker $NOCPP +else + exec /usr/bin/wmaker $NOCPP +fi diff --git a/source/xap/x11-ssh-askpass/x11-ssh-askpass.SlackBuild b/source/xap/x11-ssh-askpass/x11-ssh-askpass.SlackBuild index 837b7f8a..015c489f 100755 --- a/source/xap/x11-ssh-askpass/x11-ssh-askpass.SlackBuild +++ b/source/xap/x11-ssh-askpass/x11-ssh-askpass.SlackBuild @@ -3,17 +3,23 @@ # Slackware build script for x11-ssh-askpass # Written by "Vincent Batts <vbatts@batts.mine.nu>" -# Modified by Robby Workman <rworkman@slackbuilds.org> - VERSION=1.2.4.1 -ARCH=${ARCH:-x86_64} -BUILD=${BUILD:-1} +BUILD=${BUILD:-2} TAG=${TAG:-} +# Automatically determine the architecture we're building on: +if [ -z "$ARCH" ]; then + case "$( uname -m )" in + i?86) export ARCH=i486 ;; + arm*) export ARCH=arm ;; + # Unless $ARCH is already set, use uname -m for all other archs: + *) export ARCH=$( uname -m ) ;; + esac +fi + CWD=$(pwd) TMP=${TMP:-/tmp} PKG=$TMP/package-x11-ssh-askpass -OUTPUT=${OUTPUT:-/tmp} if [ "$ARCH" = "i486" ]; then SLKCFLAGS="-O2 -march=i486 -mtune=i686" @@ -24,14 +30,17 @@ elif [ "$ARCH" = "s390" ]; then elif [ "$ARCH" = "x86_64" ]; then SLKCFLAGS="-O2 -fPIC" LIBDIRSUFFIX="64" +else + SLKCFLAGS="-O2" + LIBDIRSUFFIX="" fi rm -rf $PKG mkdir -p $TMP $PKG $OUTPUT cd $TMP rm -rf x11-ssh-askpass-$VERSION -tar xvf $CWD/x11-ssh-askpass-$VERSION.tar.gz -cd x11-ssh-askpass-$VERSION +tar xvf $CWD/x11-ssh-askpass-$VERSION.tar.gz || exit 1 +cd x11-ssh-askpass-$VERSION || exit 1 chown -R root:root . chmod -R a-s,u+rw,go+r-w . @@ -48,20 +57,20 @@ make || exit 1 make install DESTDIR=$PKG || exit 1 make install.man DESTDIR=$PKG || exit 1 -( cd $PKG - find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | \ - xargs strip --strip-unneeded 2> /dev/null || true - find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | \ - xargs strip --strip-unneeded 2> /dev/null -) +find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \ + | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true -gzip -9 $PKG/usr/man/man1/x11-ssh-askpass.1x +find $PKG/usr/man -type f -exec gzip -9 {} \; +for i in $( find $PKG/usr/man -type l ) ; do ln -s $( readlink $i ).gz $i.gz ; rm $i ; done mkdir -p $PKG/usr/doc/x11-ssh-askpass-$VERSION -cp README $CWD/xprofile.sample $PKG/usr/doc/x11-ssh-askpass-$VERSION +cp -a \ + README TODO ChangeLog $CWD/xprofile.sample \ + $PKG/usr/doc/x11-ssh-askpass-$VERSION +chown -R root:root $PKG/usr/doc/x11-ssh-askpass-$VERSION mkdir -p $PKG/install cat $CWD/slack-desc > $PKG/install/slack-desc cd $PKG -/sbin/makepkg -l y -c n $OUTPUT/x11-ssh-askpass-$VERSION-$ARCH-$BUILD$TAG.txz +/sbin/makepkg -l y -c n $TMP/x11-ssh-askpass-$VERSION-$ARCH-$BUILD.txz diff --git a/source/xap/xaos/slack-desc b/source/xap/xaos/slack-desc new file mode 100644 index 00000000..a35a1fdf --- /dev/null +++ b/source/xap/xaos/slack-desc @@ -0,0 +1,19 @@ +# HOW TO EDIT THIS FILE: +# The "handy ruler" below makes it easier to edit a package description. Line +# up the first '|' above the ':' following the base package name, and the '|' +# on the right side marks the last column you can put a character in. You must +# make exactly 11 lines for the formatting to be correct. It's also +# customary to leave one space after the ':'. + + |-----handy-ruler------------------------------------------------------| +xaos: xaos (an interactive fractal zoomer) +xaos: +xaos: XaoS is a fast portable real-time interactive fractal zoomer. It +xaos: displays the Mandelbrot set (and other popular fractals), and allows +xaos: the user to smoothly zoom in or out of a fractal. Other features +xaos: include autopilot mode, palette changing, PNG saving, and fractal +xaos: inversion. +xaos: +xaos: Visit XaoS online: http://xaos.sf.net +xaos: +xaos: diff --git a/source/xap/xaos/xaos.6 b/source/xap/xaos/xaos.6 new file mode 100644 index 00000000..a0544a57 --- /dev/null +++ b/source/xap/xaos/xaos.6 @@ -0,0 +1,266 @@ +.TH XaoS 6 "16 Oct 2010" "XaoS" "Demos" + +.SH NAME +xaos - Fast interactive real-time fractal zoomer/morpher + +.SH SYNOPSIS +xaos [\fIOPTIONS\fR] + +.SH DESCRIPTION +XaoS is a fast portable real-time interactive fractal zoomer. It +displays the Mandelbrot set (among other escape time fractals) and +allows you to zoom smoothly into the fractal. Various coloring modes are +provided for both the points inside and outside the selected set. In +addition, switching between Julia and Mandelbrot fractal types and +displaying planes is provided. The first version was a poorly written +Mandelbrot viewer by Thomas later modified by Jan to support high +frame-rate zooming. Other additions were later made including autopilot +(for those of you without driver licenses), palette changing, PNG +saving, and fractal inversion. + +.SH OPTIONS + + -delay number + Delay screen updates (milliseconds) + -driver string + Select driver + -list List available drivers. Then exit + -config Print configuration. Then exit + -speedtest Test speed of calculation loop. Then exit + -threads number + Set number of threads (CPUs) to use + -pipe string + Accept commands from pipe (use "-" for stdin) + -maxframerate number + Maximal framerate (0 for unlimited - default) + +Screen size options: + + Knowledge of exact screen size makes random dot stereogram look better. + Also is used for choosing correct view area + + -screenwidth f.point + exact size of screen in centimeters + -screenheight f.point + exact size of screen in centimeters + + Use this option in case you use some kind of virtual screen + or something similiar that confuses previous options + + -pixelwidth f.point + exact size of one pixel in centimeters + -pixelheight f.point + exact size of one pixel in centimeters + +Animation rendering: + + -render string + Render animation into seqence of .png files + -basename string + Name for .png files (XaoS will add 4 digit number and extension + -size string + widthxheight + -renderimage string + 256 or truecolor + -renderframerate f.point + framerate + -antialiasing Perform antialiasing (slow, requires quite lot of memory) + -alwaysrecalc Always recalculate whole image (slowes down rendering, increases quality) + -rendervectors Render motion vectors (should be used for MPEG encoding) + -iframedist number + Recommended distance between I frames in pat file (should be used for MPEG encoding) + +X11 driver options: + + -display string + Select display + -size string + Select size of window (WIDTHxHEIGHT). + -sync Generate sync signals before looking for events. This + helps on old and buggy HP-UX X servers. + -shared Use shared colormap on pseudocolor display. + -usedefault Use default visual if autodetection causes troubles. + -nomitshm Disable MITSHM extension. + -fullscreen Enable fullscreen mode. + -windowid number + Use selected window. + -window-id number + Use selected window. + -root Use root window. + +Command line options only + + -print_menus print menus specifications of all menus + -print_menu string + print menu specification + -xshl_print_menustring + print menu specification in xshl format + -xshl_print_menus print all menu specifications in xshl format + -print_dialog string + print dialog specification + +File + + -loadpos input_file + Load + -savepos output_file + Save + -record output_file + Record + -play input_file + Replay + -saveimg output_file + Save image + -loadexample Load random example + -savecfg Save configuration + +Fractal + + -perturbation real_number real_number + Perturbation + -initstate Reset to defaults + -julia on|off + Julia mode + -view real_number real_number real_number real_number + View + -angle real_number + Set angle + -plane integer + Set plane + -incoloring integer + Inside coloring mode + -outcoloring integer + Outside coloring mode + -intcoloring integer + Inside truecolor coloring mode + -outtcoloring integer + Outside truecolor coloring mode + -juliaseed real_number real_number + Julia seed + +Calculation + + -periodicity Periodicity checking + -maxiter integer + Iterations + -bailout real_number + Bailout + -fastjulia Fast julia mode + -range integer + Solid guessing range + +Filters + + -edge Edge detection + -edge2 Edge detection2 + -threed Pseudo 3d + -starfield Starfield + -stereogram Random dot stereogram + -interlace Interlace filter + -blur Motionblur + -emboss Emboss + -palettef Palette emulator + -anti Antialiasing + -truecolor Truecolor emulator + +UI + + -letterspersec integer + Letters per second + -autopilot Autopilot + -inhibittextoutput VJ mode + -recalculate Recalculate + -interrupt Interrupt + -speed real_number + Zooming speed + -fixedstep Fixed step + -nogui Disable XaoS's builtin GUI + -status Status + -ministatus Ministatus + +Misc + + -playstr string + Play string + -text string + Display text + -color white|black|red + Color + -textposition left|center|right top|middle|bottom + Text position + -message string + Message + +Help + + -help Help + +Formulae + + -mandel Mandelbrot + -mandel3 Mandelbrot^3 + -mandel4 Mandelbrot^4 + -mandel5 Mandelbrot^5 + -mandel6 Mandelbrot^6 + -newton Newton + -newton4 Newton^4 + -barnsley Barnsley1 + -barnsley2 Barnsley2 + -barnsley3 Barnsley3 + -octal Octal + -phoenix Phoenix + -magnet Magnet + -magnet2 Magnet2 + +More formulae + + -trice Triceratops + -catseye Catseye + -mbar Mandelbar + -mlambda Lambda + -manowar Manowar + -spider Spider + -sier Sierpinski + -carpet S.Carpet + -koch Koch Snowflake + -hornflake Spidron hornflake + +Palette + + -defpalette Default palette + -randompalette Random palette + -palette integer integer integer + Custom palette + -cycling Color cycling + -cyclingspeed integer + Color cycling speed + -shiftpalette integer + Shift palette + +Dynamic resolution + + -fastmode zero|never|animation|new|allways + Dynamic resolution mode + +Rotation + + -rotationspeed real_number + Rotation speed + -autorotate on|off + Automatic rotation + -fastrotate on|off + Fast rotation mode + +Quit + + -quit Exit now + +.SH DETAILS +This manual page is obsolete and no longer maintained. +Please read the full documentation running +XaoS. You can start it typing 'xaos'. (Press 'h' 3 +times to get into the help system.) +.P +In addition, +.B xaos --help +should give a detailed list about the command line options. diff --git a/source/xap/xaos/xaos.SlackBuild b/source/xap/xaos/xaos.SlackBuild new file mode 100755 index 00000000..c562b681 --- /dev/null +++ b/source/xap/xaos/xaos.SlackBuild @@ -0,0 +1,152 @@ +#!/bin/sh + +# Copyright 2010 B. Watson (yalhcru@gmail.com) +# Copyright 2010 Patrick J. Volkerding, Sebeka, Minnesota, USA +# All rights reserved. +# +# Redistribution and use of this script, with or without modification, is +# permitted provided that the following conditions are met: +# +# 1. Redistributions of this script must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# +# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED +# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF +# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO +# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, +# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; +# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, +# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR +# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF +# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +# Slackware build script for xaos + +# Written by B. Watson (yalhcru@gmail.com) + +# A few notes: +# +# Package really wants to use its own CFLAGS (even checks for them +# in the configure script). Let it... +# +# SFFE is the user formula evaluator, which allows users to define their +# own fractals. On x86 platforms, an assembly-language implementation of +# SFFE is used. On non-x86 platforms, SFFE requires a library called GSL +# (GNU Scientific Library, available from SBo). +# +# xaos is still interesting and useful without SFFE support (most users +# probably don't know/care about the math, so they'll never use the SFFE +# stuff anyway), so we'll just disable it on non-x86 platforms by default. +# +# If you really want to use it, set USE_GSL=yes in the environment before +# running this script. There's no need to use GSL on x86 platforms, since +# the asm code is (or should be) faster, but the option is there if you +# want to use it anyway. +# +# Multilib users also have the option of building on a 32-bit Slackware system +# (or in a chroot) and the resulting package will run just fine on 64-bit. +# +# If the preceding didn't make any sense, here's the bottom line: +# +# - Regular Slackware (x86) users can just run this script and ignore the junk +# above. +# +# - Everyone else (Slamd64, Bluewhite64, Slackware64, ???) can just +# run this script and probably never notice the missing functionality. +# +# - If you're not on x86, but you want the formula evaluator, install GSL +# and then run this script with USE_GSL=yes in the environment. + +PKGNAM=xaos +VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)} +BUILD=${BUILD:-1} + +# Automatically determine the architecture we're building on: +if [ -z "$ARCH" ]; then + case "$( uname -m )" in + # might as well use i686 since it won't listen to our CFLAGS anyway + i?86) ARCH=i686 ;; + arm*) ARCH=arm ;; + # Unless $ARCH is already set, use uname -m for all other archs: + *) ARCH=$( uname -m ) ;; + esac +fi + +CWD=$(pwd) +TMP=${TMP:-/tmp} +PKG=$TMP/package-$PKGNAM +OUTPUT=${OUTPUT:-/tmp} + +USE_GSL=${USE_GSL:-no} + +if [ "$USE_GSL" = "yes" ]; then + GSL_OPT="yes" + SFFE_OPT="yes" +elif [ "$ARCH" = "i486" -o "$ARCH" = "i686" ]; then + GSL_OPT="no" + SFFE_OPT="yes" +else + GSL_OPT="no" + SFFE_OPT="no" +fi + +rm -rf $PKG +mkdir -p $TMP $PKG $OUTPUT +cd $TMP +rm -rf $PKGNAM-$VERSION +tar xvf $CWD/$PKGNAM-$VERSION.tar.?z* || exit 1 +cd $PKGNAM-$VERSION || exit 1 +chown -R root:root . +chmod -R a-s,u+w,go+r-w . + +./configure \ + --prefix=/usr \ + --docdir=/usr/doc/$PKGNAM-$VERSION \ + --infodir=/usr/info \ + --mandir=/usr/man \ + --with-gsl=$GSL_OPT \ + --with-sffe=$SFFE_OPT \ + --with-pthread=yes \ + --build=$ARCH-slackware-linux + +make || exit 1 +# binary already stripped, yay! +make install DESTDIR=$PKG || exit 1 + +# Replace bogus manpage: +zcat $CWD/xaos.6.gz > $PKG/usr/man/man6/xaos.6 + +gzip -9 $PKG/usr/man/man6/xaos.6 +rm -f $PKG/usr/info/dir +gzip -9 $PKG/usr/info/*.info* + +mkdir -p $PKG/usr/doc +mv $PKG/usr/share/XaoS/doc $PKG/usr/doc/xaos-$VERSION +( cd $PKG/usr/share/XaoS ; ln -sf ../../doc/xaos-$VERSION doc ) + +mkdir -p $PKG/usr/share/applications +cat $CWD/xaos.desktop > $PKG/usr/share/applications/xaos.desktop + +mkdir -p $PKG/usr/share/pixmaps +cat $CWD/xaos.png > $PKG/usr/share/pixmaps/xaos.png + +chmod 644 $PKG/usr/doc/xaos-$VERSION/* +rm -f $PKG/usr/doc/xaos-$VERSION/ChangeLog.old +cp -a \ + AUTHORS COPYING* INSTALL NEWS README* TODO \ + $PKG/usr/doc/xaos-$VERSION + +# If there's a ChangeLog, installing at least part of the recent history +# is useful, but don't let it get totally out of control: +if [ -r ChangeLog ]; then + DOCSDIR=$(echo $PKG/usr/doc/${PKGNAM}-$VERSION) + cat ChangeLog | head -n 1000 > $DOCSDIR/ChangeLog + touch -r ChangeLog $DOCSDIR/ChangeLog +fi + +mkdir -p $PKG/install +cat $CWD/slack-desc > $PKG/install/slack-desc + +cd $PKG +/sbin/makepkg -l y -c n $OUTPUT/$PKGNAM-$VERSION-$ARCH-$BUILD.txz diff --git a/source/xap/xaos/xaos.desktop b/source/xap/xaos/xaos.desktop new file mode 100644 index 00000000..5157bf9d --- /dev/null +++ b/source/xap/xaos/xaos.desktop @@ -0,0 +1,10 @@ +[Desktop Entry] +Version=1.0 +Name=XaoS +GenericName=XaoS Fractal Explorer +Type=Application +Exec=xaos +Icon=xaos +Terminal=false +StartupNotify=false +Categories=Game; diff --git a/source/xap/xaos/xaos.png b/source/xap/xaos/xaos.png Binary files differnew file mode 100644 index 00000000..9aa39b81 --- /dev/null +++ b/source/xap/xaos/xaos.png diff --git a/source/xap/xchat/patches/patches.url b/source/xap/xchat/patches/patches.url deleted file mode 100644 index 33531f7c..00000000 --- a/source/xap/xchat/patches/patches.url +++ /dev/null @@ -1 +0,0 @@ -http://xchat.org/files/source/2.8/patches/ diff --git a/source/xap/xchat/patches/xc286-smallfixes.diff b/source/xap/xchat/patches/xc286-smallfixes.diff deleted file mode 100644 index da900152..00000000 --- a/source/xap/xchat/patches/xc286-smallfixes.diff +++ /dev/null @@ -1,68 +0,0 @@ -# -# Various small fixes from CVS that are considered safe to apply to 2.8.6. -# ---- xchat-2.8.6/src/common/cfgfiles.c 2008-02-05 21:02:47.000000000 +1100 -+++ xchat-2.8.6p1/src/common/cfgfiles.c 2008-06-15 13:45:43.000000000 +1000 -@@ -886,7 +886,6 @@ - set_showval (session *sess, const struct prefs *var, char *tbuf) - { - int len, dots, j; -- static const char *offon[] = { "OFF", "ON" }; - - len = strlen (var->name); - memcpy (tbuf, var->name, len); -@@ -909,8 +908,10 @@ - *((int *) &prefs + var->offset)); - break; - case TYPE_BOOL: -- sprintf (tbuf + len, "\0033:\017 %s\n", offon[ -- *((int *) &prefs + var->offset)]); -+ if (*((int *) &prefs + var->offset)) -+ sprintf (tbuf + len, "\0033:\017 %s\n", "ON"); -+ else -+ sprintf (tbuf + len, "\0033:\017 %s\n", "OFF"); - break; - } - PrintText (sess, tbuf); ---- xchat-2.8.6/src/common/chanopt.c 2008-06-10 22:00:55.000000000 +1000 -+++ xchat-2.8.6p1/src/common/chanopt.c 2008-06-15 13:48:04.000000000 +1000 -@@ -32,7 +32,7 @@ - - #define S_F(xx) STRUCT_OFFSET_STR(struct session,xx) - --channel_options chanopt[] = -+static const channel_options chanopt[] = - { - {"alert_beep", "BEEP", S_F(alert_beep)}, - {"alert_taskbar", NULL, S_F(alert_taskbar)}, ---- xchat-2.8.6/src/common/servlist.c 2008-04-01 19:22:34.000000000 +1100 -+++ xchat-2.8.6p1/src/common/servlist.c 2008-06-15 13:57:41.000000000 +1000 -@@ -509,6 +509,8 @@ - list = g_slist_nth (net->servlist, net->selected); - if (!list) - list = net->servlist; -+ if (!list) -+ return; - ircserv = list->data; - - /* incase a protocol switch is added to the servlist gui */ ---- xchat-2.8.6/src/common/text.c 2008-03-28 13:20:04.000000000 +1100 -+++ xchat-2.8.6p1/src/common/text.c 2008-06-15 13:59:59.000000000 +1000 -@@ -216,7 +216,7 @@ - static void - scrollback_save (session *sess, char *text) - { -- char buf[1024]; -+ char buf[512 * 4]; - time_t stamp; - int len; - -@@ -266,7 +266,7 @@ - scrollback_load (session *sess) - { - int fh; -- char buf[1024]; -+ char buf[512 * 4]; - char *text; - time_t stamp; - int lines; diff --git a/source/xap/xchat/patches/xchat.gtk_2_14.diff b/source/xap/xchat/patches/xchat.gtk_2_14.diff deleted file mode 100644 index f0a42a1c..00000000 --- a/source/xap/xchat/patches/xchat.gtk_2_14.diff +++ /dev/null @@ -1,191 +0,0 @@ -diff -ur xchat-2.8.6.orig/src/fe-gtk/about.c xchat-2.8.6/src/fe-gtk/about.c ---- xchat-2.8.6.orig/src/fe-gtk/about.c 2008-04-01 10:58:38.000000000 +0200 -+++ xchat-2.8.6/src/fe-gtk/about.c 2008-10-12 14:12:59.329706289 +0200 -@@ -16,7 +16,7 @@ - * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA - */ - --#define GTK_DISABLE_DEPRECATED -+/* #define GTK_DISABLE_DEPRECATED */ - - #include <stdio.h> - #include <stdlib.h> -diff -ur xchat-2.8.6.orig/src/fe-gtk/ascii.c xchat-2.8.6/src/fe-gtk/ascii.c ---- xchat-2.8.6.orig/src/fe-gtk/ascii.c 2008-02-05 11:02:50.000000000 +0100 -+++ xchat-2.8.6/src/fe-gtk/ascii.c 2008-10-12 14:12:59.329706289 +0200 -@@ -16,7 +16,7 @@ - * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA - */ - --#define GTK_DISABLE_DEPRECATED -+/* #define GTK_DISABLE_DEPRECATED */ - - #include <stdio.h> - #include <stdlib.h> -diff -ur xchat-2.8.6.orig/src/fe-gtk/banlist.c xchat-2.8.6/src/fe-gtk/banlist.c ---- xchat-2.8.6.orig/src/fe-gtk/banlist.c 2008-02-05 11:02:50.000000000 +0100 -+++ xchat-2.8.6/src/fe-gtk/banlist.c 2008-10-12 14:12:59.329706289 +0200 -@@ -16,7 +16,7 @@ - * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA - */ - --#define GTK_DISABLE_DEPRECATED -+/* #define GTK_DISABLE_DEPRECATED */ - - #include <stdio.h> - #include <stdlib.h> -diff -ur xchat-2.8.6.orig/src/fe-gtk/fe-gtk.c xchat-2.8.6/src/fe-gtk/fe-gtk.c ---- xchat-2.8.6.orig/src/fe-gtk/fe-gtk.c 2008-02-24 09:39:44.000000000 +0100 -+++ xchat-2.8.6/src/fe-gtk/fe-gtk.c 2008-10-12 14:12:59.339702951 +0200 -@@ -16,7 +16,7 @@ - * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA - */ - --#define GTK_DISABLE_DEPRECATED -+/* #define GTK_DISABLE_DEPRECATED */ - - #include <stdio.h> - #include <string.h> -diff -ur xchat-2.8.6.orig/src/fe-gtk/ignoregui.c xchat-2.8.6/src/fe-gtk/ignoregui.c ---- xchat-2.8.6.orig/src/fe-gtk/ignoregui.c 2008-02-05 11:02:52.000000000 +0100 -+++ xchat-2.8.6/src/fe-gtk/ignoregui.c 2008-10-12 14:12:59.343034799 +0200 -@@ -16,7 +16,7 @@ - * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA - */ - --#define GTK_DISABLE_DEPRECATED -+/* #define GTK_DISABLE_DEPRECATED */ - - #include <stdio.h> - #include <stdlib.h> -diff -ur xchat-2.8.6.orig/src/fe-gtk/maingui.c xchat-2.8.6/src/fe-gtk/maingui.c ---- xchat-2.8.6.orig/src/fe-gtk/maingui.c 2008-04-01 10:53:41.000000000 +0200 -+++ xchat-2.8.6/src/fe-gtk/maingui.c 2008-10-12 14:12:59.349699891 +0200 -@@ -16,7 +16,7 @@ - * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA - */ - --#define GTK_DISABLE_DEPRECATED -+/* #define GTK_DISABLE_DEPRECATED */ - - #include <stdlib.h> - #include <string.h> -diff -ur xchat-2.8.6.orig/src/fe-gtk/menu.c xchat-2.8.6/src/fe-gtk/menu.c ---- xchat-2.8.6.orig/src/fe-gtk/menu.c 2008-06-08 09:59:37.000000000 +0200 -+++ xchat-2.8.6/src/fe-gtk/menu.c 2008-10-12 14:12:59.349699891 +0200 -@@ -16,7 +16,7 @@ - * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA - */ - --#define GTK_DISABLE_DEPRECATED -+/* #define GTK_DISABLE_DEPRECATED */ - - #include <stdio.h> - #include <stdlib.h> -diff -ur xchat-2.8.6.orig/src/fe-gtk/notifygui.c xchat-2.8.6/src/fe-gtk/notifygui.c ---- xchat-2.8.6.orig/src/fe-gtk/notifygui.c 2008-02-05 11:03:34.000000000 +0100 -+++ xchat-2.8.6/src/fe-gtk/notifygui.c 2008-10-12 14:12:59.363033500 +0200 -@@ -16,7 +16,7 @@ - * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA - */ - --#define GTK_DISABLE_DEPRECATED -+/* #define GTK_DISABLE_DEPRECATED */ - - #include <stdio.h> - #include <stdlib.h> -diff -ur xchat-2.8.6.orig/src/fe-gtk/palette.c xchat-2.8.6/src/fe-gtk/palette.c ---- xchat-2.8.6.orig/src/fe-gtk/palette.c 2008-02-05 11:02:52.000000000 +0100 -+++ xchat-2.8.6/src/fe-gtk/palette.c 2008-10-12 14:12:59.363033500 +0200 -@@ -16,7 +16,7 @@ - * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA - */ - --#define GTK_DISABLE_DEPRECATED -+/* #define GTK_DISABLE_DEPRECATED */ - - #include <stdio.h> - #include <stdlib.h> -diff -ur xchat-2.8.6.orig/src/fe-gtk/pixmaps.c xchat-2.8.6/src/fe-gtk/pixmaps.c ---- xchat-2.8.6.orig/src/fe-gtk/pixmaps.c 2008-02-05 11:02:52.000000000 +0100 -+++ xchat-2.8.6/src/fe-gtk/pixmaps.c 2008-10-12 14:12:59.363033500 +0200 -@@ -16,7 +16,7 @@ - * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA - */ - --#define GTK_DISABLE_DEPRECATED -+/* #define GTK_DISABLE_DEPRECATED */ - - #include <stdio.h> - #include <string.h> -diff -ur xchat-2.8.6.orig/src/fe-gtk/plugingui.c xchat-2.8.6/src/fe-gtk/plugingui.c ---- xchat-2.8.6.orig/src/fe-gtk/plugingui.c 2008-02-05 11:02:52.000000000 +0100 -+++ xchat-2.8.6/src/fe-gtk/plugingui.c 2008-10-12 14:12:59.363033500 +0200 -@@ -16,7 +16,7 @@ - * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA - */ - --#define GTK_DISABLE_DEPRECATED -+/* #define GTK_DISABLE_DEPRECATED */ - - #include <string.h> - #include <stdio.h> -diff -ur xchat-2.8.6.orig/src/fe-gtk/rawlog.c xchat-2.8.6/src/fe-gtk/rawlog.c ---- xchat-2.8.6.orig/src/fe-gtk/rawlog.c 2008-02-24 05:49:37.000000000 +0100 -+++ xchat-2.8.6/src/fe-gtk/rawlog.c 2008-10-12 14:12:59.366369608 +0200 -@@ -16,7 +16,7 @@ - * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA - */ - --#define GTK_DISABLE_DEPRECATED -+/* #define GTK_DISABLE_DEPRECATED */ - - #include <stdio.h> - #include <string.h> -diff -ur xchat-2.8.6.orig/src/fe-gtk/search.c xchat-2.8.6/src/fe-gtk/search.c ---- xchat-2.8.6.orig/src/fe-gtk/search.c 2008-02-05 11:02:53.000000000 +0100 -+++ xchat-2.8.6/src/fe-gtk/search.c 2008-10-12 14:12:59.369703062 +0200 -@@ -16,7 +16,7 @@ - * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA - */ - --#define GTK_DISABLE_DEPRECATED -+/* #define GTK_DISABLE_DEPRECATED */ - - #include <stdio.h> - #include <string.h> -diff -ur xchat-2.8.6.orig/src/fe-gtk/urlgrab.c xchat-2.8.6/src/fe-gtk/urlgrab.c ---- xchat-2.8.6.orig/src/fe-gtk/urlgrab.c 2008-02-05 11:02:53.000000000 +0100 -+++ xchat-2.8.6/src/fe-gtk/urlgrab.c 2008-10-12 14:12:59.376368714 +0200 -@@ -16,7 +16,7 @@ - * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA - */ - --#define GTK_DISABLE_DEPRECATED -+/* #define GTK_DISABLE_DEPRECATED */ - - #include <stdio.h> - #include <string.h> -diff -ur xchat-2.8.6.orig/src/fe-gtk/userlistgui.c xchat-2.8.6/src/fe-gtk/userlistgui.c ---- xchat-2.8.6.orig/src/fe-gtk/userlistgui.c 2008-02-05 11:02:53.000000000 +0100 -+++ xchat-2.8.6/src/fe-gtk/userlistgui.c 2008-10-12 14:12:59.379703216 +0200 -@@ -16,7 +16,7 @@ - * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA - */ - --#define GTK_DISABLE_DEPRECATED -+/* #define GTK_DISABLE_DEPRECATED */ - - #include <stdio.h> - #include <string.h> -diff -ur xchat-2.8.6.orig/src/fe-gtk/xtext.h xchat-2.8.6/src/fe-gtk/xtext.h ---- xchat-2.8.6.orig/src/fe-gtk/xtext.h 2008-02-24 05:48:02.000000000 +0100 -+++ xchat-2.8.6/src/fe-gtk/xtext.h 2008-10-12 14:10:49.203049619 +0200 -@@ -1,6 +1,7 @@ - #ifndef __XTEXT_H__ - #define __XTEXT_H__ - -+#include <gtk/gtktypeutils.h> - #include <gtk/gtkadjustment.h> - #ifdef USE_XFT - #include <X11/Xft/Xft.h> diff --git a/source/xap/xchat/xchat.SlackBuild b/source/xap/xchat/xchat.SlackBuild index 8058f904..cc7b5e1a 100755 --- a/source/xap/xchat/xchat.SlackBuild +++ b/source/xap/xchat/xchat.SlackBuild @@ -1,6 +1,6 @@ #!/bin/sh -# Copyright 2008, 2009, 2010 Patrick J. Volkerding, Sebeka, MN, USA +# Copyright 2008, 2009, 2010, 2011 Patrick J. Volkerding, Sebeka, MN, USA # All rights reserved. # # Redistribution and use of this script, with or without modification, is @@ -21,8 +21,8 @@ # ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -VERSION=2.8.6 -BUILD=${BUILD:-5} +VERSION=2.8.8 +BUILD=${BUILD:-3} # Automatically determine the architecture we're building on: if [ -z "$ARCH" ]; then diff --git a/source/xap/xfce/patches/Thunar.thunar-vfs-io-local.diff b/source/xap/xfce/patches/Thunar.thunar-vfs-io-local.diff new file mode 100644 index 00000000..7d92c3e4 --- /dev/null +++ b/source/xap/xfce/patches/Thunar.thunar-vfs-io-local.diff @@ -0,0 +1,20 @@ +--- thunar-vfs/thunar-vfs-io-local.c.old 2008-06-13 12:43:52.000000000 +0200 ++++ thunar-vfs/thunar-vfs-io-local.c 2008-06-13 14:41:46.000000000 +0200 +@@ -301,7 +301,7 @@ + } + + /* check whether we have a hidden file here */ +- if ((s - (const guchar *) name) > 1 && (*name == '.' || *(s - 1) == '~')) ++ if ((s - (const guchar *) name) > 1 && (*name == '.' )) + info->flags = THUNAR_VFS_FILE_FLAGS_HIDDEN; + else + info->flags = THUNAR_VFS_FILE_FLAGS_NONE; +@@ -1029,7 +1029,7 @@ + info->display_name = g_strdup (name); + + /* check if this is a hidden file now */ +- if (strlen (name) > 1 && (name[0] == '.' || name[strlen (name) - 1] == '~')) ++ if (strlen (name) > 1 && (name[0] == '.')) + info->flags |= THUNAR_VFS_FILE_FLAGS_HIDDEN; + else + info->flags &= ~THUNAR_VFS_FILE_FLAGS_HIDDEN; diff --git a/source/xap/xfce/patches/fixup_comments_in_xfce-utils-Xft.xrdb.diff b/source/xap/xfce/patches/fixup_comments_in_xfce-utils-Xft.xrdb.diff new file mode 100644 index 00000000..be64a2da --- /dev/null +++ b/source/xap/xfce/patches/fixup_comments_in_xfce-utils-Xft.xrdb.diff @@ -0,0 +1,24 @@ +From b55be8ded0c7e1119eb062a5831b246b618c89e8 Mon Sep 17 00:00:00 2001 +From: Mike Massonnet <mmassonnet@gmail.com> +Date: Thu, 8 Apr 2010 22:38:50 +0200 +Subject: [PATCH] use right comment character (! and not #) in Xft.xrdb file (bug 6314) + + scripts/Xft.xrdb | 8 ++++---- + 1 files changed, 4 insertions(+), 4 deletions(-) + +diff --git a/scripts/Xft.xrdb b/scripts/Xft.xrdb +index af45361..cd26513 100644 +--- a/scripts/Xft.xrdb ++++ b/scripts/Xft.xrdb +@@ -1,7 +1,7 @@ +-# Those are fallback settings, use the ui plugin to change it +-# or add your overrides to ~/.Xresources +-# Xft.hintstyle: hintnone/hintslight/hintmedium/hintfull +-# Xft hinting: 1/0 ++! Those are fallback settings, use the ui plugin to change it ++! or add your overrides to ~/.Xresources ++! Xft.hintstyle: hintnone/hintslight/hintmedium/hintfull ++! Xft hinting: 1/0 + + Xft.hinting: 1 + Xft.hintstyle: hintmedium diff --git a/source/xap/xfce/patches/mousepad-fix_find.diff b/source/xap/xfce/patches/mousepad-fix_find.diff new file mode 100644 index 00000000..6477cd78 --- /dev/null +++ b/source/xap/xfce/patches/mousepad-fix_find.diff @@ -0,0 +1,43 @@ +commit a6383ccf4e3ba425ffb6489a795785e6a626c048 +Author: Nick Schermer <nick@xfce.org> +Date: Tue Jul 6 17:53:54 2010 +0200 + + Also fix find (bug #6544). + +diff --git a/src/search.c b/src/search.c +index 4fb1c5b..91f69cf 100644 +--- a/src/search.c ++++ b/src/search.c +@@ -78,7 +78,7 @@ gboolean document_search_real(StructData *sd, gint direction) + static gint document_replace_real(StructData *sd) + { + GtkTextIter iter, match_start, match_end; +- GtkTextMark *mark_init = NULL; ++ GtkTextMark *mark_init = NULL, *mark_start, *mark_end; + gboolean res; + gint num = 0; + GtkWidget *q_dialog = NULL; +@@ -113,6 +113,11 @@ static gint document_replace_real(StructData *sd) + if (num == 0 && q_dialog == NULL) + q_dialog = create_dialog_message_question( + gtk_widget_get_toplevel(sd->mainwin->textview), _("Replace?")); ++ ++ gtk_text_buffer_get_selection_bounds(textbuffer, &match_start, &match_end); ++ mark_start = gtk_text_buffer_create_mark(textbuffer, NULL, &match_start, FALSE); ++ mark_end = gtk_text_buffer_create_mark(textbuffer, NULL, &match_end, FALSE); ++ + switch (gtk_dialog_run(GTK_DIALOG(q_dialog))) { + case GTK_RESPONSE_CANCEL: + res = 0; +@@ -122,6 +127,11 @@ static gint document_replace_real(StructData *sd) + case GTK_RESPONSE_NO: + continue; + } ++ ++ gtk_text_buffer_get_iter_at_mark(textbuffer, &match_start, mark_start); ++ gtk_text_buffer_get_iter_at_mark(textbuffer, &match_end, mark_end); ++ gtk_text_buffer_move_mark_by_name(textbuffer, "selection_bound", &match_start); ++ gtk_text_buffer_move_mark_by_name(textbuffer, "insert", &match_end); + } + gtk_text_buffer_delete_selection(textbuffer, TRUE, TRUE); + undo_set_sequency(TRUE); diff --git a/source/xap/xfce/patches/mousepad-fix_find_and_replace.diff b/source/xap/xfce/patches/mousepad-fix_find_and_replace.diff new file mode 100644 index 00000000..5db73b1e --- /dev/null +++ b/source/xap/xfce/patches/mousepad-fix_find_and_replace.diff @@ -0,0 +1,36 @@ +commit 80819d447df5661ee6c9e9cd22f501cee612da8b +Author: Lionel Le Folgoc <mrpouit@gmail.com> +Date: Mon Jul 5 19:57:53 2010 +0200 + + Fix find and replace (bug #5831). + +diff --git a/src/search.c b/src/search.c +index 07e29c7..4fb1c5b 100644 +--- a/src/search.c ++++ b/src/search.c +@@ -210,8 +210,11 @@ gint run_dialog_find(StructData *sd) + G_CALLBACK(toggle_sensitivity), NULL); + g_signal_connect(G_OBJECT(entry_find), "delete-text", + G_CALLBACK(toggle_sensitivity), NULL); +- if (sd->search.string_find) ++ if (sd->search.string_find) { + gtk_entry_set_text(GTK_ENTRY(entry_find), sd->search.string_find); ++ gtk_dialog_set_response_sensitive(GTK_DIALOG(dialog), ++ GTK_RESPONSE_OK, TRUE); ++ } + + gtk_dialog_set_default_response(GTK_DIALOG(dialog), GTK_RESPONSE_OK); + gtk_entry_set_activates_default(GTK_ENTRY(entry_find), TRUE); +@@ -275,8 +278,11 @@ gint run_dialog_replace(StructData *sd) + G_CALLBACK(toggle_sensitivity), NULL); + g_signal_connect(G_OBJECT(entry_find), "delete-text", + G_CALLBACK(toggle_sensitivity), NULL); +- if (sd->search.string_find) ++ if (sd->search.string_find) { + gtk_entry_set_text(GTK_ENTRY(entry_find), sd->search.string_find); ++ gtk_dialog_set_response_sensitive(GTK_DIALOG(dialog), ++ GTK_RESPONSE_OK, TRUE); ++ } + label_replace = gtk_label_new_with_mnemonic(_("Re_place with: ")); + gtk_misc_set_alignment(GTK_MISC(label_replace), 0, 0.5); + gtk_table_attach_defaults(GTK_TABLE(table), label_replace, 0, 1, 1, 2); diff --git a/source/xap/xfce/patches/no_sensitive_panel_during_plugin_moves.patch b/source/xap/xfce/patches/no_sensitive_panel_during_plugin_moves.patch new file mode 100644 index 00000000..6e5b4a9a --- /dev/null +++ b/source/xap/xfce/patches/no_sensitive_panel_during_plugin_moves.patch @@ -0,0 +1,26 @@ +From 8ae5177d843802b49e90ecf801d8a4fac00b866a Mon Sep 17 00:00:00 2001 +From: Robby Workman <rworkman@slackware.com> +Date: Tue, 22 Feb 2011 21:48:56 -0600 +Subject: [PATCH] panel/panel.c: Don't make panel insensitive during plugin moves + +This fixes http://bugzilla.xfce.org/show_bug.cgi?id=6818 while +working around https://bugzilla.gnome.org/show_bug.cgi?id=634765 +--- + panel/panel.c | 1 - + 1 files changed, 0 insertions(+), 1 deletions(-) + +diff --git a/panel/panel.c b/panel/panel.c +index fa0709b..e7a9eac 100644 +--- a/panel/panel.c ++++ b/panel/panel.c +@@ -811,7 +811,6 @@ _item_start_move (GtkWidget *item, + + if (!priv->edit_mode) + { +- panel_set_items_sensitive (p, FALSE); + xfce_itembar_raise_event_window (XFCE_ITEMBAR (priv->itembar)); + panel_block_autohide (p); + } +-- +1.7.4.1 + diff --git a/source/xap/xfce/patches/terminal.gtk.2.18.fix.diff b/source/xap/xfce/patches/terminal.gtk.2.18.fix.diff deleted file mode 100644 index 69a9e70e..00000000 --- a/source/xap/xfce/patches/terminal.gtk.2.18.fix.diff +++ /dev/null @@ -1,101 +0,0 @@ -From 028dc2efd846defe796c7fa097ed84818bb43431 Mon Sep 17 00:00:00 2001 -From: Nick Schermer <nick@xfce.org> -Date: Sun, 21 Mar 2010 22:05:31 +0000 -Subject: Disconnect bindings before closing the dialog. - -This avoids possible problems when Gtk+ emits property -changes before the widgets are destroyed. This is currently -the case for text entries in some Gtk 2.18 releases. ---- -diff --git a/terminal/terminal-preferences-dialog.c b/terminal/terminal-preferences-dialog.c -index 587bd92..8f33628 100644 ---- a/terminal/terminal-preferences-dialog.c -+++ b/terminal/terminal-preferences-dialog.c -@@ -64,24 +64,28 @@ terminal_preferences_dialog_class_init (TerminalPreferencesDialogClass *klass) - - - #define BIND_PROPERTIES(name, property) \ -- { object = gtk_builder_get_object (GTK_BUILDER (dialog), name); \ -+ G_STMT_START { \ -+ object = gtk_builder_get_object (GTK_BUILDER (dialog), name); \ - terminal_return_if_fail (G_IS_OBJECT (object)); \ -- exo_mutual_binding_new (G_OBJECT (dialog->preferences), name, \ -- G_OBJECT (object), property); } -+ binding = exo_mutual_binding_new (G_OBJECT (dialog->preferences), name, \ -+ G_OBJECT (object), property); \ -+ dialog->bindings = g_slist_prepend (dialog->bindings, binding); \ -+ } G_STMT_END - - - - static void - terminal_preferences_dialog_init (TerminalPreferencesDialog *dialog) - { -- GError *error = NULL; -- guint i; -- GObject *object, *object2; -- GtkWidget *editor; -- gchar palette_name[16]; -- GtkFileFilter *filter; -- gchar *file; -- const gchar *props_active[] = { "title-mode", "command-login-shell", -+ GError *error = NULL; -+ guint i; -+ GObject *object, *object2; -+ GtkWidget *editor; -+ gchar palette_name[16]; -+ GtkFileFilter *filter; -+ gchar *file; -+ ExoMutualBinding *binding; -+ const gchar *props_active[] = { "title-mode", "command-login-shell", - "command-update-records", "scrolling-single-line", - "scrolling-on-output", "scrolling-on-keystroke", - "scrolling-bar", "font-allow-bold", -@@ -94,9 +98,9 @@ terminal_preferences_dialog_init (TerminalPreferencesDialog *dialog) - , "font-anti-alias" - #endif - }; -- const gchar *props_color[] = { "color-foreground", "color-cursor", -- "color-background", "tab-activity-color", -- "color-selection" }; -+ const gchar *props_color[] = { "color-foreground", "color-cursor", -+ "color-background", "tab-activity-color", -+ "color-selection" }; - - dialog->preferences = terminal_preferences_get (); - -@@ -248,6 +252,8 @@ terminal_preferences_dialog_response (GtkWidget *widget, - gint response, - TerminalPreferencesDialog *dialog) - { -+ GSList *li; -+ - /* check if we should open the user manual */ - if (G_UNLIKELY (response == 1)) - { -@@ -256,6 +262,11 @@ terminal_preferences_dialog_response (GtkWidget *widget, - } - else - { -+ /* disconnect all the bindings */ -+ for (li = dialog->bindings; li != NULL; li = li->next) -+ exo_mutual_binding_unbind (li->data); -+ g_slist_free (dialog->bindings); -+ - /* close the preferences dialog */ - gtk_widget_destroy (widget); - } -diff --git a/terminal/terminal-preferences-dialog.h b/terminal/terminal-preferences-dialog.h -index b2db4f5..268d70a 100644 ---- a/terminal/terminal-preferences-dialog.h -+++ b/terminal/terminal-preferences-dialog.h -@@ -48,6 +48,7 @@ struct _TerminalPreferencesDialog - - TerminalPreferences *preferences; - guint signal_id; -+ GSList *bindings; - }; - - GType terminal_preferences_dialog_get_type (void) G_GNUC_CONST; --- -cgit v0.8.2.1 diff --git a/source/xap/xfce/patches/thunar-1.0.1-fixup_docdir.diff b/source/xap/xfce/patches/thunar-1.0.1-fixup_docdir.diff deleted file mode 100644 index 52d076d9..00000000 --- a/source/xap/xfce/patches/thunar-1.0.1-fixup_docdir.diff +++ /dev/null @@ -1,360 +0,0 @@ -diff -Nur Thunar-1.0.1.orig/Makefile.in Thunar-1.0.1/Makefile.in ---- Thunar-1.0.1.orig/Makefile.in 2009-04-18 09:41:09.000000000 -0500 -+++ Thunar-1.0.1/Makefile.in 2009-07-20 19:36:55.895440657 -0500 -@@ -932,7 +932,7 @@ - - ThunarHelp: ThunarHelp.in Makefile - rm -f ThunarHelp.gen ThunarHelp -- sed -e "s,\@datadir\@,$(datadir),g" \ -+ sed -e "s,\@htmldir\@,$(htmldir),g" \ - < $(srcdir)/ThunarHelp.in \ - > ThunarHelp.gen - mv ThunarHelp.gen ThunarHelp -diff -Nur Thunar-1.0.1.orig/ThunarHelp.in Thunar-1.0.1/ThunarHelp.in ---- Thunar-1.0.1.orig/ThunarHelp.in 2008-10-22 01:43:23.000000000 -0500 -+++ Thunar-1.0.1/ThunarHelp.in 2009-07-20 19:36:38.235721255 -0500 -@@ -19,7 +19,7 @@ - # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. - # - --HELPDIR="@datadir@/doc/Thunar/html/" -+HELPDIR="@htmldir@/" - - if test -n "$LC_ALL"; then - LC=$LC_ALL -diff -Nur Thunar-1.0.1.orig/docs/Makefile.in Thunar-1.0.1/docs/Makefile.in ---- Thunar-1.0.1.orig/docs/Makefile.in 2009-04-18 09:40:14.000000000 -0500 -+++ Thunar-1.0.1/docs/Makefile.in 2009-07-20 19:36:38.235721255 -0500 -@@ -292,7 +292,7 @@ - builddir = @builddir@ - datadir = @datadir@ - datarootdir = @datarootdir@ --docdir = $(datadir)/doc/Thunar -+docdir = @docdir@ - dvidir = @dvidir@ - exec_prefix = @exec_prefix@ - host = @host@ -diff -Nur Thunar-1.0.1.orig/docs/manual/C/Makefile.in Thunar-1.0.1/docs/manual/C/Makefile.in ---- Thunar-1.0.1.orig/docs/manual/C/Makefile.in 2009-04-18 09:40:19.000000000 -0500 -+++ Thunar-1.0.1/docs/manual/C/Makefile.in 2009-07-20 19:36:38.235721255 -0500 -@@ -319,7 +319,7 @@ - SUBDIRS = \ - images - --TARGET_DIR = $(datadir)/doc/Thunar/html/C -+TARGET_DIR = $(htmldir)/C - STYLESHEET = ../thunar.xsl - DOCUMENT = Thunar.xml - -diff -Nur Thunar-1.0.1.orig/docs/manual/C/images/Makefile.in Thunar-1.0.1/docs/manual/C/images/Makefile.in ---- Thunar-1.0.1.orig/docs/manual/C/images/Makefile.in 2009-04-18 09:40:21.000000000 -0500 -+++ Thunar-1.0.1/docs/manual/C/images/Makefile.in 2009-07-20 19:36:38.235721255 -0500 -@@ -313,7 +313,7 @@ - top_builddir = @top_builddir@ - top_srcdir = @top_srcdir@ - xfconf_query_found = @xfconf_query_found@ --imagesdir = $(datadir)/doc/Thunar/html/C/images -+imagesdir = $(htmldir)/C/images - images_DATA = \ - bulk-rename.png \ - file-manager-window.png \ -diff -Nur Thunar-1.0.1.orig/docs/manual/Makefile.in Thunar-1.0.1/docs/manual/Makefile.in ---- Thunar-1.0.1.orig/docs/manual/Makefile.in 2009-04-18 09:40:22.000000000 -0500 -+++ Thunar-1.0.1/docs/manual/Makefile.in 2009-07-20 19:36:38.235721255 -0500 -@@ -338,7 +338,7 @@ - tr \ - zh_TW - --cssdir = $(datadir)/doc/Thunar/html -+cssdir = $(htmldir) - css_DATA = \ - thunar.css - -diff -Nur Thunar-1.0.1.orig/docs/manual/da/Makefile.in Thunar-1.0.1/docs/manual/da/Makefile.in ---- Thunar-1.0.1.orig/docs/manual/da/Makefile.in 2009-04-18 09:40:22.000000000 -0500 -+++ Thunar-1.0.1/docs/manual/da/Makefile.in 2009-07-20 19:36:38.239694094 -0500 -@@ -317,7 +317,7 @@ - SUBDIRS = \ - images - --TARGET_DIR = $(datadir)/doc/Thunar/html/da -+TARGET_DIR = $(htmldir)/da - STYLESHEET = ../thunar.xsl - DOCUMENT = Thunar.xml - -diff -Nur Thunar-1.0.1.orig/docs/manual/da/images/Makefile.in Thunar-1.0.1/docs/manual/da/images/Makefile.in ---- Thunar-1.0.1.orig/docs/manual/da/images/Makefile.in 2009-04-18 09:40:24.000000000 -0500 -+++ Thunar-1.0.1/docs/manual/da/images/Makefile.in 2009-07-20 19:36:38.239694094 -0500 -@@ -311,7 +311,7 @@ - top_builddir = @top_builddir@ - top_srcdir = @top_srcdir@ - xfconf_query_found = @xfconf_query_found@ --imagesdir = $(datadir)/doc/Thunar/html/da/images -+imagesdir = $(htmldir)/da/images - images_DATA = \ - bulk-rename.png \ - file-manager-window.png \ -diff -Nur Thunar-1.0.1.orig/docs/manual/es/Makefile.in Thunar-1.0.1/docs/manual/es/Makefile.in ---- Thunar-1.0.1.orig/docs/manual/es/Makefile.in 2009-04-18 09:40:24.000000000 -0500 -+++ Thunar-1.0.1/docs/manual/es/Makefile.in 2009-07-20 19:36:38.239694094 -0500 -@@ -319,7 +319,7 @@ - SUBDIRS = \ - images - --TARGET_DIR = $(datadir)/doc/Thunar/html/es -+TARGET_DIR = $(htmldir)/es - STYLESHEET = ../thunar.xsl - DOCUMENT = Thunar.xml - -diff -Nur Thunar-1.0.1.orig/docs/manual/es/images/Makefile.in Thunar-1.0.1/docs/manual/es/images/Makefile.in ---- Thunar-1.0.1.orig/docs/manual/es/images/Makefile.in 2009-04-18 09:40:25.000000000 -0500 -+++ Thunar-1.0.1/docs/manual/es/images/Makefile.in 2009-07-20 19:36:38.239694094 -0500 -@@ -313,7 +313,7 @@ - top_builddir = @top_builddir@ - top_srcdir = @top_srcdir@ - xfconf_query_found = @xfconf_query_found@ --imagesdir = $(datadir)/doc/Thunar/html/es/images -+imagesdir = $(htmldir)/es/images - images_DATA = \ - bulk-rename.png \ - file-manager-window.png \ -diff -Nur Thunar-1.0.1.orig/docs/manual/eu/Makefile.in Thunar-1.0.1/docs/manual/eu/Makefile.in ---- Thunar-1.0.1.orig/docs/manual/eu/Makefile.in 2009-04-18 09:40:25.000000000 -0500 -+++ Thunar-1.0.1/docs/manual/eu/Makefile.in 2009-07-20 19:36:38.239694094 -0500 -@@ -319,7 +319,7 @@ - SUBDIRS = \ - images - --TARGET_DIR = $(datadir)/doc/Thunar/html/eu -+TARGET_DIR = $(htmldir)/eu - STYLESHEET = ../thunar.xsl - DOCUMENT = Thunar.xml - -diff -Nur Thunar-1.0.1.orig/docs/manual/eu/images/Makefile.in Thunar-1.0.1/docs/manual/eu/images/Makefile.in ---- Thunar-1.0.1.orig/docs/manual/eu/images/Makefile.in 2009-04-18 09:40:26.000000000 -0500 -+++ Thunar-1.0.1/docs/manual/eu/images/Makefile.in 2009-07-20 19:36:38.239694094 -0500 -@@ -313,7 +313,7 @@ - top_builddir = @top_builddir@ - top_srcdir = @top_srcdir@ - xfconf_query_found = @xfconf_query_found@ --imagesdir = $(datadir)/doc/Thunar/html/eu/images -+imagesdir = $(htmldir)/eu/images - images_DATA = \ - bulk-rename.png \ - file-manager-window.png \ -diff -Nur Thunar-1.0.1.orig/docs/manual/fr/Makefile.in Thunar-1.0.1/docs/manual/fr/Makefile.in ---- Thunar-1.0.1.orig/docs/manual/fr/Makefile.in 2009-04-18 09:40:26.000000000 -0500 -+++ Thunar-1.0.1/docs/manual/fr/Makefile.in 2009-07-20 19:36:38.243692845 -0500 -@@ -319,7 +319,7 @@ - SUBDIRS = \ - images - --TARGET_DIR = $(datadir)/doc/Thunar/html/fr -+TARGET_DIR = $(htmldir)/fr - STYLESHEET = ../thunar.xsl - DOCUMENT = Thunar.xml - -diff -Nur Thunar-1.0.1.orig/docs/manual/fr/images/Makefile.in Thunar-1.0.1/docs/manual/fr/images/Makefile.in ---- Thunar-1.0.1.orig/docs/manual/fr/images/Makefile.in 2009-04-18 09:40:27.000000000 -0500 -+++ Thunar-1.0.1/docs/manual/fr/images/Makefile.in 2009-07-20 19:36:38.243692845 -0500 -@@ -313,7 +313,7 @@ - top_builddir = @top_builddir@ - top_srcdir = @top_srcdir@ - xfconf_query_found = @xfconf_query_found@ --imagesdir = $(datadir)/doc/Thunar/html/fr/images -+imagesdir = $(htmldir)/fr/images - images_DATA = \ - bulk-rename.png \ - file-manager-window.png \ -diff -Nur Thunar-1.0.1.orig/docs/manual/gl/Makefile.in Thunar-1.0.1/docs/manual/gl/Makefile.in ---- Thunar-1.0.1.orig/docs/manual/gl/Makefile.in 2009-04-18 09:40:27.000000000 -0500 -+++ Thunar-1.0.1/docs/manual/gl/Makefile.in 2009-07-20 19:36:38.243692845 -0500 -@@ -319,7 +319,7 @@ - SUBDIRS = \ - images - --TARGET_DIR = $(datadir)/doc/Thunar/html/gl -+TARGET_DIR = $(htmldir)/gl - STYLESHEET = ../thunar.xsl - DOCUMENT = Thunar.xml - -diff -Nur Thunar-1.0.1.orig/docs/manual/gl/images/Makefile.in Thunar-1.0.1/docs/manual/gl/images/Makefile.in ---- Thunar-1.0.1.orig/docs/manual/gl/images/Makefile.in 2009-04-18 09:40:29.000000000 -0500 -+++ Thunar-1.0.1/docs/manual/gl/images/Makefile.in 2009-07-20 19:36:38.243692845 -0500 -@@ -313,7 +313,7 @@ - top_builddir = @top_builddir@ - top_srcdir = @top_srcdir@ - xfconf_query_found = @xfconf_query_found@ --imagesdir = $(datadir)/doc/Thunar/html/C/images -+imagesdir = $(htmldir)/C/images - images_DATA = \ - bulk-rename.png \ - file-manager-window.png \ -diff -Nur Thunar-1.0.1.orig/docs/manual/it/Makefile.in Thunar-1.0.1/docs/manual/it/Makefile.in ---- Thunar-1.0.1.orig/docs/manual/it/Makefile.in 2009-04-18 09:40:30.000000000 -0500 -+++ Thunar-1.0.1/docs/manual/it/Makefile.in 2009-07-20 19:36:38.243692845 -0500 -@@ -317,7 +317,7 @@ - SUBDIRS = \ - images - --TARGET_DIR = $(datadir)/doc/Thunar/html/it -+TARGET_DIR = $(htmldir)/it - STYLESHEET = ../thunar.xsl - DOCUMENT = Thunar.xml - -diff -Nur Thunar-1.0.1.orig/docs/manual/it/images/Makefile.in Thunar-1.0.1/docs/manual/it/images/Makefile.in ---- Thunar-1.0.1.orig/docs/manual/it/images/Makefile.in 2009-04-18 09:40:31.000000000 -0500 -+++ Thunar-1.0.1/docs/manual/it/images/Makefile.in 2009-07-20 19:36:38.243692845 -0500 -@@ -311,7 +311,7 @@ - top_builddir = @top_builddir@ - top_srcdir = @top_srcdir@ - xfconf_query_found = @xfconf_query_found@ --imagesdir = $(datadir)/doc/Thunar/html/it/images -+imagesdir = $(htmldir)/it/images - images_DATA = \ - bulk-rename.png \ - file-manager-window.png \ -diff -Nur Thunar-1.0.1.orig/docs/manual/ja/Makefile.in Thunar-1.0.1/docs/manual/ja/Makefile.in ---- Thunar-1.0.1.orig/docs/manual/ja/Makefile.in 2009-04-18 09:40:32.000000000 -0500 -+++ Thunar-1.0.1/docs/manual/ja/Makefile.in 2009-07-20 19:36:38.247717296 -0500 -@@ -319,7 +319,7 @@ - SUBDIRS = \ - images - --TARGET_DIR = $(datadir)/doc/Thunar/html/ja -+TARGET_DIR = $(htmldir)/ja - STYLESHEET = ../thunar.xsl - DOCUMENT = Thunar.xml - -diff -Nur Thunar-1.0.1.orig/docs/manual/ja/images/Makefile.in Thunar-1.0.1/docs/manual/ja/images/Makefile.in ---- Thunar-1.0.1.orig/docs/manual/ja/images/Makefile.in 2009-04-18 09:40:33.000000000 -0500 -+++ Thunar-1.0.1/docs/manual/ja/images/Makefile.in 2009-07-20 19:36:38.247717296 -0500 -@@ -313,7 +313,7 @@ - top_builddir = @top_builddir@ - top_srcdir = @top_srcdir@ - xfconf_query_found = @xfconf_query_found@ --imagesdir = $(datadir)/doc/Thunar/html/ja/images -+imagesdir = $(htmldir)/ja/images - images_DATA = \ - bulk-rename.png \ - file-manager-window.png \ -diff -Nur Thunar-1.0.1.orig/docs/manual/nl/Makefile.in Thunar-1.0.1/docs/manual/nl/Makefile.in ---- Thunar-1.0.1.orig/docs/manual/nl/Makefile.in 2009-04-18 09:40:34.000000000 -0500 -+++ Thunar-1.0.1/docs/manual/nl/Makefile.in 2009-07-20 19:36:38.247717296 -0500 -@@ -319,7 +319,7 @@ - SUBDIRS = \ - images - --TARGET_DIR = $(datadir)/doc/Thunar/html/nl -+TARGET_DIR = $(htmldir)/nl - STYLESHEET = ../thunar.xsl - DOCUMENT = Thunar.xml - -diff -Nur Thunar-1.0.1.orig/docs/manual/nl/images/Makefile.in Thunar-1.0.1/docs/manual/nl/images/Makefile.in ---- Thunar-1.0.1.orig/docs/manual/nl/images/Makefile.in 2009-04-18 09:40:34.000000000 -0500 -+++ Thunar-1.0.1/docs/manual/nl/images/Makefile.in 2009-07-20 19:36:38.247717296 -0500 -@@ -313,7 +313,7 @@ - top_builddir = @top_builddir@ - top_srcdir = @top_srcdir@ - xfconf_query_found = @xfconf_query_found@ --imagesdir = $(datadir)/doc/Thunar/html/nl/images -+imagesdir = $(htmldir)/nl/images - images_DATA = \ - bulk-rename.png \ - file-manager-window.png \ -diff -Nur Thunar-1.0.1.orig/docs/manual/pl/Makefile.in Thunar-1.0.1/docs/manual/pl/Makefile.in ---- Thunar-1.0.1.orig/docs/manual/pl/Makefile.in 2009-04-18 09:40:34.000000000 -0500 -+++ Thunar-1.0.1/docs/manual/pl/Makefile.in 2009-07-20 19:36:38.247717296 -0500 -@@ -319,7 +319,7 @@ - SUBDIRS = \ - images - --TARGET_DIR = $(datadir)/doc/Thunar/html/pl -+TARGET_DIR = $(htmldir)/pl - STYLESHEET = ../thunar.xsl - DOCUMENT = Thunar.xml - -diff -Nur Thunar-1.0.1.orig/docs/manual/pl/images/Makefile.in Thunar-1.0.1/docs/manual/pl/images/Makefile.in ---- Thunar-1.0.1.orig/docs/manual/pl/images/Makefile.in 2009-04-18 09:40:34.000000000 -0500 -+++ Thunar-1.0.1/docs/manual/pl/images/Makefile.in 2009-07-20 19:36:38.247717296 -0500 -@@ -313,7 +313,7 @@ - top_builddir = @top_builddir@ - top_srcdir = @top_srcdir@ - xfconf_query_found = @xfconf_query_found@ --imagesdir = $(datadir)/doc/Thunar/html/pl/images -+imagesdir = $(htmldir)/pl/images - images_DATA = \ - bulk-rename.png \ - file-manager-window.png \ -diff -Nur Thunar-1.0.1.orig/docs/manual/ru/Makefile.in Thunar-1.0.1/docs/manual/ru/Makefile.in ---- Thunar-1.0.1.orig/docs/manual/ru/Makefile.in 2009-04-18 09:40:35.000000000 -0500 -+++ Thunar-1.0.1/docs/manual/ru/Makefile.in 2009-07-20 19:36:38.251717303 -0500 -@@ -319,7 +319,7 @@ - SUBDIRS = \ - images - --TARGET_DIR = $(datadir)/doc/Thunar/html/ru -+TARGET_DIR = $(htmldir)/ru - STYLESHEET = ../thunar.xsl - DOCUMENT = Thunar.xml - -diff -Nur Thunar-1.0.1.orig/docs/manual/ru/images/Makefile.in Thunar-1.0.1/docs/manual/ru/images/Makefile.in ---- Thunar-1.0.1.orig/docs/manual/ru/images/Makefile.in 2009-04-18 09:40:35.000000000 -0500 -+++ Thunar-1.0.1/docs/manual/ru/images/Makefile.in 2009-07-20 19:36:38.251717303 -0500 -@@ -313,7 +313,7 @@ - top_builddir = @top_builddir@ - top_srcdir = @top_srcdir@ - xfconf_query_found = @xfconf_query_found@ --imagesdir = $(datadir)/doc/Thunar/html/ru/images -+imagesdir = $(htmldir)/ru/images - images_DATA = \ - bulk-rename.png \ - file-manager-window.png \ -diff -Nur Thunar-1.0.1.orig/docs/manual/tr/Makefile.in Thunar-1.0.1/docs/manual/tr/Makefile.in ---- Thunar-1.0.1.orig/docs/manual/tr/Makefile.in 2009-04-18 09:40:35.000000000 -0500 -+++ Thunar-1.0.1/docs/manual/tr/Makefile.in 2009-07-20 19:36:38.251717303 -0500 -@@ -317,7 +317,7 @@ - SUBDIRS = \ - images - --TARGET_DIR = $(datadir)/doc/Thunar/html/tr -+TARGET_DIR = $(htmldir)/tr - STYLESHEET = ../thunar.xsl - DOCUMENT = Thunar.xml - -diff -Nur Thunar-1.0.1.orig/docs/manual/tr/images/Makefile.in Thunar-1.0.1/docs/manual/tr/images/Makefile.in ---- Thunar-1.0.1.orig/docs/manual/tr/images/Makefile.in 2009-04-18 09:40:36.000000000 -0500 -+++ Thunar-1.0.1/docs/manual/tr/images/Makefile.in 2009-07-20 19:36:38.251717303 -0500 -@@ -311,7 +311,7 @@ - top_builddir = @top_builddir@ - top_srcdir = @top_srcdir@ - xfconf_query_found = @xfconf_query_found@ --imagesdir = $(datadir)/doc/Thunar/html/tr/images -+imagesdir = $(htmldir)/tr/images - images_DATA = \ - bulk-rename.png \ - file-manager-window.png \ -diff -Nur Thunar-1.0.1.orig/docs/manual/zh_TW/Makefile.in Thunar-1.0.1/docs/manual/zh_TW/Makefile.in ---- Thunar-1.0.1.orig/docs/manual/zh_TW/Makefile.in 2009-04-18 09:40:36.000000000 -0500 -+++ Thunar-1.0.1/docs/manual/zh_TW/Makefile.in 2009-07-20 19:36:38.251717303 -0500 -@@ -319,7 +319,7 @@ - SUBDIRS = \ - images - --TARGET_DIR = $(datadir)/doc/Thunar/html/zh_TW -+TARGET_DIR = $(htmldir)/zh_TW - STYLESHEET = ../thunar.xsl - DOCUMENT = Thunar.xml - -diff -Nur Thunar-1.0.1.orig/docs/manual/zh_TW/images/Makefile.in Thunar-1.0.1/docs/manual/zh_TW/images/Makefile.in ---- Thunar-1.0.1.orig/docs/manual/zh_TW/images/Makefile.in 2009-04-18 09:40:36.000000000 -0500 -+++ Thunar-1.0.1/docs/manual/zh_TW/images/Makefile.in 2009-07-20 19:36:38.251717303 -0500 -@@ -313,7 +313,7 @@ - top_builddir = @top_builddir@ - top_srcdir = @top_srcdir@ - xfconf_query_found = @xfconf_query_found@ --imagesdir = $(datadir)/doc/Thunar/html/zh_TW/images -+imagesdir = $(htmldir)/zh_TW/images - images_DATA = \ - bulk-rename.png \ - file-manager-window.png \ diff --git a/source/xap/xfce/patches/thunar-1.0.1-png14.diff b/source/xap/xfce/patches/thunar-1.0.1-png14.diff deleted file mode 100644 index 6c67a407..00000000 --- a/source/xap/xfce/patches/thunar-1.0.1-png14.diff +++ /dev/null @@ -1,11 +0,0 @@ ---- ./thunar-vfs/thunar-vfs-thumb.c.orig 2009-01-12 14:38:49.000000000 -0600 -+++ ./thunar-vfs/thunar-vfs-thumb.c 2010-02-12 13:24:33.000000000 -0600 -@@ -1169,7 +1169,7 @@ - goto done0; - - /* verify the png signature */ -- if (G_LIKELY (png_check_sig ((png_bytep) signature, sizeof (signature)))) -+ if (G_LIKELY (png_sig_cmp ((png_bytep) signature, 0, sizeof (signature)) == 0)) - rewind (fp); - else - goto done0; diff --git a/source/xap/xfce/patches/thunar-1.0.2-fixup_docdir.diff b/source/xap/xfce/patches/thunar-1.0.2-fixup_docdir.diff new file mode 100644 index 00000000..7315ecea --- /dev/null +++ b/source/xap/xfce/patches/thunar-1.0.2-fixup_docdir.diff @@ -0,0 +1,384 @@ +diff -Nur Thunar-1.0.2.orig//Makefile.in Thunar-1.0.2/Makefile.in +--- Thunar-1.0.2.orig//Makefile.in 2010-05-21 12:11:02.000000000 -0500 ++++ Thunar-1.0.2/Makefile.in 2010-05-23 17:44:59.068552125 -0500 +@@ -1040,7 +1040,7 @@ + + ThunarHelp: ThunarHelp.in Makefile + rm -f ThunarHelp.gen ThunarHelp +- sed -e "s,\@datadir\@,$(datadir),g" \ ++ sed -e "s,\@htmldir\@,$(htmldir),g" \ + < $(srcdir)/ThunarHelp.in \ + > ThunarHelp.gen + mv ThunarHelp.gen ThunarHelp +diff -Nur Thunar-1.0.2.orig//ThunarHelp.in Thunar-1.0.2/ThunarHelp.in +--- Thunar-1.0.2.orig//ThunarHelp.in 2010-05-21 12:10:52.000000000 -0500 ++++ Thunar-1.0.2/ThunarHelp.in 2010-05-23 17:45:26.207677481 -0500 +@@ -19,7 +19,7 @@ + # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + # + +-HELPDIR="@datadir@/doc/Thunar/html/" ++HELPDIR="@htmldir@/" + + if test -n "$LC_ALL"; then + LC=$LC_ALL +diff -Nur Thunar-1.0.2.orig//docs/Makefile.in Thunar-1.0.2/docs/Makefile.in +--- Thunar-1.0.2.orig//docs/Makefile.in 2010-05-21 12:10:57.000000000 -0500 ++++ Thunar-1.0.2/docs/Makefile.in 2010-05-23 17:46:08.776567272 -0500 +@@ -322,7 +322,7 @@ + builddir = @builddir@ + datadir = @datadir@ + datarootdir = @datarootdir@ +-docdir = $(datadir)/doc/Thunar ++docdir = @docdir@ + dvidir = @dvidir@ + exec_prefix = @exec_prefix@ + host = @host@ +diff -Nur Thunar-1.0.2.orig//docs/manual/C/Makefile.in Thunar-1.0.2/docs/manual/C/Makefile.in +--- Thunar-1.0.2.orig//docs/manual/C/Makefile.in 2010-05-21 12:10:57.000000000 -0500 ++++ Thunar-1.0.2/docs/manual/C/Makefile.in 2010-05-23 17:46:52.539542089 -0500 +@@ -336,7 +336,7 @@ + SUBDIRS = \ + images + +-TARGET_DIR = $(datadir)/doc/Thunar/html/C ++TARGET_DIR = $(htmldir)/C + STYLESHEET = ../thunar.xsl + DOCUMENT = Thunar.xml + +diff -Nur Thunar-1.0.2.orig//docs/manual/C/images/Makefile.in Thunar-1.0.2/docs/manual/C/images/Makefile.in +--- Thunar-1.0.2.orig//docs/manual/C/images/Makefile.in 2010-05-21 12:10:57.000000000 -0500 ++++ Thunar-1.0.2/docs/manual/C/images/Makefile.in 2010-05-23 17:47:25.359542363 -0500 +@@ -316,7 +316,7 @@ + top_builddir = @top_builddir@ + top_srcdir = @top_srcdir@ + xfconf_query_found = @xfconf_query_found@ +-imagesdir = $(datadir)/doc/Thunar/html/C/images ++imagesdir = $(htmldir)/C/images + images_DATA = \ + bulk-rename.png \ + file-manager-window.png \ +diff -Nur Thunar-1.0.2.orig//docs/manual/Makefile.in Thunar-1.0.2/docs/manual/Makefile.in +--- Thunar-1.0.2.orig//docs/manual/Makefile.in 2010-05-21 12:10:57.000000000 -0500 ++++ Thunar-1.0.2/docs/manual/Makefile.in 2010-05-23 17:48:04.650570173 -0500 +@@ -370,7 +370,7 @@ + tr \ + zh_TW + +-cssdir = $(datadir)/doc/Thunar/html ++cssdir = $(htmldir) + css_DATA = \ + thunar.css + +diff -Nur Thunar-1.0.2.orig//docs/manual/am/Makefile.in Thunar-1.0.2/docs/manual/am/Makefile.in +--- Thunar-1.0.2.orig//docs/manual/am/Makefile.in 2010-05-21 12:10:58.000000000 -0500 ++++ Thunar-1.0.2/docs/manual/am/Makefile.in 2010-05-23 17:48:35.304542671 -0500 +@@ -336,7 +336,7 @@ + SUBDIRS = \ + images + +-TARGET_DIR = $(datadir)/doc/Thunar/html/am ++TARGET_DIR = $(htmldir)/am + STYLESHEET = ../thunar.xsl + DOCUMENT = Thunar.xml + +diff -Nur Thunar-1.0.2.orig//docs/manual/am/images/Makefile.in Thunar-1.0.2/docs/manual/am/images/Makefile.in +--- Thunar-1.0.2.orig//docs/manual/am/images/Makefile.in 2010-05-21 12:10:58.000000000 -0500 ++++ Thunar-1.0.2/docs/manual/am/images/Makefile.in 2010-05-23 17:51:21.111542305 -0500 +@@ -316,7 +316,7 @@ + top_builddir = @top_builddir@ + top_srcdir = @top_srcdir@ + xfconf_query_found = @xfconf_query_found@ +-imagesdir = $(datadir)/doc/Thunar/html/am/images ++imagesdir = $(htmldir)/am/images + images_DATA = \ + bulk-rename.png \ + file-manager-window.png \ +diff -Nur Thunar-1.0.2.orig//docs/manual/da/Makefile.in Thunar-1.0.2/docs/manual/da/Makefile.in +--- Thunar-1.0.2.orig//docs/manual/da/Makefile.in 2010-05-21 12:10:58.000000000 -0500 ++++ Thunar-1.0.2/docs/manual/da/Makefile.in 2010-05-23 17:48:52.108550193 -0500 +@@ -334,7 +334,7 @@ + SUBDIRS = \ + images + +-TARGET_DIR = $(datadir)/doc/Thunar/html/da ++TARGET_DIR = $(htmldir)/da + STYLESHEET = ../thunar.xsl + DOCUMENT = Thunar.xml + +diff -Nur Thunar-1.0.2.orig//docs/manual/da/images/Makefile.in Thunar-1.0.2/docs/manual/da/images/Makefile.in +--- Thunar-1.0.2.orig//docs/manual/da/images/Makefile.in 2010-05-21 12:10:58.000000000 -0500 ++++ Thunar-1.0.2/docs/manual/da/images/Makefile.in 2010-05-23 17:51:27.753542103 -0500 +@@ -314,7 +314,7 @@ + top_builddir = @top_builddir@ + top_srcdir = @top_srcdir@ + xfconf_query_found = @xfconf_query_found@ +-imagesdir = $(datadir)/doc/Thunar/html/da/images ++imagesdir = $(htmldir)/da/images + images_DATA = \ + bulk-rename.png \ + file-manager-window.png \ +diff -Nur Thunar-1.0.2.orig//docs/manual/es/Makefile.in Thunar-1.0.2/docs/manual/es/Makefile.in +--- Thunar-1.0.2.orig//docs/manual/es/Makefile.in 2010-05-21 12:10:58.000000000 -0500 ++++ Thunar-1.0.2/docs/manual/es/Makefile.in 2010-05-23 17:48:58.300552519 -0500 +@@ -336,7 +336,7 @@ + SUBDIRS = \ + images + +-TARGET_DIR = $(datadir)/doc/Thunar/html/es ++TARGET_DIR = $(htmldir)/es + STYLESHEET = ../thunar.xsl + DOCUMENT = Thunar.xml + +diff -Nur Thunar-1.0.2.orig//docs/manual/es/images/Makefile.in Thunar-1.0.2/docs/manual/es/images/Makefile.in +--- Thunar-1.0.2.orig//docs/manual/es/images/Makefile.in 2010-05-21 12:10:58.000000000 -0500 ++++ Thunar-1.0.2/docs/manual/es/images/Makefile.in 2010-05-23 17:51:34.373542961 -0500 +@@ -316,7 +316,7 @@ + top_builddir = @top_builddir@ + top_srcdir = @top_srcdir@ + xfconf_query_found = @xfconf_query_found@ +-imagesdir = $(datadir)/doc/Thunar/html/es/images ++imagesdir = $(htmldir)/es/images + images_DATA = \ + bulk-rename.png \ + file-manager-window.png \ +diff -Nur Thunar-1.0.2.orig//docs/manual/eu/Makefile.in Thunar-1.0.2/docs/manual/eu/Makefile.in +--- Thunar-1.0.2.orig//docs/manual/eu/Makefile.in 2010-05-21 12:10:58.000000000 -0500 ++++ Thunar-1.0.2/docs/manual/eu/Makefile.in 2010-05-23 17:49:05.977677434 -0500 +@@ -336,7 +336,7 @@ + SUBDIRS = \ + images + +-TARGET_DIR = $(datadir)/doc/Thunar/html/eu ++TARGET_DIR = $(htmldir)/eu + STYLESHEET = ../thunar.xsl + DOCUMENT = Thunar.xml + +diff -Nur Thunar-1.0.2.orig//docs/manual/eu/images/Makefile.in Thunar-1.0.2/docs/manual/eu/images/Makefile.in +--- Thunar-1.0.2.orig//docs/manual/eu/images/Makefile.in 2010-05-21 12:10:58.000000000 -0500 ++++ Thunar-1.0.2/docs/manual/eu/images/Makefile.in 2010-05-23 17:51:42.643542360 -0500 +@@ -316,7 +316,7 @@ + top_builddir = @top_builddir@ + top_srcdir = @top_srcdir@ + xfconf_query_found = @xfconf_query_found@ +-imagesdir = $(datadir)/doc/Thunar/html/eu/images ++imagesdir = $(htmldir)/eu/images + images_DATA = \ + bulk-rename.png \ + file-manager-window.png \ +diff -Nur Thunar-1.0.2.orig//docs/manual/fr/Makefile.in Thunar-1.0.2/docs/manual/fr/Makefile.in +--- Thunar-1.0.2.orig//docs/manual/fr/Makefile.in 2010-05-21 12:10:58.000000000 -0500 ++++ Thunar-1.0.2/docs/manual/fr/Makefile.in 2010-05-23 17:49:12.495542046 -0500 +@@ -336,7 +336,7 @@ + SUBDIRS = \ + images + +-TARGET_DIR = $(datadir)/doc/Thunar/html/fr ++TARGET_DIR = $(htmldir)/fr + STYLESHEET = ../thunar.xsl + DOCUMENT = Thunar.xml + +diff -Nur Thunar-1.0.2.orig//docs/manual/fr/images/Makefile.in Thunar-1.0.2/docs/manual/fr/images/Makefile.in +--- Thunar-1.0.2.orig//docs/manual/fr/images/Makefile.in 2010-05-21 12:10:58.000000000 -0500 ++++ Thunar-1.0.2/docs/manual/fr/images/Makefile.in 2010-05-23 17:51:51.116702819 -0500 +@@ -316,7 +316,7 @@ + top_builddir = @top_builddir@ + top_srcdir = @top_srcdir@ + xfconf_query_found = @xfconf_query_found@ +-imagesdir = $(datadir)/doc/Thunar/html/fr/images ++imagesdir = $(htmldir)/fr/images + images_DATA = \ + bulk-rename.png \ + file-manager-window.png \ +diff -Nur Thunar-1.0.2.orig//docs/manual/gl/Makefile.in Thunar-1.0.2/docs/manual/gl/Makefile.in +--- Thunar-1.0.2.orig//docs/manual/gl/Makefile.in 2010-05-21 12:10:58.000000000 -0500 ++++ Thunar-1.0.2/docs/manual/gl/Makefile.in 2010-05-23 17:49:19.882542284 -0500 +@@ -336,7 +336,7 @@ + SUBDIRS = \ + images + +-TARGET_DIR = $(datadir)/doc/Thunar/html/gl ++TARGET_DIR = $(htmldir)/gl + STYLESHEET = ../thunar.xsl + DOCUMENT = Thunar.xml + +diff -Nur Thunar-1.0.2.orig//docs/manual/gl/images/Makefile.in Thunar-1.0.2/docs/manual/gl/images/Makefile.in +--- Thunar-1.0.2.orig//docs/manual/gl/images/Makefile.in 2010-05-21 12:10:58.000000000 -0500 ++++ Thunar-1.0.2/docs/manual/gl/images/Makefile.in 2010-05-23 17:51:57.596588720 -0500 +@@ -316,7 +316,7 @@ + top_builddir = @top_builddir@ + top_srcdir = @top_srcdir@ + xfconf_query_found = @xfconf_query_found@ +-imagesdir = $(datadir)/doc/Thunar/html/gl/images ++imagesdir = $(htmldir)/gl/images + images_DATA = \ + bulk-rename.png \ + file-manager-window.png \ +diff -Nur Thunar-1.0.2.orig//docs/manual/it/Makefile.in Thunar-1.0.2/docs/manual/it/Makefile.in +--- Thunar-1.0.2.orig//docs/manual/it/Makefile.in 2010-05-21 12:10:58.000000000 -0500 ++++ Thunar-1.0.2/docs/manual/it/Makefile.in 2010-05-23 17:49:27.597676807 -0500 +@@ -334,7 +334,7 @@ + SUBDIRS = \ + images + +-TARGET_DIR = $(datadir)/doc/Thunar/html/it ++TARGET_DIR = $(htmldir)/it + STYLESHEET = ../thunar.xsl + DOCUMENT = Thunar.xml + +diff -Nur Thunar-1.0.2.orig//docs/manual/it/images/Makefile.in Thunar-1.0.2/docs/manual/it/images/Makefile.in +--- Thunar-1.0.2.orig//docs/manual/it/images/Makefile.in 2010-05-21 12:10:58.000000000 -0500 ++++ Thunar-1.0.2/docs/manual/it/images/Makefile.in 2010-05-23 17:52:05.152568701 -0500 +@@ -314,7 +314,7 @@ + top_builddir = @top_builddir@ + top_srcdir = @top_srcdir@ + xfconf_query_found = @xfconf_query_found@ +-imagesdir = $(datadir)/doc/Thunar/html/it/images ++imagesdir = $(htmldir)/it/images + images_DATA = \ + bulk-rename.png \ + file-manager-window.png \ +diff -Nur Thunar-1.0.2.orig//docs/manual/ja/Makefile.in Thunar-1.0.2/docs/manual/ja/Makefile.in +--- Thunar-1.0.2.orig//docs/manual/ja/Makefile.in 2010-05-21 12:10:59.000000000 -0500 ++++ Thunar-1.0.2/docs/manual/ja/Makefile.in 2010-05-23 17:49:35.728552141 -0500 +@@ -336,7 +336,7 @@ + SUBDIRS = \ + images + +-TARGET_DIR = $(datadir)/doc/Thunar/html/ja ++TARGET_DIR = $(htmldir)/ja + STYLESHEET = ../thunar.xsl + DOCUMENT = Thunar.xml + +diff -Nur Thunar-1.0.2.orig//docs/manual/ja/images/Makefile.in Thunar-1.0.2/docs/manual/ja/images/Makefile.in +--- Thunar-1.0.2.orig//docs/manual/ja/images/Makefile.in 2010-05-21 12:10:59.000000000 -0500 ++++ Thunar-1.0.2/docs/manual/ja/images/Makefile.in 2010-05-23 17:52:13.534542157 -0500 +@@ -316,7 +316,7 @@ + top_builddir = @top_builddir@ + top_srcdir = @top_srcdir@ + xfconf_query_found = @xfconf_query_found@ +-imagesdir = $(datadir)/doc/Thunar/html/ja/images ++imagesdir = $(htmldir)/ja/images + images_DATA = \ + bulk-rename.png \ + file-manager-window.png \ +diff -Nur Thunar-1.0.2.orig//docs/manual/nl/Makefile.in Thunar-1.0.2/docs/manual/nl/Makefile.in +--- Thunar-1.0.2.orig//docs/manual/nl/Makefile.in 2010-05-21 12:10:59.000000000 -0500 ++++ Thunar-1.0.2/docs/manual/nl/Makefile.in 2010-05-23 17:49:42.981677782 -0500 +@@ -336,7 +336,7 @@ + SUBDIRS = \ + images + +-TARGET_DIR = $(datadir)/doc/Thunar/html/nl ++TARGET_DIR = $(htmldir)/nl + STYLESHEET = ../thunar.xsl + DOCUMENT = Thunar.xml + +diff -Nur Thunar-1.0.2.orig//docs/manual/nl/images/Makefile.in Thunar-1.0.2/docs/manual/nl/images/Makefile.in +--- Thunar-1.0.2.orig//docs/manual/nl/images/Makefile.in 2010-05-21 12:10:59.000000000 -0500 ++++ Thunar-1.0.2/docs/manual/nl/images/Makefile.in 2010-05-23 17:52:19.353553300 -0500 +@@ -316,7 +316,7 @@ + top_builddir = @top_builddir@ + top_srcdir = @top_srcdir@ + xfconf_query_found = @xfconf_query_found@ +-imagesdir = $(datadir)/doc/Thunar/html/nl/images ++imagesdir = $(htmldir)/nl/images + images_DATA = \ + bulk-rename.png \ + file-manager-window.png \ +diff -Nur Thunar-1.0.2.orig//docs/manual/pl/Makefile.in Thunar-1.0.2/docs/manual/pl/Makefile.in +--- Thunar-1.0.2.orig//docs/manual/pl/Makefile.in 2010-05-21 12:10:59.000000000 -0500 ++++ Thunar-1.0.2/docs/manual/pl/Makefile.in 2010-05-23 17:49:51.863542378 -0500 +@@ -336,7 +336,7 @@ + SUBDIRS = \ + images + +-TARGET_DIR = $(datadir)/doc/Thunar/html/pl ++TARGET_DIR = $(htmldir)/pl + STYLESHEET = ../thunar.xsl + DOCUMENT = Thunar.xml + +diff -Nur Thunar-1.0.2.orig//docs/manual/pl/images/Makefile.in Thunar-1.0.2/docs/manual/pl/images/Makefile.in +--- Thunar-1.0.2.orig//docs/manual/pl/images/Makefile.in 2010-05-21 12:10:59.000000000 -0500 ++++ Thunar-1.0.2/docs/manual/pl/images/Makefile.in 2010-05-23 17:52:27.285677594 -0500 +@@ -316,7 +316,7 @@ + top_builddir = @top_builddir@ + top_srcdir = @top_srcdir@ + xfconf_query_found = @xfconf_query_found@ +-imagesdir = $(datadir)/doc/Thunar/html/pl/images ++imagesdir = $(htmldir)/pl/images + images_DATA = \ + bulk-rename.png \ + file-manager-window.png \ +diff -Nur Thunar-1.0.2.orig//docs/manual/ru/Makefile.in Thunar-1.0.2/docs/manual/ru/Makefile.in +--- Thunar-1.0.2.orig//docs/manual/ru/Makefile.in 2010-05-21 12:10:59.000000000 -0500 ++++ Thunar-1.0.2/docs/manual/ru/Makefile.in 2010-05-23 17:49:59.951552903 -0500 +@@ -336,7 +336,7 @@ + SUBDIRS = \ + images + +-TARGET_DIR = $(datadir)/doc/Thunar/html/ru ++TARGET_DIR = $(htmldir)/ru + STYLESHEET = ../thunar.xsl + DOCUMENT = Thunar.xml + +diff -Nur Thunar-1.0.2.orig//docs/manual/ru/images/Makefile.in Thunar-1.0.2/docs/manual/ru/images/Makefile.in +--- Thunar-1.0.2.orig//docs/manual/ru/images/Makefile.in 2010-05-21 12:10:59.000000000 -0500 ++++ Thunar-1.0.2/docs/manual/ru/images/Makefile.in 2010-05-23 17:52:33.673677284 -0500 +@@ -316,7 +316,7 @@ + top_builddir = @top_builddir@ + top_srcdir = @top_srcdir@ + xfconf_query_found = @xfconf_query_found@ +-imagesdir = $(datadir)/doc/Thunar/html/ru/images ++imagesdir = $(htmldir)/ru/images + images_DATA = \ + bulk-rename.png \ + file-manager-window.png \ +diff -Nur Thunar-1.0.2.orig//docs/manual/tr/Makefile.in Thunar-1.0.2/docs/manual/tr/Makefile.in +--- Thunar-1.0.2.orig//docs/manual/tr/Makefile.in 2010-05-21 12:10:59.000000000 -0500 ++++ Thunar-1.0.2/docs/manual/tr/Makefile.in 2010-05-23 17:50:08.415553080 -0500 +@@ -334,7 +334,7 @@ + SUBDIRS = \ + images + +-TARGET_DIR = $(datadir)/doc/Thunar/html/tr ++TARGET_DIR = $(htmldir)/tr + STYLESHEET = ../thunar.xsl + DOCUMENT = Thunar.xml + +diff -Nur Thunar-1.0.2.orig//docs/manual/tr/images/Makefile.in Thunar-1.0.2/docs/manual/tr/images/Makefile.in +--- Thunar-1.0.2.orig//docs/manual/tr/images/Makefile.in 2010-05-21 12:10:59.000000000 -0500 ++++ Thunar-1.0.2/docs/manual/tr/images/Makefile.in 2010-05-23 17:52:40.320542409 -0500 +@@ -314,7 +314,7 @@ + top_builddir = @top_builddir@ + top_srcdir = @top_srcdir@ + xfconf_query_found = @xfconf_query_found@ +-imagesdir = $(datadir)/doc/Thunar/html/tr/images ++imagesdir = $(htmldir)/tr/images + images_DATA = \ + bulk-rename.png \ + file-manager-window.png \ +diff -Nur Thunar-1.0.2.orig//docs/manual/zh_TW/Makefile.in Thunar-1.0.2/docs/manual/zh_TW/Makefile.in +--- Thunar-1.0.2.orig//docs/manual/zh_TW/Makefile.in 2010-05-21 12:10:59.000000000 -0500 ++++ Thunar-1.0.2/docs/manual/zh_TW/Makefile.in 2010-05-23 17:50:20.989569041 -0500 +@@ -336,7 +336,7 @@ + SUBDIRS = \ + images + +-TARGET_DIR = $(datadir)/doc/Thunar/html/zh_TW ++TARGET_DIR = $(htmldir)/zh_TW + STYLESHEET = ../thunar.xsl + DOCUMENT = Thunar.xml + +diff -Nur Thunar-1.0.2.orig//docs/manual/zh_TW/images/Makefile.in Thunar-1.0.2/docs/manual/zh_TW/images/Makefile.in +--- Thunar-1.0.2.orig//docs/manual/zh_TW/images/Makefile.in 2010-05-21 12:10:59.000000000 -0500 ++++ Thunar-1.0.2/docs/manual/zh_TW/images/Makefile.in 2010-05-23 17:52:47.172552372 -0500 +@@ -316,7 +316,7 @@ + top_builddir = @top_builddir@ + top_srcdir = @top_srcdir@ + xfconf_query_found = @xfconf_query_found@ +-imagesdir = $(datadir)/doc/Thunar/html/zh_TW/images ++imagesdir = $(htmldir)/zh_TW/images + images_DATA = \ + bulk-rename.png \ + file-manager-window.png \ diff --git a/source/xap/xfce/patches/thunar-fix_umask_properly.diff b/source/xap/xfce/patches/thunar-fix_umask_properly.diff deleted file mode 100644 index 2070b580..00000000 --- a/source/xap/xfce/patches/thunar-fix_umask_properly.diff +++ /dev/null @@ -1,52 +0,0 @@ -commit eb58c6a6ba7f77c2c16016db064524df598ef421 -Author: Jannis Pohlmann <jannis@xfce.org> -Date: Sat Oct 3 11:49:41 2009 +0200 - - Fix bugs #3532 (umask < 0022 not honoured) and #5813 properly (I hope). - - The previous patch applied in e53de71e6add9b28ba034111a1d19db7def8f7e7 - made things worse than before: it used DEFFILEMODE which seems to be - BSD-specific for creating files. It also reset the umask to 0 when - creating the first directory with _thunar_vfs_io_jobs_mkdir(). - - What we really want is to use 0777 (dirs) and 0666 (files) and let the - standard C system calls like open() apply the umask value. This should - work on all POSIX-compliant systems. - - Patch provided by Craig Ringer <craig@postnewspapers.com.au>. - -diff --git a/thunar-vfs/thunar-vfs-io-jobs.c b/thunar-vfs/thunar-vfs-io-jobs.c -index 8d70812..c94523a 100644 ---- a/thunar-vfs/thunar-vfs-io-jobs.c -+++ b/thunar-vfs/thunar-vfs-io-jobs.c -@@ -432,8 +432,12 @@ _thunar_vfs_io_jobs_create (ThunarVfsJob *job, - absolute_path = thunar_vfs_path_dup_string (lp->data); - - again: -- /* try to create the file at the given path */ -- fd = g_open (absolute_path, O_CREAT | O_EXCL | O_WRONLY, DEFFILEMODE); -+ /* Try to create the file at the given path. -+ * -+ * Note that despite the 0666 mask, we won't really create a world-writable -+ * file unless the user's umask permits it (ie the umask is 0000). -+ */ -+ fd = g_open (absolute_path, O_CREAT | O_EXCL | O_WRONLY, 0666); - if (G_UNLIKELY (fd < 0)) - { - /* check if the file already exists */ -@@ -707,8 +711,13 @@ _thunar_vfs_io_jobs_mkdir (ThunarVfsJob *job, - /* update the progress information */ - _thunar_vfs_job_process_path (job, lp); - -- /* try to create the target directory */ -- if (!_thunar_vfs_io_ops_mkdir (lp->data, 0777 & ~umask(0), THUNAR_VFS_IO_OPS_NONE, error)) -+ /* try to create the target directory -+ * -+ * Note that the mode specified here is limited by the user's umask, so we will not -+ * actually be creating a world writable directory unless the user's umask permits -+ * it. -+ */ -+ if (!_thunar_vfs_io_ops_mkdir (lp->data, 0777, THUNAR_VFS_IO_OPS_NONE, error)) - return FALSE; - } - diff --git a/source/xap/xfce/patches/xfce-utils-load_systemwide_Xmodmap.diff b/source/xap/xfce/patches/xfce-utils-load_systemwide_Xmodmap.diff new file mode 100644 index 00000000..fde47a9e --- /dev/null +++ b/source/xap/xfce/patches/xfce-utils-load_systemwide_Xmodmap.diff @@ -0,0 +1,11 @@ +diff -Nur xfce-utils-4.6.2.orig//scripts/xinitrc.in.in xfce-utils-4.6.2/scripts/xinitrc.in.in +--- xfce-utils-4.6.2.orig//scripts/xinitrc.in.in 2010-05-21 11:56:26.000000000 -0500 ++++ xfce-utils-4.6.2/scripts/xinitrc.in.in 2011-03-09 22:56:18.687297854 -0600 +@@ -97,6 +97,7 @@ + cat /dev/null $XRESOURCES | xrdb -nocpp -merge - + + # load local modmap ++test -r /etc/X11/xinit/.Xmodmap && xmodmap /etc/X11/xinit/.Xmodmap + test -r $HOME/.Xmodmap && xmodmap $HOME/.Xmodmap + + # Launch xscreensaver (if available), but only as non-root user diff --git a/source/xap/xfce/patches/xfce-utils.xinitrc.consolekit.diff b/source/xap/xfce/patches/xfce-utils.xinitrc.consolekit.diff index a8d5b2a5..206f6607 100644 --- a/source/xap/xfce/patches/xfce-utils.xinitrc.consolekit.diff +++ b/source/xap/xfce/patches/xfce-utils.xinitrc.consolekit.diff @@ -1,11 +1,15 @@ --- ./scripts/xinitrc.in.in.orig 2009-04-09 18:21:13.000000000 -0500 -+++ ./scripts/xinitrc.in.in 2010-05-06 03:06:02.000000000 -0500 -@@ -131,7 +131,7 @@ ++++ ./scripts/xinitrc.in.in 2010-06-18 11:33:37.000000000 -0500 +@@ -131,7 +131,11 @@ x|xno*) ;; *) - $xfcesm -+ ck-launch-session $xfcesm ++ if [ -z "$DESKTOP_SESSION" -a -x /usr/bin/ck-launch-session ]; then ++ ck-launch-session $xfcesm ++ else ++ $xfcesm ++ fi if test $kill_sshagent -eq 1; then eval `$sshagent -k` diff --git a/source/xap/xfce/patches/xfce4-settings.libxklavier5.diff b/source/xap/xfce/patches/xfce4-settings.libxklavier5.diff deleted file mode 100644 index d5f8ed8c..00000000 --- a/source/xap/xfce/patches/xfce4-settings.libxklavier5.diff +++ /dev/null @@ -1,11 +0,0 @@ ---- ./dialogs/keyboard-settings/xfce-keyboard-settings.c.orig 2010-01-02 07:31:06.000000000 -0600 -+++ ./dialogs/keyboard-settings/xfce-keyboard-settings.c 2010-02-12 02:11:05.000000000 -0600 -@@ -457,7 +457,7 @@ - - #ifdef HAVE_LIBXKLAVIER - /* Stop xklavier engine */ -- xkl_engine_stop_listen (settings->priv->xkl_engine); -+ xkl_engine_stop_listen (settings->priv->xkl_engine, XKLL_TRACK_KEYBOARD_STATE); - #endif /* HAVE_LIBXKLAVIER */ - - g_object_unref (settings->priv->provider); diff --git a/source/xap/xfce/patches/xfsm-compat-kde.c-start-kde4-services.diff b/source/xap/xfce/patches/xfsm-compat-kde.c-start-kde4-services.diff new file mode 100644 index 00000000..9c54cf9a --- /dev/null +++ b/source/xap/xfce/patches/xfsm-compat-kde.c-start-kde4-services.diff @@ -0,0 +1,49 @@ +From 51ee1e872e8671bf439e5d391b86432904cbc5ef Mon Sep 17 00:00:00 2001 +From: Robby Workman <rworkman@slackware.com> +Date: Sun, 6 Mar 2011 23:55:35 -0600 +Subject: [PATCH] xfsm-compat-kde.c: Start KDE4 services instead of KDE3 + +--- + xfce4-session/xfsm-compat-kde.c | 10 ++++------ + 1 files changed, 4 insertions(+), 6 deletions(-) + +diff --git a/xfce4-session/xfsm-compat-kde.c b/xfce4-session/xfsm-compat-kde.c +index ced6ece..b51387e 100644 +--- a/xfce4-session/xfsm-compat-kde.c ++++ b/xfce4-session/xfsm-compat-kde.c +@@ -123,10 +123,10 @@ xfsm_compat_kde_startup (XfsmSplashScreen *splash) + if (G_LIKELY (splash != NULL)) + xfsm_splash_screen_next (splash, _("Starting KDE services")); + +- run ("kdeinit"); ++ run ("kdeinit4"); + + /* tell klauncher about the session manager */ +- g_snprintf (command, 256, "dcop klauncher klauncher setLaunchEnv " ++ g_snprintf (command, 256, "qdbus org.kde.klauncher /KLauncher setLaunchEnv " + "SESSION_MANAGER \"%s\"", + g_getenv ("SESSION_MANAGER")); + run (command); +@@ -134,7 +134,7 @@ xfsm_compat_kde_startup (XfsmSplashScreen *splash) + /* tell kde if we are running multi-head */ + if (gdk_display_get_n_screens (gdk_display_get_default ()) > 1) + { +- g_snprintf (command, 256, "dcop klauncher klauncher setLaunchEnv " ++ g_snprintf (command, 256, "qdbus org.kde.klauncher /KLauncher setLaunchEnv " + "KDE_MULTIHEAD \"true\""); + run (command); + } +@@ -150,9 +150,7 @@ xfsm_compat_kde_shutdown (void) + return; + + /* shutdown KDE services */ +- run ("kdeinit_shutdown"); +- run ("dcopserver_shutdown"); +- run ("artsshell -q terminate"); ++ run ("kdeinit4_shutdown"); + + kde_compat_started = FALSE; + } +-- +1.7.4.1 + diff --git a/source/xap/xfce/xfce.SlackBuild b/source/xap/xfce/xfce.SlackBuild index a59aa949..aaa38f99 100755 --- a/source/xap/xfce/xfce.SlackBuild +++ b/source/xap/xfce/xfce.SlackBuild @@ -1,7 +1,7 @@ #!/bin/sh # Copyright 2003 Slackware Linux, Inc., Concord, CA, USA -# Copyright 2007, 2008, 2009, 2010 Patrick J. Volkerding, Sebeka, MN, USA +# Copyright 2007, 2008, 2009, 2010, 2011 Patrick J. Volkerding, Sebeka, MN, USA # All rights reserved. # # Redistribution and use of this script, with or without modification, is @@ -21,23 +21,34 @@ # OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF # ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -VERSION=4.6.1 -BUILD=${BUILD:-8} +VERSION=4.6.2 +BUILD=${BUILD:-5} # A few tarballs have different versions; handle them here -XDT_VERS=4.7.2 # xfce4-dev-tools version -# We're going to ship xdt from git (targeting xfce-4.8) since it's not used -# for building release tarballs anyway, but it's handy to have around for -# building from git, and some folks might want to do that later... -EXO_VERS=0.3.106 # exo version -THUNAR_VERS=1.0.1 # thunar version +XDT_VERS=4.8.0 # xfce4-dev-tools version +# We're going to ship xdt from xfce-4.8 since it's not used for building +# release tarballs anyway, but it's handy to have around for building from +# git, and some folks might want to do that later... +EXO_VERS=0.3.107 # exo version +THUNAR_VERS=1.0.2 # thunar version GXE_VERS=2.6.0 # gtk-xfce-engine version -TERM_VERS=0.4.4 # terminal version +TERM_VERS=0.4.6 # terminal version MPAD_VERS=0.2.16 # mousepad version +XFWM_VERS=4.6.2 # xfwm4 version XFWMTHEME_VERS=4.6.0 # xfwm4-themes version -SETTINGS_VERS=4.6.4 # xfce4-settings version -PANEL_VERS=4.6.3 # xfce4-panel version -XFCEGUI_VERS=4.6.3 # libxfcegui4 version +SETTINGS_VERS=4.6.5 # xfce4-settings version +SESSION_VERS=4.6.2 # xfce4-settings version +PANEL_VERS=4.6.4 # xfce4-panel version +XFCEGUI_VERS=4.6.4 # libxfcegui4 version +XFCEMENU_VERS=4.6.2 # libxfce4menu version +LIBUTIL_VERS=4.6.2 # libxfce4util version +UTILS_VERS=4.6.2 # xfce-utils version +APPFINDER_VERS=4.6.2 # xfce4-appfinder version +XFCONF_VERS=4.6.2 # xfconf version +XFDESKTOP_VERS=4.6.2 # xfdesktop version +MIXER_VERS=4.6.1 # xfce4-mixer version +XFPRINT_VERS=4.6.1 # xfprint version +ORAGE_VERS=4.6.1 # orage version NUMJOBS=${NUMJOBS:--j6} @@ -76,32 +87,28 @@ cd $TMP || exit 1 COMPRESSION=xz COMPRESSUTIL=xz -# The Rodent theme isn't xdg-compliant, so they're not shipping it -# xfce4-icon-theme-$VERSION.tar.$COMPRESSION -# We'll set Tango as the system default instead... - for file in \ xfce4-dev-tools-$XDT_VERS.tar.$COMPRESSION \ - libxfce4util-$VERSION.tar.$COMPRESSION \ - xfconf-$VERSION.tar.$COMPRESSION \ + libxfce4util-$LIBUTIL_VERS.tar.$COMPRESSION \ + xfconf-$XFCONF_VERS.tar.$COMPRESSION \ libxfcegui4-$XFCEGUI_VERS.tar.$COMPRESSION \ - libxfce4menu-$VERSION.tar.$COMPRESSION \ + libxfce4menu-$XFCEMENU_VERS.tar.$COMPRESSION \ exo-$EXO_VERS.tar.$COMPRESSION \ xfce4-panel-$PANEL_VERS.tar.$COMPRESSION \ Thunar-$THUNAR_VERS.tar.$COMPRESSION \ xfce4-settings-$SETTINGS_VERS.tar.$COMPRESSION \ - xfce4-session-$VERSION.tar.$COMPRESSION \ - xfdesktop-$VERSION.tar.$COMPRESSION \ - xfwm4-$VERSION.tar.$COMPRESSION \ - xfce-utils-$VERSION.tar.$COMPRESSION \ - xfce4-mixer-$VERSION.tar.$COMPRESSION \ - xfprint-$VERSION.tar.$COMPRESSION \ - xfce4-appfinder-$VERSION.tar.$COMPRESSION \ + xfce4-session-$SESSION_VERS.tar.$COMPRESSION \ + xfdesktop-$XFDESKTOP_VERS.tar.$COMPRESSION \ + xfwm4-$XFWM_VERS.tar.$COMPRESSION \ + xfce-utils-$UTILS_VERS.tar.$COMPRESSION \ + xfce4-mixer-$MIXER_VERS.tar.$COMPRESSION \ + xfprint-$XFPRINT_VERS.tar.$COMPRESSION \ + xfce4-appfinder-$APPFINDER_VERS.tar.$COMPRESSION \ gtk-xfce-engine-$GXE_VERS.tar.$COMPRESSION \ Terminal-$TERM_VERS.tar.$COMPRESSION \ xfwm4-themes-$XFWMTHEME_VERS.tar.$COMPRESSION \ mousepad-$MPAD_VERS.tar.$COMPRESSION \ - orage-$VERSION.tar.$COMPRESSION ; + orage-$ORAGE_VERS.tar.$COMPRESSION ; do $COMPRESSUTIL -dc $CWD/src/$file | tar xvf - || exit 1 cd $(basename $file .tar.$COMPRESSION) || exit 1 @@ -115,31 +122,40 @@ do # Here's where we patch or set up any other package-specific stuff: # Patch to only show xfcalendar in XFce (otherwise it shows up in # KDE's Lost & Found and does not work): - if [ "$file" = "orage-$VERSION.tar.$COMPRESSION" ]; then - zcat $CWD/patches/xfcalendar.desktop.in.diff.gz | patch -p1 || exit 1 - fi - # Fix Terminal's title bar and preferences problems with GTK+ 2.18: - if [ "$file" = "Terminal-$TERM_VERS.tar.$COMPRESSION" ]; then - zcat $CWD/patches/terminal.gtk.2.18.fix.diff.gz | patch -p1 || exit 1 + if [ "$file" = "orage-$ORAGE_VERS.tar.$COMPRESSION" ]; then + zcat $CWD/patches/xfcalendar.desktop.in.diff.gz | patch -p1 --verbose || exit 1 fi # Make Thunar respect --docdir if [ "$file" = "Thunar-$THUNAR_VERS.tar.$COMPRESSION" ]; then - zcat $CWD/patches/thunar-1.0.1-fixup_docdir.diff.gz | patch -p1 || exit 1 - zcat $CWD/patches/thunar-fix_umask_properly.diff.gz | patch -p1 || exit 1 - # Port to PNG 1.4.0: - zcat $CWD/patches/thunar-1.0.1-png14.diff.gz | patch -p1 || exit 1 + zcat $CWD/patches/thunar-1.0.2-fixup_docdir.diff.gz | patch -p1 --verbose || exit 1 + zcat $CWD/patches/Thunar.thunar-vfs-io-local.diff.gz | patch -p0 --verbose || exit 1 fi # Fix the missing education icon in the desktop menu - if [ "$file" = "xfdesktop-$VERSION.tar.$COMPRESSION" ]; then - zcat $CWD/patches/xfdesktop-fix_education_icon.diff.gz | patch -p1 || exit 1 + if [ "$file" = "xfdesktop-$XFDESKTOP_VERS.tar.$COMPRESSION" ]; then + zcat $CWD/patches/xfdesktop-fix_education_icon.diff.gz | patch -p1 --verbose || exit 1 + fi + # 1) Launch xfce through consolekit so that ck enabled stuff works in xfce + # 2) Fix comments in /etc/xfce/xdg/xfce4/Xft.xrdb + # http://bugzilla.xfce.org/show_bug.cgi?id=6314 + # 3) Load system-wide .Xmodmap, not just the one in $HOME + if [ "$file" = "xfce-utils-$UTILS_VERS.tar.$COMPRESSION" ]; then + zcat $CWD/patches/xfce-utils.xinitrc.consolekit.diff.gz | patch -p1 --verbose || exit 1 + zcat $CWD/patches/fixup_comments_in_xfce-utils-Xft.xrdb.diff.gz | patch -p1 --verbose || exit 1 + zcat $CWD/patches/xfce-utils-load_systemwide_Xmodmap.diff.gz | patch -p1 --verbose || exit 1 + fi + # Fix a couple of bugs from mousepad git + if [ "$file" = "mousepad-$MPAD_VERS.tar.$COMPRESSION" ]; then + zcat $CWD/patches/mousepad-fix_find_and_replace.diff.gz | patch -p1 --verbose || exit 1 + zcat $CWD/patches/mousepad-fix_find.diff.gz | patch -p1 --verbose || exit 1 fi - # Port xfce4-settings to libxklavier-5.x: - if [ "$file" = "xfce4-settings-$SETTINGS_VERS.tar.$COMPRESSION" ]; then - zcat $CWD/patches/xfce4-settings.libxklavier5.diff.gz | patch -p1 || exit 1 + # Fix a plugin moving bug in the panel + if [ "$file" = "xfce4-panel-$PANEL_VERS.tar.$COMPRESSION" ]; then + zcat $CWD/patches/no_sensitive_panel_during_plugin_moves.patch.gz | patch -p1 --verbose || exit 1 fi - # Launch xfce through consolekit so that ck enabled stuff works in xfce: - if [ "$file" = "xfce-utils-$VERSION.tar.$COMPRESSION" ]; then - zcat $CWD/patches/xfce-utils.xinitrc.consolekit.diff.gz | patch -p1 || exit 1 + # Start kde4 services instead of kde3 + # http://bugzilla.xfce.org/show_bug.cgi?id=7382 + if [ "$file" = "xfce4-session-$SESSION_VERS.tar.$COMPRESSION" ]; then + zcat $CWD/patches/xfsm-compat-kde.c-start-kde4-services.diff.gz | patch -p1 --verbose || exit 1 fi # End patches/package-specific stuff @@ -187,12 +203,12 @@ find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \ # The Rodent icon theme isn't xdg compliant, so it spews errors quite often # and just flat breaks some things here and there, so the Xfce team elected -# not to ship it with 4.6.0. In the meantime, we'll default to Tango. -sed -i s/Rodent/Tango/ \ +# not to ship it with 4.6.x. In the meantime, we'll default to gnome. +sed -i s/Rodent/gnome/ \ $PKG/etc/xfce/xdg/xfce4/xfconf/xfce-perchannel-xml/xsettings.xml # We're going to borrow the "applications-education" icons (six of them) -# from kde's oxygen icon theme (it's LGPL) +# from the kde oxygen icon theme (it's LGPL) tar xf $CWD/icons.tar.xz -C $PKG/usr/share # We don't want any of those icon caches diff --git a/source/xap/xgames/xgames.SlackBuild b/source/xap/xgames/xgames.SlackBuild index e2514f81..e313d468 100755 --- a/source/xap/xgames/xgames.SlackBuild +++ b/source/xap/xgames/xgames.SlackBuild @@ -1,6 +1,6 @@ #!/bin/sh -# Copyright 2008, 2009 Patrick J. Volkerding, Sebeka, MN, USA +# Copyright 2008, 2009, 2011 Patrick J. Volkerding, Sebeka, MN, USA # All rights reserved. # # Redistribution and use of this script, with or without modification, is @@ -21,8 +21,17 @@ # ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. VERSION=0.3 -ARCH=${ARCH:-x86_64} -BUILD=${BUILD:-2} +BUILD=${BUILD:-4} + +# Automatically determine the architecture we're building on: +if [ -z "$ARCH" ]; then + case "$( uname -m )" in + i?86) export ARCH=i486 ;; + arm*) export ARCH=arm ;; + # Unless $ARCH is already set, use uname -m for all other archs: + *) export ARCH=$( uname -m ) ;; + esac +fi NUMJOBS=${NUMJOBS:-" -j7 "} @@ -128,8 +137,8 @@ cp -a README.linux $PKG/usr/doc/xgames-$VERSION/xroach # Build xsnow: cd $TMP -tar xvf $CWD/xsnow-1.40.tar.gz || exit 1 -cd xsnow-1.40 || exit 1 +tar xvf $CWD/xsnow-1.42.tar.gz || exit 1 +cd xsnow-1.42 || exit 1 xmkmf make $NUMJOBS || make || exit 1 cat xsnow > $PKG/usr/bin/xsnow diff --git a/source/xap/xine-lib/xine-lib-1.1.17.ff.diff b/source/xap/xine-lib/xine-lib-1.1.17.ff.diff deleted file mode 100644 index c08913ea..00000000 --- a/source/xap/xine-lib/xine-lib-1.1.17.ff.diff +++ /dev/null @@ -1,1044 +0,0 @@ ---- ./src/combined/ffmpeg/ff_video_decoder.c.orig 2009-11-30 14:55:46.000000000 -0600 -+++ ./src/combined/ffmpeg/ff_video_decoder.c 2009-04-02 13:44:01.000000000 -0500 -@@ -1,25 +1,25 @@ - /* - * Copyright (C) 2001-2008 the xine project -- * -+ * - * This file is part of xine, a free video player. -- * -+ * - * xine is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. -- * -+ * - * xine is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. -- * -+ * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110, USA - * - * xine video decoder plugin using ffmpeg - */ -- -+ - #ifdef HAVE_CONFIG_H - #include "config.h" - #include "../../libffmpeg/ffmpeg_config.h" -@@ -73,7 +73,7 @@ - int thread_count; - int8_t skip_loop_filter_enum; - int8_t choose_speed_over_accuracy; -- -+ - xine_t *xine; - } ff_video_class_t; - -@@ -107,13 +107,13 @@ - int bufsize; - int size; - int skipframes; -- -+ - int slice_offset_size; - - AVFrame *av_frame; - AVCodecContext *context; - AVCodec *codec; -- -+ - int pp_quality; - int pp_flags; - pp_context_t *pp_context; -@@ -126,7 +126,7 @@ - int aspect_ratio_prio; - int frame_flags; - int crop_right, crop_bottom; -- -+ - int output_format; - - xine_list_t *dr1_frames; -@@ -154,7 +154,7 @@ - vo_frame_t *img; - int width = context->width; - int height = context->height; -- -+ - if (!this->bih.biWidth || !this->bih.biHeight) { - this->bih.biWidth = width; - this->bih.biHeight = height; -@@ -166,12 +166,12 @@ - set_stream_info(this); - } - } -- -+ - avcodec_align_dimensions(context, &width, &height); - - if( this->context->pix_fmt != PIX_FMT_YUV420P && this->context->pix_fmt != PIX_FMT_YUVJ420P ) { - if (!this->is_direct_rendering_disabled) { -- xprintf(this->stream->xine, XINE_VERBOSITY_LOG, -+ xprintf(this->stream->xine, XINE_VERBOSITY_LOG, - _("ffmpeg_video_dec: unsupported frame format, DR1 disabled.\n")); - this->is_direct_rendering_disabled = 1; - } -@@ -182,14 +182,14 @@ - av_frame->data[2]= NULL; - return avcodec_default_get_buffer(context, av_frame); - } -- -+ - if((width != this->bih.biWidth) || (height != this->bih.biHeight)) { - if(this->stream->video_out->get_capabilities(this->stream->video_out) & VO_CAP_CROP) { - this->crop_right = width - this->bih.biWidth; - this->crop_bottom = height - this->bih.biHeight; - } else { - if (!this->is_direct_rendering_disabled) { -- xprintf(this->stream->xine, XINE_VERBOSITY_LOG, -+ xprintf(this->stream->xine, XINE_VERBOSITY_LOG, - _("ffmpeg_video_dec: unsupported frame dimensions, DR1 disabled.\n")); - this->is_direct_rendering_disabled = 1; - } -@@ -204,7 +204,7 @@ - img = this->stream->video_out->get_frame (this->stream->video_out, - width, - height, -- this->aspect_ratio, -+ this->aspect_ratio, - this->output_format, - VO_BOTH_FIELDS|this->frame_flags); - -@@ -246,7 +246,7 @@ - } - - xine_list_iterator_t it; -- -+ - it = xine_list_find(this->dr1_frames, av_frame); - assert(it); - if( it != NULL ) -@@ -300,7 +300,7 @@ - } - - if (!this->codec) { -- xprintf (this->stream->xine, XINE_VERBOSITY_LOG, -+ xprintf (this->stream->xine, XINE_VERBOSITY_LOG, - _("ffmpeg_video_dec: couldn't find ffmpeg decoder for buf type 0x%X\n"), - codec_type); - _x_stream_info_set(this->stream, XINE_STREAM_INFO_VIDEO_HANDLED, 0); -@@ -309,14 +309,14 @@ - - lprintf("lavc decoder found\n"); - -- /* force (width % 8 == 0), otherwise there will be -- * display problems with Xv. -- */ -+ /* force (width % 8 == 0), otherwise there will be -+ * display problems with Xv. -+ */ - this->bih.biWidth = (this->bih.biWidth + 1) & (~1); - - this->context->width = this->bih.biWidth; - this->context->height = this->bih.biHeight; -- this->context->stream_codec_tag = this->context->codec_tag = -+ this->context->stream_codec_tag = this->context->codec_tag = - _x_stream_info_get(this->stream, XINE_STREAM_INFO_VIDEO_FOURCC); - - -@@ -325,14 +325,14 @@ - if(this->codec->capabilities & CODEC_CAP_DR1 && this->codec->id != CODEC_ID_H264) { - this->context->flags |= CODEC_FLAG_EMU_EDGE; - } -- -+ - if (this->class->choose_speed_over_accuracy) - this->context->flags2 |= CODEC_FLAG2_FAST; - - pthread_mutex_lock(&ffmpeg_lock); - if (avcodec_open (this->context, this->codec) < 0) { - pthread_mutex_unlock(&ffmpeg_lock); -- xprintf (this->stream->xine, XINE_VERBOSITY_LOG, -+ xprintf (this->stream->xine, XINE_VERBOSITY_LOG, - _("ffmpeg_video_dec: couldn't open decoder\n")); - free(this->context); - this->context = NULL; -@@ -340,22 +340,6 @@ - return; - } - -- if (this->codec->id == CODEC_ID_VC1 && -- (!this->bih.biWidth || !this->bih.biHeight)) { -- /* VC1 codec must be re-opened with correct width and height. */ -- avcodec_close(this->context); -- -- if (avcodec_open (this->context, this->codec) < 0) { -- pthread_mutex_unlock(&ffmpeg_lock); -- xprintf (this->stream->xine, XINE_VERBOSITY_LOG, -- _("ffmpeg_video_dec: couldn't open decoder (pass 2)\n")); -- free(this->context); -- this->context = NULL; -- _x_stream_info_set(this->stream, XINE_STREAM_INFO_VIDEO_HANDLED, 0); -- return; -- } -- } -- - if (this->class->thread_count > 1) { - avcodec_thread_init(this->context, this->class->thread_count); - this->context->thread_count = this->class->thread_count; -@@ -384,14 +368,14 @@ - (this->stream->video_out->open) (this->stream->video_out, this->stream); - - this->skipframes = 0; -- -+ - /* enable direct rendering by default */ - this->output_format = XINE_IMGFMT_YV12; - #ifdef ENABLE_DIRECT_RENDERING - if( this->codec->capabilities & CODEC_CAP_DR1 && this->codec->id != CODEC_ID_H264 ) { - this->context->get_buffer = get_buffer; - this->context->release_buffer = release_buffer; -- xprintf(this->stream->xine, XINE_VERBOSITY_LOG, -+ xprintf(this->stream->xine, XINE_VERBOSITY_LOG, - _("ffmpeg_video_dec: direct rendering enabled\n")); - } - #endif -@@ -422,25 +406,25 @@ - - static void choose_speed_over_accuracy_cb(void *user_data, xine_cfg_entry_t *entry) { - ff_video_class_t *class = (ff_video_class_t *) user_data; -- -+ - class->choose_speed_over_accuracy = entry->num_value; - } - - static void skip_loop_filter_enum_cb(void *user_data, xine_cfg_entry_t *entry) { - ff_video_class_t *class = (ff_video_class_t *) user_data; -- -+ - class->skip_loop_filter_enum = entry->num_value; - } - - static void thread_count_cb(void *user_data, xine_cfg_entry_t *entry) { - ff_video_class_t *class = (ff_video_class_t *) user_data; -- -+ - class->thread_count = entry->num_value; - } - - static void pp_quality_cb(void *user_data, xine_cfg_entry_t *entry) { - ff_video_class_t *class = (ff_video_class_t *) user_data; -- -+ - class->pp_quality = entry->num_value; - } - -@@ -453,15 +437,15 @@ - this->pp_flags); - if(this->pp_mode) - pp_free_mode(this->pp_mode); -- -- this->pp_mode = pp_get_mode_by_name_and_quality("hb:a,vb:a,dr:a", -+ -+ this->pp_mode = pp_get_mode_by_name_and_quality("hb:a,vb:a,dr:a", - this->pp_quality); - } else { - if(this->pp_mode) { - pp_free_mode(this->pp_mode); - this->pp_mode = NULL; - } -- -+ - if(this->pp_context) { - pp_free_context(this->pp_context); - this->pp_context = NULL; -@@ -486,22 +470,22 @@ - this->pp_available = 0; - break; - } -- -+ - /* Detect what cpu accel we have */ - cpu_caps = xine_mm_accel(); - this->pp_flags = PP_FORMAT_420; -- -+ - if(cpu_caps & MM_ACCEL_X86_MMX) - this->pp_flags |= PP_CPU_CAPS_MMX; -- -+ - if(cpu_caps & MM_ACCEL_X86_MMXEXT) - this->pp_flags |= PP_CPU_CAPS_MMX2; -- -- if(cpu_caps & MM_ACCEL_X86_3DNOW) -+ -+ if(cpu_caps & MM_ACCEL_X86_3DNOW) - this->pp_flags |= PP_CPU_CAPS_3DNOW; -- -+ - /* Set level */ -- pp_change_quality(this); -+ pp_change_quality(this); - } - - static int ff_handle_mpeg_sequence(ff_video_decoder_t *this, mpeg_parser_t *parser) { -@@ -510,13 +494,13 @@ - * init codec - */ - if (this->decoder_init_mode) { -- _x_meta_info_set_utf8(this->stream, XINE_META_INFO_VIDEOCODEC, -+ _x_meta_info_set_utf8(this->stream, XINE_META_INFO_VIDEOCODEC, - "mpeg-1 (ffmpeg)"); - - init_video_codec (this, BUF_VIDEO_MPEG); - this->decoder_init_mode = 0; - } -- -+ - /* frame format change */ - if ((parser->width != this->bih.biWidth) || - (parser->height != this->bih.biHeight) || -@@ -542,7 +526,7 @@ - xine_event_send(this->stream, &event); - } - this->video_step = this->mpeg_parser->frame_duration; -- -+ - return 1; - } - -@@ -611,7 +595,7 @@ - this->bih.biHeight); - - } else if (this->context->pix_fmt == PIX_FMT_RGB32) { -- -+ - int x, plane_ptr = 0; - uint32_t *argb_pixels; - uint32_t argb; -@@ -620,7 +604,7 @@ - argb_pixels = (uint32_t *)sy; - for(x = 0; x < img->width; x++) { - uint8_t r, g, b; -- -+ - /* this is endian-safe as the ARGB pixels are stored in - * machine order */ - argb = *argb_pixels++; -@@ -635,9 +619,9 @@ - } - sy += this->av_frame->linesize[0]; - } -- -+ - yuv444_to_yuy2(&this->yuv, img->base[0], img->pitches[0]); -- -+ - } else if (this->context->pix_fmt == PIX_FMT_RGB565) { - - int x, plane_ptr = 0; -@@ -648,7 +632,7 @@ - src = sy; - for(x = 0; x < img->width; x++) { - uint8_t r, g, b; -- -+ - /* a 16-bit RGB565 pixel is supposed to be stored in native-endian - * byte order; the following should be endian-safe */ - pixel16 = *((uint16_t *)src); -@@ -664,20 +648,20 @@ - } - sy += this->av_frame->linesize[0]; - } -- -+ - yuv444_to_yuy2(&this->yuv, img->base[0], img->pitches[0]); -- -+ - } else if (this->context->pix_fmt == PIX_FMT_RGB555) { -- -+ - int x, plane_ptr = 0; - uint8_t *src; - uint16_t pixel16; -- -+ - for(y = 0; y < this->bih.biHeight; y++) { - src = sy; - for(x = 0; x < img->width; x++) { - uint8_t r, g, b; -- -+ - /* a 16-bit RGB555 pixel is supposed to be stored in native-endian - * byte order; the following should be endian-safe */ - pixel16 = *((uint16_t *)src); -@@ -693,9 +677,9 @@ - } - sy += this->av_frame->linesize[0]; - } -- -+ - yuv444_to_yuy2(&this->yuv, img->base[0], img->pitches[0]); -- -+ - } else if (this->context->pix_fmt == PIX_FMT_BGR24) { - - int x, plane_ptr = 0; -@@ -705,7 +689,7 @@ - src = sy; - for(x = 0; x < img->width; x++) { - uint8_t r, g, b; -- -+ - b = *src++; - g = *src++; - r = *src++; -@@ -717,9 +701,9 @@ - } - sy += this->av_frame->linesize[0]; - } -- -+ - yuv444_to_yuy2(&this->yuv, img->base[0], img->pitches[0]); -- -+ - } else if (this->context->pix_fmt == PIX_FMT_RGB24) { - - int x, plane_ptr = 0; -@@ -729,7 +713,7 @@ - src = sy; - for(x = 0; x < img->width; x++) { - uint8_t r, g, b; -- -+ - r = *src++; - g = *src++; - b = *src++; -@@ -741,11 +725,11 @@ - } - sy += this->av_frame->linesize[0]; - } -- -+ - yuv444_to_yuy2(&this->yuv, img->base[0], img->pitches[0]); -- -+ - } else if (this->context->pix_fmt == PIX_FMT_PAL8) { -- -+ - int x, plane_ptr = 0; - uint8_t *src; - uint8_t pixel; -@@ -780,34 +764,34 @@ - } - sy += this->av_frame->linesize[0]; - } -- -+ - yuv444_to_yuy2(&this->yuv, img->base[0], img->pitches[0]); -- -+ - } else { -- -+ - for (y = 0; y < this->bih.biHeight; y++) { - xine_fast_memcpy (dy, sy, img->width); -- -+ - dy += img->pitches[0]; -- -+ - sy += this->av_frame->linesize[0]; - } - - for (y = 0; y < this->bih.biHeight / 2; y++) { -- -+ - if (this->context->pix_fmt != PIX_FMT_YUV444P) { -- -+ - xine_fast_memcpy (du, su, img->width/2); - xine_fast_memcpy (dv, sv, img->width/2); -- -+ - } else { -- -+ - int x; - uint8_t *src; - uint8_t *dst; -- -+ - /* subsample */ -- -+ - src = su; dst = du; - for (x=0; x<(img->width/2); x++) { - *dst = *src; -@@ -822,7 +806,7 @@ - } - - } -- -+ - du += img->pitches[1]; - dv += img->pitches[2]; - -@@ -840,8 +824,8 @@ - static void ff_check_bufsize (ff_video_decoder_t *this, int size) { - if (size > this->bufsize) { - this->bufsize = size + size / 2; -- xprintf(this->stream->xine, XINE_VERBOSITY_LOG, -- _("ffmpeg_video_dec: increasing buffer to %d to avoid overflow.\n"), -+ xprintf(this->stream->xine, XINE_VERBOSITY_LOG, -+ _("ffmpeg_video_dec: increasing buffer to %d to avoid overflow.\n"), - this->bufsize); - this->buf = realloc(this->buf, this->bufsize + FF_INPUT_BUFFER_PADDING_SIZE ); - } -@@ -887,28 +871,28 @@ - if (buf->decoder_flags & BUF_FLAG_STDHEADER) { - - lprintf("standard header\n"); -- -+ - /* init package containing bih */ - memcpy ( &this->bih, this->buf, sizeof(xine_bmiheader) ); - - if (this->bih.biSize > sizeof(xine_bmiheader)) { - this->context->extradata_size = this->bih.biSize - sizeof(xine_bmiheader); -- this->context->extradata = malloc(this->context->extradata_size + -+ this->context->extradata = malloc(this->context->extradata_size + - FF_INPUT_BUFFER_PADDING_SIZE); - memcpy(this->context->extradata, this->buf + sizeof(xine_bmiheader), - this->context->extradata_size); - } -- -+ - this->context->bits_per_sample = this->bih.biBitCount; -- -+ - } else { -- -+ - switch (codec_type) { - case BUF_VIDEO_RV10: - case BUF_VIDEO_RV20: - this->bih.biWidth = _X_BE_16(&this->buf[12]); - this->bih.biHeight = _X_BE_16(&this->buf[14]); -- -+ - this->context->sub_id = _X_BE_32(&this->buf[30]); - - this->context->slice_offset = calloc(SLICE_OFFSET_SIZE, sizeof(int)); -@@ -950,7 +934,7 @@ - } - - static void ff_handle_special_buffer (ff_video_decoder_t *this, buf_element_t *buf) { -- /* take care of all the various types of special buffers -+ /* take care of all the various types of special buffers - * note that order is important here */ - lprintf("special buffer\n"); - -@@ -959,34 +943,34 @@ - - lprintf("BUF_SPECIAL_STSD_ATOM\n"); - this->context->extradata_size = buf->decoder_info[2]; -- this->context->extradata = malloc(buf->decoder_info[2] + -+ this->context->extradata = malloc(buf->decoder_info[2] + - FF_INPUT_BUFFER_PADDING_SIZE); - memcpy(this->context->extradata, buf->decoder_info_ptr[2], - buf->decoder_info[2]); - - } else if (buf->decoder_info[1] == BUF_SPECIAL_DECODER_CONFIG && - !this->context->extradata_size) { -- -+ - lprintf("BUF_SPECIAL_DECODER_CONFIG\n"); - this->context->extradata_size = buf->decoder_info[2]; - this->context->extradata = malloc(buf->decoder_info[2] + - FF_INPUT_BUFFER_PADDING_SIZE); - memcpy(this->context->extradata, buf->decoder_info_ptr[2], - buf->decoder_info[2]); -- -+ - } else if (buf->decoder_info[1] == BUF_SPECIAL_PALETTE) { - unsigned int i; - - palette_entry_t *demuxer_palette; - AVPaletteControl *decoder_palette; -- -+ - lprintf("BUF_SPECIAL_PALETTE\n"); - this->context->palctrl = &this->palette_control; - decoder_palette = (AVPaletteControl *)this->context->palctrl; - demuxer_palette = (palette_entry_t *)buf->decoder_info_ptr[2]; - - for (i = 0; i < buf->decoder_info[2]; i++) { -- decoder_palette->palette[i] = -+ decoder_palette->palette[i] = - (demuxer_palette[i].r << 16) | - (demuxer_palette[i].g << 8) | - (demuxer_palette[i].b << 0); -@@ -995,20 +979,20 @@ - - } else if (buf->decoder_info[1] == BUF_SPECIAL_RV_CHUNK_TABLE) { - int i; -- -+ - lprintf("BUF_SPECIAL_RV_CHUNK_TABLE\n"); - this->context->slice_count = buf->decoder_info[2]+1; - - lprintf("slice_count=%d\n", this->context->slice_count); -- -+ - if(this->context->slice_count > this->slice_offset_size) { - this->context->slice_offset = realloc(this->context->slice_offset, - sizeof(int)*this->context->slice_count); - this->slice_offset_size = this->context->slice_count; - } -- -+ - for(i = 0; i < this->context->slice_count; i++) { -- this->context->slice_offset[i] = -+ this->context->slice_offset[i] = - ((uint32_t *) buf->decoder_info_ptr[2])[(2*i)+1]; - lprintf("slice_offset[%d]=%d\n", i, this->context->slice_offset[i]); - } -@@ -1051,7 +1035,7 @@ - - if (!this->decoder_ok) - return; -- -+ - if (flush) { - lprintf("flush lavc buffers\n"); - /* hack: ffmpeg outputs the last frame if size=0 */ -@@ -1069,11 +1053,11 @@ - len, got_picture); - len = current - buf->content - offset; - lprintf("avcodec_decode_video: consumed_size=%d\n", len); -- -+ - flush = next_flush; - - if ((len < 0) || (len > buf->size)) { -- xprintf (this->stream->xine, XINE_VERBOSITY_DEBUG, -+ xprintf (this->stream->xine, XINE_VERBOSITY_DEBUG, - "ffmpeg_video_dec: error decompressing frame\n"); - size = 0; /* draw a bad frame and exit */ - } else { -@@ -1088,7 +1072,7 @@ - img = this->stream->video_out->get_frame (this->stream->video_out, - this->bih.biWidth, - this->bih.biHeight, -- this->aspect_ratio, -+ this->aspect_ratio, - this->output_format, - VO_BOTH_FIELDS|this->frame_flags); - free_img = 1; -@@ -1108,7 +1092,7 @@ - - img->crop_right = this->crop_right; - img->crop_bottom = this->crop_bottom; -- -+ - this->skipframes = img->draw(img, this->stream); - - if(free_img) -@@ -1121,7 +1105,7 @@ - img = this->stream->video_out->get_frame (this->stream->video_out, - this->bih.biWidth, - this->bih.biHeight, -- this->aspect_ratio, -+ this->aspect_ratio, - this->output_format, - VO_BOTH_FIELDS|this->frame_flags); - img->pts = 0; -@@ -1181,49 +1165,6 @@ - } - } - --static int ff_vc1_find_header(ff_video_decoder_t *this, buf_element_t *buf) --{ -- uint8_t *p = buf->content; -- -- if (!p[0] && !p[1] && p[2] == 1 && p[3] == 0x0f) { -- int i; -- -- this->context->extradata = calloc(1, buf->size); -- this->context->extradata_size = 0; -- -- for (i = 0; i < buf->size && i < 128; i++) { -- if (!p[i] && !p[i+1] && p[i+2]) { -- lprintf("00 00 01 %02x at %d\n", p[i+3], i); -- if (p[i+3] != 0x0e && p[i+3] != 0x0f) -- break; -- } -- this->context->extradata[i] = p[i]; -- this->context->extradata_size++; -- } -- -- lprintf("ff_video_decoder: found VC1 sequence header\n"); -- return 1; -- } -- -- xprintf(this->stream->xine, XINE_VERBOSITY_DEBUG, -- "ffmpeg_video_dec: VC1 extradata missing !\n"); -- return 0; --} -- --static int ff_check_extradata(ff_video_decoder_t *this, unsigned int codec_type, buf_element_t *buf) --{ -- if (this->context && this->context->extradata) -- return 1; -- -- switch (codec_type) { -- case BUF_VIDEO_VC1: -- return ff_vc1_find_header(this, buf); -- default:; -- } -- -- return 1; --} -- - #endif /* AVCODEC_HAS_REORDERED_OPAQUE */ - static void ff_handle_buffer (ff_video_decoder_t *this, buf_element_t *buf) { - uint8_t *chunk_buf = this->buf; -@@ -1235,9 +1176,6 @@ - if (this->decoder_init_mode) { - int codec_type = buf->type & 0xFFFF0000; - -- if (!ff_check_extradata(this, codec_type, buf)) -- return; -- - /* init ffmpeg decoder */ - init_video_codec(this, codec_type); - init_postprocess(this); -@@ -1256,8 +1194,7 @@ - if (this->size == 0) { - /* take over pts when we are about to buffer a frame */ - this->av_frame->reordered_opaque = ff_tag_pts(this, this->pts); -- if (this->context) /* shouldn't be NULL */ -- this->context->reordered_opaque = ff_tag_pts(this, this->pts); -+ this->context->reordered_opaque = ff_tag_pts(this, this->pts); - this->pts = 0; - } - #endif /* AVCODEC_HAS_REORDERED_OPAQUE */ -@@ -1265,7 +1202,7 @@ - /* data accumulation */ - if (buf->size > 0) { - if ((this->size == 0) && -- ((buf->size + FF_INPUT_BUFFER_PADDING_SIZE) < buf->max_size) && -+ ((buf->size + FF_INPUT_BUFFER_PADDING_SIZE) < buf->max_size) && - (buf->decoder_flags & BUF_FLAG_FRAME_END)) { - /* buf contains a complete frame */ - /* no memcpy needed */ -@@ -1278,7 +1215,7 @@ - chunk_buf = this->buf; /* ff_check_bufsize might realloc this->buf */ - - xine_fast_memcpy (&this->buf[this->size], buf->content, buf->size); -- -+ - this->size += buf->size; - lprintf("accumulate data into this->buf\n"); - } -@@ -1301,7 +1238,7 @@ - memset(&chunk_buf[this->size], 0, FF_INPUT_BUFFER_PADDING_SIZE); - - while (this->size > 0) { -- -+ - /* DV frames can be completely skipped */ - if( codec_type == BUF_VIDEO_DV && this->skipframes ) { - this->size = 0; -@@ -1322,7 +1259,7 @@ - - lprintf("consumed size: %d, got_picture: %d\n", len, got_picture); - if ((len <= 0) || (len > this->size)) { -- xprintf (this->stream->xine, XINE_VERBOSITY_DEBUG, -+ xprintf (this->stream->xine, XINE_VERBOSITY_DEBUG, - "ffmpeg_video_dec: error decompressing frame\n"); - this->size = 0; - -@@ -1366,7 +1303,7 @@ - this->bih.biHeight = this->context->height; - } - -- this->aspect_ratio = av_q2d(this->context->sample_aspect_ratio) * -+ this->aspect_ratio = av_q2d(this->context->sample_aspect_ratio) * - (double)this->bih.biWidth / (double)this->bih.biHeight; - this->aspect_ratio_prio = 2; - lprintf("ffmpeg aspect ratio: %f\n", this->aspect_ratio); -@@ -1405,7 +1342,7 @@ - img = this->stream->video_out->get_frame (this->stream->video_out, - (this->bih.biWidth + 15) & ~15, - (this->bih.biHeight + 15) & ~15, -- this->aspect_ratio, -+ this->aspect_ratio, - this->output_format, - VO_BOTH_FIELDS|this->frame_flags); - free_img = 1; -@@ -1426,17 +1363,17 @@ - img = this->stream->video_out->get_frame (this->stream->video_out, - (img->width + 15) & ~15, - (img->height + 15) & ~15, -- this->aspect_ratio, -+ this->aspect_ratio, - this->output_format, - VO_BOTH_FIELDS|this->frame_flags); - free_img = 1; - } - -- pp_postprocess(this->av_frame->data, this->av_frame->linesize, -- img->base, img->pitches, -+ pp_postprocess(this->av_frame->data, this->av_frame->linesize, -+ img->base, img->pitches, - img->width, img->height, - this->av_frame->qscale_table, this->av_frame->qstride, -- this->pp_mode, this->pp_context, -+ this->pp_mode, this->pp_context, - this->av_frame->pict_type); - - } else if (!this->av_frame->opaque) { -@@ -1476,7 +1413,7 @@ - img->top_field_first = this->av_frame->top_field_first; - - this->skipframes = img->draw(img, this->stream); -- -+ - if(free_img) - img->free(img); - } -@@ -1490,7 +1427,7 @@ - img = this->stream->video_out->get_frame (this->stream->video_out, - (this->bih.biWidth <= 0) ? 16 : ((this->bih.biWidth + 15) & ~15), - (this->bih.biHeight <= 0) ? 16 : ((this->bih.biHeight + 15) & ~15), -- this->aspect_ratio, -+ this->aspect_ratio, - this->output_format, - VO_BOTH_FIELDS|this->frame_flags); - /* set PTS to allow early syncing */ -@@ -1520,7 +1457,7 @@ - static void ff_decode_data (video_decoder_t *this_gen, buf_element_t *buf) { - ff_video_decoder_t *this = (ff_video_decoder_t *) this_gen; - -- lprintf ("processing packet type = %08x, len = %d, decoder_flags=%08x\n", -+ lprintf ("processing packet type = %08x, len = %d, decoder_flags=%08x\n", - buf->type, buf->size, buf->decoder_flags); - - if (buf->decoder_flags & BUF_FLAG_FRAMERATE) { -@@ -1529,7 +1466,7 @@ - } - - if (buf->decoder_flags & BUF_FLAG_PREVIEW) { -- -+ - ff_handle_preview_buffer(this, buf); - - } else { -@@ -1537,7 +1474,7 @@ - if (buf->decoder_flags & BUF_FLAG_SPECIAL) { - - ff_handle_special_buffer(this, buf); -- -+ - } - - if (buf->decoder_flags & BUF_FLAG_HEADER) { -@@ -1551,7 +1488,7 @@ - lprintf("aspect ratio: %f\n", this->aspect_ratio); - set_stream_info(this); - } -- } -+ } - - } else { - -@@ -1582,7 +1519,7 @@ - - if(this->context && this->decoder_ok) - avcodec_flush_buffers(this->context); -- -+ - if (this->is_mpeg12) - mpeg_parser_reset(this->mpeg_parser); - -@@ -1596,14 +1533,14 @@ - - static void ff_discontinuity (video_decoder_t *this_gen) { - ff_video_decoder_t *this = (ff_video_decoder_t *) this_gen; -- -+ - lprintf ("ff_discontinuity\n"); - this->pts = 0; - - #ifdef AVCODEC_HAS_REORDERED_OPAQUE - /* - * there is currently no way to reset all the pts which are stored in the decoder. -- * therefore, we add a unique tag (generated from pts_tag_counter) to pts (see -+ * therefore, we add a unique tag (generated from pts_tag_counter) to pts (see - * ff_tag_pts()) and wait for it to appear on returned frames. - * until then, any retrieved pts value will be reset to 0 (see ff_untag_pts()). - * when we see the tag returned, pts_tag will be reset to 0. from now on, any -@@ -1640,15 +1577,15 @@ - ff_video_decoder_t *this = (ff_video_decoder_t *) this_gen; - - lprintf ("ff_dispose\n"); -- -+ - if (this->decoder_ok) { - xine_list_iterator_t it; - AVFrame *av_frame; -- -+ - pthread_mutex_lock(&ffmpeg_lock); - avcodec_close (this->context); - pthread_mutex_unlock(&ffmpeg_lock); -- -+ - /* frame garbage collector here - workaround for buggy ffmpeg codecs that - * don't release their DR1 frames */ - while( (it = xine_list_front(this->dr1_frames)) != NULL ) -@@ -1656,7 +1593,7 @@ - av_frame = (AVFrame *)xine_list_get_value(this->dr1_frames, it); - release_buffer(this->context, av_frame); - } -- -+ - this->stream->video_out->close(this->stream->video_out, this->stream); - this->decoder_ok = 0; - } -@@ -1669,27 +1606,27 @@ - - if(this->yuv_init) - free_yuv_planes(&this->yuv); -- -+ - if( this->context ) - av_free( this->context ); - - if( this->av_frame ) - av_free( this->av_frame ); -- -+ - if (this->buf) - free(this->buf); - this->buf = NULL; -- -+ - if(this->pp_context) - pp_free_context(this->pp_context); -- -+ - if(this->pp_mode) - pp_free_mode(this->pp_mode); - - mpeg_parser_dispose(this->mpeg_parser); -- -+ - xine_list_delete(this->dr1_frames); -- -+ - free (this_gen); - } - -@@ -1715,7 +1652,7 @@ - this->context = avcodec_alloc_context(); - this->context->opaque = this; - this->context->palctrl = NULL; -- -+ - this->decoder_ok = 0; - this->decoder_init_mode = 1; - this->buf = calloc(1, VIDEOBUFSIZE + FF_INPUT_BUFFER_PADDING_SIZE); -@@ -1727,9 +1664,9 @@ - this->pp_quality = 0; - this->pp_context = NULL; - this->pp_mode = NULL; -- -+ - this->mpeg_parser = NULL; -- -+ - this->dr1_frames = xine_list_new(); - - #ifdef LOG -@@ -1755,7 +1692,7 @@ - - ff_video_class_t *this; - config_values_t *config; -- -+ - this = calloc(1, sizeof (ff_video_class_t)); - - this->decoder_class.open_plugin = ff_video_open_plugin; -@@ -1765,12 +1702,12 @@ - this->xine = xine; - - pthread_once( &once_control, init_once_routine ); -- -+ - /* Configuration for post processing quality - default to mid (3) for the - * moment */ - config = xine->config; -- -- this->pp_quality = xine->config->register_range(config, "video.processing.ffmpeg_pp_quality", 3, -+ -+ this->pp_quality = xine->config->register_range(config, "video.processing.ffmpeg_pp_quality", 3, - 0, PP_QUALITY_MAX, - _("MPEG-4 postprocessing quality"), - _("You can adjust the amount of post processing applied to MPEG-4 video.\n" -@@ -1779,8 +1716,8 @@ - "too heavy post processing can actually make the image worse by blurring it " - "too much."), - 10, pp_quality_cb, this); -- -- this->thread_count = xine->config->register_num(config, "video.processing.ffmpeg_thread_count", 1, -+ -+ this->thread_count = xine->config->register_num(config, "video.processing.ffmpeg_thread_count", 1, - _("FFmpeg video decoding thread count"), - _("You can adjust the number of video decoding threads which FFmpeg may use.\n" - "Higher values should speed up decoding but it depends on the codec used " -@@ -1789,7 +1726,7 @@ - "A change of this setting will take effect with playing the next stream."), - 10, thread_count_cb, this); - -- this->skip_loop_filter_enum = xine->config->register_enum(config, "video.processing.ffmpeg_skip_loop_filter", 0, -+ this->skip_loop_filter_enum = xine->config->register_enum(config, "video.processing.ffmpeg_skip_loop_filter", 0, - (char **)skip_loop_filter_enum_names, - _("Skip loop filter"), - _("You can control for which frames the loop filter shall be skipped after " -@@ -1800,7 +1737,7 @@ - "A change of this setting will take effect with playing the next stream."), - 10, skip_loop_filter_enum_cb, this); - -- this->choose_speed_over_accuracy = xine->config->register_bool(config, "video.processing.ffmpeg_choose_speed_over_accuracy", 0, -+ this->choose_speed_over_accuracy = xine->config->register_bool(config, "video.processing.ffmpeg_choose_speed_over_accuracy", 0, - _("Choose speed over specification compliance"), - _("You may want to allow speed cheats which violate codec specification.\n" - "Cheating may speed up decoding but can also lead to decoding artefacts.\n" -@@ -1810,14 +1747,14 @@ - return this; - } - --static uint32_t wmv8_video_types[] = { -+static uint32_t wmv8_video_types[] = { - BUF_VIDEO_WMV8, -- 0 -+ 0 - }; - --static uint32_t wmv9_video_types[] = { -+static uint32_t wmv9_video_types[] = { - BUF_VIDEO_WMV9, -- 0 -+ 0 - }; - - decoder_info_t dec_info_ffmpeg_video = { diff --git a/source/xap/xine-lib/xine-lib.SlackBuild b/source/xap/xine-lib/xine-lib.SlackBuild index 50bc2ede..c1127593 100755 --- a/source/xap/xine-lib/xine-lib.SlackBuild +++ b/source/xap/xine-lib/xine-lib.SlackBuild @@ -22,11 +22,11 @@ # Version on the tarball -VERSION=1.1.17 +VERSION=1.1.19 # Version used in the source directory to cd into -DIRVER=1.1.17 +DIRVER=1.1.19 # Version used for the Slackware package -PKGVER=1.1.17 +PKGVER=1.1.19 # Automatically determine the architecture we're building on: if [ -z "$ARCH" ]; then @@ -59,12 +59,10 @@ mkdir -p $TMP $PKG/usr cd $TMP rm -rf xine-lib-$VERSION -tar xvf $CWD/xine-lib-$VERSION.tar.bz2 || exit 1 +tar xvf $CWD/xine-lib-$VERSION.tar.xz || exit 1 cd xine-lib-$DIRVER || exit 1 -# revert to xine-lib-1.1.16.3 ffmpeg video decoder... -# the new one doesn't compile: -zcat $CWD/xine-lib-1.1.17.ff.diff.gz | patch -p1 --verbose || exit 1 +zcat $CWD/xine-lib.XvMClib.h.diff.gz | patch -p1 --verbose || exit 1 chown -R root:root . find . \ diff --git a/source/xap/xine-lib/xine-lib.XvMClib.h.diff b/source/xap/xine-lib/xine-lib.XvMClib.h.diff new file mode 100644 index 00000000..663e7a76 --- /dev/null +++ b/source/xap/xine-lib/xine-lib.XvMClib.h.diff @@ -0,0 +1,22 @@ +diff -u -r --new-file xine-lib-1.1.19.orig/src/video_out/video_out_xxmc.c xine-lib-1.1.19/src/video_out/video_out_xxmc.c +--- xine-lib-1.1.19.orig/src/video_out/video_out_xxmc.c 2010-04-08 09:52:43.000000000 -0500 ++++ xine-lib-1.1.19/src/video_out/video_out_xxmc.c 2010-11-06 16:01:34.278017097 -0500 +@@ -35,6 +35,7 @@ + + + #include "xxmc.h" ++#include <X11/extensions/XvMClib.h> + #include <unistd.h> + #include "xv_common.h" + +diff -u -r --new-file xine-lib-1.1.19.orig/src/video_out/xvmc_mocomp.c xine-lib-1.1.19/src/video_out/xvmc_mocomp.c +--- xine-lib-1.1.19.orig/src/video_out/xvmc_mocomp.c 2010-03-09 16:17:05.000000000 -0600 ++++ xine-lib-1.1.19/src/video_out/xvmc_mocomp.c 2010-11-06 16:01:34.272017924 -0500 +@@ -21,6 +21,7 @@ + */ + + #include "xxmc.h" ++#include <X11/extensions/XvMClib.h> + + + static void calc_DMV(int DMV[][2], int *dmvector, diff --git a/source/xap/xlockmore/xlockmore.SlackBuild b/source/xap/xlockmore/xlockmore.SlackBuild index f25bf14e..09ce261f 100755 --- a/source/xap/xlockmore/xlockmore.SlackBuild +++ b/source/xap/xlockmore/xlockmore.SlackBuild @@ -1,6 +1,6 @@ #!/bin/sh -# Copyright 2008, 2009 Patrick J. Volkerding, Sebeka, MN, USA +# Copyright 2008, 2009, 2011 Patrick J. Volkerding, Sebeka, MN, USA # All rights reserved. # # Redistribution and use of this script, with or without modification, is @@ -21,19 +21,36 @@ # ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -VERSION=5.28 -ARCH=${ARCH:-x86_64} -NUMJOBS=${NUMJOBS:-" -j7 "} +PKGNAM=xlockmore +VERSION=${VERSION:-$(echo $PKGNAM-*.tar.bz2 | rev | cut -f 3- -d . | cut -f 1 -d - | rev)} BUILD=${BUILD:-1} +# Automatically determine the architecture we're building on: +if [ -z "$ARCH" ]; then + case "$( uname -m )" in + i?86) export ARCH=i486 ;; + arm*) export ARCH=arm ;; + # Unless $ARCH is already set, use uname -m for all other archs: + *) export ARCH=$( uname -m ) ;; + esac +fi + if [ "$ARCH" = "i486" ]; then SLKCFLAGS="-O2 -march=i486 -mtune=i686" + LIBDIRSUFFIX="" elif [ "$ARCH" = "s390" ]; then SLKCFLAGS="-O2" + LIBDIRSUFFIX="" elif [ "$ARCH" = "x86_64" ]; then SLKCFLAGS="-O2 -fPIC -lcrypt" + LIBDIRSUFFIX="64" +else + SLKCFLAGS="-O2" + LIBDIRSUFFIX="" fi +NUMJOBS=${NUMJOBS:-" -j7 "} + CWD=$(pwd) TMP=${TMP:-/tmp} PKG=$TMP/package-xlockmore @@ -74,14 +91,13 @@ CXXFLAGS="$SLKCFLAGS" \ --prefix=/usr \ --without-dtsaver \ --without-ttf \ - --without-gtk \ --without-rplay \ --without-nas \ --disable-bomb \ --without-motif \ --without-esound \ --without-gtk \ - $ARCH-slackware-linux + --build=$ARCH-slackware-linux make $NUMJOBS || make || exit 1 cd xlock diff --git a/source/xap/xpdf/patches/xpdf-3.02pl5.patch b/source/xap/xpdf/patches/xpdf-3.02pl5.patch new file mode 100644 index 00000000..558eac55 --- /dev/null +++ b/source/xap/xpdf/patches/xpdf-3.02pl5.patch @@ -0,0 +1,41 @@ +*** xpdf-3.02.orig/xpdf/Gfx.cc Tue Feb 27 14:05:52 2007 +--- xpdf-3.02/xpdf/Gfx.cc Mon Oct 11 15:39:52 2010 +*************** +*** 461,466 **** +--- 461,467 ---- + baseMatrix[i] = state->getCTM()[i]; + } + formDepth = 0; ++ parser = NULL; + abortCheckCbk = abortCheckCbkA; + abortCheckCbkData = abortCheckCbkDataA; + +*************** +*** 500,505 **** +--- 501,507 ---- + baseMatrix[i] = state->getCTM()[i]; + } + formDepth = 0; ++ parser = NULL; + abortCheckCbk = abortCheckCbkA; + abortCheckCbkData = abortCheckCbkDataA; + +*** xpdf-3.02.orig/fofi/FoFiType1.cc Tue Feb 27 14:05:51 2007 +--- xpdf-3.02/fofi/FoFiType1.cc Mon Oct 11 15:44:13 2010 +*************** +*** 224,230 **** + code = code * 8 + (*p2 - '0'); + } + } +! if (code < 256) { + for (p = p2; *p == ' ' || *p == '\t'; ++p) ; + if (*p == '/') { + ++p; +--- 224,230 ---- + code = code * 8 + (*p2 - '0'); + } + } +! if (code >= 0 && code < 256) { + for (p = p2; *p == ' ' || *p == '\t'; ++p) ; + if (*p == '/') { + ++p; diff --git a/source/xap/xpdf/patches/xpdf-3.02pl6.patch b/source/xap/xpdf/patches/xpdf-3.02pl6.patch new file mode 100644 index 00000000..b3649102 --- /dev/null +++ b/source/xap/xpdf/patches/xpdf-3.02pl6.patch @@ -0,0 +1 @@ +# There is not a patch 6... just a recompile without t1lib diff --git a/source/xap/xpdf/slack-desc b/source/xap/xpdf/slack-desc index 164302aa..58072776 100644 --- a/source/xap/xpdf/slack-desc +++ b/source/xap/xpdf/slack-desc @@ -12,7 +12,7 @@ xpdf: Xpdf is a viewer for Portable Document Format (PDF) files. xpdf: xpdf: xpdf was written by Derek B. Noonburg. xpdf: -xpdf: The xpdf package requires the t1lib package to render Type 1 fonts. +xpdf: xpdf: xpdf: xpdf: diff --git a/source/xap/xpdf/xpdf.SlackBuild b/source/xap/xpdf/xpdf.SlackBuild index 5acf7c06..b19b3aca 100755 --- a/source/xap/xpdf/xpdf.SlackBuild +++ b/source/xap/xpdf/xpdf.SlackBuild @@ -1,6 +1,6 @@ #!/bin/sh -# Copyright 2008, 2009, 2010 Patrick J. Volkerding, Sebeka, MN, USA +# Copyright 2008, 2009, 2010, 2011 Patrick J. Volkerding, Sebeka, MN, USA # All rights reserved. # # Redistribution and use of this script, with or without modification, is @@ -22,8 +22,8 @@ VERSION=3.02 -PATCHLEVEL=pl4 -BUILD=${BUILD:-2} +PATCHLEVEL=pl6 +BUILD=${BUILD:-3} NUMJOBS=${NUMJOBS:-" -j7 "} @@ -75,6 +75,7 @@ cat $CWD/patches/xpdf-3.02pl1.patch | patch -p1 --verbose || exit 1 cat $CWD/patches/xpdf-3.02pl2.patch | patch -p1 --verbose || exit 1 cat $CWD/patches/xpdf-3.02pl3.patch | patch -p1 --verbose || exit 1 cat $CWD/patches/xpdf-3.02pl4.patch | patch -p1 --verbose || exit 1 +cat $CWD/patches/xpdf-3.02pl5.patch | patch -p1 --verbose || exit 1 zcat $CWD/patches/xpdf_3.02-1.3.diff.gz | patch -p1 --verbose || exit 1 zcat $CWD/patches/xpdfrc.diff.gz | patch -p1 --verbose || exit 1 @@ -87,6 +88,7 @@ CXXFLAGS="$SLKCFLAGS" \ --sysconfdir=/etc \ --with-gzip \ --with-freetype2-includes=/usr/include/freetype2 \ + --without-t1-library \ --build=$ARCH-slackware-linux make $NUMJOBS || make || exit 1 diff --git a/source/xap/xsane/xsane.SlackBuild b/source/xap/xsane/xsane.SlackBuild index 444700c5..1b711715 100755 --- a/source/xap/xsane/xsane.SlackBuild +++ b/source/xap/xsane/xsane.SlackBuild @@ -1,6 +1,6 @@ #!/bin/sh -# Copyright 2008, 2009 Patrick J. Volkerding, Sebeka, MN, USA +# Copyright 2008, 2009, 2011 Patrick J. Volkerding, Sebeka, MN, USA # All rights reserved. # # Redistribution and use of this script, with or without modification, is @@ -21,8 +21,8 @@ # ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -VERSION=0.996 -BUILD=${BUILD:-2} +VERSION=0.998 +BUILD=${BUILD:-1} # Automatically determine the architecture we're building on: if [ -z "$ARCH" ]; then @@ -54,7 +54,7 @@ rm -rf $PKG mkdir -p $TMP $PKG cd $TMP rm -rf xsane-$VERSION -tar xvf $CWD/xsane-$VERSION.tar.bz2 || exit 1 +tar xvf $CWD/xsane-$VERSION.tar.?z* || exit 1 cd xsane-$VERSION || exit 1 chown -R root:root . find . \ diff --git a/source/xap/xscreensaver/xscreensaver.SlackBuild b/source/xap/xscreensaver/xscreensaver.SlackBuild index 6d01ced0..57943911 100755 --- a/source/xap/xscreensaver/xscreensaver.SlackBuild +++ b/source/xap/xscreensaver/xscreensaver.SlackBuild @@ -77,7 +77,6 @@ find . \ -exec chmod 644 {} \; xml_config=/usr/bin/xml-config xml2_config=/usr/bin/xml2-config \ - CFLAGS="$SLKCFLAGS" \ CXXFLAGS="$SLKCFLAGS" \ ./configure \ diff --git a/source/xap/xxgdb/xxgdb-1.08-glibc.patch b/source/xap/xxgdb/xxgdb-1.08-glibc.patch new file mode 100644 index 00000000..6ec7032c --- /dev/null +++ b/source/xap/xxgdb/xxgdb-1.08-glibc.patch @@ -0,0 +1,10 @@ +--- xxgdb/calldbx.c.ewt Thu Aug 29 15:39:07 1996 ++++ xxgdb/calldbx.c Thu Aug 29 15:39:31 1996 +@@ -76,6 +76,7 @@ + #include "global.h" + #if !(defined(OLDSUNOS) || defined(BSD)) + #include <termio.h> ++#include <sys/ioctl.h> + #else + #include <sgtty.h> + #endif diff --git a/source/xap/xxgdb/xxgdb-1.12-debian-filemenu.patch b/source/xap/xxgdb/xxgdb-1.12-debian-filemenu.patch new file mode 100644 index 00000000..c8595731 --- /dev/null +++ b/source/xap/xxgdb/xxgdb-1.12-debian-filemenu.patch @@ -0,0 +1,10 @@ +--- xxgdb-1.12/filemenu.c.build 2009-03-29 12:26:26.000000000 +0200 ++++ xxgdb-1.12/filemenu.c 2009-03-29 12:26:26.000000000 +0200 +@@ -83,6 +83,7 @@ + + #ifdef SYSV + #include <stdio.h> ++#include <stdlib.h> + #include <sys/param.h> + #include <sys/types.h> + #include <dirent.h> diff --git a/source/xap/xxgdb/xxgdb-1.12-debian-pty.patch b/source/xap/xxgdb/xxgdb-1.12-debian-pty.patch new file mode 100644 index 00000000..7a56971f --- /dev/null +++ b/source/xap/xxgdb/xxgdb-1.12-debian-pty.patch @@ -0,0 +1,76 @@ +diff -urNad xxgdb-1.12~/calldbx.c xxgdb-1.12/calldbx.c +--- xxgdb-1.12~/calldbx.c 1996-10-02 10:59:45.000000000 +0200 ++++ xxgdb-1.12/calldbx.c 2008-05-16 17:44:05.000000000 +0200 +@@ -85,8 +85,10 @@ + #include <sys/un.h> + #endif /* CREATE_IO_WINDOW */ + +-#ifdef SVR4 ++#if defined(SVR4) || defined(UNIX98) + #define MASTER_CLONE "/dev/ptmx" ++#endif ++#ifdef SVR4 + #include <sys/types.h> + #include <sys/stat.h> + #include <sys/stropts.h> +@@ -125,13 +127,14 @@ + { + int master; + +-#ifdef SVR4 /* (MJH) Use STREAMS */ ++#if defined(SVR4) || defined(UNIX98) + + if((master = open(MASTER_CLONE, O_RDWR)) < 0) + perror(MASTER_CLONE); + else + return master; +-#else ++#endif ++#if !defined(SVR4) && !defined(UNIX98) + int i; + char c; + +@@ -150,7 +153,7 @@ + #ifndef sco + } + #endif +-#endif /* SVR4 */ ++#endif /* !defined(SVR4) && !defined(UNIX98) */ + + #ifdef GDB + fprintf(stderr, "xxgdb: all ptys in use\n"); +@@ -166,6 +169,25 @@ + { + int slave; + ++#if defined(UNIX98) ++ ++ int n; ++ int zero=0; ++ char ptsname[16]; ++ ++ if (ioctl(master, TIOCGPTN, &n) < 0) ++ exit(2); ++ snprintf(ptsname,sizeof(ptsname),"/dev/pts/%i", n); ++ if (ioctl(master, TIOCSPTLCK, &zero) < 0) ++ exit(3); ++ if ((slave = open(ptsname, O_RDWR)) < 0) { ++ perror(ptsname); ++ exit(4); ++ } ++ return slave; ++ ++#else ++ + #ifdef SVR4 /* (MJH) */ + char *slave_name = "unknown"; + extern char *ptsname(int master); +@@ -193,6 +215,8 @@ + } + return slave; + #endif /* SVR4 */ ++ ++#endif /* UNIX98 */ + } + + #ifdef CREATE_IO_WINDOW diff --git a/source/xap/xxgdb/xxgdb-1.12-mandriva.patch b/source/xap/xxgdb/xxgdb-1.12-mandriva.patch new file mode 100644 index 00000000..3d384f32 --- /dev/null +++ b/source/xap/xxgdb/xxgdb-1.12-mandriva.patch @@ -0,0 +1,993 @@ +diff -p -up xxgdb-1.12/command.c.orig xxgdb-1.12/command.c +--- xxgdb-1.12/command.c.orig 2010-05-06 21:43:37.932032547 -0300 ++++ xxgdb-1.12/command.c 2010-05-06 21:43:56.618036569 -0300 +@@ -74,7 +74,7 @@ + * + * forwardSearch() : forward string search + * reverseSearch() : reverse string search +- * Search() : call either forwardSearch() or reverseSearch() ++ * search() : call either forwardSearch() or reverseSearch() + * PopupSearch() : command callback for search button + * DoneSearch() : command callback for DONE button in search panel + * CreateSearchPopup() : create search panel +@@ -657,10 +657,8 @@ void PopupSearch(w, client_data, call_da + * If no text has been entered, the contents of the cut buffer are used + * for searching. + */ +-static void Search(w, direction, call_data) +- Widget w; +- XtPointer direction; +- XtPointer call_data; ++static void ++search(Widget w, XtPointer direction, XtPointer call_data) + { + XawTextBlock textblock; + XawTextPosition pos, left, right; +@@ -716,7 +714,7 @@ static void Activate(w, event, params, n + String *params; + Cardinal *num_params; + { +- Search(w, (XtPointer)FORWARD, NULL); ++ search(w, (XtPointer)FORWARD, NULL); + DoneSearch(w, (XtPointer)searchPopupShell, NULL); + } + +@@ -747,8 +745,8 @@ static void CreateSearchPopup() + searchPopup = XtCreateManagedWidget("searchPopup", dialogWidgetClass, + searchPopupShell, args, n); + +- AddButton(searchPopup, "<<", Search, (XtPointer) REVERSE); +- AddButton(searchPopup, ">>", Search, (XtPointer) FORWARD); ++ AddButton(searchPopup, "<<", search, (XtPointer) REVERSE); ++ AddButton(searchPopup, ">>", search, (XtPointer) FORWARD); + AddButton(searchPopup, "DONE", DoneSearch, (XtPointer)searchPopupShell); + + dialogValue = XtNameToWidget(searchPopup, "value"); +diff -p -up xxgdb-1.12/dialog.c.orig xxgdb-1.12/dialog.c +--- xxgdb-1.12/dialog.c.orig 2010-05-06 21:43:37.934032296 -0300 ++++ xxgdb-1.12/dialog.c 2010-05-06 21:44:28.258027728 -0300 +@@ -86,6 +86,12 @@ Boolean FalseSignal = FALSE; /* set to + static char DialogText[DIALOGSIZE]; /* text buffer for widget */ + static XawTextPosition StartPos; /* starting position of input text */ + ++static XawTextEditType ++BeginDelete(Widget w); ++ ++static void ++EndDelete(Widget w, XawTextEditType type); ++ + + /* This procedure prevents the user from deleting past the prompt, or + * any text appended by AppendDialogText() to the dialog window. +@@ -94,11 +100,8 @@ static XawTextPosition StartPos; + * character() can only delete the space character. + */ + /* ARGSUSED */ +-static void InsertSpace(w, event, params, num_params) +- Widget w; +- XEvent *event; +- String *params; +- Cardinal *num_params; ++void ++InsertSpace(Widget w, XEvent *event, String *params, Cardinal *num_params) + { + XawTextBlock textblock; + XawTextPosition lastPos; +@@ -115,16 +118,70 @@ static void InsertSpace(w, event, params + } + } + ++static XawTextEditType ++BeginDelete(Widget w) ++{ ++ Widget src; ++ XawTextEditType type; ++ Arg args[1]; ++ ++ src = XawTextGetSource(w); ++ XtSetArg(args[0], XtNeditType, &type); ++ XtGetValues(src, args, 1); ++ if (type != XawtextEdit) { ++ XtSetArg(args[0], XtNeditType, XawtextEdit); ++ XtSetValues(src, args, 1); ++ } ++ ++ return (type); ++} ++ ++static void ++EndDelete(Widget w, XawTextEditType type) ++{ ++ Widget src; ++ Arg args[1]; ++ ++ if (type != XawtextEdit) { ++ src = XawTextGetSource(w); ++ XtSetArg(args[0], XtNeditType, type); ++ XtSetValues(src, args, 1); ++ } ++} ++ ++/* ++ * Previous logic of calling actions: ++ * InsertSpace() delete-previous-char() ++ * is not going to work because it must create a text in append only ++ * mode, so, hack it here to actually delete a character... ++ */ ++void ++DeleteChar(Widget w, XEvent *event, String *params, Cardinal *num_params) ++{ ++ XawTextEditType type; ++ XawTextBlock block; ++ XawTextPosition point; ++ ++ if (StartPos < (point = XawTextGetInsertionPoint(w))) { ++ type = BeginDelete(w); ++ block.firstPos = 0; ++ block.length = 0; ++ block.ptr = ""; ++ block.format = 8; ++ XawTextReplace(w, point - 1, point, &block); ++ XawTextSetInsertionPoint(w, point - 1); ++ EndDelete(w, type); ++ } ++} ++ + /* Erases the preceding word. + * Simulates the action of the WERASE character (ctrl-W). + */ + /* ARGSUSED */ +-void DeleteWord(w, event, params, num_params) +- Widget w; +- XEvent *event; +- String *params; +- Cardinal *num_params; ++void ++DeleteWord(Widget w, XEvent *event, String *params, Cardinal *num_params) + { ++ XawTextEditType type; + XawTextBlock textblock; + XawTextPosition pos; + Cardinal i; +@@ -138,8 +195,10 @@ void DeleteWord(w, event, params, num_pa + pos = TextGetLastPos(w); + for (i=pos; i > StartPos && DialogText[i-1] == ' '; i--); + for (; i > StartPos && DialogText[i-1] != ' '; i--); ++ type = BeginDelete(w); + XawTextReplace(w, i, pos, &textblock); + XawTextSetInsertionPoint(w, i); ++ EndDelete(w, type); + } + + +@@ -147,12 +206,10 @@ void DeleteWord(w, event, params, num_pa + * simulates the action of the KILL character (ctrl-U). + */ + /* ARGSUSED */ +-void DeleteLine(w, event, params, num_params) +- Widget w; +- XEvent *event; +- String *params; +- Cardinal *num_params; ++void ++DeleteLine(Widget w, XEvent *event, String *params, Cardinal *num_params) + { ++ XawTextEditType type; + XawTextBlock textblock; + XawTextPosition pos, beginPos; + Cardinal i; +@@ -172,8 +229,10 @@ void DeleteLine(w, event, params, num_pa + return; + } + for (i=pos; i > beginPos && s[i-1] != '\n'; i--); ++ type = BeginDelete(w); + XawTextReplace(w, i, pos, &textblock); + XawTextSetInsertionPoint(w, i); ++ EndDelete(w, type); + } + + +@@ -183,11 +242,8 @@ void DeleteLine(w, event, params, num_pa + * it is stored in the global variable, Command. + */ + /* ARGSUSED */ +-static void Dispatch(w, event, params, num_params) +- Widget w; +- XEvent *event; +- String *params; +- Cardinal *num_params; ++void ++Dispatch(Widget w, XEvent *event, String *params, Cardinal *num_params) + { + #ifdef GDB + /* +@@ -249,22 +305,16 @@ void signal_interrupt_dbx() + * Simulates the action of the INTR character (ctrl-C). + */ + /* ARGSUSED */ +-static void SigInt(w, event, params, num_params) +- Widget w; +- XEvent *event; +- String *params; +- Cardinal *num_params; ++void ++SigInt(Widget w, XEvent *event, String *params, Cardinal *num_params) + { + signal_interrupt_dbx (); + } + + /* Sends an EOF signal to dbx. (ctrl-D) */ + /* ARGSUSED */ +-static void SigEof(w, event, params, num_params) +- Widget w; +- XEvent *event; +- String *params; +- Cardinal *num_params; ++void ++SigEof(Widget w, XEvent *event, String *params, Cardinal *num_params) + { + write_dbx("\04"); + } +@@ -274,11 +324,8 @@ static void SigEof(w, event, params, num + * Simulates the action of the QUIT character (ctrl-\) + */ + /* ARGSUSED */ +-static void SigQuit(w, event, params, num_params) +- Widget w; +- XEvent *event; +- String *params; +- Cardinal *num_params; ++void ++SigQuit(Widget w, XEvent *event, String *params, Cardinal *num_params) + { + FalseSignal = TRUE; + +@@ -301,29 +348,8 @@ Widget parent; + Arg args[MAXARGS]; + Cardinal n; + +- static XtActionsRec dialog_actions[] = { +- {"SigInt", (XtActionProc) SigInt}, +- {"SigEof", (XtActionProc) SigEof}, +- {"SigQuit", (XtActionProc) SigQuit}, +- {"InsertSpace", (XtActionProc) InsertSpace}, +- {"Dispatch", (XtActionProc) Dispatch}, +- {NULL, NULL} +- }; +- +- static String translations = "#override\n\ +- Ctrl<Key>C: SigInt()\n\ +- Ctrl<Key>D: SigEof()\n\ +- Ctrl<Key>|: SigQuit()\n\ +- Ctrl<Key>W: DeleteWord()\n\ +- Ctrl<Key>U: DeleteLine()\n\ +- Ctrl<Key>H: InsertSpace() delete-previous-character()\n\ +- <Key>Delete: InsertSpace() delete-previous-character()\n\ +- <Key>BackSpace: InsertSpace() delete-previous-character()\n\ +- <Key>Return: newline() Dispatch()\n\ +- "; +- + n = 0; +- XtSetArg(args[n], XtNuseStringInPlace, True); n++; ++ XtSetArg(args[n], XtNuseStringInPlace, True); n++; + XtSetArg(args[n], XtNstring, (XtArgVal) DialogText); n++; + XtSetArg(args[n], XtNlength, (XtArgVal) DIALOGSIZE); n++; + XtSetArg(args[n], XtNeditType, (XtArgVal) XawtextAppend); n++; +@@ -331,8 +357,6 @@ Widget parent; + XtSetArg(args[n], XtNwrap, XawtextWrapWord); n++; + dialogWindow = XtCreateManagedWidget("dialogWindow", asciiTextWidgetClass, + parent, args, n ); +- XtOverrideTranslations(dialogWindow, XtParseTranslationTable(translations)); +- XtAppAddActions(app_context, dialog_actions, XtNumber(dialog_actions)); + } + + #if 0 /* never used */ +diff -p -up xxgdb-1.12/gdb_parser.c.orig xxgdb-1.12/gdb_parser.c +--- xxgdb-1.12/gdb_parser.c.orig 2010-05-06 21:43:37.936032292 -0300 ++++ xxgdb-1.12/gdb_parser.c 2010-05-06 21:44:36.001027757 -0300 +@@ -1053,7 +1053,6 @@ FILE *f; + if(errno == EAGAIN || errno == EWOULDBLOCK) { + break; + } +- perror("read from gdb"); + exit(1); + /*NOTREACHED*/ + } +diff -p -up xxgdb-1.12/global.h.orig xxgdb-1.12/global.h +--- xxgdb-1.12/global.h.orig 2010-05-06 21:43:37.938031470 -0300 ++++ xxgdb-1.12/global.h 2010-05-06 21:44:48.480028375 -0300 +@@ -111,10 +111,34 @@ extern void read_dbx(); /* get data f + extern void write_dbx(); /* send data to dbx */ + extern void query_dbx(); /* ask dbx for info */ + ++extern void ++PopupSearch(Widget w, XtPointer client_data, XtPointer call_data); ++ + /* dialog.c */ ++extern void ++DeleteChar(Widget w, XEvent *event, String *params, Cardinal *num_params); ++ ++extern void ++DeleteLine(Widget w, XEvent *event, String *params, Cardinal *num_params); ++ ++extern void ++DeleteWord(Widget w, XEvent *event, String *params, Cardinal *num_params); ++ ++extern void ++Dispatch(Widget w, XEvent *event, String *params, Cardinal *num_params); ++ ++extern void ++InsertSpace(Widget w, XEvent *event, String *params, Cardinal *num_params); ++ ++extern void ++SigInt(Widget w, XEvent *event, String *params, Cardinal *num_params); ++ ++extern void ++SigEof(Widget w, XEvent *event, String *params, Cardinal *num_params); ++ ++extern void ++SigQuit(Widget w, XEvent *event, String *params, Cardinal *num_params); + +-extern void DeleteLine(); /* delete line action proc */ +-extern void DeleteWord(); /* delete word action proc */ + extern void CreateDialogWindow(); + extern void AppendDialogText(); /* append text to buffer */ + +@@ -163,18 +187,53 @@ extern void UpdateUpdown(); /* update + extern void UpdateBomb(); /* update position of bomb */ + + /* source.c */ ++extern void ++CreateSourceWindow(Widget parent); ++ ++extern char * ++GetPathname(char *filename); ++ ++extern int ++LoadCurrentFile(void); ++ ++extern int ++LoadFile(char *filename); ++ ++extern void ++MakeDirList(char *output); ++ ++extern void ++NotifyResize(Widget w, XEvent *event, String *params, Cardinal *num_params); ++ ++extern void ++PrintSelection(Widget w, XEvent *event, String *params, Cardinal *num_params); ++ ++extern void ++Search(Widget w, XEvent *event, String *params, Cardinal *num_params); ++ ++extern void ++SelectEnd(Widget w, XEvent *event, String *params, Cardinal *num_params); ++ ++extern void ++SelectStart(Widget w, XEvent *event, String *params, Cardinal *num_params); ++ ++extern void ++SelectWord(Widget w, XEvent *event, String *params, Cardinal *num_params); ++ ++extern void ++source_init(void); ++ ++extern void ++Update(Widget w, XEvent *event, String *params, Cardinal *num_params); ++ ++#ifdef EDIT_BUTTON ++extern void ++EdAction(Widget w, XEvent *event, String *params, Cardinal *num_params); ++ ++extern void ++StartEditor(void); ++#endif + +-extern void SelectStart(); /* modified select-start */ +-extern void SelectEnd(); /* modified select-end */ +-extern void SelectWord(); /* my select word */ +-extern void PrintSelection(); /* select variable and print */ +-extern void Update(); /* update line label */ +-extern void source_init(); /* init routine */ +-extern void CreateSourceWindow(); +-extern int LoadFile(); /* display source file */ +-extern int LoadCurrentFile(); /* display source file */ +-extern char *GetPathname(); /* get full path name of file */ +-extern void MakeDirList(); /* maintain list of dirs */ + + /* utils.c */ + +diff -p -up xxgdb-1.12/source.c.orig xxgdb-1.12/source.c +--- xxgdb-1.12/source.c.orig 2010-05-06 21:43:37.940032123 -0300 ++++ xxgdb-1.12/source.c 2010-05-06 21:43:56.626028358 -0300 +@@ -106,7 +106,8 @@ static FileRec **fileTable; /* table of + static int fileTableSize; /* size of file table */ + static char *dirList[MAXDIRS]; /* list of dirs for searching files */ + +-void source_init() ++void ++source_init(void) + { + dirList[0] = NULL; + } +@@ -116,11 +117,8 @@ void source_init() + * line label. + */ + /* ARGSUSED */ +-void Update(w, event, params, num_params) +- Widget w; +- XEvent *event; +- String *params; +- Cardinal *num_params; ++extern void ++Update(Widget w, XEvent *event, String *params, Cardinal *num_params) + { + XawTextPosition pos; + int topline; +@@ -171,11 +169,8 @@ void Update(w, event, params, num_params + * Invoked by ConfigureNotify event. + */ + /* ARGSUSED */ +-static void NotifyResize(w, event, params, num_params) +- Widget w; +- XEvent *event; +- String *params; +- Cardinal *num_params; ++void ++NotifyResize(Widget w, XEvent *event, String *params, Cardinal *num_params) + { + XawTextPosition pos; + TextWidget ctx = (TextWidget) sourceWindow; +@@ -216,11 +211,8 @@ void UpdateLine(w, event, params, num_pa + * near the bottom of an Athena text widget window. + */ + /* ARGSUSED */ +-void SelectStart(w, event, params, num_params) +- Widget w; +- XEvent *event; +- String *params; +- Cardinal *num_params; ++void ++SelectStart(Widget w, XEvent *event, String *params, Cardinal *num_params) + { + XawTextPosition topPosition; + +@@ -241,11 +233,8 @@ void SelectStart(w, event, params, num_p + * selection and cut buffer 0. + */ + /* ARGSUSED */ +-void SelectEnd(w, event, params, num_params) +- Widget w; +- XEvent *event; +- String *params; +- Cardinal *num_params; ++extern void ++SelectEnd(Widget w, XEvent *event, String *params, Cardinal *num_params) + { + XawTextPosition begin, end, start; + Widget textsrc; +@@ -274,11 +263,8 @@ void SelectEnd(w, event, params, num_par + * It selects a word delimited by DELIMITERS, not whitespace. + */ + /* ARGSUSED */ +-void SelectWord(w, event, params, num_params) +- Widget w; +- XEvent *event; +- String *params; +- Cardinal *num_params; ++void ++SelectWord(Widget w, XEvent *event, String *params, Cardinal *num_params) + { + XawTextPosition pos, left, right, start; + XawTextBlock buffer; +@@ -328,11 +314,8 @@ void SelectWord(w, event, params, num_pa + + /* Print the value of the expression in cut buffer 0. */ + /* ARGSUSED */ +-void PrintSelection(w, event, params, num_params) +- Widget w; +- XEvent *event; +- String *params; +- Cardinal *num_params; ++void ++PrintSelection(Widget w, XEvent *event, String *params, Cardinal *num_params) + { + char command[LINESIZ]; + char *string; +@@ -351,24 +334,16 @@ void PrintSelection(w, event, params, nu + + #ifdef EDIT_BUTTON + /* allow invocation of favorite editor from within interface */ +-extern void StartEditor(); +-void EdAction(w, event, params, num_params) +- Widget w; +- XEvent *event; +- String *params; +- Cardinal *num_params; ++void ++EdAction(Widget w, XEvent *event, String *params, Cardinal *num_params) + { + StartEditor(); + } + #endif /* EDIT_BUTTON */ + + /* fixes keybindings in source window */ +-extern PopupSearch(); +-void Search(w, event, params, num_params) +- Widget w; +- XEvent *event; +- String *params; +- Cardinal *num_params; ++void ++Search(Widget w, XEvent *event, String *params, Cardinal *num_params) + { + PopupSearch(w, NULL, NULL); + } +@@ -383,134 +358,12 @@ void Search(w, event, params, num_params + have operative keys in the editor window for moving around (move stop + signs and such around too) */ + +-void CreateSourceWindow(parent) +-Widget parent; ++void ++CreateSourceWindow(Widget parent) + { +- TextWidget ctx; + Arg args[MAXARGS]; + Cardinal n; + +- static XtActionsRec sbar_actions[] = { +- {"NotifyResize", NotifyResize}, +- {"Update", Update}, +- {NULL, NULL} +- }; +- +- /* fixes keybindings in source window */ +- static XtActionsRec text_actions[] = { +- {"Update", Update}, +-#ifdef EDIT_BUTTON +- {"Editor", EdAction}, +-#endif +- {"Search", Search}, +- {NULL, NULL} +- }; +- +-#ifdef EDIT_BUTTON +- +- static String eTextTranslations = "#override \n\ +- Ctrl<Key>V: next-page() Update(warp) \n\ +- Meta<Key>V: previous-page() Update(warp) \n\ +- Ctrl<Key>N: next-line() Update() \n\ +- Ctrl<Key>P: previous-line() Update() \n\ +- Ctrl<Key>Z: scroll-one-line-up() Update(warp) \n\ +- Meta<Key>Z: scroll-one-line-down() Update(warp) \n\ +- Meta<Key>]: forward-paragraph() Update(warp) \n\ +- Meta<Key>[: backward-paragraph() Update(warp) \n\ +- Meta<Key>F: forward-word() Update() \n\ +- Meta<Key>B: backward-word() Update() \n\ +- Ctrl<Key>F: forward-character() Update() \n\ +- Ctrl<Key>B: backward-character() Update() \n\ +- Meta<Key>E: Editor() \n\ +- Meta<Key><: beginning-of-file() Update(warp) \n\ +- Meta<Key>>: end-of-file() Update(warp) \n\ +- <Key>L: redraw-display() Update() \n\ +- <Key>S: Search() Update() \n\ +- <Key>R: Search() Update() \n\ +- <Btn1Down>: SelectStart() SelectWord() \n\ +- Shift<Btn1Up>: Update() SelectEnd() PrintSelection() \n\ +- <Btn1Up>: Update() SelectEnd() \n\ +- "; +- +- static String vTextTranslations = "#override \n\ +- Ctrl<Key>F: next-page() Update(warp) \n\ +- Ctrl<Key>B: previous-page() Update(warp) \n\ +- Ctrl<Key>D: next-page() Update() \n\ +- Ctrl<Key>U: previous-page() Update() \n\ +- <Key>Return: next-line() Update() \n\ +- <Key>-: previous-line() Update() \n\ +- <Key>j: next-line() Update() \n\ +- <Key>k: previous-line() Update() \n\ +- <Key>space: forward-character() Update() \n\ +- <Key>BackSpace: backward-character() Update() \n\ +- <Key>1: beginning-of-file() Update(warp) \n\ +- <Key>G: end-of-file() Update(warp) \n\ +- <Key>E: Editor() \n\ +- <Key>L: redraw-display() Update() \n\ +- <Key>/: Search() Update() \n\ +- <Key>?: Search() Update() \n\ +- <Btn1Down>: SelectStart() SelectWord() \n\ +- Shift<Btn1Up>: Update() SelectEnd() PrintSelection() \n\ +- <Btn1Up>: Update() SelectEnd() \n\ +- "; +- +-#else /* not EDIT_BUTTON */ +- +- static String eTextTranslations = "#override \n\ +- Ctrl<Key>V: next-page() Update(warp) \n\ +- Meta<Key>V: previous-page() Update(warp) \n\ +- Ctrl<Key>N: next-line() Update() \n\ +- Ctrl<Key>P: previous-line() Update() \n\ +- Ctrl<Key>Z: scroll-one-line-up() Update(warp) \n\ +- Meta<Key>Z: scroll-one-line-down() Update(warp) \n\ +- Meta<Key>]: forward-paragraph() Update(warp) \n\ +- Meta<Key>[: backward-paragraph() Update(warp) \n\ +- Meta<Key>F: forward-word() Update() \n\ +- Meta<Key>B: backward-word() Update() \n\ +- Ctrl<Key>F: forward-character() Update() \n\ +- Ctrl<Key>B: backward-character() Update() \n\ +- Meta<Key><: beginning-of-file() Update(warp) \n\ +- Meta<Key>>: end-of-file() Update(warp) \n\ +- <Key>L: redraw-display() Update() \n\ +- <Key>S: Search() Update() \n\ +- <Key>R: Search() Update() \n\ +- <Btn1Down>: SelectStart() SelectWord() \n\ +- Shift<Btn1Up>: Update() SelectEnd() PrintSelection() \n\ +- <Btn1Up>: Update() SelectEnd() \n\ +- "; +- +- static String vTextTranslations = "#override \n\ +- Ctrl<Key>F: next-page() Update(warp) \n\ +- Ctrl<Key>B: previous-page() Update(warp) \n\ +- Ctrl<Key>D: next-page() Update() \n\ +- Ctrl<Key>U: previous-page() Update() \n\ +- <Key>Return: next-line() Update() \n\ +- <Key>-: previous-line() Update() \n\ +- <Key>j: next-line() Update() \n\ +- <Key>k: previous-line() Update() \n\ +- <Key>space: forward-character() Update() \n\ +- <Key>BackSpace: backward-character() Update() \n\ +- <Key>1: beginning-of-file() Update(warp) \n\ +- <Key>G: end-of-file() Update(warp) \n\ +- <Key>L: redraw-display() Update() \n\ +- <Key>/: Search() Update() \n\ +- <Key>?: Search() Update() \n\ +- <Btn1Down>: SelectStart() SelectWord() \n\ +- Shift<Btn1Up>: Update() SelectEnd() PrintSelection() \n\ +- <Btn1Up>: Update() SelectEnd() \n\ +- "; +- +-#endif /* EDIT_BUTTON */ +- +- /* fixes keybindings in source window */ +- static String sbarTranslations = "\ +- <Configure>: NotifyResize() \n\ +- <Btn2Down>: StartScroll(Continuous) MoveThumb() NotifyThumb() \ +- Update() \n\ +- <Btn2Motion>: MoveThumb() NotifyThumb() Update() \n\ +- <BtnUp>: NotifyScroll(Proportional) EndScroll() Update() \n\ +- "; +- + n = 0; + XtSetArg(args[n], XtNdefaultDistance, 0); n++; + sourceForm = XtCreateManagedWidget("sourceForm", formWidgetClass, +@@ -523,27 +376,6 @@ Widget parent; + XtSetArg(args[n], XtNscrollVertical, (XtArgVal) XawtextScrollAlways);n++; + sourceWindow = XtCreateManagedWidget("sourceWindow", asciiTextWidgetClass, + sourceForm, args, n); +- +- ctx = (TextWidget) sourceWindow; +- if (ctx->text.vbar) +- XtOverrideTranslations(ctx->text.vbar, +- XtParseTranslationTable(sbarTranslations)); +- XtAppAddActions(app_context, sbar_actions, XtNumber(sbar_actions)); +- +- /* fixes keybindings in source window */ +- XtAppAddActions(app_context, text_actions, XtNumber(text_actions)); +- if (app_resources.bindings && strcmp(app_resources.bindings, "vi") == 0) +- XtOverrideTranslations((Widget) ctx, XtParseTranslationTable(vTextTranslations)); +- else +- XtOverrideTranslations((Widget) ctx, XtParseTranslationTable(eTextTranslations)); +- +- /* setup tabulation */ +- if (app_resources.tabstop >= 0) { +- int tab, tabs[256]; +- for (n = 0, tab = 0; n < sizeof tabs / sizeof *tabs; n++) +- tabs[n] = (tab += app_resources.tabstop); +- XawTextSinkSetTabs(ctx->text.sink, sizeof tabs / sizeof *tabs, tabs); +- } + } + + +@@ -553,8 +385,8 @@ Widget parent; + * > Starting position of line #1 is 0, and is stored in linepos[1]. + * > Search for '\n' till end of buffer. + */ +-static void BuildLinePos(file) +-FileRec *file; ++static void ++BuildLinePos(FileRec *file) + { + char *p; + int line, nlines; +@@ -587,7 +419,8 @@ FileRec *file; + * there might be another path to the same files. + */ + +-static void CheckLookUpFileTable() ++static void ++CheckLookUpFileTable(void) + { + int i; + char * newfullname; +@@ -639,7 +472,8 @@ static void CheckLookUpFileTable() + * display if necessary. + * + */ +-void CleanUpFileTable () ++void ++CleanUpFileTable(void) + { + CheckLookUpFileTable(); + if (displayedFile == NULL) +@@ -651,9 +485,8 @@ void CleanUpFileTable () + * If not found, create an entry and initialize proper fields, + * else, return pointer to entry found. + */ +-static int LookUpFileTable(pathname, filename, file) +-char *pathname, *filename; +-FileRec **file; ++static int ++LookUpFileTable(char *pathname, char *filename, FileRec **file) + { + struct stat fileinfo; + int fd; +@@ -754,7 +587,8 @@ FileRec **file; + /* + * Remember file position and current line before closing. + */ +-static void SaveDisplayedFileInfo() ++static void ++SaveDisplayedFileInfo(void) + { + XawTextPosition pos; + +@@ -771,8 +605,8 @@ static void SaveDisplayedFileInfo() + * must recalculate bottomline because the window size might be + * different. + */ +-static void DisplayFile(file) +-FileRec *file; ++static void ++DisplayFile(FileRec *file) + { + Arg args[MAXARGS]; + Cardinal n; +@@ -792,8 +626,8 @@ FileRec *file; + * the home directory of that user, or to the login home directory if user + * is not specified. + */ +-static char *expand(filename) +-char *filename; ++static char * ++expand(char *filename) + { + struct passwd *pwd; + char *string, *name, newfile[MAXNAME]; +@@ -821,8 +655,8 @@ char *filename; + * + * With fix from Dave Gagne (daveg@fs1.ee.ubc.ca) 7/30/90 + */ +-void MakeDirList(output) +-char *output; ++void ++MakeDirList(char *output) + { + /* fix bug where if text of a directories command is > 1k, crashes. Now works to 4k */ + char *s, list[LINESIZ], command[LINESIZ]; +@@ -889,8 +723,8 @@ char *output; + /* Returns the full pathname of a given file. + * It searches for the file from a list of directories. + */ +-char *GetPathname(filename) +-char *filename; ++char * ++GetPathname(char *filename) + { + char pathname[LINESIZ]; + int i; +@@ -949,8 +783,8 @@ char *filename; + * 5. update the file label and the various signs on the source window. + * LoadFile returns 0 upon successful completion, -1 otherwise. + */ +-int LoadFile(filename) +-char *filename; ++int ++LoadFile(char *filename) + { + FileRec *file; + char *pathname; +@@ -980,7 +814,8 @@ char *filename; + } + } + +-int LoadCurrentFile() ++int ++LoadCurrentFile(void) + { + #ifdef GDB + query_gdb ("info line\n", PARSE_ON | ECHO_OFF | FILTER_OFF); +@@ -991,10 +826,11 @@ int LoadCurrentFile() + } + + #ifdef EDIT_BUTTON +-/* simply add editor button that calls $XXGDBWINEDIT, $WINEDIT, xxgdbedit in that order */ ++/* simply add editor button that calls $EDITOR and xedit in that order */ + /* allow invocation of fav. editor from within interface */ + /* button and the EdAction action procedure for the source window */ +-void StartEditor () ++void ++StartEditor(void) + { + XawTextPosition pos; + char* editor; +@@ -1002,11 +838,9 @@ void StartEditor () + int result; + + if (displayedFile == NULL) return; +- editor = (char *) getenv("XXGDBWINEDIT"); +- if (editor == NULL) +- editor = (char *) getenv("WINEDIT"); ++ editor = (char *) getenv("EDITOR"); + if (editor == NULL) +- editor = "xxgdbedit"; ++ editor = "xedit"; + pos = XawTextGetInsertionPoint(sourceWindow); + displayedFile->currentline = TextPositionToLine(pos); + sprintf(string, "nohup %s +%d %s&\n", +@@ -1043,8 +877,7 @@ void StartEditor () + * + */ + char * +-GetSourcePathname (filename) +-char *filename; ++GetSourcePathname(char *filename) + { + char *srcpath; + char curr_src [MAXPATHLEN]; +diff -p -up xxgdb-1.12/XDbx.ad.orig xxgdb-1.12/XDbx.ad +--- xxgdb-1.12/XDbx.ad.orig 2010-05-06 21:43:37.942032512 -0300 ++++ xxgdb-1.12/XDbx.ad 2010-05-06 21:43:56.626028358 -0300 +@@ -19,31 +19,41 @@ + *sourceForm.preferredPaneSize: 320 + *sourceWindow.leftMargin: 35 + *sourceWindow.scrollHorizontal: whenNeeded +-*sourceWindow.translations: #override \n\ +- <Btn1Down>: SelectStart() SelectWord() \n\ +- Shift<Btn1Up>: Update(warp) SelectEnd() PrintSelection() \n\ +- <Btn1Up>: Update(warp) SelectEnd() \n\ +- <Key>Down: next-line() Update()\n\ +- <Key>Up: previous-line() Update() \n\ +- Ctrl<Key>L: redraw-display() Update() \n\ +- Ctrl<Key>N: next-line() Update() \n\ +- Ctrl<Key>P: previous-line() Update() \n\ +- Ctrl<Key>V: next-page() Update() \n\ +- Ctrl<Key>Z: scroll-one-line-up() Update() \n\ +- Meta<Key>V: previous-page() Update() \n\ +- Meta<Key>Z: scroll-one-line-down() Update() \n\ +- :Meta<Key>\>: end-of-file() Update() \n\ +- :Meta<Key>]: forward-paragraph() Update() \n\ +- :Meta<Key>[: backward-paragraph() Update() ++*sourceWindow.translations: #override \ ++ <Btn1Down>: set-keyboard-focus() SelectStart() SelectWord()\n\ ++ Shift<Btn1Up>: Update(warp) SelectEnd() PrintSelection()\n\ ++ <Btn1Up>: Update(warp) SelectEnd()\n\ ++ <Key>Down: next-line() Update()\n\ ++ <Key>Up: previous-line() Update()\n\ ++ Ctrl<Key>L: redraw-display() Update()\n\ ++ Ctrl<Key>N: next-line() Update()\n\ ++ Ctrl<Key>P: previous-line() Update()\n\ ++ Ctrl<Key>V: next-page() Update()\n\ ++ Ctrl<Key>Z: scroll-one-line-up() Update()\n\ ++ Meta<Key>V: previous-page() Update()\n\ ++ Meta<Key>Z: scroll-one-line-down() Update()\n\ ++ :Meta<Key>\>: end-of-file() Update()\n\ ++ :Meta<Key>]: forward-paragraph() Update()\n\ ++ :Meta<Key>[: backward-paragraph() Update() + *messageWindow*font: variable + *messageWindow.min: 30 + *messageWindow.max: 30 + *dialogWindow.preferredPaneSize: 200 + *dialogWindow.resizeToPreferred: True +-*dialogWindow.translations: #override \n\ +- <Btn1Down>: SelectStart() SelectWord() \n\ +- Shift<Btn1Up>: SelectEnd() PrintSelection() \n\ +- <Btn1Up>: SelectEnd() \n ++*dialogWindow.translations: #override \ ++ <Btn1Down>: set-keyboard-focus() SelectStart() SelectWord()\n\ ++ Shift<Btn1Up>: SelectEnd() PrintSelection()\n\ ++ <Btn1Up>: SelectEnd()\n\ ++ Ctrl<Key>C: SigInt()\n\ ++ Ctrl<Key>D: SigEof()\n\ ++ Ctrl<Key>|: SigQuit()\n\ ++ <Key>Tab: no-op(r)\n\ ++ Ctrl<Key>W: DeleteWord()\n\ ++ Ctrl<Key>U: DeleteLine()\n\ ++ Ctrl<Key>H: DeleteChar()\n\ ++ <Key>Delete: DeleteChar()\n\ ++ <Key>BackSpace: DeleteChar()\n\ ++ <Key>Return: newline() Dispatch() + *commandWindow.preferredPaneSize: 135 + *commandWindow.skipAdjust: True + !*commandWindow.hSpace: 14 +@@ -55,8 +65,8 @@ + *displayWindow.skipAdjust: True + *displayWindow.scrollVertical: whenNeeded + *displayWindow.scrollHorizontal: whenNeeded +-*displayWindow.translations: #override \n\ +- <Btn1Down>: SelectStart() SelectWord() \n\ +- Shift<Btn1Up>: SelectEnd() PrintSelection() \n\ +- <Btn1Up>: SelectEnd() \n ++*displayWindow.translations: #override \ ++ <Btn1Down>: set-keyboard-focus() SelectStart() SelectWord()\n\ ++ Shift<Btn1Up>: SelectEnd() PrintSelection()\n\ ++ <Btn1Up>: SelectEnd() + *popup*showGrip: False +diff -p -up xxgdb-1.12/xdbx.c.orig xxgdb-1.12/xdbx.c +--- xxgdb-1.12/xdbx.c.orig 2010-05-06 21:43:37.944031595 -0300 ++++ xxgdb-1.12/xdbx.c 2010-05-06 21:43:56.628036652 -0300 +@@ -191,19 +191,11 @@ String fallback_resources[] = { + #endif + "*sourceWindow.leftMargin: 35", + "*sourceWindow.scrollHorizontal: whenNeeded", +- "*sourceWindow.translations: #override \\n\ +- <Btn1Down>: SelectStart() SelectWord() \\n\ +- Shift<Btn1Up>: Update() SelectEnd() PrintSelection() \\n\ +- <Btn1Up>: Update() SelectEnd() \\n", + "*messageWindow*font: variable", + "*messageWindow.min: 30", + "*messageWindow.max: 30", + "*dialogWindow.preferredPaneSize: 240", + "*dialogWindow.resizeToPreferred: True", +- "*dialogWindow.translations: #override \\n\ +- <Btn1Down>: SelectStart() SelectWord() \\n\ +- Shift<Btn1Up>: SelectEnd() PrintSelection() \\n\ +- <Btn1Up>: SelectEnd() \\n", + #ifdef NEW_INTERFACE + "*commandShell.geometry: 190x370+590+0", + #else +@@ -229,10 +221,6 @@ String fallback_resources[] = { + #endif + "*displayWindow.scrollVertical: whenNeeded", + "*displayWindow.scrollHorizontal: whenNeeded", +- "*displayWindow.translations: #override \\n\ +- <Btn1Down>: SelectStart() SelectWord() \\n\ +- Shift<Btn1Up>: SelectEnd() PrintSelection() \\n\ +- <Btn1Up>: SelectEnd() \\n", + "*popup*showGrip: False", + "*bindings: emacs", + NULL, +@@ -271,14 +259,25 @@ static XrmOptionDescRec options[] = { + }; + + XtActionsRec xdbx_actions[] = { +- {"SelectStart", (XtActionProc) SelectStart}, +- {"SelectEnd", (XtActionProc) SelectEnd}, +- {"SelectWord", (XtActionProc) SelectWord}, +- {"PrintSelection", (XtActionProc) PrintSelection}, +- {"Update", (XtActionProc) Update}, +- {"DeleteWord", (XtActionProc) DeleteWord}, +- {"DeleteLine", (XtActionProc) DeleteLine}, +- {NULL, NULL} ++#ifdef EDIT_BUTTON ++ {"Editor", EdAction}, ++#endif ++ {"DeleteChar", DeleteChar}, ++ {"DeleteLine", DeleteLine}, ++ {"DeleteWord", DeleteWord}, ++ {"Dispatch", Dispatch}, ++ {"InsertSpace", InsertSpace}, ++ {"NotifyResize", NotifyResize}, ++ {"PrintSelection", PrintSelection}, ++ {"Search", Search}, ++ {"SelectEnd", SelectEnd}, ++ {"SelectStart", SelectStart}, ++ {"SelectWord", SelectWord}, ++ {"SigEof", SigEof}, ++ {"SigInt", SigInt}, ++ {"SigQuit", SigQuit}, ++ {"Update", Update}, ++ {NULL, NULL} + }; + + static void Syntax(call) diff --git a/source/xap/xxgdb/xxgdb-1.12-sysv.patch b/source/xap/xxgdb/xxgdb-1.12-sysv.patch new file mode 100644 index 00000000..e8b14b78 --- /dev/null +++ b/source/xap/xxgdb/xxgdb-1.12-sysv.patch @@ -0,0 +1,24 @@ +--- xxgdb-1.12/source.c~ Fri Apr 21 12:16:02 1995 ++++ xxgdb-1.12/source.c Mon Dec 2 17:42:39 1996 +@@ -79,7 +79,7 @@ + #endif + #include <stdlib.h> + +-#include <X11/Xos.h> ++/* #include <X11/Xos.h> */ + #include <sys/stat.h> + #include <pwd.h> + #include "global.h" +--- xxgdb-1.12/global.h~ Thu Apr 6 12:23:42 1995 ++++ xxgdb-1.12/global.h Mon Dec 2 17:38:21 1996 +@@ -62,8 +62,9 @@ + * + * Contain extern declarations of variables and functions. + */ +- ++#undef SYSV + #include "defs.h" ++#define SYSV + + + #if defined(__GNUC__) && !defined(alloca) diff --git a/source/xap/xxgdb/xxgdb.SlackBuild b/source/xap/xxgdb/xxgdb.SlackBuild index 97c130f6..a1453e05 100755 --- a/source/xap/xxgdb/xxgdb.SlackBuild +++ b/source/xap/xxgdb/xxgdb.SlackBuild @@ -1,6 +1,6 @@ #!/bin/sh -# Copyright 2008, 2009 Patrick J. Volkerding, Sebeka, MN, USA +# Copyright 2008, 2009-2011 Patrick J. Volkerding, Sebeka, MN, USA # All rights reserved. # # Redistribution and use of this script, with or without modification, is @@ -19,11 +19,11 @@ # WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR # OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF # ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +# PKGNAM=xxgdb VERSION=${VERSION:-1.12} -ARCH=${ARCH:-x86_64} -BUILD=${BUILD:-2} +BUILD=${BUILD:-3} CWD=$(pwd) TMP=${TMP:-/tmp} @@ -31,6 +31,17 @@ PKG=$TMP/package-${PKGNAM} rm -rf $PKG mkdir -p $TMP $PKG +# Automatically determine the architecture we're building on: +if [ -z "$ARCH" ]; then + case "$( uname -m )" in + i?86) export ARCH=i486 ;; + arm*) export ARCH=arm ;; + # Unless $ARCH is already set, use uname -m for all other archs: + *) export ARCH=$( uname -m ) ;; + esac +fi + +# Set compile flags: if [ "$ARCH" = "i486" ]; then SLKCFLAGS="-march=i486 -mtune=i686" elif [ "$ARCH" = "s390" ]; then @@ -39,12 +50,18 @@ elif [ "$ARCH" = "x86_64" ]; then SLKCFLAGS="-O2 -fPIC" fi +# Extract source: cd $TMP rm -rf ${PKGNAM}-${VERSION} -tar xvf $CWD/${PKGNAM}-$VERSION.tar.gz || exit 1 +tar xvf $CWD/${PKGNAM}-$VERSION.tar.xz || exit 1 cd ${PKGNAM}-$VERSION || exit 1 -zcat $CWD/xxgdb.fix_glibc_and_gcc.diff.gz | patch -p1 --verbose --backup --suffix=.orig +# Apply patches: +# The patches were taken from Mandriva's SRPM and address build issues +# and run-time issues on x86_64. +for pf in $CWD/*patch.xz ; do + { xz -dc $pf | patch -p1 ;} || exit 1 +done # Make sure ownerships and permissions are sane: chown -R root:root . @@ -89,7 +106,7 @@ fi # Add a documentation directory: mkdir -p ${PKG}/usr/doc/${PKGNAM}-$VERSION cp -a \ - README README.NEW_INTERFACE XDBX_README XDbx.NEW_INTERFACE XXGDB_README \ + *README* XDbx.NEW_INTERFACE \ $PKG/usr/doc/${PKGNAM}-$VERSION mkdir -p $PKG/install diff --git a/source/xap/xxgdb/xxgdb.fix_glibc_and_gcc.diff b/source/xap/xxgdb/xxgdb.fix_glibc_and_gcc.diff deleted file mode 100644 index b61d57ce..00000000 --- a/source/xap/xxgdb/xxgdb.fix_glibc_and_gcc.diff +++ /dev/null @@ -1,45 +0,0 @@ -diff -Naur xxgdb-1.12/Imakefile xxgdb-1.12.fixed/Imakefile ---- xxgdb-1.12/Imakefile 1995-06-19 19:20:55.000000000 -0300 -+++ xxgdb-1.12.fixed/Imakefile 2007-02-21 10:40:57.000000000 -0200 -@@ -59,7 +59,7 @@ - #endif - - #ifdef LinuxArchitecture --DEFINES = -DSYSV $(DEFGDB) -+DEFINES = $(DEFGDB) - #endif - - #if defined(NeXTArchitecture) || defined(NextArchitecture) -diff -Naur xxgdb-1.12/filemenu.c xxgdb-1.12.fixed/filemenu.c ---- xxgdb-1.12/filemenu.c 1994-08-29 16:38:28.000000000 -0300 -+++ xxgdb-1.12.fixed/filemenu.c 2007-02-21 10:47:47.000000000 -0200 -@@ -207,12 +207,12 @@ - return False; - if (statbuf.st_mode & S_IFDIR) { /* is directory */ - strcat(entry->d_name, "/"); -- ++(entry->d_namlen); -+ ++(entry->d_reclen); - return True; - } - if (statbuf.st_mode & S_IEXEC) { /* is executable */ - strcat(entry->d_name, "*"); -- ++(entry->d_namlen); -+ ++(entry->d_reclen); - return True; - } - return True; -diff -Naur xxgdb-1.12/gdb_handler.c xxgdb-1.12.fixed/gdb_handler.c ---- xxgdb-1.12/gdb_handler.c 1995-04-19 13:46:22.000000000 -0300 -+++ xxgdb-1.12.fixed/gdb_handler.c 2007-02-21 10:51:30.000000000 -0200 -@@ -85,10 +85,7 @@ - * query_gdb(): Send command to gdb. - */ - --#ifdef SYSV --# include <signal.h> --#endif -- -+#include <signal.h> - - /* - * Display an outlined arrow to locate the calling routine in a stack |