<feed xmlns='http://www.w3.org/2005/Atom'>
<title>skalibs/src/include, branch v2.9.1.0</title>
<subtitle>The skarnet.org C programming library</subtitle>
<id>https://git.skarnet.org/cgit/skalibs/atom/src/include?h=v2.9.1.0</id>
<link rel='self' href='https://git.skarnet.org/cgit/skalibs/atom/src/include?h=v2.9.1.0'/>
<link rel='alternate' type='text/html' href='https://git.skarnet.org/cgit/skalibs/'/>
<updated>2019-10-18T08:13:51Z</updated>
<entry>
<title> __GNU__ is actually preferred to __gnu_hurd__, it seems</title>
<updated>2019-10-18T08:13:51Z</updated>
<author>
<name>Laurent Bercot</name>
<email>ska-skaware@skarnet.org</email>
</author>
<published>2019-10-18T08:13:51Z</published>
<link rel='alternate' type='text/html' href='https://git.skarnet.org/cgit/skalibs/commit/?id=a58c4b6b92c9036a25173c4e63d5235e1f9dcdae'/>
<id>urn:sha1:a58c4b6b92c9036a25173c4e63d5235e1f9dcdae</id>
<content type='text'>
</content>
</entry>
<entry>
<title> nonposix.h: define _GNU_SOURCE for Hurd, remove __GLIBC__ test</title>
<updated>2019-10-17T19:56:11Z</updated>
<author>
<name>Laurent Bercot</name>
<email>ska-skaware@skarnet.org</email>
</author>
<published>2019-10-17T19:56:11Z</published>
<link rel='alternate' type='text/html' href='https://git.skarnet.org/cgit/skalibs/commit/?id=4d47c49485c7af1107c0c2480f72d4780236a77f'/>
<id>urn:sha1:4d47c49485c7af1107c0c2480f72d4780236a77f</id>
<content type='text'>
__GLIBC__ and similar ftms are not defined in the compiler, but
in features.h, which isn't POSIX so cannot be included, and
standard headers can't be included either because nonposix.h
defines ftms that must exist *prior to* std headers inclusion.

The kernel ftms, however, are defined by the compiler, so we can
use them.
</content>
</entry>
<entry>
<title> Add path_canonicalize, prepare for 2.9.1.0</title>
<updated>2019-10-09T15:07:23Z</updated>
<author>
<name>Laurent Bercot</name>
<email>ska-skaware@skarnet.org</email>
</author>
<published>2019-10-09T15:07:23Z</published>
<link rel='alternate' type='text/html' href='https://git.skarnet.org/cgit/skalibs/commit/?id=f5e75663fef044cad02eef3eb7aef295312c1158'/>
<id>urn:sha1:f5e75663fef044cad02eef3eb7aef295312c1158</id>
<content type='text'>
</content>
</entry>
<entry>
<title> We're down to ONE rogue sysdep, boys. ONE.</title>
<updated>2019-09-20T19:55:29Z</updated>
<author>
<name>Laurent Bercot</name>
<email>ska-skaware@skarnet.org</email>
</author>
<published>2019-09-20T19:55:29Z</published>
<link rel='alternate' type='text/html' href='https://git.skarnet.org/cgit/skalibs/commit/?id=03f37879ef167dba6f5944716c06da81902e436e'/>
<id>urn:sha1:03f37879ef167dba6f5944716c06da81902e436e</id>
<content type='text'>
</content>
</entry>
<entry>
<title> Change tain_now_set_* API: also give an initial value</title>
<updated>2019-09-06T09:37:56Z</updated>
<author>
<name>Laurent Bercot</name>
<email>ska-skaware@skarnet.org</email>
</author>
<published>2019-09-06T09:37:56Z</published>
<link rel='alternate' type='text/html' href='https://git.skarnet.org/cgit/skalibs/commit/?id=48e06b650a393ca6fc0b65bd601d67904dd669e8'/>
<id>urn:sha1:48e06b650a393ca6fc0b65bd601d67904dd669e8</id>
<content type='text'>
</content>
</entry>
<entry>
<title> Big wallclock/stopwatch refactor. It was long overdue.</title>
<updated>2019-09-03T18:07:28Z</updated>
<author>
<name>Laurent Bercot</name>
<email>ska-skaware@skarnet.org</email>
</author>
<published>2019-09-03T18:07:28Z</published>
<link rel='alternate' type='text/html' href='https://git.skarnet.org/cgit/skalibs/commit/?id=e69717d9e0cd107f461abff85f255be82d7bd69b'/>
<id>urn:sha1:e69717d9e0cd107f461abff85f255be82d7bd69b</id>
<content type='text'>
 * --enable-clock and --enable-monotonic are gone
 * tain_sysclock() has been renamed tain_wallclock_read()
 * tain_wallclock_read() reads from CLOCK_REALTIME (or gettimeofday())
 * tain_clockmon[_init]() have been renamed to tain_stopwatch_[read|init]()
