Yuqian Yang, le ven. 07 févr. 2025 23:33:11 +0800, a ecrit: > gettid is not available on GNU/Hurd and not defined in > glibc. It is specific to Linux for its thread > implementation, while GNU/Hurd uses a different one. > Without a definition, compiling libgav1 on GNU/Hurd > will result in an error of undeclared function. > > In commit f06328bf, we have already fixed a mistake > usage of a pthread api on GNU/Hurd. The reason why > this error is not noticed might be that abseil has > failed to build on GNU/Hurd for a long time, > therefore libgav1 might have not been compiled once > as well. > > Change-Id: Id0a8f8dbd7660d4dbd0f2968b670d439a273fe20 > Signed-off-by: Yuqian Yang <crup...@crupest.life> > --- > src/utils/threadpool.cc | 4 ++-- > 1 file changed, 2 insertions(+), 2 deletions(-) > > diff --git a/src/utils/threadpool.cc b/src/utils/threadpool.cc > index ad79ba2..048ad59 100644 > --- a/src/utils/threadpool.cc > +++ b/src/utils/threadpool.cc > @@ -44,7 +44,7 @@ > // Linux. > #if defined(__ANDROID__) > static pid_t GetTid() { return gettid(); } > -#elif defined(__GLIBC__) > +#elif defined(__GLIBC__) && !defined(__GNU__)
Yes, that will be fine. > // The glibc wrapper for the gettid() system call was added in glibc 2.30. > // Emulate it for older versions of glibc. > #if __GLIBC__ > 2 || (__GLIBC__ == 2 && __GLIBC_MINOR__ >= 30) > @@ -54,7 +54,7 @@ static pid_t GetTid() { return gettid(); } > > static pid_t GetTid() { return static_cast<pid_t>(syscall(SYS_gettid)); } > #endif // glibc 2.30 or later. > -#endif // defined(__GLIBC__) > +#endif // defined(__GLIBC__) && !defined(__GNU__) > > namespace libgav1 { > > -- > Yuqian Yang <crup...@crupest.life>