gentoo-ebuilds/media-gfx/fbida/files/fbida-2.14-fix_c23.patch
Nicolas PARLANT 845b010e20
media-gfx/fbida: add 2.14_p20241216
update EAPI 7->8
update license to GPL2'+' (see fbida.spec)

add xdg for icon/desktopfile

restore useflags compare to live ebuild

deps :
remove blocker for media-gfx/fbi, removed
drop media-libs/libepoxy media-libs/mesa (gl removed)
curl support has been dropped
udev is required
make fbcon optional with dev-libs/libtsm and dev-libs/glib2

fix gcc-15/c23

Closes: https://bugs.gentoo.org/943772
Closes: https://bugs.gentoo.org/955090
Signed-off-by: Nicolas PARLANT <nicolas.parlant@parhuet.fr>
Part-of: https://github.com/gentoo/gentoo/pull/43858
Signed-off-by: Sam James <sam@gentoo.org>
2025-09-20 10:15:37 +01:00

591 lines
16 KiB
Diff

Rebased from an maintained fork of motif :
https://github.com/dimmus/motif/blob/master/src/examples/lib/Xmd/RegEdit.c
https://github.com/kraxel/fbida/pull/6.patch
--- a/RegEdit.c
+++ b/RegEdit.c
@@ -34,19 +34,19 @@
/* static forward. move from global in the original Editres code */
-static void _XEditResCheckMessages();
-static void _XEditResPutString8();
-static void _XEditResPut8();
-static void _XEditResPut16();
-static void _XEditResPut32();
-static void _XEditResPutWidgetInfo();
-static void _XEditResResetStream();
-static Boolean _XEditResGet8();
-static Boolean _XEditResGet16();
-static Boolean _XEditResGetSigned16();
-static Boolean _XEditResGet32();
-static Boolean _XEditResGetString8();
-static Boolean _XEditResGetWidgetInfo();
+static void _XEditResCheckMessages(Widget w, XtPointer data, XEvent *event, Boolean *cont);
+static void _XEditResPutString8(ProtocolStream *stream, char *str);
+static void _XEditResPut8(ProtocolStream *stream, unsigned int value);
+static void _XEditResPut16(ProtocolStream *stream, unsigned int value);
+static void _XEditResPut32(ProtocolStream *stream, unsigned long value);
+static void _XEditResPutWidgetInfo(ProtocolStream *stream, WidgetInfo *info);
+static void _XEditResResetStream(ProtocolStream *stream);
+static Boolean _XEditResGet8(ProtocolStream *stream, unsigned char *val);
+static Boolean _XEditResGet16(ProtocolStream *stream, unsigned short *val);
+static Boolean _XEditResGetSigned16(ProtocolStream *stream, short *val);
+static Boolean _XEditResGet32(ProtocolStream *stream, unsigned long *val);
+static Boolean _XEditResGetString8(ProtocolStream *stream, char **str);
+static Boolean _XEditResGetWidgetInfo(ProtocolStream *stream, WidgetInfo *info);
/* the only entry point here */
void
@@ -140,16 +140,24 @@ static Atom res_editor_command, res_editor_protocol, client_value;
static Globals globals;
-static void SendFailure(), SendCommand(), InsertWidget(), ExecuteCommand();
-static void FreeEvent(), ExecuteSetValues(), ExecuteGetGeometry();
-static void ExecuteGetResources();
-
-static void GetCommand();
-static void LoadResources();
-static Boolean IsChild();
-static void DumpChildren();
-static char *DumpWidgets(), *DoSetValues(), *DoFindChild();
-static char *DoGetGeometry(), *DoGetResources();
+static void SendFailure(Widget w, Atom sel, ResIdent ident, char *message);
+static void SendCommand(Widget w, Atom sel, ResIdent ident, EditresCommand command, ProtocolStream *stream);
+static void InsertWidget(ProtocolStream *stream, Widget w);
+static void ExecuteCommand(Widget w, Atom sel, ResIdent ident, EditresEvent *event);
+static void FreeEvent(EditresEvent *event);
+static void ExecuteSetValues(Widget w, SetValuesEvent *sv_event, WidgetInfo *entry, ProtocolStream *stream, unsigned short *count);
+static void ExecuteGetGeometry(Widget w, ProtocolStream *stream);
+static void ExecuteGetResources(Widget w, ProtocolStream *stream);
+
+static void GetCommand(Widget w, XtPointer data, Atom *selection, Atom *type, XtPointer value, unsigned long *length, int *format);
+static void LoadResources(Widget w);
+static Boolean IsChild(Widget top, Widget parent, Widget child);
+static void DumpChildren(Widget w, ProtocolStream *stream, unsigned short *count);
+static char *DumpWidgets(Widget w, EditresEvent *event, ProtocolStream *stream);
+static char *DoSetValues(Widget w, EditresEvent *event, ProtocolStream *stream);
+static char *DoFindChild(Widget w, EditresEvent *event, ProtocolStream *stream);
+static char *DoGetGeometry(Widget w, EditresEvent *event, ProtocolStream *stream);
+static char *DoGetResources(Widget w, EditresEvent *event, ProtocolStream *stream);
/************************************************************
*
@@ -170,11 +178,7 @@ static char *DoGetGeometry(), *DoGetResources();
/* ARGSUSED */
static void
-_XEditResCheckMessages(w, data, event, cont)
-Widget w;
-XtPointer data;
-XEvent *event;
-Boolean *cont;
+_XEditResCheckMessages(Widget w, XtPointer data, XEvent *event, Boolean *cont)
{
Time time;
ResIdent ident;
@@ -208,7 +212,7 @@ Boolean *cont;
if (c_event->data.l[3] != CURRENT_PROTOCOL_VERSION) {
_XEditResResetStream(&globals.stream);
_XEditResPut8(&globals.stream, CURRENT_PROTOCOL_VERSION);
- SendCommand(w, res_comm, ident, ProtocolMismatch, &globals.stream);
+ SendCommand(w, res_comm, ident, (EditresCommand)ProtocolMismatch, &globals.stream);
return;
}
@@ -231,12 +235,7 @@ Boolean *cont;
#define ERROR_MESSAGE ("Client: Improperly formatted protocol request")
static EditresEvent *
-BuildEvent(w, sel, data, ident, length)
-Widget w;
-Atom sel;
-XtPointer data;
-ResIdent ident;
-unsigned long length;
+BuildEvent(Widget w, Atom sel, XtPointer data, ResIdent ident, unsigned long length)
{
EditresEvent * event;
ProtocolStream alloc_stream, *stream;
@@ -253,7 +252,7 @@ unsigned long length;
*/
if (length < HEADER_SIZE) {
- SendFailure(w, sel, ident, Failure, ERROR_MESSAGE);
+ SendFailure(w, sel, ident, ERROR_MESSAGE);
return(NULL);
}
@@ -375,8 +374,7 @@ unsigned long length;
*/
static void
-FreeEvent(event)
-EditresEvent * event;
+FreeEvent(EditresEvent *event)
{
if (event->any_event.widgets != NULL) {
XtFree((char *)event->any_event.widgets->ids);
@@ -401,12 +399,7 @@ EditresEvent * event;
/* ARGSUSED */
static void
-GetCommand(w, data, selection, type, value, length, format)
-Widget w;
-XtPointer data, value;
-Atom *selection, *type;
-unsigned long *length;
-int * format;
+GetCommand(Widget w, XtPointer data, Atom *selection, Atom *type, XtPointer value, unsigned long *length, int *format)
{
ResIdent ident = (ResIdent) (long) data;
EditresEvent * event;
@@ -433,13 +426,9 @@ int * format;
/* ARGSUSED */
static void
-ExecuteCommand(w, sel, ident, event)
-Widget w;
-Atom sel;
-ResIdent ident;
-EditresEvent * event;
+ExecuteCommand(Widget w, Atom sel, ResIdent ident, EditresEvent *event)
{
- char * (*func)();
+ char * (*func)(Widget w, EditresEvent *event, ProtocolStream *stream);
char * str;
if (globals.block == BlockAll) {
@@ -481,7 +470,7 @@ EditresEvent * event;
_XEditResResetStream(&globals.stream);
if ((str = (*func)(w, event, &globals.stream)) == NULL)
- SendCommand(w, sel, ident, PartialSuccess, &globals.stream);
+ SendCommand(w, sel, ident, (EditresCommand)PartialSuccess, &globals.stream);
else {
SendFailure(w, sel, ident, str);
XtFree(str);
@@ -502,13 +491,8 @@ EditresEvent * event;
/* ARGSUSED */
static Boolean
-ConvertReturnCommand(w, selection, target,
- type_ret, value_ret, length_ret, format_ret)
-Widget w;
-Atom * selection, * target, * type_ret;
-XtPointer *value_ret;
-unsigned long * length_ret;
-int * format_ret;
+ConvertReturnCommand(Widget w, Atom *selection, Atom *target,
+ Atom *type_ret, XtPointer *value_ret, unsigned long *length_ret, int *format_ret)
{
/*
* I assume the intrinsics give me the correct selection back.
@@ -533,10 +517,7 @@ int * format_ret;
/* ARGSUSED */
static void
-CommandDone(widget, selection, target)
-Widget widget;
-Atom *selection;
-Atom *target;
+CommandDone(Widget widget, Atom *selection, Atom *target)
{
/* Keep the toolkit from automaticaly freeing the selection value */
}
@@ -551,15 +532,11 @@ Atom *target;
*/
static void
-SendFailure(w, sel, ident, str)
-Widget w;
-Atom sel;
-ResIdent ident;
-char * str;
+SendFailure(Widget w, Atom sel, ResIdent ident, char *str)
{
_XEditResResetStream(&globals.stream);
_XEditResPutString8(&globals.stream, str);
- SendCommand(w, sel, ident, Failure, &globals.stream);
+ SendCommand(w, sel, ident, (EditresCommand)Failure, &globals.stream);
}
/* Function Name: BuildReturnPacket
@@ -571,10 +548,7 @@ char * str;
*/
static XtPointer
-BuildReturnPacket(ident, command, stream)
-ResIdent ident;
-EditresCommand command;
-ProtocolStream * stream;
+BuildReturnPacket(ResIdent ident, EditresCommand command, ProtocolStream *stream)
{
long old_alloc, old_size;
unsigned char * old_current;
@@ -619,12 +593,7 @@ ProtocolStream * stream;
*/
static void
-SendCommand(w, sel, ident, command, stream)
-Widget w;
-Atom sel;
-ResIdent ident;
-EditresCommand command;
-ProtocolStream * stream;
+SendCommand(Widget w, Atom sel, ResIdent ident, EditresCommand command, ProtocolStream *stream)
{
BuildReturnPacket(ident, command, stream);
globals.command_stream = stream;
@@ -656,9 +625,7 @@ ProtocolStream * stream;
*/
static int
-FindChildren(parent, children, normal, popup)
-Widget parent, **children;
-Boolean normal, popup;
+FindChildren(Widget parent, Widget **children, Boolean normal, Boolean popup)
{
CompositeWidget cw = (CompositeWidget) parent;
int i, num_children, current = 0;
@@ -698,8 +665,7 @@ Boolean normal, popup;
*/
static Boolean
-IsChild(top, parent, child)
-Widget top, parent, child;
+IsChild(Widget top, Widget parent, Widget child)
{
int i, num_children;
Widget * children;
@@ -728,9 +694,7 @@ Widget top, parent, child;
*/
static char *
-VerifyWidget(w, info)
-Widget w;
-WidgetInfo *info;
+VerifyWidget(Widget w, WidgetInfo *info)
{
Widget top;
@@ -774,10 +738,7 @@ WidgetInfo *info;
*/
static char *
-DoSetValues(w, event, stream)
-Widget w;
-EditresEvent * event;
-ProtocolStream * stream;
+DoSetValues(Widget w, EditresEvent *event, ProtocolStream *stream)
{
char * str;
register unsigned i;
@@ -819,9 +780,7 @@ ProtocolStream * stream;
/* ARGSUSED */
static void
-HandleToolkitErrors(name, type, class, msg, params, num_params)
-String name, type, class, msg, *params;
-Cardinal * num_params;
+HandleToolkitErrors(String name, String type, String class, String msg, String *params, Cardinal *num_params)
{
SVErrorInfo * info = &globals.error_info;
char buf[BUFSIZ];
@@ -863,12 +822,7 @@ Cardinal * num_params;
*/
static void
-ExecuteSetValues(w, sv_event, entry, stream, count)
-Widget w;
-SetValuesEvent * sv_event;
-WidgetInfo * entry;
-ProtocolStream * stream;
-unsigned short * count;
+ExecuteSetValues(Widget w, SetValuesEvent *sv_event, WidgetInfo *entry, ProtocolStream *stream, unsigned short *count)
{
XtErrorMsgHandler old;
@@ -907,10 +861,7 @@ unsigned short * count;
/* ARGSUSED */
static char *
-DumpWidgets(w, event, stream)
-Widget w;
-EditresEvent * event; /* UNUSED */
-ProtocolStream * stream;
+DumpWidgets(Widget w, EditresEvent *event, ProtocolStream *stream)
{
unsigned short count = 0;
@@ -950,8 +901,7 @@ ProtocolStream * stream;
* go that far. Then, we test whether it is an applicationShellWidget
* class by looking for an explicit class name. Seems pretty safe.
*/
-static Bool isApplicationShell(w)
- Widget w;
+static Bool isApplicationShell(Widget w)
{
register WidgetClass c;
@@ -965,10 +915,7 @@ static Bool isApplicationShell(w)
}
static void
-DumpChildren(w, stream, count)
-Widget w;
-ProtocolStream * stream;
-unsigned short *count;
+DumpChildren(Widget w, ProtocolStream *stream, unsigned short *count)
{
int i, num_children;
Widget *children;
@@ -1024,10 +971,7 @@ unsigned short *count;
*/
static char *
-DoGetGeometry(w, event, stream)
-Widget w;
-EditresEvent * event;
-ProtocolStream * stream;
+DoGetGeometry(Widget w, EditresEvent *event, ProtocolStream *stream)
{
unsigned i;
char * str;
@@ -1061,9 +1005,7 @@ ProtocolStream * stream;
*/
static void
-ExecuteGetGeometry(w, stream)
-Widget w;
-ProtocolStream * stream;
+ExecuteGetGeometry(Widget w, ProtocolStream *stream)
{
int i;
Boolean mapped_when_man;
@@ -1137,9 +1079,7 @@ ProtocolStream * stream;
*/
static Boolean
-PositionInChild(child, x, y)
-Widget child;
-int x, y;
+PositionInChild(Widget child, int x, int y)
{
Arg args[6];
Cardinal num;
@@ -1192,9 +1132,7 @@ int x, y;
*/
static Widget
-_FindChild(parent, x, y)
-Widget parent;
-int x, y;
+_FindChild(Widget parent, int x, int y)
{
Widget * children;
int i = FindChildren(parent, &children, TRUE, FALSE);
@@ -1224,10 +1162,7 @@ int x, y;
*/
static char *
-DoFindChild(w, event, stream)
-Widget w;
-EditresEvent * event;
-ProtocolStream * stream;
+DoFindChild(Widget w, EditresEvent *event, ProtocolStream *stream)
{
char * str;
Widget parent, child;
@@ -1264,10 +1199,7 @@ ProtocolStream * stream;
*/
static char *
-DoGetResources(w, event, stream)
-Widget w;
-EditresEvent * event;
-ProtocolStream * stream;
+DoGetResources(Widget w, EditresEvent *event, ProtocolStream *stream)
{
unsigned int i;
char * str;
@@ -1302,9 +1234,7 @@ ProtocolStream * stream;
*/
static void
-ExecuteGetResources(w, stream)
-Widget w;
-ProtocolStream * stream;
+ExecuteGetResources(Widget w, ProtocolStream *stream)
{
XtResourceList norm_list, cons_list;
Cardinal num_norm, num_cons;
@@ -1365,9 +1295,7 @@ ProtocolStream * stream;
*/
static void
-InsertWidget(stream, w)
-ProtocolStream * stream;
-Widget w;
+InsertWidget(ProtocolStream *stream, Widget w)
{
Widget temp;
unsigned long * widget_list;
@@ -1408,9 +1336,7 @@ Widget w;
*/
static void
-_XEditResPutString8(stream, str)
-ProtocolStream * stream;
-char * str;
+_XEditResPutString8(ProtocolStream *stream, char *str)
{
int i, len = strlen(str);
@@ -1427,9 +1353,7 @@ char * str;
*/
static void
-_XEditResPut8(stream, value)
-ProtocolStream * stream;
-unsigned int value;
+_XEditResPut8(ProtocolStream *stream, unsigned int value)
{
unsigned char temp;
@@ -1455,9 +1379,7 @@ unsigned int value;
*/
static void
-_XEditResPut16(stream, value)
-ProtocolStream * stream;
-unsigned int value;
+_XEditResPut16(ProtocolStream *stream, unsigned int value)
{
_XEditResPut8(stream, (value >> XER_NBBY) & BYTE_MASK);
_XEditResPut8(stream, value & BYTE_MASK);
@@ -1471,9 +1393,7 @@ unsigned int value;
*/
static void
-_XEditResPut32(stream, value)
-ProtocolStream * stream;
-unsigned long value;
+_XEditResPut32(ProtocolStream *stream, unsigned long value)
{
int i;
@@ -1489,9 +1409,7 @@ unsigned long value;
*/
static void
-_XEditResPutWidgetInfo(stream, info)
-ProtocolStream * stream;
-WidgetInfo * info;
+_XEditResPutWidgetInfo(ProtocolStream *stream, WidgetInfo *info)
{
unsigned int i;
@@ -1513,8 +1431,7 @@ WidgetInfo * info;
*/
static void
-_XEditResResetStream(stream)
-ProtocolStream * stream;
+_XEditResResetStream(ProtocolStream *stream)
{
stream->current = stream->top;
stream->size = 0;
@@ -1545,9 +1462,7 @@ ProtocolStream * stream;
*/
static Boolean
-_XEditResGet8(stream, val)
-ProtocolStream * stream;
-unsigned char * val;
+_XEditResGet8(ProtocolStream *stream, unsigned char *val)
{
if (stream->size < (stream->current - stream->top))
return(FALSE);
@@ -1565,9 +1480,7 @@ unsigned char * val;
*/
static Boolean
-_XEditResGet16(stream, val)
-ProtocolStream * stream;
-unsigned short * val;
+_XEditResGet16(ProtocolStream *stream, unsigned short *val)
{
unsigned char temp1, temp2;
@@ -1586,9 +1499,7 @@ unsigned short * val;
*/
static Boolean
-_XEditResGetSigned16(stream, val)
-ProtocolStream * stream;
-short * val;
+_XEditResGetSigned16(ProtocolStream *stream, short *val)
{
unsigned char temp1, temp2;
@@ -1615,9 +1526,7 @@ short * val;
*/
static Boolean
-_XEditResGet32(stream, val)
-ProtocolStream * stream;
-unsigned long * val;
+_XEditResGet32(ProtocolStream *stream, unsigned long *val)
{
unsigned short temp1, temp2;
@@ -1637,9 +1546,7 @@ unsigned long * val;
*/
static Boolean
-_XEditResGetString8(stream, str)
-ProtocolStream * stream;
-char ** str;
+_XEditResGetString8(ProtocolStream *stream, char **str)
{
unsigned short len;
register unsigned i;
@@ -1670,9 +1577,7 @@ char ** str;
*/
static Boolean
-_XEditResGetWidgetInfo(stream, info)
-ProtocolStream * stream;
-WidgetInfo * info;
+_XEditResGetWidgetInfo(ProtocolStream *stream, WidgetInfo *info)
{
unsigned int i;
@@ -1708,14 +1613,10 @@ WidgetInfo * info;
/* ARGSUSED */
static Boolean
-CvtStringToBlock(dpy, args, num_args, from_val, to_val, converter_data)
-Display * dpy;
-XrmValue * args;
-Cardinal * num_args;
-XrmValue * from_val, * to_val;
-XtPointer * converter_data;
+CvtStringToBlock(Display *dpy, XrmValue *args, Cardinal *num_args, XrmValue *from_val, XrmValue *to_val, XtPointer *converter_data)
{
char ptr[BUFSIZ];
+ ptr[0]='\0';
static EditresBlock block;
/* XmuCopyISOLatin1Lowered(ptr, from_val->addr);*/
@@ -1763,8 +1664,7 @@ XtPointer * converter_data;
*/
static void
-LoadResources(w)
-Widget w;
+LoadResources(Widget w)
{
static XtResource resources[] = {
{"editresBlock", "EditresBlock", XtREditresBlock, sizeof(EditresBlock),