diff --git a/desktop/evilwm/evilwm.SlackBuild b/desktop/evilwm/evilwm.SlackBuild index 02ec475737..c1621bf153 100644 --- a/desktop/evilwm/evilwm.SlackBuild +++ b/desktop/evilwm/evilwm.SlackBuild @@ -26,7 +26,7 @@ cd $(dirname $0) ; CWD=$(pwd) PRGNAM=evilwm VERSION=${VERSION:-1.4.3} -BUILD=${BUILD:-1} +BUILD=${BUILD:-2} TAG=${TAG:-_SBo} PKGTYPE=${PKGTYPE:-tgz} @@ -79,6 +79,8 @@ find -L . \ \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \ -exec chmod 644 {} \; +patch -p1 < "$CWD/fix-undef-soliddrag.patch" || exit 1 + CFLAGS="$SLKCFLAGS" \ ./configure make diff --git a/desktop/evilwm/fix-undef-soliddrag.patch b/desktop/evilwm/fix-undef-soliddrag.patch new file mode 100644 index 0000000000..de7f97ba44 --- /dev/null +++ b/desktop/evilwm/fix-undef-soliddrag.patch @@ -0,0 +1,76 @@ +diff --git a/ChangeLog b/ChangeLog +index 8c31b4d..0127038 100644 +--- a/ChangeLog ++++ b/ChangeLog +@@ -1,3 +1,5 @@ ++ * Fix compilation with SOLIDDRAG undefined [jake] ++ + Version 1.4.3, Sat Mar 9 2024 + + * Force dock windows to have _NET_WM_STATE_FOCUSED +diff --git a/client_move.c b/client_move.c +index 1dacd6e..3c7140a 100644 +--- a/client_move.c ++++ b/client_move.c +@@ -230,7 +230,7 @@ void client_move_drag(struct client *c, unsigned button) { + #ifdef INFOBANNER_MOVERESIZE + create_info_window(c); + #endif +- if (option.no_solid_drag) { ++ if (OPTION_NO_SOLID_DRAG) { + XGrabServer(display.dpy); + draw_outline(c); // draw + } +@@ -242,7 +242,7 @@ void client_move_drag(struct client *c, unsigned button) { + case MotionNotify: + if (ev.xmotion.root != c->screen->root) + break; +- if (option.no_solid_drag) { ++ if (OPTION_NO_SOLID_DRAG) { + draw_outline(c); // erase + XUngrabServer(display.dpy); + } +@@ -254,7 +254,7 @@ void client_move_drag(struct client *c, unsigned button) { + #ifdef INFOBANNER_MOVERESIZE + update_info_window(c); + #endif +- if (option.no_solid_drag) { ++ if (OPTION_NO_SOLID_DRAG) { + XSync(display.dpy, False); + XGrabServer(display.dpy); + draw_outline(c); // draw +@@ -269,7 +269,7 @@ void client_move_drag(struct client *c, unsigned button) { + case ButtonRelease: + if (ev.xbutton.button != button) + continue; +- if (option.no_solid_drag) { ++ if (OPTION_NO_SOLID_DRAG) { + draw_outline(c); // erase + XUngrabServer(display.dpy); + } +@@ -277,7 +277,7 @@ void client_move_drag(struct client *c, unsigned button) { + remove_info_window(); + #endif + XUngrabPointer(display.dpy, CurrentTime); +- if (option.no_solid_drag) { ++ if (OPTION_NO_SOLID_DRAG) { + // For solid drags, the client was + // moved with the mouse. For non-solid + // drags, we need a final move/raise: +diff --git a/evilwm.h b/evilwm.h +index e46cb78..7f2aedf 100644 +--- a/evilwm.h ++++ b/evilwm.h +@@ -52,8 +52,10 @@ struct options { + + extern struct options option; + +-#ifndef SOLIDDRAG +-# define option.no_solid_drag 1 ++#ifdef SOLIDDRAG ++# define OPTION_NO_SOLID_DRAG (option.no_solid_drag) ++#else ++# define OPTION_NO_SOLID_DRAG (1) + #endif + + extern unsigned numlockmask;