logo       

Patches for Xproto and X11 for GNU/Hurd: msg#00007

freedesktop.xlibs.general

Subject: Patches for Xproto and X11 for GNU/Hurd

Hello,

I have been trying to build the modular xlibs and xserver on GNU/Hurd. I have created the following diff filess for Xproto and X11 using previous patches for xfree 4.3.0 from Robert Millan. getpwnam_r and getpwuid_r were failing. I have attached the two diff files if someone could check them out.

Also, when I try to build xserver it severly chokes with --enable-composite. I was told composite has issues so I am now trying with --disable-kdriveserver --enable-xorgserver and get an error looking for xkbfile. So I pulled xkbfile from CVS and tried to build it.

Running ./autogen.sh --prefix=/opt/fdo, I get the following error:

checking X_CFLAGS... -DXTHREADS -DXUSE_MTSAFE_API -I/opt/fdo/include
checking X_LIBS... -L/opt/fdo/lib -lXext -lX11 -ldl
configure: error: The path /usr/X11R6/lib/X11/xkb does not denote the directory

Any thoughts??

Thank you,

--
Barry deFreese
Debian 3.0r1 "Woody"
GNU/Hurd
Registered Linux "Newbie" #302256 - Hurd H4XX0r wannabe

"Programming today is a race between software engineers striving
to build bigger and better idiot-proof programs, and the Universe
trying to produce bigger and better idiots. So far, the Universe is
winning." Rich Cook.



