gcc/libgo/go
Ian Lance Taylor e73d9fcafb runtime: portable access to sigev_notify_thread_id
Previously, libgo relied on the _sigev_un implementation-specific
field in struct sigevent, which is only available on glibc.
This patch uses the sigev_notify_thread_id macro instead which is
mandated by timer_create(2). In theory, this should work with any libc
implementation for Linux. Unfortunately, there is an open glibc bug
as glibc does not define this macro. For this reason, a glibc-specific
workaround is required. Other libcs (such as musl) define the macro
and don't require the workaround.

See https://sourceware.org/bugzilla/show_bug.cgi?id=27417

This makes libgo compatible with musl libc.

Based on patch by Sören Tempel.

Reviewed-on: https://go-review.googlesource.com/c/gofrontend/+/434755
2022-09-27 09:30:23 -07:00
..
archive libgo: update to Go1.18beta2 2022-02-11 15:01:19 -08:00
bufio libgo: update to Go1.18beta2 2022-02-11 15:01:19 -08:00
builtin libgo: update to Go1.18rc1 release 2022-02-18 13:12:08 -08:00
bytes libgo: update to Go1.18rc1 release 2022-02-18 13:12:08 -08:00
cmd cmd/cgo: add and use runtime/cgo.Incomplete instead of //go:notinheap 2022-09-22 06:28:19 -07:00
compress libgo: update to Go1.18beta2 2022-02-11 15:01:19 -08:00
container libgo: update to Go1.18beta2 2022-02-11 15:01:19 -08:00
context libgo: update to Go1.18beta2 2022-02-11 15:01:19 -08:00
crypto libgo: update to Go1.18rc1 release 2022-02-18 13:12:08 -08:00
database/sql libgo: update to Go1.18rc1 release 2022-02-18 13:12:08 -08:00
debug libgo: update to Go1.18rc1 release 2022-02-18 13:12:08 -08:00
embed libgo: update to Go1.18beta2 2022-02-11 15:01:19 -08:00
encoding libgo: update to final Go 1.18 release 2022-03-16 13:52:32 -07:00
errors libgo: update to Go1.18beta2 2022-02-11 15:01:19 -08:00
expvar libgo: update to Go1.18beta2 2022-02-11 15:01:19 -08:00
flag libgo: update to Go1.18beta2 2022-02-11 15:01:19 -08:00
fmt libgo: update to Go1.18beta2 2022-02-11 15:01:19 -08:00
go libgo: update to final Go 1.18 release 2022-03-16 13:52:32 -07:00
golang.org/x libgo: update to Go1.18beta2 2022-02-11 15:01:19 -08:00
hash libgo: update to Go1.18beta2 2022-02-11 15:01:19 -08:00
html libgo: update to Go1.18beta2 2022-02-11 15:01:19 -08:00
image libgo: update to Go1.18beta2 2022-02-11 15:01:19 -08:00
index/suffixarray libgo: update to Go1.18beta2 2022-02-11 15:01:19 -08:00
internal libgo: update to final Go 1.18 release 2022-03-16 13:52:32 -07:00
io libgo: update to Go1.18beta2 2022-02-11 15:01:19 -08:00
log libgo: update to Go1.18beta2 2022-02-11 15:01:19 -08:00
math libgo: update to Go1.18beta2 2022-02-11 15:01:19 -08:00
mime libgo: update to Go1.18beta2 2022-02-11 15:01:19 -08:00
net libgo: update to final Go 1.18 release 2022-03-16 13:52:32 -07:00
os libgo: fix AIX build for the Go1.18 update 2022-03-04 10:19:50 -08:00
path libgo: update to Go1.18beta2 2022-02-11 15:01:19 -08:00
plugin libgo: update to Go1.18beta2 2022-02-11 15:01:19 -08:00
reflect libgo: update to Go1.18beta2 2022-02-11 15:01:19 -08:00
regexp libgo: update to Go1.18rc1 release 2022-02-18 13:12:08 -08:00
runtime runtime: portable access to sigev_notify_thread_id 2022-09-27 09:30:23 -07:00
sort libgo: update to Go1.18beta2 2022-02-11 15:01:19 -08:00
strconv libgo: update to Go1.18beta2 2022-02-11 15:01:19 -08:00
strings libgo: update to final Go 1.18 release 2022-03-16 13:52:32 -07:00
sync libgo: update to Go1.18beta2 2022-02-11 15:01:19 -08:00
syscall libgo: permit loff_t and off_t to be macros 2022-06-17 14:27:06 -07:00
testdata
testing libgo: update to Go1.18rc1 release 2022-02-18 13:12:08 -08:00
text libgo: update to Go1.18beta2 2022-02-11 15:01:19 -08:00
time libgo: update to Go1.18rc1 release 2022-02-18 13:12:08 -08:00
unicode libgo: update to Go1.18beta2 2022-02-11 15:01:19 -08:00
vendor libgo: update to Go1.18beta2 2022-02-11 15:01:19 -08:00
go.mod libgo: update to Go1.18beta2 2022-02-11 15:01:19 -08:00