summaryrefslogtreecommitdiff
path: root/x11-wm
diff options
context:
space:
mode:
authorDoug Barton <dougb@FreeBSD.org>2005-08-11 07:52:18 +0000
committerDoug Barton <dougb@FreeBSD.org>2005-08-11 07:52:18 +0000
commitfcc46e520d8eafbd001fa33ba83c48c09f2c240f (patch)
tree6f5d22bda4ca22b1a4bad8fc8097fe5b883f866a /x11-wm
parentUpdate to the 20050810 snapshot. Includes support for 7.x. (diff)
1. Move the include of bsd.port.pre.mk before OPTIONS based on a recent
post to -ports on this topic 2. Fix build on amd64 by not trying to inline asm code designed for i386 3. Add a patch to fix window positioning on amd64, from http://article.gmane.org/gmane.compw.window-managers.windowmaker.devel/749 2 and 3 provided/reminded by Dejan Lesjak <dejan.lesjak@ijs.si> Fixes for 2 and 3 tested by Dejan, and A Dude <adudek16@gmail.com>. Approved by: portmgr (krion)
Diffstat (limited to 'x11-wm')
-rw-r--r--x11-wm/windowmaker/Makefile6
-rw-r--r--x11-wm/windowmaker/files/patch-src_wmspec.c84
2 files changed, 89 insertions, 1 deletions
diff --git a/x11-wm/windowmaker/Makefile b/x11-wm/windowmaker/Makefile
index eaa87e913752..d78388947fd2 100644
--- a/x11-wm/windowmaker/Makefile
+++ b/x11-wm/windowmaker/Makefile
@@ -43,11 +43,15 @@ MANLANG= "" sk
MAN1= geticonset.1x getstyle.1x seticons.1x setstyle.1x wdwrite.1x \
wmaker.1x wmsetbg.1x wxcopy.1x wxpaste.1x
+.include <bsd.port.pre.mk>
+
OPTIONS= XINERAMA "Enable xinerama support" off \
XKB_STATUS "XKB keyboard language status support" off \
WM_LINGUAS "Enable support for additional locales" off
-.include <bsd.port.pre.mk>
+.if ${ARCH} == amd64
+CONFIGURE_ENV+= ac_cv_c_inline_asm=no
+.endif
.if defined(WITH_XINERAMA) || defined(PACKAGE_BUILDING)
CONFIGURE_ARGS+= --enable-xinerama
diff --git a/x11-wm/windowmaker/files/patch-src_wmspec.c b/x11-wm/windowmaker/files/patch-src_wmspec.c
new file mode 100644
index 000000000000..626630e5e1ac
--- /dev/null
+++ b/x11-wm/windowmaker/files/patch-src_wmspec.c
@@ -0,0 +1,84 @@
+--- src/wmspec.c.sav 2004-10-24 21:36:15.000000000 +0200
++++ src/wmspec.c 2005-01-26 17:13:54.266216856 +0100
+@@ -314,15 +314,15 @@
+ void
+ wNETWMUpdateDesktop(WScreen *scr)
+ {
+- CARD32 *views, sizes[2];
++ long *views, sizes[2];
+ int count, i;
+
+ if (scr->workspace_count==0)
+ return;
+
+ count = scr->workspace_count * 2;
+- views = wmalloc(sizeof(CARD32) * count);
+- /*memset(views, 0, sizeof(CARD32) * count);*/
++ views = wmalloc(sizeof(long) * count);
++ /*memset(views, 0, sizeof(long) * count);*/
+
+ #ifdef VIRTUAL_DESKTOP
+ sizes[0] = scr->workspaces[scr->current_workspace]->width;
+@@ -362,7 +362,7 @@
+ 0, 1, &count);
+ if (prop)
+ {
+- int desktop= *(CARD32*)prop;
++ int desktop= *(long*)prop;
+ XFree(prop);
+ return desktop;
+ }
+@@ -426,7 +426,7 @@
+ static void
+ updateShowDesktop(WScreen * scr, Bool show)
+ {
+- CARD32 foo;
++ long foo;
+
+ foo = (show == True);
+ XChangeProperty(dpy, scr->root_win, net_showing_desktop, XA_CARDINAL, 32,
+@@ -599,7 +599,7 @@
+ void
+ wNETWMUpdateWorkarea(WScreen *scr, WArea usableArea)
+ {
+- CARD32 *area;
++ long *area;
+ int count, i;
+
+ /* XXX: not Xinerama compatible,
+@@ -609,7 +609,7 @@
+ return;
+
+ count = scr->workspace_count * 4;
+- area = wmalloc(sizeof(CARD32) * count);
++ area = wmalloc(sizeof(long) * count);
+ for (i=0; i<scr->workspace_count; i++) {
+ area[4*i + 0] = usableArea.x1;
+ area[4*i + 1] = usableArea.y1;
+@@ -732,7 +732,7 @@
+ static void
+ updateWorkspaceCount(WScreen *scr) /* changeable */
+ {
+- CARD32 count;
++ long count;
+
+ count = scr->workspace_count;
+
+@@ -744,7 +744,7 @@
+ static void
+ updateCurrentWorkspace(WScreen *scr) /* changeable */
+ {
+- CARD32 count;
++ long count;
+
+ count = scr->current_workspace;
+
+@@ -791,7 +791,7 @@
+ static void
+ updateWorkspaceHint(WWindow *wwin, Bool fake, Bool del)
+ {
+- CARD32 l;
++ long l;
+
+ if (del) {
+ XDeleteProperty(dpy, wwin->client_win, net_wm_desktop);