<div dir="ltr">I just pushed a pretty significant update to the POSIX Compliance guide. <div><br></div><div>+ preface has more guidance on where to look for missing methods to implement</div><div>+ standards section attempts to describe each standard. </div><div>   If this section is insufficient, patches or suggestions are encouraged.</div><div>+ Added C11</div><div>+ Added FACE Technical Standard Edition 3.0 (four profiles)</div><div>+ Added Software Communications Architecture 2.2.2 (one profile)</div><div>+ Added Software Communications Architecture 4.1 (three profiles)</div><div><br></div><div>Having this updated should help you. If you want a couple of methods</div><div>that I think are on the easier side, look at the "utime" family. We</div><div>have utime() and utimes() but are missing futimens() and utimesnat().</div><div>Definitely the implementation goes in RTEMS (libc_support) and I</div><div>think they are fairly straightforward variants on the supported methods.</div><div><br></div><div>Adding the SPARC "fast" methods would be a good starting point</div><div>for familiarity with newlib.</div><div><br></div><div>Adding the fenv.h methods to newlib will be harder but rewarding</div><div>from a methods quantity perspective. I think this involves a little</div><div>header file surgery on the fenv.h there now and importing architecture</div><div>specific implementations from FreeBSD and NetBSD.</div><div><br></div><div>You will need to build tools with the RSB for every architecture you</div><div>add fenv.h support to. Because you have to know it compiles. :)</div><div><br></div><div>--joel</div></div><div class="gmail_extra"><br><div class="gmail_quote">On Thu, Mar 8, 2018 at 2:20 PM, Joel Sherrill <span dir="ltr"><<a href="mailto:joel@rtems.org" target="_blank">joel@rtems.org</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><br><div class="gmail_extra"><br><div class="gmail_quote"><span class="">On Thu, Mar 8, 2018 at 1:27 PM, Salil Sirotia <span dir="ltr"><<a href="mailto:salil.sirotia@gmail.com" target="_blank">salil.sirotia@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><br clear="all"><div><div class="m_-4282830998740484096gmail-m_-6195885097568514313gmail_signature"><div dir="ltr"><div><div dir="ltr"><div style="font-size:12.8px"><div><span style="color:rgb(34,34,34);font-family:arial,sans-serif;font-size:12.8px;font-style:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;background-color:rgb(255,255,255);text-decoration-style:initial;text-decoration-color:initial;float:none;display:inline">Hello Developers,</span><br style="color:rgb(34,34,34);font-family:arial,sans-serif;font-size:12.8px;font-style:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;background-color:rgb(255,255,255);text-decoration-style:initial;text-decoration-color:initial"><br style="color:rgb(34,34,34);font-family:arial,sans-serif;font-size:12.8px;font-style:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;background-color:rgb(255,255,255);text-decoration-style:initial;text-decoration-color:initial"><span style="color:rgb(34,34,34);font-family:arial,sans-serif;font-size:12.8px;font-style:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;background-color:rgb(255,255,255);text-decoration-style:initial;text-decoration-color:initial;float:none;display:inline">This is Salil Sirotia, Doing Masters from Indian Institute of</span><br style="color:rgb(34,34,34);font-family:arial,sans-serif;font-size:12.8px;font-style:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;background-color:rgb(255,255,255);text-decoration-style:initial;text-decoration-color:initial"><span style="color:rgb(34,34,34);font-family:arial,sans-serif;font-size:12.8px;font-style:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;background-color:rgb(255,255,255);text-decoration-style:initial;text-decoration-color:initial;float:none;display:inline">Technology, Dhanbad. I want to participate in GSoC 2018 at your</span><br style="color:rgb(34,34,34);font-family:arial,sans-serif;font-size:12.8px;font-style:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;background-color:rgb(255,255,255);text-decoration-style:initial;text-decoration-color:initial"><span style="color:rgb(34,34,34);font-family:arial,sans-serif;font-size:12.8px;font-style:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;background-color:rgb(255,255,255);text-decoration-style:initial;text-decoration-color:initial;float:none;display:inline">organization.</span></div></div></div></div></div></div></div></div></blockquote><div><br></div></span><div>Hi.. I assume you have been talking to Aditya.   :)</div><span class=""><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div><div class="m_-4282830998740484096gmail-m_-6195885097568514313gmail_signature"><div dir="ltr"><div><div dir="ltr"><div style="font-size:12.8px"><div><br style="color:rgb(34,34,34);font-family:arial,sans-serif;font-size:12.8px;font-style:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;background-color:rgb(255,255,255);text-decoration-style:initial;text-decoration-color:initial"><br style="color:rgb(34,34,34);font-family:arial,sans-serif;font-size:12.8px;font-style:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;background-color:rgb(255,255,255);text-decoration-style:initial;text-decoration-color:initial"><span style="color:rgb(34,34,34);font-family:arial,sans-serif;font-size:12.8px;font-style:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;background-color:rgb(255,255,255);text-decoration-style:initial;text-decoration-color:initial;float:none;display:inline">I have gone through the RTEMS Wiki page. I have set up the environment</span><br style="color:rgb(34,34,34);font-family:arial,sans-serif;font-size:12.8px;font-style:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;background-color:rgb(255,255,255);text-decoration-style:initial;text-decoration-color:initial"><span style="color:rgb(34,34,34);font-family:arial,sans-serif;font-size:12.8px;font-style:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;background-color:rgb(255,255,255);text-decoration-style:initial;text-decoration-color:initial;float:none;display:inline">for SPARC and edited the application "Hello World". I am attaching the</span><br style="color:rgb(34,34,34);font-family:arial,sans-serif;font-size:12.8px;font-style:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;background-color:rgb(255,255,255);text-decoration-style:initial;text-decoration-color:initial"><span style="color:rgb(34,34,34);font-family:arial,sans-serif;font-size:12.8px;font-style:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;background-color:rgb(255,255,255);text-decoration-style:initial;text-decoration-color:initial;float:none;display:inline">Screenshot of that Application Would you <span style="color:rgb(34,34,34);font-family:arial,sans-serif;font-size:12.8px;font-style:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;background-color:rgb(255,255,255);text-decoration-style:initial;text-decoration-color:initial;float:none;display:inline">like to review the same.</span></span></div></div></div></div></div></div></div></div></blockquote><div><br></div></span><div>Awesome. Please make a patch and send it as well using git format-patch.</div><div><br></div><div>Also add yourself to <a href="https://devel.rtems.org/wiki/GSoC/2018" target="_blank">https://devel.rtems.org/<wbr>wiki/GSoC/2018</a> where we</div><div>track what people are interested in doing.</div><span class=""><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div><div class="m_-4282830998740484096gmail-m_-6195885097568514313gmail_signature"><div dir="ltr"><div><div dir="ltr"><div style="font-size:12.8px"><div><br style="color:rgb(34,34,34);font-family:arial,sans-serif;font-size:12.8px;font-style:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;background-color:rgb(255,255,255);text-decoration-style:initial;text-decoration-color:initial"><br style="color:rgb(34,34,34);font-family:arial,sans-serif;font-size:12.8px;font-style:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;background-color:rgb(255,255,255);text-decoration-style:initial;text-decoration-color:initial"><br style="color:rgb(34,34,34);font-family:arial,sans-serif;font-size:12.8px;font-style:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;background-color:rgb(255,255,255);text-decoration-style:initial;text-decoration-color:initial"><span style="color:rgb(34,34,34);font-family:arial,sans-serif;font-size:12.8px;font-style:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;background-color:rgb(255,255,255);text-decoration-style:initial;text-decoration-color:initial;float:none;display:inline">I am pretty good in C/C++, Python, Shell Scripting and worked on git and GDB.</span></div></div></div></div></div></div></div></div></blockquote><div><br></div></span><div>The code in the POSIX Compliance is going to all be in C. Depending on the method,</div><div>it will need to be in Newlib (libc/libm) or RTEMS itself.  Your Python would come in</div><div>handy in updating the generation of the POSIX Compliance document. </div><div><br></div><div>The POSIX Compliance document is automatically generated from a spreadsheet</div><div>kept in the docs git repo. This is the easiest way to find methods missing.</div><div><br></div><div><a href="https://git.rtems.org/rtems-docs/tree/posix-compliance" target="_blank">https://git.rtems.org/rtems-<wbr>docs/tree/posix-compliance</a> is the source directory<br></div><div>in the rtems-docs </div><div><br></div><div><a href="https://docs.rtems.org/" target="_blank">https://docs.rtems.org/</a> has the generated version.<br></div><span class=""><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div><div class="m_-4282830998740484096gmail-m_-6195885097568514313gmail_signature"><div dir="ltr"><div><div dir="ltr"><div style="font-size:12.8px"><div><br style="color:rgb(34,34,34);font-family:arial,sans-serif;font-size:12.8px;font-style:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;background-color:rgb(255,255,255);text-decoration-style:initial;text-decoration-color:initial"><br style="color:rgb(34,34,34);font-family:arial,sans-serif;font-size:12.8px;font-style:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;background-color:rgb(255,255,255);text-decoration-style:initial;text-decoration-color:initial"><span style="color:rgb(34,34,34);font-family:arial,sans-serif;font-size:12.8px;font-style:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;background-color:rgb(255,255,255);text-decoration-style:initial;text-decoration-color:initial;float:none;display:inline">I have gone through the open tickets and interested in POSIX</span><br style="color:rgb(34,34,34);font-family:arial,sans-serif;font-size:12.8px;font-style:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;background-color:rgb(255,255,255);text-decoration-style:initial;text-decoration-color:initial"><span style="color:rgb(34,34,34);font-family:arial,sans-serif;font-size:12.8px;font-style:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;background-color:rgb(255,255,255);text-decoration-style:initial;text-decoration-color:initial;float:none;display:inline">Compliance Project:<span> </span></span><a href="https://devel.rtems.org/ticket/2966" rel="noreferrer" style="color:rgb(17,85,204);font-family:arial,sans-serif;font-size:12.8px;font-style:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;background-color:rgb(255,255,255)" target="_blank">https://devel.rtems.o<wbr>rg/ticket/2966</a><span style="color:rgb(34,34,34);font-family:arial,sans-serif;font-size:12.8px;font-style:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;background-color:rgb(255,255,255);text-decoration-style:initial;text-decoration-color:initial;float:none;display:inline">. And i already have some idea ab<span style="color:rgb(34,34,34);font-family:arial,sans-serif;font-size:12.8px;font-style:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;background-color:rgb(255,255,255);text-decoration-style:initial;text-decoration-color:initial;float:none;display:inline">out how to build new libraries and I think i might be able to do some good work in this project </span>Would you </span><span style="color:rgb(34,34,34);font-family:arial,sans-serif;font-size:12.8px;font-style:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;background-color:rgb(255,255,255);text-decoration-style:initial;text-decoration-color:initial;float:none;display:inline">like to point me some docs? I am really interested in this project.</span></div></div></div></div></div></div></div></div></blockquote><div><br></div></span><div>This is a moving project. :)</div><div><br></div><div>Here are some odd things I know are desirable off the top of my head.</div><div><br></div><div><span style="color:rgb(38,50,56);font-family:Roboto,sans-serif;font-size:13px;font-style:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:left;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;text-decoration-style:initial;text-decoration-color:initial;float:none;display:inline">+ I would love to see fenv..h support added to newlib libm from FreeBSD.</span></div><div><span style="color:rgb(38,50,56);font-family:Roboto,sans-serif;font-size:13px;font-style:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:left;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;text-decoration-style:initial;text-decoration-color:initial;float:none;display:inline">+ I found an assembly version of SPARC memcpy which can be merged into </span></div><div><span style="color:rgb(38,50,56);font-family:Roboto,sans-serif;font-size:13px;font-style:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:left;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;text-decoration-style:initial;text-decoration-color:initial;float:none;display:inline">  newlib (for SPEED).  This is from whatever OpenSolaris is called now.</span></div><div><span style="color:rgb(38,50,56);font-family:Roboto,sans-serif;font-size:13px;font-style:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:left;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;text-decoration-style:initial;text-decoration-color:initial;float:none;display:inline">  There may be other str* or mem* methods worth bringing over.</span></div><div><span style="color:rgb(38,50,56);font-family:Roboto,sans-serif;font-size:13px;font-style:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:left;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;text-decoration-style:initial;text-decoration-color:initial;float:none;display:inline">+ </span><span style="font-size:13px;color:rgb(38,50,56);font-family:Roboto,sans-serif">Chris and I spotted a utime*() variant that is missing.  This would be </span></div><div><span style="font-size:13px;color:rgb(38,50,56);font-family:Roboto,sans-serif">  implemented in RTEMS and it looked like the missing variant could </span></div><div><span style="font-size:13px;color:rgb(38,50,56);font-family:Roboto,sans-serif">  easily be worked into the others.</span></div><div><span style="font-size:13px;color:rgb(38,50,56);font-family:Roboto,sans-serif"><br></span></div><div><span style="font-size:13px;color:rgb(38,50,56);font-family:Roboto,sans-serif">Beyond that, I would work down the FACE General Purpose Profile based</span></div><div><span style="font-size:13px;color:rgb(38,50,56);font-family:Roboto,sans-serif">on the POSIX Compliance Guide. </span><span style="font-size:13px;color:rgb(38,50,56);font-family:Roboto,sans-serif">That is supposed to reflect real avionics</span></div><div><span style="font-size:13px;color:rgb(38,50,56);font-family:Roboto,sans-serif">embedded systems use.</span>

 </div><div><br></div><div>I need to merge a new version of the tracking spreadsheet which includes</div><div>the recently released FACE Edition 3.0, POSIX 2003, the the Software</div><div>Communications Architecture profiles for 2.2.2 and 4.1. SCA was from</div><div>the OMG but is now from the Wireless Innovation Forum and it used</div><div>by software defined radios.</div><div><br></div><div>I hope this sounds interesting. POSIX is a huge standard and various</div><div>organizations have defined profiles (e.g. subsets) of it. The moving goal</div><div>is to support as much as technically possible and we use the profiles</div><div>to guide selection of methods. It is nice to say RTEMS has all the methods</div><div>in XYZ profile. :)</div><div><br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><span class=""><div dir="ltr"><div><div class="m_-4282830998740484096gmail-m_-6195885097568514313gmail_signature"><div dir="ltr"><div><div dir="ltr"><div style="font-size:12.8px"><div><br style="color:rgb(34,34,34);font-family:arial,sans-serif;font-size:12.8px;font-style:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;background-color:rgb(255,255,255);text-decoration-style:initial;text-decoration-color:initial"><br></div><div>Thanks & regards,<br>Salil Sirotia,<br></div><div><br></div></div></div></div></div></div></div>
</div>
<br></span>______________________________<wbr>_________________<br>
devel mailing list<br>
<a href="mailto:devel@rtems.org" target="_blank">devel@rtems.org</a><br>
<a href="http://lists.rtems.org/mailman/listinfo/devel" rel="noreferrer" target="_blank">http://lists.rtems.org/mailman<wbr>/listinfo/devel</a><br></blockquote></div><br></div></div>
</blockquote></div><br></div>