summaryrefslogtreecommitdiffstats
path: root/slackware64-current/source/xfce/xfwm4/xfwm4.SlackBuild
diff options
context:
space:
mode:
authorAdrien Nader <adrien@notk.org>2012-07-23 08:10:52 +0200
committerAdrien Nader <adrien@notk.org>2012-07-23 08:10:52 +0200
commit9b2d545c8d82c4ae46eec58eedb1a63483439ed8 (patch)
tree691af869ab7c6e417e28d99baf608ed4b2dfafcd /slackware64-current/source/xfce/xfwm4/xfwm4.SlackBuild
parentf635c68eab3769dacc85fefc0bd14f5057319ee8 (diff)
Sun Jul 22 22:38:36 UTC 2012
Howdy! Lots of shiny stuff here, including the long awaited Xfce 4.10! Thanks to Robby Workman for the initial set of build scripts, and lots of testing (plus some very helpful notes about things such as the proper build order). I'm calling this a beta (finally!), and it's really very close to what we expect to release. Test away. BTW, Mercury leaves retrograde on August 8th, position 01:26 Leo. ;-) a/aaa_elflibs-14.0-x86_64-3.txz: Rebuilt. Fixed missing libz.so.1. a/lvm2-2.02.96-x86_64-4.txz: Rebuilt. Recompiled for udev-182. a/sysvinit-scripts-2.0-noarch-3.txz: Rebuilt. Show the date after setting the system clock. Thanks to Darrell Anderson. Shut down udev in rc.6. Thanks to Robby Workman. In rc.S, determine the actual root partition and insert it into /etc/mtab so that "/dev/root" isn't shown when booting a kernel without an initrd. I should have fixed this years ago. a/udev-182-x86_64-1.txz: Upgraded. Well, udev in this devel cycle has certainly been interesting! A fair number of odd bug reports have been coming in, and we hadn't really been able to get a handle on the source of the issues. Quite some time ago we started testing udev-182, and noticed that it caused some issues with the persistent net and cd rules. There'd sometimes be two entries per device, so a machine with a single Ethernet card might come up showing the card as eth1, with two rules in 70-persistent-net.rules (eth0 and eth1). We tested a lot of udev versions trying to determine where the problem started, and it seemed to begin with version 176, the first one that used libkmod rather than calling out to module-init-tools to load modules. Asking upstream about it, they suggested that we just turn the generation of persistent rules off. They'd already turned it off by default. "Make 'em make rules!" seemed to be the answer, and since I remember well why the autogeneration of net and CD rules came about, I wasn't really happy with that answer. After deploying the "safe" upgrade to 175, we got a couple of reports of this same issue happening (though none of us could reproduce the issue with 175). Robby ended up making some patches to the rule writing scripts for udev-182 that were able to stop the doubling up of rules, but the devices themselves would still be misnumbered on the first boot without rules, and would then be correct after a reboot. Last week I sat down determined to figure out where the race condition was. After endless reboots with various tests, I got the idea to put my network modules on the initrd and have it shell out so that I could take a look at them. What I found was that the rules were generated correctly on the initrd. Well, that was a surprise, but I must have had some kind of hunch to even try a test like that. On another hunch, I ran "pstree -c -p | grep udevd" on the running system. Heh. There it was. We had been running two copies of udevd, and they were fighting it out. At some point along the line, udevd was changed. It used to be that if you tried to start a second copy it wouldn't start, and would exit with status 1, and our rc.udev script relied on this behavior. Fixing the problem was considerably easier than finding it... rworkman and I made some changes in rc.udev to check if udevd was already running instead of expecting it to check for itself. Another change was required to cause it to write out rules if they didn't exist already, and then to read them back in (otherwise optical symlinks were still missing on first boot without rules). There's still one issue that was also present with udev-175, which is that a hotplugged optical drive won't get symlinks unless it has been in at boot and had rules generated for it then. Otherwise, things are looking considerably better. Firmware is loading correctly, rules are autogenerated properly again, and several devices that were missing in /dev have returned. So, there's the story. Maybe more than you really wanted to know. ;-) Thanks to rworkman for his help on this. Please report any new problems. And if anyone knows how to get symlinks working for a hotplugged optical drive like they did in udev-165, a fix would be most appreciated. a/udisks2-1.98.0-x86_64-1.txz: Added. ap/foomatic-filters-4.0.12-x86_64-1.txz: Upgraded. ap/gutenprint-5.2.9-x86_64-1.txz: Upgraded. ap/slackpkg-2.82.0-noarch-6.tgz: Rebuilt. Support XFCE series. Note that slackpkg will upgrade itself, but it still won't know about the XFCE series during that run, so you'll need to run it a second time to install Xfce. l/GConf-3.2.5-x86_64-1.txz: Added. l/gcr-3.4.1-x86_64-1.txz: Added. l/glade3-3.8.1-x86_64-1.txz: Added. l/glib-networking-2.32.3-x86_64-1.txz: Added. l/gnome-keyring-3.4.1-x86_64-1.txz: Added. l/gsettings-desktop-schemas-3.4.2-noarch-1.txz: Added. l/gvfs-1.12.3-x86_64-1.txz: Added. l/js185-1.0.0-x86_64-1.txz: Added. l/keybinder-0.3.0-x86_64-1.txz: Added. l/libcanberra-0.29-x86_64-1.txz: Added. l/libgnome-keyring-3.4.1-x86_64-1.txz: Added. l/libproxy-0.4.7-x86_64-1.txz: Added. l/libsoup-2.38.1-x86_64-1.txz: Added. l/libtasn1-2.12-x86_64-1.txz: Added. l/loudmouth-1.4.3-x86_64-3.txz: Rebuilt. Rebuilt with --enable-debug=yes, which I hear disables debugging messages on the console. Go figure. :-) Thanks to Youjie Zhou. l/media-player-info-17-noarch-1.txz: Added. l/mozilla-nss-3.13.5-x86_64-2.txz: Rebuilt. Added nspr-config and nss-config. Removed unneeded binaries in /usr/bin. Removed config files in /usr/include/nspr/md. l/sound-theme-freedesktop-0.7-noarch-1.txz: Added. n/php-5.4.5-x86_64-1.txz: Upgraded. Fixed potential overflow in _php_stream_scandir (CVE-2012-2688). (Thanks to Jason Powell, Stas) For more information, see: http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2012-2688 (* Security fix *) xap/network-manager-applet-0.9.4.1-x86_64-1.txz: Added. xap/xfce-4.6.2-x86_64-5.txz: Removed. xfce/Terminal-0.4.8-x86_64-1.txz: Added. xfce/Thunar-1.4.0-x86_64-1.txz: Added. xfce/exo-0.8.0-x86_64-1.txz: Added. xfce/garcon-0.2.0-x86_64-1.txz: Added. xfce/gtk-xfce-engine-3.0.0-x86_64-1.txz: Added. xfce/libxfce4ui-4.10.0-x86_64-1.txz: Added. xfce/libxfce4util-4.10.0-x86_64-1.txz: Added. xfce/libxfcegui4-4.10.0-x86_64-1.txz: Added. xfce/orage-4.8.3-x86_64-1.txz: Added. xfce/thunar-volman-0.8.0-x86_64-1.txz: Upgraded. xfce/tumbler-0.1.25-x86_64-1.txz: Added. xfce/xfce4-appfinder-4.10.0-x86_64-1.txz: Added. xfce/xfce4-clipman-plugin-1.2.3-x86_64-1.txz: Added. xfce/xfce4-dev-tools-4.10.0-x86_64-1.txz: Added. xfce/xfce4-mixer-4.8.0-x86_64-1.txz: Added. xfce/xfce4-notifyd-0.2.2-x86_64-1.txz: Upgraded. xfce/xfce4-panel-4.10.0-x86_64-1.txz: Added. xfce/xfce4-power-manager-1.2.0-x86_64-1.txz: Upgraded. xfce/xfce4-screenshooter-1.8.1-x86_64-1.txz: Added. xfce/xfce4-session-4.10.0-x86_64-1.txz: Added. xfce/xfce4-settings-4.10.0-x86_64-1.txz: Added. xfce/xfce4-systemload-plugin-1.1.0-x86_64-1.txz: Added. xfce/xfce4-taskmanager-1.0.0-x86_64-1.txz: Added. xfce/xfce4-volumed-0.1.13-x86_64-1.txz: Added. xfce/xfce4-weather-plugin-0.7.4-x86_64-1.txz: Added. xfce/xfconf-4.10.0-x86_64-1.txz: Added. xfce/xfdesktop-4.10.0-x86_64-1.txz: Added. xfce/xfwm4-4.10.0-x86_64-1.txz: Added. xfce/xfwm4-themes-4.10.0-x86_64-1.txz: Added. isolinux/initrd.img: Rebuilt. Support XFCE series. usb-and-pxe-installers/usbboot.img: Rebuilt. Support XFCE series.
Diffstat (limited to 'slackware64-current/source/xfce/xfwm4/xfwm4.SlackBuild')
-rwxr-xr-xslackware64-current/source/xfce/xfwm4/xfwm4.SlackBuild139
1 files changed, 139 insertions, 0 deletions
diff --git a/slackware64-current/source/xfce/xfwm4/xfwm4.SlackBuild b/slackware64-current/source/xfce/xfwm4/xfwm4.SlackBuild
new file mode 100755
index 000000000..21bbe93c0
--- /dev/null
+++ b/slackware64-current/source/xfce/xfwm4/xfwm4.SlackBuild
@@ -0,0 +1,139 @@
+#!/bin/sh
+
+# Copyright 2012 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.
+
+PKGNAM=xfwm4
+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:
+MARCH=$( uname -m )
+if [ -z "$ARCH" ]; then
+ case "$MARCH" in
+ i?86) export ARCH=i486 ;;
+ armv7hl) export ARCH=$MARCH ;;
+ arm*) export ARCH=arm ;;
+ # Unless $ARCH is already set, use uname -m for all other archs:
+ *) export ARCH=$MARCH ;;
+ esac
+fi
+
+NUMJOBS=${NUMJOBS:--j6}
+
+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"
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+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.?z* || exit 1
+cd $PKGNAM-$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 {} \;
+
+# Configure:
+CFLAGS="$SLKCFLAGS" \
+./configure \
+ --prefix=/usr \
+ --libdir=/usr/lib${LIBDIRSUFFIX} \
+ --sysconfdir=/etc \
+ --mandir=/usr/man \
+ --docdir=/usr/doc/$PKGNAM-$VERSION \
+ --disable-static \
+ --disable-debug \
+ --build=$ARCH-slackware-linux || exit 1
+
+# Build and install:
+make $NUMJOBS || make || exit 1
+make install DESTDIR=$PKG || exit 1
+
+mkdir -p $PKG/etc/X11/xinit
+cat $CWD/xinitrc.xfce > $PKG/etc/X11/xinit/xinitrc.xfce
+chmod 0755 $PKG/etc/X11/xinit/*
+
+# Strip binaries:
+( cd $PKG
+ find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
+ find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
+)
+
+# Compress and if needed symlink the man pages:
+if [ -d $PKG/usr/man ]; then
+ ( cd $PKG/usr/man
+ for manpagedir in $(find . -type d -name "man*") ; do
+ ( cd $manpagedir
+ for eachpage in $( find . -type l -maxdepth 1) ; do
+ ln -s $( readlink $eachpage ).gz $eachpage.gz
+ rm $eachpage
+ done
+ gzip -9 *.?
+ )
+ done
+ )
+fi
+
+# We don't want icon caches:
+find $PKG/usr/share/icons -type f -name "icon-theme.cache" -exec rm -f {} \;
+
+# Add a documentation directory. Not all of these files are expected to be
+# present, but listing them ensures that documentation that might appear and
+# disappear from version to version will not be missed.
+mkdir -p $PKG/usr/doc/${PKGNAM}-$VERSION
+cp -a \
+ AUTHORS BUGS COMPOSITOR COPYING* FAQ HACKING INSTALL \
+ NEWS NOTES README* THANKS TODO example.gtkrc-2.0 \
+ $PKG/usr/doc/${PKGNAM}-$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 $TMP/$PKGNAM-$VERSION-$ARCH-$BUILD.txz