This file contains any messages produced by compilers while running configure, to aid debugging if configure makes a mistake. It was created by xcrypt configure 4.4.36, which was generated by GNU Autoconf 2.71. Invocation command line was $ ./configure --target=aarch64_be-buildroot-linux-gnu --host=aarch64_be-buildroot-linux-gnu --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 --enable-nls --disable-static --enable-shared --disable-werror --disable-obsolete_api ## --------- ## ## Platform. ## ## --------- ## hostname = br-autobuild-1.osuosl.org uname -m = x86_64 uname -r = 6.0.11-300.fc37.x86_64 uname -s = Linux uname -v = #1 SMP PREEMPT_DYNAMIC Fri Dec 2 20:47:45 UTC 2022 /usr/bin/uname -p = x86_64 /bin/uname -X = unknown /bin/arch = x86_64 /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-3/output-1/host/bin/ PATH: /home/buildroot/autobuild/instance-3/output-1/host/sbin/ PATH: /usr/local/sbin/ PATH: /usr/local/bin/ PATH: /usr/sbin/ PATH: /usr/bin/ ## ----------- ## ## Core tests. ## ## ----------- ## configure:2598: looking for aux files: ltmain.sh compile config.guess config.sub missing install-sh configure:2611: trying ./build-aux/m4-autogen/ configure:2640: ./build-aux/m4-autogen/ltmain.sh found configure:2640: ./build-aux/m4-autogen/compile found configure:2640: ./build-aux/m4-autogen/config.guess found configure:2640: ./build-aux/m4-autogen/config.sub found configure:2640: ./build-aux/m4-autogen/missing found configure:2622: ./build-aux/m4-autogen/install-sh found configure:2776: checking for a BSD-compatible install configure:2849: result: /usr/bin/install -c configure:2860: checking whether build environment is sane configure:2915: result: yes configure:2971: checking for aarch64_be-buildroot-linux-gnu-strip configure:3003: result: /bin/true configure:3074: checking for a race-free mkdir -p configure:3118: result: /usr/bin/mkdir -p configure:3125: checking for gawk configure:3146: found /usr/bin/gawk configure:3157: result: gawk configure:3168: checking whether make sets $(MAKE) configure:3191: result: yes configure:3221: checking whether make supports nested variables configure:3239: result: yes configure:3390: checking build system type configure:3405: result: x86_64-pc-linux-gnu configure:3425: checking host system type configure:3439: result: aarch64_be-buildroot-linux-gnu configure:3476: checking for aarch64_be-buildroot-linux-gnu-gcc configure:3508: result: /home/buildroot/autobuild/instance-3/output-1/host/bin/aarch64_be-linux-gnu-gcc configure:3906: checking for C compiler version configure:3915: /home/buildroot/autobuild/instance-3/output-1/host/bin/aarch64_be-linux-gnu-gcc --version >&5 aarch64_be-linux-gnu-gcc (Linaro GCC 7.3-2018.05) 7.3.1 20180425 [linaro-7.3-2018.05 revision d29120a424ecfbc167ef90065c0eeb7f91977701] Copyright (C) 2017 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:3926: $? = 0 configure:3915: /home/buildroot/autobuild/instance-3/output-1/host/bin/aarch64_be-linux-gnu-gcc -v >&5 Using built-in specs. COLLECT_GCC=/home/buildroot/autobuild/instance-3/output-1/host/opt/ext-toolchain/bin/aarch64_be-linux-gnu-gcc COLLECT_LTO_WRAPPER=/home/buildroot/autobuild/instance-3/output-1/host/opt/ext-toolchain/bin/../libexec/gcc/aarch64_be-linux-gnu/7.3.1/lto-wrapper Target: aarch64_be-linux-gnu Configured with: '/home/tcwg-buildslave/workspace/tcwg-make-release/builder_arch/amd64/label/tcwg-x86_64-build/target/aarch64_be-linux-gnu/snapshots/gcc.git~linaro-7.3-2018.05/configure' SHELL=/bin/bash --with-mpc=/home/tcwg-buildslave/workspace/tcwg-make-release/builder_arch/amd64/label/tcwg-x86_64-build/target/aarch64_be-linux-gnu/_build/builds/destdir/x86_64-unknown-linux-gnu --with-mpfr=/home/tcwg-buildslave/workspace/tcwg-make-release/builder_arch/amd64/label/tcwg-x86_64-build/target/aarch64_be-linux-gnu/_build/builds/destdir/x86_64-unknown-linux-gnu --with-gmp=/home/tcwg-buildslave/workspace/tcwg-make-release/builder_arch/amd64/label/tcwg-x86_64-build/target/aarch64_be-linux-gnu/_build/builds/destdir/x86_64-unknown-linux-gnu --with-gnu-as --with-gnu-ld --disable-libmudflap --enable-lto --enable-shared --without-included-gettext --enable-nls --with-system-zlib --disable-sjlj-exceptions --enable-gnu-unique-object --enable-linker-build-id --disable-libstdcxx-pch --enable-c99 --enable-clocale=gnu --enable-libstdcxx-debug --enable-long-long --with-cloog=no --with-ppl=no --with-isl=no --disable-multilib --enable-fix-cortex-a53-835769 --enable-fix-cortex-a53-843419 --with-arch=armv8-a --enable-threads=posix --enable-multiarch --enable-libstdcxx-time=yes --enable-gnu-indirect-function --with-build-sysroot=/home/tcwg-buildslave/workspace/tcwg-make-release/builder_arch/amd64/label/tcwg-x86_64-build/target/aarch64_be-linux-gnu/_build/sysroots/aarch64_be-linux-gnu --with-sysroot=/home/tcwg-buildslave/workspace/tcwg-make-release/builder_arch/amd64/label/tcwg-x86_64-build/target/aarch64_be-linux-gnu/_build/builds/destdir/x86_64-unknown-linux-gnu/aarch64_be-linux-gnu/libc --enable-checking=release --disable-bootstrap --enable-languages=c,c++,fortran,lto --build=x86_64-unknown-linux-gnu --host=x86_64-unknown-linux-gnu --target=aarch64_be-linux-gnu --prefix=/home/tcwg-buildslave/workspace/tcwg-make-release/builder_arch/amd64/label/tcwg-x86_64-build/target/aarch64_be-linux-gnu/_build/builds/destdir/x86_64-unknown-linux-gnu Thread model: posix gcc version 7.3.1 20180425 [linaro-7.3-2018.05 revision d29120a424ecfbc167ef90065c0eeb7f91977701] (Linaro GCC 7.3-2018.05) COMPILER_PATH=/home/buildroot/autobuild/instance-3/output-1/host/opt/ext-toolchain/bin/../libexec/gcc/aarch64_be-linux-gnu/7.3.1/:/home/buildroot/autobuild/instance-3/output-1/host/opt/ext-toolchain/bin/../libexec/gcc/aarch64_be-linux-gnu/:/home/buildroot/autobuild/instance-3/output-1/host/opt/ext-toolchain/bin/../libexec/gcc/:/home/buildroot/autobuild/instance-3/output-1/host/opt/ext-toolchain/bin/../lib/gcc/aarch64_be-linux-gnu/7.3.1/../../../../aarch64_be-linux-gnu/bin/ LIBRARY_PATH=/home/buildroot/autobuild/instance-3/output-1/host/opt/ext-toolchain/bin/../lib/gcc/aarch64_be-linux-gnu/7.3.1/:/home/buildroot/autobuild/instance-3/output-1/host/opt/ext-toolchain/bin/../lib/gcc/aarch64_be-linux-gnu/:/home/buildroot/autobuild/instance-3/output-1/host/opt/ext-toolchain/bin/../lib/gcc/:/home/buildroot/autobuild/instance-3/output-1/host/opt/ext-toolchain/bin/../lib/gcc/aarch64_be-linux-gnu/7.3.1/../../../../aarch64_be-linux-gnu/lib/../lib64/:/home/buildroot/autobuild/instance-3/output-1/host/aarch64_be-buildroot-linux-gnu/sysroot/lib/../lib64/:/home/buildroot/autobuild/instance-3/output-1/host/aarch64_be-buildroot-linux-gnu/sysroot/usr/lib/../lib64/:/home/buildroot/autobuild/instance-3/output-1/host/opt/ext-toolchain/bin/../lib/gcc/aarch64_be-linux-gnu/7.3.1/../../../../aarch64_be-linux-gnu/lib/:/home/buildroot/autobuild/instance-3/output-1/host/aarch64_be-buildroot-linux-gnu/sysroot/lib/:/home/buildroot/autobuild/instance-3/output-1/host/aarch64_be-buildroot-linux-gnu/sysroot/usr/lib/ COLLECT_GCC_OPTIONS='-mabi=lp64' '-mcpu=thunderx2t99p1' '-v' '-mbig-endian' ... rest of stderr output deleted ... configure:3926: $? = 1 configure:3915: /home/buildroot/autobuild/instance-3/output-1/host/bin/aarch64_be-linux-gnu-gcc -V >&5 aarch64_be-linux-gnu-gcc: error: unrecognized command line option '-V' configure:3926: $? = 1 configure:3915: /home/buildroot/autobuild/instance-3/output-1/host/bin/aarch64_be-linux-gnu-gcc -qversion >&5 aarch64_be-linux-gnu-gcc: error: unrecognized command line option '-qversion'; did you mean '--version'? configure:3926: $? = 1 configure:3915: /home/buildroot/autobuild/instance-3/output-1/host/bin/aarch64_be-linux-gnu-gcc -version >&5 aarch64_be-linux-gnu-gcc: error: unrecognized command line option '-version' configure:3926: $? = 1 configure:3946: checking whether the C compiler works configure:3968: /home/buildroot/autobuild/instance-3/output-1/host/bin/aarch64_be-linux-gnu-gcc -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -O2 -g0 -D_FORTIFY_SOURCE=2 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 conftest.c >&5 configure:3972: $? = 0 configure:4022: result: yes configure:4025: checking for C compiler default output file name configure:4027: result: a.out configure:4033: checking for suffix of executables configure:4040: /home/buildroot/autobuild/instance-3/output-1/host/bin/aarch64_be-linux-gnu-gcc -o conftest -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -O2 -g0 -D_FORTIFY_SOURCE=2 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 conftest.c >&5 configure:4044: $? = 0 configure:4067: result: configure:4089: checking whether we are cross compiling configure:4127: result: yes configure:4132: checking for suffix of object files configure:4155: /home/buildroot/autobuild/instance-3/output-1/host/bin/aarch64_be-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -O2 -g0 -D_FORTIFY_SOURCE=2 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 conftest.c >&5 configure:4159: $? = 0 configure:4181: result: o configure:4185: checking whether the compiler supports GNU C configure:4205: /home/buildroot/autobuild/instance-3/output-1/host/bin/aarch64_be-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -O2 -g0 -D_FORTIFY_SOURCE=2 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 conftest.c >&5 configure:4205: $? = 0 configure:4215: result: yes configure:4226: checking whether /home/buildroot/autobuild/instance-3/output-1/host/bin/aarch64_be-linux-gnu-gcc accepts -g configure:4247: /home/buildroot/autobuild/instance-3/output-1/host/bin/aarch64_be-linux-gnu-gcc -c -g -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 conftest.c >&5 configure:4247: $? = 0 configure:4291: result: yes configure:4311: checking for /home/buildroot/autobuild/instance-3/output-1/host/bin/aarch64_be-linux-gnu-gcc option to enable C11 features configure:4326: /home/buildroot/autobuild/instance-3/output-1/host/bin/aarch64_be-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -O2 -g0 -D_FORTIFY_SOURCE=2 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 conftest.c >&5 conftest.c: In function 'main': conftest.c:271:1: internal compiler error: Segmentation fault } ^ unrecognized DWARF version in .debug_info at 6 Please submit a full bug report, with preprocessed source if appropriate. See for instructions. configure:4326: $? = 1 configure: failed program was: | /* confdefs.h */ | #define PACKAGE_NAME "xcrypt" | #define PACKAGE_TARNAME "libxcrypt" | #define PACKAGE_VERSION "4.4.36" | #define PACKAGE_STRING "xcrypt 4.4.36" | #define PACKAGE_BUGREPORT "https://github.com/besser82/libxcrypt/issues" | #define PACKAGE_URL "https://github.com/besser82/libxcrypt" | #define PACKAGE "libxcrypt" | #define VERSION "4.4.36" | /* end confdefs.h. */ | | /* Does the compiler advertise C89 conformance? | Do not test the value of __STDC__, because some compilers set it to 0 | while being otherwise adequately conformant. */ | #if !defined __STDC__ | # error "Compiler does not advertise C89 conformance" | #endif | | #include | #include | struct stat; | /* Most of the following tests are stolen from RCS 5.7 src/conf.sh. */ | struct buf { int x; }; | struct buf * (*rcsopen) (struct buf *, struct stat *, int); | static char *e (p, i) | char **p; | int i; | { | return p[i]; | } | static char *f (char * (*g) (char **, int), char **p, ...) | { | char *s; | va_list v; | va_start (v,p); | s = g (p, va_arg (v,int)); | va_end (v); | return s; | } | | /* OSF 4.0 Compaq cc is some sort of almost-ANSI by default. It has | function prototypes and stuff, but not \xHH hex character constants. | These do not provoke an error unfortunately, instead are silently treated | as an "x". The following induces an error, until -std is added to get | proper ANSI mode. Curiously \x00 != x always comes out true, for an | array size at least. It is necessary to write \x00 == 0 to get something | that is true only with -std. */ | int osf4_cc_array ['\x00' == 0 ? 1 : -1]; | | /* IBM C 6 for AIX is almost-ANSI by default, but it replaces macro parameters | inside strings and character constants. */ | #define FOO(x) 'x' | int xlc6_cc_array[FOO(a) == 'x' ? 1 : -1]; | | int test (int i, double x); | struct s1 {int (*f) (int a);}; | struct s2 {int (*f) (double a);}; | int pairnames (int, char **, int *(*)(struct buf *, struct stat *, int), | int, int); | | // Does the compiler advertise C99 conformance? | #if !defined __STDC_VERSION__ || __STDC_VERSION__ < 199901L | # error "Compiler does not advertise C99 conformance" | #endif | | #include | extern int puts (const char *); | extern int printf (const char *, ...); | extern int dprintf (int, const char *, ...); | extern void *malloc (size_t); | | // Check varargs macros. These examples are taken from C99 6.10.3.5. | // dprintf is used instead of fprintf to avoid needing to declare | // FILE and stderr. | #define debug(...) dprintf (2, __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 | #error "your preprocessor is broken" | #endif | #if BIG_OK | #else | #error "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 bool | 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 = 0; | float fnumber = 0; | | 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); | | return *str && number && fnumber; | } | | | // Does the compiler advertise C11 conformance? | #if !defined __STDC_VERSION__ || __STDC_VERSION__ < 201112L | # error "Compiler does not advertise C11 conformance" | #endif | | // Check _Alignas. | char _Alignas (double) aligned_as_double; | char _Alignas (0) no_special_alignment; | extern char aligned_as_int; | char _Alignas (0) _Alignas (int) aligned_as_int; | | // Check _Alignof. | enum | { | int_alignment = _Alignof (int), | int_array_alignment = _Alignof (int[100]), | char_alignment = _Alignof (char) | }; | _Static_assert (0 < -_Alignof (int), "_Alignof is signed"); | | // Check _Noreturn. | int _Noreturn does_not_return (void) { for (;;) continue; } | | // Check _Static_assert. | struct test_static_assert | { | int x; | _Static_assert (sizeof (int) <= sizeof (long int), | "_Static_assert does not work in struct"); | long int y; | }; | | // Check UTF-8 literals. | #define u8 syntax error! | char const utf8_literal[] = u8"happens to be ASCII" "another string"; | | // Check duplicate typedefs. | typedef long *long_ptr; | typedef long int *long_ptr; | typedef long_ptr long_ptr; | | // Anonymous structures and unions -- taken from C11 6.7.2.1 Example 1. | struct anonymous | { | union { | struct { int i; int j; }; | struct { int k; long int l; } w; | }; | int m; | } v1; | | | int | main (int argc, char **argv) | { | int ok = 0; | | ok |= (argc == 0 || f (e, argv, 0) != argv[0] || f (e, argv, 1) != argv[1]); | | | // Check bool. | _Bool success = false; | success |= (argc != 0); | | // Check restrict. | if (test_restrict ("String literal") == 0) | success = true; | char *restrict newvar = "Another string"; | | // Check varargs. | success &= 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[0] = argv[0][0]; | dynamic_array[ni.number - 1] = 543; | | // work around unused variable warnings | ok |= (!success || bignum == 0LL || ubignum == 0uLL || newvar[0] == 'x' | || dynamic_array[ni.number - 1] != 543); | | | _Static_assert ((offsetof (struct anonymous, i) | == offsetof (struct anonymous, w.k)), | "Anonymous union alignment botch"); | v1.i = 2; | v1.w.k = 5; | ok |= v1.i != 5; | | return ok; | } | configure:4326: /home/buildroot/autobuild/instance-3/output-1/host/bin/aarch64_be-linux-gnu-gcc -std=gnu11 -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -O2 -g0 -D_FORTIFY_SOURCE=2 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 conftest.c >&5 conftest.c: In function 'main': conftest.c:271:1: internal compiler error: Segmentation fault } ^ unrecognized DWARF version in .debug_info at 6 Please submit a full bug report, with preprocessed source if appropriate. See for instructions. configure:4326: $? = 1 configure: failed program was: | /* confdefs.h */ | #define PACKAGE_NAME "xcrypt" | #define PACKAGE_TARNAME "libxcrypt" | #define PACKAGE_VERSION "4.4.36" | #define PACKAGE_STRING "xcrypt 4.4.36" | #define PACKAGE_BUGREPORT "https://github.com/besser82/libxcrypt/issues" | #define PACKAGE_URL "https://github.com/besser82/libxcrypt" | #define PACKAGE "libxcrypt" | #define VERSION "4.4.36" | /* end confdefs.h. */ | | /* Does the compiler advertise C89 conformance? | Do not test the value of __STDC__, because some compilers set it to 0 | while being otherwise adequately conformant. */ | #if !defined __STDC__ | # error "Compiler does not advertise C89 conformance" | #endif | | #include | #include | struct stat; | /* Most of the following tests are stolen from RCS 5.7 src/conf.sh. */ | struct buf { int x; }; | struct buf * (*rcsopen) (struct buf *, struct stat *, int); | static char *e (p, i) | char **p; | int i; | { | return p[i]; | } | static char *f (char * (*g) (char **, int), char **p, ...) | { | char *s; | va_list v; | va_start (v,p); | s = g (p, va_arg (v,int)); | va_end (v); | return s; | } | | /* OSF 4.0 Compaq cc is some sort of almost-ANSI by default. It has | function prototypes and stuff, but not \xHH hex character constants. | These do not provoke an error unfortunately, instead are silently treated | as an "x". The following induces an error, until -std is added to get | proper ANSI mode. Curiously \x00 != x always comes out true, for an | array size at least. It is necessary to write \x00 == 0 to get something | that is true only with -std. */ | int osf4_cc_array ['\x00' == 0 ? 1 : -1]; | | /* IBM C 6 for AIX is almost-ANSI by default, but it replaces macro parameters | inside strings and character constants. */ | #define FOO(x) 'x' | int xlc6_cc_array[FOO(a) == 'x' ? 1 : -1]; | | int test (int i, double x); | struct s1 {int (*f) (int a);}; | struct s2 {int (*f) (double a);}; | int pairnames (int, char **, int *(*)(struct buf *, struct stat *, int), | int, int); | | // Does the compiler advertise C99 conformance? | #if !defined __STDC_VERSION__ || __STDC_VERSION__ < 199901L | # error "Compiler does not advertise C99 conformance" | #endif | | #include | extern int puts (const char *); | extern int printf (const char *, ...); | extern int dprintf (int, const char *, ...); | extern void *malloc (size_t); | | // Check varargs macros. These examples are taken from C99 6.10.3.5. | // dprintf is used instead of fprintf to avoid needing to declare | // FILE and stderr. | #define debug(...) dprintf (2, __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 | #error "your preprocessor is broken" | #endif | #if BIG_OK | #else | #error "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 bool | 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 = 0; | float fnumber = 0; | | 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); | | return *str && number && fnumber; | } | | | // Does the compiler advertise C11 conformance? | #if !defined __STDC_VERSION__ || __STDC_VERSION__ < 201112L | # error "Compiler does not advertise C11 conformance" | #endif | | // Check _Alignas. | char _Alignas (double) aligned_as_double; | char _Alignas (0) no_special_alignment; | extern char aligned_as_int; | char _Alignas (0) _Alignas (int) aligned_as_int; | | // Check _Alignof. | enum | { | int_alignment = _Alignof (int), | int_array_alignment = _Alignof (int[100]), | char_alignment = _Alignof (char) | }; | _Static_assert (0 < -_Alignof (int), "_Alignof is signed"); | | // Check _Noreturn. | int _Noreturn does_not_return (void) { for (;;) continue; } | | // Check _Static_assert. | struct test_static_assert | { | int x; | _Static_assert (sizeof (int) <= sizeof (long int), | "_Static_assert does not work in struct"); | long int y; | }; | | // Check UTF-8 literals. | #define u8 syntax error! | char const utf8_literal[] = u8"happens to be ASCII" "another string"; | | // Check duplicate typedefs. | typedef long *long_ptr; | typedef long int *long_ptr; | typedef long_ptr long_ptr; | | // Anonymous structures and unions -- taken from C11 6.7.2.1 Example 1. | struct anonymous | { | union { | struct { int i; int j; }; | struct { int k; long int l; } w; | }; | int m; | } v1; | | | int | main (int argc, char **argv) | { | int ok = 0; | | ok |= (argc == 0 || f (e, argv, 0) != argv[0] || f (e, argv, 1) != argv[1]); | | | // Check bool. | _Bool success = false; | success |= (argc != 0); | | // Check restrict. | if (test_restrict ("String literal") == 0) | success = true; | char *restrict newvar = "Another string"; | | // Check varargs. | success &= 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[0] = argv[0][0]; | dynamic_array[ni.number - 1] = 543; | | // work around unused variable warnings | ok |= (!success || bignum == 0LL || ubignum == 0uLL || newvar[0] == 'x' | || dynamic_array[ni.number - 1] != 543); | | | _Static_assert ((offsetof (struct anonymous, i) | == offsetof (struct anonymous, w.k)), | "Anonymous union alignment botch"); | v1.i = 2; | v1.w.k = 5; | ok |= v1.i != 5; | | return ok; | } | configure:4339: result: unsupported configure:4357: checking for /home/buildroot/autobuild/instance-3/output-1/host/bin/aarch64_be-linux-gnu-gcc option to enable C99 features configure:4372: /home/buildroot/autobuild/instance-3/output-1/host/bin/aarch64_be-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -O2 -g0 -D_FORTIFY_SOURCE=2 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 conftest.c >&5 conftest.c: In function 'main': conftest.c:211:1: internal compiler error: Segmentation fault } ^ unrecognized DWARF version in .debug_info at 6 Please submit a full bug report, with preprocessed source if appropriate. See for instructions. configure:4372: $? = 1 configure: failed program was: | /* confdefs.h */ | #define PACKAGE_NAME "xcrypt" | #define PACKAGE_TARNAME "libxcrypt" | #define PACKAGE_VERSION "4.4.36" | #define PACKAGE_STRING "xcrypt 4.4.36" | #define PACKAGE_BUGREPORT "https://github.com/besser82/libxcrypt/issues" | #define PACKAGE_URL "https://github.com/besser82/libxcrypt" | #define PACKAGE "libxcrypt" | #define VERSION "4.4.36" | /* end confdefs.h. */ | | /* Does the compiler advertise C89 conformance? | Do not test the value of __STDC__, because some compilers set it to 0 | while being otherwise adequately conformant. */ | #if !defined __STDC__ | # error "Compiler does not advertise C89 conformance" | #endif | | #include | #include | struct stat; | /* Most of the following tests are stolen from RCS 5.7 src/conf.sh. */ | struct buf { int x; }; | struct buf * (*rcsopen) (struct buf *, struct stat *, int); | static char *e (p, i) | char **p; | int i; | { | return p[i]; | } | static char *f (char * (*g) (char **, int), char **p, ...) | { | char *s; | va_list v; | va_start (v,p); | s = g (p, va_arg (v,int)); | va_end (v); | return s; | } | | /* OSF 4.0 Compaq cc is some sort of almost-ANSI by default. It has | function prototypes and stuff, but not \xHH hex character constants. | These do not provoke an error unfortunately, instead are silently treated | as an "x". The following induces an error, until -std is added to get | proper ANSI mode. Curiously \x00 != x always comes out true, for an | array size at least. It is necessary to write \x00 == 0 to get something | that is true only with -std. */ | int osf4_cc_array ['\x00' == 0 ? 1 : -1]; | | /* IBM C 6 for AIX is almost-ANSI by default, but it replaces macro parameters | inside strings and character constants. */ | #define FOO(x) 'x' | int xlc6_cc_array[FOO(a) == 'x' ? 1 : -1]; | | int test (int i, double x); | struct s1 {int (*f) (int a);}; | struct s2 {int (*f) (double a);}; | int pairnames (int, char **, int *(*)(struct buf *, struct stat *, int), | int, int); | | // Does the compiler advertise C99 conformance? | #if !defined __STDC_VERSION__ || __STDC_VERSION__ < 199901L | # error "Compiler does not advertise C99 conformance" | #endif | | #include | extern int puts (const char *); | extern int printf (const char *, ...); | extern int dprintf (int, const char *, ...); | extern void *malloc (size_t); | | // Check varargs macros. These examples are taken from C99 6.10.3.5. | // dprintf is used instead of fprintf to avoid needing to declare | // FILE and stderr. | #define debug(...) dprintf (2, __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 | #error "your preprocessor is broken" | #endif | #if BIG_OK | #else | #error "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 bool | 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 = 0; | float fnumber = 0; | | 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); | | return *str && number && fnumber; | } | | | int | main (int argc, char **argv) | { | int ok = 0; | | ok |= (argc == 0 || f (e, argv, 0) != argv[0] || f (e, argv, 1) != argv[1]); | | | // Check bool. | _Bool success = false; | success |= (argc != 0); | | // Check restrict. | if (test_restrict ("String literal") == 0) | success = true; | char *restrict newvar = "Another string"; | | // Check varargs. | success &= 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[0] = argv[0][0]; | dynamic_array[ni.number - 1] = 543; | | // work around unused variable warnings | ok |= (!success || bignum == 0LL || ubignum == 0uLL || newvar[0] == 'x' | || dynamic_array[ni.number - 1] != 543); | | return ok; | } | configure:4372: /home/buildroot/autobuild/instance-3/output-1/host/bin/aarch64_be-linux-gnu-gcc -std=gnu99 -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -O2 -g0 -D_FORTIFY_SOURCE=2 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 conftest.c >&5 conftest.c: In function 'main': conftest.c:211:1: internal compiler error: Segmentation fault } ^ unrecognized DWARF version in .debug_info at 6 Please submit a full bug report, with preprocessed source if appropriate. See for instructions. configure:4372: $? = 1 configure: failed program was: | /* confdefs.h */ | #define PACKAGE_NAME "xcrypt" | #define PACKAGE_TARNAME "libxcrypt" | #define PACKAGE_VERSION "4.4.36" | #define PACKAGE_STRING "xcrypt 4.4.36" | #define PACKAGE_BUGREPORT "https://github.com/besser82/libxcrypt/issues" | #define PACKAGE_URL "https://github.com/besser82/libxcrypt" | #define PACKAGE "libxcrypt" | #define VERSION "4.4.36" | /* end confdefs.h. */ | | /* Does the compiler advertise C89 conformance? | Do not test the value of __STDC__, because some compilers set it to 0 | while being otherwise adequately conformant. */ | #if !defined __STDC__ | # error "Compiler does not advertise C89 conformance" | #endif | | #include | #include | struct stat; | /* Most of the following tests are stolen from RCS 5.7 src/conf.sh. */ | struct buf { int x; }; | struct buf * (*rcsopen) (struct buf *, struct stat *, int); | static char *e (p, i) | char **p; | int i; | { | return p[i]; | } | static char *f (char * (*g) (char **, int), char **p, ...) | { | char *s; | va_list v; | va_start (v,p); | s = g (p, va_arg (v,int)); | va_end (v); | return s; | } | | /* OSF 4.0 Compaq cc is some sort of almost-ANSI by default. It has | function prototypes and stuff, but not \xHH hex character constants. | These do not provoke an error unfortunately, instead are silently treated | as an "x". The following induces an error, until -std is added to get | proper ANSI mode. Curiously \x00 != x always comes out true, for an | array size at least. It is necessary to write \x00 == 0 to get something | that is true only with -std. */ | int osf4_cc_array ['\x00' == 0 ? 1 : -1]; | | /* IBM C 6 for AIX is almost-ANSI by default, but it replaces macro parameters | inside strings and character constants. */ | #define FOO(x) 'x' | int xlc6_cc_array[FOO(a) == 'x' ? 1 : -1]; | | int test (int i, double x); | struct s1 {int (*f) (int a);}; | struct s2 {int (*f) (double a);}; | int pairnames (int, char **, int *(*)(struct buf *, struct stat *, int), | int, int); | | // Does the compiler advertise C99 conformance? | #if !defined __STDC_VERSION__ || __STDC_VERSION__ < 199901L | # error "Compiler does not advertise C99 conformance" | #endif | | #include | extern int puts (const char *); | extern int printf (const char *, ...); | extern int dprintf (int, const char *, ...); | extern void *malloc (size_t); | | // Check varargs macros. These examples are taken from C99 6.10.3.5. | // dprintf is used instead of fprintf to avoid needing to declare | // FILE and stderr. | #define debug(...) dprintf (2, __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 | #error "your preprocessor is broken" | #endif | #if BIG_OK | #else | #error "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 bool | 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 = 0; | float fnumber = 0; | | 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); | | return *str && number && fnumber; | } | | | int | main (int argc, char **argv) | { | int ok = 0; | | ok |= (argc == 0 || f (e, argv, 0) != argv[0] || f (e, argv, 1) != argv[1]); | | | // Check bool. | _Bool success = false; | success |= (argc != 0); | | // Check restrict. | if (test_restrict ("String literal") == 0) | success = true; | char *restrict newvar = "Another string"; | | // Check varargs. | success &= 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[0] = argv[0][0]; | dynamic_array[ni.number - 1] = 543; | | // work around unused variable warnings | ok |= (!success || bignum == 0LL || ubignum == 0uLL || newvar[0] == 'x' | || dynamic_array[ni.number - 1] != 543); | | return ok; | } | configure:4372: /home/buildroot/autobuild/instance-3/output-1/host/bin/aarch64_be-linux-gnu-gcc -std=c99 -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -O2 -g0 -D_FORTIFY_SOURCE=2 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 conftest.c >&5 conftest.c: In function 'main': conftest.c:211:1: internal compiler error: Segmentation fault } ^ unrecognized DWARF version in .debug_info at 6 Please submit a full bug report, with preprocessed source if appropriate. See for instructions. configure:4372: $? = 1 configure: failed program was: | /* confdefs.h */ | #define PACKAGE_NAME "xcrypt" | #define PACKAGE_TARNAME "libxcrypt" | #define PACKAGE_VERSION "4.4.36" | #define PACKAGE_STRING "xcrypt 4.4.36" | #define PACKAGE_BUGREPORT "https://github.com/besser82/libxcrypt/issues" | #define PACKAGE_URL "https://github.com/besser82/libxcrypt" | #define PACKAGE "libxcrypt" | #define VERSION "4.4.36" | /* end confdefs.h. */ | | /* Does the compiler advertise C89 conformance? | Do not test the value of __STDC__, because some compilers set it to 0 | while being otherwise adequately conformant. */ | #if !defined __STDC__ | # error "Compiler does not advertise C89 conformance" | #endif | | #include | #include | struct stat; | /* Most of the following tests are stolen from RCS 5.7 src/conf.sh. */ | struct buf { int x; }; | struct buf * (*rcsopen) (struct buf *, struct stat *, int); | static char *e (p, i) | char **p; | int i; | { | return p[i]; | } | static char *f (char * (*g) (char **, int), char **p, ...) | { | char *s; | va_list v; | va_start (v,p); | s = g (p, va_arg (v,int)); | va_end (v); | return s; | } | | /* OSF 4.0 Compaq cc is some sort of almost-ANSI by default. It has | function prototypes and stuff, but not \xHH hex character constants. | These do not provoke an error unfortunately, instead are silently treated | as an "x". The following induces an error, until -std is added to get | proper ANSI mode. Curiously \x00 != x always comes out true, for an | array size at least. It is necessary to write \x00 == 0 to get something | that is true only with -std. */ | int osf4_cc_array ['\x00' == 0 ? 1 : -1]; | | /* IBM C 6 for AIX is almost-ANSI by default, but it replaces macro parameters | inside strings and character constants. */ | #define FOO(x) 'x' | int xlc6_cc_array[FOO(a) == 'x' ? 1 : -1]; | | int test (int i, double x); | struct s1 {int (*f) (int a);}; | struct s2 {int (*f) (double a);}; | int pairnames (int, char **, int *(*)(struct buf *, struct stat *, int), | int, int); | | // Does the compiler advertise C99 conformance? | #if !defined __STDC_VERSION__ || __STDC_VERSION__ < 199901L | # error "Compiler does not advertise C99 conformance" | #endif | | #include | extern int puts (const char *); | extern int printf (const char *, ...); | extern int dprintf (int, const char *, ...); | extern void *malloc (size_t); | | // Check varargs macros. These examples are taken from C99 6.10.3.5. | // dprintf is used instead of fprintf to avoid needing to declare | // FILE and stderr. | #define debug(...) dprintf (2, __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 | #error "your preprocessor is broken" | #endif | #if BIG_OK | #else | #error "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 bool | 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 = 0; | float fnumber = 0; | | 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); | | return *str && number && fnumber; | } | | | int | main (int argc, char **argv) | { | int ok = 0; | | ok |= (argc == 0 || f (e, argv, 0) != argv[0] || f (e, argv, 1) != argv[1]); | | | // Check bool. | _Bool success = false; | success |= (argc != 0); | | // Check restrict. | if (test_restrict ("String literal") == 0) | success = true; | char *restrict newvar = "Another string"; | | // Check varargs. | success &= 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[0] = argv[0][0]; | dynamic_array[ni.number - 1] = 543; | | // work around unused variable warnings | ok |= (!success || bignum == 0LL || ubignum == 0uLL || newvar[0] == 'x' | || dynamic_array[ni.number - 1] != 543); | | return ok; | } | configure:4372: /home/buildroot/autobuild/instance-3/output-1/host/bin/aarch64_be-linux-gnu-gcc -c99 -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -O2 -g0 -D_FORTIFY_SOURCE=2 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 conftest.c >&5 aarch64_be-linux-gnu-gcc: error: unrecognized command line option '-c99' configure:4372: $? = 1 configure: failed program was: | /* confdefs.h */ | #define PACKAGE_NAME "xcrypt" | #define PACKAGE_TARNAME "libxcrypt" | #define PACKAGE_VERSION "4.4.36" | #define PACKAGE_STRING "xcrypt 4.4.36" | #define PACKAGE_BUGREPORT "https://github.com/besser82/libxcrypt/issues" | #define PACKAGE_URL "https://github.com/besser82/libxcrypt" | #define PACKAGE "libxcrypt" | #define VERSION "4.4.36" | /* end confdefs.h. */ | | /* Does the compiler advertise C89 conformance? | Do not test the value of __STDC__, because some compilers set it to 0 | while being otherwise adequately conformant. */ | #if !defined __STDC__ | # error "Compiler does not advertise C89 conformance" | #endif | | #include | #include | struct stat; | /* Most of the following tests are stolen from RCS 5.7 src/conf.sh. */ | struct buf { int x; }; | struct buf * (*rcsopen) (struct buf *, struct stat *, int); | static char *e (p, i) | char **p; | int i; | { | return p[i]; | } | static char *f (char * (*g) (char **, int), char **p, ...) | { | char *s; | va_list v; | va_start (v,p); | s = g (p, va_arg (v,int)); | va_end (v); | return s; | } | | /* OSF 4.0 Compaq cc is some sort of almost-ANSI by default. It has | function prototypes and stuff, but not \xHH hex character constants. | These do not provoke an error unfortunately, instead are silently treated | as an "x". The following induces an error, until -std is added to get | proper ANSI mode. Curiously \x00 != x always comes out true, for an | array size at least. It is necessary to write \x00 == 0 to get something | that is true only with -std. */ | int osf4_cc_array ['\x00' == 0 ? 1 : -1]; | | /* IBM C 6 for AIX is almost-ANSI by default, but it replaces macro parameters | inside strings and character constants. */ | #define FOO(x) 'x' | int xlc6_cc_array[FOO(a) == 'x' ? 1 : -1]; | | int test (int i, double x); | struct s1 {int (*f) (int a);}; | struct s2 {int (*f) (double a);}; | int pairnames (int, char **, int *(*)(struct buf *, struct stat *, int), | int, int); | | // Does the compiler advertise C99 conformance? | #if !defined __STDC_VERSION__ || __STDC_VERSION__ < 199901L | # error "Compiler does not advertise C99 conformance" | #endif | | #include | extern int puts (const char *); | extern int printf (const char *, ...); | extern int dprintf (int, const char *, ...); | extern void *malloc (size_t); | | // Check varargs macros. These examples are taken from C99 6.10.3.5. | // dprintf is used instead of fprintf to avoid needing to declare | // FILE and stderr. | #define debug(...) dprintf (2, __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 | #error "your preprocessor is broken" | #endif | #if BIG_OK | #else | #error "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 bool | 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 = 0; | float fnumber = 0; | | 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); | | return *str && number && fnumber; | } | | | int | main (int argc, char **argv) | { | int ok = 0; | | ok |= (argc == 0 || f (e, argv, 0) != argv[0] || f (e, argv, 1) != argv[1]); | | | // Check bool. | _Bool success = false; | success |= (argc != 0); | | // Check restrict. | if (test_restrict ("String literal") == 0) | success = true; | char *restrict newvar = "Another string"; | | // Check varargs. | success &= 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[0] = argv[0][0]; | dynamic_array[ni.number - 1] = 543; | | // work around unused variable warnings | ok |= (!success || bignum == 0LL || ubignum == 0uLL || newvar[0] == 'x' | || dynamic_array[ni.number - 1] != 543); | | return ok; | } | configure:4372: /home/buildroot/autobuild/instance-3/output-1/host/bin/aarch64_be-linux-gnu-gcc -qlanglvl=extc1x -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -O2 -g0 -D_FORTIFY_SOURCE=2 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 conftest.c >&5 aarch64_be-linux-gnu-gcc: error: unrecognized command line option '-qlanglvl=extc1x' configure:4372: $? = 1 configure: failed program was: | /* confdefs.h */ | #define PACKAGE_NAME "xcrypt" | #define PACKAGE_TARNAME "libxcrypt" | #define PACKAGE_VERSION "4.4.36" | #define PACKAGE_STRING "xcrypt 4.4.36" | #define PACKAGE_BUGREPORT "https://github.com/besser82/libxcrypt/issues" | #define PACKAGE_URL "https://github.com/besser82/libxcrypt" | #define PACKAGE "libxcrypt" | #define VERSION "4.4.36" | /* end confdefs.h. */ | | /* Does the compiler advertise C89 conformance? | Do not test the value of __STDC__, because some compilers set it to 0 | while being otherwise adequately conformant. */ | #if !defined __STDC__ | # error "Compiler does not advertise C89 conformance" | #endif | | #include | #include | struct stat; | /* Most of the following tests are stolen from RCS 5.7 src/conf.sh. */ | struct buf { int x; }; | struct buf * (*rcsopen) (struct buf *, struct stat *, int); | static char *e (p, i) | char **p; | int i; | { | return p[i]; | } | static char *f (char * (*g) (char **, int), char **p, ...) | { | char *s; | va_list v; | va_start (v,p); | s = g (p, va_arg (v,int)); | va_end (v); | return s; | } | | /* OSF 4.0 Compaq cc is some sort of almost-ANSI by default. It has | function prototypes and stuff, but not \xHH hex character constants. | These do not provoke an error unfortunately, instead are silently treated | as an "x". The following induces an error, until -std is added to get | proper ANSI mode. Curiously \x00 != x always comes out true, for an | array size at least. It is necessary to write \x00 == 0 to get something | that is true only with -std. */ | int osf4_cc_array ['\x00' == 0 ? 1 : -1]; | | /* IBM C 6 for AIX is almost-ANSI by default, but it replaces macro parameters | inside strings and character constants. */ | #define FOO(x) 'x' | int xlc6_cc_array[FOO(a) == 'x' ? 1 : -1]; | | int test (int i, double x); | struct s1 {int (*f) (int a);}; | struct s2 {int (*f) (double a);}; | int pairnames (int, char **, int *(*)(struct buf *, struct stat *, int), | int, int); | | // Does the compiler advertise C99 conformance? | #if !defined __STDC_VERSION__ || __STDC_VERSION__ < 199901L | # error "Compiler does not advertise C99 conformance" | #endif | | #include | extern int puts (const char *); | extern int printf (const char *, ...); | extern int dprintf (int, const char *, ...); | extern void *malloc (size_t); | | // Check varargs macros. These examples are taken from C99 6.10.3.5. | // dprintf is used instead of fprintf to avoid needing to declare | // FILE and stderr. | #define debug(...) dprintf (2, __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 | #error "your preprocessor is broken" | #endif | #if BIG_OK | #else | #error "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 bool | 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 = 0; | float fnumber = 0; | | 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); | | return *str && number && fnumber; | } | | | int | main (int argc, char **argv) | { | int ok = 0; | | ok |= (argc == 0 || f (e, argv, 0) != argv[0] || f (e, argv, 1) != argv[1]); | | | // Check bool. | _Bool success = false; | success |= (argc != 0); | | // Check restrict. | if (test_restrict ("String literal") == 0) | success = true; | char *restrict newvar = "Another string"; | | // Check varargs. | success &= 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[0] = argv[0][0]; | dynamic_array[ni.number - 1] = 543; | | // work around unused variable warnings | ok |= (!success || bignum == 0LL || ubignum == 0uLL || newvar[0] == 'x' | || dynamic_array[ni.number - 1] != 543); | | return ok; | } | configure:4372: /home/buildroot/autobuild/instance-3/output-1/host/bin/aarch64_be-linux-gnu-gcc -qlanglvl=extc99 -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -O2 -g0 -D_FORTIFY_SOURCE=2 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 conftest.c >&5 aarch64_be-linux-gnu-gcc: error: unrecognized command line option '-qlanglvl=extc99' configure:4372: $? = 1 configure: failed program was: | /* confdefs.h */ | #define PACKAGE_NAME "xcrypt" | #define PACKAGE_TARNAME "libxcrypt" | #define PACKAGE_VERSION "4.4.36" | #define PACKAGE_STRING "xcrypt 4.4.36" | #define PACKAGE_BUGREPORT "https://github.com/besser82/libxcrypt/issues" | #define PACKAGE_URL "https://github.com/besser82/libxcrypt" | #define PACKAGE "libxcrypt" | #define VERSION "4.4.36" | /* end confdefs.h. */ | | /* Does the compiler advertise C89 conformance? | Do not test the value of __STDC__, because some compilers set it to 0 | while being otherwise adequately conformant. */ | #if !defined __STDC__ | # error "Compiler does not advertise C89 conformance" | #endif | | #include | #include | struct stat; | /* Most of the following tests are stolen from RCS 5.7 src/conf.sh. */ | struct buf { int x; }; | struct buf * (*rcsopen) (struct buf *, struct stat *, int); | static char *e (p, i) | char **p; | int i; | { | return p[i]; | } | static char *f (char * (*g) (char **, int), char **p, ...) | { | char *s; | va_list v; | va_start (v,p); | s = g (p, va_arg (v,int)); | va_end (v); | return s; | } | | /* OSF 4.0 Compaq cc is some sort of almost-ANSI by default. It has | function prototypes and stuff, but not \xHH hex character constants. | These do not provoke an error unfortunately, instead are silently treated | as an "x". The following induces an error, until -std is added to get | proper ANSI mode. Curiously \x00 != x always comes out true, for an | array size at least. It is necessary to write \x00 == 0 to get something | that is true only with -std. */ | int osf4_cc_array ['\x00' == 0 ? 1 : -1]; | | /* IBM C 6 for AIX is almost-ANSI by default, but it replaces macro parameters | inside strings and character constants. */ | #define FOO(x) 'x' | int xlc6_cc_array[FOO(a) == 'x' ? 1 : -1]; | | int test (int i, double x); | struct s1 {int (*f) (int a);}; | struct s2 {int (*f) (double a);}; | int pairnames (int, char **, int *(*)(struct buf *, struct stat *, int), | int, int); | | // Does the compiler advertise C99 conformance? | #if !defined __STDC_VERSION__ || __STDC_VERSION__ < 199901L | # error "Compiler does not advertise C99 conformance" | #endif | | #include | extern int puts (const char *); | extern int printf (const char *, ...); | extern int dprintf (int, const char *, ...); | extern void *malloc (size_t); | | // Check varargs macros. These examples are taken from C99 6.10.3.5. | // dprintf is used instead of fprintf to avoid needing to declare | // FILE and stderr. | #define debug(...) dprintf (2, __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 | #error "your preprocessor is broken" | #endif | #if BIG_OK | #else | #error "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 bool | 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 = 0; | float fnumber = 0; | | 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); | | return *str && number && fnumber; | } | | | int | main (int argc, char **argv) | { | int ok = 0; | | ok |= (argc == 0 || f (e, argv, 0) != argv[0] || f (e, argv, 1) != argv[1]); | | | // Check bool. | _Bool success = false; | success |= (argc != 0); | | // Check restrict. | if (test_restrict ("String literal") == 0) | success = true; | char *restrict newvar = "Another string"; | | // Check varargs. | success &= 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[0] = argv[0][0]; | dynamic_array[ni.number - 1] = 543; | | // work around unused variable warnings | ok |= (!success || bignum == 0LL || ubignum == 0uLL || newvar[0] == 'x' | || dynamic_array[ni.number - 1] != 543); | | return ok; | } | configure:4372: /home/buildroot/autobuild/instance-3/output-1/host/bin/aarch64_be-linux-gnu-gcc -AC99 -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -O2 -g0 -D_FORTIFY_SOURCE=2 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 conftest.c >&5 :0:1: error: missing '(' after predicate configure:4372: $? = 1 configure: failed program was: | /* confdefs.h */ | #define PACKAGE_NAME "xcrypt" | #define PACKAGE_TARNAME "libxcrypt" | #define PACKAGE_VERSION "4.4.36" | #define PACKAGE_STRING "xcrypt 4.4.36" | #define PACKAGE_BUGREPORT "https://github.com/besser82/libxcrypt/issues" | #define PACKAGE_URL "https://github.com/besser82/libxcrypt" | #define PACKAGE "libxcrypt" | #define VERSION "4.4.36" | /* end confdefs.h. */ | | /* Does the compiler advertise C89 conformance? | Do not test the value of __STDC__, because some compilers set it to 0 | while being otherwise adequately conformant. */ | #if !defined __STDC__ | # error "Compiler does not advertise C89 conformance" | #endif | | #include | #include | struct stat; | /* Most of the following tests are stolen from RCS 5.7 src/conf.sh. */ | struct buf { int x; }; | struct buf * (*rcsopen) (struct buf *, struct stat *, int); | static char *e (p, i) | char **p; | int i; | { | return p[i]; | } | static char *f (char * (*g) (char **, int), char **p, ...) | { | char *s; | va_list v; | va_start (v,p); | s = g (p, va_arg (v,int)); | va_end (v); | return s; | } | | /* OSF 4.0 Compaq cc is some sort of almost-ANSI by default. It has | function prototypes and stuff, but not \xHH hex character constants. | These do not provoke an error unfortunately, instead are silently treated | as an "x". The following induces an error, until -std is added to get | proper ANSI mode. Curiously \x00 != x always comes out true, for an | array size at least. It is necessary to write \x00 == 0 to get something | that is true only with -std. */ | int osf4_cc_array ['\x00' == 0 ? 1 : -1]; | | /* IBM C 6 for AIX is almost-ANSI by default, but it replaces macro parameters | inside strings and character constants. */ | #define FOO(x) 'x' | int xlc6_cc_array[FOO(a) == 'x' ? 1 : -1]; | | int test (int i, double x); | struct s1 {int (*f) (int a);}; | struct s2 {int (*f) (double a);}; | int pairnames (int, char **, int *(*)(struct buf *, struct stat *, int), | int, int); | | // Does the compiler advertise C99 conformance? | #if !defined __STDC_VERSION__ || __STDC_VERSION__ < 199901L | # error "Compiler does not advertise C99 conformance" | #endif | | #include | extern int puts (const char *); | extern int printf (const char *, ...); | extern int dprintf (int, const char *, ...); | extern void *malloc (size_t); | | // Check varargs macros. These examples are taken from C99 6.10.3.5. | // dprintf is used instead of fprintf to avoid needing to declare | // FILE and stderr. | #define debug(...) dprintf (2, __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 | #error "your preprocessor is broken" | #endif | #if BIG_OK | #else | #error "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 bool | 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 = 0; | float fnumber = 0; | | 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); | | return *str && number && fnumber; | } | | | int | main (int argc, char **argv) | { | int ok = 0; | | ok |= (argc == 0 || f (e, argv, 0) != argv[0] || f (e, argv, 1) != argv[1]); | | | // Check bool. | _Bool success = false; | success |= (argc != 0); | | // Check restrict. | if (test_restrict ("String literal") == 0) | success = true; | char *restrict newvar = "Another string"; | | // Check varargs. | success &= 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[0] = argv[0][0]; | dynamic_array[ni.number - 1] = 543; | | // work around unused variable warnings | ok |= (!success || bignum == 0LL || ubignum == 0uLL || newvar[0] == 'x' | || dynamic_array[ni.number - 1] != 543); | | return ok; | } | configure:4372: /home/buildroot/autobuild/instance-3/output-1/host/bin/aarch64_be-linux-gnu-gcc -D_STDC_C99= -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -O2 -g0 -D_FORTIFY_SOURCE=2 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 conftest.c >&5 conftest.c: In function 'main': conftest.c:211:1: internal compiler error: Segmentation fault } ^ unrecognized DWARF version in .debug_info at 6 Please submit a full bug report, with preprocessed source if appropriate. See for instructions. configure:4372: $? = 1 configure: failed program was: | /* confdefs.h */ | #define PACKAGE_NAME "xcrypt" | #define PACKAGE_TARNAME "libxcrypt" | #define PACKAGE_VERSION "4.4.36" | #define PACKAGE_STRING "xcrypt 4.4.36" | #define PACKAGE_BUGREPORT "https://github.com/besser82/libxcrypt/issues" | #define PACKAGE_URL "https://github.com/besser82/libxcrypt" | #define PACKAGE "libxcrypt" | #define VERSION "4.4.36" | /* end confdefs.h. */ | | /* Does the compiler advertise C89 conformance? | Do not test the value of __STDC__, because some compilers set it to 0 | while being otherwise adequately conformant. */ | #if !defined __STDC__ | # error "Compiler does not advertise C89 conformance" | #endif | | #include | #include | struct stat; | /* Most of the following tests are stolen from RCS 5.7 src/conf.sh. */ | struct buf { int x; }; | struct buf * (*rcsopen) (struct buf *, struct stat *, int); | static char *e (p, i) | char **p; | int i; | { | return p[i]; | } | static char *f (char * (*g) (char **, int), char **p, ...) | { | char *s; | va_list v; | va_start (v,p); | s = g (p, va_arg (v,int)); | va_end (v); | return s; | } | | /* OSF 4.0 Compaq cc is some sort of almost-ANSI by default. It has | function prototypes and stuff, but not \xHH hex character constants. | These do not provoke an error unfortunately, instead are silently treated | as an "x". The following induces an error, until -std is added to get | proper ANSI mode. Curiously \x00 != x always comes out true, for an | array size at least. It is necessary to write \x00 == 0 to get something | that is true only with -std. */ | int osf4_cc_array ['\x00' == 0 ? 1 : -1]; | | /* IBM C 6 for AIX is almost-ANSI by default, but it replaces macro parameters | inside strings and character constants. */ | #define FOO(x) 'x' | int xlc6_cc_array[FOO(a) == 'x' ? 1 : -1]; | | int test (int i, double x); | struct s1 {int (*f) (int a);}; | struct s2 {int (*f) (double a);}; | int pairnames (int, char **, int *(*)(struct buf *, struct stat *, int), | int, int); | | // Does the compiler advertise C99 conformance? | #if !defined __STDC_VERSION__ || __STDC_VERSION__ < 199901L | # error "Compiler does not advertise C99 conformance" | #endif | | #include | extern int puts (const char *); | extern int printf (const char *, ...); | extern int dprintf (int, const char *, ...); | extern void *malloc (size_t); | | // Check varargs macros. These examples are taken from C99 6.10.3.5. | // dprintf is used instead of fprintf to avoid needing to declare | // FILE and stderr. | #define debug(...) dprintf (2, __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 | #error "your preprocessor is broken" | #endif | #if BIG_OK | #else | #error "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 bool | 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 = 0; | float fnumber = 0; | | 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); | | return *str && number && fnumber; | } | | | int | main (int argc, char **argv) | { | int ok = 0; | | ok |= (argc == 0 || f (e, argv, 0) != argv[0] || f (e, argv, 1) != argv[1]); | | | // Check bool. | _Bool success = false; | success |= (argc != 0); | | // Check restrict. | if (test_restrict ("String literal") == 0) | success = true; | char *restrict newvar = "Another string"; | | // Check varargs. | success &= 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[0] = argv[0][0]; | dynamic_array[ni.number - 1] = 543; | | // work around unused variable warnings | ok |= (!success || bignum == 0LL || ubignum == 0uLL || newvar[0] == 'x' | || dynamic_array[ni.number - 1] != 543); | | return ok; | } | configure:4385: result: unsupported configure:4403: checking for /home/buildroot/autobuild/instance-3/output-1/host/bin/aarch64_be-linux-gnu-gcc option to enable C89 features configure:4418: /home/buildroot/autobuild/instance-3/output-1/host/bin/aarch64_be-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -O2 -g0 -D_FORTIFY_SOURCE=2 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 conftest.c >&5 configure:4418: $? = 0 configure:4436: result: none needed configure:4460: checking whether /home/buildroot/autobuild/instance-3/output-1/host/bin/aarch64_be-linux-gnu-gcc understands -c and -o together configure:4483: /home/buildroot/autobuild/instance-3/output-1/host/bin/aarch64_be-linux-gnu-gcc -c conftest.c -o conftest2.o configure:4486: $? = 0 configure:4483: /home/buildroot/autobuild/instance-3/output-1/host/bin/aarch64_be-linux-gnu-gcc -c conftest.c -o conftest2.o configure:4486: $? = 0 configure:4498: result: yes configure:4518: checking whether make supports the include directive configure:4533: make -f confmf.GNU && cat confinc.out make[1]: Entering directory '/home/buildroot/autobuild/instance-3/output-1/build/libxcrypt-4.4.36' make[1]: Leaving directory '/home/buildroot/autobuild/instance-3/output-1/build/libxcrypt-4.4.36' this is the am__doit target configure:4536: $? = 0 configure:4555: result: yes (GNU style) configure:4581: checking dependency style of /home/buildroot/autobuild/instance-3/output-1/host/bin/aarch64_be-linux-gnu-gcc configure:4693: result: none configure:4829: checking pkg-config is at least version 0.9.0 configure:4832: result: yes configure:4879: error: a C99- or C11-compliant compiler is required ## ---------------- ## ## Cache variables. ## ## ---------------- ## ac_cv_build=x86_64-pc-linux-gnu ac_cv_c_bigendian=yes ac_cv_c_compiler_gnu=yes ac_cv_env_CC_set=set ac_cv_env_CC_value=/home/buildroot/autobuild/instance-3/output-1/host/bin/aarch64_be-linux-gnu-gcc ac_cv_env_CFLAGS_set=set ac_cv_env_CFLAGS_value='-D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -O2 -g0 -D_FORTIFY_SOURCE=2' 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-3/output-1/host/bin/aarch64_be-linux-gnu-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_PKG_CONFIG_LIBDIR_set= ac_cv_env_PKG_CONFIG_LIBDIR_value= ac_cv_env_PKG_CONFIG_PATH_set= ac_cv_env_PKG_CONFIG_PATH_value= ac_cv_env_PKG_CONFIG_set=set ac_cv_env_PKG_CONFIG_value=/home/buildroot/autobuild/instance-3/output-1/host/bin/pkg-config 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=aarch64_be-buildroot-linux-gnu ac_cv_env_target_alias_set=set ac_cv_env_target_alias_value=aarch64_be-buildroot-linux-gnu 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=aarch64_be-buildroot-linux-gnu ac_cv_lbl_unaligned_fail=yes ac_cv_objext=o ac_cv_path_install='/usr/bin/install -c' ac_cv_path_mkdir=/usr/bin/mkdir ac_cv_prog_AWK=gawk ac_cv_prog_CC=/home/buildroot/autobuild/instance-3/output-1/host/bin/aarch64_be-linux-gnu-gcc ac_cv_prog_STRIP=/bin/true ac_cv_prog_cc_c11=no 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 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-3/output-1/build/libxcrypt-4.4.36/build-aux/m4-autogen/missing'\'' aclocal-1.16' AMDEPBACKSLASH='' AMDEP_FALSE='' AMDEP_TRUE='#' AMTAR='$${TAR-tar}' AM_BACKSLASH='\' AM_DEFAULT_V='$(AM_DEFAULT_VERBOSITY)' AM_DEFAULT_VERBOSITY='1' AM_V='$(V)' AR='/home/buildroot/autobuild/instance-3/output-1/host/bin/aarch64_be-linux-gnu-gcc-ar' AUTOCONF='${SHELL} '\''/home/buildroot/autobuild/instance-3/output-1/build/libxcrypt-4.4.36/build-aux/m4-autogen/missing'\'' autoconf' AUTOHEADER='${SHELL} '\''/home/buildroot/autobuild/instance-3/output-1/build/libxcrypt-4.4.36/build-aux/m4-autogen/missing'\'' autoheader' AUTOMAKE='${SHELL} '\''/home/buildroot/autobuild/instance-3/output-1/build/libxcrypt-4.4.36/build-aux/m4-autogen/missing'\'' automake-1.16' AWK='gawk' BINDNOW_FLAG='' CC='/home/buildroot/autobuild/instance-3/output-1/host/bin/aarch64_be-linux-gnu-gcc' CCDEPMODE='depmode=none' CFLAGS='-D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -O2 -g0 -D_FORTIFY_SOURCE=2' COMPAT_ABI='' CPP='/home/buildroot/autobuild/instance-3/output-1/host/bin/aarch64_be-linux-gnu-cpp' CPPFLAGS='-D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64' CROSS_COMPILING_FALSE='' CROSS_COMPILING_TRUE='' CSCOPE='cscope' CTAGS='ctags' CYGPATH_W='echo' DEFS='' DEPDIR='.deps' DLLTOOL='' DSYMUTIL='' DUMPBIN='' ECHO_C='' ECHO_N='-n' ECHO_T='' EGREP='' ENABLE_COMPAT_SUSE_FALSE='' ENABLE_COMPAT_SUSE_TRUE='' ENABLE_KA_TABLE_GEN_FALSE='' ENABLE_KA_TABLE_GEN_TRUE='' ENABLE_OBSOLETE_API_FALSE='' ENABLE_OBSOLETE_API_TRUE='' ENABLE_SHARED_FALSE='' ENABLE_SHARED_TRUE='' ENABLE_STATIC_FALSE='' ENABLE_STATIC_TRUE='' ENABLE_VALGRIND_drd='' ENABLE_VALGRIND_helgrind='' ENABLE_VALGRIND_memcheck='' ENABLE_VALGRIND_sgcheck='' ENABLE_XCRYPT_COMPAT_FILES_FALSE='' ENABLE_XCRYPT_COMPAT_FILES_TRUE='' ETAGS='etags' EXEEXT='' FGREP='' FILECMD='' GPG2='' GREP='' HAVE_CPP_dD='' HAVE_LD_WRAP_FALSE='' HAVE_LD_WRAP_TRUE='' HAVE_VSCRIPT_COMPLEX_FALSE='' HAVE_VSCRIPT_COMPLEX_TRUE='' HAVE_VSCRIPT_FALSE='' HAVE_VSCRIPT_TRUE='' INSTALL_DATA='${INSTALL} -m 644' INSTALL_PROGRAM='${INSTALL}' INSTALL_SCRIPT='${INSTALL}' INSTALL_STRIP_PROGRAM='$(install_sh) -c -s' LD='/home/buildroot/autobuild/instance-3/output-1/host/bin/aarch64_be-linux-gnu-ld' LDFLAGS='' LIBOBJS='' LIBS='' LIBTOOL='' LIPO='' LN_S='' LTLIBOBJS='' LT_SYS_LIBRARY_PATH='' MAKEINFO='${SHELL} '\''/home/buildroot/autobuild/instance-3/output-1/build/libxcrypt-4.4.36/build-aux/m4-autogen/missing'\'' makeinfo' MANIFEST_TOOL='' MKDIR_P='/usr/bin/mkdir -p' NM='/home/buildroot/autobuild/instance-3/output-1/host/bin/aarch64_be-linux-gnu-gcc-nm' NMEDIT='' OBJDUMP='/home/buildroot/autobuild/instance-3/output-1/host/bin/aarch64_be-linux-gnu-objdump' OBJEXT='o' OPTI_FLAGS='' OTOOL64='' OTOOL='' PACKAGE='libxcrypt' PACKAGE_BUGREPORT='https://github.com/besser82/libxcrypt/issues' PACKAGE_NAME='xcrypt' PACKAGE_STRING='xcrypt 4.4.36' PACKAGE_TARNAME='libxcrypt' PACKAGE_URL='https://github.com/besser82/libxcrypt' PACKAGE_VERSION='4.4.36' PATH_SEPARATOR=':' PERL='/usr/bin/perl' PKG_CONFIG='/home/buildroot/autobuild/instance-3/output-1/host/bin/pkg-config' PKG_CONFIG_LIBDIR='' PKG_CONFIG_PATH='' PYTHON='' RANLIB='/home/buildroot/autobuild/instance-3/output-1/host/bin/aarch64_be-linux-gnu-gcc-ranlib' RELRO_FLAG='' SED='' SET_MAKE='' SHA256SUM='' SHELL='/bin/sh' STRIP='/bin/true' SYMBOL_PREFIX='' SYMVER_FLOOR='' SYMVER_MIN='' TEXT_RELOC_FLAG='' UNDEF_FLAG='' VALGRIND='' VALGRIND_CHECK_RULES='' VALGRIND_ENABLED='' VALGRIND_ENABLED_FALSE='' VALGRIND_ENABLED_TRUE='' VERSION='4.4.36' VSCRIPT_LDFLAGS='' WARN_CFLAGS='' WARN_CFLAGS_FOR_BUILD='' XCRYPT_VERSION_MAJOR='' XCRYPT_VERSION_MINOR='' 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 -' 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' hashes_enabled='' host='aarch64_be-buildroot-linux-gnu' host_alias='aarch64_be-buildroot-linux-gnu' host_cpu='aarch64_be' host_os='linux-gnu' host_vendor='buildroot' htmldir='${docdir}' includedir='${prefix}/include' infodir='${datarootdir}/info' install_sh='${SHELL} /home/buildroot/autobuild/instance-3/output-1/build/libxcrypt-4.4.36/build-aux/m4-autogen/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}' pkgconfigdir='${libdir}/pkgconfig' prefix='/usr' program_transform_name='s&^&&' psdir='${docdir}' runstatedir='${localstatedir}/run' sbindir='${exec_prefix}/sbin' sharedstatedir='${prefix}/com' sys_symbol_underscore='' sysconfdir='/etc' target_alias='aarch64_be-buildroot-linux-gnu' valgrind_enabled_tools='' valgrind_tools='' ## ----------- ## ## confdefs.h. ## ## ----------- ## /* confdefs.h */ #define PACKAGE_NAME "xcrypt" #define PACKAGE_TARNAME "libxcrypt" #define PACKAGE_VERSION "4.4.36" #define PACKAGE_STRING "xcrypt 4.4.36" #define PACKAGE_BUGREPORT "https://github.com/besser82/libxcrypt/issues" #define PACKAGE_URL "https://github.com/besser82/libxcrypt" #define PACKAGE "libxcrypt" #define VERSION "4.4.36" configure: exit 1