This file contains any messages produced by compilers while running configure, to aid debugging if configure makes a mistake. It was created by userspace-rcu configure 0.13.0, which was generated by GNU Autoconf 2.69. Invocation command line was $ ./configure --target=arm-buildroot-linux-uclibcgnueabi --host=arm-buildroot-linux-uclibcgnueabi --build=x86_64-pc-linux-gnu --prefix=/usr --exec-prefix=/usr --sysconfdir=/etc --localstatedir=/var --program-prefix= --disable-gtk-doc --disable-gtk-doc-html --disable-doc --disable-docs --disable-documentation --with-xmlto=no --with-fop=no --disable-dependency-tracking --enable-ipv6 --disable-nls --disable-static --enable-shared ## --------- ## ## Platform. ## ## --------- ## hostname = gcc159.bak.milne.osuosl.org uname -m = x86_64 uname -r = 4.9.0-16-amd64 uname -s = Linux uname -v = #1 SMP Debian 4.9.272-2 (2021-07-19) /usr/bin/uname -p = unknown /bin/uname -X = unknown /bin/arch = unknown /usr/bin/arch -k = unknown /usr/convex/getsysinfo = unknown /usr/bin/hostinfo = unknown /bin/machine = unknown /usr/bin/oslevel = unknown /bin/universe = unknown PATH: /home/buildroot/autobuild/instance-2/output-1/host/bin PATH: /home/buildroot/autobuild/instance-2/output-1/host/sbin PATH: /usr/local/sbin PATH: /usr/local/bin PATH: /usr/sbin PATH: /usr/bin PATH: /sbin PATH: /bin ## ----------- ## ## Core tests. ## ## ----------- ## configure:2503: checking build system type configure:2517: result: x86_64-pc-linux-gnu configure:2537: checking host system type configure:2550: result: arm-buildroot-linux-uclibcgnueabi configure:2570: checking target system type configure:2583: result: arm-buildroot-linux-uclibcgnueabi configure:2632: checking for a BSD-compatible install configure:2700: result: /usr/bin/install -c configure:2711: checking whether build environment is sane configure:2766: result: yes configure:2825: checking for arm-buildroot-linux-uclibcgnueabi-strip configure:2852: result: /home/buildroot/autobuild/instance-2/output-1/host/bin/arm-linux-strip configure:2917: checking for a thread-safe mkdir -p configure:2956: result: /bin/mkdir -p configure:2963: checking for gawk configure:2979: found /home/buildroot/autobuild/instance-2/output-1/host/bin/gawk configure:2990: result: gawk configure:3001: checking whether make sets $(MAKE) configure:3023: result: yes configure:3052: checking whether make supports nested variables configure:3069: result: yes configure:3196: checking whether to enable maintainer-specific portions of Makefiles configure:3205: result: yes configure:3231: checking whether make supports nested variables configure:3248: result: yes configure:3287: checking for arm-buildroot-linux-uclibcgnueabi-gcc configure:3314: result: /home/buildroot/autobuild/instance-2/output-1/host/bin/arm-linux-gcc configure:3583: checking for C compiler version configure:3592: /home/buildroot/autobuild/instance-2/output-1/host/bin/arm-linux-gcc --version >&5 arm-linux-gcc.br_real (Buildroot 2020.11.2) 9.3.0 Copyright (C) 2019 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. configure:3603: $? = 0 configure:3592: /home/buildroot/autobuild/instance-2/output-1/host/bin/arm-linux-gcc -v >&5 Using built-in specs. COLLECT_GCC=/home/buildroot/autobuild/instance-2/output-1/host/opt/ext-toolchain/bin/arm-linux-gcc.br_real COLLECT_LTO_WRAPPER=/home/buildroot/autobuild/instance-2/output-1/host/opt/ext-toolchain/bin/../libexec/gcc/arm-buildroot-linux-uclibcgnueabi/9.3.0/lto-wrapper Target: arm-buildroot-linux-uclibcgnueabi Configured with: ./configure --prefix=/opt/br-arm-basic-2020.11.2 --sysconfdir=/opt/br-arm-basic-2020.11.2/etc --enable-static --target=arm-buildroot-linux-uclibcgnueabi --with-sysroot=/opt/br-arm-basic-2020.11.2/arm-buildroot-linux-uclibcgnueabi/sysroot --enable-__cxa_atexit --with-gnu-ld --disable-libssp --disable-multilib --disable-decimal-float --with-gmp=/opt/br-arm-basic-2020.11.2 --with-mpc=/opt/br-arm-basic-2020.11.2 --with-mpfr=/opt/br-arm-basic-2020.11.2 --with-pkgversion='Buildroot 2020.11.2' --with-bugurl=http://bugs.buildroot.net/ --without-zstd --disable-libquadmath --disable-libquadmath-support --disable-libsanitizer --enable-tls --enable-threads --without-isl --without-cloog --with-float=soft --with-abi=aapcs-linux --with-cpu=arm926ej-s --with-float=soft --with-mode=arm --enable-languages=c --with-build-time-tools=/opt/br-arm-basic-2020.11.2/arm-buildroot-linux-uclibcgnueabi/bin --enable-shared --disable-libgomp Thread model: posix gcc version 9.3.0 (Buildroot 2020.11.2) COMPILER_PATH=/home/buildroot/autobuild/instance-2/output-1/host/opt/ext-toolchain/bin/../libexec/gcc/arm-buildroot-linux-uclibcgnueabi/9.3.0/:/home/buildroot/autobuild/instance-2/output-1/host/opt/ext-toolchain/bin/../libexec/gcc/:/home/buildroot/autobuild/instance-2/output-1/host/opt/ext-toolchain/bin/../lib/gcc/arm-buildroot-linux-uclibcgnueabi/9.3.0/../../../../arm-buildroot-linux-uclibcgnueabi/bin/ LIBRARY_PATH=/home/buildroot/autobuild/instance-2/output-1/host/opt/ext-toolchain/bin/../lib/gcc/arm-buildroot-linux-uclibcgnueabi/9.3.0/:/home/buildroot/autobuild/instance-2/output-1/host/opt/ext-toolchain/bin/../lib/gcc/:/home/buildroot/autobuild/instance-2/output-1/host/opt/ext-toolchain/bin/../lib/gcc/arm-buildroot-linux-uclibcgnueabi/9.3.0/../../../../arm-buildroot-linux-uclibcgnueabi/lib/:/home/buildroot/autobuild/instance-2/output-1/host/arm-buildroot-linux-uclibcgnueabi/sysroot/lib/:/home/buildroot/autobuild/instance-2/output-1/host/arm-buildroot-linux-uclibcgnueabi/sysroot/usr/lib/ COLLECT_GCC_OPTIONS='-mabi=aapcs-linux' '-mfloat-abi=soft' '-marm' '-mfloat-abi=soft' '-mcpu=arm926ej-s' '-fPIE' '-pie' '-v' '-mtls-dialect=gnu' '-march=armv5tej' ... rest of stderr output deleted ... configure:3603: $? = 1 configure:3592: /home/buildroot/autobuild/instance-2/output-1/host/bin/arm-linux-gcc -V >&5 arm-linux-gcc.br_real: error: unrecognized command line option '-V' configure:3603: $? = 1 configure:3592: /home/buildroot/autobuild/instance-2/output-1/host/bin/arm-linux-gcc -qversion >&5 arm-linux-gcc.br_real: error: unrecognized command line option '-qversion'; did you mean '--version'? configure:3603: $? = 1 configure:3623: checking whether the C compiler works configure:3645: /home/buildroot/autobuild/instance-2/output-1/host/bin/arm-linux-gcc -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -Os -g0 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 conftest.c >&5 configure:3649: $? = 0 configure:3697: result: yes configure:3700: checking for C compiler default output file name configure:3702: result: a.out configure:3708: checking for suffix of executables configure:3715: /home/buildroot/autobuild/instance-2/output-1/host/bin/arm-linux-gcc -o conftest -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -Os -g0 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 conftest.c >&5 configure:3719: $? = 0 configure:3741: result: configure:3763: checking whether we are cross compiling configure:3801: result: yes configure:3806: checking for suffix of object files configure:3828: /home/buildroot/autobuild/instance-2/output-1/host/bin/arm-linux-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -Os -g0 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 conftest.c >&5 configure:3832: $? = 0 configure:3853: result: o configure:3857: checking whether we are using the GNU C compiler configure:3876: /home/buildroot/autobuild/instance-2/output-1/host/bin/arm-linux-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -Os -g0 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 conftest.c >&5 configure:3876: $? = 0 configure:3885: result: yes configure:3894: checking whether /home/buildroot/autobuild/instance-2/output-1/host/bin/arm-linux-gcc accepts -g configure:3914: /home/buildroot/autobuild/instance-2/output-1/host/bin/arm-linux-gcc -c -g -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 conftest.c >&5 configure:3914: $? = 0 configure:3955: result: yes configure:3972: checking for /home/buildroot/autobuild/instance-2/output-1/host/bin/arm-linux-gcc option to accept ISO C89 configure:4035: /home/buildroot/autobuild/instance-2/output-1/host/bin/arm-linux-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -Os -g0 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 conftest.c >&5 configure:4035: $? = 0 configure:4048: result: none needed configure:4073: checking whether /home/buildroot/autobuild/instance-2/output-1/host/bin/arm-linux-gcc understands -c and -o together configure:4095: /home/buildroot/autobuild/instance-2/output-1/host/bin/arm-linux-gcc -c conftest.c -o conftest2.o configure:4098: $? = 0 configure:4095: /home/buildroot/autobuild/instance-2/output-1/host/bin/arm-linux-gcc -c conftest.c -o conftest2.o configure:4098: $? = 0 configure:4110: result: yes configure:4130: checking whether make supports the include directive configure:4145: make -f confmf.GNU && cat confinc.out make[1]: Entering directory '/home/buildroot/autobuild/instance-2/output-1/build/liburcu-0.13.0' make[1]: Leaving directory '/home/buildroot/autobuild/instance-2/output-1/build/liburcu-0.13.0' this is the am__doit target configure:4148: $? = 0 configure:4167: result: yes (GNU style) configure:4192: checking dependency style of /home/buildroot/autobuild/instance-2/output-1/host/bin/arm-linux-gcc configure:4303: result: none configure:4323: checking for /home/buildroot/autobuild/instance-2/output-1/host/bin/arm-linux-gcc option to accept ISO C99 configure:4472: /home/buildroot/autobuild/instance-2/output-1/host/bin/arm-linux-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -Os -g0 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 conftest.c >&5 conftest.c:54:9: error: unknown type name 'wchar_t' 54 | const wchar_t *name; | ^~~~~~~ configure:4472: $? = 1 configure: failed program was: | /* confdefs.h */ | #define PACKAGE_NAME "userspace-rcu" | #define PACKAGE_TARNAME "userspace-rcu" | #define PACKAGE_VERSION "0.13.0" | #define PACKAGE_STRING "userspace-rcu 0.13.0" | #define PACKAGE_BUGREPORT "mathieu dot desnoyers at efficios dot com" | #define PACKAGE_URL "http://liburcu.org/" | #define PACKAGE "userspace-rcu" | #define VERSION "0.13.0" | /* end confdefs.h. */ | #include | #include | #include | #include | #include | | // Check varargs macros. These examples are taken from C99 6.10.3.5. | #define debug(...) fprintf (stderr, __VA_ARGS__) | #define showlist(...) puts (#__VA_ARGS__) | #define report(test,...) ((test) ? puts (#test) : printf (__VA_ARGS__)) | static void | test_varargs_macros (void) | { | int x = 1234; | int y = 5678; | debug ("Flag"); | debug ("X = %d\n", x); | showlist (The first, second, and third items.); | report (x>y, "x is %d but y is %d", x, y); | } | | // Check long long types. | #define BIG64 18446744073709551615ull | #define BIG32 4294967295ul | #define BIG_OK (BIG64 / BIG32 == 4294967297ull && BIG64 % BIG32 == 0) | #if !BIG_OK | your preprocessor is broken; | #endif | #if BIG_OK | #else | your preprocessor is broken; | #endif | static long long int bignum = -9223372036854775807LL; | static unsigned long long int ubignum = BIG64; | | struct incomplete_array | { | int datasize; | double data[]; | }; | | struct named_init { | int number; | const wchar_t *name; | double average; | }; | | typedef const char *ccp; | | static inline int | test_restrict (ccp restrict text) | { | // See if C++-style comments work. | // Iterate through items via the restricted pointer. | // Also check for declarations in for loops. | for (unsigned int i = 0; *(text+i) != '\0'; ++i) | continue; | return 0; | } | | // Check varargs and va_copy. | static void | test_varargs (const char *format, ...) | { | va_list args; | va_start (args, format); | va_list args_copy; | va_copy (args_copy, args); | | const char *str; | int number; | float fnumber; | | while (*format) | { | switch (*format++) | { | case 's': // string | str = va_arg (args_copy, const char *); | break; | case 'd': // int | number = va_arg (args_copy, int); | break; | case 'f': // float | fnumber = va_arg (args_copy, double); | break; | default: | break; | } | } | va_end (args_copy); | va_end (args); | } | | int | main () | { | | // Check bool. | _Bool success = false; | | // Check restrict. | if (test_restrict ("String literal") == 0) | success = true; | char *restrict newvar = "Another string"; | | // Check varargs. | test_varargs ("s, d' f .", "string", 65, 34.234); | test_varargs_macros (); | | // Check flexible array members. | struct incomplete_array *ia = | malloc (sizeof (struct incomplete_array) + (sizeof (double) * 10)); | ia->datasize = 10; | for (int i = 0; i < ia->datasize; ++i) | ia->data[i] = i * 1.234; | | // Check named initializers. | struct named_init ni = { | .number = 34, | .name = L"Test wide string", | .average = 543.34343, | }; | | ni.number = 58; | | int dynamic_array[ni.number]; | dynamic_array[ni.number - 1] = 543; | | // work around unused variable warnings | return (!success || bignum == 0LL || ubignum == 0uLL || newvar[0] == 'x' | || dynamic_array[ni.number - 1] != 543); | | ; | return 0; | } configure:4472: /home/buildroot/autobuild/instance-2/output-1/host/bin/arm-linux-gcc -std=gnu99 -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -Os -g0 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 conftest.c >&5 conftest.c:54:9: error: unknown type name 'wchar_t' 54 | const wchar_t *name; | ^~~~~~~ configure:4472: $? = 1 configure: failed program was: | /* confdefs.h */ | #define PACKAGE_NAME "userspace-rcu" | #define PACKAGE_TARNAME "userspace-rcu" | #define PACKAGE_VERSION "0.13.0" | #define PACKAGE_STRING "userspace-rcu 0.13.0" | #define PACKAGE_BUGREPORT "mathieu dot desnoyers at efficios dot com" | #define PACKAGE_URL "http://liburcu.org/" | #define PACKAGE "userspace-rcu" | #define VERSION "0.13.0" | /* end confdefs.h. */ | #include | #include | #include | #include | #include | | // Check varargs macros. These examples are taken from C99 6.10.3.5. | #define debug(...) fprintf (stderr, __VA_ARGS__) | #define showlist(...) puts (#__VA_ARGS__) | #define report(test,...) ((test) ? puts (#test) : printf (__VA_ARGS__)) | static void | test_varargs_macros (void) | { | int x = 1234; | int y = 5678; | debug ("Flag"); | debug ("X = %d\n", x); | showlist (The first, second, and third items.); | report (x>y, "x is %d but y is %d", x, y); | } | | // Check long long types. | #define BIG64 18446744073709551615ull | #define BIG32 4294967295ul | #define BIG_OK (BIG64 / BIG32 == 4294967297ull && BIG64 % BIG32 == 0) | #if !BIG_OK | your preprocessor is broken; | #endif | #if BIG_OK | #else | your preprocessor is broken; | #endif | static long long int bignum = -9223372036854775807LL; | static unsigned long long int ubignum = BIG64; | | struct incomplete_array | { | int datasize; | double data[]; | }; | | struct named_init { | int number; | const wchar_t *name; | double average; | }; | | typedef const char *ccp; | | static inline int | test_restrict (ccp restrict text) | { | // See if C++-style comments work. | // Iterate through items via the restricted pointer. | // Also check for declarations in for loops. | for (unsigned int i = 0; *(text+i) != '\0'; ++i) | continue; | return 0; | } | | // Check varargs and va_copy. | static void | test_varargs (const char *format, ...) | { | va_list args; | va_start (args, format); | va_list args_copy; | va_copy (args_copy, args); | | const char *str; | int number; | float fnumber; | | while (*format) | { | switch (*format++) | { | case 's': // string | str = va_arg (args_copy, const char *); | break; | case 'd': // int | number = va_arg (args_copy, int); | break; | case 'f': // float | fnumber = va_arg (args_copy, double); | break; | default: | break; | } | } | va_end (args_copy); | va_end (args); | } | | int | main () | { | | // Check bool. | _Bool success = false; | | // Check restrict. | if (test_restrict ("String literal") == 0) | success = true; | char *restrict newvar = "Another string"; | | // Check varargs. | test_varargs ("s, d' f .", "string", 65, 34.234); | test_varargs_macros (); | | // Check flexible array members. | struct incomplete_array *ia = | malloc (sizeof (struct incomplete_array) + (sizeof (double) * 10)); | ia->datasize = 10; | for (int i = 0; i < ia->datasize; ++i) | ia->data[i] = i * 1.234; | | // Check named initializers. | struct named_init ni = { | .number = 34, | .name = L"Test wide string", | .average = 543.34343, | }; | | ni.number = 58; | | int dynamic_array[ni.number]; | dynamic_array[ni.number - 1] = 543; | | // work around unused variable warnings | return (!success || bignum == 0LL || ubignum == 0uLL || newvar[0] == 'x' | || dynamic_array[ni.number - 1] != 543); | | ; | return 0; | } configure:4472: /home/buildroot/autobuild/instance-2/output-1/host/bin/arm-linux-gcc -std=c99 -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -Os -g0 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 conftest.c >&5 conftest.c:54:9: error: unknown type name 'wchar_t' 54 | const wchar_t *name; | ^~~~~~~ configure:4472: $? = 1 configure: failed program was: | /* confdefs.h */ | #define PACKAGE_NAME "userspace-rcu" | #define PACKAGE_TARNAME "userspace-rcu" | #define PACKAGE_VERSION "0.13.0" | #define PACKAGE_STRING "userspace-rcu 0.13.0" | #define PACKAGE_BUGREPORT "mathieu dot desnoyers at efficios dot com" | #define PACKAGE_URL "http://liburcu.org/" | #define PACKAGE "userspace-rcu" | #define VERSION "0.13.0" | /* end confdefs.h. */ | #include | #include | #include | #include | #include | | // Check varargs macros. These examples are taken from C99 6.10.3.5. | #define debug(...) fprintf (stderr, __VA_ARGS__) | #define showlist(...) puts (#__VA_ARGS__) | #define report(test,...) ((test) ? puts (#test) : printf (__VA_ARGS__)) | static void | test_varargs_macros (void) | { | int x = 1234; | int y = 5678; | debug ("Flag"); | debug ("X = %d\n", x); | showlist (The first, second, and third items.); | report (x>y, "x is %d but y is %d", x, y); | } | | // Check long long types. | #define BIG64 18446744073709551615ull | #define BIG32 4294967295ul | #define BIG_OK (BIG64 / BIG32 == 4294967297ull && BIG64 % BIG32 == 0) | #if !BIG_OK | your preprocessor is broken; | #endif | #if BIG_OK | #else | your preprocessor is broken; | #endif | static long long int bignum = -9223372036854775807LL; | static unsigned long long int ubignum = BIG64; | | struct incomplete_array | { | int datasize; | double data[]; | }; | | struct named_init { | int number; | const wchar_t *name; | double average; | }; | | typedef const char *ccp; | | static inline int | test_restrict (ccp restrict text) | { | // See if C++-style comments work. | // Iterate through items via the restricted pointer. | // Also check for declarations in for loops. | for (unsigned int i = 0; *(text+i) != '\0'; ++i) | continue; | return 0; | } | | // Check varargs and va_copy. | static void | test_varargs (const char *format, ...) | { | va_list args; | va_start (args, format); | va_list args_copy; | va_copy (args_copy, args); | | const char *str; | int number; | float fnumber; | | while (*format) | { | switch (*format++) | { | case 's': // string | str = va_arg (args_copy, const char *); | break; | case 'd': // int | number = va_arg (args_copy, int); | break; | case 'f': // float | fnumber = va_arg (args_copy, double); | break; | default: | break; | } | } | va_end (args_copy); | va_end (args); | } | | int | main () | { | | // Check bool. | _Bool success = false; | | // Check restrict. | if (test_restrict ("String literal") == 0) | success = true; | char *restrict newvar = "Another string"; | | // Check varargs. | test_varargs ("s, d' f .", "string", 65, 34.234); | test_varargs_macros (); | | // Check flexible array members. | struct incomplete_array *ia = | malloc (sizeof (struct incomplete_array) + (sizeof (double) * 10)); | ia->datasize = 10; | for (int i = 0; i < ia->datasize; ++i) | ia->data[i] = i * 1.234; | | // Check named initializers. | struct named_init ni = { | .number = 34, | .name = L"Test wide string", | .average = 543.34343, | }; | | ni.number = 58; | | int dynamic_array[ni.number]; | dynamic_array[ni.number - 1] = 543; | | // work around unused variable warnings | return (!success || bignum == 0LL || ubignum == 0uLL || newvar[0] == 'x' | || dynamic_array[ni.number - 1] != 543); | | ; | return 0; | } configure:4472: /home/buildroot/autobuild/instance-2/output-1/host/bin/arm-linux-gcc -c99 -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -Os -g0 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 conftest.c >&5 arm-linux-gcc.br_real: error: unrecognized command line option '-c99' configure:4472: $? = 1 configure: failed program was: | /* confdefs.h */ | #define PACKAGE_NAME "userspace-rcu" | #define PACKAGE_TARNAME "userspace-rcu" | #define PACKAGE_VERSION "0.13.0" | #define PACKAGE_STRING "userspace-rcu 0.13.0" | #define PACKAGE_BUGREPORT "mathieu dot desnoyers at efficios dot com" | #define PACKAGE_URL "http://liburcu.org/" | #define PACKAGE "userspace-rcu" | #define VERSION "0.13.0" | /* end confdefs.h. */ | #include | #include | #include | #include | #include | | // Check varargs macros. These examples are taken from C99 6.10.3.5. | #define debug(...) fprintf (stderr, __VA_ARGS__) | #define showlist(...) puts (#__VA_ARGS__) | #define report(test,...) ((test) ? puts (#test) : printf (__VA_ARGS__)) | static void | test_varargs_macros (void) | { | int x = 1234; | int y = 5678; | debug ("Flag"); | debug ("X = %d\n", x); | showlist (The first, second, and third items.); | report (x>y, "x is %d but y is %d", x, y); | } | | // Check long long types. | #define BIG64 18446744073709551615ull | #define BIG32 4294967295ul | #define BIG_OK (BIG64 / BIG32 == 4294967297ull && BIG64 % BIG32 == 0) | #if !BIG_OK | your preprocessor is broken; | #endif | #if BIG_OK | #else | your preprocessor is broken; | #endif | static long long int bignum = -9223372036854775807LL; | static unsigned long long int ubignum = BIG64; | | struct incomplete_array | { | int datasize; | double data[]; | }; | | struct named_init { | int number; | const wchar_t *name; | double average; | }; | | typedef const char *ccp; | | static inline int | test_restrict (ccp restrict text) | { | // See if C++-style comments work. | // Iterate through items via the restricted pointer. | // Also check for declarations in for loops. | for (unsigned int i = 0; *(text+i) != '\0'; ++i) | continue; | return 0; | } | | // Check varargs and va_copy. | static void | test_varargs (const char *format, ...) | { | va_list args; | va_start (args, format); | va_list args_copy; | va_copy (args_copy, args); | | const char *str; | int number; | float fnumber; | | while (*format) | { | switch (*format++) | { | case 's': // string | str = va_arg (args_copy, const char *); | break; | case 'd': // int | number = va_arg (args_copy, int); | break; | case 'f': // float | fnumber = va_arg (args_copy, double); | break; | default: | break; | } | } | va_end (args_copy); | va_end (args); | } | | int | main () | { | | // Check bool. | _Bool success = false; | | // Check restrict. | if (test_restrict ("String literal") == 0) | success = true; | char *restrict newvar = "Another string"; | | // Check varargs. | test_varargs ("s, d' f .", "string", 65, 34.234); | test_varargs_macros (); | | // Check flexible array members. | struct incomplete_array *ia = | malloc (sizeof (struct incomplete_array) + (sizeof (double) * 10)); | ia->datasize = 10; | for (int i = 0; i < ia->datasize; ++i) | ia->data[i] = i * 1.234; | | // Check named initializers. | struct named_init ni = { | .number = 34, | .name = L"Test wide string", | .average = 543.34343, | }; | | ni.number = 58; | | int dynamic_array[ni.number]; | dynamic_array[ni.number - 1] = 543; | | // work around unused variable warnings | return (!success || bignum == 0LL || ubignum == 0uLL || newvar[0] == 'x' | || dynamic_array[ni.number - 1] != 543); | | ; | return 0; | } configure:4472: /home/buildroot/autobuild/instance-2/output-1/host/bin/arm-linux-gcc -AC99 -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -Os -g0 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 conftest.c >&5 : error: missing '(' after predicate conftest.c:54:9: error: unknown type name 'wchar_t' 54 | const wchar_t *name; | ^~~~~~~ configure:4472: $? = 1 configure: failed program was: | /* confdefs.h */ | #define PACKAGE_NAME "userspace-rcu" | #define PACKAGE_TARNAME "userspace-rcu" | #define PACKAGE_VERSION "0.13.0" | #define PACKAGE_STRING "userspace-rcu 0.13.0" | #define PACKAGE_BUGREPORT "mathieu dot desnoyers at efficios dot com" | #define PACKAGE_URL "http://liburcu.org/" | #define PACKAGE "userspace-rcu" | #define VERSION "0.13.0" | /* end confdefs.h. */ | #include | #include | #include | #include | #include | | // Check varargs macros. These examples are taken from C99 6.10.3.5. | #define debug(...) fprintf (stderr, __VA_ARGS__) | #define showlist(...) puts (#__VA_ARGS__) | #define report(test,...) ((test) ? puts (#test) : printf (__VA_ARGS__)) | static void | test_varargs_macros (void) | { | int x = 1234; | int y = 5678; | debug ("Flag"); | debug ("X = %d\n", x); | showlist (The first, second, and third items.); | report (x>y, "x is %d but y is %d", x, y); | } | | // Check long long types. | #define BIG64 18446744073709551615ull | #define BIG32 4294967295ul | #define BIG_OK (BIG64 / BIG32 == 4294967297ull && BIG64 % BIG32 == 0) | #if !BIG_OK | your preprocessor is broken; | #endif | #if BIG_OK | #else | your preprocessor is broken; | #endif | static long long int bignum = -9223372036854775807LL; | static unsigned long long int ubignum = BIG64; | | struct incomplete_array | { | int datasize; | double data[]; | }; | | struct named_init { | int number; | const wchar_t *name; | double average; | }; | | typedef const char *ccp; | | static inline int | test_restrict (ccp restrict text) | { | // See if C++-style comments work. | // Iterate through items via the restricted pointer. | // Also check for declarations in for loops. | for (unsigned int i = 0; *(text+i) != '\0'; ++i) | continue; | return 0; | } | | // Check varargs and va_copy. | static void | test_varargs (const char *format, ...) | { | va_list args; | va_start (args, format); | va_list args_copy; | va_copy (args_copy, args); | | const char *str; | int number; | float fnumber; | | while (*format) | { | switch (*format++) | { | case 's': // string | str = va_arg (args_copy, const char *); | break; | case 'd': // int | number = va_arg (args_copy, int); | break; | case 'f': // float | fnumber = va_arg (args_copy, double); | break; | default: | break; | } | } | va_end (args_copy); | va_end (args); | } | | int | main () | { | | // Check bool. | _Bool success = false; | | // Check restrict. | if (test_restrict ("String literal") == 0) | success = true; | char *restrict newvar = "Another string"; | | // Check varargs. | test_varargs ("s, d' f .", "string", 65, 34.234); | test_varargs_macros (); | | // Check flexible array members. | struct incomplete_array *ia = | malloc (sizeof (struct incomplete_array) + (sizeof (double) * 10)); | ia->datasize = 10; | for (int i = 0; i < ia->datasize; ++i) | ia->data[i] = i * 1.234; | | // Check named initializers. | struct named_init ni = { | .number = 34, | .name = L"Test wide string", | .average = 543.34343, | }; | | ni.number = 58; | | int dynamic_array[ni.number]; | dynamic_array[ni.number - 1] = 543; | | // work around unused variable warnings | return (!success || bignum == 0LL || ubignum == 0uLL || newvar[0] == 'x' | || dynamic_array[ni.number - 1] != 543); | | ; | return 0; | } configure:4472: /home/buildroot/autobuild/instance-2/output-1/host/bin/arm-linux-gcc -D_STDC_C99= -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -Os -g0 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 conftest.c >&5 conftest.c:54:9: error: unknown type name 'wchar_t' 54 | const wchar_t *name; | ^~~~~~~ configure:4472: $? = 1 configure: failed program was: | /* confdefs.h */ | #define PACKAGE_NAME "userspace-rcu" | #define PACKAGE_TARNAME "userspace-rcu" | #define PACKAGE_VERSION "0.13.0" | #define PACKAGE_STRING "userspace-rcu 0.13.0" | #define PACKAGE_BUGREPORT "mathieu dot desnoyers at efficios dot com" | #define PACKAGE_URL "http://liburcu.org/" | #define PACKAGE "userspace-rcu" | #define VERSION "0.13.0" | /* end confdefs.h. */ | #include | #include | #include | #include | #include | | // Check varargs macros. These examples are taken from C99 6.10.3.5. | #define debug(...) fprintf (stderr, __VA_ARGS__) | #define showlist(...) puts (#__VA_ARGS__) | #define report(test,...) ((test) ? puts (#test) : printf (__VA_ARGS__)) | static void | test_varargs_macros (void) | { | int x = 1234; | int y = 5678; | debug ("Flag"); | debug ("X = %d\n", x); | showlist (The first, second, and third items.); | report (x>y, "x is %d but y is %d", x, y); | } | | // Check long long types. | #define BIG64 18446744073709551615ull | #define BIG32 4294967295ul | #define BIG_OK (BIG64 / BIG32 == 4294967297ull && BIG64 % BIG32 == 0) | #if !BIG_OK | your preprocessor is broken; | #endif | #if BIG_OK | #else | your preprocessor is broken; | #endif | static long long int bignum = -9223372036854775807LL; | static unsigned long long int ubignum = BIG64; | | struct incomplete_array | { | int datasize; | double data[]; | }; | | struct named_init { | int number; | const wchar_t *name; | double average; | }; | | typedef const char *ccp; | | static inline int | test_restrict (ccp restrict text) | { | // See if C++-style comments work. | // Iterate through items via the restricted pointer. | // Also check for declarations in for loops. | for (unsigned int i = 0; *(text+i) != '\0'; ++i) | continue; | return 0; | } | | // Check varargs and va_copy. | static void | test_varargs (const char *format, ...) | { | va_list args; | va_start (args, format); | va_list args_copy; | va_copy (args_copy, args); | | const char *str; | int number; | float fnumber; | | while (*format) | { | switch (*format++) | { | case 's': // string | str = va_arg (args_copy, const char *); | break; | case 'd': // int | number = va_arg (args_copy, int); | break; | case 'f': // float | fnumber = va_arg (args_copy, double); | break; | default: | break; | } | } | va_end (args_copy); | va_end (args); | } | | int | main () | { | | // Check bool. | _Bool success = false; | | // Check restrict. | if (test_restrict ("String literal") == 0) | success = true; | char *restrict newvar = "Another string"; | | // Check varargs. | test_varargs ("s, d' f .", "string", 65, 34.234); | test_varargs_macros (); | | // Check flexible array members. | struct incomplete_array *ia = | malloc (sizeof (struct incomplete_array) + (sizeof (double) * 10)); | ia->datasize = 10; | for (int i = 0; i < ia->datasize; ++i) | ia->data[i] = i * 1.234; | | // Check named initializers. | struct named_init ni = { | .number = 34, | .name = L"Test wide string", | .average = 543.34343, | }; | | ni.number = 58; | | int dynamic_array[ni.number]; | dynamic_array[ni.number - 1] = 543; | | // work around unused variable warnings | return (!success || bignum == 0LL || ubignum == 0uLL || newvar[0] == 'x' | || dynamic_array[ni.number - 1] != 543); | | ; | return 0; | } configure:4472: /home/buildroot/autobuild/instance-2/output-1/host/bin/arm-linux-gcc -qlanglvl=extc99 -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -Os -g0 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 conftest.c >&5 arm-linux-gcc.br_real: error: unrecognized command line option '-qlanglvl=extc99' configure:4472: $? = 1 configure: failed program was: | /* confdefs.h */ | #define PACKAGE_NAME "userspace-rcu" | #define PACKAGE_TARNAME "userspace-rcu" | #define PACKAGE_VERSION "0.13.0" | #define PACKAGE_STRING "userspace-rcu 0.13.0" | #define PACKAGE_BUGREPORT "mathieu dot desnoyers at efficios dot com" | #define PACKAGE_URL "http://liburcu.org/" | #define PACKAGE "userspace-rcu" | #define VERSION "0.13.0" | /* end confdefs.h. */ | #include | #include | #include | #include | #include | | // Check varargs macros. These examples are taken from C99 6.10.3.5. | #define debug(...) fprintf (stderr, __VA_ARGS__) | #define showlist(...) puts (#__VA_ARGS__) | #define report(test,...) ((test) ? puts (#test) : printf (__VA_ARGS__)) | static void | test_varargs_macros (void) | { | int x = 1234; | int y = 5678; | debug ("Flag"); | debug ("X = %d\n", x); | showlist (The first, second, and third items.); | report (x>y, "x is %d but y is %d", x, y); | } | | // Check long long types. | #define BIG64 18446744073709551615ull | #define BIG32 4294967295ul | #define BIG_OK (BIG64 / BIG32 == 4294967297ull && BIG64 % BIG32 == 0) | #if !BIG_OK | your preprocessor is broken; | #endif | #if BIG_OK | #else | your preprocessor is broken; | #endif | static long long int bignum = -9223372036854775807LL; | static unsigned long long int ubignum = BIG64; | | struct incomplete_array | { | int datasize; | double data[]; | }; | | struct named_init { | int number; | const wchar_t *name; | double average; | }; | | typedef const char *ccp; | | static inline int | test_restrict (ccp restrict text) | { | // See if C++-style comments work. | // Iterate through items via the restricted pointer. | // Also check for declarations in for loops. | for (unsigned int i = 0; *(text+i) != '\0'; ++i) | continue; | return 0; | } | | // Check varargs and va_copy. | static void | test_varargs (const char *format, ...) | { | va_list args; | va_start (args, format); | va_list args_copy; | va_copy (args_copy, args); | | const char *str; | int number; | float fnumber; | | while (*format) | { | switch (*format++) | { | case 's': // string | str = va_arg (args_copy, const char *); | break; | case 'd': // int | number = va_arg (args_copy, int); | break; | case 'f': // float | fnumber = va_arg (args_copy, double); | break; | default: | break; | } | } | va_end (args_copy); | va_end (args); | } | | int | main () | { | | // Check bool. | _Bool success = false; | | // Check restrict. | if (test_restrict ("String literal") == 0) | success = true; | char *restrict newvar = "Another string"; | | // Check varargs. | test_varargs ("s, d' f .", "string", 65, 34.234); | test_varargs_macros (); | | // Check flexible array members. | struct incomplete_array *ia = | malloc (sizeof (struct incomplete_array) + (sizeof (double) * 10)); | ia->datasize = 10; | for (int i = 0; i < ia->datasize; ++i) | ia->data[i] = i * 1.234; | | // Check named initializers. | struct named_init ni = { | .number = 34, | .name = L"Test wide string", | .average = 543.34343, | }; | | ni.number = 58; | | int dynamic_array[ni.number]; | dynamic_array[ni.number - 1] = 543; | | // work around unused variable warnings | return (!success || bignum == 0LL || ubignum == 0uLL || newvar[0] == 'x' | || dynamic_array[ni.number - 1] != 543); | | ; | return 0; | } configure:4488: result: unsupported configure:4498: checking for /home/buildroot/autobuild/instance-2/output-1/host/bin/arm-linux-gcc option to accept ISO C89 configure:4574: result: none needed configure:4593: checking for /home/buildroot/autobuild/instance-2/output-1/host/bin/arm-linux-gcc option to accept ISO Standard C configure:4604: result: none needed configure:4614: error: The compiler does not support C99 ## ---------------- ## ## Cache variables. ## ## ---------------- ## ac_cv_build=x86_64-pc-linux-gnu ac_cv_c_bigendian=no ac_cv_c_compiler_gnu=yes ac_cv_env_CC_set=set ac_cv_env_CC_value=/home/buildroot/autobuild/instance-2/output-1/host/bin/arm-linux-gcc ac_cv_env_CFLAGS_set=set ac_cv_env_CFLAGS_value='-D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -Os -g0 ' ac_cv_env_CPPFLAGS_set=set ac_cv_env_CPPFLAGS_value='-D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64' ac_cv_env_CPP_set=set ac_cv_env_CPP_value=/home/buildroot/autobuild/instance-2/output-1/host/bin/arm-linux-cpp ac_cv_env_LDFLAGS_set=set ac_cv_env_LDFLAGS_value= ac_cv_env_LIBS_set= ac_cv_env_LIBS_value= ac_cv_env_LT_SYS_LIBRARY_PATH_set= ac_cv_env_LT_SYS_LIBRARY_PATH_value= ac_cv_env_build_alias_set=set ac_cv_env_build_alias_value=x86_64-pc-linux-gnu ac_cv_env_host_alias_set=set ac_cv_env_host_alias_value=arm-buildroot-linux-uclibcgnueabi ac_cv_env_target_alias_set=set ac_cv_env_target_alias_value=arm-buildroot-linux-uclibcgnueabi ac_cv_func_calloc_0_nonnull=yes ac_cv_func_malloc_0_nonnull=yes ac_cv_func_memcmp_working=yes ac_cv_func_mmap_fixed_mapped=yes ac_cv_func_realloc_0_nonnull=yes ac_cv_have_decl_malloc=yes ac_cv_host=arm-buildroot-linux-uclibcgnueabi ac_cv_lbl_unaligned_fail=yes ac_cv_objext=o ac_cv_path_install='/usr/bin/install -c' ac_cv_path_mkdir=/bin/mkdir ac_cv_prog_AWK=gawk ac_cv_prog_CC=/home/buildroot/autobuild/instance-2/output-1/host/bin/arm-linux-gcc ac_cv_prog_STRIP=/home/buildroot/autobuild/instance-2/output-1/host/bin/arm-linux-strip ac_cv_prog_cc_c89= ac_cv_prog_cc_c99=no ac_cv_prog_cc_g=yes ac_cv_prog_cc_stdc= ac_cv_prog_make_make_set=yes ac_cv_target=arm-buildroot-linux-uclibcgnueabi am_cv_CC_dependencies_compiler_type=none am_cv_make_support_nested_variables=yes am_cv_prog_cc_c_o=yes gl_cv_func_malloc_0_nonnull=yes lt_cv_sys_lib_search_path_spec= ## ----------------- ## ## Output variables. ## ## ----------------- ## ACLOCAL='${SHELL} /home/buildroot/autobuild/instance-2/output-1/build/liburcu-0.13.0/config/missing aclocal-1.16' AMDEPBACKSLASH='' AMDEP_FALSE='' AMDEP_TRUE='#' AMTAR='$${TAR-tar}' AM_BACKSLASH='\' AM_CFLAGS='' AM_CPPFLAGS='' AM_DEFAULT_V='$(AM_DEFAULT_VERBOSITY)' AM_DEFAULT_VERBOSITY='0' AM_V='$(V)' AR='/home/buildroot/autobuild/instance-2/output-1/host/bin/arm-linux-ar' AUTOCONF='${SHELL} /home/buildroot/autobuild/instance-2/output-1/build/liburcu-0.13.0/config/missing autoconf' AUTOHEADER='${SHELL} /home/buildroot/autobuild/instance-2/output-1/build/liburcu-0.13.0/config/missing autoheader' AUTOMAKE='${SHELL} /home/buildroot/autobuild/instance-2/output-1/build/liburcu-0.13.0/config/missing automake-1.16' AWK='gawk' CC='/home/buildroot/autobuild/instance-2/output-1/host/bin/arm-linux-gcc' CCDEPMODE='depmode=none' CFLAGS='-D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -Os -g0 ' CPP='/home/buildroot/autobuild/instance-2/output-1/host/bin/arm-linux-cpp' CPPFLAGS='-D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64' CYGPATH_W='echo' DEFS='' DEPDIR='.deps' DLLTOOL='' DSYMUTIL='' DUMPBIN='' ECHO_C='' ECHO_N='-n' ECHO_T='' EGREP='' ENABLE_EXAMPLES_FALSE='' ENABLE_EXAMPLES_TRUE='' EXEEXT='' FGREP='' GETCONF='' GREP='' INSTALL_DATA='${INSTALL} -m 644' INSTALL_PROGRAM='${INSTALL}' INSTALL_SCRIPT='${INSTALL}' INSTALL_STRIP_PROGRAM='$(install_sh) -c -s' LD='/home/buildroot/autobuild/instance-2/output-1/host/bin/arm-linux-ld' LDFLAGS='' LIBOBJS='' LIBS='' LIBTOOL='' LIPO='' LN_S='' LTLIBOBJS='' LT_NO_UNDEFINED='' LT_SYS_LIBRARY_PATH='' MAINT='' MAINTAINER_MODE_FALSE='#' MAINTAINER_MODE_TRUE='' MAKEINFO='${SHELL} /home/buildroot/autobuild/instance-2/output-1/build/liburcu-0.13.0/config/missing makeinfo' MANIFEST_TOOL='' MKDIR_P='/bin/mkdir -p' NM='/home/buildroot/autobuild/instance-2/output-1/host/bin/arm-linux-nm' NMEDIT='' NPROC='' NPROC_CMD='' OBJDUMP='/home/buildroot/autobuild/instance-2/output-1/host/bin/arm-linux-objdump' OBJEXT='o' OTOOL64='' OTOOL='' PACKAGE='userspace-rcu' PACKAGE_BUGREPORT='mathieu dot desnoyers at efficios dot com' PACKAGE_NAME='userspace-rcu' PACKAGE_STRING='userspace-rcu 0.13.0' PACKAGE_TARNAME='userspace-rcu' PACKAGE_URL='http://liburcu.org/' PACKAGE_VERSION='0.13.0' PATH_SEPARATOR=':' PTHREAD_CC='' PTHREAD_CFLAGS='' PTHREAD_LIBS='' RANLIB='/home/buildroot/autobuild/instance-2/output-1/host/bin/arm-linux-ranlib' SED='' SET_MAKE='' SHELL='/bin/bash' STRIP='/home/buildroot/autobuild/instance-2/output-1/host/bin/arm-linux-strip' URCU_LIBRARY_VERSION='' VERSION='0.13.0' ac_ct_AR='' ac_ct_CC='' ac_ct_DUMPBIN='' am__EXEEXT_FALSE='' am__EXEEXT_TRUE='' am__fastdepCC_FALSE='' am__fastdepCC_TRUE='#' am__include='include' am__isrc='' am__leading_dot='.' am__nodep='' am__quote='' am__tar='$${TAR-tar} chof - "$$tardir"' am__untar='$${TAR-tar} xf -' ax_pthread_config='' bindir='${exec_prefix}/bin' build='x86_64-pc-linux-gnu' build_alias='x86_64-pc-linux-gnu' build_cpu='x86_64' build_os='linux-gnu' build_vendor='pc' datadir='${datarootdir}' datarootdir='${prefix}/share' docdir='${datarootdir}/doc/${PACKAGE_TARNAME}' dvidir='${docdir}' exec_prefix='/usr' host='arm-buildroot-linux-uclibcgnueabi' host_alias='arm-buildroot-linux-uclibcgnueabi' host_cpu='arm' host_os='linux-uclibcgnueabi' host_vendor='buildroot' htmldir='${docdir}' includedir='${prefix}/include' infodir='${datarootdir}/info' install_sh='${SHELL} /home/buildroot/autobuild/instance-2/output-1/build/liburcu-0.13.0/config/install-sh' libdir='${exec_prefix}/lib' libexecdir='${exec_prefix}/libexec' localedir='${datarootdir}/locale' localstatedir='/var' mandir='${datarootdir}/man' mkdir_p='$(MKDIR_P)' oldincludedir='/usr/include' pdfdir='${docdir}' pprint_tput='' prefix='/usr' program_transform_name='s&^&&' psdir='${docdir}' runstatedir='${localstatedir}/run' sbindir='${exec_prefix}/sbin' sharedstatedir='${prefix}/com' sysconfdir='/etc' target='arm-buildroot-linux-uclibcgnueabi' target_alias='arm-buildroot-linux-uclibcgnueabi' target_cpu='arm' target_os='linux-uclibcgnueabi' target_vendor='buildroot' ## ----------- ## ## confdefs.h. ## ## ----------- ## /* confdefs.h */ #define PACKAGE_NAME "userspace-rcu" #define PACKAGE_TARNAME "userspace-rcu" #define PACKAGE_VERSION "0.13.0" #define PACKAGE_STRING "userspace-rcu 0.13.0" #define PACKAGE_BUGREPORT "mathieu dot desnoyers at efficios dot com" #define PACKAGE_URL "http://liburcu.org/" #define PACKAGE "userspace-rcu" #define VERSION "0.13.0" configure: exit 1