From 483f7de4ab6a706517279a24d2efc969f4a1996d Mon Sep 17 00:00:00 2001 From: root Date: Mon, 28 May 2012 17:43:57 +0000 Subject: Mon May 28 17:43:57 UTC 2012 --- extra/icewm/PKGBUILD | 21 +++++++---- extra/icewm/ignore_workarea_hints.patch | 62 +++++++++++++++++++++++++++++++++ extra/icewm/no_proc_acpi.patch | 17 +++++++++ extra/icewm/use_ICEWM_deprecated.patch | 21 +++++++++++ extra/icewm/wmclient.patch | 25 +++++++++++++ 5 files changed, 140 insertions(+), 6 deletions(-) create mode 100644 extra/icewm/ignore_workarea_hints.patch create mode 100644 extra/icewm/no_proc_acpi.patch create mode 100644 extra/icewm/use_ICEWM_deprecated.patch create mode 100644 extra/icewm/wmclient.patch (limited to 'extra/icewm') diff --git a/extra/icewm/PKGBUILD b/extra/icewm/PKGBUILD index 7c7951c04..1a0b1fc72 100644 --- a/extra/icewm/PKGBUILD +++ b/extra/icewm/PKGBUILD @@ -1,22 +1,31 @@ -# $Id: PKGBUILD 127320 2011-06-13 04:06:23Z eric $ +# $Id: PKGBUILD 160012 2012-05-28 00:49:21Z eric $ # Maintainer: Eric BĂ©langer pkgname=icewm pkgver=1.3.7 -pkgrel=1 +pkgrel=2 pkgdesc="A Window Manager designed for speed, usability, and consistency" arch=('i686' 'x86_64') url="http://www.icewm.org/" license=('LGPL') depends=('libxrandr' 'libxft' 'libsm' 'libxinerama' 'gdk-pixbuf2') makedepends=('xorg-mkfontdir') -source=(http://downloads.sourceforge.net/sourceforge/icewm/${pkgname}-${pkgver}.tar.gz) -md5sums=('224695231aedb2b91db3254a13e1c8dd') -sha1sums=('ce8d86190e275dc7db2d8c28472a579264120803') +source=(http://downloads.sourceforge.net/sourceforge/icewm/${pkgname}-${pkgver}.tar.gz + use_ICEWM_deprecated.patch ignore_workarea_hints.patch no_proc_acpi.patch wmclient.patch) +sha1sums=('ce8d86190e275dc7db2d8c28472a579264120803' + 'ac8f352ba5ee33e19ce75fdeed890361550e125a' + '49ca37ae41290f17a71a177b1f774235f91d79f1' + 'a47fb4191f30b8f42a6bd90ca5d7941bb3d65338' + 'd16b4b3ab269a657e735e343833973d000c0b35b') build() { cd "${srcdir}/${pkgname}-${pkgver}" - ./configure --prefix=/usr --sysconfdir=/etc --enable-shaped-decorations --enable-gradients + patch -p1 -i "${srcdir}/use_ICEWM_deprecated.patch" + patch -p1 -i "${srcdir}/ignore_workarea_hints.patch" + patch -p1 -i "${srcdir}/no_proc_acpi.patch" + patch -p1 -i "${srcdir}/wmclient.patch" + LIBS+="-lfontconfig" ./configure --prefix=/usr --sysconfdir=/etc \ + --enable-shaped-decorations --enable-gradients make } diff --git a/extra/icewm/ignore_workarea_hints.patch b/extra/icewm/ignore_workarea_hints.patch new file mode 100644 index 000000000..99ffa4a28 --- /dev/null +++ b/extra/icewm/ignore_workarea_hints.patch @@ -0,0 +1,62 @@ +Index: icewm-1.3.7/src/wmapp.cc +=================================================================== +--- icewm-1.3.7.orig/src/wmapp.cc 2010-10-31 15:09:36.000000000 +0100 ++++ icewm-1.3.7/src/wmapp.cc 2012-01-15 17:01:47.284927292 +0100 +@@ -187,7 +187,6 @@ + _XA_NET_ACTIVE_WINDOW, + _XA_NET_CLOSE_WINDOW, + _XA_NET_WM_STRUT, +- _XA_NET_WORKAREA, + _XA_NET_WM_STATE, + _XA_NET_WM_STATE_MAXIMIZED_VERT, + _XA_NET_WM_STATE_MAXIMIZED_HORZ, +Index: icewm-1.3.7/src/wmmgr.cc +=================================================================== +--- icewm-1.3.7.orig/src/wmmgr.cc 2010-10-31 15:09:36.000000000 +0100 ++++ icewm-1.3.7/src/wmmgr.cc 2012-01-15 16:59:18.000000000 +0100 +@@ -2114,11 +2114,6 @@ + area[ws * 4 + 3] = fWorkArea[ws][0].fMaxY - fWorkArea[ws][0].fMinY; + } + +- XChangeProperty(xapp->display(), handle(), +- _XA_NET_WORKAREA, +- XA_CARDINAL, +- 32, PropModeReplace, +- (unsigned char *)area, nw * 4); + delete [] area; + #endif + #ifdef GNOME1_HINTS +Index: icewm-1.3.7/src/wmmgr.h +=================================================================== +--- icewm-1.3.7.orig/src/wmmgr.h 2010-10-31 15:09:36.000000000 +0100 ++++ icewm-1.3.7/src/wmmgr.h 2012-01-15 16:59:18.000000000 +0100 +@@ -297,7 +297,6 @@ + extern Atom _XA_NET_CURRENT_DESKTOP; // OK + ///extern Atom _XA_NET_DESKTOP_NAMES; // N/A + extern Atom _XA_NET_ACTIVE_WINDOW; // OK +-extern Atom _XA_NET_WORKAREA; // OK + extern Atom _XA_NET_SUPPORTING_WM_CHECK; // OK + ///extern Atom _XA_NET_SUPPORTING_WM_CHECK; // N/A + extern Atom _XA_NET_CLOSE_WINDOW; // OK +Index: icewm-1.3.7/src/yxapp.cc +=================================================================== +--- icewm-1.3.7.orig/src/yxapp.cc 2010-10-31 15:09:36.000000000 +0100 ++++ icewm-1.3.7/src/yxapp.cc 2012-01-15 17:03:59.556423213 +0100 +@@ -67,7 +67,7 @@ + Atom _XA_NET_CLIENT_LIST_STACKING; + Atom _XA_NET_NUMBER_OF_DESKTOPS; + Atom _XA_NET_CURRENT_DESKTOP; +-Atom _XA_NET_WORKAREA; ++//Atom _XA_NET_WORKAREA; + Atom _XA_NET_WM_MOVERESIZE; + + Atom _XA_NET_WM_STRUT; +@@ -286,7 +286,7 @@ + { &_XA_NET_CLIENT_LIST_STACKING, "_NET_CLIENT_LIST_STACKING" }, + { &_XA_NET_NUMBER_OF_DESKTOPS, "_NET_NUMBER_OF_DESKTOPS" }, + { &_XA_NET_CURRENT_DESKTOP, "_NET_CURRENT_DESKTOP" }, +- { &_XA_NET_WORKAREA, "_NET_WORKAREA" }, ++// { &_XA_NET_WORKAREA, "_NET_WORKAREA" }, + { &_XA_NET_WM_MOVERESIZE, "_NET_WM_MOVERESIZE" }, + + { &_XA_NET_WM_STRUT, "_NET_WM_STRUT" }, diff --git a/extra/icewm/no_proc_acpi.patch b/extra/icewm/no_proc_acpi.patch new file mode 100644 index 000000000..4cd92360c --- /dev/null +++ b/extra/icewm/no_proc_acpi.patch @@ -0,0 +1,17 @@ +Description: Check for sysfs' acpi file, procfs may not contain acpi data with recent kernels +Author: Andrey Danin , Eduard Bloch +Bug: http://sourceforge.net/mailarchive/forum.php?thread_name=E1SHwYx-00029t-1N.danindrey-mail-ru%40f232.mail.ru&forum_name=icewm-devel +Forwarded: Yes + +Index: icewm-1.3.7/src/wmtaskbar.cc +=================================================================== +--- icewm-1.3.7.orig/src/wmtaskbar.cc 2010-10-31 15:09:36.000000000 +0100 ++++ icewm-1.3.7/src/wmtaskbar.cc 2012-04-11 23:22:23.466564372 +0200 +@@ -467,6 +467,7 @@ + #endif + #ifdef CONFIG_APPLET_APM + if (taskBarShowApm && (access(APMDEV, 0) == 0 || ++ access("/sys/class/power_supply", 0) == 0 || + access("/proc/acpi", 0) == 0 || + access("/dev/acpi", 0) == 0 || + access("/proc/pmu", R_OK|X_OK) == 0)) diff --git a/extra/icewm/use_ICEWM_deprecated.patch b/extra/icewm/use_ICEWM_deprecated.patch new file mode 100644 index 000000000..3533d31e3 --- /dev/null +++ b/extra/icewm/use_ICEWM_deprecated.patch @@ -0,0 +1,21 @@ +Description: Don't use "deprecated" as identifier, will FTBFS if another + library defines functions as deprecated. +Author: Andreas Moog +Bug: https://sourceforge.net/tracker/?func=detail&aid=3494034&group_id=31&atid=100031 +Bug-Ubuntu: https://bugs.launchpad.net/bugs/935179 +Forwarded: Yes + +--- icewm-1.3.7.orig/src/base.h ++++ icewm-1.3.7/src/base.h +@@ -2,9 +2,9 @@ + #define __BASE_H + + #if ( __GNUC__ == 3 && __GNUC_MINOR__ > 0 ) || __GNUC__ > 3 +-#define deprecated __attribute__((deprecated)) ++#define ICEWM_deprecated __attribute__((deprecated)) + #else +-#define deprecated ++#define ICEWM_deprecated + #endif + + /*** Atomar Data Types ********************************************************/ diff --git a/extra/icewm/wmclient.patch b/extra/icewm/wmclient.patch new file mode 100644 index 000000000..95f00614d --- /dev/null +++ b/extra/icewm/wmclient.patch @@ -0,0 +1,25 @@ +diff -uNr icewm-1.3.7.orig/src/wmclient.cc icewm-1.3.7/src/wmclient.cc +--- icewm-1.3.7.orig/src/wmclient.cc 2012-05-27 11:54:25.663101746 +0200 ++++ icewm-1.3.7/src/wmclient.cc 2012-05-27 12:17:40.236339580 +0200 +@@ -1044,20 +1044,11 @@ + while (XGetWindowProperty(display, handle, + propAtom, (itemCount * itemSize) / 32, 1024*32, False, AnyPropertyType, + &r_type, &r_format, &nitems, &bytes_remain, +- &prop) == Success && prop && bytes_remain == 0) ++ &prop) == Success && prop) + { + if (r_format == itemSize1 && nitems > 0) { + data = realloc(data, (itemCount + nitems) * itemSize / 8); + +- // access to memory beyound 256MiB causes crashes! But anyhow, size +- // >>2MiB looks suspicious. Detect this case ASAP. However, if +- // the usable icon is somewhere in the beginning, it's okay to +- // return truncated data. +- if (itemCount * itemSize / 8 >= 2097152) { +- XFree(prop); +- break; +- } +- + memcpy((char *)data + itemCount * itemSize / 8, prop, nitems * itemSize / 8); + itemCount += nitems; + XFree(prop); -- cgit v1.2.3-54-g00ecf