<pre style='margin:0'>
Chris Jones (cjones051073) pushed a commit to branch master
in repository macports-legacy-support.

</pre>
<p><a href="https://github.com/macports/macports-legacy-support/commit/e16eb7d479842e25f950c959be8d6793b971c874">https://github.com/macports/macports-legacy-support/commit/e16eb7d479842e25f950c959be8d6793b971c874</a></p>
<pre style="white-space: pre; background: #F8F8F8"><span style='display:block; white-space:pre;color:#808000;'>commit e16eb7d479842e25f950c959be8d6793b971c874
</span>Author: Mihai Moldovan <ionic@ionic.de>
AuthorDate: Tue Mar 19 06:34:54 2019 +0100

<span style='display:block; white-space:pre;color:#404040;'>    README.md: rework as table, minor fixes.
</span>---
 README.md | 141 ++++++++++++++++++++++++++++++++++++++++++++++++--------------
 1 file changed, 110 insertions(+), 31 deletions(-)

<span style='display:block; white-space:pre;color:#808080;'>diff --git a/README.md b/README.md
</span><span style='display:block; white-space:pre;color:#808080;'>index 4259c7c..3e66116 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/README.md
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/README.md
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1,5 +1,4 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-# MacPorts Support for legacy OSX versions
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# MacPorts Support for Legacy OSX Versions
</span> 
 Installs a number of wrapper headers around system headers that add
 functionality missing in various older OSX releases.
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -9,35 +8,115 @@ the missing features and then forward include the original header.
</span> So using these headers instead of the originals should be transparent.
 
 Missing functions are compiled into a library that must also be linked
