Proposed Pthread affinity APIs
joel.sherrill at OARcorp.com
Tue Nov 12 19:02:43 UTC 2013
On 11/12/2013 12:32 PM, Sebastian Huber wrote:
> On 11/12/2013 03:11 PM, Joel Sherrill wrote:
>> On 11/12/2013 2:27 AM, Sebastian Huber wrote:
>>>> On 2013-11-11 21:30, Jennifer Averett wrote:
>>>>>> @@ -206,6 +206,24 @@
>>>>>> int _EXFUN(pthread_attr_setguardsize,
>>>>>> (pthread_attr_t *__attr, size_t __guardsize));
>>>>>> +#if defined(__USE_GNU) && defined(__rtems__)
>>>>>> +/* POSIX thread APIs beyond the POSIX standard but provided in RTEMS
>>>>>> + * for compatibility with GNU/Linux.
>>>>>> + */
>>>> Who is supposed to define this __USE_GNU?
>> The application or implementation before including
>> the header files. This is common practice and how
>> it is done in /usr/include/pthread.h on GNU/Linux.
>> There are also other constants like thus __USE_XOPEN2K, __USE_BSD,
>> and __USE_XOPEN2K8 are pretty common. It is similar to the STDC
>> one but that's usually tripped by gcc, while these are application
>> choices on what library API standard to adhere to.
>> Sorry to sound pendantic but this is the common practice.
> Yes, exactly this is why I asked. In the man page you have:
> *#define _GNU_SOURCE */* See feature_test_macros(7) */
> *#include <pthread.h>*
> You use __USE_GNU.
/usr/include/pthread.h on Linux has __USE_GNU. I don't
see a _USE_GNU in the .h files.
feature_test_macros(7) uses all _ versions.
I would guess the std C version is adding it.
Joel Sherrill, Ph.D. Director of Research & Development
joel.sherrill at OARcorp.com On-Line Applications Research
Ask me about RTEMS: a free RTOS Huntsville AL 35805
Support Available (256) 722-9985
More information about the devel