This file contains any messages produced by compilers while running configure, to aid debugging if configure makes a mistake. It was created by sdbusplus configure 1.0, which was generated by GNU Autoconf 2.69. Invocation command line was $ ./configure --target=mips-buildroot-linux-gnu --host=mips-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 --disable-nls --disable-static --enable-shared --disable-sdbuspp ## --------- ## ## Platform. ## ## --------- ## hostname = mirage uname -m = x86_64 uname -r = 5.5.9-200.fc31.x86_64 uname -s = Linux uname -v = #1 SMP Thu Mar 12 13:55:19 UTC 2020 /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/naourr/work/instance-1/output-1/host/bin PATH: /home/naourr/work/instance-1/output-1/host/sbin PATH: /usr/local/bin PATH: /usr/bin PATH: /usr/local/sbin PATH: /usr/sbin PATH: /home/naourr/bin PATH: /home/naourr/git/git-wrappers PATH: /home/naourr/.local/bin PATH: /home/naourr/bin ## ----------- ## ## Core tests. ## ## ----------- ## configure:2547: checking for a BSD-compatible install configure:2615: result: /usr/bin/install -c configure:2626: checking whether build environment is sane configure:2681: result: yes configure:2738: checking for mips-buildroot-linux-gnu-strip configure:2765: result: /home/naourr/work/instance-1/output-1/host/bin/mips-linux-gnu-strip configure:2830: checking for a thread-safe mkdir -p configure:2869: result: /usr/bin/mkdir -p configure:2876: checking for gawk configure:2892: found /usr/bin/gawk configure:2903: result: gawk configure:2914: checking whether make sets $(MAKE) configure:2936: result: yes configure:2965: checking whether make supports nested variables configure:2982: result: yes configure:3119: checking whether make supports nested variables configure:3136: result: yes configure:3290: checking for C++ compiler version configure:3299: /home/naourr/work/instance-1/output-1/host/bin/mips-linux-gnu-g++ --version >&5 mips-linux-gnu-g++ (Sourcery CodeBench Lite 2016.05-8) 5.3.0 Copyright (C) 2015 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:3310: $? = 0 configure:3299: /home/naourr/work/instance-1/output-1/host/bin/mips-linux-gnu-g++ -v >&5 Using built-in specs. COLLECT_GCC=/home/naourr/work/instance-1/output-1/host/opt/ext-toolchain/bin/mips-linux-gnu-g++ COLLECT_LTO_WRAPPER=/home/naourr/work/instance-1/output-1/host/opt/ext-toolchain/bin/../libexec/gcc/mips-linux-gnu/5.3.0/lto-wrapper Target: mips-linux-gnu Configured with: /scratch/cmoore/2016.05-8-mips-linux-gnu-lite/src/gcc-5-2016.05/configure --build=i686-pc-linux-gnu --host=i686-pc-linux-gnu --target=mips-linux-gnu --enable-threads --disable-libmudflap --disable-libssp --disable-libstdcxx-pch --with-arch-32=mips32r2 --with-arch-64=mips64r2 --with-float=hard --with-mips-plt --enable-extra-sgxxlite-multilibs --with-gnu-as --with-gnu-ld --with-specs='-D__CS_SOURCERYGXX_MAJ__=2016 -D__CS_SOURCERYGXX_MIN__=5 -D__CS_SOURCERYGXX_REV__=8' --enable-languages=c,c++ --enable-shared --enable-lto --enable-symvers=gnu --enable-__cxa_atexit --with-glibc-version=2.23 --with-pkgversion='Sourcery CodeBench Lite 2016.05-8' --with-bugurl=https://sourcery.mentor.com/GNUToolchain/ --disable-nls --prefix=/opt/codesourcery --with-sysroot=/opt/codesourcery/mips-linux-gnu/libc --with-build-sysroot=/scratch/cmoore/2016.05-8-mips-linux-gnu-lite/install/opt/codesourcery/mips-linux-gnu/libc --with-gmp=/scratch/cmoore/2016.05-8-mips-linux-gnu-lite/obj/pkg-2016.05-8-mips-linux-gnu/mips-2016.05-8-mips-linux-gnu.extras/host-libs-i686-pc-linux-gnu/usr --with-mpfr=/scratch/cmoore/2016.05-8-mips-linux-gnu-lite/obj/pkg-2016.05-8-mips-linux-gnu/mips-2016.05-8-mips-linux-gnu.extras/host-libs-i686-pc-linux-gnu/usr --with-mpc=/scratch/cmoore/2016.05-8-mips-linux-gnu-lite/obj/pkg-2016.05-8-mips-linux-gnu/mips-2016.05-8-mips-linux-gnu.extras/host-libs-i686-pc-linux-gnu/usr --with-isl=/scratch/cmoore/2016.05-8-mips-linux-gnu-lite/obj/pkg-2016.05-8-mips-linux-gnu/mips-2016.05-8-mips-linux-gnu.extras/host-libs-i686-pc-linux-gnu/usr --enable-libgomp --disable-libitm --enable-libatomic --disable-libssp --disable-libcc1 --enable-poison-system-directories --with-python-dir=mips-linux-gnu/share/gdb/python --with-build-time-tools=/scratch/cmoore/2016.05-8-mips-linux-gnu-lite/install/opt/codesourcery/mips-linux-gnu/bin --with-build-time-tools=/scratch/cmoore/2016.05-8-mips-linux-gnu-lite/install/opt/codesourcery/mips-linux-gnu/bin SED=sed Thread model: posix gcc version 5.3.0 (Sourcery CodeBench Lite 2016.05-8) COMPILER_PATH=/home/naourr/work/instance-1/output-1/host/opt/ext-toolchain/bin/../libexec/gcc/mips-linux-gnu/5.3.0/:/home/naourr/work/instance-1/output-1/host/opt/ext-toolchain/bin/../libexec/gcc/:/home/naourr/work/instance-1/output-1/host/opt/ext-toolchain/bin/../lib/gcc/mips-linux-gnu/5.3.0/../../../../mips-linux-gnu/bin/ LIBRARY_PATH=/home/naourr/work/instance-1/output-1/host/opt/ext-toolchain/bin/../lib/gcc/mips-linux-gnu/5.3.0/soft-float/:/home/naourr/work/instance-1/output-1/host/opt/ext-toolchain/bin/../lib/gcc/mips-linux-gnu/5.3.0/../../../../mips-linux-gnu/lib/soft-float/:/home/naourr/work/instance-1/output-1/host/opt/ext-toolchain/bin/../lib/gcc/mips-linux-gnu/5.3.0/:/home/naourr/work/instance-1/output-1/host/opt/ext-toolchain/bin/../lib/gcc/:/home/naourr/work/instance-1/output-1/host/opt/ext-toolchain/bin/../lib/gcc/mips-linux-gnu/5.3.0/../../../../mips-linux-gnu/lib/:/home/naourr/work/instance-1/output-1/host/mips-buildroot-linux-gnu/sysroot/soft-float/lib/:/home/naourr/work/instance-1/output-1/host/mips-buildroot-linux-gnu/sysroot/soft-float/usr/lib/ COLLECT_GCC_OPTIONS='-mabi=32' '-mnan=legacy' '-msoft-float' '-EB' '-march=mips32r2' '-fPIE' '-pie' '-v' '-shared-libgcc' '-mllsc' '-D' '__CS_SOURCERYGXX_MAJ__=2016' '-D' '__CS_SOURCERYGXX_MIN__=5' '-D' '__CS_SOURCERYGXX_REV__=8' ... rest of stderr output deleted ... configure:3310: $? = 1 configure:3299: /home/naourr/work/instance-1/output-1/host/bin/mips-linux-gnu-g++ -V >&5 mips-linux-gnu-g++: error: unrecognized command line option '-V' configure:3310: $? = 1 configure:3299: /home/naourr/work/instance-1/output-1/host/bin/mips-linux-gnu-g++ -qversion >&5 mips-linux-gnu-g++: error: unrecognized command line option '-qversion' configure:3310: $? = 1 configure:3330: checking whether the C++ compiler works configure:3352: /home/naourr/work/instance-1/output-1/host/bin/mips-linux-gnu-g++ -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -O2 -D_FORTIFY_SOURCE=2 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 conftest.cpp >&5 configure:3356: $? = 0 configure:3404: result: yes configure:3407: checking for C++ compiler default output file name configure:3409: result: a.out configure:3415: checking for suffix of executables configure:3422: /home/naourr/work/instance-1/output-1/host/bin/mips-linux-gnu-g++ -o conftest -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -O2 -D_FORTIFY_SOURCE=2 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 conftest.cpp >&5 configure:3426: $? = 0 configure:3448: result: configure:3470: checking whether we are cross compiling configure:3508: result: yes configure:3513: checking for suffix of object files configure:3535: /home/naourr/work/instance-1/output-1/host/bin/mips-linux-gnu-g++ -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -O2 -D_FORTIFY_SOURCE=2 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 conftest.cpp >&5 configure:3539: $? = 0 configure:3560: result: o configure:3564: checking whether we are using the GNU C++ compiler configure:3583: /home/naourr/work/instance-1/output-1/host/bin/mips-linux-gnu-g++ -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -O2 -D_FORTIFY_SOURCE=2 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 conftest.cpp >&5 configure:3583: $? = 0 configure:3592: result: yes configure:3601: checking whether /home/naourr/work/instance-1/output-1/host/bin/mips-linux-gnu-g++ accepts -g configure:3621: /home/naourr/work/instance-1/output-1/host/bin/mips-linux-gnu-g++ -c -g -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 conftest.cpp >&5 configure:3621: $? = 0 configure:3662: result: yes configure:3696: checking for style of include used by make configure:3724: result: GNU configure:3750: checking dependency style of /home/naourr/work/instance-1/output-1/host/bin/mips-linux-gnu-g++ configure:3861: result: none configure:3884: checking for mips-buildroot-linux-gnu-gcc configure:3911: result: /home/naourr/work/instance-1/output-1/host/bin/mips-linux-gnu-gcc configure:4180: checking for C compiler version configure:4189: /home/naourr/work/instance-1/output-1/host/bin/mips-linux-gnu-gcc --version >&5 mips-linux-gnu-gcc (Sourcery CodeBench Lite 2016.05-8) 5.3.0 Copyright (C) 2015 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:4200: $? = 0 configure:4189: /home/naourr/work/instance-1/output-1/host/bin/mips-linux-gnu-gcc -v >&5 Using built-in specs. COLLECT_GCC=/home/naourr/work/instance-1/output-1/host/opt/ext-toolchain/bin/mips-linux-gnu-gcc COLLECT_LTO_WRAPPER=/home/naourr/work/instance-1/output-1/host/opt/ext-toolchain/bin/../libexec/gcc/mips-linux-gnu/5.3.0/lto-wrapper Target: mips-linux-gnu Configured with: /scratch/cmoore/2016.05-8-mips-linux-gnu-lite/src/gcc-5-2016.05/configure --build=i686-pc-linux-gnu --host=i686-pc-linux-gnu --target=mips-linux-gnu --enable-threads --disable-libmudflap --disable-libssp --disable-libstdcxx-pch --with-arch-32=mips32r2 --with-arch-64=mips64r2 --with-float=hard --with-mips-plt --enable-extra-sgxxlite-multilibs --with-gnu-as --with-gnu-ld --with-specs='-D__CS_SOURCERYGXX_MAJ__=2016 -D__CS_SOURCERYGXX_MIN__=5 -D__CS_SOURCERYGXX_REV__=8' --enable-languages=c,c++ --enable-shared --enable-lto --enable-symvers=gnu --enable-__cxa_atexit --with-glibc-version=2.23 --with-pkgversion='Sourcery CodeBench Lite 2016.05-8' --with-bugurl=https://sourcery.mentor.com/GNUToolchain/ --disable-nls --prefix=/opt/codesourcery --with-sysroot=/opt/codesourcery/mips-linux-gnu/libc --with-build-sysroot=/scratch/cmoore/2016.05-8-mips-linux-gnu-lite/install/opt/codesourcery/mips-linux-gnu/libc --with-gmp=/scratch/cmoore/2016.05-8-mips-linux-gnu-lite/obj/pkg-2016.05-8-mips-linux-gnu/mips-2016.05-8-mips-linux-gnu.extras/host-libs-i686-pc-linux-gnu/usr --with-mpfr=/scratch/cmoore/2016.05-8-mips-linux-gnu-lite/obj/pkg-2016.05-8-mips-linux-gnu/mips-2016.05-8-mips-linux-gnu.extras/host-libs-i686-pc-linux-gnu/usr --with-mpc=/scratch/cmoore/2016.05-8-mips-linux-gnu-lite/obj/pkg-2016.05-8-mips-linux-gnu/mips-2016.05-8-mips-linux-gnu.extras/host-libs-i686-pc-linux-gnu/usr --with-isl=/scratch/cmoore/2016.05-8-mips-linux-gnu-lite/obj/pkg-2016.05-8-mips-linux-gnu/mips-2016.05-8-mips-linux-gnu.extras/host-libs-i686-pc-linux-gnu/usr --enable-libgomp --disable-libitm --enable-libatomic --disable-libssp --disable-libcc1 --enable-poison-system-directories --with-python-dir=mips-linux-gnu/share/gdb/python --with-build-time-tools=/scratch/cmoore/2016.05-8-mips-linux-gnu-lite/install/opt/codesourcery/mips-linux-gnu/bin --with-build-time-tools=/scratch/cmoore/2016.05-8-mips-linux-gnu-lite/install/opt/codesourcery/mips-linux-gnu/bin SED=sed Thread model: posix gcc version 5.3.0 (Sourcery CodeBench Lite 2016.05-8) COMPILER_PATH=/home/naourr/work/instance-1/output-1/host/opt/ext-toolchain/bin/../libexec/gcc/mips-linux-gnu/5.3.0/:/home/naourr/work/instance-1/output-1/host/opt/ext-toolchain/bin/../libexec/gcc/:/home/naourr/work/instance-1/output-1/host/opt/ext-toolchain/bin/../lib/gcc/mips-linux-gnu/5.3.0/../../../../mips-linux-gnu/bin/ LIBRARY_PATH=/home/naourr/work/instance-1/output-1/host/opt/ext-toolchain/bin/../lib/gcc/mips-linux-gnu/5.3.0/soft-float/:/home/naourr/work/instance-1/output-1/host/opt/ext-toolchain/bin/../lib/gcc/mips-linux-gnu/5.3.0/../../../../mips-linux-gnu/lib/soft-float/:/home/naourr/work/instance-1/output-1/host/opt/ext-toolchain/bin/../lib/gcc/mips-linux-gnu/5.3.0/:/home/naourr/work/instance-1/output-1/host/opt/ext-toolchain/bin/../lib/gcc/:/home/naourr/work/instance-1/output-1/host/opt/ext-toolchain/bin/../lib/gcc/mips-linux-gnu/5.3.0/../../../../mips-linux-gnu/lib/:/home/naourr/work/instance-1/output-1/host/mips-buildroot-linux-gnu/sysroot/soft-float/lib/:/home/naourr/work/instance-1/output-1/host/mips-buildroot-linux-gnu/sysroot/soft-float/usr/lib/ COLLECT_GCC_OPTIONS='-mabi=32' '-mnan=legacy' '-msoft-float' '-EB' '-march=mips32r2' '-fPIE' '-pie' '-v' '-mllsc' '-D' '__CS_SOURCERYGXX_MAJ__=2016' '-D' '__CS_SOURCERYGXX_MIN__=5' '-D' '__CS_SOURCERYGXX_REV__=8' ... rest of stderr output deleted ... configure:4200: $? = 1 configure:4189: /home/naourr/work/instance-1/output-1/host/bin/mips-linux-gnu-gcc -V >&5 mips-linux-gnu-gcc: error: unrecognized command line option '-V' configure:4200: $? = 1 configure:4189: /home/naourr/work/instance-1/output-1/host/bin/mips-linux-gnu-gcc -qversion >&5 mips-linux-gnu-gcc: error: unrecognized command line option '-qversion' configure:4200: $? = 1 configure:4204: checking whether we are using the GNU C compiler configure:4223: /home/naourr/work/instance-1/output-1/host/bin/mips-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -O2 -D_FORTIFY_SOURCE=2 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 conftest.c >&5 configure:4223: $? = 0 configure:4232: result: yes configure:4241: checking whether /home/naourr/work/instance-1/output-1/host/bin/mips-linux-gnu-gcc accepts -g configure:4261: /home/naourr/work/instance-1/output-1/host/bin/mips-linux-gnu-gcc -c -g -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 conftest.c >&5 configure:4261: $? = 0 configure:4302: result: yes configure:4319: checking for /home/naourr/work/instance-1/output-1/host/bin/mips-linux-gnu-gcc option to accept ISO C89 configure:4382: /home/naourr/work/instance-1/output-1/host/bin/mips-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -O2 -D_FORTIFY_SOURCE=2 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 conftest.c >&5 configure:4382: $? = 0 configure:4395: result: none needed configure:4420: checking whether /home/naourr/work/instance-1/output-1/host/bin/mips-linux-gnu-gcc understands -c and -o together configure:4442: /home/naourr/work/instance-1/output-1/host/bin/mips-linux-gnu-gcc -c conftest.c -o conftest2.o configure:4445: $? = 0 configure:4442: /home/naourr/work/instance-1/output-1/host/bin/mips-linux-gnu-gcc -c conftest.c -o conftest2.o configure:4445: $? = 0 configure:4457: result: yes configure:4476: checking dependency style of /home/naourr/work/instance-1/output-1/host/bin/mips-linux-gnu-gcc configure:4587: result: none configure:4608: checking for mips-buildroot-linux-gnu-ar configure:4635: result: /home/naourr/work/instance-1/output-1/host/bin/mips-linux-gnu-ar configure:4705: checking the archiver (/home/naourr/work/instance-1/output-1/host/bin/mips-linux-gnu-ar) interface configure:4721: /home/naourr/work/instance-1/output-1/host/bin/mips-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -O2 -D_FORTIFY_SOURCE=2 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 conftest.c >&5 configure:4721: $? = 0 configure:4723: /home/naourr/work/instance-1/output-1/host/bin/mips-linux-gnu-ar cru libconftest.a conftest.o >&5 configure:4726: $? = 0 configure:4725: result: ar configure:4746: checking whether make sets $(MAKE) configure:4768: result: yes configure:4814: checking for a Python interpreter with version >= 2.7 configure:4831: python -c import sys # split strings by '.' and convert to numeric. Append some zeros # because we need at least 4 digits for the hex conversion. # map returns an iterator in Python 3.0 and a list in 2.x minver = list(map(int, '2.7'.split('.'))) + [0, 0, 0] minverhex = 0 # xrange is not present in Python 3.0 and range returns an iterator for i in list(range(0, 4)): minverhex = (minverhex << 8) + minver[i] sys.exit(sys.hexversion < minverhex) configure:4834: $? = 0 configure:4840: result: python configure:4848: checking for python configure:4866: found /home/naourr/work/instance-1/output-1/host/bin/python configure:4878: result: /home/naourr/work/instance-1/output-1/host/bin/python configure:4896: checking for python version configure:4903: result: 3.8 configure:4915: checking for python platform configure:4922: result: linux configure:4948: checking for python script directory configure:4983: result: ${prefix}/lib/python3.8/site-packages configure:4992: checking for python extension module directory configure:5027: result: ${exec_prefix}/lib/python3.8/site-packages configure:5180: checking pkg-config is at least version 0.9.0 configure:5183: result: yes configure:5200: checking for SYSTEMD configure:5207: $PKG_CONFIG --exists --print-errors "libsystemd >= 221 " configure:5210: $? = 0 configure:5224: $PKG_CONFIG --exists --print-errors "libsystemd >= 221 " configure:5227: $? = 0 configure:5265: result: yes configure:5325: checking how to run the C++ preprocessor configure:5352: /home/naourr/work/instance-1/output-1/host/bin/mips-linux-gnu-g++ -E -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 conftest.cpp configure:5352: $? = 0 configure:5366: /home/naourr/work/instance-1/output-1/host/bin/mips-linux-gnu-g++ -E -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 conftest.cpp conftest.cpp:11:28: fatal error: ac_nonexistent.h: No such file or directory compilation terminated. configure:5366: $? = 1 configure: failed program was: | /* confdefs.h */ | #define PACKAGE_NAME "sdbusplus" | #define PACKAGE_TARNAME "sdbusplus" | #define PACKAGE_VERSION "1.0" | #define PACKAGE_STRING "sdbusplus 1.0" | #define PACKAGE_BUGREPORT "https://github.com/openbmc/sdbusplus/issues" | #define PACKAGE_URL "" | #define PACKAGE "sdbusplus" | #define VERSION "1.0" | /* end confdefs.h. */ | #include configure:5391: result: /home/naourr/work/instance-1/output-1/host/bin/mips-linux-gnu-g++ -E configure:5411: /home/naourr/work/instance-1/output-1/host/bin/mips-linux-gnu-g++ -E -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 conftest.cpp configure:5411: $? = 0 configure:5425: /home/naourr/work/instance-1/output-1/host/bin/mips-linux-gnu-g++ -E -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 conftest.cpp conftest.cpp:11:28: fatal error: ac_nonexistent.h: No such file or directory compilation terminated. configure:5425: $? = 1 configure: failed program was: | /* confdefs.h */ | #define PACKAGE_NAME "sdbusplus" | #define PACKAGE_TARNAME "sdbusplus" | #define PACKAGE_VERSION "1.0" | #define PACKAGE_STRING "sdbusplus 1.0" | #define PACKAGE_BUGREPORT "https://github.com/openbmc/sdbusplus/issues" | #define PACKAGE_URL "" | #define PACKAGE "sdbusplus" | #define VERSION "1.0" | /* end confdefs.h. */ | #include configure:5454: checking for grep that handles long lines and -e configure:5512: result: /usr/bin/grep configure:5517: checking for egrep configure:5579: result: /usr/bin/grep -E configure:5584: checking for ANSI C header files configure:5604: /home/naourr/work/instance-1/output-1/host/bin/mips-linux-gnu-g++ -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -O2 -D_FORTIFY_SOURCE=2 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 conftest.cpp >&5 configure:5604: $? = 0 configure:5688: result: yes configure:5701: checking for sys/types.h configure:5701: /home/naourr/work/instance-1/output-1/host/bin/mips-linux-gnu-g++ -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -O2 -D_FORTIFY_SOURCE=2 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 conftest.cpp >&5 configure:5701: $? = 0 configure:5701: result: yes configure:5701: checking for sys/stat.h configure:5701: /home/naourr/work/instance-1/output-1/host/bin/mips-linux-gnu-g++ -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -O2 -D_FORTIFY_SOURCE=2 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 conftest.cpp >&5 configure:5701: $? = 0 configure:5701: result: yes configure:5701: checking for stdlib.h configure:5701: /home/naourr/work/instance-1/output-1/host/bin/mips-linux-gnu-g++ -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -O2 -D_FORTIFY_SOURCE=2 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 conftest.cpp >&5 configure:5701: $? = 0 configure:5701: result: yes configure:5701: checking for string.h configure:5701: /home/naourr/work/instance-1/output-1/host/bin/mips-linux-gnu-g++ -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -O2 -D_FORTIFY_SOURCE=2 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 conftest.cpp >&5 configure:5701: $? = 0 configure:5701: result: yes configure:5701: checking for memory.h configure:5701: /home/naourr/work/instance-1/output-1/host/bin/mips-linux-gnu-g++ -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -O2 -D_FORTIFY_SOURCE=2 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 conftest.cpp >&5 configure:5701: $? = 0 configure:5701: result: yes configure:5701: checking for strings.h configure:5701: /home/naourr/work/instance-1/output-1/host/bin/mips-linux-gnu-g++ -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -O2 -D_FORTIFY_SOURCE=2 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 conftest.cpp >&5 configure:5701: $? = 0 configure:5701: result: yes configure:5701: checking for inttypes.h configure:5701: /home/naourr/work/instance-1/output-1/host/bin/mips-linux-gnu-g++ -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -O2 -D_FORTIFY_SOURCE=2 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 conftest.cpp >&5 configure:5701: $? = 0 configure:5701: result: yes configure:5701: checking for stdint.h configure:5701: /home/naourr/work/instance-1/output-1/host/bin/mips-linux-gnu-g++ -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -O2 -D_FORTIFY_SOURCE=2 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 conftest.cpp >&5 configure:5701: $? = 0 configure:5701: result: yes configure:5701: checking for unistd.h configure:5701: /home/naourr/work/instance-1/output-1/host/bin/mips-linux-gnu-g++ -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -O2 -D_FORTIFY_SOURCE=2 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 conftest.cpp >&5 configure:5701: $? = 0 configure:5701: result: yes configure:5714: checking systemd/sd-bus.h usability configure:5714: /home/naourr/work/instance-1/output-1/host/bin/mips-linux-gnu-g++ -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -O2 -D_FORTIFY_SOURCE=2 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 conftest.cpp >&5 configure:5714: $? = 0 configure:5714: result: yes configure:5714: checking systemd/sd-bus.h presence configure:5714: /home/naourr/work/instance-1/output-1/host/bin/mips-linux-gnu-g++ -E -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 conftest.cpp configure:5714: $? = 0 configure:5714: result: yes configure:5714: checking for systemd/sd-bus.h configure:5714: result: yes configure:5740: checking whether /home/naourr/work/instance-1/output-1/host/bin/mips-linux-gnu-g++ supports C++17 features with -std=c++17 configure:6534: /home/naourr/work/instance-1/output-1/host/bin/mips-linux-gnu-g++ -std=c++17 -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -O2 -D_FORTIFY_SOURCE=2 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 conftest.cpp >&5 conftest.cpp:437:2: error: #error "This is not a C++17 compiler" #error "This is not a C++17 compiler" ^ configure:6534: $? = 1 configure: failed program was: | /* confdefs.h */ | #define PACKAGE_NAME "sdbusplus" | #define PACKAGE_TARNAME "sdbusplus" | #define PACKAGE_VERSION "1.0" | #define PACKAGE_STRING "sdbusplus 1.0" | #define PACKAGE_BUGREPORT "https://github.com/openbmc/sdbusplus/issues" | #define PACKAGE_URL "" | #define PACKAGE "sdbusplus" | #define VERSION "1.0" | #define STDC_HEADERS 1 | #define HAVE_SYS_TYPES_H 1 | #define HAVE_SYS_STAT_H 1 | #define HAVE_STDLIB_H 1 | #define HAVE_STRING_H 1 | #define HAVE_MEMORY_H 1 | #define HAVE_STRINGS_H 1 | #define HAVE_INTTYPES_H 1 | #define HAVE_STDINT_H 1 | #define HAVE_UNISTD_H 1 | /* end confdefs.h. */ | | | // If the compiler admits that it is not ready for C++11, why torture it? | // Hopefully, this will speed up the test. | | #ifndef __cplusplus | | #error "This is not a C++ compiler" | | #elif __cplusplus < 201103L | | #error "This is not a C++11 compiler" | | #else | | namespace cxx11 | { | | namespace test_static_assert | { | | template | struct check | { | static_assert(sizeof(int) <= sizeof(T), "not big enough"); | }; | | } | | namespace test_final_override | { | | struct Base | { | virtual void f() {} | }; | | struct Derived : public Base | { | virtual void f() override {} | }; | | } | | namespace test_double_right_angle_brackets | { | | template < typename T > | struct check {}; | | typedef check single_type; | typedef check> double_type; | typedef check>> triple_type; | typedef check>>> quadruple_type; | | } | | namespace test_decltype | { | | int | f() | { | int a = 1; | decltype(a) b = 2; | return a + b; | } | | } | | namespace test_type_deduction | { | | template < typename T1, typename T2 > | struct is_same | { | static const bool value = false; | }; | | template < typename T > | struct is_same | { | static const bool value = true; | }; | | template < typename T1, typename T2 > | auto | add(T1 a1, T2 a2) -> decltype(a1 + a2) | { | return a1 + a2; | } | | int | test(const int c, volatile int v) | { | static_assert(is_same::value == true, ""); | static_assert(is_same::value == false, ""); | static_assert(is_same::value == false, ""); | auto ac = c; | auto av = v; | auto sumi = ac + av + 'x'; | auto sumf = ac + av + 1.0; | static_assert(is_same::value == true, ""); | static_assert(is_same::value == true, ""); | static_assert(is_same::value == true, ""); | static_assert(is_same::value == false, ""); | static_assert(is_same::value == true, ""); | return (sumf > 0.0) ? sumi : add(c, v); | } | | } | | namespace test_noexcept | { | | int f() { return 0; } | int g() noexcept { return 0; } | | static_assert(noexcept(f()) == false, ""); | static_assert(noexcept(g()) == true, ""); | | } | | namespace test_constexpr | { | | template < typename CharT > | unsigned long constexpr | strlen_c_r(const CharT *const s, const unsigned long acc) noexcept | { | return *s ? strlen_c_r(s + 1, acc + 1) : acc; | } | | template < typename CharT > | unsigned long constexpr | strlen_c(const CharT *const s) noexcept | { | return strlen_c_r(s, 0UL); | } | | static_assert(strlen_c("") == 0UL, ""); | static_assert(strlen_c("1") == 1UL, ""); | static_assert(strlen_c("example") == 7UL, ""); | static_assert(strlen_c("another\0example") == 7UL, ""); | | } | | namespace test_rvalue_references | { | | template < int N > | struct answer | { | static constexpr int value = N; | }; | | answer<1> f(int&) { return answer<1>(); } | answer<2> f(const int&) { return answer<2>(); } | answer<3> f(int&&) { return answer<3>(); } | | void | test() | { | int i = 0; | const int c = 0; | static_assert(decltype(f(i))::value == 1, ""); | static_assert(decltype(f(c))::value == 2, ""); | static_assert(decltype(f(0))::value == 3, ""); | } | | } | | namespace test_uniform_initialization | { | | struct test | { | static const int zero {}; | static const int one {1}; | }; | | static_assert(test::zero == 0, ""); | static_assert(test::one == 1, ""); | | } | | namespace test_lambdas | { | | void | test1() | { | auto lambda1 = [](){}; | auto lambda2 = lambda1; | lambda1(); | lambda2(); | } | | int | test2() | { | auto a = [](int i, int j){ return i + j; }(1, 2); | auto b = []() -> int { return '0'; }(); | auto c = [=](){ return a + b; }(); | auto d = [&](){ return c; }(); | auto e = [a, &b](int x) mutable { | const auto identity = [](int y){ return y; }; | for (auto i = 0; i < a; ++i) | a += b--; | return x + identity(a + b); | }(0); | return a + b + c + d + e; | } | | int | test3() | { | const auto nullary = [](){ return 0; }; | const auto unary = [](int x){ return x; }; | using nullary_t = decltype(nullary); | using unary_t = decltype(unary); | const auto higher1st = [](nullary_t f){ return f(); }; | const auto higher2nd = [unary](nullary_t f1){ | return [unary, f1](unary_t f2){ return f2(unary(f1())); }; | }; | return higher1st(nullary) + higher2nd(nullary)(unary); | } | | } | | namespace test_variadic_templates | { | | template | struct sum; | | template | struct sum | { | static constexpr auto value = N0 + sum::value; | }; | | template <> | struct sum<> | { | static constexpr auto value = 0; | }; | | static_assert(sum<>::value == 0, ""); | static_assert(sum<1>::value == 1, ""); | static_assert(sum<23>::value == 23, ""); | static_assert(sum<1, 2>::value == 3, ""); | static_assert(sum<5, 5, 11>::value == 21, ""); | static_assert(sum<2, 3, 5, 7, 11, 13>::value == 41, ""); | | } | | // http://stackoverflow.com/questions/13728184/template-aliases-and-sfinae | // Clang 3.1 fails with headers of libstd++ 4.8.3 when using std::function | // because of this. | namespace test_template_alias_sfinae | { | | struct foo {}; | | template | using member = typename T::member_type; | | template | void func(...) {} | | template | void func(member*) {} | | void test(); | | void test() { func(0); } | | } | | } // namespace cxx11 | | #endif // __cplusplus >= 201103L | | | | | // If the compiler admits that it is not ready for C++14, why torture it? | // Hopefully, this will speed up the test. | | #ifndef __cplusplus | | #error "This is not a C++ compiler" | | #elif __cplusplus < 201402L | | #error "This is not a C++14 compiler" | | #else | | namespace cxx14 | { | | namespace test_polymorphic_lambdas | { | | int | test() | { | const auto lambda = [](auto&&... args){ | const auto istiny = [](auto x){ | return (sizeof(x) == 1UL) ? 1 : 0; | }; | const int aretiny[] = { istiny(args)... }; | return aretiny[0]; | }; | return lambda(1, 1L, 1.0f, '1'); | } | | } | | namespace test_binary_literals | { | | constexpr auto ivii = 0b0000000000101010; | static_assert(ivii == 42, "wrong value"); | | } | | namespace test_generalized_constexpr | { | | template < typename CharT > | constexpr unsigned long | strlen_c(const CharT *const s) noexcept | { | auto length = 0UL; | for (auto p = s; *p; ++p) | ++length; | return length; | } | | static_assert(strlen_c("") == 0UL, ""); | static_assert(strlen_c("x") == 1UL, ""); | static_assert(strlen_c("test") == 4UL, ""); | static_assert(strlen_c("another\0test") == 7UL, ""); | | } | | namespace test_lambda_init_capture | { | | int | test() | { | auto x = 0; | const auto lambda1 = [a = x](int b){ return a + b; }; | const auto lambda2 = [a = lambda1(x)](){ return a; }; | return lambda2(); | } | | } | | namespace test_digit_separators | { | | constexpr auto ten_million = 100'000'000; | static_assert(ten_million == 100000000, ""); | | } | | namespace test_return_type_deduction | { | | auto f(int& x) { return x; } | decltype(auto) g(int& x) { return x; } | | template < typename T1, typename T2 > | struct is_same | { | static constexpr auto value = false; | }; | | template < typename T > | struct is_same | { | static constexpr auto value = true; | }; | | int | test() | { | auto x = 0; | static_assert(is_same::value, ""); | static_assert(is_same::value, ""); | return x; | } | | } | | } // namespace cxx14 | | #endif // __cplusplus >= 201402L | | | | | // If the compiler admits that it is not ready for C++17, why torture it? | // Hopefully, this will speed up the test. | | #ifndef __cplusplus | | #error "This is not a C++ compiler" | | #elif __cplusplus < 201703L | | #error "This is not a C++17 compiler" | | #else | | #include | #include | #include | | namespace cxx17 | { | | namespace test_constexpr_lambdas | { | | constexpr int foo = [](){return 42;}(); | | } | | namespace test::nested_namespace::definitions | { | | } | | namespace test_fold_expression | { | | template | int multiply(Args... args) | { | return (args * ... * 1); | } | | template | bool all(Args... args) | { | return (args && ...); | } | | } | | namespace test_extended_static_assert | { | | static_assert (true); | | } | | namespace test_auto_brace_init_list | { | | auto foo = {5}; | auto bar {5}; | | static_assert(std::is_same, decltype(foo)>::value); | static_assert(std::is_same::value); | } | | namespace test_typename_in_template_template_parameter | { | | template typename X> struct D; | | } | | namespace test_fallthrough_nodiscard_maybe_unused_attributes | { | | int f1() | { | return 42; | } | | [[nodiscard]] int f2() | { | [[maybe_unused]] auto unused = f1(); | | switch (f1()) | { | case 17: | f1(); | [[fallthrough]]; | case 42: | f1(); | } | return f1(); | } | | } | | namespace test_extended_aggregate_initialization | { | | struct base1 | { | int b1, b2 = 42; | }; | | struct base2 | { | base2() { | b3 = 42; | } | int b3; | }; | | struct derived : base1, base2 | { | int d; | }; | | derived d1 {{1, 2}, {}, 4}; // full initialization | derived d2 {{}, {}, 4}; // value-initialized bases | | } | | namespace test_general_range_based_for_loop | { | | struct iter | { | int i; | | int& operator* () | { | return i; | } | | const int& operator* () const | { | return i; | } | | iter& operator++() | { | ++i; | return *this; | } | }; | | struct sentinel | { | int i; | }; | | bool operator== (const iter& i, const sentinel& s) | { | return i.i == s.i; | } | | bool operator!= (const iter& i, const sentinel& s) | { | return !(i == s); | } | | struct range | { | iter begin() const | { | return {0}; | } | | sentinel end() const | { | return {5}; | } | }; | | void f() | { | range r {}; | | for (auto i : r) | { | [[maybe_unused]] auto v = i; | } | } | | } | | namespace test_lambda_capture_asterisk_this_by_value | { | | struct t | { | int i; | int foo() | { | return [*this]() | { | return i; | }(); | } | }; | | } | | namespace test_enum_class_construction | { | | enum class byte : unsigned char | {}; | | byte foo {42}; | | } | | namespace test_constexpr_if | { | | template | int f () | { | if constexpr(cond) | { | return 13; | } | else | { | return 42; | } | } | | } | | namespace test_selection_statement_with_initializer | { | | int f() | { | return 13; | } | | int f2() | { | if (auto i = f(); i > 0) | { | return 3; | } | | switch (auto i = f(); i + 4) | { | case 17: | return 2; | | default: | return 1; | } | } | | } | | namespace test_template_argument_deduction_for_class_templates | { | | template | struct pair | { | pair (T1 p1, T2 p2) | : m1 {p1}, | m2 {p2} | {} | | T1 m1; | T2 m2; | }; | | void f() | { | [[maybe_unused]] auto p = pair{13, 42u}; | } | | } | | namespace test_non_type_auto_template_parameters | { | | template | struct B | {}; | | B<5> b1; | B<'a'> b2; | | } | | namespace test_structured_bindings | { | | int arr[2] = { 1, 2 }; | std::pair pr = { 1, 2 }; | | auto f1() -> int(&)[2] | { | return arr; | } | | auto f2() -> std::pair& | { | return pr; | } | | struct S | { | int x1 : 2; | volatile double y1; | }; | | S f3() | { | return {}; | } | | auto [ x1, y1 ] = f1(); | auto& [ xr1, yr1 ] = f1(); | auto [ x2, y2 ] = f2(); | auto& [ xr2, yr2 ] = f2(); | const auto [ x3, y3 ] = f3(); | | } | | namespace test_exception_spec_type_system | { | | struct Good {}; | struct Bad {}; | | void g1() noexcept; | void g2(); | | template | Bad | f(T*, T*); | | template | Good | f(T1*, T2*); | | static_assert (std::is_same_v); | | } | | namespace test_inline_variables | { | | template void f(T) | {} | | template inline T g(T) | { | return T{}; | } | | template<> inline void f<>(int) | {} | | template<> int g<>(int) | { | return 5; | } | | } | | } // namespace cxx17 | | #endif // __cplusplus < 201703L | | | configure:6543: result: no configure:5740: checking whether /home/naourr/work/instance-1/output-1/host/bin/mips-linux-gnu-g++ supports C++17 features with +std=c++17 configure:6534: /home/naourr/work/instance-1/output-1/host/bin/mips-linux-gnu-g++ +std=c++17 -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -O2 -D_FORTIFY_SOURCE=2 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 conftest.cpp >&5 mips-linux-gnu-g++: error: +std=c++17: No such file or directory configure:6534: $? = 1 configure: failed program was: | /* confdefs.h */ | #define PACKAGE_NAME "sdbusplus" | #define PACKAGE_TARNAME "sdbusplus" | #define PACKAGE_VERSION "1.0" | #define PACKAGE_STRING "sdbusplus 1.0" | #define PACKAGE_BUGREPORT "https://github.com/openbmc/sdbusplus/issues" | #define PACKAGE_URL "" | #define PACKAGE "sdbusplus" | #define VERSION "1.0" | #define STDC_HEADERS 1 | #define HAVE_SYS_TYPES_H 1 | #define HAVE_SYS_STAT_H 1 | #define HAVE_STDLIB_H 1 | #define HAVE_STRING_H 1 | #define HAVE_MEMORY_H 1 | #define HAVE_STRINGS_H 1 | #define HAVE_INTTYPES_H 1 | #define HAVE_STDINT_H 1 | #define HAVE_UNISTD_H 1 | /* end confdefs.h. */ | | | // If the compiler admits that it is not ready for C++11, why torture it? | // Hopefully, this will speed up the test. | | #ifndef __cplusplus | | #error "This is not a C++ compiler" | | #elif __cplusplus < 201103L | | #error "This is not a C++11 compiler" | | #else | | namespace cxx11 | { | | namespace test_static_assert | { | | template | struct check | { | static_assert(sizeof(int) <= sizeof(T), "not big enough"); | }; | | } | | namespace test_final_override | { | | struct Base | { | virtual void f() {} | }; | | struct Derived : public Base | { | virtual void f() override {} | }; | | } | | namespace test_double_right_angle_brackets | { | | template < typename T > | struct check {}; | | typedef check single_type; | typedef check> double_type; | typedef check>> triple_type; | typedef check>>> quadruple_type; | | } | | namespace test_decltype | { | | int | f() | { | int a = 1; | decltype(a) b = 2; | return a + b; | } | | } | | namespace test_type_deduction | { | | template < typename T1, typename T2 > | struct is_same | { | static const bool value = false; | }; | | template < typename T > | struct is_same | { | static const bool value = true; | }; | | template < typename T1, typename T2 > | auto | add(T1 a1, T2 a2) -> decltype(a1 + a2) | { | return a1 + a2; | } | | int | test(const int c, volatile int v) | { | static_assert(is_same::value == true, ""); | static_assert(is_same::value == false, ""); | static_assert(is_same::value == false, ""); | auto ac = c; | auto av = v; | auto sumi = ac + av + 'x'; | auto sumf = ac + av + 1.0; | static_assert(is_same::value == true, ""); | static_assert(is_same::value == true, ""); | static_assert(is_same::value == true, ""); | static_assert(is_same::value == false, ""); | static_assert(is_same::value == true, ""); | return (sumf > 0.0) ? sumi : add(c, v); | } | | } | | namespace test_noexcept | { | | int f() { return 0; } | int g() noexcept { return 0; } | | static_assert(noexcept(f()) == false, ""); | static_assert(noexcept(g()) == true, ""); | | } | | namespace test_constexpr | { | | template < typename CharT > | unsigned long constexpr | strlen_c_r(const CharT *const s, const unsigned long acc) noexcept | { | return *s ? strlen_c_r(s + 1, acc + 1) : acc; | } | | template < typename CharT > | unsigned long constexpr | strlen_c(const CharT *const s) noexcept | { | return strlen_c_r(s, 0UL); | } | | static_assert(strlen_c("") == 0UL, ""); | static_assert(strlen_c("1") == 1UL, ""); | static_assert(strlen_c("example") == 7UL, ""); | static_assert(strlen_c("another\0example") == 7UL, ""); | | } | | namespace test_rvalue_references | { | | template < int N > | struct answer | { | static constexpr int value = N; | }; | | answer<1> f(int&) { return answer<1>(); } | answer<2> f(const int&) { return answer<2>(); } | answer<3> f(int&&) { return answer<3>(); } | | void | test() | { | int i = 0; | const int c = 0; | static_assert(decltype(f(i))::value == 1, ""); | static_assert(decltype(f(c))::value == 2, ""); | static_assert(decltype(f(0))::value == 3, ""); | } | | } | | namespace test_uniform_initialization | { | | struct test | { | static const int zero {}; | static const int one {1}; | }; | | static_assert(test::zero == 0, ""); | static_assert(test::one == 1, ""); | | } | | namespace test_lambdas | { | | void | test1() | { | auto lambda1 = [](){}; | auto lambda2 = lambda1; | lambda1(); | lambda2(); | } | | int | test2() | { | auto a = [](int i, int j){ return i + j; }(1, 2); | auto b = []() -> int { return '0'; }(); | auto c = [=](){ return a + b; }(); | auto d = [&](){ return c; }(); | auto e = [a, &b](int x) mutable { | const auto identity = [](int y){ return y; }; | for (auto i = 0; i < a; ++i) | a += b--; | return x + identity(a + b); | }(0); | return a + b + c + d + e; | } | | int | test3() | { | const auto nullary = [](){ return 0; }; | const auto unary = [](int x){ return x; }; | using nullary_t = decltype(nullary); | using unary_t = decltype(unary); | const auto higher1st = [](nullary_t f){ return f(); }; | const auto higher2nd = [unary](nullary_t f1){ | return [unary, f1](unary_t f2){ return f2(unary(f1())); }; | }; | return higher1st(nullary) + higher2nd(nullary)(unary); | } | | } | | namespace test_variadic_templates | { | | template | struct sum; | | template | struct sum | { | static constexpr auto value = N0 + sum::value; | }; | | template <> | struct sum<> | { | static constexpr auto value = 0; | }; | | static_assert(sum<>::value == 0, ""); | static_assert(sum<1>::value == 1, ""); | static_assert(sum<23>::value == 23, ""); | static_assert(sum<1, 2>::value == 3, ""); | static_assert(sum<5, 5, 11>::value == 21, ""); | static_assert(sum<2, 3, 5, 7, 11, 13>::value == 41, ""); | | } | | // http://stackoverflow.com/questions/13728184/template-aliases-and-sfinae | // Clang 3.1 fails with headers of libstd++ 4.8.3 when using std::function | // because of this. | namespace test_template_alias_sfinae | { | | struct foo {}; | | template | using member = typename T::member_type; | | template | void func(...) {} | | template | void func(member*) {} | | void test(); | | void test() { func(0); } | | } | | } // namespace cxx11 | | #endif // __cplusplus >= 201103L | | | | | // If the compiler admits that it is not ready for C++14, why torture it? | // Hopefully, this will speed up the test. | | #ifndef __cplusplus | | #error "This is not a C++ compiler" | | #elif __cplusplus < 201402L | | #error "This is not a C++14 compiler" | | #else | | namespace cxx14 | { | | namespace test_polymorphic_lambdas | { | | int | test() | { | const auto lambda = [](auto&&... args){ | const auto istiny = [](auto x){ | return (sizeof(x) == 1UL) ? 1 : 0; | }; | const int aretiny[] = { istiny(args)... }; | return aretiny[0]; | }; | return lambda(1, 1L, 1.0f, '1'); | } | | } | | namespace test_binary_literals | { | | constexpr auto ivii = 0b0000000000101010; | static_assert(ivii == 42, "wrong value"); | | } | | namespace test_generalized_constexpr | { | | template < typename CharT > | constexpr unsigned long | strlen_c(const CharT *const s) noexcept | { | auto length = 0UL; | for (auto p = s; *p; ++p) | ++length; | return length; | } | | static_assert(strlen_c("") == 0UL, ""); | static_assert(strlen_c("x") == 1UL, ""); | static_assert(strlen_c("test") == 4UL, ""); | static_assert(strlen_c("another\0test") == 7UL, ""); | | } | | namespace test_lambda_init_capture | { | | int | test() | { | auto x = 0; | const auto lambda1 = [a = x](int b){ return a + b; }; | const auto lambda2 = [a = lambda1(x)](){ return a; }; | return lambda2(); | } | | } | | namespace test_digit_separators | { | | constexpr auto ten_million = 100'000'000; | static_assert(ten_million == 100000000, ""); | | } | | namespace test_return_type_deduction | { | | auto f(int& x) { return x; } | decltype(auto) g(int& x) { return x; } | | template < typename T1, typename T2 > | struct is_same | { | static constexpr auto value = false; | }; | | template < typename T > | struct is_same | { | static constexpr auto value = true; | }; | | int | test() | { | auto x = 0; | static_assert(is_same::value, ""); | static_assert(is_same::value, ""); | return x; | } | | } | | } // namespace cxx14 | | #endif // __cplusplus >= 201402L | | | | | // If the compiler admits that it is not ready for C++17, why torture it? | // Hopefully, this will speed up the test. | | #ifndef __cplusplus | | #error "This is not a C++ compiler" | | #elif __cplusplus < 201703L | | #error "This is not a C++17 compiler" | | #else | | #include | #include | #include | | namespace cxx17 | { | | namespace test_constexpr_lambdas | { | | constexpr int foo = [](){return 42;}(); | | } | | namespace test::nested_namespace::definitions | { | | } | | namespace test_fold_expression | { | | template | int multiply(Args... args) | { | return (args * ... * 1); | } | | template | bool all(Args... args) | { | return (args && ...); | } | | } | | namespace test_extended_static_assert | { | | static_assert (true); | | } | | namespace test_auto_brace_init_list | { | | auto foo = {5}; | auto bar {5}; | | static_assert(std::is_same, decltype(foo)>::value); | static_assert(std::is_same::value); | } | | namespace test_typename_in_template_template_parameter | { | | template typename X> struct D; | | } | | namespace test_fallthrough_nodiscard_maybe_unused_attributes | { | | int f1() | { | return 42; | } | | [[nodiscard]] int f2() | { | [[maybe_unused]] auto unused = f1(); | | switch (f1()) | { | case 17: | f1(); | [[fallthrough]]; | case 42: | f1(); | } | return f1(); | } | | } | | namespace test_extended_aggregate_initialization | { | | struct base1 | { | int b1, b2 = 42; | }; | | struct base2 | { | base2() { | b3 = 42; | } | int b3; | }; | | struct derived : base1, base2 | { | int d; | }; | | derived d1 {{1, 2}, {}, 4}; // full initialization | derived d2 {{}, {}, 4}; // value-initialized bases | | } | | namespace test_general_range_based_for_loop | { | | struct iter | { | int i; | | int& operator* () | { | return i; | } | | const int& operator* () const | { | return i; | } | | iter& operator++() | { | ++i; | return *this; | } | }; | | struct sentinel | { | int i; | }; | | bool operator== (const iter& i, const sentinel& s) | { | return i.i == s.i; | } | | bool operator!= (const iter& i, const sentinel& s) | { | return !(i == s); | } | | struct range | { | iter begin() const | { | return {0}; | } | | sentinel end() const | { | return {5}; | } | }; | | void f() | { | range r {}; | | for (auto i : r) | { | [[maybe_unused]] auto v = i; | } | } | | } | | namespace test_lambda_capture_asterisk_this_by_value | { | | struct t | { | int i; | int foo() | { | return [*this]() | { | return i; | }(); | } | }; | | } | | namespace test_enum_class_construction | { | | enum class byte : unsigned char | {}; | | byte foo {42}; | | } | | namespace test_constexpr_if | { | | template | int f () | { | if constexpr(cond) | { | return 13; | } | else | { | return 42; | } | } | | } | | namespace test_selection_statement_with_initializer | { | | int f() | { | return 13; | } | | int f2() | { | if (auto i = f(); i > 0) | { | return 3; | } | | switch (auto i = f(); i + 4) | { | case 17: | return 2; | | default: | return 1; | } | } | | } | | namespace test_template_argument_deduction_for_class_templates | { | | template | struct pair | { | pair (T1 p1, T2 p2) | : m1 {p1}, | m2 {p2} | {} | | T1 m1; | T2 m2; | }; | | void f() | { | [[maybe_unused]] auto p = pair{13, 42u}; | } | | } | | namespace test_non_type_auto_template_parameters | { | | template | struct B | {}; | | B<5> b1; | B<'a'> b2; | | } | | namespace test_structured_bindings | { | | int arr[2] = { 1, 2 }; | std::pair pr = { 1, 2 }; | | auto f1() -> int(&)[2] | { | return arr; | } | | auto f2() -> std::pair& | { | return pr; | } | | struct S | { | int x1 : 2; | volatile double y1; | }; | | S f3() | { | return {}; | } | | auto [ x1, y1 ] = f1(); | auto& [ xr1, yr1 ] = f1(); | auto [ x2, y2 ] = f2(); | auto& [ xr2, yr2 ] = f2(); | const auto [ x3, y3 ] = f3(); | | } | | namespace test_exception_spec_type_system | { | | struct Good {}; | struct Bad {}; | | void g1() noexcept; | void g2(); | | template | Bad | f(T*, T*); | | template | Good | f(T1*, T2*); | | static_assert (std::is_same_v); | | } | | namespace test_inline_variables | { | | template void f(T) | {} | | template inline T g(T) | { | return T{}; | } | | template<> inline void f<>(int) | {} | | template<> int g<>(int) | { | return 5; | } | | } | | } // namespace cxx17 | | #endif // __cplusplus < 201703L | | | configure:6543: result: no configure:5740: checking whether /home/naourr/work/instance-1/output-1/host/bin/mips-linux-gnu-g++ supports C++17 features with -h std=c++17 configure:6534: /home/naourr/work/instance-1/output-1/host/bin/mips-linux-gnu-g++ -h std=c++17 -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -O2 -D_FORTIFY_SOURCE=2 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 conftest.cpp >&5 conftest.cpp:32:2: error: #error "This is not a C++11 compiler" #error "This is not a C++11 compiler" ^ conftest.cpp:317:2: error: #error "This is not a C++14 compiler" #error "This is not a C++14 compiler" ^ conftest.cpp:437:2: error: #error "This is not a C++17 compiler" #error "This is not a C++17 compiler" ^ configure:6534: $? = 1 configure: failed program was: | /* confdefs.h */ | #define PACKAGE_NAME "sdbusplus" | #define PACKAGE_TARNAME "sdbusplus" | #define PACKAGE_VERSION "1.0" | #define PACKAGE_STRING "sdbusplus 1.0" | #define PACKAGE_BUGREPORT "https://github.com/openbmc/sdbusplus/issues" | #define PACKAGE_URL "" | #define PACKAGE "sdbusplus" | #define VERSION "1.0" | #define STDC_HEADERS 1 | #define HAVE_SYS_TYPES_H 1 | #define HAVE_SYS_STAT_H 1 | #define HAVE_STDLIB_H 1 | #define HAVE_STRING_H 1 | #define HAVE_MEMORY_H 1 | #define HAVE_STRINGS_H 1 | #define HAVE_INTTYPES_H 1 | #define HAVE_STDINT_H 1 | #define HAVE_UNISTD_H 1 | /* end confdefs.h. */ | | | // If the compiler admits that it is not ready for C++11, why torture it? | // Hopefully, this will speed up the test. | | #ifndef __cplusplus | | #error "This is not a C++ compiler" | | #elif __cplusplus < 201103L | | #error "This is not a C++11 compiler" | | #else | | namespace cxx11 | { | | namespace test_static_assert | { | | template | struct check | { | static_assert(sizeof(int) <= sizeof(T), "not big enough"); | }; | | } | | namespace test_final_override | { | | struct Base | { | virtual void f() {} | }; | | struct Derived : public Base | { | virtual void f() override {} | }; | | } | | namespace test_double_right_angle_brackets | { | | template < typename T > | struct check {}; | | typedef check single_type; | typedef check> double_type; | typedef check>> triple_type; | typedef check>>> quadruple_type; | | } | | namespace test_decltype | { | | int | f() | { | int a = 1; | decltype(a) b = 2; | return a + b; | } | | } | | namespace test_type_deduction | { | | template < typename T1, typename T2 > | struct is_same | { | static const bool value = false; | }; | | template < typename T > | struct is_same | { | static const bool value = true; | }; | | template < typename T1, typename T2 > | auto | add(T1 a1, T2 a2) -> decltype(a1 + a2) | { | return a1 + a2; | } | | int | test(const int c, volatile int v) | { | static_assert(is_same::value == true, ""); | static_assert(is_same::value == false, ""); | static_assert(is_same::value == false, ""); | auto ac = c; | auto av = v; | auto sumi = ac + av + 'x'; | auto sumf = ac + av + 1.0; | static_assert(is_same::value == true, ""); | static_assert(is_same::value == true, ""); | static_assert(is_same::value == true, ""); | static_assert(is_same::value == false, ""); | static_assert(is_same::value == true, ""); | return (sumf > 0.0) ? sumi : add(c, v); | } | | } | | namespace test_noexcept | { | | int f() { return 0; } | int g() noexcept { return 0; } | | static_assert(noexcept(f()) == false, ""); | static_assert(noexcept(g()) == true, ""); | | } | | namespace test_constexpr | { | | template < typename CharT > | unsigned long constexpr | strlen_c_r(const CharT *const s, const unsigned long acc) noexcept | { | return *s ? strlen_c_r(s + 1, acc + 1) : acc; | } | | template < typename CharT > | unsigned long constexpr | strlen_c(const CharT *const s) noexcept | { | return strlen_c_r(s, 0UL); | } | | static_assert(strlen_c("") == 0UL, ""); | static_assert(strlen_c("1") == 1UL, ""); | static_assert(strlen_c("example") == 7UL, ""); | static_assert(strlen_c("another\0example") == 7UL, ""); | | } | | namespace test_rvalue_references | { | | template < int N > | struct answer | { | static constexpr int value = N; | }; | | answer<1> f(int&) { return answer<1>(); } | answer<2> f(const int&) { return answer<2>(); } | answer<3> f(int&&) { return answer<3>(); } | | void | test() | { | int i = 0; | const int c = 0; | static_assert(decltype(f(i))::value == 1, ""); | static_assert(decltype(f(c))::value == 2, ""); | static_assert(decltype(f(0))::value == 3, ""); | } | | } | | namespace test_uniform_initialization | { | | struct test | { | static const int zero {}; | static const int one {1}; | }; | | static_assert(test::zero == 0, ""); | static_assert(test::one == 1, ""); | | } | | namespace test_lambdas | { | | void | test1() | { | auto lambda1 = [](){}; | auto lambda2 = lambda1; | lambda1(); | lambda2(); | } | | int | test2() | { | auto a = [](int i, int j){ return i + j; }(1, 2); | auto b = []() -> int { return '0'; }(); | auto c = [=](){ return a + b; }(); | auto d = [&](){ return c; }(); | auto e = [a, &b](int x) mutable { | const auto identity = [](int y){ return y; }; | for (auto i = 0; i < a; ++i) | a += b--; | return x + identity(a + b); | }(0); | return a + b + c + d + e; | } | | int | test3() | { | const auto nullary = [](){ return 0; }; | const auto unary = [](int x){ return x; }; | using nullary_t = decltype(nullary); | using unary_t = decltype(unary); | const auto higher1st = [](nullary_t f){ return f(); }; | const auto higher2nd = [unary](nullary_t f1){ | return [unary, f1](unary_t f2){ return f2(unary(f1())); }; | }; | return higher1st(nullary) + higher2nd(nullary)(unary); | } | | } | | namespace test_variadic_templates | { | | template | struct sum; | | template | struct sum | { | static constexpr auto value = N0 + sum::value; | }; | | template <> | struct sum<> | { | static constexpr auto value = 0; | }; | | static_assert(sum<>::value == 0, ""); | static_assert(sum<1>::value == 1, ""); | static_assert(sum<23>::value == 23, ""); | static_assert(sum<1, 2>::value == 3, ""); | static_assert(sum<5, 5, 11>::value == 21, ""); | static_assert(sum<2, 3, 5, 7, 11, 13>::value == 41, ""); | | } | | // http://stackoverflow.com/questions/13728184/template-aliases-and-sfinae | // Clang 3.1 fails with headers of libstd++ 4.8.3 when using std::function | // because of this. | namespace test_template_alias_sfinae | { | | struct foo {}; | | template | using member = typename T::member_type; | | template | void func(...) {} | | template | void func(member*) {} | | void test(); | | void test() { func(0); } | | } | | } // namespace cxx11 | | #endif // __cplusplus >= 201103L | | | | | // If the compiler admits that it is not ready for C++14, why torture it? | // Hopefully, this will speed up the test. | | #ifndef __cplusplus | | #error "This is not a C++ compiler" | | #elif __cplusplus < 201402L | | #error "This is not a C++14 compiler" | | #else | | namespace cxx14 | { | | namespace test_polymorphic_lambdas | { | | int | test() | { | const auto lambda = [](auto&&... args){ | const auto istiny = [](auto x){ | return (sizeof(x) == 1UL) ? 1 : 0; | }; | const int aretiny[] = { istiny(args)... }; | return aretiny[0]; | }; | return lambda(1, 1L, 1.0f, '1'); | } | | } | | namespace test_binary_literals | { | | constexpr auto ivii = 0b0000000000101010; | static_assert(ivii == 42, "wrong value"); | | } | | namespace test_generalized_constexpr | { | | template < typename CharT > | constexpr unsigned long | strlen_c(const CharT *const s) noexcept | { | auto length = 0UL; | for (auto p = s; *p; ++p) | ++length; | return length; | } | | static_assert(strlen_c("") == 0UL, ""); | static_assert(strlen_c("x") == 1UL, ""); | static_assert(strlen_c("test") == 4UL, ""); | static_assert(strlen_c("another\0test") == 7UL, ""); | | } | | namespace test_lambda_init_capture | { | | int | test() | { | auto x = 0; | const auto lambda1 = [a = x](int b){ return a + b; }; | const auto lambda2 = [a = lambda1(x)](){ return a; }; | return lambda2(); | } | | } | | namespace test_digit_separators | { | | constexpr auto ten_million = 100'000'000; | static_assert(ten_million == 100000000, ""); | | } | | namespace test_return_type_deduction | { | | auto f(int& x) { return x; } | decltype(auto) g(int& x) { return x; } | | template < typename T1, typename T2 > | struct is_same | { | static constexpr auto value = false; | }; | | template < typename T > | struct is_same | { | static constexpr auto value = true; | }; | | int | test() | { | auto x = 0; | static_assert(is_same::value, ""); | static_assert(is_same::value, ""); | return x; | } | | } | | } // namespace cxx14 | | #endif // __cplusplus >= 201402L | | | | | // If the compiler admits that it is not ready for C++17, why torture it? | // Hopefully, this will speed up the test. | | #ifndef __cplusplus | | #error "This is not a C++ compiler" | | #elif __cplusplus < 201703L | | #error "This is not a C++17 compiler" | | #else | | #include | #include | #include | | namespace cxx17 | { | | namespace test_constexpr_lambdas | { | | constexpr int foo = [](){return 42;}(); | | } | | namespace test::nested_namespace::definitions | { | | } | | namespace test_fold_expression | { | | template | int multiply(Args... args) | { | return (args * ... * 1); | } | | template | bool all(Args... args) | { | return (args && ...); | } | | } | | namespace test_extended_static_assert | { | | static_assert (true); | | } | | namespace test_auto_brace_init_list | { | | auto foo = {5}; | auto bar {5}; | | static_assert(std::is_same, decltype(foo)>::value); | static_assert(std::is_same::value); | } | | namespace test_typename_in_template_template_parameter | { | | template typename X> struct D; | | } | | namespace test_fallthrough_nodiscard_maybe_unused_attributes | { | | int f1() | { | return 42; | } | | [[nodiscard]] int f2() | { | [[maybe_unused]] auto unused = f1(); | | switch (f1()) | { | case 17: | f1(); | [[fallthrough]]; | case 42: | f1(); | } | return f1(); | } | | } | | namespace test_extended_aggregate_initialization | { | | struct base1 | { | int b1, b2 = 42; | }; | | struct base2 | { | base2() { | b3 = 42; | } | int b3; | }; | | struct derived : base1, base2 | { | int d; | }; | | derived d1 {{1, 2}, {}, 4}; // full initialization | derived d2 {{}, {}, 4}; // value-initialized bases | | } | | namespace test_general_range_based_for_loop | { | | struct iter | { | int i; | | int& operator* () | { | return i; | } | | const int& operator* () const | { | return i; | } | | iter& operator++() | { | ++i; | return *this; | } | }; | | struct sentinel | { | int i; | }; | | bool operator== (const iter& i, const sentinel& s) | { | return i.i == s.i; | } | | bool operator!= (const iter& i, const sentinel& s) | { | return !(i == s); | } | | struct range | { | iter begin() const | { | return {0}; | } | | sentinel end() const | { | return {5}; | } | }; | | void f() | { | range r {}; | | for (auto i : r) | { | [[maybe_unused]] auto v = i; | } | } | | } | | namespace test_lambda_capture_asterisk_this_by_value | { | | struct t | { | int i; | int foo() | { | return [*this]() | { | return i; | }(); | } | }; | | } | | namespace test_enum_class_construction | { | | enum class byte : unsigned char | {}; | | byte foo {42}; | | } | | namespace test_constexpr_if | { | | template | int f () | { | if constexpr(cond) | { | return 13; | } | else | { | return 42; | } | } | | } | | namespace test_selection_statement_with_initializer | { | | int f() | { | return 13; | } | | int f2() | { | if (auto i = f(); i > 0) | { | return 3; | } | | switch (auto i = f(); i + 4) | { | case 17: | return 2; | | default: | return 1; | } | } | | } | | namespace test_template_argument_deduction_for_class_templates | { | | template | struct pair | { | pair (T1 p1, T2 p2) | : m1 {p1}, | m2 {p2} | {} | | T1 m1; | T2 m2; | }; | | void f() | { | [[maybe_unused]] auto p = pair{13, 42u}; | } | | } | | namespace test_non_type_auto_template_parameters | { | | template | struct B | {}; | | B<5> b1; | B<'a'> b2; | | } | | namespace test_structured_bindings | { | | int arr[2] = { 1, 2 }; | std::pair pr = { 1, 2 }; | | auto f1() -> int(&)[2] | { | return arr; | } | | auto f2() -> std::pair& | { | return pr; | } | | struct S | { | int x1 : 2; | volatile double y1; | }; | | S f3() | { | return {}; | } | | auto [ x1, y1 ] = f1(); | auto& [ xr1, yr1 ] = f1(); | auto [ x2, y2 ] = f2(); | auto& [ xr2, yr2 ] = f2(); | const auto [ x3, y3 ] = f3(); | | } | | namespace test_exception_spec_type_system | { | | struct Good {}; | struct Bad {}; | | void g1() noexcept; | void g2(); | | template | Bad | f(T*, T*); | | template | Good | f(T1*, T2*); | | static_assert (std::is_same_v); | | } | | namespace test_inline_variables | { | | template void f(T) | {} | | template inline T g(T) | { | return T{}; | } | | template<> inline void f<>(int) | {} | | template<> int g<>(int) | { | return 5; | } | | } | | } // namespace cxx17 | | #endif // __cplusplus < 201703L | | | configure:6543: result: no configure:5740: checking whether /home/naourr/work/instance-1/output-1/host/bin/mips-linux-gnu-g++ supports C++17 features with -std=c++1z configure:6534: /home/naourr/work/instance-1/output-1/host/bin/mips-linux-gnu-g++ -std=c++1z -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -O2 -D_FORTIFY_SOURCE=2 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 conftest.cpp >&5 conftest.cpp:437:2: error: #error "This is not a C++17 compiler" #error "This is not a C++17 compiler" ^ configure:6534: $? = 1 configure: failed program was: | /* confdefs.h */ | #define PACKAGE_NAME "sdbusplus" | #define PACKAGE_TARNAME "sdbusplus" | #define PACKAGE_VERSION "1.0" | #define PACKAGE_STRING "sdbusplus 1.0" | #define PACKAGE_BUGREPORT "https://github.com/openbmc/sdbusplus/issues" | #define PACKAGE_URL "" | #define PACKAGE "sdbusplus" | #define VERSION "1.0" | #define STDC_HEADERS 1 | #define HAVE_SYS_TYPES_H 1 | #define HAVE_SYS_STAT_H 1 | #define HAVE_STDLIB_H 1 | #define HAVE_STRING_H 1 | #define HAVE_MEMORY_H 1 | #define HAVE_STRINGS_H 1 | #define HAVE_INTTYPES_H 1 | #define HAVE_STDINT_H 1 | #define HAVE_UNISTD_H 1 | /* end confdefs.h. */ | | | // If the compiler admits that it is not ready for C++11, why torture it? | // Hopefully, this will speed up the test. | | #ifndef __cplusplus | | #error "This is not a C++ compiler" | | #elif __cplusplus < 201103L | | #error "This is not a C++11 compiler" | | #else | | namespace cxx11 | { | | namespace test_static_assert | { | | template | struct check | { | static_assert(sizeof(int) <= sizeof(T), "not big enough"); | }; | | } | | namespace test_final_override | { | | struct Base | { | virtual void f() {} | }; | | struct Derived : public Base | { | virtual void f() override {} | }; | | } | | namespace test_double_right_angle_brackets | { | | template < typename T > | struct check {}; | | typedef check single_type; | typedef check> double_type; | typedef check>> triple_type; | typedef check>>> quadruple_type; | | } | | namespace test_decltype | { | | int | f() | { | int a = 1; | decltype(a) b = 2; | return a + b; | } | | } | | namespace test_type_deduction | { | | template < typename T1, typename T2 > | struct is_same | { | static const bool value = false; | }; | | template < typename T > | struct is_same | { | static const bool value = true; | }; | | template < typename T1, typename T2 > | auto | add(T1 a1, T2 a2) -> decltype(a1 + a2) | { | return a1 + a2; | } | | int | test(const int c, volatile int v) | { | static_assert(is_same::value == true, ""); | static_assert(is_same::value == false, ""); | static_assert(is_same::value == false, ""); | auto ac = c; | auto av = v; | auto sumi = ac + av + 'x'; | auto sumf = ac + av + 1.0; | static_assert(is_same::value == true, ""); | static_assert(is_same::value == true, ""); | static_assert(is_same::value == true, ""); | static_assert(is_same::value == false, ""); | static_assert(is_same::value == true, ""); | return (sumf > 0.0) ? sumi : add(c, v); | } | | } | | namespace test_noexcept | { | | int f() { return 0; } | int g() noexcept { return 0; } | | static_assert(noexcept(f()) == false, ""); | static_assert(noexcept(g()) == true, ""); | | } | | namespace test_constexpr | { | | template < typename CharT > | unsigned long constexpr | strlen_c_r(const CharT *const s, const unsigned long acc) noexcept | { | return *s ? strlen_c_r(s + 1, acc + 1) : acc; | } | | template < typename CharT > | unsigned long constexpr | strlen_c(const CharT *const s) noexcept | { | return strlen_c_r(s, 0UL); | } | | static_assert(strlen_c("") == 0UL, ""); | static_assert(strlen_c("1") == 1UL, ""); | static_assert(strlen_c("example") == 7UL, ""); | static_assert(strlen_c("another\0example") == 7UL, ""); | | } | | namespace test_rvalue_references | { | | template < int N > | struct answer | { | static constexpr int value = N; | }; | | answer<1> f(int&) { return answer<1>(); } | answer<2> f(const int&) { return answer<2>(); } | answer<3> f(int&&) { return answer<3>(); } | | void | test() | { | int i = 0; | const int c = 0; | static_assert(decltype(f(i))::value == 1, ""); | static_assert(decltype(f(c))::value == 2, ""); | static_assert(decltype(f(0))::value == 3, ""); | } | | } | | namespace test_uniform_initialization | { | | struct test | { | static const int zero {}; | static const int one {1}; | }; | | static_assert(test::zero == 0, ""); | static_assert(test::one == 1, ""); | | } | | namespace test_lambdas | { | | void | test1() | { | auto lambda1 = [](){}; | auto lambda2 = lambda1; | lambda1(); | lambda2(); | } | | int | test2() | { | auto a = [](int i, int j){ return i + j; }(1, 2); | auto b = []() -> int { return '0'; }(); | auto c = [=](){ return a + b; }(); | auto d = [&](){ return c; }(); | auto e = [a, &b](int x) mutable { | const auto identity = [](int y){ return y; }; | for (auto i = 0; i < a; ++i) | a += b--; | return x + identity(a + b); | }(0); | return a + b + c + d + e; | } | | int | test3() | { | const auto nullary = [](){ return 0; }; | const auto unary = [](int x){ return x; }; | using nullary_t = decltype(nullary); | using unary_t = decltype(unary); | const auto higher1st = [](nullary_t f){ return f(); }; | const auto higher2nd = [unary](nullary_t f1){ | return [unary, f1](unary_t f2){ return f2(unary(f1())); }; | }; | return higher1st(nullary) + higher2nd(nullary)(unary); | } | | } | | namespace test_variadic_templates | { | | template | struct sum; | | template | struct sum | { | static constexpr auto value = N0 + sum::value; | }; | | template <> | struct sum<> | { | static constexpr auto value = 0; | }; | | static_assert(sum<>::value == 0, ""); | static_assert(sum<1>::value == 1, ""); | static_assert(sum<23>::value == 23, ""); | static_assert(sum<1, 2>::value == 3, ""); | static_assert(sum<5, 5, 11>::value == 21, ""); | static_assert(sum<2, 3, 5, 7, 11, 13>::value == 41, ""); | | } | | // http://stackoverflow.com/questions/13728184/template-aliases-and-sfinae | // Clang 3.1 fails with headers of libstd++ 4.8.3 when using std::function | // because of this. | namespace test_template_alias_sfinae | { | | struct foo {}; | | template | using member = typename T::member_type; | | template | void func(...) {} | | template | void func(member*) {} | | void test(); | | void test() { func(0); } | | } | | } // namespace cxx11 | | #endif // __cplusplus >= 201103L | | | | | // If the compiler admits that it is not ready for C++14, why torture it? | // Hopefully, this will speed up the test. | | #ifndef __cplusplus | | #error "This is not a C++ compiler" | | #elif __cplusplus < 201402L | | #error "This is not a C++14 compiler" | | #else | | namespace cxx14 | { | | namespace test_polymorphic_lambdas | { | | int | test() | { | const auto lambda = [](auto&&... args){ | const auto istiny = [](auto x){ | return (sizeof(x) == 1UL) ? 1 : 0; | }; | const int aretiny[] = { istiny(args)... }; | return aretiny[0]; | }; | return lambda(1, 1L, 1.0f, '1'); | } | | } | | namespace test_binary_literals | { | | constexpr auto ivii = 0b0000000000101010; | static_assert(ivii == 42, "wrong value"); | | } | | namespace test_generalized_constexpr | { | | template < typename CharT > | constexpr unsigned long | strlen_c(const CharT *const s) noexcept | { | auto length = 0UL; | for (auto p = s; *p; ++p) | ++length; | return length; | } | | static_assert(strlen_c("") == 0UL, ""); | static_assert(strlen_c("x") == 1UL, ""); | static_assert(strlen_c("test") == 4UL, ""); | static_assert(strlen_c("another\0test") == 7UL, ""); | | } | | namespace test_lambda_init_capture | { | | int | test() | { | auto x = 0; | const auto lambda1 = [a = x](int b){ return a + b; }; | const auto lambda2 = [a = lambda1(x)](){ return a; }; | return lambda2(); | } | | } | | namespace test_digit_separators | { | | constexpr auto ten_million = 100'000'000; | static_assert(ten_million == 100000000, ""); | | } | | namespace test_return_type_deduction | { | | auto f(int& x) { return x; } | decltype(auto) g(int& x) { return x; } | | template < typename T1, typename T2 > | struct is_same | { | static constexpr auto value = false; | }; | | template < typename T > | struct is_same | { | static constexpr auto value = true; | }; | | int | test() | { | auto x = 0; | static_assert(is_same::value, ""); | static_assert(is_same::value, ""); | return x; | } | | } | | } // namespace cxx14 | | #endif // __cplusplus >= 201402L | | | | | // If the compiler admits that it is not ready for C++17, why torture it? | // Hopefully, this will speed up the test. | | #ifndef __cplusplus | | #error "This is not a C++ compiler" | | #elif __cplusplus < 201703L | | #error "This is not a C++17 compiler" | | #else | | #include | #include | #include | | namespace cxx17 | { | | namespace test_constexpr_lambdas | { | | constexpr int foo = [](){return 42;}(); | | } | | namespace test::nested_namespace::definitions | { | | } | | namespace test_fold_expression | { | | template | int multiply(Args... args) | { | return (args * ... * 1); | } | | template | bool all(Args... args) | { | return (args && ...); | } | | } | | namespace test_extended_static_assert | { | | static_assert (true); | | } | | namespace test_auto_brace_init_list | { | | auto foo = {5}; | auto bar {5}; | | static_assert(std::is_same, decltype(foo)>::value); | static_assert(std::is_same::value); | } | | namespace test_typename_in_template_template_parameter | { | | template typename X> struct D; | | } | | namespace test_fallthrough_nodiscard_maybe_unused_attributes | { | | int f1() | { | return 42; | } | | [[nodiscard]] int f2() | { | [[maybe_unused]] auto unused = f1(); | | switch (f1()) | { | case 17: | f1(); | [[fallthrough]]; | case 42: | f1(); | } | return f1(); | } | | } | | namespace test_extended_aggregate_initialization | { | | struct base1 | { | int b1, b2 = 42; | }; | | struct base2 | { | base2() { | b3 = 42; | } | int b3; | }; | | struct derived : base1, base2 | { | int d; | }; | | derived d1 {{1, 2}, {}, 4}; // full initialization | derived d2 {{}, {}, 4}; // value-initialized bases | | } | | namespace test_general_range_based_for_loop | { | | struct iter | { | int i; | | int& operator* () | { | return i; | } | | const int& operator* () const | { | return i; | } | | iter& operator++() | { | ++i; | return *this; | } | }; | | struct sentinel | { | int i; | }; | | bool operator== (const iter& i, const sentinel& s) | { | return i.i == s.i; | } | | bool operator!= (const iter& i, const sentinel& s) | { | return !(i == s); | } | | struct range | { | iter begin() const | { | return {0}; | } | | sentinel end() const | { | return {5}; | } | }; | | void f() | { | range r {}; | | for (auto i : r) | { | [[maybe_unused]] auto v = i; | } | } | | } | | namespace test_lambda_capture_asterisk_this_by_value | { | | struct t | { | int i; | int foo() | { | return [*this]() | { | return i; | }(); | } | }; | | } | | namespace test_enum_class_construction | { | | enum class byte : unsigned char | {}; | | byte foo {42}; | | } | | namespace test_constexpr_if | { | | template | int f () | { | if constexpr(cond) | { | return 13; | } | else | { | return 42; | } | } | | } | | namespace test_selection_statement_with_initializer | { | | int f() | { | return 13; | } | | int f2() | { | if (auto i = f(); i > 0) | { | return 3; | } | | switch (auto i = f(); i + 4) | { | case 17: | return 2; | | default: | return 1; | } | } | | } | | namespace test_template_argument_deduction_for_class_templates | { | | template | struct pair | { | pair (T1 p1, T2 p2) | : m1 {p1}, | m2 {p2} | {} | | T1 m1; | T2 m2; | }; | | void f() | { | [[maybe_unused]] auto p = pair{13, 42u}; | } | | } | | namespace test_non_type_auto_template_parameters | { | | template | struct B | {}; | | B<5> b1; | B<'a'> b2; | | } | | namespace test_structured_bindings | { | | int arr[2] = { 1, 2 }; | std::pair pr = { 1, 2 }; | | auto f1() -> int(&)[2] | { | return arr; | } | | auto f2() -> std::pair& | { | return pr; | } | | struct S | { | int x1 : 2; | volatile double y1; | }; | | S f3() | { | return {}; | } | | auto [ x1, y1 ] = f1(); | auto& [ xr1, yr1 ] = f1(); | auto [ x2, y2 ] = f2(); | auto& [ xr2, yr2 ] = f2(); | const auto [ x3, y3 ] = f3(); | | } | | namespace test_exception_spec_type_system | { | | struct Good {}; | struct Bad {}; | | void g1() noexcept; | void g2(); | | template | Bad | f(T*, T*); | | template | Good | f(T1*, T2*); | | static_assert (std::is_same_v); | | } | | namespace test_inline_variables | { | | template void f(T) | {} | | template inline T g(T) | { | return T{}; | } | | template<> inline void f<>(int) | {} | | template<> int g<>(int) | { | return 5; | } | | } | | } // namespace cxx17 | | #endif // __cplusplus < 201703L | | | configure:6543: result: no configure:5740: checking whether /home/naourr/work/instance-1/output-1/host/bin/mips-linux-gnu-g++ supports C++17 features with +std=c++1z configure:6534: /home/naourr/work/instance-1/output-1/host/bin/mips-linux-gnu-g++ +std=c++1z -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -O2 -D_FORTIFY_SOURCE=2 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 conftest.cpp >&5 mips-linux-gnu-g++: error: +std=c++1z: No such file or directory configure:6534: $? = 1 configure: failed program was: | /* confdefs.h */ | #define PACKAGE_NAME "sdbusplus" | #define PACKAGE_TARNAME "sdbusplus" | #define PACKAGE_VERSION "1.0" | #define PACKAGE_STRING "sdbusplus 1.0" | #define PACKAGE_BUGREPORT "https://github.com/openbmc/sdbusplus/issues" | #define PACKAGE_URL "" | #define PACKAGE "sdbusplus" | #define VERSION "1.0" | #define STDC_HEADERS 1 | #define HAVE_SYS_TYPES_H 1 | #define HAVE_SYS_STAT_H 1 | #define HAVE_STDLIB_H 1 | #define HAVE_STRING_H 1 | #define HAVE_MEMORY_H 1 | #define HAVE_STRINGS_H 1 | #define HAVE_INTTYPES_H 1 | #define HAVE_STDINT_H 1 | #define HAVE_UNISTD_H 1 | /* end confdefs.h. */ | | | // If the compiler admits that it is not ready for C++11, why torture it? | // Hopefully, this will speed up the test. | | #ifndef __cplusplus | | #error "This is not a C++ compiler" | | #elif __cplusplus < 201103L | | #error "This is not a C++11 compiler" | | #else | | namespace cxx11 | { | | namespace test_static_assert | { | | template | struct check | { | static_assert(sizeof(int) <= sizeof(T), "not big enough"); | }; | | } | | namespace test_final_override | { | | struct Base | { | virtual void f() {} | }; | | struct Derived : public Base | { | virtual void f() override {} | }; | | } | | namespace test_double_right_angle_brackets | { | | template < typename T > | struct check {}; | | typedef check single_type; | typedef check> double_type; | typedef check>> triple_type; | typedef check>>> quadruple_type; | | } | | namespace test_decltype | { | | int | f() | { | int a = 1; | decltype(a) b = 2; | return a + b; | } | | } | | namespace test_type_deduction | { | | template < typename T1, typename T2 > | struct is_same | { | static const bool value = false; | }; | | template < typename T > | struct is_same | { | static const bool value = true; | }; | | template < typename T1, typename T2 > | auto | add(T1 a1, T2 a2) -> decltype(a1 + a2) | { | return a1 + a2; | } | | int | test(const int c, volatile int v) | { | static_assert(is_same::value == true, ""); | static_assert(is_same::value == false, ""); | static_assert(is_same::value == false, ""); | auto ac = c; | auto av = v; | auto sumi = ac + av + 'x'; | auto sumf = ac + av + 1.0; | static_assert(is_same::value == true, ""); | static_assert(is_same::value == true, ""); | static_assert(is_same::value == true, ""); | static_assert(is_same::value == false, ""); | static_assert(is_same::value == true, ""); | return (sumf > 0.0) ? sumi : add(c, v); | } | | } | | namespace test_noexcept | { | | int f() { return 0; } | int g() noexcept { return 0; } | | static_assert(noexcept(f()) == false, ""); | static_assert(noexcept(g()) == true, ""); | | } | | namespace test_constexpr | { | | template < typename CharT > | unsigned long constexpr | strlen_c_r(const CharT *const s, const unsigned long acc) noexcept | { | return *s ? strlen_c_r(s + 1, acc + 1) : acc; | } | | template < typename CharT > | unsigned long constexpr | strlen_c(const CharT *const s) noexcept | { | return strlen_c_r(s, 0UL); | } | | static_assert(strlen_c("") == 0UL, ""); | static_assert(strlen_c("1") == 1UL, ""); | static_assert(strlen_c("example") == 7UL, ""); | static_assert(strlen_c("another\0example") == 7UL, ""); | | } | | namespace test_rvalue_references | { | | template < int N > | struct answer | { | static constexpr int value = N; | }; | | answer<1> f(int&) { return answer<1>(); } | answer<2> f(const int&) { return answer<2>(); } | answer<3> f(int&&) { return answer<3>(); } | | void | test() | { | int i = 0; | const int c = 0; | static_assert(decltype(f(i))::value == 1, ""); | static_assert(decltype(f(c))::value == 2, ""); | static_assert(decltype(f(0))::value == 3, ""); | } | | } | | namespace test_uniform_initialization | { | | struct test | { | static const int zero {}; | static const int one {1}; | }; | | static_assert(test::zero == 0, ""); | static_assert(test::one == 1, ""); | | } | | namespace test_lambdas | { | | void | test1() | { | auto lambda1 = [](){}; | auto lambda2 = lambda1; | lambda1(); | lambda2(); | } | | int | test2() | { | auto a = [](int i, int j){ return i + j; }(1, 2); | auto b = []() -> int { return '0'; }(); | auto c = [=](){ return a + b; }(); | auto d = [&](){ return c; }(); | auto e = [a, &b](int x) mutable { | const auto identity = [](int y){ return y; }; | for (auto i = 0; i < a; ++i) | a += b--; | return x + identity(a + b); | }(0); | return a + b + c + d + e; | } | | int | test3() | { | const auto nullary = [](){ return 0; }; | const auto unary = [](int x){ return x; }; | using nullary_t = decltype(nullary); | using unary_t = decltype(unary); | const auto higher1st = [](nullary_t f){ return f(); }; | const auto higher2nd = [unary](nullary_t f1){ | return [unary, f1](unary_t f2){ return f2(unary(f1())); }; | }; | return higher1st(nullary) + higher2nd(nullary)(unary); | } | | } | | namespace test_variadic_templates | { | | template | struct sum; | | template | struct sum | { | static constexpr auto value = N0 + sum::value; | }; | | template <> | struct sum<> | { | static constexpr auto value = 0; | }; | | static_assert(sum<>::value == 0, ""); | static_assert(sum<1>::value == 1, ""); | static_assert(sum<23>::value == 23, ""); | static_assert(sum<1, 2>::value == 3, ""); | static_assert(sum<5, 5, 11>::value == 21, ""); | static_assert(sum<2, 3, 5, 7, 11, 13>::value == 41, ""); | | } | | // http://stackoverflow.com/questions/13728184/template-aliases-and-sfinae | // Clang 3.1 fails with headers of libstd++ 4.8.3 when using std::function | // because of this. | namespace test_template_alias_sfinae | { | | struct foo {}; | | template | using member = typename T::member_type; | | template | void func(...) {} | | template | void func(member*) {} | | void test(); | | void test() { func(0); } | | } | | } // namespace cxx11 | | #endif // __cplusplus >= 201103L | | | | | // If the compiler admits that it is not ready for C++14, why torture it? | // Hopefully, this will speed up the test. | | #ifndef __cplusplus | | #error "This is not a C++ compiler" | | #elif __cplusplus < 201402L | | #error "This is not a C++14 compiler" | | #else | | namespace cxx14 | { | | namespace test_polymorphic_lambdas | { | | int | test() | { | const auto lambda = [](auto&&... args){ | const auto istiny = [](auto x){ | return (sizeof(x) == 1UL) ? 1 : 0; | }; | const int aretiny[] = { istiny(args)... }; | return aretiny[0]; | }; | return lambda(1, 1L, 1.0f, '1'); | } | | } | | namespace test_binary_literals | { | | constexpr auto ivii = 0b0000000000101010; | static_assert(ivii == 42, "wrong value"); | | } | | namespace test_generalized_constexpr | { | | template < typename CharT > | constexpr unsigned long | strlen_c(const CharT *const s) noexcept | { | auto length = 0UL; | for (auto p = s; *p; ++p) | ++length; | return length; | } | | static_assert(strlen_c("") == 0UL, ""); | static_assert(strlen_c("x") == 1UL, ""); | static_assert(strlen_c("test") == 4UL, ""); | static_assert(strlen_c("another\0test") == 7UL, ""); | | } | | namespace test_lambda_init_capture | { | | int | test() | { | auto x = 0; | const auto lambda1 = [a = x](int b){ return a + b; }; | const auto lambda2 = [a = lambda1(x)](){ return a; }; | return lambda2(); | } | | } | | namespace test_digit_separators | { | | constexpr auto ten_million = 100'000'000; | static_assert(ten_million == 100000000, ""); | | } | | namespace test_return_type_deduction | { | | auto f(int& x) { return x; } | decltype(auto) g(int& x) { return x; } | | template < typename T1, typename T2 > | struct is_same | { | static constexpr auto value = false; | }; | | template < typename T > | struct is_same | { | static constexpr auto value = true; | }; | | int | test() | { | auto x = 0; | static_assert(is_same::value, ""); | static_assert(is_same::value, ""); | return x; | } | | } | | } // namespace cxx14 | | #endif // __cplusplus >= 201402L | | | | | // If the compiler admits that it is not ready for C++17, why torture it? | // Hopefully, this will speed up the test. | | #ifndef __cplusplus | | #error "This is not a C++ compiler" | | #elif __cplusplus < 201703L | | #error "This is not a C++17 compiler" | | #else | | #include | #include | #include | | namespace cxx17 | { | | namespace test_constexpr_lambdas | { | | constexpr int foo = [](){return 42;}(); | | } | | namespace test::nested_namespace::definitions | { | | } | | namespace test_fold_expression | { | | template | int multiply(Args... args) | { | return (args * ... * 1); | } | | template | bool all(Args... args) | { | return (args && ...); | } | | } | | namespace test_extended_static_assert | { | | static_assert (true); | | } | | namespace test_auto_brace_init_list | { | | auto foo = {5}; | auto bar {5}; | | static_assert(std::is_same, decltype(foo)>::value); | static_assert(std::is_same::value); | } | | namespace test_typename_in_template_template_parameter | { | | template typename X> struct D; | | } | | namespace test_fallthrough_nodiscard_maybe_unused_attributes | { | | int f1() | { | return 42; | } | | [[nodiscard]] int f2() | { | [[maybe_unused]] auto unused = f1(); | | switch (f1()) | { | case 17: | f1(); | [[fallthrough]]; | case 42: | f1(); | } | return f1(); | } | | } | | namespace test_extended_aggregate_initialization | { | | struct base1 | { | int b1, b2 = 42; | }; | | struct base2 | { | base2() { | b3 = 42; | } | int b3; | }; | | struct derived : base1, base2 | { | int d; | }; | | derived d1 {{1, 2}, {}, 4}; // full initialization | derived d2 {{}, {}, 4}; // value-initialized bases | | } | | namespace test_general_range_based_for_loop | { | | struct iter | { | int i; | | int& operator* () | { | return i; | } | | const int& operator* () const | { | return i; | } | | iter& operator++() | { | ++i; | return *this; | } | }; | | struct sentinel | { | int i; | }; | | bool operator== (const iter& i, const sentinel& s) | { | return i.i == s.i; | } | | bool operator!= (const iter& i, const sentinel& s) | { | return !(i == s); | } | | struct range | { | iter begin() const | { | return {0}; | } | | sentinel end() const | { | return {5}; | } | }; | | void f() | { | range r {}; | | for (auto i : r) | { | [[maybe_unused]] auto v = i; | } | } | | } | | namespace test_lambda_capture_asterisk_this_by_value | { | | struct t | { | int i; | int foo() | { | return [*this]() | { | return i; | }(); | } | }; | | } | | namespace test_enum_class_construction | { | | enum class byte : unsigned char | {}; | | byte foo {42}; | | } | | namespace test_constexpr_if | { | | template | int f () | { | if constexpr(cond) | { | return 13; | } | else | { | return 42; | } | } | | } | | namespace test_selection_statement_with_initializer | { | | int f() | { | return 13; | } | | int f2() | { | if (auto i = f(); i > 0) | { | return 3; | } | | switch (auto i = f(); i + 4) | { | case 17: | return 2; | | default: | return 1; | } | } | | } | | namespace test_template_argument_deduction_for_class_templates | { | | template | struct pair | { | pair (T1 p1, T2 p2) | : m1 {p1}, | m2 {p2} | {} | | T1 m1; | T2 m2; | }; | | void f() | { | [[maybe_unused]] auto p = pair{13, 42u}; | } | | } | | namespace test_non_type_auto_template_parameters | { | | template | struct B | {}; | | B<5> b1; | B<'a'> b2; | | } | | namespace test_structured_bindings | { | | int arr[2] = { 1, 2 }; | std::pair pr = { 1, 2 }; | | auto f1() -> int(&)[2] | { | return arr; | } | | auto f2() -> std::pair& | { | return pr; | } | | struct S | { | int x1 : 2; | volatile double y1; | }; | | S f3() | { | return {}; | } | | auto [ x1, y1 ] = f1(); | auto& [ xr1, yr1 ] = f1(); | auto [ x2, y2 ] = f2(); | auto& [ xr2, yr2 ] = f2(); | const auto [ x3, y3 ] = f3(); | | } | | namespace test_exception_spec_type_system | { | | struct Good {}; | struct Bad {}; | | void g1() noexcept; | void g2(); | | template | Bad | f(T*, T*); | | template | Good | f(T1*, T2*); | | static_assert (std::is_same_v); | | } | | namespace test_inline_variables | { | | template void f(T) | {} | | template inline T g(T) | { | return T{}; | } | | template<> inline void f<>(int) | {} | | template<> int g<>(int) | { | return 5; | } | | } | | } // namespace cxx17 | | #endif // __cplusplus < 201703L | | | configure:6543: result: no configure:5740: checking whether /home/naourr/work/instance-1/output-1/host/bin/mips-linux-gnu-g++ supports C++17 features with -h std=c++1z configure:6534: /home/naourr/work/instance-1/output-1/host/bin/mips-linux-gnu-g++ -h std=c++1z -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -O2 -D_FORTIFY_SOURCE=2 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 conftest.cpp >&5 conftest.cpp:32:2: error: #error "This is not a C++11 compiler" #error "This is not a C++11 compiler" ^ conftest.cpp:317:2: error: #error "This is not a C++14 compiler" #error "This is not a C++14 compiler" ^ conftest.cpp:437:2: error: #error "This is not a C++17 compiler" #error "This is not a C++17 compiler" ^ configure:6534: $? = 1 configure: failed program was: | /* confdefs.h */ | #define PACKAGE_NAME "sdbusplus" | #define PACKAGE_TARNAME "sdbusplus" | #define PACKAGE_VERSION "1.0" | #define PACKAGE_STRING "sdbusplus 1.0" | #define PACKAGE_BUGREPORT "https://github.com/openbmc/sdbusplus/issues" | #define PACKAGE_URL "" | #define PACKAGE "sdbusplus" | #define VERSION "1.0" | #define STDC_HEADERS 1 | #define HAVE_SYS_TYPES_H 1 | #define HAVE_SYS_STAT_H 1 | #define HAVE_STDLIB_H 1 | #define HAVE_STRING_H 1 | #define HAVE_MEMORY_H 1 | #define HAVE_STRINGS_H 1 | #define HAVE_INTTYPES_H 1 | #define HAVE_STDINT_H 1 | #define HAVE_UNISTD_H 1 | /* end confdefs.h. */ | | | // If the compiler admits that it is not ready for C++11, why torture it? | // Hopefully, this will speed up the test. | | #ifndef __cplusplus | | #error "This is not a C++ compiler" | | #elif __cplusplus < 201103L | | #error "This is not a C++11 compiler" | | #else | | namespace cxx11 | { | | namespace test_static_assert | { | | template | struct check | { | static_assert(sizeof(int) <= sizeof(T), "not big enough"); | }; | | } | | namespace test_final_override | { | | struct Base | { | virtual void f() {} | }; | | struct Derived : public Base | { | virtual void f() override {} | }; | | } | | namespace test_double_right_angle_brackets | { | | template < typename T > | struct check {}; | | typedef check single_type; | typedef check> double_type; | typedef check>> triple_type; | typedef check>>> quadruple_type; | | } | | namespace test_decltype | { | | int | f() | { | int a = 1; | decltype(a) b = 2; | return a + b; | } | | } | | namespace test_type_deduction | { | | template < typename T1, typename T2 > | struct is_same | { | static const bool value = false; | }; | | template < typename T > | struct is_same | { | static const bool value = true; | }; | | template < typename T1, typename T2 > | auto | add(T1 a1, T2 a2) -> decltype(a1 + a2) | { | return a1 + a2; | } | | int | test(const int c, volatile int v) | { | static_assert(is_same::value == true, ""); | static_assert(is_same::value == false, ""); | static_assert(is_same::value == false, ""); | auto ac = c; | auto av = v; | auto sumi = ac + av + 'x'; | auto sumf = ac + av + 1.0; | static_assert(is_same::value == true, ""); | static_assert(is_same::value == true, ""); | static_assert(is_same::value == true, ""); | static_assert(is_same::value == false, ""); | static_assert(is_same::value == true, ""); | return (sumf > 0.0) ? sumi : add(c, v); | } | | } | | namespace test_noexcept | { | | int f() { return 0; } | int g() noexcept { return 0; } | | static_assert(noexcept(f()) == false, ""); | static_assert(noexcept(g()) == true, ""); | | } | | namespace test_constexpr | { | | template < typename CharT > | unsigned long constexpr | strlen_c_r(const CharT *const s, const unsigned long acc) noexcept | { | return *s ? strlen_c_r(s + 1, acc + 1) : acc; | } | | template < typename CharT > | unsigned long constexpr | strlen_c(const CharT *const s) noexcept | { | return strlen_c_r(s, 0UL); | } | | static_assert(strlen_c("") == 0UL, ""); | static_assert(strlen_c("1") == 1UL, ""); | static_assert(strlen_c("example") == 7UL, ""); | static_assert(strlen_c("another\0example") == 7UL, ""); | | } | | namespace test_rvalue_references | { | | template < int N > | struct answer | { | static constexpr int value = N; | }; | | answer<1> f(int&) { return answer<1>(); } | answer<2> f(const int&) { return answer<2>(); } | answer<3> f(int&&) { return answer<3>(); } | | void | test() | { | int i = 0; | const int c = 0; | static_assert(decltype(f(i))::value == 1, ""); | static_assert(decltype(f(c))::value == 2, ""); | static_assert(decltype(f(0))::value == 3, ""); | } | | } | | namespace test_uniform_initialization | { | | struct test | { | static const int zero {}; | static const int one {1}; | }; | | static_assert(test::zero == 0, ""); | static_assert(test::one == 1, ""); | | } | | namespace test_lambdas | { | | void | test1() | { | auto lambda1 = [](){}; | auto lambda2 = lambda1; | lambda1(); | lambda2(); | } | | int | test2() | { | auto a = [](int i, int j){ return i + j; }(1, 2); | auto b = []() -> int { return '0'; }(); | auto c = [=](){ return a + b; }(); | auto d = [&](){ return c; }(); | auto e = [a, &b](int x) mutable { | const auto identity = [](int y){ return y; }; | for (auto i = 0; i < a; ++i) | a += b--; | return x + identity(a + b); | }(0); | return a + b + c + d + e; | } | | int | test3() | { | const auto nullary = [](){ return 0; }; | const auto unary = [](int x){ return x; }; | using nullary_t = decltype(nullary); | using unary_t = decltype(unary); | const auto higher1st = [](nullary_t f){ return f(); }; | const auto higher2nd = [unary](nullary_t f1){ | return [unary, f1](unary_t f2){ return f2(unary(f1())); }; | }; | return higher1st(nullary) + higher2nd(nullary)(unary); | } | | } | | namespace test_variadic_templates | { | | template | struct sum; | | template | struct sum | { | static constexpr auto value = N0 + sum::value; | }; | | template <> | struct sum<> | { | static constexpr auto value = 0; | }; | | static_assert(sum<>::value == 0, ""); | static_assert(sum<1>::value == 1, ""); | static_assert(sum<23>::value == 23, ""); | static_assert(sum<1, 2>::value == 3, ""); | static_assert(sum<5, 5, 11>::value == 21, ""); | static_assert(sum<2, 3, 5, 7, 11, 13>::value == 41, ""); | | } | | // http://stackoverflow.com/questions/13728184/template-aliases-and-sfinae | // Clang 3.1 fails with headers of libstd++ 4.8.3 when using std::function | // because of this. | namespace test_template_alias_sfinae | { | | struct foo {}; | | template | using member = typename T::member_type; | | template | void func(...) {} | | template | void func(member*) {} | | void test(); | | void test() { func(0); } | | } | | } // namespace cxx11 | | #endif // __cplusplus >= 201103L | | | | | // If the compiler admits that it is not ready for C++14, why torture it? | // Hopefully, this will speed up the test. | | #ifndef __cplusplus | | #error "This is not a C++ compiler" | | #elif __cplusplus < 201402L | | #error "This is not a C++14 compiler" | | #else | | namespace cxx14 | { | | namespace test_polymorphic_lambdas | { | | int | test() | { | const auto lambda = [](auto&&... args){ | const auto istiny = [](auto x){ | return (sizeof(x) == 1UL) ? 1 : 0; | }; | const int aretiny[] = { istiny(args)... }; | return aretiny[0]; | }; | return lambda(1, 1L, 1.0f, '1'); | } | | } | | namespace test_binary_literals | { | | constexpr auto ivii = 0b0000000000101010; | static_assert(ivii == 42, "wrong value"); | | } | | namespace test_generalized_constexpr | { | | template < typename CharT > | constexpr unsigned long | strlen_c(const CharT *const s) noexcept | { | auto length = 0UL; | for (auto p = s; *p; ++p) | ++length; | return length; | } | | static_assert(strlen_c("") == 0UL, ""); | static_assert(strlen_c("x") == 1UL, ""); | static_assert(strlen_c("test") == 4UL, ""); | static_assert(strlen_c("another\0test") == 7UL, ""); | | } | | namespace test_lambda_init_capture | { | | int | test() | { | auto x = 0; | const auto lambda1 = [a = x](int b){ return a + b; }; | const auto lambda2 = [a = lambda1(x)](){ return a; }; | return lambda2(); | } | | } | | namespace test_digit_separators | { | | constexpr auto ten_million = 100'000'000; | static_assert(ten_million == 100000000, ""); | | } | | namespace test_return_type_deduction | { | | auto f(int& x) { return x; } | decltype(auto) g(int& x) { return x; } | | template < typename T1, typename T2 > | struct is_same | { | static constexpr auto value = false; | }; | | template < typename T > | struct is_same | { | static constexpr auto value = true; | }; | | int | test() | { | auto x = 0; | static_assert(is_same::value, ""); | static_assert(is_same::value, ""); | return x; | } | | } | | } // namespace cxx14 | | #endif // __cplusplus >= 201402L | | | | | // If the compiler admits that it is not ready for C++17, why torture it? | // Hopefully, this will speed up the test. | | #ifndef __cplusplus | | #error "This is not a C++ compiler" | | #elif __cplusplus < 201703L | | #error "This is not a C++17 compiler" | | #else | | #include | #include | #include | | namespace cxx17 | { | | namespace test_constexpr_lambdas | { | | constexpr int foo = [](){return 42;}(); | | } | | namespace test::nested_namespace::definitions | { | | } | | namespace test_fold_expression | { | | template | int multiply(Args... args) | { | return (args * ... * 1); | } | | template | bool all(Args... args) | { | return (args && ...); | } | | } | | namespace test_extended_static_assert | { | | static_assert (true); | | } | | namespace test_auto_brace_init_list | { | | auto foo = {5}; | auto bar {5}; | | static_assert(std::is_same, decltype(foo)>::value); | static_assert(std::is_same::value); | } | | namespace test_typename_in_template_template_parameter | { | | template typename X> struct D; | | } | | namespace test_fallthrough_nodiscard_maybe_unused_attributes | { | | int f1() | { | return 42; | } | | [[nodiscard]] int f2() | { | [[maybe_unused]] auto unused = f1(); | | switch (f1()) | { | case 17: | f1(); | [[fallthrough]]; | case 42: | f1(); | } | return f1(); | } | | } | | namespace test_extended_aggregate_initialization | { | | struct base1 | { | int b1, b2 = 42; | }; | | struct base2 | { | base2() { | b3 = 42; | } | int b3; | }; | | struct derived : base1, base2 | { | int d; | }; | | derived d1 {{1, 2}, {}, 4}; // full initialization | derived d2 {{}, {}, 4}; // value-initialized bases | | } | | namespace test_general_range_based_for_loop | { | | struct iter | { | int i; | | int& operator* () | { | return i; | } | | const int& operator* () const | { | return i; | } | | iter& operator++() | { | ++i; | return *this; | } | }; | | struct sentinel | { | int i; | }; | | bool operator== (const iter& i, const sentinel& s) | { | return i.i == s.i; | } | | bool operator!= (const iter& i, const sentinel& s) | { | return !(i == s); | } | | struct range | { | iter begin() const | { | return {0}; | } | | sentinel end() const | { | return {5}; | } | }; | | void f() | { | range r {}; | | for (auto i : r) | { | [[maybe_unused]] auto v = i; | } | } | | } | | namespace test_lambda_capture_asterisk_this_by_value | { | | struct t | { | int i; | int foo() | { | return [*this]() | { | return i; | }(); | } | }; | | } | | namespace test_enum_class_construction | { | | enum class byte : unsigned char | {}; | | byte foo {42}; | | } | | namespace test_constexpr_if | { | | template | int f () | { | if constexpr(cond) | { | return 13; | } | else | { | return 42; | } | } | | } | | namespace test_selection_statement_with_initializer | { | | int f() | { | return 13; | } | | int f2() | { | if (auto i = f(); i > 0) | { | return 3; | } | | switch (auto i = f(); i + 4) | { | case 17: | return 2; | | default: | return 1; | } | } | | } | | namespace test_template_argument_deduction_for_class_templates | { | | template | struct pair | { | pair (T1 p1, T2 p2) | : m1 {p1}, | m2 {p2} | {} | | T1 m1; | T2 m2; | }; | | void f() | { | [[maybe_unused]] auto p = pair{13, 42u}; | } | | } | | namespace test_non_type_auto_template_parameters | { | | template | struct B | {}; | | B<5> b1; | B<'a'> b2; | | } | | namespace test_structured_bindings | { | | int arr[2] = { 1, 2 }; | std::pair pr = { 1, 2 }; | | auto f1() -> int(&)[2] | { | return arr; | } | | auto f2() -> std::pair& | { | return pr; | } | | struct S | { | int x1 : 2; | volatile double y1; | }; | | S f3() | { | return {}; | } | | auto [ x1, y1 ] = f1(); | auto& [ xr1, yr1 ] = f1(); | auto [ x2, y2 ] = f2(); | auto& [ xr2, yr2 ] = f2(); | const auto [ x3, y3 ] = f3(); | | } | | namespace test_exception_spec_type_system | { | | struct Good {}; | struct Bad {}; | | void g1() noexcept; | void g2(); | | template | Bad | f(T*, T*); | | template | Good | f(T1*, T2*); | | static_assert (std::is_same_v); | | } | | namespace test_inline_variables | { | | template void f(T) | {} | | template inline T g(T) | { | return T{}; | } | | template<> inline void f<>(int) | {} | | template<> int g<>(int) | { | return 5; | } | | } | | } // namespace cxx17 | | #endif // __cplusplus < 201703L | | | configure:6543: result: no configure:6567: error: *** A compiler with support for C++17 language features is required. ## ---------------- ## ## Cache variables. ## ## ---------------- ## ac_cv_c_bigendian=yes ac_cv_c_compiler_gnu=yes ac_cv_cxx_compiler_gnu=yes ac_cv_env_CCC_set= ac_cv_env_CCC_value= ac_cv_env_CC_set=set ac_cv_env_CC_value=/home/naourr/work/instance-1/output-1/host/bin/mips-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 -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/naourr/work/instance-1/output-1/host/bin/mips-linux-gnu-cpp ac_cv_env_CXXCPP_set= ac_cv_env_CXXCPP_value= ac_cv_env_CXXFLAGS_set=set ac_cv_env_CXXFLAGS_value='-D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -O2 -D_FORTIFY_SOURCE=2' ac_cv_env_CXX_set=set ac_cv_env_CXX_value=/home/naourr/work/instance-1/output-1/host/bin/mips-linux-gnu-g++ ac_cv_env_GMOCK_CFLAGS_set= ac_cv_env_GMOCK_CFLAGS_value= ac_cv_env_GMOCK_LIBS_set= ac_cv_env_GMOCK_LIBS_value= ac_cv_env_GTEST_CFLAGS_set= ac_cv_env_GTEST_CFLAGS_value= ac_cv_env_GTEST_LIBS_set= ac_cv_env_GTEST_LIBS_value= 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_OECORE_TARGET_SYSROOT_set= ac_cv_env_OECORE_TARGET_SYSROOT_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/naourr/work/instance-1/output-1/host/bin/pkg-config ac_cv_env_PYTHON_set= ac_cv_env_PYTHON_value= ac_cv_env_SYSTEMD_CFLAGS_set= ac_cv_env_SYSTEMD_CFLAGS_value= ac_cv_env_SYSTEMD_LIBS_set= ac_cv_env_SYSTEMD_LIBS_value= ac_cv_env_WANT_TRANSACTION_set= ac_cv_env_WANT_TRANSACTION_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=mips-buildroot-linux-gnu ac_cv_env_target_alias_set=set ac_cv_env_target_alias_value=mips-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_header_inttypes_h=yes ac_cv_header_memory_h=yes ac_cv_header_stdc=yes ac_cv_header_stdint_h=yes ac_cv_header_stdlib_h=yes ac_cv_header_string_h=yes ac_cv_header_strings_h=yes ac_cv_header_sys_stat_h=yes ac_cv_header_sys_types_h=yes ac_cv_header_systemd_sd_bus_h=yes ac_cv_header_unistd_h=yes ac_cv_lbl_unaligned_fail=yes ac_cv_objext=o ac_cv_path_EGREP='/usr/bin/grep -E' ac_cv_path_GREP=/usr/bin/grep ac_cv_path_PYTHON=/home/naourr/work/instance-1/output-1/host/bin/python ac_cv_path_install='/usr/bin/install -c' ac_cv_path_mkdir=/usr/bin/mkdir ac_cv_prog_AR=/home/naourr/work/instance-1/output-1/host/bin/mips-linux-gnu-ar ac_cv_prog_AWK=gawk ac_cv_prog_CC=/home/naourr/work/instance-1/output-1/host/bin/mips-linux-gnu-gcc ac_cv_prog_CXXCPP='/home/naourr/work/instance-1/output-1/host/bin/mips-linux-gnu-g++ -E' ac_cv_prog_STRIP=/home/naourr/work/instance-1/output-1/host/bin/mips-linux-gnu-strip ac_cv_prog_cc_c89= ac_cv_prog_cc_g=yes ac_cv_prog_cxx_g=yes ac_cv_prog_make_make_set=yes am_cv_CC_dependencies_compiler_type=none am_cv_CXX_dependencies_compiler_type=none am_cv_ar_interface=ar am_cv_make_support_nested_variables=yes am_cv_pathless_PYTHON=python am_cv_prog_cc_c_o=yes am_cv_python_platform=linux am_cv_python_pyexecdir='${exec_prefix}/lib/python3.8/site-packages' am_cv_python_pythondir='${prefix}/lib/python3.8/site-packages' am_cv_python_version=3.8 ax_cv_cxx_compile_cxx17__h_std_cpp17=no ax_cv_cxx_compile_cxx17__h_std_cpp1z=no ax_cv_cxx_compile_cxx17__std_cpp17=no ax_cv_cxx_compile_cxx17__std_cpp1z=no ax_cv_cxx_compile_cxx17_pstd_cpp17=no ax_cv_cxx_compile_cxx17_pstd_cpp1z=no gl_cv_func_malloc_0_nonnull=yes lt_cv_sys_lib_search_path_spec= pkg_cv_SYSTEMD_CFLAGS= pkg_cv_SYSTEMD_LIBS='-L/home/naourr/work/instance-1/output-1/host/bin/../mips-buildroot-linux-gnu/sysroot/usr/lib -lsystemd ' ## ----------------- ## ## Output variables. ## ## ----------------- ## ACLOCAL='${SHELL} /home/naourr/work/instance-1/output-1/build/sdbusplus-4212292bcf136d04b38ba5116aa568b0fa312798/build-aux/missing aclocal-1.15' AMDEPBACKSLASH='' AMDEP_FALSE='' AMDEP_TRUE='#' AMTAR='$${TAR-tar}' AM_BACKSLASH='\' AM_DEFAULT_V='$(AM_DEFAULT_VERBOSITY)' AM_DEFAULT_VERBOSITY='0' AM_V='$(V)' AR='/home/naourr/work/instance-1/output-1/host/bin/mips-linux-gnu-ar' AUTOCONF='${SHELL} /home/naourr/work/instance-1/output-1/build/sdbusplus-4212292bcf136d04b38ba5116aa568b0fa312798/build-aux/missing autoconf' AUTOCONF_CODE_COVERAGE_2019_01_06_FALSE='' AUTOCONF_CODE_COVERAGE_2019_01_06_TRUE='' AUTOHEADER='${SHELL} /home/naourr/work/instance-1/output-1/build/sdbusplus-4212292bcf136d04b38ba5116aa568b0fa312798/build-aux/missing autoheader' AUTOMAKE='${SHELL} /home/naourr/work/instance-1/output-1/build/sdbusplus-4212292bcf136d04b38ba5116aa568b0fa312798/build-aux/missing automake-1.15' AWK='gawk' AX_PACKAGE_REQUIRES=' libsystemd >= 221' AX_PACKAGE_REQUIRES_PRIVATE=' ' BOOST_FALSE='' BOOST_TRUE='' CC='/home/naourr/work/instance-1/output-1/host/bin/mips-linux-gnu-gcc' CCDEPMODE='depmode=none' CFLAGS='-D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -O2 -D_FORTIFY_SOURCE=2' CODE_COVERAGE_CFLAGS='' CODE_COVERAGE_CPPFLAGS='' CODE_COVERAGE_CXXFLAGS='' CODE_COVERAGE_ENABLED='' CODE_COVERAGE_ENABLED_FALSE='' CODE_COVERAGE_ENABLED_TRUE='' CODE_COVERAGE_LIBS='' CPP='/home/naourr/work/instance-1/output-1/host/bin/mips-linux-gnu-cpp' CPPFLAGS='-D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64' CXX='/home/naourr/work/instance-1/output-1/host/bin/mips-linux-gnu-g++' CXXCPP='/home/naourr/work/instance-1/output-1/host/bin/mips-linux-gnu-g++ -E' CXXDEPMODE='depmode=none' CXXFLAGS='-D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -O2 -D_FORTIFY_SOURCE=2' CYGPATH_W='echo' DEFS='' DEPDIR='.deps' DLLTOOL='' DSYMUTIL='' DUMPBIN='' ECHO_C='' ECHO_N='-n' ECHO_T='' EGREP='/usr/bin/grep -E' ENABLE_VALGRIND_drd='' ENABLE_VALGRIND_helgrind='' ENABLE_VALGRIND_memcheck='' ENABLE_VALGRIND_sgcheck='' EXEEXT='' FGREP='' GCOV='' GENHTML='' GMOCK_CFLAGS='' GMOCK_LIBS='' GREP='/usr/bin/grep' GTEST_CFLAGS='' GTEST_LIBS='' HAVE_CXX17='' INSTALL_DATA='${INSTALL} -m 644' INSTALL_PROGRAM='${INSTALL}' INSTALL_SCRIPT='${INSTALL}' INSTALL_STRIP_PROGRAM='$(install_sh) -c -s' LCOV='' LD='/home/naourr/work/instance-1/output-1/host/bin/mips-linux-gnu-ld' LDFLAGS='' LIBOBJS='' LIBS='' LIBTOOL='' LIPO='' LN_S='' LTLIBOBJS='' LT_SYS_LIBRARY_PATH='' MAKEINFO='${SHELL} /home/naourr/work/instance-1/output-1/build/sdbusplus-4212292bcf136d04b38ba5116aa568b0fa312798/build-aux/missing makeinfo' MANIFEST_TOOL='' MKDIR_P='/usr/bin/mkdir -p' NM='/home/naourr/work/instance-1/output-1/host/bin/mips-linux-gnu-nm' NMEDIT='' OBJDUMP='/home/naourr/work/instance-1/output-1/host/bin/mips-linux-gnu-objdump' OBJEXT='o' OECORE_TARGET_SYSROOT='' OESDK_TESTCASE_FLAGS='' OTOOL64='' OTOOL='' PACKAGE='sdbusplus' PACKAGE_BUGREPORT='https://github.com/openbmc/sdbusplus/issues' PACKAGE_NAME='sdbusplus' PACKAGE_STRING='sdbusplus 1.0' PACKAGE_TARNAME='sdbusplus' PACKAGE_URL='' PACKAGE_VERSION='1.0' PATH_SEPARATOR=':' PKG_CONFIG='/home/naourr/work/instance-1/output-1/host/bin/pkg-config' PKG_CONFIG_LIBDIR='' PKG_CONFIG_PATH='' PTHREAD_CC='' PTHREAD_CFLAGS='' PTHREAD_LIBS='' PYTHON='/home/naourr/work/instance-1/output-1/host/bin/python' PYTHONDIR='${prefix}/lib/python3.8/site-packages' PYTHON_EXEC_PREFIX='${exec_prefix}' PYTHON_PLATFORM='linux' PYTHON_PREFIX='${prefix}' PYTHON_VERSION='3.8' RANLIB='/home/naourr/work/instance-1/output-1/host/bin/mips-linux-gnu-ranlib' SED='' SET_MAKE='' SHELL='/bin/sh' STRIP='/home/naourr/work/instance-1/output-1/host/bin/mips-linux-gnu-strip' SYSTEMD_CFLAGS='' SYSTEMD_LIBS='-L/home/naourr/work/instance-1/output-1/host/bin/../mips-buildroot-linux-gnu/sysroot/usr/lib -lsystemd ' VALGRIND='' VALGRIND_CHECK_RULES='' VALGRIND_ENABLED='' VALGRIND_ENABLED_FALSE='' VALGRIND_ENABLED_TRUE='' VERSION='1.0' WANT_LIBSDBUSPLUS_FALSE='#' WANT_LIBSDBUSPLUS_TRUE='' WANT_SDBUSPP_FALSE='' WANT_SDBUSPP_TRUE='#' WANT_TRANSACTION='0' WANT_TRANSACTION_FALSE='' WANT_TRANSACTION_TRUE='#' ac_ct_AR='' ac_ct_CC='' ac_ct_CXX='' ac_ct_DUMPBIN='' am__EXEEXT_FALSE='' am__EXEEXT_TRUE='' am__fastdepCC_FALSE='' am__fastdepCC_TRUE='#' am__fastdepCXX_FALSE='' am__fastdepCXX_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='' build_os='' build_vendor='' datadir='${datarootdir}' datarootdir='${prefix}/share' docdir='${datarootdir}/doc/${PACKAGE_TARNAME}' dvidir='${docdir}' exec_prefix='/usr' host='mips-buildroot-linux-gnu' host_alias='mips-buildroot-linux-gnu' host_cpu='' host_os='' host_vendor='' htmldir='${docdir}' ifGNUmake='' ifnGNUmake='' includedir='${prefix}/include' infodir='${datarootdir}/info' install_sh='${SHELL} /home/naourr/work/instance-1/output-1/build/sdbusplus-4212292bcf136d04b38ba5116aa568b0fa312798/build-aux/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}' pkgpyexecdir='${pyexecdir}/sdbusplus' pkgpythondir='${pythondir}/sdbusplus' prefix='/usr' program_transform_name='s&^&&' psdir='${docdir}' pyexecdir='${exec_prefix}/lib/python3.8/site-packages' pythondir='${prefix}/lib/python3.8/site-packages' sbindir='${exec_prefix}/sbin' sharedstatedir='${prefix}/com' sysconfdir='/etc' target_alias='mips-buildroot-linux-gnu' valgrind_enabled_tools='' valgrind_tools='' ## ----------- ## ## confdefs.h. ## ## ----------- ## /* confdefs.h */ #define PACKAGE_NAME "sdbusplus" #define PACKAGE_TARNAME "sdbusplus" #define PACKAGE_VERSION "1.0" #define PACKAGE_STRING "sdbusplus 1.0" #define PACKAGE_BUGREPORT "https://github.com/openbmc/sdbusplus/issues" #define PACKAGE_URL "" #define PACKAGE "sdbusplus" #define VERSION "1.0" #define STDC_HEADERS 1 #define HAVE_SYS_TYPES_H 1 #define HAVE_SYS_STAT_H 1 #define HAVE_STDLIB_H 1 #define HAVE_STRING_H 1 #define HAVE_MEMORY_H 1 #define HAVE_STRINGS_H 1 #define HAVE_INTTYPES_H 1 #define HAVE_STDINT_H 1 #define HAVE_UNISTD_H 1 configure: exit 1