Commit 19e83f6b authored by Peter Maydell's avatar Peter Maydell Committed by Blue Swirl
Browse files

configure: Make epoll_create1 test work around SPARC glibc bug



Work around a SPARC glibc bug which caused the epoll_create1 configure
test to wrongly claim that the function was present. Some versions of
SPARC glibc provided the function in the library but didn't declare
it in the include file; the result is that gcc warns about an implicit
declaration but a link succeeds. So we reference the function as a
value rather than a function call to induce a compile time error
if the declaration was not present.

Signed-off-by: default avatarPeter Maydell <peter.maydell@linaro.org>
Signed-off-by: default avatarBlue Swirl <blauwirbel@gmail.com>
parent 143f6ffe
Loading
Loading
Loading
Loading
+9 −1
Original line number Diff line number Diff line
@@ -2225,7 +2225,15 @@ cat > $TMPC << EOF

int main(void)
{
    epoll_create1(0);
    /* Note that we use epoll_create1 as a value, not as
     * a function being called. This is necessary so that on
     * old SPARC glibc versions where the function was present in
     * the library but not declared in the header file we will
     * fail the configure check. (Otherwise we will get a compiler
     * warning but not an error, and will proceed to fail the
     * qemu compile where we compile with -Werror.)
     */
    epoll_create1;
    return 0;
}
EOF