diff options
Diffstat (limited to 'x11-misc')
-rw-r--r-- | x11-misc/Manifest.gz | bin | 47007 -> 47017 bytes | |||
-rw-r--r-- | x11-misc/xcb/Manifest | 2 | ||||
-rw-r--r-- | x11-misc/xcb/files/xcb-modern-c-porting.patch | 342 | ||||
-rw-r--r-- | x11-misc/xcb/xcb-2.4-r2.ebuild | 59 |
4 files changed, 403 insertions, 0 deletions
diff --git a/x11-misc/Manifest.gz b/x11-misc/Manifest.gz Binary files differindex 7a191b42751a..1d7a1ff749c7 100644 --- a/x11-misc/Manifest.gz +++ b/x11-misc/Manifest.gz diff --git a/x11-misc/xcb/Manifest b/x11-misc/xcb/Manifest index ee418ad01fa9..d10b75134e80 100644 --- a/x11-misc/xcb/Manifest +++ b/x11-misc/xcb/Manifest @@ -1,3 +1,5 @@ +AUX xcb-modern-c-porting.patch 8844 BLAKE2B 9747634713a24352a9d4bb78d3d7383669037b8b72b3940f4d7cc51e9340e2bbfec5201e6410d0c0754219f79f2e437ca64632265119251e1b674b1f5de7d57f SHA512 90a8c16a41fc74d221d272470df1355cff14c45c55957182bd6d06d459e2eaa44b9a844e6a138d196d43d9b2769f70f3364a6dc14d1106e87efaaac4756aaafe DIST xcb-2.4.tar.gz 19830 BLAKE2B 7808021c2781421e4d609c27516f8a45195999bd75c82935c84048852f08e2656d6693abd3993e919b9740b11252da5cb15dcbe73602d715390839391ca75cb4 SHA512 cc612231cd61507a1af1a12fab7684b074ec99ec87e82bcba13dba215d4569c0605d3861f40d858f87da9b027c440a02f03b18a968c1d73ab08b8ee41e644948 EBUILD xcb-2.4-r1.ebuild 974 BLAKE2B aadc97ee88dc0ecf32935fd11b72c0a771a15d17d19896493b1bb04d5cec97eca8c9ff4cc8ed2279a018d253e48d971763b6819bc2b3c3ef82a8a745aa2fd93a SHA512 f81d9dc494c36c6a7aec8b7e715760a73c70daad4ea5b4aec34cecb4491198c85e55f03b8f8745fe1275e4a55d4f7336077a26a7d176abd68fee7303a94689c6 +EBUILD xcb-2.4-r2.ebuild 1034 BLAKE2B 2137414e3c2136b833226aa879c4d6b3a148a7bb93b6b7b2d45b165373f3125d6d19811c354e38aca880afd778d565329e4bac91228def89730111698ee64429 SHA512 8f857bd6d9e096c1c17b7e86e19414833ce1e1f29e75e8a83e5799c6fc9b06876f639a9f51ed1292a6af406b8d0aca5165882517c799fc62c83a64cd549befda MISC metadata.xml 277 BLAKE2B ebaa8353413cfc5519fce99f8627c71cf765fc6d42b42651e232274de315487c156d45dcb23a401dffb8f112600b0dadd56f93d2283ff86b4293dc5490ad4059 SHA512 c8ef9069153b124118a6be64375c6954ccc6f518a13805e4ff1c33c9cec136170132a580c4a9781930b709c93678c94d6448291625de34d18fea41bfd17f685d diff --git a/x11-misc/xcb/files/xcb-modern-c-porting.patch b/x11-misc/xcb/files/xcb-modern-c-porting.patch new file mode 100644 index 000000000000..39c8173d53ba --- /dev/null +++ b/x11-misc/xcb/files/xcb-modern-c-porting.patch @@ -0,0 +1,342 @@ +diff --git a/xcb.c b/xcb.c +index 2c990a3..ac9fec2 100644 +--- a/xcb.c ++++ b/xcb.c +@@ -262,13 +262,8 @@ XCreateFontSetWithGuess (Display * d, const char *pattern, char ***miss, int *n_ + + static + Boolean +-CvtStringToFontSet (dpy, args, num_args, fromVal, toVal, closure_ret) +- Display *dpy; +- XrmValuePtr args; +- Cardinal *num_args; +- XrmValuePtr fromVal; +- XrmValuePtr toVal; +- XtPointer *closure_ret; ++CvtStringToFontSet (Display *dpy, XrmValuePtr args, Cardinal *num_args, ++ XrmValuePtr fromVal, XrmValuePtr toVal, XtPointer *closure_ret) + { + XFontSet f; + char **missing_charset_list; +@@ -299,10 +294,7 @@ CvtStringToFontSet (dpy, args, num_args, fromVal, toVal, closure_ret) + * Fetch the contents of cut buffer n from the root window. + */ + static char * +-fetch_buffer (a, nb, force_mb) +- Atom a; +- int *nb; +- int force_mb; ++fetch_buffer (Atom a, int *nb, int force_mb) + { + unsigned long after; + char **list; +@@ -338,11 +330,7 @@ fetch_buffer (a, nb, force_mb) + * Store the string p into cut buffer n on the root window. + */ + static void +-store_buffer (p, nb, atom, force_mb) +- char *p; +- int nb; +- Atom atom; +- int force_mb; ++store_buffer (char *p, int nb, Atom atom, int force_mb) + { + XTextProperty pt; + +@@ -359,8 +347,7 @@ store_buffer (p, nb, atom, force_mb) + * Add an atom to the program's atom cache. + */ + static Atom +-get_atom (n, ifexists) +- int n, ifexists; ++get_atom (int n, int ifexists) + { + char tmp[32]; + +@@ -403,10 +390,7 @@ initialize_properties (void) + * Draw a string in the window with top-left corner justification. + */ + static void +-place_text (cb, str, len, y) +- CbWidget cb; +- char *str; +- int len, y; ++place_text (CbWidget cb, char *str, int len, int y) + { + int cols; + GC gc; +@@ -439,10 +423,8 @@ place_text (cb, str, len, y) + */ + + static void +-cb_initialize (req, wdg, args, nargs) /*ARGSUSED */ +- Widget req, wdg; +- ArgList args; +- Cardinal *nargs; ++cb_initialize (Widget req, Widget wdg, ++ ArgList args, Cardinal *nargs) /*ARGSUSED */ + { + CbWidget cb = (CbWidget) wdg; + XFontSetExtents *xfe = XExtentsOfFontSet (cb->fontset); +@@ -455,10 +437,7 @@ cb_initialize (req, wdg, args, nargs) /*ARGSUSED */ + } + + static void +-cb_realize (wdg, mask, attrs) +- Widget wdg; +- XtValueMask *mask; +- XSetWindowAttributes *attrs; ++cb_realize (Widget wdg, XtValueMask *mask, XSetWindowAttributes *attrs) + { + CbWidget cb = (CbWidget) wdg; + XtGCMask v_mask = 0L; +@@ -487,10 +466,7 @@ cb_realize (wdg, mask, attrs) + * Keep it simple. + */ + static void +-cb_redisplay (wdg, event, region) /*ARGSUSED */ +- Widget wdg; +- XEvent *event; +- Region region; ++cb_redisplay (Widget wdg, XEvent *event, Region region) /*ARGSUSED */ + { + CbWidget cb = (CbWidget) wdg; + char *p, *pp, *base; +@@ -513,8 +489,7 @@ cb_redisplay (wdg, event, region) /*ARGSUSED */ + } + + static void +-cb_destroy (wdg) +- Widget wdg; ++cb_destroy (Widget wdg) + { + CbWidget cb = (CbWidget) wdg; + +@@ -540,11 +515,8 @@ cb_destroy (wdg) + * This breaks all the rules for object oriented widgets. Disgusting, no? + */ + static void +-cb_cut (wdg, event, parms, nparms) /*ARGSUSED */ +- Widget wdg; +- XEvent *event; +- String *parms; +- Cardinal *nparms; ++cb_cut (Widget wdg, XEvent *event, ++ String *parms, Cardinal *nparms) /*ARGSUSED */ + { + CbWidget cb = (CbWidget) wdg; + Window win = cb->core.window; +@@ -572,11 +544,8 @@ cb_cut (wdg, event, parms, nparms) /*ARGSUSED */ + } + + static void +-cb_paste (wdg, event, parms, nparms) /*ARGSUSED */ +- Widget wdg; +- XEvent *event; +- String *parms; +- Cardinal *nparms; ++cb_paste (Widget wdg, XEvent *event, ++ String *parms, Cardinal *nparms) /*ARGSUSED */ + { + CbWidget cb = (CbWidget) wdg; + Window w; +@@ -596,11 +565,8 @@ cb_paste (wdg, event, parms, nparms) /*ARGSUSED */ + } + + static void +-cb_clear (wdg, event, parms, nparms) /*ARGSUSED */ +- Widget wdg; +- XEvent *event; +- String *parms; +- Cardinal *nparms; ++cb_clear (Widget wdg, XEvent *event, ++ String *parms, Cardinal *nparms) /*ARGSUSED */ + { + CbWidget cb = (CbWidget) wdg; + Window win = cb->core.window; +@@ -614,11 +580,8 @@ cb_clear (wdg, event, parms, nparms) /*ARGSUSED */ + } + + static void +-cb_rotate (wdg, event, parms, nparms) /*ARGSUSED */ +- Widget wdg; +- XEvent *event; +- String *parms; +- Cardinal *nparms; ++cb_rotate (Widget wdg, XEvent *event, ++ String *parms, Cardinal *nparms) /*ARGSUSED */ + { + int n = 0; + +@@ -630,11 +593,8 @@ cb_rotate (wdg, event, parms, nparms) /*ARGSUSED */ + } + + static void +-cb_quit (wdg, event, parms, nparms) /*ARGSUSED */ +- Widget wdg; +- XEvent *event; +- String *parms; +- Cardinal *nparms; ++cb_quit (Widget wdg, XEvent *event, ++ String *parms, Cardinal *nparms) /*ARGSUSED */ + { + exit (0); + } +@@ -643,11 +603,8 @@ cb_quit (wdg, event, parms, nparms) /*ARGSUSED */ + * Clear and redraw the widget's window. + */ + static void +-cb_refresh (wdg, event, parms, nparms) /*ARGSUSED */ +- Widget wdg; +- XEvent *event; +- String *parms; +- Cardinal *nparms; ++cb_refresh (Widget wdg, XEvent *event, ++ String *parms, Cardinal *nparms) /*ARGSUSED */ + { + XClearArea (dpy, wdg->core.window, 0, 0, 0, 0, False); + cb_redisplay (wdg, (XEvent *) 0, (Region) 0); +@@ -661,11 +618,8 @@ cb_refresh (wdg, event, parms, nparms) /*ARGSUSED */ + * of the cut buffer to the target window+atom. + */ + static void +-cb_selreq (wdg, event, parms, nparms) /*ARGSUSED */ +- Widget wdg; +- XEvent *event; +- String *parms; +- Cardinal *nparms; ++cb_selreq (Widget wdg, XEvent *event, ++ String *parms, Cardinal *nparms) /*ARGSUSED */ + { + int nbytes; + char *ptr; +@@ -739,11 +693,8 @@ cb_selreq (wdg, event, parms, nparms) /*ARGSUSED */ + * be redrawn without highlighting. + */ + static void +-cb_selclear (wdg, event, parms, nparms) /*ARGSUSED */ +- Widget wdg; +- XEvent *event; +- String *parms; +- Cardinal *nparms; ++cb_selclear (Widget wdg, XEvent *event, ++ String *parms, Cardinal *nparms) /*ARGSUSED */ + { + CbWidget cb = (CbWidget) wdg; + +@@ -858,18 +809,14 @@ usage () + * or in the xdm-errors file when forcibly destroying the client program. + */ + static int +-xioerror (d) /*ARGSUSED */ +- Display *d; ++xioerror (Display *d) /*ARGSUSED */ + { + exit (1); /*NOTREACHED */ + } + + static void +-wmdel (wdg, ptr, ep, cont) /*ARGSUSED */ +- Widget wdg; +- XtPointer ptr; +- XEvent *ep; +- Boolean *cont; ++wmdel (Widget wdg, XtPointer ptr, ++ XEvent *ep, Boolean *cont) /*ARGSUSED */ + { + if (ep->type == ClientMessage && ep->xclient.data.l[0] == delwin) + exit (0); +@@ -879,10 +826,7 @@ wmdel (wdg, ptr, ep, cont) /*ARGSUSED */ + * Print the contents of a cut buffer on stdout. + */ + static void +-doprint (n, ptr, nb) +- int n; +- char *ptr; +- int nb; ++doprint (int n, char *ptr, int nb) + { + Atom a; + +@@ -905,10 +849,7 @@ doprint (n, ptr, nb) + * Load a new value into one of the cut buffers. + */ + static void +-doset (n, ptr, nb) +- int n; +- char *ptr; +- int nb; ++doset (int n, char *ptr, int nb) + { + char *str = malloc (nb + 1); + +@@ -920,9 +861,7 @@ doset (n, ptr, nb) + } + + static void +-timeout (arg, id) +- char *arg; +- XtIntervalId *id; ++timeout (void *arg, XtIntervalId *id) + { + exit (2); + } +@@ -931,10 +870,7 @@ timeout (arg, id) + * Copy the PRIMARY selection into a cut buffer. + */ + static void +-dogetseln (n, ptr, nb) +- int n; +- char *ptr; +- int nb; ++dogetseln (int n, char *ptr, int nb) + { + char *data; + int nbytes; +@@ -981,11 +917,7 @@ dogetseln (n, ptr, nb) + * list ordering is significant. + */ + static void +-dolist (list, fn, data, nbytes) +- char *list; +- void (*fn) (); +- char *data; +- int nbytes; ++dolist (char *list, void (*fn)(int, char*, int), char *data, int nbytes) + { + int m, n, x; + +@@ -1027,9 +959,7 @@ dolist (list, fn, data, nbytes) + * without the need to create any X windows first. + */ + static void +-dotask (cmd, arg) +- int cmd; +- char *arg; ++dotask (int cmd, char *arg) + { + char *ptr; + int i, n, nb; +@@ -1122,9 +1052,7 @@ static XrmOptionDescRec opt[] = + * perform all the windows initializations. + */ + static void +-init (argc, argv) +- int argc; +- char **argv; ++init (int argc, char **argv) + { + int i, n; + char **p; +@@ -1350,9 +1278,8 @@ xevents () + } + } + +-main (argc, argv) +- int argc; +- char **argv; ++int ++main (int argc, char **argv) + { + init (argc, argv); + xevents (); diff --git a/x11-misc/xcb/xcb-2.4-r2.ebuild b/x11-misc/xcb/xcb-2.4-r2.ebuild new file mode 100644 index 000000000000..6f10de40e823 --- /dev/null +++ b/x11-misc/xcb/xcb-2.4-r2.ebuild @@ -0,0 +1,59 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit toolchain-funcs + +DESCRIPTION="Marc Lehmann's improved X Cut Buffers" +HOMEPAGE="http://oldhome.schmorp.de/marc/xcb.html" +SRC_URI="http://oldhome.schmorp.de/marc/data/${P}.tar.gz" + +LICENSE="BSD" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~ppc ~riscv ~x86" +IUSE="motif" + +RDEPEND=" + x11-libs/libX11 + x11-libs/libXaw + x11-libs/libXext + x11-libs/libXt + motif? ( >=x11-libs/motif-2.3:0 ) +" +DEPEND=" + ${RDEPEND} + x11-base/xorg-proto +" + +PATCHES=( + "${FILESDIR}"/${PN}-modern-c-porting.patch +) + +src_compile() { + local gui libs + + if use motif; then + gui="-DMOTIF" + libs="-lXm -lXt -lX11" + else + gui="-DATHENA" + libs="-lXaw -lXt -lXext -lX11" + fi + + emake \ + -f Makefile.std xcb Xcb.ad \ + CC="$(tc-getCC)" \ + CPP="$(tc-getCPP)" \ + CFLAGS="${CFLAGS} ${gui}" \ + GUI="${gui}" \ + LIBS="${libs}" \ + LDFLAGS="${LDFLAGS}" +} + +src_install() { + dobin xcb + newman xcb.man xcb.1 + insinto /usr/share/X11/app-defaults + newins Xcb.ad Xcb +} |