summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKristopher Kersey <augustus@gentoo.org>2005-01-08 20:44:45 +0000
committerKristopher Kersey <augustus@gentoo.org>2005-01-08 20:44:45 +0000
commit5df146914fa1502d7e7ef40853c8371dda0eaba8 (patch)
tree20b96df1d0fa1d18967558a8eeddcc3fd19fad88 /x11-wm/windowmaker
parentAdded emul-linux-x86. (diff)
downloadgentoo-2-5df146914fa1502d7e7ef40853c8371dda0eaba8.tar.gz
gentoo-2-5df146914fa1502d7e7ef40853c8371dda0eaba8.tar.bz2
gentoo-2-5df146914fa1502d7e7ef40853c8371dda0eaba8.zip
Added patch from Debian that should fix amd64 problems. This may affect other arches so all should test. Bug #69467.
Diffstat (limited to 'x11-wm/windowmaker')
-rw-r--r--x11-wm/windowmaker/Manifest42
-rw-r--r--x11-wm/windowmaker/files/20_endian+64bit.diff82
-rw-r--r--x11-wm/windowmaker/files/digest-windowmaker-0.91.0-r22
-rw-r--r--x11-wm/windowmaker/windowmaker-0.91.0-r1.ebuild4
-rw-r--r--x11-wm/windowmaker/windowmaker-0.91.0-r2.ebuild191
5 files changed, 295 insertions, 26 deletions
diff --git a/x11-wm/windowmaker/Manifest b/x11-wm/windowmaker/Manifest
index fb54149207ce..7724ada23bee 100644
--- a/x11-wm/windowmaker/Manifest
+++ b/x11-wm/windowmaker/Manifest
@@ -1,34 +1,28 @@
------BEGIN PGP SIGNED MESSAGE-----
-Hash: SHA1
-
-MD5 58b92f8943bac08e53aeeb01f640537a windowmaker-0.80.2-r2.ebuild 3437
-MD5 43e9d0c5bf62aaf821ba9624fd2e9e57 windowmaker-0.91.0.ebuild 4475
MD5 3cb02c5d22b8d7f7ec107f5da9880a10 ChangeLog 9383
-MD5 20ba3ee0e4036e307342671f74921913 windowmaker-0.80.2-r3.ebuild 3749
MD5 091028d21186597cb01d1440ed387951 metadata.xml 221
-MD5 e843e235a5057f861aa1ed9dc43fa863 windowmaker-0.90.0.ebuild 4490
+MD5 ecb31937eebc5b0afa6785ec0afefe4d windowmaker-0.80.2-r1.ebuild 3408
+MD5 58b92f8943bac08e53aeeb01f640537a windowmaker-0.80.2-r2.ebuild 3437
+MD5 20ba3ee0e4036e307342671f74921913 windowmaker-0.80.2-r3.ebuild 3749
MD5 3c3d6a630b21bdf50c422943b2cc79fe windowmaker-0.80.2-r4.ebuild 4034
+MD5 83fc60fffbae16da421856284af2304d ouput.txt 103637
+MD5 e843e235a5057f861aa1ed9dc43fa863 windowmaker-0.90.0.ebuild 4490
MD5 f3c7f7695710a6a3ed27107a1d35e9cc windowmaker-0.91.0-r1.ebuild 6196
-MD5 ecb31937eebc5b0afa6785ec0afefe4d windowmaker-0.80.2-r1.ebuild 3408
-MD5 8cb3b3bf7cef606cb356c4ba82744a50 files/digest-windowmaker-0.90.0 144
-MD5 37aefa1e6f793583e8fa7890231d1721 files/wmfpo.patch 7696
-MD5 f70c1e1b121cfc32dbd802678f3b111f files/wmaker.desktop 221
-MD5 c8eb68627dc7b53b10143626018ff597 files/gtk2flickerfix.patch 1969
-MD5 8b11b75a0ece3b854bf47e03ded7e0ba files/digest-windowmaker-0.91.0-r1 144
+MD5 43e9d0c5bf62aaf821ba9624fd2e9e57 windowmaker-0.91.0.ebuild 4475
+MD5 ea9100a380d8f7d6e53193fab4fdeb30 windowmaker-0.91.0-r2.ebuild 6270
MD5 b5304655d4ff5441989ab94a1bdc9506 files/digest-windowmaker-0.80.2-r1 144
+MD5 b5304655d4ff5441989ab94a1bdc9506 files/digest-windowmaker-0.80.2-r2 144
+MD5 b5304655d4ff5441989ab94a1bdc9506 files/digest-windowmaker-0.80.2-r3 144
MD5 b5304655d4ff5441989ab94a1bdc9506 files/digest-windowmaker-0.80.2-r4 144
-MD5 a062e261bd5aaca39bc17be01f07f1b6 files/wlist.patch 2776
-MD5 8b11b75a0ece3b854bf47e03ded7e0ba files/digest-windowmaker-0.91.0 144
+MD5 c8eb68627dc7b53b10143626018ff597 files/gtk2flickerfix.patch 1969
MD5 a42a33a349ca84fb6e2cc5fdbd627b99 files/trance.patch.WM-0.80.2.diff 9738
-MD5 b5304655d4ff5441989ab94a1bdc9506 files/digest-windowmaker-0.80.2-r3 144
MD5 9a5c9f1b2b44a678526f0fd71b2cf51d files/windowmaker-0.80.2-r1-gentoo.patch 4331
-MD5 b5304655d4ff5441989ab94a1bdc9506 files/digest-windowmaker-0.80.2-r2 144
+MD5 a062e261bd5aaca39bc17be01f07f1b6 files/wlist.patch 2776
+MD5 37aefa1e6f793583e8fa7890231d1721 files/wmfpo.patch 7696
MD5 915c0fe65c24d54a1507f662d7b24114 files/xinerama.patch 26662
+MD5 8cb3b3bf7cef606cb356c4ba82744a50 files/digest-windowmaker-0.90.0 144
+MD5 8b11b75a0ece3b854bf47e03ded7e0ba files/digest-windowmaker-0.91.0 144
+MD5 8b11b75a0ece3b854bf47e03ded7e0ba files/digest-windowmaker-0.91.0-r1 144
+MD5 f70c1e1b121cfc32dbd802678f3b111f files/wmaker.desktop 221
MD5 c41215f830e33a636a440ce389db01eb files/menufocus.patch 1554
------BEGIN PGP SIGNATURE-----
-Version: GnuPG v1.2.6 (GNU/Linux)
-
-iD8DBQFBq9ZUugEuf3OQ0akRAsDdAJ0SOwO+m0/TDuFAG7gKmQxE6RWpGQCfRZ4F
-T01tkNoHq3Skry74uOJYkNs=
-=K6Oo
------END PGP SIGNATURE-----
+MD5 f0ba434033b1f1e0956a037076da0b9c files/20_endian+64bit.diff 2740
+MD5 8b11b75a0ece3b854bf47e03ded7e0ba files/digest-windowmaker-0.91.0-r2 144
diff --git a/x11-wm/windowmaker/files/20_endian+64bit.diff b/x11-wm/windowmaker/files/20_endian+64bit.diff
new file mode 100644
index 000000000000..1acf3d991c5d
--- /dev/null
+++ b/x11-wm/windowmaker/files/20_endian+64bit.diff
@@ -0,0 +1,82 @@
+--- WindowMaker-0.91.0/src/wmspec.c.old 2004-10-24 21:36:15.000000000 +0200
++++ WindowMaker-0.91.0/src/wmspec.c 2004-12-09 18:29:00.000000000 +0100
+@@ -27,6 +27,7 @@
+
+ #include <X11/Xlib.h>
+ #include <X11/Xatom.h>
++#include <X11/Xarch.h>
+ #include <string.h>
+
+ #include "WindowMaker.h"
+@@ -382,40 +383,54 @@
+ &nitems_return, &bytes_after_return, &prop_return);
+
+ if (rc==Success && prop_return) {
+- unsigned int *data = (unsigned int *)prop_return;
++ unsigned long *data = (unsigned long *)prop_return;
+ unsigned int pos = 0, len = 0;
+ unsigned int best_pos = 0, best_tmp = ~0;
++ unsigned int tmp;
+ extern WPreferences wPreferences;
+ unsigned int pref_size = wPreferences.icon_size;
+ unsigned int pref_sq = pref_size*pref_size;
+- char *src, *dst;
++ unsigned char *src, *dst;
+ RImage *new_rimage;
+
+ do {
+ len = data[pos+0]*data[pos+1];
+- unsigned int tmp = pref_sq-len;
++ tmp = pref_sq-len;
+ if (tmp < best_tmp && tmp > 0) {
+ best_tmp = tmp;
+- best_pos = pos;
++ best_pos = pos+2;
+ }
+ pos += 2+len;
+ } while (pos < nitems_return && len != 0);
+
+- new_rimage = RCreateImage(data[best_pos+0], data[best_pos+1], True);
+- len = data[best_pos+0] * data[best_pos+1];
+- src = (char*)&data[best_pos+2];
+- dst = new_rimage->data;
+- for (pos=0; pos<len; ++pos, src+=4, dst+=4) {
+- dst[0] = src[2]; /* R */
+- dst[1] = src[1]; /* G */
+- dst[2] = src[0]; /* B */
+- dst[3] = src[3]; /* A */
+- }
++ if ( best_pos < 2 ) best_pos = 2;
++
++ new_rimage = RCreateImage(data[best_pos-2], data[best_pos-1], True);
+
+ if (new_rimage) {
+- if (wwin->net_icon_image)
+- RReleaseImage(wwin->net_icon_image);
+- wwin->net_icon_image = new_rimage;
++ len = data[best_pos-2] * data[best_pos-1];
++ dst = new_rimage->data;
++
++ for (pos = best_pos; pos < best_pos + len; pos++, dst += 4) {
++ src = (unsigned char *) &data[pos];
++
++#if BYTE_ORDER == BIG_ENDIAN
++ src += sizeof(unsigned long) - 4;
++ dst[0] = src[1]; /* R */
++ dst[1] = src[2]; /* G */
++ dst[2] = src[3]; /* B */
++ dst[3] = src[0]; /* A */
++#else /* Little endian */
++ dst[0] = src[2]; /* R */
++ dst[1] = src[1]; /* G */
++ dst[2] = src[0]; /* B */
++ dst[3] = src[3]; /* A */
++#endif /* endianness */
++ }
++
++ if (wwin->net_icon_image)
++ RReleaseImage(wwin->net_icon_image);
++ wwin->net_icon_image = new_rimage;
+ }
+
+ XFree(prop_return);
diff --git a/x11-wm/windowmaker/files/digest-windowmaker-0.91.0-r2 b/x11-wm/windowmaker/files/digest-windowmaker-0.91.0-r2
new file mode 100644
index 000000000000..8973161344f4
--- /dev/null
+++ b/x11-wm/windowmaker/files/digest-windowmaker-0.91.0-r2
@@ -0,0 +1,2 @@
+MD5 be07953e905d1e42fe7a65ac2193a5f9 WindowMaker-0.91.0.tar.gz 2742380
+MD5 07c7700daaaf232bc490f5abaabef085 WindowMaker-extra-0.1.tar.gz 238018
diff --git a/x11-wm/windowmaker/windowmaker-0.91.0-r1.ebuild b/x11-wm/windowmaker/windowmaker-0.91.0-r1.ebuild
index e139b83eed34..9402064e1feb 100644
--- a/x11-wm/windowmaker/windowmaker-0.91.0-r1.ebuild
+++ b/x11-wm/windowmaker/windowmaker-0.91.0-r1.ebuild
@@ -1,6 +1,6 @@
# Copyright 1999-2004 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/x11-wm/windowmaker/windowmaker-0.91.0-r1.ebuild,v 1.8 2004/11/30 02:09:03 kloeri Exp $
+# $Header: /var/cvsroot/gentoo-x86/x11-wm/windowmaker/windowmaker-0.91.0-r1.ebuild,v 1.9 2005/01/08 20:44:45 augustus Exp $
inherit eutils gnustep-funcs
@@ -24,7 +24,7 @@ RDEPEND="nls? ( >=sys-devel/gettext-0.10.39 )
SLOT="0"
LICENSE="GPL-2"
-KEYWORDS="x86 ppc sparc amd64 ~mips alpha"
+KEYWORDS="x86 ppc sparc ~amd64 ~mips alpha"
if use gnustep; then
egnustep_install_domain "System"
diff --git a/x11-wm/windowmaker/windowmaker-0.91.0-r2.ebuild b/x11-wm/windowmaker/windowmaker-0.91.0-r2.ebuild
new file mode 100644
index 000000000000..17b1ca422a7a
--- /dev/null
+++ b/x11-wm/windowmaker/windowmaker-0.91.0-r2.ebuild
@@ -0,0 +1,191 @@
+# Copyright 1999-2004 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/x11-wm/windowmaker/windowmaker-0.91.0-r2.ebuild,v 1.1 2005/01/08 20:44:45 augustus Exp $
+
+inherit eutils gnustep-funcs
+
+S=${WORKDIR}/${P/windowm/WindowM}
+
+DESCRIPTION="The fast and light GNUstep window manager"
+SRC_URI="ftp://ftp.windowmaker.org/pub/source/release/${P/windowm/WindowM}.tar.gz
+ http://www.windowmaker.org/pub/source/release/WindowMaker-extra-0.1.tar.gz"
+HOMEPAGE="http://www.windowmaker.org/"
+
+IUSE="gif gnustep jpeg nls png tiff modelock vdesktop xinerama"
+DEPEND="x11-base/xorg-x11
+ media-libs/fontconfig
+ gif? ( || ( >=media-libs/libungif-4.1.0
+ >=media-libs/giflib-4.1.0-r3))
+ png? ( >=media-libs/libpng-1.2.1 )
+ jpeg? ( >=media-libs/jpeg-6b-r2 )
+ tiff? ( >=media-libs/tiff-3.6.1-r2 )"
+RDEPEND="nls? ( >=sys-devel/gettext-0.10.39 )
+ gnustep? ( gnustep-base/gnustep-env )"
+
+SLOT="0"
+LICENSE="GPL-2"
+KEYWORDS="~x86 ~ppc ~sparc ~amd64 ~mips ~alpha"
+
+if use gnustep; then
+ egnustep_install_domain "System"
+fi
+
+src_unpack() {
+ unpack ${A}
+ cd ${S}
+ epatch ${FILESDIR}/menufocus.patch || die "menu focus patch failed"
+ epatch ${FILESDIR}/20_endian+64bit.diff || die "64-bit fix patch failed"
+}
+
+src_compile() {
+ local myconf
+ local gs_user_postfix
+
+ # image format types
+ # xpm is provided by X itself
+ myconf="--enable-xpm $(use_enable png) $(use_enable jpeg) $(use_enable gif) $(use_enable tiff)"
+
+ # non required X capabilities
+ myconf="${myconf} $(use_enable modelock) $(use_enable vdesktop) $(use_enable xinerama)"
+
+ # integrate with GNUstep environment, or not
+ if use gnustep ; then
+ egnustep_env
+ myconf="${myconf} --with-appspath=$(egnustep_system_root)/Applications"
+ else
+ # no change from wm-0.80* ebuilds, as to not pollute things more
+ myconf="${myconf} --with-appspath=/usr/lib/GNUstep/Applications"
+ fi
+
+ use nls \
+ && export LINGUAS="`ls po/*.po | sed 's:po/\(.*\)\.po$:\1:'`" \
+ || myconf="${myconf} --disable-nls --disable-locale"
+
+ # default settings with $myconf appended
+ econf \
+ --sysconfdir=/etc/X11 \
+ --with-x \
+ --enable-usermenu \
+ --with-pixmapdir=/usr/share/pixmaps \
+ ${myconf} || die
+
+ # don't know if zh_TW is still non-functional, but leaving it out still
+ # for now
+ cd ${S}/po
+ cp Makefile Makefile.orig
+ sed 's:zh_TW.*::' \
+ Makefile.orig > Makefile
+
+ cd ${S}/WPrefs.app/po
+ cp Makefile Makefile.orig
+ sed 's:zh_TW.*::' \
+ Makefile.orig > Makefile
+
+ cd ${S}
+ for file in ${S}/WindowMaker/*menu*; do
+ if [ -r $file ]; then
+ if use gnustep ; then
+ sed -e "s/\/usr\/local\/GNUstep/`cat ${TMP}/sed.gs_prefix`System/g;
+ s/XXX_SED_FSLASH/\//g;" < $file > $file.tmp
+ else
+ sed -e 's/\/usr\/local\/GNUstep/\/usr\/lib\/GNUstep/g;' < $file > $file.tmp
+ fi
+ mv $file.tmp $file;
+
+ sed -e 's/\/usr\/local\/share\/WindowMaker/\/usr\/share\/WindowMaker/g;' < $file > $file.tmp;
+ mv $file.tmp $file;
+ fi;
+ done;
+
+ cd ${S}
+ emake -j1 || die "windowmaker: make has failed"
+
+ cd ${S}
+ for file in ${S}/WindowMaker/Defaults/W*; do
+ if [ -r $file ]; then
+ if use gnustep; then
+ sed -e "s/\$HOME\/GNUstep\//\$HOME`cat ${TMP}/sed.gs_user_root_suffix`/g;
+ s/XXX_SED_FSLASH/\//g;" < $file > $file.tmp
+ mv $file.tmp $file;
+
+ sed -e "s/~\/GNUstep\//~`cat ${TMP}/sed.gs_user_root_suffix`/g;
+ s/XXX_SED_FSLASH/\//g;" < $file > $file.tmp
+ mv $file.tmp $file;
+ fi
+ fi
+ done;
+
+ # WindowMaker Extra Package (themes and icons)
+ cd ../WindowMaker-extra-0.1
+ econf || die "windowmaker-extra: configure has failed"
+ emake || die "windowmaker-extra: make has failed"
+}
+
+src_install() {
+ emake install DESTDIR=${D} || die "windowmaker: install has failed."
+
+ dodoc AUTHORS BUGFORM BUGS ChangeLog COPYING* INSTALL* FAQ* \
+ MIRRORS README* NEWS TODO
+
+ # WindowMaker Extra
+ cd ../WindowMaker-extra-0.1
+ emake install DESTDIR=${D} || die "windowmaker-extra: install failed"
+
+ newdoc README README.extra
+
+ # create wmaker session shell script
+ echo "#!/bin/bash" > wmaker
+ echo "/usr/bin/wmaker" >> wmaker
+ exeinto /etc/X11/Sessions/
+ doexe wmaker
+
+ insinto /etc/X11/dm/Sessions
+ doins ${FILESDIR}/wmaker.desktop
+}
+
+pkg_postinst() {
+ einfo "If you are using 'startx' from the command line, and require"
+ einfo " .xinitrc, you may need to execute 'wmaker.inst', which will"
+ einfo " setup default configurations for you."
+ einfo ""
+
+ if use gnustep ; then
+ einfo "WPrefs.app is installed in you GNUstep System Applications directory."
+ einfo ""
+ ewarn "*** IMPORTANT ***"
+ ewarn "If you changed the GNUstep user root, via a use flag like 'layout-osx-like' in gnustep-make"
+ ewarn " you will have to repair the personal WindowMaker config files you have. For example,"
+ ewarn " if you changed the default user root as above, \$HOME/GNUstep to ~/, these commands"
+ ewarn " will help you:"
+ ewarn "cd ; cp -a ./GNUstep/.AppInfo . ; cp -a ./GNUstep/Defaults/W* ./Defaults/ ;"
+ ewarn " cp -a ./GNUstep/Library/Icons ./GNUstep/Library/WindowMaker ./Library/"
+ ewarn "The above commands are specifically to help repair your WindowMaker install;"
+ ewarn " a less elegant, but reasonable method is to simply run wmaker.inst again,"
+ ewarn " **after sourcing GNUstep.sh**, as this env script sets the GNUSTEP_USER_ROOT variable."
+ ewarn "Generally, other config files in your old ~/GNUstep directory, can simply be"
+ ewarn " moved to the new GNUSTEP_USER_ROOT."
+ ewarn "^^^ IMPORTANT ^^^"
+ ewarn ""
+ else
+ einfo "Even though you are not using the GNUstep environment, wmaker.inst will"
+ einfo " create a 'GNUstep' directory in your home -- it uses this dirctory"
+ einfo " to store your WindowMaker configuration files."
+ einfo "WPrefs.app can be launched at /usr/lib/GNUstep/Applications/WPrefs.app/WPrefs"
+ einfo " or by simply **clicking on it in the WindowMaker default dock.**"
+ einfo ""
+ fi
+
+ if use vdesktop ; then
+ ewarn "Note that enabling support for NETWM virtual desktops will make"
+ ewarn " menus that should be autoscrolling seem to not scroll, as they"
+ ewarn " are not off the screen, but rather in another virtual desktop."
+ ewarn ""
+ fi
+
+ ewarn "This package provides libwraster.so.3. Packages depending on"
+ ewarn " libwraster.so.2 will have to be rebuilt, i.e. 'revdep-rebuild'"
+
+ ebeep 4
+ epause 4
+}
+