Cygwin: Implement sched_[gs]etaffinity() commit breaks RTEMS port

Brian Inglis Brian.Inglis@SystematicSw.ab.ca
Sat Jun 29 13:19:00 GMT 2019


On 2019-06-29 06:38, Eric Blake wrote:
> On 6/28/19 7:57 PM, Mark Geisert wrote:
>> Please forgive my ignorance of licensing details...  Are we allowed to
>> copy GNU library source into Cygwin?
> Cygwin is a different beast (it has GPL code, but still tries to avoid
> wholesale imports from glibc, preferring to copy from BSD where
> possible).  But you asked a question on the newlib list, and here the
> answer is a definitive now - newlib cannot include [L]GPL code, so
> copying from glibc is forbidden.
>> Or is re-implementation from documentation the way to go?
> Correct, unless you can find an existing BSD implementation with
> appropriate semantics to copy.
>> In either case, must the glibc file organization be followed or is
>> platform-specific rejiggering acceptable?
> The more you copy glibc's layout, the more questionable it is on whether you
> did inappropriate copying. What matters more is getting something that
> implements the right semantics.
>> I'd like to just add the CPU_SET macros to Cygwin's new sys/cpuset.h and
>> any needed support code to our sched.cc but am willing to hear other
>> options.

As already mentioned, the required headers and macros already exist under:
https://cygwin.com/git/gitweb.cgi?f=newlib/libc/sys/rtems/include/sys;a=tree;p=newlib-cygwin.git
in _bitset.h, _cpuset.h, bitset.h, cpuset.h, and
https://cygwin.com/git/gitweb.cgi?f=newlib/libc/sys/linux/include/sched.h;a=blob;p=newlib-cygwin.git

-- 
Take care. Thanks, Brian Inglis, Calgary, Alberta, Canada

This email may be disturbing to some readers as it contains
too much technical detail. Reader discretion is advised.



More information about the Newlib mailing list