]> git.draconx.ca Git - cdecl99.git/commit
libcdecl: Punt gnulib tls module.
authorNick Bowler <nbowler@draconx.ca>
Tue, 23 Jan 2024 06:40:24 +0000 (01:40 -0500)
committerNick Bowler <nbowler@draconx.ca>
Thu, 25 Jan 2024 05:34:31 +0000 (00:34 -0500)
commit1b96e9580714d7a677d10a8e286b3f8a2bddc6f5
tree76fd998a2d49ea345c76db5893135cb954d543c6
parentbeac10d6593fee948759c05d956b83db6803f2ec
libcdecl: Punt gnulib tls module.

It seems like the gnulib tls module doesn't actually help much.  Drop
it, and implement suitable shims directly in the error handling code.

It does not look like gnulib performs any feature tests regarding the
TLS functionality: it simply goes and uses the appropriate functions
for the selected API (posix, isoc, windows or none).

With the exception of destructor callbacks, all of these TLS APIs are
essentially identical.

Changing this doesn't fix the problem with TLS destructors on Windows
but it does delete almost 2 kilobytes of disfunctional gnulib code
that purports to implement TLS destructors without actually doing so.
Makefile.am
bootstrap
lib/local/modules/dx-threadlib
src/error.c
src/thread-posix.h [new file with mode: 0644]
src/thread-stdc.h [new file with mode: 0644]
src/thread-w32.h [new file with mode: 0644]