http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55989
Bug #: 55989
Summary: [4.8 regresion] build failure in libsanitizer
Classification: Unclassified
Product: gcc
Version: 4.8.0
Status: UNCONFIRMED
Severity: blocker
Priority: P3
Component: sanitizer
AssignedTo: [email protected]
ReportedBy: [email protected]
CC: [email protected], [email protected],
[email protected], [email protected]
libsanitizer/sanitizer_common/sanitizer_linux.cc in the 4.8-20130113 snaphot
contains the following calls
prctl(PR_SET_NAME, (unsigned long)name, 0, 0, 0)
prctl(PR_GET_NAME, (unsigned long)buff, 0, 0, 0)
However, PR_{SET,GET}_NAME did not exist prior to Linux kernel version 2.6.9,
resulting in build failures on Linux systems with older kernels (or even with
new kernels but old headers). The failure is show below.
I could find no indication in the target-specific issues in
gcc/doc/install.texi to suggest that support for Linux kernel < 2.6.9 is being
dropped.
ADDITIONALLY, the warning (final output line below) about an unrecognized
command line option appears suspicious, since this is being built with the
"xgcc" compiler.
-Paul
libtool: compile: /usr/local/pkg/upc/nightly/compiler/bld/./gcc/xgcc
-shared-libgcc -B/usr/local/pkg/upc/nightly/compiler/bld/./gcc -nostdinc++
-L/usr/local/pkg/upc/nightly/compiler/bld/i686-pc-linux-gnu/libstdc++-v3/src
-L/usr/local/pkg/upc/nightly/compiler/bld/i686-pc-linux-gnu/libstdc++-v3/src/.libs
-B/usr/local/pkg/upc/nightly/compiler/install/i686-pc-linux-gnu/bin/
-B/usr/local/pkg/upc/nightly/compiler/install/i686-pc-linux-gnu/lib/ -isystem
/usr/local/pkg/upc/nightly/compiler/install/i686-pc-linux-gnu/include -isystem
/usr/local/pkg/upc/nightly/compiler/install/i686-pc-linux-gnu/sys-include
-D_GNU_SOURCE -D_DEBUG -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS
-D__STDC_LIMIT_MACROS -I.
-I/usr/local/pkg/upc/nightly/compiler/gupc-src/libsanitizer/sanitizer_common -I
/usr/local/pkg/upc/nightly/compiler/gupc-src/libsanitizer/include -Wall -W
-Wno-unused-parameter -Wwrite-strings -pedantic -Wno-long-long -fPIC
-fno-builtin -fno-exceptions -fomit-frame-pointer -funwind-tables
-fvisibility=hidden -Wno-variadic-macros -Wno-c99-extensions
-I../../libstdc++-v3/include -I../../libstdc++-v3/include/i686-pc-linux-gnu
-I/usr/local/pkg/upc/nightly/compiler/gupc-src/libsanitizer/../libstdc++-v3/libsupc++
-g -O2 -D_GNU_SOURCE -MT sanitizer_linux.lo -MD -MP -MF
.deps/sanitizer_linux.Tpo -c
/usr/local/pkg/upc/nightly/compiler/gupc-src/libsanitizer/sanitizer_common/sanitizer_linux.cc
-fPIC -DPIC -o .libs/sanitizer_linux.o
/usr/local/pkg/upc/nightly/compiler/gupc-src/libsanitizer/sanitizer_common/sanitizer_linux.cc:
In function 'bool __sanitizer::SanitizerSetThreadName(const char*)':
/usr/local/pkg/upc/nightly/compiler/gupc-src/libsanitizer/sanitizer_common/sanitizer_linux.cc:369:21:
error: 'PR_SET_NAME' was not declared in this scope
return 0 == prctl(PR_SET_NAME, (unsigned long)name, 0, 0, 0); // NOLINT
^
/usr/local/pkg/upc/nightly/compiler/gupc-src/libsanitizer/sanitizer_common/sanitizer_linux.cc:
In function 'bool __sanitizer::SanitizerGetThreadName(char*, int)':
/usr/local/pkg/upc/nightly/compiler/gupc-src/libsanitizer/sanitizer_common/sanitizer_linux.cc:374:13:
error: 'PR_GET_NAME' was not declared in this scope
if (prctl(PR_GET_NAME, (unsigned long)buff, 0, 0, 0)) // NOLINT
^
/usr/local/pkg/upc/nightly/compiler/gupc-src/libsanitizer/sanitizer_common/sanitizer_linux.cc:
In function 'bool __sanitizer::SanitizerSetThreadName(const char*)':
/usr/local/pkg/upc/nightly/compiler/gupc-src/libsanitizer/sanitizer_common/sanitizer_linux.cc:370:1:
warning: control reaches end of non-void function [-Wreturn-type]
}
^
At global scope:
cc1plus: warning: unrecognized command line option "-Wno-c99-extensions"
[enabled by default]