On Sun, 2002-05-26 at 03:46, 山田 健 wrote:
I have the same symptom with binary package of XFree86-4. And furthermore I
cannot compile XFree86-4-libraries with FreeBSD-current.
It says;
UIThrStubs.c:102: alias arg not a string
UIThrStubs.c:103: alias arg not a string
: : :
UIThrStubs.c:115: alias arg not a string
UIThrStubs.c:131: warning: `_Xthr_self_stub_' defined but not used
UIThrStubs.c:139: warning: `_Xthr_zero_stub_' defined but not used
Any fix ?
I just made this patch today while working on X stuff. Unfortunately
after that it dies with a compiler error in the DRI compile for me. DRI
CVS doesn't have the compiler error.
making all in lib/GL/mesa/src...
snip big compile line
In file included from translate.c:779:
../../../../extras/Mesa/src/trans_tmp.h: In function
`trans_1_GLdouble_1ub_elt':
../../../../extras/Mesa/src/trans_tmp.h:124: could not find a spill
register
(insn 96 94 97 (set (subreg:SF (reg:QI 75) 0)
(plus:SF (reg:SF 8 st(0) [76])
(reg:SF 9 st(1) [80]))) 525 {*fop_sf_comm_nosse} (insn_list
87 (nil))
(expr_list:REG_DEAD (reg:SF 8 st(0) [76])
(nil)))
../../../../extras/Mesa/src/trans_tmp.h:124: Internal compiler error in
failed_reload, at reload1.c:5050
Please submit a full bug report,
with preprocessed source if appropriate.
See URL:http://www.gnu.org/software/gcc/bugs.html for instructions.
If someone is interested I can give them more full logs.
--
Eric Anholt [EMAIL PROTECTED]
http://gladstone.uoregon.edu/~eanholt/dri/
--- lib/XThrStub/UIThrStubs.c.orig Sat May 25 16:01:07 2002
+++ lib/XThrStub/UIThrStubs.c Sat May 25 16:28:25 2002
@@ -99,6 +99,26 @@
#else
#include pthread.h
typedef pthread_t xthread_t;
+#if __GNUC__ = 3
+static xthread_t _Xthr_self_stub_();
+static int _Xthr_zero_stub_();
+
+xthread_t pthread_self() __attribute__ ((weak, alias (_Xthr_self_stub_)));
+int pthread_mutex_init() __attribute__ ((weak, alias (_Xthr_zero_stub_)));
+int pthread_mutex_destroy() __attribute__ ((weak, alias (_Xthr_zero_stub_)));
+int pthread_mutex_lock() __attribute__ ((weak, alias (_Xthr_zero_stub_)));
+int pthread_mutex_unlock() __attribute__ ((weak, alias (_Xthr_zero_stub_)));
+int pthread_cond_init() __attribute__ ((weak, alias (_Xthr_zero_stub_)));
+int pthread_cond_destroy() __attribute__ ((weak, alias (_Xthr_zero_stub_)));
+int pthread_cond_wait() __attribute__ ((weak, alias (_Xthr_zero_stub_)));
+int pthread_cond_signal() __attribute__ ((weak, alias (_Xthr_zero_stub_)));
+int pthread_cond_broadcast() __attribute__ ((weak, alias (_Xthr_zero_stub_)));
+/* These are added for libGL */
+int pthread_key_create() __attribute__ ((weak, alias (_Xthr_zero_stub_)));
+void * pthread_getspecific() __attribute__ ((weak, alias (_Xthr_zero_stub_)));
+int pthread_setspecific() __attribute__ ((weak, alias (_Xthr_zero_stub_)));
+/*int pthread_equal __attribute__ ((__weak__)) = _Xthr_equal_stub_;*/ /* See
+Xthreads.h! */
+#else
#pragma weak pthread_self = _Xthr_self_stub_
#pragma weak pthread_mutex_init = _Xthr_zero_stub_
#pragma weak pthread_mutex_destroy = _Xthr_zero_stub_
@@ -113,6 +133,7 @@
#pragma weak pthread_key_create = _Xthr_zero_stub_
#pragma weak pthread_getspecific = _Xthr_zero_stub_
#pragma weak pthread_setspecific = _Xthr_zero_stub_
+#endif /* __GNUC__ */
#if defined(_DECTHREADS_) || defined(linux)
#pragma weak pthread_equal = _Xthr_equal_stub_ /* See Xthreads.h! */
int