--- X11/src/GetDflt.c 2004-05-06 18:45:39.000000000 -0400
+++ X11/src/GetDflt.org 2004-05-06 18:22:18.000000000 -0400
@@ -125,11 +125,10 @@
(void) strncpy(dest, ptr, len-1);
dest[len-1] = '\0';
} else {
- struct passwd *dummy;
if ((ptr = getenv("USER")))
- pw = _XGetpwnam(ptr,pwparams,&dummy);
+ pw = _XGetpwnam(ptr,pwparams);
else
- pw = _XGetpwuid(getuid(),pwparams,&dummy);
+ pw = _XGetpwuid(getuid(),pwparams);
if (pw != NULL) {
(void) strncpy(dest, pw->pw_dir, len-1);
dest[len-1] = '\0';
--- Xproto/Xos_r.h 2004-05-06 19:49:38.000000000 -0400
+++ Xproto/Xos_r.org 2004-05-06 17:47:47.000000000 -0400
@@ -201,8 +201,8 @@
*
* typedef ... _Xgetpwparams;
*
- * struct passwd* _XGetpwnam(const char *name, _Xgetpwparams, struct **dummy);
- * struct passwd* _XGetpwuid(uid_t uid, _Xgetpwparams, struct **dummy);
+ * struct passwd* _XGetpwnam(const char *name, _Xgetpwparams);
+ * struct passwd* _XGetpwuid(uid_t uid, _Xgetpwparams);
*/

#if defined(X_INCLUDE_PWD_H) && !defined(_XOS_INCLUDED_PWD_H)
@@ -222,8 +222,8 @@
extern struct passwd *getpwuid(), *getpwnam();
# endif
typedef int _Xgetpwparams; /* dummy */
-# define _XGetpwuid(u,p,s) getpwuid((u))
-# define _XGetpwnam(u,p,s) getpwnam((u))
+# define _XGetpwuid(u,p) getpwuid((u))
+# define _XGetpwnam(u,p) getpwnam((u))

#elif !defined(XOS_USE_MTSAFE_PWDAPI) || defined(XNO_MTSAFE_PWDAPI)
/* UnixWare 2.0, or other systems with thread support but no _r API. */
@@ -300,12 +300,12 @@
((p).pwp = &(p).pws), \
0 )
#endif
-# define _XGetpwuid(u,p,s) \
+# define _XGetpwuid(u,p) \
( (_Xos_processLock), \
(((p).pwp = getpwuid((u))) ? _Xpw_copyPasswd(p), 0 : 0), \
(_Xos_processUnlock), \
(p).pwp )
-# define _XGetpwnam(u,p,s) \
+# define _XGetpwnam(u,p) \
( (_Xos_processLock), \
(((p).pwp = getpwnam((u))) ? _Xpw_copyPasswd(p), 0 : 0), \
(_Xos_processUnlock), \
@@ -320,21 +320,21 @@
} _Xgetpwparams;
# if defined(_POSIX_REENTRANT_FUNCTIONS) || !defined(SVR4) || defined(Lynx)
# ifndef Lynx
-# define _XGetpwuid(u,p,s) \
-((getpwuid_r((u),&(p).pws,(p).pwbuf,sizeof((p).pwbuf),(s)) == -1) ? NULL :
&(p).pws)
-# define _XGetpwnam(u,p,s) \
-((getpwnam_r((u),&(p).pws,(p).pwbuf,sizeof((p).pwbuf),(s)) == -1) ? NULL :
&(p).pws)
+# define _XGetpwuid(u,p) \
+((getpwuid_r((u),&(p).pws,(p).pwbuf,sizeof((p).pwbuf)) == -1) ? NULL :
&(p).pws)
+# define _XGetpwnam(u,p) \
+((getpwnam_r((u),&(p).pws,(p).pwbuf,sizeof((p).pwbuf)) == -1) ? NULL :
&(p).pws)
# else /* Lynx */
-# define _XGetpwuid(u,p,s) \
-((getpwuid_r(&(p).pws,(u),(p).pwbuf,sizeof((p).pwbuf),(s)) == -1) ? NULL :
&(p).pws)
-# define _XGetpwnam(u,p,s) \
-((getpwnam_r(&(p).pws,(u),(p).pwbuf,sizeof((p).pwbuf),(s)) == -1) ? NULL :
&(p).pws)
+# define _XGetpwuid(u,p) \
+((getpwuid_r(&(p).pws,(u),(p).pwbuf,sizeof((p).pwbuf)) == -1) ? NULL :
&(p).pws)
+# define _XGetpwnam(u,p) \
+((getpwnam_r(&(p).pws,(u),(p).pwbuf,sizeof((p).pwbuf)) == -1) ? NULL :
&(p).pws)
# endif
# else /* SVR4 */
-# define _XGetpwuid(u,p,s) \
-((getpwuid_r((u),&(p).pws,(p).pwbuf,sizeof((p).pwbuf),(s)) == NULL) ? NULL :
&(p).pws)
-# define _XGetpwnam(u,p,s) \
-((getpwnam_r((u),&(p).pws,(p).pwbuf,sizeof((p).pwbuf),(s)) == NULL) ? NULL :
&(p).pws)
+# define _XGetpwuid(u,p) \
+((getpwuid_r((u),&(p).pws,(p).pwbuf,sizeof((p).pwbuf)) == NULL) ? NULL :
&(p).pws)
+# define _XGetpwnam(u,p) \
+((getpwnam_r((u),&(p).pws,(p).pwbuf,sizeof((p).pwbuf)) == NULL) ? NULL :
&(p).pws)
# endif /* SVR4 */

#else /* _POSIX_THREAD_SAFE_FUNCTIONS */
@@ -351,10 +351,10 @@
struct passwd* pwp;
} _Xgetpwparams;
typedef int _Xgetpwret;
-# define _XGetpwuid(u,p,s) \
+# define _XGetpwuid(u,p) \
((getpwuid_r((u),&(p).pws,(p).pwbuf,sizeof((p).pwbuf),&(p).pwp) == -1) ? \
NULL : (p).pwp)
-# define _XGetpwnam(u,p,s) \
+# define _XGetpwnam(u,p) \
((getpwnam_r((u),&(p).pws,(p).pwbuf,sizeof((p).pwbuf),&(p).pwp) == -1) ? \
NULL : (p).pwp)
#endif /* X_INCLUDE_PWD_H */
_______________________________________________
xlibs mailing list
xlibs-CC+yJ3UmIYqDUpFQwHEjaQ@xxxxxxxxxxxxxxxx
http://freedesktop.org/mailman/listinfo/xlibs
<Prev in Thread] Current Thread [Next in Thread>
Google Custom Search

News | FAQ | advertise