summaryrefslogtreecommitdiff
path: root/x11-wm
diff options
context:
space:
mode:
authorMark Loeser <halcy0n@gentoo.org>2005-12-28 22:31:26 +0000
committerMark Loeser <halcy0n@gentoo.org>2005-12-28 22:31:26 +0000
commit81357c8bd48d515f1543bf1535194af5bc8a888f (patch)
tree49865d4344990078291367bce3978314ea5db246 /x11-wm
parentlib-compat is not needed by these versions. Added modular X and alsa dependen... (diff)
downloadgentoo-2-81357c8bd48d515f1543bf1535194af5bc8a888f.tar.gz
gentoo-2-81357c8bd48d515f1543bf1535194af5bc8a888f.tar.bz2
gentoo-2-81357c8bd48d515f1543bf1535194af5bc8a888f.zip
Added patch to fix compilation with gcc-4.1. Thanks to Robert Marmorstein <rmmarm AT wm DOT edu> for finding the patch; bug #113476
(Portage version: 2.1_pre2)
Diffstat (limited to 'x11-wm')
-rw-r--r--x11-wm/windowmaker/ChangeLog8
-rw-r--r--x11-wm/windowmaker/Manifest3
-rw-r--r--x11-wm/windowmaker/files/0.92.0/windowmaker-0.92.0-gcc41.patch131
-rw-r--r--x11-wm/windowmaker/windowmaker-0.92.0-r1.ebuild9
4 files changed, 145 insertions, 6 deletions
diff --git a/x11-wm/windowmaker/ChangeLog b/x11-wm/windowmaker/ChangeLog
index 29ad8d96eb28..b13c8c4c0544 100644
--- a/x11-wm/windowmaker/ChangeLog
+++ b/x11-wm/windowmaker/ChangeLog
@@ -1,6 +1,12 @@
# ChangeLog for x11-wm/windowmaker
# Copyright 2002-2005 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/x11-wm/windowmaker/ChangeLog,v 1.59 2005/12/24 01:37:47 carlo Exp $
+# $Header: /var/cvsroot/gentoo-x86/x11-wm/windowmaker/ChangeLog,v 1.60 2005/12/28 22:31:26 halcy0n Exp $
+
+ 28 Dec 2005; Mark Loeser <halcy0n@gentoo.org>
+ +files/0.92.0/windowmaker-0.92.0-gcc41.patch,
+ windowmaker-0.92.0-r1.ebuild:
+ Added patch to fix compilation with gcc-4.1. Thanks to Robert Marmorstein
+ <rmmarm AT wm DOT edu> for finding the patch; bug #113476
24 Dec 2005; Carsten Lohrke <carlo@gentoo.org>
windowmaker-0.91.0-r1.ebuild:
diff --git a/x11-wm/windowmaker/Manifest b/x11-wm/windowmaker/Manifest
index 49a99e17b01a..83470d5bffe6 100644
--- a/x11-wm/windowmaker/Manifest
+++ b/x11-wm/windowmaker/Manifest
@@ -10,6 +10,7 @@ MD5 0b1eb289596c8aa934b6c17362b0201c files/0.91.0/maximize-fix-0.9x.patch 1245
MD5 c41215f830e33a636a440ce389db01eb files/0.91.0/menufocus.patch 1554
MD5 84bc0e347cd23ca347219959362afa91 files/0.91.0/singleclick-shadeormaxopts-0.9x.patch2 7788
MD5 3a5eaebd5ccf7d3384c042e13f52bef1 files/0.91.0/wlist-0.9x.patch 2980
+MD5 b5ce486f7df03158abef49d88da24105 files/0.92.0/windowmaker-0.92.0-gcc41.patch 5212
MD5 b5304655d4ff5441989ab94a1bdc9506 files/digest-windowmaker-0.80.2-r2 144
MD5 b5304655d4ff5441989ab94a1bdc9506 files/digest-windowmaker-0.80.2-r4 144
MD5 8b11b75a0ece3b854bf47e03ded7e0ba files/digest-windowmaker-0.91.0-r1 144
@@ -21,4 +22,4 @@ MD5 350d1c8fc3f110fa9bbd0f7a681ec880 windowmaker-0.80.2-r2.ebuild 3463
MD5 056f320591b95b4adaec5b906ae25035 windowmaker-0.80.2-r4.ebuild 4094
MD5 0b7d5f0f23bea9a4793a92f25117d9f3 windowmaker-0.91.0-r1.ebuild 5881
MD5 6dfb07e767918268038ad952d0e38029 windowmaker-0.91.0-r7.ebuild 6800
-MD5 f2a0c01891e0932bb55aa936f807d7c0 windowmaker-0.92.0-r1.ebuild 5302
+MD5 da2c314adff61e6e790cd8e435891cb0 windowmaker-0.92.0-r1.ebuild 5353
diff --git a/x11-wm/windowmaker/files/0.92.0/windowmaker-0.92.0-gcc41.patch b/x11-wm/windowmaker/files/0.92.0/windowmaker-0.92.0-gcc41.patch
new file mode 100644
index 000000000000..431243517f45
--- /dev/null
+++ b/x11-wm/windowmaker/files/0.92.0/windowmaker-0.92.0-gcc41.patch
@@ -0,0 +1,131 @@
+--- NEW FILE windowmaker-gcc4-x86_64.patch ---
+--- WindowMaker-0.92.0/wrlib/x86_specific.c 2004-10-31 02:44:01.000000000 +0100
++++ WindowMaker-0.92.0/wrlib/x86_specific.c 2005-08-22 21:07:57.000000000 +0200
+@@ -98,15 +98,23 @@
+ int height,
+ int line_offset)
+ {
+- long long rrggbbaa;
+- long long pixel;
++ union {
++ long long rrggbbaa;
++ struct {short int rr, gg, bb, aa;} words;
++ } rrggbbaa;
++
++ union {
++ long long pixel;
++ struct {short int rr, gg, bb, aa;} words;
++ } pixel;
++
+ short *tmp_err;
+ short *tmp_nerr;
+ int x;
+
+ asm volatile
+ (
+- "pushal \n\t"
++ "pushl %%ebx \n\t"
+
+ // pack dr, dg and db into mm6
+ "movl %7, %%eax \n\t"
+@@ -290,7 +298,7 @@
+
+ ".Enda: \n\t" // THE END
+ "emms \n\t"
+- "popal \n\t"
++ "popl %%ebx \n\t"
+ :
+ :
+ "m" (image), // %0
+@@ -309,17 +317,18 @@
+ "m" (width), // %13
+ "m" (height), // %14
+ "m" (line_offset), // %15
+- "m" (rrggbbaa), // %16 (access to rr)
+- "m" ((*((short*)(&rrggbbaa)+1))), // %17 (access to gg)
+- "m" ((*((short*)(&rrggbbaa)+2))), // %18 (access to bb)
+- "m" ((*((short*)(&rrggbbaa)+3))), // %19 (access to aa)
+- "m" (pixel), // %20 (access to pixel.r)
+- "m" ((*((short*)(&pixel)+1))), // %21 (access to pixel.g)
+- "m" ((*((short*)(&pixel)+2))), // %22 (access to pixel.b)
+- "m" ((*((short*)(&pixel)+3))), // %23 (access to pixel.a)
++ "m" (rrggbbaa.rrggbbaa), // %16 (access to rr)
++ "m" (rrggbbaa.words.gg), // %17 (access to gg)
++ "m" (rrggbbaa.words.bb), // %18 (access to bb)
++ "m" (rrggbbaa.words.aa), // %19 (access to aa)
++ "m" (pixel.pixel), // %20 (access to pixel.r)
++ "m" (pixel.words.gg), // %21 (access to pixel.g)
++ "m" (pixel.words.bb), // %22 (access to pixel.b)
++ "m" (pixel.words.aa), // %23 (access to pixel.a)
+ "m" (tmp_err), // %24
+ "m" (tmp_nerr), // %25
+ "m" (x) // %26
++ : "eax", "ecx", "edx", "esi", "edi"
+ );
+ }
+
+@@ -342,8 +351,15 @@
+ int height,
+ int line_offset)
+ {
+- long long rrggbbaa;
+- long long pixel;
++ union {
++ long long rrggbbaa;
++ struct {short int rr, gg, bb, aa;} words;
++ } rrggbbaa;
++
++ union {
++ long long pixel;
++ struct {short int rr, gg, bb, aa;} words;
++ } pixel;
+
+ short *tmp_err;
+ short *tmp_nerr;
+@@ -354,7 +370,7 @@
+
+ asm volatile
+ (
+- "pushal \n\t"
++ "pushl %%ebx \n\t"
+
+ "movl %13, %%eax \n\t" // eax = width
+ "movl %%eax, %%ebx \n\t"
+@@ -424,7 +440,7 @@
+
+ ".Endc: \n\t" // THE END
+ "emms \n\t"
+- "popal \n\t"
++ "popl %%ebx \n\t"
+ :
+ :
+ "m" (image), // %0
+@@ -443,19 +459,20 @@
+ "m" (width), // %13
+ "m" (height), // %14
+ "m" (line_offset), // %15
+- "m" (rrggbbaa), // %16 (access to rr)
+- "m" ((*((short*)(&rrggbbaa)+1))), // %17 (access to gg)
+- "m" ((*((short*)(&rrggbbaa)+2))), // %18 (access to bb)
+- "m" ((*((short*)(&rrggbbaa)+3))), // %19 (access to aa)
+- "m" (pixel), // %20 (access to pixel.r)
+- "m" ((*((short*)(&pixel)+1))), // %21 (access to pixel.g)
+- "m" ((*((short*)(&pixel)+2))), // %22 (access to pixel.b)
+- "m" ((*((short*)(&pixel)+3))), // %23 (access to pixel.a)
++ "m" (rrggbbaa.rrggbbaa), // %16 (access to rr)
++ "m" (rrggbbaa.words.gg), // %17 (access to gg)
++ "m" (rrggbbaa.words.bb), // %18 (access to bb)
++ "m" (rrggbbaa.words.aa), // %19 (access to aa)
++ "m" (pixel.pixel), // %20 (access to pixel.r)
++ "m" (pixel.words.gg), // %21 (access to pixel.g)
++ "m" (pixel.words.bb), // %22 (access to pixel.b)
++ "m" (pixel.words.aa), // %23 (access to pixel.a)
+ "m" (tmp_err), // %24
+ "m" (tmp_nerr), // %25
+ "m" (x), // %26
+ "m" (w1), // %27
+ "m" (w2) // %28
++ : "eax", "ecx", "edx", "esi", "edi"
+ );
+ }
+
diff --git a/x11-wm/windowmaker/windowmaker-0.92.0-r1.ebuild b/x11-wm/windowmaker/windowmaker-0.92.0-r1.ebuild
index 29cfd9fe901f..ab12f13e2127 100644
--- a/x11-wm/windowmaker/windowmaker-0.92.0-r1.ebuild
+++ b/x11-wm/windowmaker/windowmaker-0.92.0-r1.ebuild
@@ -1,6 +1,6 @@
# Copyright 1999-2005 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/x11-wm/windowmaker/windowmaker-0.92.0-r1.ebuild,v 1.1 2005/07/06 23:07:18 fafhrd Exp $
+# $Header: /var/cvsroot/gentoo-x86/x11-wm/windowmaker/windowmaker-0.92.0-r1.ebuild,v 1.2 2005/12/28 22:31:26 halcy0n Exp $
inherit eutils gnustep-funcs flag-o-matic multilib
@@ -34,10 +34,11 @@ src_unpack() {
is-flag -fstack-protector && filter-flags -fstack-protector \
&& ewarn "CFLAG -fstack-protector has been disabled, as it is known to cause bugs with WindowMaker (bug #78051)" && ebeep 2
unpack ${A}
- cd ${S}
- epatch ${FILESDIR}/${PV/0.92/0.91}/singleclick-shadeormaxopts-0.9x.patch2 || die "single click and shade-or-maximize-options patch failed"
- epatch ${FILESDIR}/${PV/0.92/0.91}/wlist-0.9x.patch || die "window list patch failed"
+ cd "${S}"
+ epatch "${FILESDIR}"/${PV/0.92/0.91}/singleclick-shadeormaxopts-0.9x.patch2 || die "single click and shade-or-maximize-options patch failed"
+ epatch "${FILESDIR}"/${PV/0.92/0.91}/wlist-0.9x.patch || die "window list patch failed"
# epatch ${FILESDIR}/${PV}/64bit+endian-fixes-0.9x.patch || die "64-bit + endian fix patch failed"
+ epatch "${FILESDIR}"/${PV}/${P}-gcc41.patch
}
src_compile() {