and now accept a monotonic clock name as an extra argument
 * tain_now() points to the system (wall) clock by default
 * tain_now_set_[stopwatch|wallclock]() can be used to switch

 Now to make a pass on all skarnet.org programs and add a
tain_now_set_stopwatch() call everywhere needed... &gt;.&gt;
</content>
</entry>
<entry>
<title> Factor all the BSD complaints into one new header</title>
<updated>2019-07-22T13:58:11Z</updated>
<author>
<name>Laurent Bercot</name>
<email>ska-skaware@skarnet.org</email>
</author>
<published>2019-07-22T13:58:11Z</published>
<link rel='alternate' type='text/html' href='https://git.skarnet.org/cgit/skalibs/commit/?id=d44819ae9c55f4d3c0f347b2640f58a2deddebb4'/>
<id>urn:sha1:d44819ae9c55f4d3c0f347b2640f58a2deddebb4</id>
<content type='text'>
</content>
</entry>
<entry>
<title> Rework skalibs/nonposix.h to avoid glibc squealing like a pig</title>
<updated>2019-07-22T11:52:00Z</updated>
<author>
<name>Laurent Bercot</name>
<email>ska-skaware@skarnet.org</email>
</author>
<published>2019-07-22T11:52:00Z</published>
<link rel='alternate' type='text/html' href='https://git.skarnet.org/cgit/skalibs/commit/?id=f51fc9df9760e23ab1d98170955c33415cf66137'/>
<id>urn:sha1:f51fc9df9760e23ab1d98170955c33415cf66137</id>
<content type='text'>
 Also move a conformance workaround from nonposix.h to posixishard.h
 This may break things on MacOS, needs testing.
</content>
</entry>
<entry>
<title> Add tryemptyregex/skalibs_regcomp, prepare for 2.8.1.0</title>
<updated>2019-05-11T06:22:36Z</updated>
<author>
<name>Laurent Bercot</name>
<email>ska-skaware@skarnet.org</email>
</author>
<published>2019-05-11T06:22:36Z</published>
<link rel='alternate' type='text/html' href='https://git.skarnet.org/cgit/skalibs/commit/?id=92e40f4f3b8e153b86093996d2a6d2a1160e105d'/>
<id>urn:sha1:92e40f4f3b8e153b86093996d2a6d2a1160e105d</id>
<content type='text'>
</content>
</entry>
<entry>
<title> Add skalibs/posixishard.h</title>
<updated>2019-02-19T16:23:24Z</updated>
<author>
<name>Laurent Bercot</name>
<email>ska-skaware@skarnet.org</email>
</author>
<published>2019-02-19T16:23:24Z</published>
<link rel='alternate' type='text/html' href='https://git.skarnet.org/cgit/skalibs/commit/?id=ff9333d473adb4ae1de2d9323394073793627823'/>
<id>urn:sha1:ff9333d473adb4ae1de2d9323394073793627823</id>
<content type='text'>
 This will break things. It's a known issue. Patches to other
packages will come later, to adapt them to the new API.

 To work around brokenness, there needs to be *two* different
headers:
 1. one to be used before including system headers, that maximizes
visibility by enabling system-dependent feature test macros
(that will be tested by system headers)
 2. one to be used after including system headers, that performs
preprocessor tests and defines.

 skalibs/nonposix.h is the first one.
 Previously, there was no second one, and the tests were scattered
all over. There was a strnlen declaration in skalibs/posixplz.h
(which serves a totally different function: declaring things that
should be in POSIX, but *are not*, i.e. working around problems in
the standard, instead of problems in systems failing to respect
the standard), a build-time sysdep for error.h, #defines for
MSG_NOSIGNAL, etc. etc.
 skalibs/posixishard.h now is the second one, and centralizes
all the tests.

 As a result, the eproto sysdep is unnecessary and has been removed.
skalibs/error.h is now a static header, it is not built anymore.
</content>
</entry>
</feed>
