RSB builds single-threaded Newlib by default?

Linda Huxley lhuxley at shaw.ca
Sun Apr 16 21:39:45 UTC 2017


Hi Chris,

I am still unable to build the RTEMS kernel. ...cpukit/configure fails 
because the following check returns a negative response:

checking for struct _Thread_queue_Queue._name... no

The configure script is searching sys/lock.h for a structure member. 
sys/lock.h appears here in my build tree:

/c/opt/rtems/r4.11.2/sparc-rtems4.11/include/sys/lock.h

However, that version of lock.h only contains "dummy lock routines for 
single-threaded aps".  I have attached a copy of sys/lock.h.

Is there some build setting or environment variable that I have to set 
to build a multi-threaded version of newlib?

Thanks,

Linda

-------------- next part --------------
#ifndef __SYS_LOCK_H__
#define __SYS_LOCK_H__

/* dummy lock routines for single-threaded aps */

typedef int _LOCK_T;
typedef int _LOCK_RECURSIVE_T;
 
#include <_ansi.h>

#define __LOCK_INIT(class,lock) static int lock = 0;
#define __LOCK_INIT_RECURSIVE(class,lock) static int lock = 0;
#define __lock_init(lock) (_CAST_VOID 0)
#define __lock_init_recursive(lock) (_CAST_VOID 0)
#define __lock_close(lock) (_CAST_VOID 0)
#define __lock_close_recursive(lock) (_CAST_VOID 0)
#define __lock_acquire(lock) (_CAST_VOID 0)
#define __lock_acquire_recursive(lock) (_CAST_VOID 0)
#define __lock_try_acquire(lock) (_CAST_VOID 0)
#define __lock_try_acquire_recursive(lock) (_CAST_VOID 0)
#define __lock_release(lock) (_CAST_VOID 0)
#define __lock_release_recursive(lock) (_CAST_VOID 0)

#endif /* __SYS_LOCK_H__ */


More information about the users mailing list