This is the mail archive of the newlib@sourceware.org mailing list for the newlib project.
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |
Other format: | [Raw text] |
sysconf.c was missing many (71) of the variables that POSIX requires of it (see http://www.opengroup.org/onlinepubs/009695399/functions/sysconf.html), so I re-wrote it to include them all. Rather than doing lots of hand editing to put in the missing cases, I deleted all the cases in the switch and programmatically generated the new ones from the list in the Opengroup man page. This makes the patch show almost the whole file as being changed. Since all of the _SC defines were already in unistd.h, I did not check to see if any of the items should be ifdef'd with a POSIX version because none of the _SC defines in unistd.h are. As noted in the ChangeLog entry, 5 of the cases are present but commented out. _SC_GETGR_R_SIZE_MAX and _SC_GETPW_R_SIZE_MAX are supposed to return something from getgrgid and getpwuid, but since newlib does not have those, I left them out as there is not a value that I know how to get. _SC_XBS5_ILP32_OFF32, _SC_XBS5_ILP32_OFFBIG, and _SC_XBS5_LPBIG_OFFBIG cases ran into a problem with their values being defined, but not as numbers. (They are redefined as other macros which never get values.) Since they didn't work before, I didn't bother to try and fix them. As part of this, I had to correct 3 of the _SC_ values for so-called "legacy" defines in sys/unistd.h to remove duplication. (Opengroup shows different returns for the legacy items, so the duplication that was in place made no sense.) This change might address the problem just asked about in an email titled "Compatibility with Debian 4.0?", where sysconf(_SC_PAGE_SIZE) returned -1, since _SC_PAGE_SIZE did not previously have a case. Craig Howland
Attachment:
sysconf.patch
Description: sysconf.patch
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |