This is a combination of two patches: 1) Taken from https://salsa.debian.org/debian/libtirpc/-/raw/master/debian/patches/03-kfreebsd.diff Description: Fix build on non Linux architectures Author: Andreas Beckmann Last-Update: 2019-09-01 2) Taken from https://salsa.debian.org/debian/libtirpc/-/raw/master/debian/patches/05-hurd-port.diff Description: Get source building on Hurd - Look for before using it. - Define MAXHOSTNAMELEN to 64 if missing. - Bind sockets on Hurd like on Linux. Author: Petter Reinholdtsen --- a/src/svc_dg.c +++ b/src/svc_dg.c @@ -648,6 +648,7 @@ void svc_dg_enable_pktinfo(int fd, const struct __rpc_sockinfo *si) { +#ifdef __linux__ int val = 1; switch (si->si_af) { @@ -660,6 +661,7 @@ break; #endif } +#endif } /* @@ -670,6 +672,7 @@ int svc_dg_valid_pktinfo(struct msghdr *msg) { +#ifdef __linux__ struct cmsghdr *cmsg; if (!msg->msg_name) @@ -716,4 +719,7 @@ } return 1; +#else + return 0; +#endif } --- a/src/clnt_vc.c +++ b/src/clnt_vc.c @@ -71,10 +71,12 @@ #define MCALL_MSG_SIZE 24 #define CMGROUP_MAX 16 -#define SCM_CREDS 0x03 /* process creds (struct cmsgcred) */ #undef rpc_createerr /* make it clear it is a thread safe variable */ +#ifndef SCM_CREDS +#define SCM_CREDS 0x03 /* process creds (struct cmsgcred) */ + /* * Credentials structure, used to verify the identity of a peer * process that has sent us a message. This is allocated by the @@ -90,6 +92,7 @@ short cmcred_ngroups; /* number or groups */ gid_t cmcred_groups[CMGROUP_MAX]; /* groups */ }; +#endif struct cmessage { struct cmsghdr cmsg; --- a/src/getpeereid.c +++ b/src/getpeereid.c @@ -25,9 +25,14 @@ */ +#include "config.h" + #include #include #include +#ifdef HAVE_SYS_USER_H +# include +#endif /* HAVE_SYS_USER_H */ #include #include --- a/src/getpeereid.c +++ b/src/getpeereid.c @@ -35,12 +36,25 @@ int getpeereid(int s, uid_t *euid, gid_t *egid) { +#ifndef HAVE_SYS_USER_H + return(-1); +#else +#ifdef XUCRED_VERSION + struct xucred uc; +#define uid cr_uid +#define gid cr_gid +#else struct ucred uc; +#endif socklen_t uclen; int error; uclen = sizeof(uc); +#ifdef XUCRED_VERSION + error = getsockopt(s, 0, LOCAL_PEERCRED, &uc, &uclen); +#else error = getsockopt(s, SOL_SOCKET, SO_PEERCRED, &uc, &uclen); /* SCM_CREDENTIALS */ +#endif if (error != 0) return (error); // if (uc.cr_version != XUCRED_VERSION) @@ -59,4 +66,5 @@ *euid = uc.uid; *egid = uc.gid; return (0); +#endif /* HAVE_SYS_USER_H */ } --- a/tirpc/reentrant.h +++ b/tirpc/reentrant.h @@ -36,7 +36,7 @@ * These definitions are only guaranteed to be valid on Linux. */ -#if defined(__linux__) +#if defined(__linux__) || defined(__GLIBC__) #include --- a/configure.ac +++ b/configure.ac @@ -93,7 +93,7 @@ AC_PROG_LIBTOOL AC_HEADER_DIRENT AC_PREFIX_DEFAULT(/usr) -AC_CHECK_HEADERS([arpa/inet.h fcntl.h libintl.h limits.h locale.h netdb.h netinet/in.h stddef.h stdint.h stdlib.h string.h sys/ioctl.h sys/param.h sys/socket.h sys/time.h syslog.h unistd.h features.h gssapi/gssapi_ext.h]) +AC_CHECK_HEADERS([arpa/inet.h fcntl.h libintl.h limits.h locale.h netdb.h netinet/in.h stddef.h stdint.h stdlib.h string.h sys/ioctl.h sys/param.h sys/socket.h sys/time.h syslog.h unistd.h features.h gssapi/gssapi_ext.h sys/user.h]) AC_CHECK_LIB([pthread], [pthread_create]) AC_CHECK_FUNCS([getrpcbyname getrpcbynumber setrpcent endrpcent getrpcent]) --- a/src/auth_unix.c +++ b/src/auth_unix.c @@ -56,6 +56,11 @@ #include #include +/* Workaround for Hurd */ +#ifndef MAXHOSTNAMELEN +# define MAXHOSTNAMELEN 64 +#endif + /* auth_unix.c */ static void authunix_nextverf (AUTH *); static bool_t authunix_marshal (AUTH *, XDR *); --- a/src/bindresvport.c +++ b/src/bindresvport.c @@ -64,7 +64,7 @@ return bindresvport_sa(sd, (struct sockaddr *)sin); } -#ifdef __linux__ +#if defined(__linux__) || defined(__GNU__) #define STARTPORT 600 #define LOWPORT 512 cm (sdl12-compat): New package. (sdl): Remove package, defined as sdl12-compat. (sdl2): Don't inherit from sdl. (propagated-inputs-with-sdl2): Add case for sdl12-compat. * gnu/packages/patches/sdl-libx11-1.6.patch: Remove file. * gnu/local.mk (dist_patch_DATA): Unregister it. Change-Id: I843d349b3d69164cc640c7db204464a51819a0df Signed-off-by: Maxim Cournoyer <maxim.cournoyer@gmail.com> 宋文武 2024-08-05Change email of Evgeny Pisemsky....* .mailmap: Add entry to Evgeny Pisemsky. * gnu/packages/emacs-xyz.scm, gnu/packages/engineering.scm, gnu/packages/guile-xyz.scm, gnu/packages/hardware.scm, gnu/packages/perl.scm, gnu/packages/python-xyz.scm, gnu/packages/sdl.scm, gnu/packages/web.scm: Adjust copyright line. Change-Id: I9a10be1ee7cc164f18d826b51348ee26eee2ca4b Signed-off-by: Efraim Flashner <efraim@flashner.co.il> Evgeny Pisemsky 2024-07-18gnu: sdl2-gamecontrollerdb: Update to 0-1.9d09945....* gnu/packages/sdl.scm (sdl2-gamecontrollerdb): Update to 0-1.9d09945. Change-Id: I593fdac1ae4c8e439e2b29eab5880a6acdde80bc Signed-off-by: Christopher Baines <mail@cbaines.net> Evgeny Pisemsky 2024-03-31gnu: sdl2: Update to 2.30.1....* gnu/packages/sdl.scm (sdl2): Update to 2.30.1. Change-Id: I0417cfaa0af55df63f731efad420de9f2b81a3d9 Signed-off-by: John Kehayias <john.kehayias@protonmail.com> dan 2023-11-05gnu: sdl2: Update to 2.28.5....* gnu/packages/sdl.scm (sdl2): Update to 2.28.5. Change-Id: I853776bf82e84499486d32012a9b3a4636226668 John Kehayias 2023-11-05gnu: sdl2: Add vulkan-loader to rpath....* gnu/packages/sdl.scm (sdl2)[arguments]: Append the path of libvulkan.so to rpath. [inputs]: Add vulkan-loader. Signed-off-by: John Kehayias <john.kehayias@protonmail.com> Change-Id: I17c8388f5f7b3bb063b79fd4981263994da129c0 dan 2023-10-27gnu: Add sdl2-gamecontrollerdb....* gnu/packages/sdl.scm (sdl2-gamecontrollerdb): New variable. Evgeny Pisemsky