<span style='display:block; white-space:pre;background:#ffe0e0;'>-into any builds using the wrapped headers. This is handled in [MacPorts](https://github.com/macports)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-via the legacysupport PortGroup.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+into any builds using the wrapped headers. This is handled in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+[MacPorts](https://github.com/macports) via the `legacysupport` PortGroup.
</span> 
 Wrapped headers are:
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>- - cmath         : Adds the same functions as those provided by the herein math.h, in namespace std:: .
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- - dirent.h      : Adds `fdopendir` missing in OSX10.9 and older
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- - math.h        : Adds declaration of various `long long` methods  missing in OSX10.6 and older, GCC 8 and older.
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- - pthread.h     : Adds PTHREAD_RWLOCK_INITIALIZER for OSX10.4
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- - stdio.h       : Adds `getline` and `getdelim` functions missing in OSX10.6 and older.
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- - stdlib.h      : Adds `posix_memalign` functional replacement,
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                   and wraps `realpath` to accept a NULL buffer argument,
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                   both for OSX10.5 and older. Adds `arc4random_uniform` and `arc4random_buf` missing
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                   on OSX10.6 and older.
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- - string.h      : Adds `strnlen`, `strndup` and `memmem` functions missing in OSX10.6 and older.
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- - time.h        : Adds `clock_gettime` function missing in OSX10.11 and older.
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- - wchar.h       : Adds functions `wcsdup`, `wcsnlen`, `wcpcpy`, `wcpncpy`,
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                   `wcscasecmp`, `wcsncasecmp` missing in OSX10.6 and older.
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- - xlocale/\_wchar.h : Adds functions `wcscasecmp_l`, `wcsncasecmp_l`
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                   missing in OSX10.6 and older.
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- - sys/fcntl.h   : Adds missing `O_CLOEXEC`, `AT_FDCWD`, `AT_EACCESS`, `AT_SYMLINK_NOFOLLOW`,
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                 : `AT_SYMLINK_FOLLOW`, and `AT_REMOVEDIR` definitions as required.
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- - sys/fcntl.h   : Adds `openat` function missing in OSX10.9 and older.
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- - sys/mman.h    : Adds missing `MAP_ANONYMOUS` definition as required.
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- - sys/stdio.h   : Adds `renameat` function missing in OSX10.9 and older.
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- - sys/stat.h    : Adds `fchmodat`, `fstatat`, and `mkdirat` functions missing in OSX10.9 and older.
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                 : Adds "lchmod", missing in OSX10.4.
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- - sys/unistd.h  : Adds `getattrlistat`, `readlinkat`, `faccessat`, `fchownat`, `linkat`, `symlinkat`, 
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                 and `unlinkat` functions missing in OSX10.9 and older.
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                 Also wraps `sysconf` on OSX10.4 to support `_SC_NPROCESSORS_CONF`
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                 and `_SC_NPROCESSORS_ONLN`.
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+<table>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+  <tr>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    <th>Header File</th>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    <th>Feature</th>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    <th>Max Version Needing Feature</th>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+  </tr>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+  <tr>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    <td><code>cmath</code></td>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    <td>Adds the same functions as those provided by the herein <code>math.h</code>,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        in namespace <code>std::</code>.</td>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    <td>see <code>math.h</code></td>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+  </tr>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+  <tr>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    <td><code>dirent.h</code></td>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    <td>Adds <code>fdopendir</code> function</td>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    <td>OSX10.9</td>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+  </tr>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+  <tr>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    <td><code>math.h</code></td>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    <td>Adds declaration of various <code>long long</code> methods</td>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    <td>OSX10.6, GCC 8</td>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+  </tr>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+  <tr>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    <td><code>pthread.h</code></td>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    <td>Adds <code>PTHREAD_RWLOCK_INITIALIZER</code></td>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    <td>OSX10.4</td>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+  </tr>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+  <tr>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    <td><code>stdio.h</code></td>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    <td>Adds <code>getline</code> and <code>getdelim</code> functions</td>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    <td>OSX10.6</td>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+  </tr>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+  <tr>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    <td rowspan="2"><code>stdlib.h</code></td>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    <td>Adds <code>posix_memalign</code> functional replacement, and wraps <code>realpath</code>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        to accept a <code>NULL</code> buffer argument</td>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    <td>OSX10.5</td>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+  </tr>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+  <tr>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    <td>Adds <code>arc4random_uniform</code> and <code>arc4random_buf</code> functions</td>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    <td>OSX10.6</td>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+  </tr>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+  <tr>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    <td><code>string.h</code></td>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    <td>Adds <code>strnlen</code>, <code>strndup</code> and <code>memmem</code> functions</td>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    <td>OSX10.6</td>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+  </tr>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+  <tr>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    <td><code>time.h</code></td>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    <td>Adds <code>clock_gettime</code> function</td>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    <td>OSX10.11</td>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+  </tr>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+  <tr>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    <td><code>wchar.h</code></td>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    <td>Adds <code>wcsdup</code>, <code>wcsnlen</code>, <code>wcpcpy</code>,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        <code>wcpncpy</code>, <code>wcscasecmp</code>, and <code>wcsncasecmp</code>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        functions</td>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    <td>OSX10.6</td>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+  </tr>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+  <tr>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    <td><code>xlocale/_wchar.h</code></td>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    <td>Adds <code>wcscasecmp_l</code>, <code>wcsncasecmp_l</code> functions</td>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    <td>OSX10.6</td>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+  </tr>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+  <tr>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    <td rowspan="2"><code>sys/fcntl.h</code></td>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    <td>Adds missing <code>O_CLOEXEC</code>, <code>AT_FDCWD</code>, <code>AT_EACCESS</code>,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        <code>AT_SYMLINK_NOFOLLOW</code>, <code>AT_SYMLINK_FOLLOW</code>, and
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        <code>AT_REMOVEDIR</code> definitions</td>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    <td>as required (?)</td>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+  </tr>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+  <tr>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    <td>Adds <code>openat</code> function</td>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    <td>OSX10.9</td>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+  </tr>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+  <tr>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    <td><code>sys/mman.h</code></td>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    <td>Adds missing <code>MAP_ANONYMOUS</code> definition</td>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    <td>as required (?)</td>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+  </tr>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+  <tr>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    <td><code>sys/stdio.h</code></td>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    <td>Adds <code>renameat</code> function</td>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    <td>OSX10.9</td>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+  </tr>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+  <tr>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    <td rowspan="2"><code>sys/stat.h</code></td>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    <td>Adds <code>fchmodat</code>, <code>fstatat</code>, and <code>mkdirat</code> functions</td>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    <td>OSX10.9</td>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+  </tr>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+  <tr>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    <td>Adds <code>lchmod</code> function</td>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    <td>OSX10.4</td>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+  </tr>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+  <tr>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    <td rowspan="2"><code>sys/unistd.h</code></td>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    <td>Adds <code>getattrlistat</code>, <code>readlinkat</code>, <code>faccessat</code>,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        <code>fchownat</code>, <code>linkat</code>, <code>symlinkat</code>,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        and <code>unlinkat</code> functions</td>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    <td>OSX10.9</td>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+  </tr>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+  <tr>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    <td>Wraps <code>sysconf</code> to support <code>_SC_NPROCESSORS_CONF</code> and
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        <code>_SC_NPROCESSORS_ONLN</code></td>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    <td>OSX10.4</td>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+  </tr>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+</table>
</span></pre><pre style='margin:0'>

</pre>