gentoo-ebuilds/net-misc/nx/files/nx-3.5.99.27-gcc15-musl.patch
Cristian Othón Martínez Vera 3d30c71b98
net-misc/nx: fix compilation for gcc15 and musl
Closes: https://bugs.gentoo.org/945519
Signed-off-by: Cristian Othón Martínez Vera <cfuga@cfuga.mx>
Part-of: https://github.com/gentoo/gentoo/pull/44934
Closes: https://github.com/gentoo/gentoo/pull/44934
Signed-off-by: Bernard Cafarelli <voyageur@gentoo.org>
2025-12-08 20:50:25 +01:00

104 lines
3.6 KiB
Diff

Bug: https://bugs.gentoo.org/945519
Patch copied from Alpine Linux.
https://gitlab.alpinelinux.org/strophy/aports/-/commit/10d31cd725f131693153f003893f8a9c41fec5d9
--- a/nx-X11/programs/Xserver/dbe/dbe.c
+++ b/nx-X11/programs/Xserver/dbe/dbe.c
@@ -56,7 +56,7 @@
/* GLOBALS */
/* Per-screen initialization functions [init'ed by DbeRegisterFunction()] */
-static Bool (* DbeInitFunct[MAXSCREENS])(); /* pScreen, pDbeScreenPriv */
+static Bool (* DbeInitFunct[MAXSCREENS])(ScreenPtr, DbeScreenPrivPtr); /* pScreen, pDbeScreenPriv */
/* These are static globals copied to DBE's screen private for use by DDX */
static int dbeScreenPrivIndex;
@@ -89,7 +89,7 @@ static Bool firstRegistrationPass = TRUE;
*****************************************************************************/
void
-DbeRegisterFunction(ScreenPtr pScreen, Bool (*funct) (/* ??? */))
+DbeRegisterFunction(ScreenPtr pScreen, Bool (*funct) (ScreenPtr, DbeScreenPrivPtr))
{
int i;
--- a/nx-X11/programs/Xserver/dix/window.c
+++ b/nx-X11/programs/Xserver/dix/window.c
@@ -375,7 +375,7 @@ AllocateWindow(ScreenPtr pScreen)
else
ppriv->ptr = (void *)NULL;
}
-#if _XSERVER64
+#ifdef _XSERVER64
pWin->drawable.pad0 = 0;
pWin->drawable.pad1 = 0;
#endif
--- a/nx-X11/programs/Xserver/hw/nxagent/Clipboard.h
+++ b/nx-X11/programs/Xserver/hw/nxagent/Clipboard.h
@@ -26,6 +26,15 @@
#ifndef __Clipboard_H__
#define __Clipboard_H__
+#ifndef _XSERVER64
+typedef unsigned long XlibAtom;
+#else
+typedef unsigned long Atom64;
+#define XlibAtom Atom64
+#endif
+
+typedef union _XEvent XEvent;
+
/*
* Queried at clipboard initialization.
*/
@@ -58,17 +67,10 @@ extern int nxagentConvertSelection(ClientPtr client, WindowPtr pWin, Atom select
Window requestor, Atom property, Atom target, Time time);
extern void nxagentHandleSelectionClearFromXServerByIndex(int index);
-#ifdef XEvent
extern void nxagentHandleSelectionClearFromXServerByAtom(XlibAtom sel);
extern void nxagentHandleSelectionClearFromXServer(XEvent *X);
extern void nxagentHandleSelectionRequestFromXServer(XEvent *X);
extern void nxagentHandleSelectionNotifyFromXServer(XEvent *X);
-#else
-extern void nxagentHandleSelectionClearFromXServerByAtom();
-extern void nxagentHandleSelectionClearFromXServer();
-extern void nxagentHandleSelectionRequestFromXServer();
-extern void nxagentHandleSelectionNotifyFromXServer();
-#endif
extern int nxagentFindCurrentSelectionIndex(Atom sel);
/*
--- a/nx-X11/programs/Xserver/hw/nxagent/Screen.c
+++ b/nx-X11/programs/Xserver/hw/nxagent/Screen.c
@@ -1533,8 +1533,8 @@ N/A
pScreen->SaveScreen = nxagentSaveScreen;
pScreen->GetImage = nxagentGetImage;
pScreen->GetSpans = nxagentGetSpans;
- pScreen->PointerNonInterestBox = (void (*)()) 0;
- pScreen->SourceValidate = (void (*)()) 0;
+ pScreen->PointerNonInterestBox = NULL;
+ pScreen->SourceValidate = NULL;
pScreen->CreateScreenResources = nxagentCreateScreenResources;
@@ -1610,12 +1610,12 @@ N/A
* Backing store procedures.
*/
- pScreen->SaveDoomedAreas = (void (*)()) 0;
- pScreen->RestoreAreas = (RegionPtr (*)()) 0;
- pScreen->ExposeCopy = (void (*)()) 0;
- pScreen->TranslateBackingStore = (RegionPtr (*)()) 0;
- pScreen->ClearBackingStore = (RegionPtr (*)()) 0;
- pScreen->DrawGuarantee = (void (*)()) 0;
+ pScreen->SaveDoomedAreas = NULL;
+ pScreen->RestoreAreas = NULL;
+ pScreen->ExposeCopy = NULL;
+ pScreen->TranslateBackingStore = NULL;
+ pScreen->ClearBackingStore = NULL;
+ pScreen->DrawGuarantee = NULL;
if (enableBackingStore)
{