This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.

It was created by libarchive configure 3.7.2, which was
generated by GNU Autoconf 2.71.  Invocation command line was

  $ ./configure --target=nios2-buildroot-linux-gnu --host=nios2-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 --enable-static --enable-shared --disable-bsdtar --disable-bsdcpio --disable-bsdcat --disable-acl --disable-xattr --without-bz2lib --without-libiconv-prefix --with-lz4 --without-mbedtls --without-nettle --without-lzma --with-zstd

## --------- ##
## Platform. ##
## --------- ##

hostname = build3.bootlin.com
uname -m = x86_64
uname -r = 5.4.0-124-generic
uname -s = Linux
uname -v = #140-Ubuntu SMP Thu Aug 4 02:23:37 UTC 2022

/usr/bin/uname -p = x86_64
/bin/uname -X     = unknown

/bin/arch              = x86_64
/usr/bin/arch -k       = unknown
/usr/convex/getsysinfo = unknown
/usr/bin/hostinfo      = unknown
/bin/machine           = unknown
/usr/bin/oslevel       = unknown
/bin/universe          = unknown

PATH: /home/thomas/autobuild/instance-1/output-1/host/bin/
PATH: /home/thomas/autobuild/instance-1/output-1/host/sbin/
PATH: /usr/local/sbin/
PATH: /usr/local/bin/
PATH: /usr/sbin/
PATH: /usr/bin/
PATH: /sbin/
PATH: /bin/
PATH: /snap/bin/


## ----------- ##
## Core tests. ##
## ----------- ##

configure:3078: looking for aux files: config.rpath ltmain.sh compile config.guess config.sub missing install-sh
configure:3091:  trying ./build/autoconf/
configure:3120:   ./build/autoconf/config.rpath found
configure:3120:   ./build/autoconf/ltmain.sh found
configure:3120:   ./build/autoconf/compile found
configure:3120:   ./build/autoconf/config.guess found
configure:3120:   ./build/autoconf/config.sub found
configure:3120:   ./build/autoconf/missing found
configure:3102:   ./build/autoconf/install-sh found
configure:3256: checking for a BSD-compatible install
configure:3329: result: /usr/bin/install -c
configure:3340: checking whether build environment is sane
configure:3395: result: yes
configure:3449: checking for nios2-buildroot-linux-gnu-strip
configure:3481: result: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-strip
configure:3552: checking for a race-free mkdir -p
configure:3596: result: /usr/bin/mkdir -p
configure:3603: checking for gawk
configure:3624: found /home/thomas/autobuild/instance-1/output-1/host/bin/gawk
configure:3635: result: gawk
configure:3646: checking whether make sets $(MAKE)
configure:3669: result: yes
configure:3699: checking whether make supports nested variables
configure:3717: result: yes
configure:3854: checking whether to enable maintainer-specific portions of Makefiles
configure:3864: result: yes
configure:3889: checking whether make supports nested variables
configure:3907: result: yes
configure:3993: checking build system type
configure:4008: result: x86_64-pc-linux-gnu
configure:4028: checking host system type
configure:4042: result: nios2-buildroot-linux-gnu
configure:4110: checking for nios2-buildroot-linux-gnu-gcc
configure:4142: result: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc
configure:4540: checking for C compiler version
configure:4549: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc --version >&5
nios2-buildroot-linux-gnu-gcc.br_real (Buildroot 2022.08-rc1-5174-g96785cd814) 13.2.0
Copyright (C) 2023 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:4560: $? = 0
configure:4549: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -v >&5
Using built-in specs.
COLLECT_GCC=/home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc.br_real
COLLECT_LTO_WRAPPER=/home/thomas/autobuild/instance-1/output-1/host/libexec/gcc/nios2-buildroot-linux-gnu/13.2.0/lto-wrapper
Target: nios2-buildroot-linux-gnu
Configured with: ./configure --prefix=/home/thomas/autobuild/instance-1/output-1/host --sysconfdir=/home/thomas/autobuild/instance-1/output-1/host/etc --enable-static --target=nios2-buildroot-linux-gnu --with-sysroot=/home/thomas/autobuild/instance-1/output-1/host/nios2-buildroot-linux-gnu/sysroot --enable-__cxa_atexit --with-gnu-ld --disable-libssp --disable-multilib --disable-decimal-float --enable-plugins --enable-lto --with-gmp=/home/thomas/autobuild/instance-1/output-1/host --with-mpc=/home/thomas/autobuild/instance-1/output-1/host --with-mpfr=/home/thomas/autobuild/instance-1/output-1/host --with-pkgversion='Buildroot 2022.08-rc1-5174-g96785cd814' --with-bugurl=http://bugs.buildroot.net/ --without-zstd --disable-libquadmath --disable-libquadmath-support --enable-tls --enable-threads --without-isl --without-cloog --enable-languages=c --with-build-time-tools=/home/thomas/autobuild/instance-1/output-1/host/nios2-buildroot-linux-gnu/bin --enable-shared --enable-libgomp
Thread model: posix
Supported LTO compression algorithms: zlib
gcc version 13.2.0 (Buildroot 2022.08-rc1-5174-g96785cd814) 
configure:4560: $? = 0
configure:4549: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -V >&5
nios2-buildroot-linux-gnu-gcc.br_real: error: unrecognized command-line option '-V'
nios2-buildroot-linux-gnu-gcc.br_real: fatal error: no input files
compilation terminated.
configure:4560: $? = 1
configure:4549: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -qversion >&5
nios2-buildroot-linux-gnu-gcc.br_real: error: unrecognized command-line option '-qversion'; did you mean '--version'?
nios2-buildroot-linux-gnu-gcc.br_real: fatal error: no input files
compilation terminated.
configure:4560: $? = 1
configure:4549: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -version >&5
nios2-buildroot-linux-gnu-gcc.br_real: error: unrecognized command-line option '-version'
nios2-buildroot-linux-gnu-gcc.br_real: fatal error: no input files
compilation terminated.
configure:4560: $? = 1
configure:4580: checking whether the C compiler works
configure:4602: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  conftest.c  >&5
configure:4606: $? = 0
configure:4656: result: yes
configure:4659: checking for C compiler default output file name
configure:4661: result: a.out
configure:4667: checking for suffix of executables
configure:4674: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -o conftest -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  conftest.c  >&5
configure:4678: $? = 0
configure:4701: result: 
configure:4723: checking whether we are cross compiling
configure:4761: result: yes
configure:4766: checking for suffix of object files
configure:4789: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 conftest.c >&5
configure:4793: $? = 0
configure:4815: result: o
configure:4819: checking whether the compiler supports GNU C
configure:4839: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 conftest.c >&5
configure:4839: $? = 0
configure:4849: result: yes
configure:4860: checking whether /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc accepts -g
configure:4881: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -g -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 conftest.c >&5
configure:4881: $? = 0
configure:4925: result: yes
configure:4945: checking for /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc option to enable C11 features
configure:4960: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc  -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 conftest.c >&5
configure:4960: $? = 0
configure:4978: result: none needed
configure:5094: checking whether /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc understands -c and -o together
configure:5117: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c conftest.c -o conftest2.o
configure:5120: $? = 0
configure:5117: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c conftest.c -o conftest2.o
configure:5120: $? = 0
configure:5132: result: yes
configure:5152: checking whether make supports the include directive
configure:5167: make -f confmf.GNU && cat confinc.out
make[1]: Entering directory '/home/thomas/autobuild/instance-1/output-1/build/libarchive-3.7.2'
make[1]: Leaving directory '/home/thomas/autobuild/instance-1/output-1/build/libarchive-3.7.2'
this is the am__doit target
configure:5170: $? = 0
configure:5189: result: yes (GNU style)
configure:5215: checking dependency style of /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc
configure:5327: result: none
configure:5348: checking how to run the C preprocessor
configure:5416: result: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-cpp
configure:5430: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-cpp -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 conftest.c
configure:5430: $? = 0
configure:5445: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-cpp -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 conftest.c
conftest.c:18:10: fatal error: ac_nonexistent.h: No such file or directory
   18 | #include <ac_nonexistent.h>
      |          ^~~~~~~~~~~~~~~~~~
compilation terminated.
configure:5445: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "libarchive"
| #define PACKAGE_TARNAME "libarchive"
| #define PACKAGE_VERSION "3.7.2"
| #define PACKAGE_STRING "libarchive 3.7.2"
| #define PACKAGE_BUGREPORT "libarchive-discuss@googlegroups.com"
| #define PACKAGE_URL ""
| #define PACKAGE "libarchive"
| #define VERSION "3.7.2"
| #define __LIBARCHIVE_CONFIG_H_INCLUDED 1
| #define LIBARCHIVE_VERSION_STRING "3.7.2"
| #define LIBARCHIVE_VERSION_NUMBER "3007002"
| #define BSDCPIO_VERSION_STRING "3.7.2"
| #define BSDTAR_VERSION_STRING "3.7.2"
| #define BSDCAT_VERSION_STRING "3.7.2"
| #define BSDUNZIP_VERSION_STRING "3.7.2"
| /* end confdefs.h.  */
| #include <ac_nonexistent.h>
configure:5480: checking for stdio.h
configure:5480: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 conftest.c >&5
configure:5480: $? = 0
configure:5480: result: yes
configure:5480: checking for stdlib.h
configure:5480: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 conftest.c >&5
configure:5480: $? = 0
configure:5480: result: yes
configure:5480: checking for string.h
configure:5480: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 conftest.c >&5
configure:5480: $? = 0
configure:5480: result: yes
configure:5480: checking for inttypes.h
configure:5480: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 conftest.c >&5
configure:5480: $? = 0
configure:5480: result: yes
configure:5480: checking for stdint.h
configure:5480: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 conftest.c >&5
configure:5480: $? = 0
configure:5480: result: yes
configure:5480: checking for strings.h
configure:5480: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 conftest.c >&5
configure:5480: $? = 0
configure:5480: result: yes
configure:5480: checking for sys/stat.h
configure:5480: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 conftest.c >&5
configure:5480: $? = 0
configure:5480: result: yes
configure:5480: checking for sys/types.h
configure:5480: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 conftest.c >&5
configure:5480: $? = 0
configure:5480: result: yes
configure:5480: checking for unistd.h
configure:5480: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 conftest.c >&5
configure:5480: $? = 0
configure:5480: result: yes
configure:5480: checking for wchar.h
configure:5480: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 conftest.c >&5
configure:5480: $? = 0
configure:5480: result: yes
configure:5480: checking for minix/config.h
configure:5480: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 conftest.c >&5
conftest.c:56:10: fatal error: minix/config.h: No such file or directory
   56 | #include <minix/config.h>
      |          ^~~~~~~~~~~~~~~~
compilation terminated.
configure:5480: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "libarchive"
| #define PACKAGE_TARNAME "libarchive"
| #define PACKAGE_VERSION "3.7.2"
| #define PACKAGE_STRING "libarchive 3.7.2"
| #define PACKAGE_BUGREPORT "libarchive-discuss@googlegroups.com"
| #define PACKAGE_URL ""
| #define PACKAGE "libarchive"
| #define VERSION "3.7.2"
| #define __LIBARCHIVE_CONFIG_H_INCLUDED 1
| #define LIBARCHIVE_VERSION_STRING "3.7.2"
| #define LIBARCHIVE_VERSION_NUMBER "3007002"
| #define BSDCPIO_VERSION_STRING "3.7.2"
| #define BSDTAR_VERSION_STRING "3.7.2"
| #define BSDCAT_VERSION_STRING "3.7.2"
| #define BSDUNZIP_VERSION_STRING "3.7.2"
| #define HAVE_STDIO_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_WCHAR_H 1
| /* end confdefs.h.  */
| #include <stddef.h>
| #ifdef HAVE_STDIO_H
| # include <stdio.h>
| #endif
| #ifdef HAVE_STDLIB_H
| # include <stdlib.h>
| #endif
| #ifdef HAVE_STRING_H
| # include <string.h>
| #endif
| #ifdef HAVE_INTTYPES_H
| # include <inttypes.h>
| #endif
| #ifdef HAVE_STDINT_H
| # include <stdint.h>
| #endif
| #ifdef HAVE_STRINGS_H
| # include <strings.h>
| #endif
| #ifdef HAVE_SYS_TYPES_H
| # include <sys/types.h>
| #endif
| #ifdef HAVE_SYS_STAT_H
| # include <sys/stat.h>
| #endif
| #ifdef HAVE_UNISTD_H
| # include <unistd.h>
| #endif
| #include <minix/config.h>
configure:5480: result: no
configure:5480: checking for sys/time.h
configure:5480: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 conftest.c >&5
configure:5480: $? = 0
configure:5480: result: yes
configure:5511: checking whether it is safe to define __EXTENSIONS__
configure:5530: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 conftest.c >&5
configure:5530: $? = 0
configure:5538: result: yes
configure:5541: checking whether _XOPEN_SOURCE should be defined
configure:5563: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 conftest.c >&5
configure:5563: $? = 0
configure:5590: result: no
configure:6026: checking how to print strings
configure:6053: result: printf
configure:6074: checking for a sed that does not truncate output
configure:6144: result: /usr/bin/sed
configure:6162: checking for grep that handles long lines and -e
configure:6226: result: /usr/bin/grep
configure:6231: checking for egrep
configure:6299: result: /usr/bin/grep -E
configure:6304: checking for fgrep
configure:6372: result: /usr/bin/grep -F
configure:6408: checking for ld used by /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc
configure:6476: result: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-ld
configure:6483: checking if the linker (/home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-ld) is GNU ld
configure:6499: result: yes
configure:6511: checking for BSD- or MS-compatible name lister (nm)
configure:6566: result: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc-nm
configure:6706: checking the name lister (/home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc-nm) interface
configure:6714: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 conftest.c >&5
configure:6717: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc-nm "conftest.o"
configure:6720: output
00000000 S some_variable
configure:6721: result: BSD nm
configure:6724: checking whether ln -s works
configure:6728: result: yes
configure:6736: checking the maximum length of command line arguments
configure:6868: result: 1572864
configure:6916: checking how to convert x86_64-pc-linux-gnu file names to nios2-buildroot-linux-gnu format
configure:6957: result: func_convert_file_noop
configure:6964: checking how to convert x86_64-pc-linux-gnu file names to toolchain format
configure:6985: result: func_convert_file_noop
configure:6992: checking for /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-ld option to reload object files
configure:7000: result: -r
configure:7034: checking for nios2-buildroot-linux-gnu-objdump
configure:7066: result: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-objdump
configure:7140: checking how to recognize dependent libraries
configure:7341: result: pass_all
configure:7386: checking for nios2-buildroot-linux-gnu-dlltool
configure:7418: result: dlltool
configure:7493: checking how to associate runtime and link libraries
configure:7521: result: printf %s\n
configure:7537: checking for nios2-buildroot-linux-gnu-ar
configure:7569: result: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc-ar
configure:7655: checking for archiver @FILE support
configure:7673: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 conftest.c >&5
configure:7673: $? = 0
configure:7677: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc-ar cr libconftest.a @conftest.lst >&5
configure:7680: $? = 0
configure:7685: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc-ar cr libconftest.a @conftest.lst >&5
/home/thomas/autobuild/instance-1/output-1/host/lib/gcc/nios2-buildroot-linux-gnu/13.2.0/../../../../nios2-buildroot-linux-gnu/bin/ar: conftest.o: No such file or directory
configure:7688: $? = 1
configure:7687: result: @
configure:7705: checking for nios2-buildroot-linux-gnu-strip
configure:7737: result: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-strip
configure:7814: checking for nios2-buildroot-linux-gnu-ranlib
configure:7846: result: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc-ranlib
configure:7993: checking command to parse /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc-nm output from /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc object
configure:8147: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 conftest.c >&5
configure:8150: $? = 0
configure:8154: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc-nm conftest.o | sed -n -e 's/^.*[	 ]\([ABCDGIRSTW][ABCDGIRSTW]*\)[	 ][	 ]*\([_A-Za-z][_A-Za-z0-9]*\)$/\1 \2 \2/p' | sed '/ __gnu_lto/d' > conftest.nm
configure:8220: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -o conftest -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  conftest.c conftstm.o >&5
configure:8223: $? = 0
configure:8261: result: ok
configure:8308: checking for sysroot
configure:8339: result: no
configure:8346: checking for a working dd
configure:8390: result: /usr/bin/dd
configure:8394: checking how to truncate binary pipes
configure:8410: result: /usr/bin/dd bs=4096 count=1
configure:8702: checking for nios2-buildroot-linux-gnu-mt
configure:8737: result: no
configure:8747: checking for mt
configure:8768: found /usr/bin/mt
configure:8779: result: mt
configure:8791: WARNING: using cross tools not prefixed with host triplet
configure:8802: checking if mt is a manifest tool
configure:8809: mt '-?'
configure:8817: result: no
configure:9543: checking for dlfcn.h
configure:9543: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 conftest.c >&5
configure:9543: $? = 0
configure:9543: result: yes
configure:9800: checking for objdir
configure:9816: result: .libs
configure:10076: checking if /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc supports -fno-rtti -fno-exceptions
configure:10095: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -fno-rtti -fno-exceptions conftest.c >&5
cc1: warning: command-line option '-fno-rtti' is valid for C++/D/ObjC++ but not for C
configure:10099: $? = 0
configure:10112: result: no
configure:10476: checking for /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc option to produce PIC
configure:10484: result: -fPIC -DPIC
configure:10492: checking if /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc PIC flag -fPIC -DPIC works
configure:10511: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -fPIC -DPIC -DPIC conftest.c >&5
configure:10515: $? = 0
configure:10528: result: yes
configure:10557: checking if /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc static flag -static works
configure:10586: result: yes
configure:10601: checking if /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc supports -c -o file.o
configure:10623: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -o out/conftest2.o conftest.c >&5
configure:10627: $? = 0
configure:10649: result: yes
configure:10657: checking if /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc supports -c -o file.o
configure:10705: result: yes
configure:10738: checking whether the /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc linker (/home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-ld) supports shared libraries
configure:12008: result: yes
configure:12045: checking whether -lc should be explicitly linked in
configure:12054: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 conftest.c >&5
configure:12057: $? = 0
configure:12072: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -shared  -fPIC -DPIC conftest.o  -v -Wl,-soname -Wl,conftest -o conftest 2\>\&1 \| /usr/bin/grep  -lc  \>/dev/null 2\>\&1
configure:12075: $? = 0
configure:12089: result: no
configure:12249: checking dynamic linker characteristics
configure:12831: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -o conftest -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -Wl,-rpath -Wl,/foo conftest.c  >&5
configure:12831: $? = 0
configure:13082: result: GNU/Linux ld.so
configure:13204: checking how to hardcode library paths into programs
configure:13229: result: immediate
configure:13781: checking whether stripping libraries is possible
configure:13786: result: yes
configure:13821: checking if libtool supports shared libraries
configure:13823: result: yes
configure:13826: checking whether to build shared libraries
configure:13851: result: yes
configure:13854: checking whether to build static libraries
configure:13858: result: yes
configure:10658: checking for nios2-buildroot-linux-gnu-strip
configure:10690: result: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-strip
configure:11092: checking for dirent.h that defines DIR
configure:11112: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 conftest.c >&5
configure:11112: $? = 0
configure:11121: result: yes
configure:11135: checking for library containing opendir
configure:11165: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -o conftest -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  conftest.c  >&5
configure:11165: $? = 0
configure:11185: result: none required
configure:11256: checking for sys/wait.h that is POSIX.1 compatible
configure:11283: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 conftest.c >&5
configure:11283: $? = 0
configure:11291: result: yes
configure:11299: checking for acl/libacl.h
configure:11299: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 conftest.c >&5
conftest.c:78:10: fatal error: acl/libacl.h: No such file or directory
   78 | #include <acl/libacl.h>
      |          ^~~~~~~~~~~~~~
compilation terminated.
configure:11299: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "libarchive"
| #define PACKAGE_TARNAME "libarchive"
| #define PACKAGE_VERSION "3.7.2"
| #define PACKAGE_STRING "libarchive 3.7.2"
| #define PACKAGE_BUGREPORT "libarchive-discuss@googlegroups.com"
| #define PACKAGE_URL ""
| #define PACKAGE "libarchive"
| #define VERSION "3.7.2"
| #define __LIBARCHIVE_CONFIG_H_INCLUDED 1
| #define LIBARCHIVE_VERSION_STRING "3.7.2"
| #define LIBARCHIVE_VERSION_NUMBER "3007002"
| #define BSDCPIO_VERSION_STRING "3.7.2"
| #define BSDTAR_VERSION_STRING "3.7.2"
| #define BSDCAT_VERSION_STRING "3.7.2"
| #define BSDUNZIP_VERSION_STRING "3.7.2"
| #define HAVE_STDIO_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_SYS_TIME_H 1
| #define STDC_HEADERS 1
| #define _ALL_SOURCE 1
| #define _DARWIN_C_SOURCE 1
| #define _GNU_SOURCE 1
| #define _HPUX_ALT_XOPEN_SOCKET_API 1
| #define _NETBSD_SOURCE 1
| #define _OPENBSD_SOURCE 1
| #define _POSIX_PTHREAD_SEMANTICS 1
| #define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1
| #define __STDC_WANT_IEC_60559_BFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_DFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1
| #define __STDC_WANT_IEC_60559_TYPES_EXT__ 1
| #define __STDC_WANT_LIB_EXT2__ 1
| #define __STDC_WANT_MATH_SPEC_FUNCS__ 1
| #define _TANDEM_SOURCE 1
| #define __EXTENSIONS__ 1
| #define HAVE_DLFCN_H 1
| #define LT_OBJDIR ".libs/"
| #define HAVE_DIRENT_H 1
| #define HAVE_SYS_WAIT_H 1
| /* end confdefs.h.  */
| #include <stddef.h>
| #ifdef HAVE_STDIO_H
| # include <stdio.h>
| #endif
| #ifdef HAVE_STDLIB_H
| # include <stdlib.h>
| #endif
| #ifdef HAVE_STRING_H
| # include <string.h>
| #endif
| #ifdef HAVE_INTTYPES_H
| # include <inttypes.h>
| #endif
| #ifdef HAVE_STDINT_H
| # include <stdint.h>
| #endif
| #ifdef HAVE_STRINGS_H
| # include <strings.h>
| #endif
| #ifdef HAVE_SYS_TYPES_H
| # include <sys/types.h>
| #endif
| #ifdef HAVE_SYS_STAT_H
| # include <sys/stat.h>
| #endif
| #ifdef HAVE_UNISTD_H
| # include <unistd.h>
| #endif
| #include <acl/libacl.h>
configure:11299: result: no
configure:11305: checking for attr/xattr.h
configure:11305: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 conftest.c >&5
conftest.c:78:10: fatal error: attr/xattr.h: No such file or directory
   78 | #include <attr/xattr.h>
      |          ^~~~~~~~~~~~~~
compilation terminated.
configure:11305: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "libarchive"
| #define PACKAGE_TARNAME "libarchive"
| #define PACKAGE_VERSION "3.7.2"
| #define PACKAGE_STRING "libarchive 3.7.2"
| #define PACKAGE_BUGREPORT "libarchive-discuss@googlegroups.com"
| #define PACKAGE_URL ""
| #define PACKAGE "libarchive"
| #define VERSION "3.7.2"
| #define __LIBARCHIVE_CONFIG_H_INCLUDED 1
| #define LIBARCHIVE_VERSION_STRING "3.7.2"
| #define LIBARCHIVE_VERSION_NUMBER "3007002"
| #define BSDCPIO_VERSION_STRING "3.7.2"
| #define BSDTAR_VERSION_STRING "3.7.2"
| #define BSDCAT_VERSION_STRING "3.7.2"
| #define BSDUNZIP_VERSION_STRING "3.7.2"
| #define HAVE_STDIO_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_SYS_TIME_H 1
| #define STDC_HEADERS 1
| #define _ALL_SOURCE 1
| #define _DARWIN_C_SOURCE 1
| #define _GNU_SOURCE 1
| #define _HPUX_ALT_XOPEN_SOCKET_API 1
| #define _NETBSD_SOURCE 1
| #define _OPENBSD_SOURCE 1
| #define _POSIX_PTHREAD_SEMANTICS 1
| #define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1
| #define __STDC_WANT_IEC_60559_BFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_DFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1
| #define __STDC_WANT_IEC_60559_TYPES_EXT__ 1
| #define __STDC_WANT_LIB_EXT2__ 1
| #define __STDC_WANT_MATH_SPEC_FUNCS__ 1
| #define _TANDEM_SOURCE 1
| #define __EXTENSIONS__ 1
| #define HAVE_DLFCN_H 1
| #define LT_OBJDIR ".libs/"
| #define HAVE_DIRENT_H 1
| #define HAVE_SYS_WAIT_H 1
| /* end confdefs.h.  */
| #include <stddef.h>
| #ifdef HAVE_STDIO_H
| # include <stdio.h>
| #endif
| #ifdef HAVE_STDLIB_H
| # include <stdlib.h>
| #endif
| #ifdef HAVE_STRING_H
| # include <string.h>
| #endif
| #ifdef HAVE_INTTYPES_H
| # include <inttypes.h>
| #endif
| #ifdef HAVE_STDINT_H
| # include <stdint.h>
| #endif
| #ifdef HAVE_STRINGS_H
| # include <strings.h>
| #endif
| #ifdef HAVE_SYS_TYPES_H
| # include <sys/types.h>
| #endif
| #ifdef HAVE_SYS_STAT_H
| # include <sys/stat.h>
| #endif
| #ifdef HAVE_UNISTD_H
| # include <unistd.h>
| #endif
| #include <attr/xattr.h>
configure:11305: result: no
configure:11312: checking for copyfile.h
configure:11312: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 conftest.c >&5
conftest.c:78:10: fatal error: copyfile.h: No such file or directory
   78 | #include <copyfile.h>
      |          ^~~~~~~~~~~~
compilation terminated.
configure:11312: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "libarchive"
| #define PACKAGE_TARNAME "libarchive"
| #define PACKAGE_VERSION "3.7.2"
| #define PACKAGE_STRING "libarchive 3.7.2"
| #define PACKAGE_BUGREPORT "libarchive-discuss@googlegroups.com"
| #define PACKAGE_URL ""
| #define PACKAGE "libarchive"
| #define VERSION "3.7.2"
| #define __LIBARCHIVE_CONFIG_H_INCLUDED 1
| #define LIBARCHIVE_VERSION_STRING "3.7.2"
| #define LIBARCHIVE_VERSION_NUMBER "3007002"
| #define BSDCPIO_VERSION_STRING "3.7.2"
| #define BSDTAR_VERSION_STRING "3.7.2"
| #define BSDCAT_VERSION_STRING "3.7.2"
| #define BSDUNZIP_VERSION_STRING "3.7.2"
| #define HAVE_STDIO_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_SYS_TIME_H 1
| #define STDC_HEADERS 1
| #define _ALL_SOURCE 1
| #define _DARWIN_C_SOURCE 1
| #define _GNU_SOURCE 1
| #define _HPUX_ALT_XOPEN_SOCKET_API 1
| #define _NETBSD_SOURCE 1
| #define _OPENBSD_SOURCE 1
| #define _POSIX_PTHREAD_SEMANTICS 1
| #define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1
| #define __STDC_WANT_IEC_60559_BFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_DFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1
| #define __STDC_WANT_IEC_60559_TYPES_EXT__ 1
| #define __STDC_WANT_LIB_EXT2__ 1
| #define __STDC_WANT_MATH_SPEC_FUNCS__ 1
| #define _TANDEM_SOURCE 1
| #define __EXTENSIONS__ 1
| #define HAVE_DLFCN_H 1
| #define LT_OBJDIR ".libs/"
| #define HAVE_DIRENT_H 1
| #define HAVE_SYS_WAIT_H 1
| /* end confdefs.h.  */
| #include <stddef.h>
| #ifdef HAVE_STDIO_H
| # include <stdio.h>
| #endif
| #ifdef HAVE_STDLIB_H
| # include <stdlib.h>
| #endif
| #ifdef HAVE_STRING_H
| # include <string.h>
| #endif
| #ifdef HAVE_INTTYPES_H
| # include <inttypes.h>
| #endif
| #ifdef HAVE_STDINT_H
| # include <stdint.h>
| #endif
| #ifdef HAVE_STRINGS_H
| # include <strings.h>
| #endif
| #ifdef HAVE_SYS_TYPES_H
| # include <sys/types.h>
| #endif
| #ifdef HAVE_SYS_STAT_H
| # include <sys/stat.h>
| #endif
| #ifdef HAVE_UNISTD_H
| # include <unistd.h>
| #endif
| #include <copyfile.h>
configure:11312: result: no
configure:11318: checking for ctype.h
configure:11318: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 conftest.c >&5
configure:11318: $? = 0
configure:11318: result: yes
configure:11325: checking for errno.h
configure:11325: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 conftest.c >&5
configure:11325: $? = 0
configure:11325: result: yes
configure:11331: checking for ext2fs/ext2_fs.h
configure:11331: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 conftest.c >&5
conftest.c:80:10: fatal error: ext2fs/ext2_fs.h: No such file or directory
   80 | #include <ext2fs/ext2_fs.h>
      |          ^~~~~~~~~~~~~~~~~~
compilation terminated.
configure:11331: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "libarchive"
| #define PACKAGE_TARNAME "libarchive"
| #define PACKAGE_VERSION "3.7.2"
| #define PACKAGE_STRING "libarchive 3.7.2"
| #define PACKAGE_BUGREPORT "libarchive-discuss@googlegroups.com"
| #define PACKAGE_URL ""
| #define PACKAGE "libarchive"
| #define VERSION "3.7.2"
| #define __LIBARCHIVE_CONFIG_H_INCLUDED 1
| #define LIBARCHIVE_VERSION_STRING "3.7.2"
| #define LIBARCHIVE_VERSION_NUMBER "3007002"
| #define BSDCPIO_VERSION_STRING "3.7.2"
| #define BSDTAR_VERSION_STRING "3.7.2"
| #define BSDCAT_VERSION_STRING "3.7.2"
| #define BSDUNZIP_VERSION_STRING "3.7.2"
| #define HAVE_STDIO_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_SYS_TIME_H 1
| #define STDC_HEADERS 1
| #define _ALL_SOURCE 1
| #define _DARWIN_C_SOURCE 1
| #define _GNU_SOURCE 1
| #define _HPUX_ALT_XOPEN_SOCKET_API 1
| #define _NETBSD_SOURCE 1
| #define _OPENBSD_SOURCE 1
| #define _POSIX_PTHREAD_SEMANTICS 1
| #define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1
| #define __STDC_WANT_IEC_60559_BFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_DFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1
| #define __STDC_WANT_IEC_60559_TYPES_EXT__ 1
| #define __STDC_WANT_LIB_EXT2__ 1
| #define __STDC_WANT_MATH_SPEC_FUNCS__ 1
| #define _TANDEM_SOURCE 1
| #define __EXTENSIONS__ 1
| #define HAVE_DLFCN_H 1
| #define LT_OBJDIR ".libs/"
| #define HAVE_DIRENT_H 1
| #define HAVE_SYS_WAIT_H 1
| #define HAVE_CTYPE_H 1
| #define HAVE_ERRNO_H 1
| /* end confdefs.h.  */
| #include <stddef.h>
| #ifdef HAVE_STDIO_H
| # include <stdio.h>
| #endif
| #ifdef HAVE_STDLIB_H
| # include <stdlib.h>
| #endif
| #ifdef HAVE_STRING_H
| # include <string.h>
| #endif
| #ifdef HAVE_INTTYPES_H
| # include <inttypes.h>
| #endif
| #ifdef HAVE_STDINT_H
| # include <stdint.h>
| #endif
| #ifdef HAVE_STRINGS_H
| # include <strings.h>
| #endif
| #ifdef HAVE_SYS_TYPES_H
| # include <sys/types.h>
| #endif
| #ifdef HAVE_SYS_STAT_H
| # include <sys/stat.h>
| #endif
| #ifdef HAVE_UNISTD_H
| # include <unistd.h>
| #endif
| #include <ext2fs/ext2_fs.h>
configure:11331: result: no
configure:11337: checking for fcntl.h
configure:11337: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 conftest.c >&5
configure:11337: $? = 0
configure:11337: result: yes
configure:11343: checking for fnmatch.h
configure:11343: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 conftest.c >&5
configure:11343: $? = 0
configure:11343: result: yes
configure:11349: checking for grp.h
configure:11349: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 conftest.c >&5
configure:11349: $? = 0
configure:11349: result: yes
configure:11357: checking whether EXT2_IOC_GETFLAGS is usable
configure:11375: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 conftest.c >&5
conftest.c:56:10: fatal error: ext2fs/ext2_fs.h: No such file or directory
   56 | #include <ext2fs/ext2_fs.h>
      |          ^~~~~~~~~~~~~~~~~~
compilation terminated.
configure:11375: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "libarchive"
| #define PACKAGE_TARNAME "libarchive"
| #define PACKAGE_VERSION "3.7.2"
| #define PACKAGE_STRING "libarchive 3.7.2"
| #define PACKAGE_BUGREPORT "libarchive-discuss@googlegroups.com"
| #define PACKAGE_URL ""
| #define PACKAGE "libarchive"
| #define VERSION "3.7.2"
| #define __LIBARCHIVE_CONFIG_H_INCLUDED 1
| #define LIBARCHIVE_VERSION_STRING "3.7.2"
| #define LIBARCHIVE_VERSION_NUMBER "3007002"
| #define BSDCPIO_VERSION_STRING "3.7.2"
| #define BSDTAR_VERSION_STRING "3.7.2"
| #define BSDCAT_VERSION_STRING "3.7.2"
| #define BSDUNZIP_VERSION_STRING "3.7.2"
| #define HAVE_STDIO_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_SYS_TIME_H 1
| #define STDC_HEADERS 1
| #define _ALL_SOURCE 1
| #define _DARWIN_C_SOURCE 1
| #define _GNU_SOURCE 1
| #define _HPUX_ALT_XOPEN_SOCKET_API 1
| #define _NETBSD_SOURCE 1
| #define _OPENBSD_SOURCE 1
| #define _POSIX_PTHREAD_SEMANTICS 1
| #define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1
| #define __STDC_WANT_IEC_60559_BFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_DFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1
| #define __STDC_WANT_IEC_60559_TYPES_EXT__ 1
| #define __STDC_WANT_LIB_EXT2__ 1
| #define __STDC_WANT_MATH_SPEC_FUNCS__ 1
| #define _TANDEM_SOURCE 1
| #define __EXTENSIONS__ 1
| #define HAVE_DLFCN_H 1
| #define LT_OBJDIR ".libs/"
| #define HAVE_DIRENT_H 1
| #define HAVE_SYS_WAIT_H 1
| #define HAVE_CTYPE_H 1
| #define HAVE_ERRNO_H 1
| #define HAVE_FCNTL_H 1
| #define HAVE_FNMATCH_H 1
| #define HAVE_GRP_H 1
| /* end confdefs.h.  */
| #include <sys/ioctl.h>
| #include <ext2fs/ext2_fs.h>
| int
| main (void)
| {
| int x = EXT2_IOC_GETFLAGS
|   ;
|   return 0;
| }
configure:11383: result: no
configure:11393: checking for inttypes.h
configure:11393: result: yes
configure:11399: checking for io.h
configure:11399: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 conftest.c >&5
conftest.c:84:10: fatal error: io.h: No such file or directory
   84 | #include <io.h>
      |          ^~~~~~
compilation terminated.
configure:11399: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "libarchive"
| #define PACKAGE_TARNAME "libarchive"
| #define PACKAGE_VERSION "3.7.2"
| #define PACKAGE_STRING "libarchive 3.7.2"
| #define PACKAGE_BUGREPORT "libarchive-discuss@googlegroups.com"
| #define PACKAGE_URL ""
| #define PACKAGE "libarchive"
| #define VERSION "3.7.2"
| #define __LIBARCHIVE_CONFIG_H_INCLUDED 1
| #define LIBARCHIVE_VERSION_STRING "3.7.2"
| #define LIBARCHIVE_VERSION_NUMBER "3007002"
| #define BSDCPIO_VERSION_STRING "3.7.2"
| #define BSDTAR_VERSION_STRING "3.7.2"
| #define BSDCAT_VERSION_STRING "3.7.2"
| #define BSDUNZIP_VERSION_STRING "3.7.2"
| #define HAVE_STDIO_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_SYS_TIME_H 1
| #define STDC_HEADERS 1
| #define _ALL_SOURCE 1
| #define _DARWIN_C_SOURCE 1
| #define _GNU_SOURCE 1
| #define _HPUX_ALT_XOPEN_SOCKET_API 1
| #define _NETBSD_SOURCE 1
| #define _OPENBSD_SOURCE 1
| #define _POSIX_PTHREAD_SEMANTICS 1
| #define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1
| #define __STDC_WANT_IEC_60559_BFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_DFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1
| #define __STDC_WANT_IEC_60559_TYPES_EXT__ 1
| #define __STDC_WANT_LIB_EXT2__ 1
| #define __STDC_WANT_MATH_SPEC_FUNCS__ 1
| #define _TANDEM_SOURCE 1
| #define __EXTENSIONS__ 1
| #define HAVE_DLFCN_H 1
| #define LT_OBJDIR ".libs/"
| #define HAVE_DIRENT_H 1
| #define HAVE_SYS_WAIT_H 1
| #define HAVE_CTYPE_H 1
| #define HAVE_ERRNO_H 1
| #define HAVE_FCNTL_H 1
| #define HAVE_FNMATCH_H 1
| #define HAVE_GRP_H 1
| #define HAVE_INTTYPES_H 1
| /* end confdefs.h.  */
| #include <stddef.h>
| #ifdef HAVE_STDIO_H
| # include <stdio.h>
| #endif
| #ifdef HAVE_STDLIB_H
| # include <stdlib.h>
| #endif
| #ifdef HAVE_STRING_H
| # include <string.h>
| #endif
| #ifdef HAVE_INTTYPES_H
| # include <inttypes.h>
| #endif
| #ifdef HAVE_STDINT_H
| # include <stdint.h>
| #endif
| #ifdef HAVE_STRINGS_H
| # include <strings.h>
| #endif
| #ifdef HAVE_SYS_TYPES_H
| # include <sys/types.h>
| #endif
| #ifdef HAVE_SYS_STAT_H
| # include <sys/stat.h>
| #endif
| #ifdef HAVE_UNISTD_H
| # include <unistd.h>
| #endif
| #include <io.h>
configure:11399: result: no
configure:11405: checking for langinfo.h
configure:11405: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 conftest.c >&5
configure:11405: $? = 0
configure:11405: result: yes
configure:11411: checking for limits.h
configure:11411: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 conftest.c >&5
configure:11411: $? = 0
configure:11411: result: yes
configure:11418: checking for linux/fiemap.h
configure:11418: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 conftest.c >&5
configure:11418: $? = 0
configure:11418: result: yes
configure:11424: checking for linux/fs.h
configure:11424: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 conftest.c >&5
configure:11424: $? = 0
configure:11424: result: yes
configure:11430: checking for linux/magic.h
configure:11430: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 conftest.c >&5
configure:11430: $? = 0
configure:11430: result: yes
configure:11436: checking for linux/types.h
configure:11436: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 conftest.c >&5
configure:11436: $? = 0
configure:11436: result: yes
configure:11444: checking whether FS_IOC_GETFLAGS is usable
configure:11462: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 conftest.c >&5
configure:11462: $? = 0
configure:11470: result: yes
configure:11480: checking for locale.h
configure:11480: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 conftest.c >&5
configure:11480: $? = 0
configure:11480: result: yes
configure:11486: checking for membership.h
configure:11486: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 conftest.c >&5
conftest.c:92:10: fatal error: membership.h: No such file or directory
   92 | #include <membership.h>
      |          ^~~~~~~~~~~~~~
compilation terminated.
configure:11486: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "libarchive"
| #define PACKAGE_TARNAME "libarchive"
| #define PACKAGE_VERSION "3.7.2"
| #define PACKAGE_STRING "libarchive 3.7.2"
| #define PACKAGE_BUGREPORT "libarchive-discuss@googlegroups.com"
| #define PACKAGE_URL ""
| #define PACKAGE "libarchive"
| #define VERSION "3.7.2"
| #define __LIBARCHIVE_CONFIG_H_INCLUDED 1
| #define LIBARCHIVE_VERSION_STRING "3.7.2"
| #define LIBARCHIVE_VERSION_NUMBER "3007002"
| #define BSDCPIO_VERSION_STRING "3.7.2"
| #define BSDTAR_VERSION_STRING "3.7.2"
| #define BSDCAT_VERSION_STRING "3.7.2"
| #define BSDUNZIP_VERSION_STRING "3.7.2"
| #define HAVE_STDIO_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_SYS_TIME_H 1
| #define STDC_HEADERS 1
| #define _ALL_SOURCE 1
| #define _DARWIN_C_SOURCE 1
| #define _GNU_SOURCE 1
| #define _HPUX_ALT_XOPEN_SOCKET_API 1
| #define _NETBSD_SOURCE 1
| #define _OPENBSD_SOURCE 1
| #define _POSIX_PTHREAD_SEMANTICS 1
| #define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1
| #define __STDC_WANT_IEC_60559_BFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_DFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1
| #define __STDC_WANT_IEC_60559_TYPES_EXT__ 1
| #define __STDC_WANT_LIB_EXT2__ 1
| #define __STDC_WANT_MATH_SPEC_FUNCS__ 1
| #define _TANDEM_SOURCE 1
| #define __EXTENSIONS__ 1
| #define HAVE_DLFCN_H 1
| #define LT_OBJDIR ".libs/"
| #define HAVE_DIRENT_H 1
| #define HAVE_SYS_WAIT_H 1
| #define HAVE_CTYPE_H 1
| #define HAVE_ERRNO_H 1
| #define HAVE_FCNTL_H 1
| #define HAVE_FNMATCH_H 1
| #define HAVE_GRP_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_LANGINFO_H 1
| #define HAVE_LIMITS_H 1
| #define HAVE_LINUX_FIEMAP_H 1
| #define HAVE_LINUX_FS_H 1
| #define HAVE_LINUX_MAGIC_H 1
| #define HAVE_LINUX_TYPES_H 1
| #define HAVE_WORKING_FS_IOC_GETFLAGS 1
| #define HAVE_LOCALE_H 1
| /* end confdefs.h.  */
| #include <stddef.h>
| #ifdef HAVE_STDIO_H
| # include <stdio.h>
| #endif
| #ifdef HAVE_STDLIB_H
| # include <stdlib.h>
| #endif
| #ifdef HAVE_STRING_H
| # include <string.h>
| #endif
| #ifdef HAVE_INTTYPES_H
| # include <inttypes.h>
| #endif
| #ifdef HAVE_STDINT_H
| # include <stdint.h>
| #endif
| #ifdef HAVE_STRINGS_H
| # include <strings.h>
| #endif
| #ifdef HAVE_SYS_TYPES_H
| # include <sys/types.h>
| #endif
| #ifdef HAVE_SYS_STAT_H
| # include <sys/stat.h>
| #endif
| #ifdef HAVE_UNISTD_H
| # include <unistd.h>
| #endif
| #include <membership.h>
configure:11486: result: no
configure:11492: checking for paths.h
configure:11492: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 conftest.c >&5
configure:11492: $? = 0
configure:11492: result: yes
configure:11498: checking for poll.h
configure:11498: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 conftest.c >&5
configure:11498: $? = 0
configure:11498: result: yes
configure:11504: checking for pthread.h
configure:11504: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 conftest.c >&5
configure:11504: $? = 0
configure:11504: result: yes
configure:11510: checking for pwd.h
configure:11510: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 conftest.c >&5
configure:11510: $? = 0
configure:11510: result: yes
configure:11517: checking for readpassphrase.h
configure:11517: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 conftest.c >&5
conftest.c:96:10: fatal error: readpassphrase.h: No such file or directory
   96 | #include <readpassphrase.h>
      |          ^~~~~~~~~~~~~~~~~~
compilation terminated.
configure:11517: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "libarchive"
| #define PACKAGE_TARNAME "libarchive"
| #define PACKAGE_VERSION "3.7.2"
| #define PACKAGE_STRING "libarchive 3.7.2"
| #define PACKAGE_BUGREPORT "libarchive-discuss@googlegroups.com"
| #define PACKAGE_URL ""
| #define PACKAGE "libarchive"
| #define VERSION "3.7.2"
| #define __LIBARCHIVE_CONFIG_H_INCLUDED 1
| #define LIBARCHIVE_VERSION_STRING "3.7.2"
| #define LIBARCHIVE_VERSION_NUMBER "3007002"
| #define BSDCPIO_VERSION_STRING "3.7.2"
| #define BSDTAR_VERSION_STRING "3.7.2"
| #define BSDCAT_VERSION_STRING "3.7.2"
| #define BSDUNZIP_VERSION_STRING "3.7.2"
| #define HAVE_STDIO_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_SYS_TIME_H 1
| #define STDC_HEADERS 1
| #define _ALL_SOURCE 1
| #define _DARWIN_C_SOURCE 1
| #define _GNU_SOURCE 1
| #define _HPUX_ALT_XOPEN_SOCKET_API 1
| #define _NETBSD_SOURCE 1
| #define _OPENBSD_SOURCE 1
| #define _POSIX_PTHREAD_SEMANTICS 1
| #define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1
| #define __STDC_WANT_IEC_60559_BFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_DFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1
| #define __STDC_WANT_IEC_60559_TYPES_EXT__ 1
| #define __STDC_WANT_LIB_EXT2__ 1
| #define __STDC_WANT_MATH_SPEC_FUNCS__ 1
| #define _TANDEM_SOURCE 1
| #define __EXTENSIONS__ 1
| #define HAVE_DLFCN_H 1
| #define LT_OBJDIR ".libs/"
| #define HAVE_DIRENT_H 1
| #define HAVE_SYS_WAIT_H 1
| #define HAVE_CTYPE_H 1
| #define HAVE_ERRNO_H 1
| #define HAVE_FCNTL_H 1
| #define HAVE_FNMATCH_H 1
| #define HAVE_GRP_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_LANGINFO_H 1
| #define HAVE_LIMITS_H 1
| #define HAVE_LINUX_FIEMAP_H 1
| #define HAVE_LINUX_FS_H 1
| #define HAVE_LINUX_MAGIC_H 1
| #define HAVE_LINUX_TYPES_H 1
| #define HAVE_WORKING_FS_IOC_GETFLAGS 1
| #define HAVE_LOCALE_H 1
| #define HAVE_PATHS_H 1
| #define HAVE_POLL_H 1
| #define HAVE_PTHREAD_H 1
| #define HAVE_PWD_H 1
| /* end confdefs.h.  */
| #include <stddef.h>
| #ifdef HAVE_STDIO_H
| # include <stdio.h>
| #endif
| #ifdef HAVE_STDLIB_H
| # include <stdlib.h>
| #endif
| #ifdef HAVE_STRING_H
| # include <string.h>
| #endif
| #ifdef HAVE_INTTYPES_H
| # include <inttypes.h>
| #endif
| #ifdef HAVE_STDINT_H
| # include <stdint.h>
| #endif
| #ifdef HAVE_STRINGS_H
| # include <strings.h>
| #endif
| #ifdef HAVE_SYS_TYPES_H
| # include <sys/types.h>
| #endif
| #ifdef HAVE_SYS_STAT_H
| # include <sys/stat.h>
| #endif
| #ifdef HAVE_UNISTD_H
| # include <unistd.h>
| #endif
| #include <readpassphrase.h>
configure:11517: result: no
configure:11523: checking for signal.h
configure:11523: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 conftest.c >&5
configure:11523: $? = 0
configure:11523: result: yes
configure:11529: checking for spawn.h
configure:11529: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 conftest.c >&5
configure:11529: $? = 0
configure:11529: result: yes
configure:11536: checking for stdarg.h
configure:11536: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 conftest.c >&5
configure:11536: $? = 0
configure:11536: result: yes
configure:11542: checking for stdint.h
configure:11542: result: yes
configure:11548: checking for stdlib.h
configure:11548: result: yes
configure:11554: checking for string.h
configure:11554: result: yes
configure:11561: checking for sys/acl.h
configure:11561: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 conftest.c >&5
conftest.c:102:10: fatal error: sys/acl.h: No such file or directory
  102 | #include <sys/acl.h>
      |          ^~~~~~~~~~~
compilation terminated.
configure:11561: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "libarchive"
| #define PACKAGE_TARNAME "libarchive"
| #define PACKAGE_VERSION "3.7.2"
| #define PACKAGE_STRING "libarchive 3.7.2"
| #define PACKAGE_BUGREPORT "libarchive-discuss@googlegroups.com"
| #define PACKAGE_URL ""
| #define PACKAGE "libarchive"
| #define VERSION "3.7.2"
| #define __LIBARCHIVE_CONFIG_H_INCLUDED 1
| #define LIBARCHIVE_VERSION_STRING "3.7.2"
| #define LIBARCHIVE_VERSION_NUMBER "3007002"
| #define BSDCPIO_VERSION_STRING "3.7.2"
| #define BSDTAR_VERSION_STRING "3.7.2"
| #define BSDCAT_VERSION_STRING "3.7.2"
| #define BSDUNZIP_VERSION_STRING "3.7.2"
| #define HAVE_STDIO_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_SYS_TIME_H 1
| #define STDC_HEADERS 1
| #define _ALL_SOURCE 1
| #define _DARWIN_C_SOURCE 1
| #define _GNU_SOURCE 1
| #define _HPUX_ALT_XOPEN_SOCKET_API 1
| #define _NETBSD_SOURCE 1
| #define _OPENBSD_SOURCE 1
| #define _POSIX_PTHREAD_SEMANTICS 1
| #define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1
| #define __STDC_WANT_IEC_60559_BFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_DFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1
| #define __STDC_WANT_IEC_60559_TYPES_EXT__ 1
| #define __STDC_WANT_LIB_EXT2__ 1
| #define __STDC_WANT_MATH_SPEC_FUNCS__ 1
| #define _TANDEM_SOURCE 1
| #define __EXTENSIONS__ 1
| #define HAVE_DLFCN_H 1
| #define LT_OBJDIR ".libs/"
| #define HAVE_DIRENT_H 1
| #define HAVE_SYS_WAIT_H 1
| #define HAVE_CTYPE_H 1
| #define HAVE_ERRNO_H 1
| #define HAVE_FCNTL_H 1
| #define HAVE_FNMATCH_H 1
| #define HAVE_GRP_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_LANGINFO_H 1
| #define HAVE_LIMITS_H 1
| #define HAVE_LINUX_FIEMAP_H 1
| #define HAVE_LINUX_FS_H 1
| #define HAVE_LINUX_MAGIC_H 1
| #define HAVE_LINUX_TYPES_H 1
| #define HAVE_WORKING_FS_IOC_GETFLAGS 1
| #define HAVE_LOCALE_H 1
| #define HAVE_PATHS_H 1
| #define HAVE_POLL_H 1
| #define HAVE_PTHREAD_H 1
| #define HAVE_PWD_H 1
| #define HAVE_SIGNAL_H 1
| #define HAVE_SPAWN_H 1
| #define HAVE_STDARG_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| /* end confdefs.h.  */
| #include <stddef.h>
| #ifdef HAVE_STDIO_H
| # include <stdio.h>
| #endif
| #ifdef HAVE_STDLIB_H
| # include <stdlib.h>
| #endif
| #ifdef HAVE_STRING_H
| # include <string.h>
| #endif
| #ifdef HAVE_INTTYPES_H
| # include <inttypes.h>
| #endif
| #ifdef HAVE_STDINT_H
| # include <stdint.h>
| #endif
| #ifdef HAVE_STRINGS_H
| # include <strings.h>
| #endif
| #ifdef HAVE_SYS_TYPES_H
| # include <sys/types.h>
| #endif
| #ifdef HAVE_SYS_STAT_H
| # include <sys/stat.h>
| #endif
| #ifdef HAVE_UNISTD_H
| # include <unistd.h>
| #endif
| #include <sys/acl.h>
configure:11561: result: no
configure:11567: checking for sys/cdefs.h
configure:11567: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 conftest.c >&5
configure:11567: $? = 0
configure:11567: result: yes
configure:11573: checking for sys/ea.h
configure:11573: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 conftest.c >&5
conftest.c:103:10: fatal error: sys/ea.h: No such file or directory
  103 | #include <sys/ea.h>
      |          ^~~~~~~~~~
compilation terminated.
configure:11573: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "libarchive"
| #define PACKAGE_TARNAME "libarchive"
| #define PACKAGE_VERSION "3.7.2"
| #define PACKAGE_STRING "libarchive 3.7.2"
| #define PACKAGE_BUGREPORT "libarchive-discuss@googlegroups.com"
| #define PACKAGE_URL ""
| #define PACKAGE "libarchive"
| #define VERSION "3.7.2"
| #define __LIBARCHIVE_CONFIG_H_INCLUDED 1
| #define LIBARCHIVE_VERSION_STRING "3.7.2"
| #define LIBARCHIVE_VERSION_NUMBER "3007002"
| #define BSDCPIO_VERSION_STRING "3.7.2"
| #define BSDTAR_VERSION_STRING "3.7.2"
| #define BSDCAT_VERSION_STRING "3.7.2"
| #define BSDUNZIP_VERSION_STRING "3.7.2"
| #define HAVE_STDIO_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_SYS_TIME_H 1
| #define STDC_HEADERS 1
| #define _ALL_SOURCE 1
| #define _DARWIN_C_SOURCE 1
| #define _GNU_SOURCE 1
| #define _HPUX_ALT_XOPEN_SOCKET_API 1
| #define _NETBSD_SOURCE 1
| #define _OPENBSD_SOURCE 1
| #define _POSIX_PTHREAD_SEMANTICS 1
| #define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1
| #define __STDC_WANT_IEC_60559_BFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_DFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1
| #define __STDC_WANT_IEC_60559_TYPES_EXT__ 1
| #define __STDC_WANT_LIB_EXT2__ 1
| #define __STDC_WANT_MATH_SPEC_FUNCS__ 1
| #define _TANDEM_SOURCE 1
| #define __EXTENSIONS__ 1
| #define HAVE_DLFCN_H 1
| #define LT_OBJDIR ".libs/"
| #define HAVE_DIRENT_H 1
| #define HAVE_SYS_WAIT_H 1
| #define HAVE_CTYPE_H 1
| #define HAVE_ERRNO_H 1
| #define HAVE_FCNTL_H 1
| #define HAVE_FNMATCH_H 1
| #define HAVE_GRP_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_LANGINFO_H 1
| #define HAVE_LIMITS_H 1
| #define HAVE_LINUX_FIEMAP_H 1
| #define HAVE_LINUX_FS_H 1
| #define HAVE_LINUX_MAGIC_H 1
| #define HAVE_LINUX_TYPES_H 1
| #define HAVE_WORKING_FS_IOC_GETFLAGS 1
| #define HAVE_LOCALE_H 1
| #define HAVE_PATHS_H 1
| #define HAVE_POLL_H 1
| #define HAVE_PTHREAD_H 1
| #define HAVE_PWD_H 1
| #define HAVE_SIGNAL_H 1
| #define HAVE_SPAWN_H 1
| #define HAVE_STDARG_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_SYS_CDEFS_H 1
| /* end confdefs.h.  */
| #include <stddef.h>
| #ifdef HAVE_STDIO_H
| # include <stdio.h>
| #endif
| #ifdef HAVE_STDLIB_H
| # include <stdlib.h>
| #endif
| #ifdef HAVE_STRING_H
| # include <string.h>
| #endif
| #ifdef HAVE_INTTYPES_H
| # include <inttypes.h>
| #endif
| #ifdef HAVE_STDINT_H
| # include <stdint.h>
| #endif
| #ifdef HAVE_STRINGS_H
| # include <strings.h>
| #endif
| #ifdef HAVE_SYS_TYPES_H
| # include <sys/types.h>
| #endif
| #ifdef HAVE_SYS_STAT_H
| # include <sys/stat.h>
| #endif
| #ifdef HAVE_UNISTD_H
| # include <unistd.h>
| #endif
| #include <sys/ea.h>
configure:11573: result: no
configure:11579: checking for sys/extattr.h
configure:11579: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 conftest.c >&5
conftest.c:103:10: fatal error: sys/extattr.h: No such file or directory
  103 | #include <sys/extattr.h>
      |          ^~~~~~~~~~~~~~~
compilation terminated.
configure:11579: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "libarchive"
| #define PACKAGE_TARNAME "libarchive"
| #define PACKAGE_VERSION "3.7.2"
| #define PACKAGE_STRING "libarchive 3.7.2"
| #define PACKAGE_BUGREPORT "libarchive-discuss@googlegroups.com"
| #define PACKAGE_URL ""
| #define PACKAGE "libarchive"
| #define VERSION "3.7.2"
| #define __LIBARCHIVE_CONFIG_H_INCLUDED 1
| #define LIBARCHIVE_VERSION_STRING "3.7.2"
| #define LIBARCHIVE_VERSION_NUMBER "3007002"
| #define BSDCPIO_VERSION_STRING "3.7.2"
| #define BSDTAR_VERSION_STRING "3.7.2"
| #define BSDCAT_VERSION_STRING "3.7.2"
| #define BSDUNZIP_VERSION_STRING "3.7.2"
| #define HAVE_STDIO_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_SYS_TIME_H 1
| #define STDC_HEADERS 1
| #define _ALL_SOURCE 1
| #define _DARWIN_C_SOURCE 1
| #define _GNU_SOURCE 1
| #define _HPUX_ALT_XOPEN_SOCKET_API 1
| #define _NETBSD_SOURCE 1
| #define _OPENBSD_SOURCE 1
| #define _POSIX_PTHREAD_SEMANTICS 1
| #define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1
| #define __STDC_WANT_IEC_60559_BFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_DFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1
| #define __STDC_WANT_IEC_60559_TYPES_EXT__ 1
| #define __STDC_WANT_LIB_EXT2__ 1
| #define __STDC_WANT_MATH_SPEC_FUNCS__ 1
| #define _TANDEM_SOURCE 1
| #define __EXTENSIONS__ 1
| #define HAVE_DLFCN_H 1
| #define LT_OBJDIR ".libs/"
| #define HAVE_DIRENT_H 1
| #define HAVE_SYS_WAIT_H 1
| #define HAVE_CTYPE_H 1
| #define HAVE_ERRNO_H 1
| #define HAVE_FCNTL_H 1
| #define HAVE_FNMATCH_H 1
| #define HAVE_GRP_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_LANGINFO_H 1
| #define HAVE_LIMITS_H 1
| #define HAVE_LINUX_FIEMAP_H 1
| #define HAVE_LINUX_FS_H 1
| #define HAVE_LINUX_MAGIC_H 1
| #define HAVE_LINUX_TYPES_H 1
| #define HAVE_WORKING_FS_IOC_GETFLAGS 1
| #define HAVE_LOCALE_H 1
| #define HAVE_PATHS_H 1
| #define HAVE_POLL_H 1
| #define HAVE_PTHREAD_H 1
| #define HAVE_PWD_H 1
| #define HAVE_SIGNAL_H 1
| #define HAVE_SPAWN_H 1
| #define HAVE_STDARG_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_SYS_CDEFS_H 1
| /* end confdefs.h.  */
| #include <stddef.h>
| #ifdef HAVE_STDIO_H
| # include <stdio.h>
| #endif
| #ifdef HAVE_STDLIB_H
| # include <stdlib.h>
| #endif
| #ifdef HAVE_STRING_H
| # include <string.h>
| #endif
| #ifdef HAVE_INTTYPES_H
| # include <inttypes.h>
| #endif
| #ifdef HAVE_STDINT_H
| # include <stdint.h>
| #endif
| #ifdef HAVE_STRINGS_H
| # include <strings.h>
| #endif
| #ifdef HAVE_SYS_TYPES_H
| # include <sys/types.h>
| #endif
| #ifdef HAVE_SYS_STAT_H
| # include <sys/stat.h>
| #endif
| #ifdef HAVE_UNISTD_H
| # include <unistd.h>
| #endif
| #include <sys/extattr.h>
configure:11579: result: no
configure:11586: checking for sys/ioctl.h
configure:11586: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 conftest.c >&5
configure:11586: $? = 0
configure:11586: result: yes
configure:11592: checking for sys/mkdev.h
configure:11592: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 conftest.c >&5
conftest.c:104:10: fatal error: sys/mkdev.h: No such file or directory
  104 | #include <sys/mkdev.h>
      |          ^~~~~~~~~~~~~
compilation terminated.
configure:11592: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "libarchive"
| #define PACKAGE_TARNAME "libarchive"
| #define PACKAGE_VERSION "3.7.2"
| #define PACKAGE_STRING "libarchive 3.7.2"
| #define PACKAGE_BUGREPORT "libarchive-discuss@googlegroups.com"
| #define PACKAGE_URL ""
| #define PACKAGE "libarchive"
| #define VERSION "3.7.2"
| #define __LIBARCHIVE_CONFIG_H_INCLUDED 1
| #define LIBARCHIVE_VERSION_STRING "3.7.2"
| #define LIBARCHIVE_VERSION_NUMBER "3007002"
| #define BSDCPIO_VERSION_STRING "3.7.2"
| #define BSDTAR_VERSION_STRING "3.7.2"
| #define BSDCAT_VERSION_STRING "3.7.2"
| #define BSDUNZIP_VERSION_STRING "3.7.2"
| #define HAVE_STDIO_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_SYS_TIME_H 1
| #define STDC_HEADERS 1
| #define _ALL_SOURCE 1
| #define _DARWIN_C_SOURCE 1
| #define _GNU_SOURCE 1
| #define _HPUX_ALT_XOPEN_SOCKET_API 1
| #define _NETBSD_SOURCE 1
| #define _OPENBSD_SOURCE 1
| #define _POSIX_PTHREAD_SEMANTICS 1
| #define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1
| #define __STDC_WANT_IEC_60559_BFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_DFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1
| #define __STDC_WANT_IEC_60559_TYPES_EXT__ 1
| #define __STDC_WANT_LIB_EXT2__ 1
| #define __STDC_WANT_MATH_SPEC_FUNCS__ 1
| #define _TANDEM_SOURCE 1
| #define __EXTENSIONS__ 1
| #define HAVE_DLFCN_H 1
| #define LT_OBJDIR ".libs/"
| #define HAVE_DIRENT_H 1
| #define HAVE_SYS_WAIT_H 1
| #define HAVE_CTYPE_H 1
| #define HAVE_ERRNO_H 1
| #define HAVE_FCNTL_H 1
| #define HAVE_FNMATCH_H 1
| #define HAVE_GRP_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_LANGINFO_H 1
| #define HAVE_LIMITS_H 1
| #define HAVE_LINUX_FIEMAP_H 1
| #define HAVE_LINUX_FS_H 1
| #define HAVE_LINUX_MAGIC_H 1
| #define HAVE_LINUX_TYPES_H 1
| #define HAVE_WORKING_FS_IOC_GETFLAGS 1
| #define HAVE_LOCALE_H 1
| #define HAVE_PATHS_H 1
| #define HAVE_POLL_H 1
| #define HAVE_PTHREAD_H 1
| #define HAVE_PWD_H 1
| #define HAVE_SIGNAL_H 1
| #define HAVE_SPAWN_H 1
| #define HAVE_STDARG_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_SYS_CDEFS_H 1
| #define HAVE_SYS_IOCTL_H 1
| /* end confdefs.h.  */
| #include <stddef.h>
| #ifdef HAVE_STDIO_H
| # include <stdio.h>
| #endif
| #ifdef HAVE_STDLIB_H
| # include <stdlib.h>
| #endif
| #ifdef HAVE_STRING_H
| # include <string.h>
| #endif
| #ifdef HAVE_INTTYPES_H
| # include <inttypes.h>
| #endif
| #ifdef HAVE_STDINT_H
| # include <stdint.h>
| #endif
| #ifdef HAVE_STRINGS_H
| # include <strings.h>
| #endif
| #ifdef HAVE_SYS_TYPES_H
| # include <sys/types.h>
| #endif
| #ifdef HAVE_SYS_STAT_H
| # include <sys/stat.h>
| #endif
| #ifdef HAVE_UNISTD_H
| # include <unistd.h>
| #endif
| #include <sys/mkdev.h>
configure:11592: result: no
configure:11598: checking for sys/mount.h
configure:11598: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 conftest.c >&5
configure:11598: $? = 0
configure:11598: result: yes
configure:11604: checking for sys/queue.h
configure:11604: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 conftest.c >&5
configure:11604: $? = 0
configure:11604: result: yes
configure:11611: checking for sys/param.h
configure:11611: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 conftest.c >&5
configure:11611: $? = 0
configure:11611: result: yes
configure:11617: checking for sys/poll.h
configure:11617: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 conftest.c >&5
configure:11617: $? = 0
configure:11617: result: yes
configure:11623: checking for sys/richacl.h
configure:11623: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 conftest.c >&5
conftest.c:108:10: fatal error: sys/richacl.h: No such file or directory
  108 | #include <sys/richacl.h>
      |          ^~~~~~~~~~~~~~~
compilation terminated.
configure:11623: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "libarchive"
| #define PACKAGE_TARNAME "libarchive"
| #define PACKAGE_VERSION "3.7.2"
| #define PACKAGE_STRING "libarchive 3.7.2"
| #define PACKAGE_BUGREPORT "libarchive-discuss@googlegroups.com"
| #define PACKAGE_URL ""
| #define PACKAGE "libarchive"
| #define VERSION "3.7.2"
| #define __LIBARCHIVE_CONFIG_H_INCLUDED 1
| #define LIBARCHIVE_VERSION_STRING "3.7.2"
| #define LIBARCHIVE_VERSION_NUMBER "3007002"
| #define BSDCPIO_VERSION_STRING "3.7.2"
| #define BSDTAR_VERSION_STRING "3.7.2"
| #define BSDCAT_VERSION_STRING "3.7.2"
| #define BSDUNZIP_VERSION_STRING "3.7.2"
| #define HAVE_STDIO_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_SYS_TIME_H 1
| #define STDC_HEADERS 1
| #define _ALL_SOURCE 1
| #define _DARWIN_C_SOURCE 1
| #define _GNU_SOURCE 1
| #define _HPUX_ALT_XOPEN_SOCKET_API 1
| #define _NETBSD_SOURCE 1
| #define _OPENBSD_SOURCE 1
| #define _POSIX_PTHREAD_SEMANTICS 1
| #define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1
| #define __STDC_WANT_IEC_60559_BFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_DFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1
| #define __STDC_WANT_IEC_60559_TYPES_EXT__ 1
| #define __STDC_WANT_LIB_EXT2__ 1
| #define __STDC_WANT_MATH_SPEC_FUNCS__ 1
| #define _TANDEM_SOURCE 1
| #define __EXTENSIONS__ 1
| #define HAVE_DLFCN_H 1
| #define LT_OBJDIR ".libs/"
| #define HAVE_DIRENT_H 1
| #define HAVE_SYS_WAIT_H 1
| #define HAVE_CTYPE_H 1
| #define HAVE_ERRNO_H 1
| #define HAVE_FCNTL_H 1
| #define HAVE_FNMATCH_H 1
| #define HAVE_GRP_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_LANGINFO_H 1
| #define HAVE_LIMITS_H 1
| #define HAVE_LINUX_FIEMAP_H 1
| #define HAVE_LINUX_FS_H 1
| #define HAVE_LINUX_MAGIC_H 1
| #define HAVE_LINUX_TYPES_H 1
| #define HAVE_WORKING_FS_IOC_GETFLAGS 1
| #define HAVE_LOCALE_H 1
| #define HAVE_PATHS_H 1
| #define HAVE_POLL_H 1
| #define HAVE_PTHREAD_H 1
| #define HAVE_PWD_H 1
| #define HAVE_SIGNAL_H 1
| #define HAVE_SPAWN_H 1
| #define HAVE_STDARG_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_SYS_CDEFS_H 1
| #define HAVE_SYS_IOCTL_H 1
| #define HAVE_SYS_MOUNT_H 1
| #define HAVE_SYS_QUEUE_H 1
| #define HAVE_SYS_PARAM_H 1
| #define HAVE_SYS_POLL_H 1
| /* end confdefs.h.  */
| #include <stddef.h>
| #ifdef HAVE_STDIO_H
| # include <stdio.h>
| #endif
| #ifdef HAVE_STDLIB_H
| # include <stdlib.h>
| #endif
| #ifdef HAVE_STRING_H
| # include <string.h>
| #endif
| #ifdef HAVE_INTTYPES_H
| # include <inttypes.h>
| #endif
| #ifdef HAVE_STDINT_H
| # include <stdint.h>
| #endif
| #ifdef HAVE_STRINGS_H
| # include <strings.h>
| #endif
| #ifdef HAVE_SYS_TYPES_H
| # include <sys/types.h>
| #endif
| #ifdef HAVE_SYS_STAT_H
| # include <sys/stat.h>
| #endif
| #ifdef HAVE_UNISTD_H
| # include <unistd.h>
| #endif
| #include <sys/richacl.h>
configure:11623: result: no
configure:11630: checking for sys/select.h
configure:11630: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 conftest.c >&5
configure:11630: $? = 0
configure:11630: result: yes
configure:11636: checking for sys/statfs.h
configure:11636: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 conftest.c >&5
configure:11636: $? = 0
configure:11636: result: yes
configure:11642: checking for sys/statvfs.h
configure:11642: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 conftest.c >&5
configure:11642: $? = 0
configure:11642: result: yes
configure:11648: checking for sys/sysmacros.h
configure:11648: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 conftest.c >&5
configure:11648: $? = 0
configure:11648: result: yes
configure:11655: checking for sys/time.h
configure:11655: result: yes
configure:11661: checking for sys/utime.h
configure:11661: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 conftest.c >&5
conftest.c:113:10: fatal error: sys/utime.h: No such file or directory
  113 | #include <sys/utime.h>
      |          ^~~~~~~~~~~~~
compilation terminated.
configure:11661: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "libarchive"
| #define PACKAGE_TARNAME "libarchive"
| #define PACKAGE_VERSION "3.7.2"
| #define PACKAGE_STRING "libarchive 3.7.2"
| #define PACKAGE_BUGREPORT "libarchive-discuss@googlegroups.com"
| #define PACKAGE_URL ""
| #define PACKAGE "libarchive"
| #define VERSION "3.7.2"
| #define __LIBARCHIVE_CONFIG_H_INCLUDED 1
| #define LIBARCHIVE_VERSION_STRING "3.7.2"
| #define LIBARCHIVE_VERSION_NUMBER "3007002"
| #define BSDCPIO_VERSION_STRING "3.7.2"
| #define BSDTAR_VERSION_STRING "3.7.2"
| #define BSDCAT_VERSION_STRING "3.7.2"
| #define BSDUNZIP_VERSION_STRING "3.7.2"
| #define HAVE_STDIO_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_SYS_TIME_H 1
| #define STDC_HEADERS 1
| #define _ALL_SOURCE 1
| #define _DARWIN_C_SOURCE 1
| #define _GNU_SOURCE 1
| #define _HPUX_ALT_XOPEN_SOCKET_API 1
| #define _NETBSD_SOURCE 1
| #define _OPENBSD_SOURCE 1
| #define _POSIX_PTHREAD_SEMANTICS 1
| #define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1
| #define __STDC_WANT_IEC_60559_BFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_DFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1
| #define __STDC_WANT_IEC_60559_TYPES_EXT__ 1
| #define __STDC_WANT_LIB_EXT2__ 1
| #define __STDC_WANT_MATH_SPEC_FUNCS__ 1
| #define _TANDEM_SOURCE 1
| #define __EXTENSIONS__ 1
| #define HAVE_DLFCN_H 1
| #define LT_OBJDIR ".libs/"
| #define HAVE_DIRENT_H 1
| #define HAVE_SYS_WAIT_H 1
| #define HAVE_CTYPE_H 1
| #define HAVE_ERRNO_H 1
| #define HAVE_FCNTL_H 1
| #define HAVE_FNMATCH_H 1
| #define HAVE_GRP_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_LANGINFO_H 1
| #define HAVE_LIMITS_H 1
| #define HAVE_LINUX_FIEMAP_H 1
| #define HAVE_LINUX_FS_H 1
| #define HAVE_LINUX_MAGIC_H 1
| #define HAVE_LINUX_TYPES_H 1
| #define HAVE_WORKING_FS_IOC_GETFLAGS 1
| #define HAVE_LOCALE_H 1
| #define HAVE_PATHS_H 1
| #define HAVE_POLL_H 1
| #define HAVE_PTHREAD_H 1
| #define HAVE_PWD_H 1
| #define HAVE_SIGNAL_H 1
| #define HAVE_SPAWN_H 1
| #define HAVE_STDARG_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_SYS_CDEFS_H 1
| #define HAVE_SYS_IOCTL_H 1
| #define HAVE_SYS_MOUNT_H 1
| #define HAVE_SYS_QUEUE_H 1
| #define HAVE_SYS_PARAM_H 1
| #define HAVE_SYS_POLL_H 1
| #define HAVE_SYS_SELECT_H 1
| #define HAVE_SYS_STATFS_H 1
| #define HAVE_SYS_STATVFS_H 1
| #define HAVE_SYS_SYSMACROS_H 1
| #define HAVE_SYS_TIME_H 1
| /* end confdefs.h.  */
| #include <stddef.h>
| #ifdef HAVE_STDIO_H
| # include <stdio.h>
| #endif
| #ifdef HAVE_STDLIB_H
| # include <stdlib.h>
| #endif
| #ifdef HAVE_STRING_H
| # include <string.h>
| #endif
| #ifdef HAVE_INTTYPES_H
| # include <inttypes.h>
| #endif
| #ifdef HAVE_STDINT_H
| # include <stdint.h>
| #endif
| #ifdef HAVE_STRINGS_H
| # include <strings.h>
| #endif
| #ifdef HAVE_SYS_TYPES_H
| # include <sys/types.h>
| #endif
| #ifdef HAVE_SYS_STAT_H
| # include <sys/stat.h>
| #endif
| #ifdef HAVE_UNISTD_H
| # include <unistd.h>
| #endif
| #include <sys/utime.h>
configure:11661: result: no
configure:11667: checking for sys/utsname.h
configure:11667: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 conftest.c >&5
configure:11667: $? = 0
configure:11667: result: yes
configure:11673: checking for sys/vfs.h
configure:11673: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 conftest.c >&5
configure:11673: $? = 0
configure:11673: result: yes
configure:11679: checking for sys/xattr.h
configure:11679: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 conftest.c >&5
configure:11679: $? = 0
configure:11679: result: yes
configure:11686: checking for time.h
configure:11686: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 conftest.c >&5
configure:11686: $? = 0
configure:11686: result: yes
configure:11692: checking for unistd.h
configure:11692: result: yes
configure:11698: checking for utime.h
configure:11698: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 conftest.c >&5
configure:11698: $? = 0
configure:11698: result: yes
configure:11704: checking for wchar.h
configure:11704: result: yes
configure:11710: checking for wctype.h
configure:11710: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 conftest.c >&5
configure:11710: $? = 0
configure:11710: result: yes
configure:11717: checking for windows.h
configure:11717: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 conftest.c >&5
conftest.c:121:10: fatal error: windows.h: No such file or directory
  121 | #include <windows.h>
      |          ^~~~~~~~~~~
compilation terminated.
configure:11717: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "libarchive"
| #define PACKAGE_TARNAME "libarchive"
| #define PACKAGE_VERSION "3.7.2"
| #define PACKAGE_STRING "libarchive 3.7.2"
| #define PACKAGE_BUGREPORT "libarchive-discuss@googlegroups.com"
| #define PACKAGE_URL ""
| #define PACKAGE "libarchive"
| #define VERSION "3.7.2"
| #define __LIBARCHIVE_CONFIG_H_INCLUDED 1
| #define LIBARCHIVE_VERSION_STRING "3.7.2"
| #define LIBARCHIVE_VERSION_NUMBER "3007002"
| #define BSDCPIO_VERSION_STRING "3.7.2"
| #define BSDTAR_VERSION_STRING "3.7.2"
| #define BSDCAT_VERSION_STRING "3.7.2"
| #define BSDUNZIP_VERSION_STRING "3.7.2"
| #define HAVE_STDIO_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_SYS_TIME_H 1
| #define STDC_HEADERS 1
| #define _ALL_SOURCE 1
| #define _DARWIN_C_SOURCE 1
| #define _GNU_SOURCE 1
| #define _HPUX_ALT_XOPEN_SOCKET_API 1
| #define _NETBSD_SOURCE 1
| #define _OPENBSD_SOURCE 1
| #define _POSIX_PTHREAD_SEMANTICS 1
| #define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1
| #define __STDC_WANT_IEC_60559_BFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_DFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1
| #define __STDC_WANT_IEC_60559_TYPES_EXT__ 1
| #define __STDC_WANT_LIB_EXT2__ 1
| #define __STDC_WANT_MATH_SPEC_FUNCS__ 1
| #define _TANDEM_SOURCE 1
| #define __EXTENSIONS__ 1
| #define HAVE_DLFCN_H 1
| #define LT_OBJDIR ".libs/"
| #define HAVE_DIRENT_H 1
| #define HAVE_SYS_WAIT_H 1
| #define HAVE_CTYPE_H 1
| #define HAVE_ERRNO_H 1
| #define HAVE_FCNTL_H 1
| #define HAVE_FNMATCH_H 1
| #define HAVE_GRP_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_LANGINFO_H 1
| #define HAVE_LIMITS_H 1
| #define HAVE_LINUX_FIEMAP_H 1
| #define HAVE_LINUX_FS_H 1
| #define HAVE_LINUX_MAGIC_H 1
| #define HAVE_LINUX_TYPES_H 1
| #define HAVE_WORKING_FS_IOC_GETFLAGS 1
| #define HAVE_LOCALE_H 1
| #define HAVE_PATHS_H 1
| #define HAVE_POLL_H 1
| #define HAVE_PTHREAD_H 1
| #define HAVE_PWD_H 1
| #define HAVE_SIGNAL_H 1
| #define HAVE_SPAWN_H 1
| #define HAVE_STDARG_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_SYS_CDEFS_H 1
| #define HAVE_SYS_IOCTL_H 1
| #define HAVE_SYS_MOUNT_H 1
| #define HAVE_SYS_QUEUE_H 1
| #define HAVE_SYS_PARAM_H 1
| #define HAVE_SYS_POLL_H 1
| #define HAVE_SYS_SELECT_H 1
| #define HAVE_SYS_STATFS_H 1
| #define HAVE_SYS_STATVFS_H 1
| #define HAVE_SYS_SYSMACROS_H 1
| #define HAVE_SYS_TIME_H 1
| #define HAVE_SYS_UTSNAME_H 1
| #define HAVE_SYS_VFS_H 1
| #define HAVE_SYS_XATTR_H 1
| #define HAVE_TIME_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_UTIME_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_WCTYPE_H 1
| /* end confdefs.h.  */
| #include <stddef.h>
| #ifdef HAVE_STDIO_H
| # include <stdio.h>
| #endif
| #ifdef HAVE_STDLIB_H
| # include <stdlib.h>
| #endif
| #ifdef HAVE_STRING_H
| # include <string.h>
| #endif
| #ifdef HAVE_INTTYPES_H
| # include <inttypes.h>
| #endif
| #ifdef HAVE_STDINT_H
| # include <stdint.h>
| #endif
| #ifdef HAVE_STRINGS_H
| # include <strings.h>
| #endif
| #ifdef HAVE_SYS_TYPES_H
| # include <sys/types.h>
| #endif
| #ifdef HAVE_SYS_STAT_H
| # include <sys/stat.h>
| #endif
| #ifdef HAVE_UNISTD_H
| # include <unistd.h>
| #endif
| #include <windows.h>
configure:11717: result: no
configure:11725: checking for wincrypt.h
configure:11725: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 conftest.c >&5
conftest.c:98:10: fatal error: wincrypt.h: No such file or directory
   98 | #include <wincrypt.h>
      |          ^~~~~~~~~~~~
compilation terminated.
configure:11725: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "libarchive"
| #define PACKAGE_TARNAME "libarchive"
| #define PACKAGE_VERSION "3.7.2"
| #define PACKAGE_STRING "libarchive 3.7.2"
| #define PACKAGE_BUGREPORT "libarchive-discuss@googlegroups.com"
| #define PACKAGE_URL ""
| #define PACKAGE "libarchive"
| #define VERSION "3.7.2"
| #define __LIBARCHIVE_CONFIG_H_INCLUDED 1
| #define LIBARCHIVE_VERSION_STRING "3.7.2"
| #define LIBARCHIVE_VERSION_NUMBER "3007002"
| #define BSDCPIO_VERSION_STRING "3.7.2"
| #define BSDTAR_VERSION_STRING "3.7.2"
| #define BSDCAT_VERSION_STRING "3.7.2"
| #define BSDUNZIP_VERSION_STRING "3.7.2"
| #define HAVE_STDIO_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_SYS_TIME_H 1
| #define STDC_HEADERS 1
| #define _ALL_SOURCE 1
| #define _DARWIN_C_SOURCE 1
| #define _GNU_SOURCE 1
| #define _HPUX_ALT_XOPEN_SOCKET_API 1
| #define _NETBSD_SOURCE 1
| #define _OPENBSD_SOURCE 1
| #define _POSIX_PTHREAD_SEMANTICS 1
| #define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1
| #define __STDC_WANT_IEC_60559_BFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_DFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1
| #define __STDC_WANT_IEC_60559_TYPES_EXT__ 1
| #define __STDC_WANT_LIB_EXT2__ 1
| #define __STDC_WANT_MATH_SPEC_FUNCS__ 1
| #define _TANDEM_SOURCE 1
| #define __EXTENSIONS__ 1
| #define HAVE_DLFCN_H 1
| #define LT_OBJDIR ".libs/"
| #define HAVE_DIRENT_H 1
| #define HAVE_SYS_WAIT_H 1
| #define HAVE_CTYPE_H 1
| #define HAVE_ERRNO_H 1
| #define HAVE_FCNTL_H 1
| #define HAVE_FNMATCH_H 1
| #define HAVE_GRP_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_LANGINFO_H 1
| #define HAVE_LIMITS_H 1
| #define HAVE_LINUX_FIEMAP_H 1
| #define HAVE_LINUX_FS_H 1
| #define HAVE_LINUX_MAGIC_H 1
| #define HAVE_LINUX_TYPES_H 1
| #define HAVE_WORKING_FS_IOC_GETFLAGS 1
| #define HAVE_LOCALE_H 1
| #define HAVE_PATHS_H 1
| #define HAVE_POLL_H 1
| #define HAVE_PTHREAD_H 1
| #define HAVE_PWD_H 1
| #define HAVE_SIGNAL_H 1
| #define HAVE_SPAWN_H 1
| #define HAVE_STDARG_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_SYS_CDEFS_H 1
| #define HAVE_SYS_IOCTL_H 1
| #define HAVE_SYS_MOUNT_H 1
| #define HAVE_SYS_QUEUE_H 1
| #define HAVE_SYS_PARAM_H 1
| #define HAVE_SYS_POLL_H 1
| #define HAVE_SYS_SELECT_H 1
| #define HAVE_SYS_STATFS_H 1
| #define HAVE_SYS_STATVFS_H 1
| #define HAVE_SYS_SYSMACROS_H 1
| #define HAVE_SYS_TIME_H 1
| #define HAVE_SYS_UTSNAME_H 1
| #define HAVE_SYS_VFS_H 1
| #define HAVE_SYS_XATTR_H 1
| #define HAVE_TIME_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_UTIME_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_WCTYPE_H 1
| /* end confdefs.h.  */
| #ifdef HAVE_WINDOWS_H
| # include <windows.h>
| #endif
| 
| 
| #include <wincrypt.h>
configure:11725: result: no
configure:11735: checking for winioctl.h
configure:11735: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 conftest.c >&5
conftest.c:98:10: fatal error: winioctl.h: No such file or directory
   98 | #include <winioctl.h>
      |          ^~~~~~~~~~~~
compilation terminated.
configure:11735: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "libarchive"
| #define PACKAGE_TARNAME "libarchive"
| #define PACKAGE_VERSION "3.7.2"
| #define PACKAGE_STRING "libarchive 3.7.2"
| #define PACKAGE_BUGREPORT "libarchive-discuss@googlegroups.com"
| #define PACKAGE_URL ""
| #define PACKAGE "libarchive"
| #define VERSION "3.7.2"
| #define __LIBARCHIVE_CONFIG_H_INCLUDED 1
| #define LIBARCHIVE_VERSION_STRING "3.7.2"
| #define LIBARCHIVE_VERSION_NUMBER "3007002"
| #define BSDCPIO_VERSION_STRING "3.7.2"
| #define BSDTAR_VERSION_STRING "3.7.2"
| #define BSDCAT_VERSION_STRING "3.7.2"
| #define BSDUNZIP_VERSION_STRING "3.7.2"
| #define HAVE_STDIO_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_SYS_TIME_H 1
| #define STDC_HEADERS 1
| #define _ALL_SOURCE 1
| #define _DARWIN_C_SOURCE 1
| #define _GNU_SOURCE 1
| #define _HPUX_ALT_XOPEN_SOCKET_API 1
| #define _NETBSD_SOURCE 1
| #define _OPENBSD_SOURCE 1
| #define _POSIX_PTHREAD_SEMANTICS 1
| #define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1
| #define __STDC_WANT_IEC_60559_BFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_DFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1
| #define __STDC_WANT_IEC_60559_TYPES_EXT__ 1
| #define __STDC_WANT_LIB_EXT2__ 1
| #define __STDC_WANT_MATH_SPEC_FUNCS__ 1
| #define _TANDEM_SOURCE 1
| #define __EXTENSIONS__ 1
| #define HAVE_DLFCN_H 1
| #define LT_OBJDIR ".libs/"
| #define HAVE_DIRENT_H 1
| #define HAVE_SYS_WAIT_H 1
| #define HAVE_CTYPE_H 1
| #define HAVE_ERRNO_H 1
| #define HAVE_FCNTL_H 1
| #define HAVE_FNMATCH_H 1
| #define HAVE_GRP_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_LANGINFO_H 1
| #define HAVE_LIMITS_H 1
| #define HAVE_LINUX_FIEMAP_H 1
| #define HAVE_LINUX_FS_H 1
| #define HAVE_LINUX_MAGIC_H 1
| #define HAVE_LINUX_TYPES_H 1
| #define HAVE_WORKING_FS_IOC_GETFLAGS 1
| #define HAVE_LOCALE_H 1
| #define HAVE_PATHS_H 1
| #define HAVE_POLL_H 1
| #define HAVE_PTHREAD_H 1
| #define HAVE_PWD_H 1
| #define HAVE_SIGNAL_H 1
| #define HAVE_SPAWN_H 1
| #define HAVE_STDARG_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_SYS_CDEFS_H 1
| #define HAVE_SYS_IOCTL_H 1
| #define HAVE_SYS_MOUNT_H 1
| #define HAVE_SYS_QUEUE_H 1
| #define HAVE_SYS_PARAM_H 1
| #define HAVE_SYS_POLL_H 1
| #define HAVE_SYS_SELECT_H 1
| #define HAVE_SYS_STATFS_H 1
| #define HAVE_SYS_STATVFS_H 1
| #define HAVE_SYS_SYSMACROS_H 1
| #define HAVE_SYS_TIME_H 1
| #define HAVE_SYS_UTSNAME_H 1
| #define HAVE_SYS_VFS_H 1
| #define HAVE_SYS_XATTR_H 1
| #define HAVE_TIME_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_UTIME_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_WCTYPE_H 1
| /* end confdefs.h.  */
| #ifdef HAVE_WINDOWS_H
| # include <windows.h>
| #endif
| 
| 
| #include <winioctl.h>
configure:11735: result: no
configure:11757: checking for zlib.h
configure:11757: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 conftest.c >&5
configure:11757: $? = 0
configure:11757: result: yes
configure:11764: checking for inflate in -lz
configure:11787: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -o conftest -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  conftest.c -lz   >&5
configure:11787: $? = 0
configure:11797: result: yes
configure:11911: checking for blake2.h
configure:11911: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 conftest.c >&5
conftest.c:123:10: fatal error: blake2.h: No such file or directory
  123 | #include <blake2.h>
      |          ^~~~~~~~~~
compilation terminated.
configure:11911: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "libarchive"
| #define PACKAGE_TARNAME "libarchive"
| #define PACKAGE_VERSION "3.7.2"
| #define PACKAGE_STRING "libarchive 3.7.2"
| #define PACKAGE_BUGREPORT "libarchive-discuss@googlegroups.com"
| #define PACKAGE_URL ""
| #define PACKAGE "libarchive"
| #define VERSION "3.7.2"
| #define __LIBARCHIVE_CONFIG_H_INCLUDED 1
| #define LIBARCHIVE_VERSION_STRING "3.7.2"
| #define LIBARCHIVE_VERSION_NUMBER "3007002"
| #define BSDCPIO_VERSION_STRING "3.7.2"
| #define BSDTAR_VERSION_STRING "3.7.2"
| #define BSDCAT_VERSION_STRING "3.7.2"
| #define BSDUNZIP_VERSION_STRING "3.7.2"
| #define HAVE_STDIO_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_SYS_TIME_H 1
| #define STDC_HEADERS 1
| #define _ALL_SOURCE 1
| #define _DARWIN_C_SOURCE 1
| #define _GNU_SOURCE 1
| #define _HPUX_ALT_XOPEN_SOCKET_API 1
| #define _NETBSD_SOURCE 1
| #define _OPENBSD_SOURCE 1
| #define _POSIX_PTHREAD_SEMANTICS 1
| #define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1
| #define __STDC_WANT_IEC_60559_BFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_DFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1
| #define __STDC_WANT_IEC_60559_TYPES_EXT__ 1
| #define __STDC_WANT_LIB_EXT2__ 1
| #define __STDC_WANT_MATH_SPEC_FUNCS__ 1
| #define _TANDEM_SOURCE 1
| #define __EXTENSIONS__ 1
| #define HAVE_DLFCN_H 1
| #define LT_OBJDIR ".libs/"
| #define HAVE_DIRENT_H 1
| #define HAVE_SYS_WAIT_H 1
| #define HAVE_CTYPE_H 1
| #define HAVE_ERRNO_H 1
| #define HAVE_FCNTL_H 1
| #define HAVE_FNMATCH_H 1
| #define HAVE_GRP_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_LANGINFO_H 1
| #define HAVE_LIMITS_H 1
| #define HAVE_LINUX_FIEMAP_H 1
| #define HAVE_LINUX_FS_H 1
| #define HAVE_LINUX_MAGIC_H 1
| #define HAVE_LINUX_TYPES_H 1
| #define HAVE_WORKING_FS_IOC_GETFLAGS 1
| #define HAVE_LOCALE_H 1
| #define HAVE_PATHS_H 1
| #define HAVE_POLL_H 1
| #define HAVE_PTHREAD_H 1
| #define HAVE_PWD_H 1
| #define HAVE_SIGNAL_H 1
| #define HAVE_SPAWN_H 1
| #define HAVE_STDARG_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_SYS_CDEFS_H 1
| #define HAVE_SYS_IOCTL_H 1
| #define HAVE_SYS_MOUNT_H 1
| #define HAVE_SYS_QUEUE_H 1
| #define HAVE_SYS_PARAM_H 1
| #define HAVE_SYS_POLL_H 1
| #define HAVE_SYS_SELECT_H 1
| #define HAVE_SYS_STATFS_H 1
| #define HAVE_SYS_STATVFS_H 1
| #define HAVE_SYS_SYSMACROS_H 1
| #define HAVE_SYS_TIME_H 1
| #define HAVE_SYS_UTSNAME_H 1
| #define HAVE_SYS_VFS_H 1
| #define HAVE_SYS_XATTR_H 1
| #define HAVE_TIME_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_UTIME_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_WCTYPE_H 1
| #define HAVE_ZLIB_H 1
| #define HAVE_LIBZ 1
| /* end confdefs.h.  */
| #include <stddef.h>
| #ifdef HAVE_STDIO_H
| # include <stdio.h>
| #endif
| #ifdef HAVE_STDLIB_H
| # include <stdlib.h>
| #endif
| #ifdef HAVE_STRING_H
| # include <string.h>
| #endif
| #ifdef HAVE_INTTYPES_H
| # include <inttypes.h>
| #endif
| #ifdef HAVE_STDINT_H
| # include <stdint.h>
| #endif
| #ifdef HAVE_STRINGS_H
| # include <strings.h>
| #endif
| #ifdef HAVE_SYS_TYPES_H
| # include <sys/types.h>
| #endif
| #ifdef HAVE_SYS_STAT_H
| # include <sys/stat.h>
| #endif
| #ifdef HAVE_UNISTD_H
| # include <unistd.h>
| #endif
| #include <blake2.h>
configure:11911: result: no
configure:11918: checking for blake2sp_init in -lb2
configure:11941: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -o conftest -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  conftest.c -lb2  -lz  >&5
/home/thomas/autobuild/instance-1/output-1/host/lib/gcc/nios2-buildroot-linux-gnu/13.2.0/../../../../nios2-buildroot-linux-gnu/bin/ld: cannot find -lb2: No such file or directory
collect2: error: ld returned 1 exit status
configure:11941: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "libarchive"
| #define PACKAGE_TARNAME "libarchive"
| #define PACKAGE_VERSION "3.7.2"
| #define PACKAGE_STRING "libarchive 3.7.2"
| #define PACKAGE_BUGREPORT "libarchive-discuss@googlegroups.com"
| #define PACKAGE_URL ""
| #define PACKAGE "libarchive"
| #define VERSION "3.7.2"
| #define __LIBARCHIVE_CONFIG_H_INCLUDED 1
| #define LIBARCHIVE_VERSION_STRING "3.7.2"
| #define LIBARCHIVE_VERSION_NUMBER "3007002"
| #define BSDCPIO_VERSION_STRING "3.7.2"
| #define BSDTAR_VERSION_STRING "3.7.2"
| #define BSDCAT_VERSION_STRING "3.7.2"
| #define BSDUNZIP_VERSION_STRING "3.7.2"
| #define HAVE_STDIO_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_SYS_TIME_H 1
| #define STDC_HEADERS 1
| #define _ALL_SOURCE 1
| #define _DARWIN_C_SOURCE 1
| #define _GNU_SOURCE 1
| #define _HPUX_ALT_XOPEN_SOCKET_API 1
| #define _NETBSD_SOURCE 1
| #define _OPENBSD_SOURCE 1
| #define _POSIX_PTHREAD_SEMANTICS 1
| #define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1
| #define __STDC_WANT_IEC_60559_BFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_DFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1
| #define __STDC_WANT_IEC_60559_TYPES_EXT__ 1
| #define __STDC_WANT_LIB_EXT2__ 1
| #define __STDC_WANT_MATH_SPEC_FUNCS__ 1
| #define _TANDEM_SOURCE 1
| #define __EXTENSIONS__ 1
| #define HAVE_DLFCN_H 1
| #define LT_OBJDIR ".libs/"
| #define HAVE_DIRENT_H 1
| #define HAVE_SYS_WAIT_H 1
| #define HAVE_CTYPE_H 1
| #define HAVE_ERRNO_H 1
| #define HAVE_FCNTL_H 1
| #define HAVE_FNMATCH_H 1
| #define HAVE_GRP_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_LANGINFO_H 1
| #define HAVE_LIMITS_H 1
| #define HAVE_LINUX_FIEMAP_H 1
| #define HAVE_LINUX_FS_H 1
| #define HAVE_LINUX_MAGIC_H 1
| #define HAVE_LINUX_TYPES_H 1
| #define HAVE_WORKING_FS_IOC_GETFLAGS 1
| #define HAVE_LOCALE_H 1
| #define HAVE_PATHS_H 1
| #define HAVE_POLL_H 1
| #define HAVE_PTHREAD_H 1
| #define HAVE_PWD_H 1
| #define HAVE_SIGNAL_H 1
| #define HAVE_SPAWN_H 1
| #define HAVE_STDARG_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_SYS_CDEFS_H 1
| #define HAVE_SYS_IOCTL_H 1
| #define HAVE_SYS_MOUNT_H 1
| #define HAVE_SYS_QUEUE_H 1
| #define HAVE_SYS_PARAM_H 1
| #define HAVE_SYS_POLL_H 1
| #define HAVE_SYS_SELECT_H 1
| #define HAVE_SYS_STATFS_H 1
| #define HAVE_SYS_STATVFS_H 1
| #define HAVE_SYS_SYSMACROS_H 1
| #define HAVE_SYS_TIME_H 1
| #define HAVE_SYS_UTSNAME_H 1
| #define HAVE_SYS_VFS_H 1
| #define HAVE_SYS_XATTR_H 1
| #define HAVE_TIME_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_UTIME_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_WCTYPE_H 1
| #define HAVE_ZLIB_H 1
| #define HAVE_LIBZ 1
| /* end confdefs.h.  */
| 
| /* Override any GCC internal prototype to avoid an error.
|    Use char because int might match the return type of a GCC
|    builtin and then its argument prototype would still apply.  */
| char blake2sp_init ();
| int
| main (void)
| {
| return blake2sp_init ();
|   ;
|   return 0;
| }
configure:11951: result: no
configure:12021: checking for ld used by GCC
configure:12086: result: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-ld
configure:12093: checking if the linker (/home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-ld) is GNU ld
configure:12107: result: yes
configure:12115: checking for shared library run path origin
configure:12129: result: done
configure:12711: checking for iconv
configure:12736: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -o conftest -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  conftest.c -lz  >&5
configure:12736: $? = 0
configure:12772: result: yes
configure:12775: checking for working iconv
configure:12919: result: guessing yes
configure:12947: checking for iconv declaration
configure:12977: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 conftest.c >&5
configure:12977: $? = 0
configure:12988: result:
         extern size_t iconv (iconv_t cd, char * *inbuf, size_t *inbytesleft, char * *outbuf, size_t *outbytesleft);
configure:12998: checking for iconv.h
configure:12998: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 conftest.c >&5
configure:12998: $? = 0
configure:12998: result: yes
configure:13007: checking for localcharset.h
configure:13007: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 conftest.c >&5
conftest.c:126:10: fatal error: localcharset.h: No such file or directory
  126 | #include <localcharset.h>
      |          ^~~~~~~~~~~~~~~~
compilation terminated.
configure:13007: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "libarchive"
| #define PACKAGE_TARNAME "libarchive"
| #define PACKAGE_VERSION "3.7.2"
| #define PACKAGE_STRING "libarchive 3.7.2"
| #define PACKAGE_BUGREPORT "libarchive-discuss@googlegroups.com"
| #define PACKAGE_URL ""
| #define PACKAGE "libarchive"
| #define VERSION "3.7.2"
| #define __LIBARCHIVE_CONFIG_H_INCLUDED 1
| #define LIBARCHIVE_VERSION_STRING "3.7.2"
| #define LIBARCHIVE_VERSION_NUMBER "3007002"
| #define BSDCPIO_VERSION_STRING "3.7.2"
| #define BSDTAR_VERSION_STRING "3.7.2"
| #define BSDCAT_VERSION_STRING "3.7.2"
| #define BSDUNZIP_VERSION_STRING "3.7.2"
| #define HAVE_STDIO_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_SYS_TIME_H 1
| #define STDC_HEADERS 1
| #define _ALL_SOURCE 1
| #define _DARWIN_C_SOURCE 1
| #define _GNU_SOURCE 1
| #define _HPUX_ALT_XOPEN_SOCKET_API 1
| #define _NETBSD_SOURCE 1
| #define _OPENBSD_SOURCE 1
| #define _POSIX_PTHREAD_SEMANTICS 1
| #define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1
| #define __STDC_WANT_IEC_60559_BFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_DFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1
| #define __STDC_WANT_IEC_60559_TYPES_EXT__ 1
| #define __STDC_WANT_LIB_EXT2__ 1
| #define __STDC_WANT_MATH_SPEC_FUNCS__ 1
| #define _TANDEM_SOURCE 1
| #define __EXTENSIONS__ 1
| #define HAVE_DLFCN_H 1
| #define LT_OBJDIR ".libs/"
| #define HAVE_DIRENT_H 1
| #define HAVE_SYS_WAIT_H 1
| #define HAVE_CTYPE_H 1
| #define HAVE_ERRNO_H 1
| #define HAVE_FCNTL_H 1
| #define HAVE_FNMATCH_H 1
| #define HAVE_GRP_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_LANGINFO_H 1
| #define HAVE_LIMITS_H 1
| #define HAVE_LINUX_FIEMAP_H 1
| #define HAVE_LINUX_FS_H 1
| #define HAVE_LINUX_MAGIC_H 1
| #define HAVE_LINUX_TYPES_H 1
| #define HAVE_WORKING_FS_IOC_GETFLAGS 1
| #define HAVE_LOCALE_H 1
| #define HAVE_PATHS_H 1
| #define HAVE_POLL_H 1
| #define HAVE_PTHREAD_H 1
| #define HAVE_PWD_H 1
| #define HAVE_SIGNAL_H 1
| #define HAVE_SPAWN_H 1
| #define HAVE_STDARG_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_SYS_CDEFS_H 1
| #define HAVE_SYS_IOCTL_H 1
| #define HAVE_SYS_MOUNT_H 1
| #define HAVE_SYS_QUEUE_H 1
| #define HAVE_SYS_PARAM_H 1
| #define HAVE_SYS_POLL_H 1
| #define HAVE_SYS_SELECT_H 1
| #define HAVE_SYS_STATFS_H 1
| #define HAVE_SYS_STATVFS_H 1
| #define HAVE_SYS_SYSMACROS_H 1
| #define HAVE_SYS_TIME_H 1
| #define HAVE_SYS_UTSNAME_H 1
| #define HAVE_SYS_VFS_H 1
| #define HAVE_SYS_XATTR_H 1
| #define HAVE_TIME_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_UTIME_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_WCTYPE_H 1
| #define HAVE_ZLIB_H 1
| #define HAVE_LIBZ 1
| #define HAVE_ICONV 1
| #define ICONV_CONST 
| #define HAVE_ICONV_H 1
| /* end confdefs.h.  */
| #include <stddef.h>
| #ifdef HAVE_STDIO_H
| # include <stdio.h>
| #endif
| #ifdef HAVE_STDLIB_H
| # include <stdlib.h>
| #endif
| #ifdef HAVE_STRING_H
| # include <string.h>
| #endif
| #ifdef HAVE_INTTYPES_H
| # include <inttypes.h>
| #endif
| #ifdef HAVE_STDINT_H
| # include <stdint.h>
| #endif
| #ifdef HAVE_STRINGS_H
| # include <strings.h>
| #endif
| #ifdef HAVE_SYS_TYPES_H
| # include <sys/types.h>
| #endif
| #ifdef HAVE_SYS_STAT_H
| # include <sys/stat.h>
| #endif
| #ifdef HAVE_UNISTD_H
| # include <unistd.h>
| #endif
| #include <localcharset.h>
configure:13007: result: no
configure:13019: checking for locale_charset
configure:13019: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -o conftest -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  conftest.c -lz   >&5
/home/thomas/autobuild/instance-1/output-1/host/lib/gcc/nios2-buildroot-linux-gnu/13.2.0/../../../../nios2-buildroot-linux-gnu/bin/ld: /tmp/ccIMV2vz.o: in function `main':
conftest.c:(.text.startup+0x8): undefined reference to `locale_charset'
collect2: error: ld returned 1 exit status
configure:13019: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "libarchive"
| #define PACKAGE_TARNAME "libarchive"
| #define PACKAGE_VERSION "3.7.2"
| #define PACKAGE_STRING "libarchive 3.7.2"
| #define PACKAGE_BUGREPORT "libarchive-discuss@googlegroups.com"
| #define PACKAGE_URL ""
| #define PACKAGE "libarchive"
| #define VERSION "3.7.2"
| #define __LIBARCHIVE_CONFIG_H_INCLUDED 1
| #define LIBARCHIVE_VERSION_STRING "3.7.2"
| #define LIBARCHIVE_VERSION_NUMBER "3007002"
| #define BSDCPIO_VERSION_STRING "3.7.2"
| #define BSDTAR_VERSION_STRING "3.7.2"
| #define BSDCAT_VERSION_STRING "3.7.2"
| #define BSDUNZIP_VERSION_STRING "3.7.2"
| #define HAVE_STDIO_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_SYS_TIME_H 1
| #define STDC_HEADERS 1
| #define _ALL_SOURCE 1
| #define _DARWIN_C_SOURCE 1
| #define _GNU_SOURCE 1
| #define _HPUX_ALT_XOPEN_SOCKET_API 1
| #define _NETBSD_SOURCE 1
| #define _OPENBSD_SOURCE 1
| #define _POSIX_PTHREAD_SEMANTICS 1
| #define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1
| #define __STDC_WANT_IEC_60559_BFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_DFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1
| #define __STDC_WANT_IEC_60559_TYPES_EXT__ 1
| #define __STDC_WANT_LIB_EXT2__ 1
| #define __STDC_WANT_MATH_SPEC_FUNCS__ 1
| #define _TANDEM_SOURCE 1
| #define __EXTENSIONS__ 1
| #define HAVE_DLFCN_H 1
| #define LT_OBJDIR ".libs/"
| #define HAVE_DIRENT_H 1
| #define HAVE_SYS_WAIT_H 1
| #define HAVE_CTYPE_H 1
| #define HAVE_ERRNO_H 1
| #define HAVE_FCNTL_H 1
| #define HAVE_FNMATCH_H 1
| #define HAVE_GRP_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_LANGINFO_H 1
| #define HAVE_LIMITS_H 1
| #define HAVE_LINUX_FIEMAP_H 1
| #define HAVE_LINUX_FS_H 1
| #define HAVE_LINUX_MAGIC_H 1
| #define HAVE_LINUX_TYPES_H 1
| #define HAVE_WORKING_FS_IOC_GETFLAGS 1
| #define HAVE_LOCALE_H 1
| #define HAVE_PATHS_H 1
| #define HAVE_POLL_H 1
| #define HAVE_PTHREAD_H 1
| #define HAVE_PWD_H 1
| #define HAVE_SIGNAL_H 1
| #define HAVE_SPAWN_H 1
| #define HAVE_STDARG_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_SYS_CDEFS_H 1
| #define HAVE_SYS_IOCTL_H 1
| #define HAVE_SYS_MOUNT_H 1
| #define HAVE_SYS_QUEUE_H 1
| #define HAVE_SYS_PARAM_H 1
| #define HAVE_SYS_POLL_H 1
| #define HAVE_SYS_SELECT_H 1
| #define HAVE_SYS_STATFS_H 1
| #define HAVE_SYS_STATVFS_H 1
| #define HAVE_SYS_SYSMACROS_H 1
| #define HAVE_SYS_TIME_H 1
| #define HAVE_SYS_UTSNAME_H 1
| #define HAVE_SYS_VFS_H 1
| #define HAVE_SYS_XATTR_H 1
| #define HAVE_TIME_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_UTIME_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_WCTYPE_H 1
| #define HAVE_ZLIB_H 1
| #define HAVE_LIBZ 1
| #define HAVE_ICONV 1
| #define ICONV_CONST 
| #define HAVE_ICONV_H 1
| /* end confdefs.h.  */
| /* Define locale_charset to an innocuous variant, in case <limits.h> declares locale_charset.
|    For example, HP-UX 11i <limits.h> declares gettimeofday.  */
| #define locale_charset innocuous_locale_charset
| 
| /* System header to define __stub macros and hopefully few prototypes,
|    which can conflict with char locale_charset (); below.  */
| 
| #include <limits.h>
| #undef locale_charset
| 
| /* Override any GCC internal prototype to avoid an error.
|    Use char because int might match the return type of a GCC
|    builtin and then its argument prototype would still apply.  */
| #ifdef __cplusplus
| extern "C"
| #endif
| char locale_charset ();
| /* The GNU C library defines this for functions which it implements
|     to always fail with ENOSYS.  Some functions are actually named
|     something starting with __ and the normal name is an alias.  */
| #if defined __stub_locale_charset || defined __stub___locale_charset
| choke me
| #endif
| 
| int
| main (void)
| {
| return locale_charset ();
|   ;
|   return 0;
| }
configure:13019: result: no
configure:13029: checking for locale_charset in -lcharset
configure:13052: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -o conftest -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  conftest.c -lcharset  -lz  >&5
/home/thomas/autobuild/instance-1/output-1/host/lib/gcc/nios2-buildroot-linux-gnu/13.2.0/../../../../nios2-buildroot-linux-gnu/bin/ld: cannot find -lcharset: No such file or directory
collect2: error: ld returned 1 exit status
configure:13052: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "libarchive"
| #define PACKAGE_TARNAME "libarchive"
| #define PACKAGE_VERSION "3.7.2"
| #define PACKAGE_STRING "libarchive 3.7.2"
| #define PACKAGE_BUGREPORT "libarchive-discuss@googlegroups.com"
| #define PACKAGE_URL ""
| #define PACKAGE "libarchive"
| #define VERSION "3.7.2"
| #define __LIBARCHIVE_CONFIG_H_INCLUDED 1
| #define LIBARCHIVE_VERSION_STRING "3.7.2"
| #define LIBARCHIVE_VERSION_NUMBER "3007002"
| #define BSDCPIO_VERSION_STRING "3.7.2"
| #define BSDTAR_VERSION_STRING "3.7.2"
| #define BSDCAT_VERSION_STRING "3.7.2"
| #define BSDUNZIP_VERSION_STRING "3.7.2"
| #define HAVE_STDIO_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_SYS_TIME_H 1
| #define STDC_HEADERS 1
| #define _ALL_SOURCE 1
| #define _DARWIN_C_SOURCE 1
| #define _GNU_SOURCE 1
| #define _HPUX_ALT_XOPEN_SOCKET_API 1
| #define _NETBSD_SOURCE 1
| #define _OPENBSD_SOURCE 1
| #define _POSIX_PTHREAD_SEMANTICS 1
| #define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1
| #define __STDC_WANT_IEC_60559_BFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_DFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1
| #define __STDC_WANT_IEC_60559_TYPES_EXT__ 1
| #define __STDC_WANT_LIB_EXT2__ 1
| #define __STDC_WANT_MATH_SPEC_FUNCS__ 1
| #define _TANDEM_SOURCE 1
| #define __EXTENSIONS__ 1
| #define HAVE_DLFCN_H 1
| #define LT_OBJDIR ".libs/"
| #define HAVE_DIRENT_H 1
| #define HAVE_SYS_WAIT_H 1
| #define HAVE_CTYPE_H 1
| #define HAVE_ERRNO_H 1
| #define HAVE_FCNTL_H 1
| #define HAVE_FNMATCH_H 1
| #define HAVE_GRP_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_LANGINFO_H 1
| #define HAVE_LIMITS_H 1
| #define HAVE_LINUX_FIEMAP_H 1
| #define HAVE_LINUX_FS_H 1
| #define HAVE_LINUX_MAGIC_H 1
| #define HAVE_LINUX_TYPES_H 1
| #define HAVE_WORKING_FS_IOC_GETFLAGS 1
| #define HAVE_LOCALE_H 1
| #define HAVE_PATHS_H 1
| #define HAVE_POLL_H 1
| #define HAVE_PTHREAD_H 1
| #define HAVE_PWD_H 1
| #define HAVE_SIGNAL_H 1
| #define HAVE_SPAWN_H 1
| #define HAVE_STDARG_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_SYS_CDEFS_H 1
| #define HAVE_SYS_IOCTL_H 1
| #define HAVE_SYS_MOUNT_H 1
| #define HAVE_SYS_QUEUE_H 1
| #define HAVE_SYS_PARAM_H 1
| #define HAVE_SYS_POLL_H 1
| #define HAVE_SYS_SELECT_H 1
| #define HAVE_SYS_STATFS_H 1
| #define HAVE_SYS_STATVFS_H 1
| #define HAVE_SYS_SYSMACROS_H 1
| #define HAVE_SYS_TIME_H 1
| #define HAVE_SYS_UTSNAME_H 1
| #define HAVE_SYS_VFS_H 1
| #define HAVE_SYS_XATTR_H 1
| #define HAVE_TIME_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_UTIME_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_WCTYPE_H 1
| #define HAVE_ZLIB_H 1
| #define HAVE_LIBZ 1
| #define HAVE_ICONV 1
| #define ICONV_CONST 
| #define HAVE_ICONV_H 1
| /* end confdefs.h.  */
| 
| /* Override any GCC internal prototype to avoid an error.
|    Use char because int might match the return type of a GCC
|    builtin and then its argument prototype would still apply.  */
| char locale_charset ();
| int
| main (void)
| {
| return locale_charset ();
|   ;
|   return 0;
| }
configure:13062: result: no
configure:13085: checking for lz4.h
configure:13085: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 conftest.c >&5
configure:13085: $? = 0
configure:13085: result: yes
configure:13091: checking for lz4hc.h
configure:13091: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 conftest.c >&5
configure:13091: $? = 0
configure:13091: result: yes
configure:13098: checking for LZ4_decompress_safe in -llz4
configure:13121: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -o conftest -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  conftest.c -llz4  -lz  >&5
configure:13121: $? = 0
configure:13131: result: yes
configure:13152: checking for zstd.h
configure:13152: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 conftest.c >&5
configure:13152: $? = 0
configure:13152: result: yes
configure:13159: checking for ZSTD_decompressStream in -lzstd
configure:13182: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -o conftest -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  conftest.c -lzstd  -llz4 -lz  >&5
configure:13182: $? = 0
configure:13192: result: yes
configure:13202: checking for ZSTD_compressStream in -lzstd
configure:13225: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -o conftest -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  conftest.c -lzstd  -lzstd -llz4 -lz  >&5
configure:13225: $? = 0
configure:13235: result: yes
configure:13621: checking pkg-config is at least version 0.9.0
configure:13624: result: yes
configure:13634: checking for libxml-2.0
configure:13641: $PKG_CONFIG --exists --print-errors "libxml-2.0"
configure:13644: $? = 0
configure:13658: $PKG_CONFIG --exists --print-errors "libxml-2.0"
configure:13661: $? = 0
configure:13787: result: yes
configure:13792: checking for xmlInitParser in -lxml2
configure:13815: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -o conftest -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2   conftest.c -lxml2  -lzstd -llz4 -lz  -L/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/lib -lxml2  >&5
configure:13815: $? = 0
configure:13825: result: yes
configure:13839: checking for libxml/xmlreader.h
configure:13839: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2  conftest.c >&5
configure:13839: $? = 0
configure:13839: result: yes
configure:13845: checking for libxml/xmlwriter.h
configure:13845: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2  conftest.c >&5
configure:13845: $? = 0
configure:13845: result: yes
configure:13919: checking for regex.h
configure:13919: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2  conftest.c >&5
configure:13919: $? = 0
configure:13919: result: yes
configure:13927: checking for regcomp
configure:13927: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -o conftest -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2   conftest.c -lzstd -llz4 -lz  -L/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/lib -lxml2  >&5
configure:13927: $? = 0
configure:13927: result: yes
configure:14187: checking whether C compiler accepts -Wall
configure:14207: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3  -Wall -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2  conftest.c >&5
configure:14207: $? = 0
configure:14217: result: yes
configure:14235: : CFLAGS="$CFLAGS"
configure:14238: $? = 0
configure:14187: checking whether C compiler accepts -Wformat
configure:14207: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall  -Wformat -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2  conftest.c >&5
configure:14207: $? = 0
configure:14217: result: yes
configure:14235: : CFLAGS="$CFLAGS"
configure:14238: $? = 0
configure:14187: checking whether C compiler accepts -Wformat-security
configure:14207: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat  -Wformat-security -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2  conftest.c >&5
configure:14207: $? = 0
configure:14217: result: yes
configure:14235: : CFLAGS="$CFLAGS"
configure:14238: $? = 0
configure:14265: checking whether ld supports --gc-sections
configure:14271: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -o conftest -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2   -Wl,--gc-sections conftest.c -lzstd -llz4 -lz  -L/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/lib -lxml2  >&5
conftest.c:107:13: warning: 'UnusedFunc' defined but not used [-Wunused-function]
  107 | static char UnusedFunc() { return 5; } int main() { return 0;}
      |             ^~~~~~~~~~
configure:14271: $? = 0
configure:14273: result: yes
configure:14282: checking whether C compiler accepts -ffunction-sections
configure:14302: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security  -ffunction-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2  conftest.c >&5
configure:14302: $? = 0
configure:14312: result: yes
configure:14330: : CFLAGS="$CFLAGS"
configure:14333: $? = 0
configure:14282: checking whether C compiler accepts -fdata-sections
configure:14302: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections  -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2  conftest.c >&5
configure:14302: $? = 0
configure:14312: result: yes
configure:14330: : CFLAGS="$CFLAGS"
configure:14333: $? = 0
configure:14367: checking for an ANSI C-conforming const
configure:14434: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2  conftest.c >&5
configure:14434: $? = 0
configure:14442: result: yes
configure:14452: checking for uid_t in sys/types.h
configure:14473: result: yes
configure:14488: checking for mode_t
configure:14488: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2  conftest.c >&5
configure:14488: $? = 0
configure:14488: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2  conftest.c >&5
conftest.c: In function 'main':
conftest.c:138:21: error: expected expression before ')' token
  138 | if (sizeof ((mode_t)))
      |                     ^
configure:14488: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "libarchive"
| #define PACKAGE_TARNAME "libarchive"
| #define PACKAGE_VERSION "3.7.2"
| #define PACKAGE_STRING "libarchive 3.7.2"
| #define PACKAGE_BUGREPORT "libarchive-discuss@googlegroups.com"
| #define PACKAGE_URL ""
| #define PACKAGE "libarchive"
| #define VERSION "3.7.2"
| #define __LIBARCHIVE_CONFIG_H_INCLUDED 1
| #define LIBARCHIVE_VERSION_STRING "3.7.2"
| #define LIBARCHIVE_VERSION_NUMBER "3007002"
| #define BSDCPIO_VERSION_STRING "3.7.2"
| #define BSDTAR_VERSION_STRING "3.7.2"
| #define BSDCAT_VERSION_STRING "3.7.2"
| #define BSDUNZIP_VERSION_STRING "3.7.2"
| #define HAVE_STDIO_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_SYS_TIME_H 1
| #define STDC_HEADERS 1
| #define _ALL_SOURCE 1
| #define _DARWIN_C_SOURCE 1
| #define _GNU_SOURCE 1
| #define _HPUX_ALT_XOPEN_SOCKET_API 1
| #define _NETBSD_SOURCE 1
| #define _OPENBSD_SOURCE 1
| #define _POSIX_PTHREAD_SEMANTICS 1
| #define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1
| #define __STDC_WANT_IEC_60559_BFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_DFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1
| #define __STDC_WANT_IEC_60559_TYPES_EXT__ 1
| #define __STDC_WANT_LIB_EXT2__ 1
| #define __STDC_WANT_MATH_SPEC_FUNCS__ 1
| #define _TANDEM_SOURCE 1
| #define __EXTENSIONS__ 1
| #define HAVE_DLFCN_H 1
| #define LT_OBJDIR ".libs/"
| #define HAVE_DIRENT_H 1
| #define HAVE_SYS_WAIT_H 1
| #define HAVE_CTYPE_H 1
| #define HAVE_ERRNO_H 1
| #define HAVE_FCNTL_H 1
| #define HAVE_FNMATCH_H 1
| #define HAVE_GRP_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_LANGINFO_H 1
| #define HAVE_LIMITS_H 1
| #define HAVE_LINUX_FIEMAP_H 1
| #define HAVE_LINUX_FS_H 1
| #define HAVE_LINUX_MAGIC_H 1
| #define HAVE_LINUX_TYPES_H 1
| #define HAVE_WORKING_FS_IOC_GETFLAGS 1
| #define HAVE_LOCALE_H 1
| #define HAVE_PATHS_H 1
| #define HAVE_POLL_H 1
| #define HAVE_PTHREAD_H 1
| #define HAVE_PWD_H 1
| #define HAVE_SIGNAL_H 1
| #define HAVE_SPAWN_H 1
| #define HAVE_STDARG_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_SYS_CDEFS_H 1
| #define HAVE_SYS_IOCTL_H 1
| #define HAVE_SYS_MOUNT_H 1
| #define HAVE_SYS_QUEUE_H 1
| #define HAVE_SYS_PARAM_H 1
| #define HAVE_SYS_POLL_H 1
| #define HAVE_SYS_SELECT_H 1
| #define HAVE_SYS_STATFS_H 1
| #define HAVE_SYS_STATVFS_H 1
| #define HAVE_SYS_SYSMACROS_H 1
| #define HAVE_SYS_TIME_H 1
| #define HAVE_SYS_UTSNAME_H 1
| #define HAVE_SYS_VFS_H 1
| #define HAVE_SYS_XATTR_H 1
| #define HAVE_TIME_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_UTIME_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_WCTYPE_H 1
| #define HAVE_ZLIB_H 1
| #define HAVE_LIBZ 1
| #define HAVE_ICONV 1
| #define ICONV_CONST 
| #define HAVE_ICONV_H 1
| #define HAVE_LZ4_H 1
| #define HAVE_LZ4HC_H 1
| #define HAVE_LIBLZ4 1
| #define HAVE_ZSTD_H 1
| #define HAVE_LIBZSTD 1
| #define HAVE_LIBZSTD_COMPRESSOR 1
| #define HAVE_LIBXML_XMLREADER_H 1
| #define HAVE_LIBXML_XMLWRITER_H 1
| #define HAVE_REGEX_H 1
| /* end confdefs.h.  */
| #include <stddef.h>
| #ifdef HAVE_STDIO_H
| # include <stdio.h>
| #endif
| #ifdef HAVE_STDLIB_H
| # include <stdlib.h>
| #endif
| #ifdef HAVE_STRING_H
| # include <string.h>
| #endif
| #ifdef HAVE_INTTYPES_H
| # include <inttypes.h>
| #endif
| #ifdef HAVE_STDINT_H
| # include <stdint.h>
| #endif
| #ifdef HAVE_STRINGS_H
| # include <strings.h>
| #endif
| #ifdef HAVE_SYS_TYPES_H
| # include <sys/types.h>
| #endif
| #ifdef HAVE_SYS_STAT_H
| # include <sys/stat.h>
| #endif
| #ifdef HAVE_UNISTD_H
| # include <unistd.h>
| #endif
| int
| main (void)
| {
| if (sizeof ((mode_t)))
| 	    return 0;
|   ;
|   return 0;
| }
configure:14488: result: yes
configure:14500: checking for off_t
configure:14500: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2  conftest.c >&5
configure:14500: $? = 0
configure:14500: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2  conftest.c >&5
conftest.c: In function 'main':
conftest.c:138:20: error: expected expression before ')' token
  138 | if (sizeof ((off_t)))
      |                    ^
configure:14500: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "libarchive"
| #define PACKAGE_TARNAME "libarchive"
| #define PACKAGE_VERSION "3.7.2"
| #define PACKAGE_STRING "libarchive 3.7.2"
| #define PACKAGE_BUGREPORT "libarchive-discuss@googlegroups.com"
| #define PACKAGE_URL ""
| #define PACKAGE "libarchive"
| #define VERSION "3.7.2"
| #define __LIBARCHIVE_CONFIG_H_INCLUDED 1
| #define LIBARCHIVE_VERSION_STRING "3.7.2"
| #define LIBARCHIVE_VERSION_NUMBER "3007002"
| #define BSDCPIO_VERSION_STRING "3.7.2"
| #define BSDTAR_VERSION_STRING "3.7.2"
| #define BSDCAT_VERSION_STRING "3.7.2"
| #define BSDUNZIP_VERSION_STRING "3.7.2"
| #define HAVE_STDIO_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_SYS_TIME_H 1
| #define STDC_HEADERS 1
| #define _ALL_SOURCE 1
| #define _DARWIN_C_SOURCE 1
| #define _GNU_SOURCE 1
| #define _HPUX_ALT_XOPEN_SOCKET_API 1
| #define _NETBSD_SOURCE 1
| #define _OPENBSD_SOURCE 1
| #define _POSIX_PTHREAD_SEMANTICS 1
| #define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1
| #define __STDC_WANT_IEC_60559_BFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_DFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1
| #define __STDC_WANT_IEC_60559_TYPES_EXT__ 1
| #define __STDC_WANT_LIB_EXT2__ 1
| #define __STDC_WANT_MATH_SPEC_FUNCS__ 1
| #define _TANDEM_SOURCE 1
| #define __EXTENSIONS__ 1
| #define HAVE_DLFCN_H 1
| #define LT_OBJDIR ".libs/"
| #define HAVE_DIRENT_H 1
| #define HAVE_SYS_WAIT_H 1
| #define HAVE_CTYPE_H 1
| #define HAVE_ERRNO_H 1
| #define HAVE_FCNTL_H 1
| #define HAVE_FNMATCH_H 1
| #define HAVE_GRP_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_LANGINFO_H 1
| #define HAVE_LIMITS_H 1
| #define HAVE_LINUX_FIEMAP_H 1
| #define HAVE_LINUX_FS_H 1
| #define HAVE_LINUX_MAGIC_H 1
| #define HAVE_LINUX_TYPES_H 1
| #define HAVE_WORKING_FS_IOC_GETFLAGS 1
| #define HAVE_LOCALE_H 1
| #define HAVE_PATHS_H 1
| #define HAVE_POLL_H 1
| #define HAVE_PTHREAD_H 1
| #define HAVE_PWD_H 1
| #define HAVE_SIGNAL_H 1
| #define HAVE_SPAWN_H 1
| #define HAVE_STDARG_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_SYS_CDEFS_H 1
| #define HAVE_SYS_IOCTL_H 1
| #define HAVE_SYS_MOUNT_H 1
| #define HAVE_SYS_QUEUE_H 1
| #define HAVE_SYS_PARAM_H 1
| #define HAVE_SYS_POLL_H 1
| #define HAVE_SYS_SELECT_H 1
| #define HAVE_SYS_STATFS_H 1
| #define HAVE_SYS_STATVFS_H 1
| #define HAVE_SYS_SYSMACROS_H 1
| #define HAVE_SYS_TIME_H 1
| #define HAVE_SYS_UTSNAME_H 1
| #define HAVE_SYS_VFS_H 1
| #define HAVE_SYS_XATTR_H 1
| #define HAVE_TIME_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_UTIME_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_WCTYPE_H 1
| #define HAVE_ZLIB_H 1
| #define HAVE_LIBZ 1
| #define HAVE_ICONV 1
| #define ICONV_CONST 
| #define HAVE_ICONV_H 1
| #define HAVE_LZ4_H 1
| #define HAVE_LZ4HC_H 1
| #define HAVE_LIBLZ4 1
| #define HAVE_ZSTD_H 1
| #define HAVE_LIBZSTD 1
| #define HAVE_LIBZSTD_COMPRESSOR 1
| #define HAVE_LIBXML_XMLREADER_H 1
| #define HAVE_LIBXML_XMLWRITER_H 1
| #define HAVE_REGEX_H 1
| /* end confdefs.h.  */
| #include <stddef.h>
| #ifdef HAVE_STDIO_H
| # include <stdio.h>
| #endif
| #ifdef HAVE_STDLIB_H
| # include <stdlib.h>
| #endif
| #ifdef HAVE_STRING_H
| # include <string.h>
| #endif
| #ifdef HAVE_INTTYPES_H
| # include <inttypes.h>
| #endif
| #ifdef HAVE_STDINT_H
| # include <stdint.h>
| #endif
| #ifdef HAVE_STRINGS_H
| # include <strings.h>
| #endif
| #ifdef HAVE_SYS_TYPES_H
| # include <sys/types.h>
| #endif
| #ifdef HAVE_SYS_STAT_H
| # include <sys/stat.h>
| #endif
| #ifdef HAVE_UNISTD_H
| # include <unistd.h>
| #endif
| int
| main (void)
| {
| if (sizeof ((off_t)))
| 	    return 0;
|   ;
|   return 0;
| }
configure:14500: result: yes
configure:14510: checking for size_t
configure:14510: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2  conftest.c >&5
configure:14510: $? = 0
configure:14510: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2  conftest.c >&5
conftest.c: In function 'main':
conftest.c:138:21: error: expected expression before ')' token
  138 | if (sizeof ((size_t)))
      |                     ^
configure:14510: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "libarchive"
| #define PACKAGE_TARNAME "libarchive"
| #define PACKAGE_VERSION "3.7.2"
| #define PACKAGE_STRING "libarchive 3.7.2"
| #define PACKAGE_BUGREPORT "libarchive-discuss@googlegroups.com"
| #define PACKAGE_URL ""
| #define PACKAGE "libarchive"
| #define VERSION "3.7.2"
| #define __LIBARCHIVE_CONFIG_H_INCLUDED 1
| #define LIBARCHIVE_VERSION_STRING "3.7.2"
| #define LIBARCHIVE_VERSION_NUMBER "3007002"
| #define BSDCPIO_VERSION_STRING "3.7.2"
| #define BSDTAR_VERSION_STRING "3.7.2"
| #define BSDCAT_VERSION_STRING "3.7.2"
| #define BSDUNZIP_VERSION_STRING "3.7.2"
| #define HAVE_STDIO_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_SYS_TIME_H 1
| #define STDC_HEADERS 1
| #define _ALL_SOURCE 1
| #define _DARWIN_C_SOURCE 1
| #define _GNU_SOURCE 1
| #define _HPUX_ALT_XOPEN_SOCKET_API 1
| #define _NETBSD_SOURCE 1
| #define _OPENBSD_SOURCE 1
| #define _POSIX_PTHREAD_SEMANTICS 1
| #define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1
| #define __STDC_WANT_IEC_60559_BFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_DFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1
| #define __STDC_WANT_IEC_60559_TYPES_EXT__ 1
| #define __STDC_WANT_LIB_EXT2__ 1
| #define __STDC_WANT_MATH_SPEC_FUNCS__ 1
| #define _TANDEM_SOURCE 1
| #define __EXTENSIONS__ 1
| #define HAVE_DLFCN_H 1
| #define LT_OBJDIR ".libs/"
| #define HAVE_DIRENT_H 1
| #define HAVE_SYS_WAIT_H 1
| #define HAVE_CTYPE_H 1
| #define HAVE_ERRNO_H 1
| #define HAVE_FCNTL_H 1
| #define HAVE_FNMATCH_H 1
| #define HAVE_GRP_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_LANGINFO_H 1
| #define HAVE_LIMITS_H 1
| #define HAVE_LINUX_FIEMAP_H 1
| #define HAVE_LINUX_FS_H 1
| #define HAVE_LINUX_MAGIC_H 1
| #define HAVE_LINUX_TYPES_H 1
| #define HAVE_WORKING_FS_IOC_GETFLAGS 1
| #define HAVE_LOCALE_H 1
| #define HAVE_PATHS_H 1
| #define HAVE_POLL_H 1
| #define HAVE_PTHREAD_H 1
| #define HAVE_PWD_H 1
| #define HAVE_SIGNAL_H 1
| #define HAVE_SPAWN_H 1
| #define HAVE_STDARG_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_SYS_CDEFS_H 1
| #define HAVE_SYS_IOCTL_H 1
| #define HAVE_SYS_MOUNT_H 1
| #define HAVE_SYS_QUEUE_H 1
| #define HAVE_SYS_PARAM_H 1
| #define HAVE_SYS_POLL_H 1
| #define HAVE_SYS_SELECT_H 1
| #define HAVE_SYS_STATFS_H 1
| #define HAVE_SYS_STATVFS_H 1
| #define HAVE_SYS_SYSMACROS_H 1
| #define HAVE_SYS_TIME_H 1
| #define HAVE_SYS_UTSNAME_H 1
| #define HAVE_SYS_VFS_H 1
| #define HAVE_SYS_XATTR_H 1
| #define HAVE_TIME_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_UTIME_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_WCTYPE_H 1
| #define HAVE_ZLIB_H 1
| #define HAVE_LIBZ 1
| #define HAVE_ICONV 1
| #define ICONV_CONST 
| #define HAVE_ICONV_H 1
| #define HAVE_LZ4_H 1
| #define HAVE_LZ4HC_H 1
| #define HAVE_LIBLZ4 1
| #define HAVE_ZSTD_H 1
| #define HAVE_LIBZSTD 1
| #define HAVE_LIBZSTD_COMPRESSOR 1
| #define HAVE_LIBXML_XMLREADER_H 1
| #define HAVE_LIBXML_XMLWRITER_H 1
| #define HAVE_REGEX_H 1
| /* end confdefs.h.  */
| #include <stddef.h>
| #ifdef HAVE_STDIO_H
| # include <stdio.h>
| #endif
| #ifdef HAVE_STDLIB_H
| # include <stdlib.h>
| #endif
| #ifdef HAVE_STRING_H
| # include <string.h>
| #endif
| #ifdef HAVE_INTTYPES_H
| # include <inttypes.h>
| #endif
| #ifdef HAVE_STDINT_H
| # include <stdint.h>
| #endif
| #ifdef HAVE_STRINGS_H
| # include <strings.h>
| #endif
| #ifdef HAVE_SYS_TYPES_H
| # include <sys/types.h>
| #endif
| #ifdef HAVE_SYS_STAT_H
| # include <sys/stat.h>
| #endif
| #ifdef HAVE_UNISTD_H
| # include <unistd.h>
| #endif
| int
| main (void)
| {
| if (sizeof ((size_t)))
| 	    return 0;
|   ;
|   return 0;
| }
configure:14510: result: yes
configure:14520: checking for id_t
configure:14520: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2  conftest.c >&5
configure:14520: $? = 0
configure:14520: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2  conftest.c >&5
conftest.c: In function 'main':
conftest.c:138:19: error: expected expression before ')' token
  138 | if (sizeof ((id_t)))
      |                   ^
configure:14520: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "libarchive"
| #define PACKAGE_TARNAME "libarchive"
| #define PACKAGE_VERSION "3.7.2"
| #define PACKAGE_STRING "libarchive 3.7.2"
| #define PACKAGE_BUGREPORT "libarchive-discuss@googlegroups.com"
| #define PACKAGE_URL ""
| #define PACKAGE "libarchive"
| #define VERSION "3.7.2"
| #define __LIBARCHIVE_CONFIG_H_INCLUDED 1
| #define LIBARCHIVE_VERSION_STRING "3.7.2"
| #define LIBARCHIVE_VERSION_NUMBER "3007002"
| #define BSDCPIO_VERSION_STRING "3.7.2"
| #define BSDTAR_VERSION_STRING "3.7.2"
| #define BSDCAT_VERSION_STRING "3.7.2"
| #define BSDUNZIP_VERSION_STRING "3.7.2"
| #define HAVE_STDIO_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_SYS_TIME_H 1
| #define STDC_HEADERS 1
| #define _ALL_SOURCE 1
| #define _DARWIN_C_SOURCE 1
| #define _GNU_SOURCE 1
| #define _HPUX_ALT_XOPEN_SOCKET_API 1
| #define _NETBSD_SOURCE 1
| #define _OPENBSD_SOURCE 1
| #define _POSIX_PTHREAD_SEMANTICS 1
| #define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1
| #define __STDC_WANT_IEC_60559_BFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_DFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1
| #define __STDC_WANT_IEC_60559_TYPES_EXT__ 1
| #define __STDC_WANT_LIB_EXT2__ 1
| #define __STDC_WANT_MATH_SPEC_FUNCS__ 1
| #define _TANDEM_SOURCE 1
| #define __EXTENSIONS__ 1
| #define HAVE_DLFCN_H 1
| #define LT_OBJDIR ".libs/"
| #define HAVE_DIRENT_H 1
| #define HAVE_SYS_WAIT_H 1
| #define HAVE_CTYPE_H 1
| #define HAVE_ERRNO_H 1
| #define HAVE_FCNTL_H 1
| #define HAVE_FNMATCH_H 1
| #define HAVE_GRP_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_LANGINFO_H 1
| #define HAVE_LIMITS_H 1
| #define HAVE_LINUX_FIEMAP_H 1
| #define HAVE_LINUX_FS_H 1
| #define HAVE_LINUX_MAGIC_H 1
| #define HAVE_LINUX_TYPES_H 1
| #define HAVE_WORKING_FS_IOC_GETFLAGS 1
| #define HAVE_LOCALE_H 1
| #define HAVE_PATHS_H 1
| #define HAVE_POLL_H 1
| #define HAVE_PTHREAD_H 1
| #define HAVE_PWD_H 1
| #define HAVE_SIGNAL_H 1
| #define HAVE_SPAWN_H 1
| #define HAVE_STDARG_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_SYS_CDEFS_H 1
| #define HAVE_SYS_IOCTL_H 1
| #define HAVE_SYS_MOUNT_H 1
| #define HAVE_SYS_QUEUE_H 1
| #define HAVE_SYS_PARAM_H 1
| #define HAVE_SYS_POLL_H 1
| #define HAVE_SYS_SELECT_H 1
| #define HAVE_SYS_STATFS_H 1
| #define HAVE_SYS_STATVFS_H 1
| #define HAVE_SYS_SYSMACROS_H 1
| #define HAVE_SYS_TIME_H 1
| #define HAVE_SYS_UTSNAME_H 1
| #define HAVE_SYS_VFS_H 1
| #define HAVE_SYS_XATTR_H 1
| #define HAVE_TIME_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_UTIME_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_WCTYPE_H 1
| #define HAVE_ZLIB_H 1
| #define HAVE_LIBZ 1
| #define HAVE_ICONV 1
| #define ICONV_CONST 
| #define HAVE_ICONV_H 1
| #define HAVE_LZ4_H 1
| #define HAVE_LZ4HC_H 1
| #define HAVE_LIBLZ4 1
| #define HAVE_ZSTD_H 1
| #define HAVE_LIBZSTD 1
| #define HAVE_LIBZSTD_COMPRESSOR 1
| #define HAVE_LIBXML_XMLREADER_H 1
| #define HAVE_LIBXML_XMLWRITER_H 1
| #define HAVE_REGEX_H 1
| /* end confdefs.h.  */
| #include <stddef.h>
| #ifdef HAVE_STDIO_H
| # include <stdio.h>
| #endif
| #ifdef HAVE_STDLIB_H
| # include <stdlib.h>
| #endif
| #ifdef HAVE_STRING_H
| # include <string.h>
| #endif
| #ifdef HAVE_INTTYPES_H
| # include <inttypes.h>
| #endif
| #ifdef HAVE_STDINT_H
| # include <stdint.h>
| #endif
| #ifdef HAVE_STRINGS_H
| # include <strings.h>
| #endif
| #ifdef HAVE_SYS_TYPES_H
| # include <sys/types.h>
| #endif
| #ifdef HAVE_SYS_STAT_H
| # include <sys/stat.h>
| #endif
| #ifdef HAVE_UNISTD_H
| # include <unistd.h>
| #endif
| int
| main (void)
| {
| if (sizeof ((id_t)))
| 	    return 0;
|   ;
|   return 0;
| }
configure:14520: result: yes
configure:14530: checking for uintptr_t
configure:14530: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2  conftest.c >&5
configure:14530: $? = 0
configure:14530: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2  conftest.c >&5
conftest.c: In function 'main':
conftest.c:138:24: error: expected expression before ')' token
  138 | if (sizeof ((uintptr_t)))
      |                        ^
configure:14530: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "libarchive"
| #define PACKAGE_TARNAME "libarchive"
| #define PACKAGE_VERSION "3.7.2"
| #define PACKAGE_STRING "libarchive 3.7.2"
| #define PACKAGE_BUGREPORT "libarchive-discuss@googlegroups.com"
| #define PACKAGE_URL ""
| #define PACKAGE "libarchive"
| #define VERSION "3.7.2"
| #define __LIBARCHIVE_CONFIG_H_INCLUDED 1
| #define LIBARCHIVE_VERSION_STRING "3.7.2"
| #define LIBARCHIVE_VERSION_NUMBER "3007002"
| #define BSDCPIO_VERSION_STRING "3.7.2"
| #define BSDTAR_VERSION_STRING "3.7.2"
| #define BSDCAT_VERSION_STRING "3.7.2"
| #define BSDUNZIP_VERSION_STRING "3.7.2"
| #define HAVE_STDIO_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_SYS_TIME_H 1
| #define STDC_HEADERS 1
| #define _ALL_SOURCE 1
| #define _DARWIN_C_SOURCE 1
| #define _GNU_SOURCE 1
| #define _HPUX_ALT_XOPEN_SOCKET_API 1
| #define _NETBSD_SOURCE 1
| #define _OPENBSD_SOURCE 1
| #define _POSIX_PTHREAD_SEMANTICS 1
| #define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1
| #define __STDC_WANT_IEC_60559_BFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_DFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1
| #define __STDC_WANT_IEC_60559_TYPES_EXT__ 1
| #define __STDC_WANT_LIB_EXT2__ 1
| #define __STDC_WANT_MATH_SPEC_FUNCS__ 1
| #define _TANDEM_SOURCE 1
| #define __EXTENSIONS__ 1
| #define HAVE_DLFCN_H 1
| #define LT_OBJDIR ".libs/"
| #define HAVE_DIRENT_H 1
| #define HAVE_SYS_WAIT_H 1
| #define HAVE_CTYPE_H 1
| #define HAVE_ERRNO_H 1
| #define HAVE_FCNTL_H 1
| #define HAVE_FNMATCH_H 1
| #define HAVE_GRP_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_LANGINFO_H 1
| #define HAVE_LIMITS_H 1
| #define HAVE_LINUX_FIEMAP_H 1
| #define HAVE_LINUX_FS_H 1
| #define HAVE_LINUX_MAGIC_H 1
| #define HAVE_LINUX_TYPES_H 1
| #define HAVE_WORKING_FS_IOC_GETFLAGS 1
| #define HAVE_LOCALE_H 1
| #define HAVE_PATHS_H 1
| #define HAVE_POLL_H 1
| #define HAVE_PTHREAD_H 1
| #define HAVE_PWD_H 1
| #define HAVE_SIGNAL_H 1
| #define HAVE_SPAWN_H 1
| #define HAVE_STDARG_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_SYS_CDEFS_H 1
| #define HAVE_SYS_IOCTL_H 1
| #define HAVE_SYS_MOUNT_H 1
| #define HAVE_SYS_QUEUE_H 1
| #define HAVE_SYS_PARAM_H 1
| #define HAVE_SYS_POLL_H 1
| #define HAVE_SYS_SELECT_H 1
| #define HAVE_SYS_STATFS_H 1
| #define HAVE_SYS_STATVFS_H 1
| #define HAVE_SYS_SYSMACROS_H 1
| #define HAVE_SYS_TIME_H 1
| #define HAVE_SYS_UTSNAME_H 1
| #define HAVE_SYS_VFS_H 1
| #define HAVE_SYS_XATTR_H 1
| #define HAVE_TIME_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_UTIME_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_WCTYPE_H 1
| #define HAVE_ZLIB_H 1
| #define HAVE_LIBZ 1
| #define HAVE_ICONV 1
| #define ICONV_CONST 
| #define HAVE_ICONV_H 1
| #define HAVE_LZ4_H 1
| #define HAVE_LZ4HC_H 1
| #define HAVE_LIBLZ4 1
| #define HAVE_ZSTD_H 1
| #define HAVE_LIBZSTD 1
| #define HAVE_LIBZSTD_COMPRESSOR 1
| #define HAVE_LIBXML_XMLREADER_H 1
| #define HAVE_LIBXML_XMLWRITER_H 1
| #define HAVE_REGEX_H 1
| /* end confdefs.h.  */
| #include <stddef.h>
| #ifdef HAVE_STDIO_H
| # include <stdio.h>
| #endif
| #ifdef HAVE_STDLIB_H
| # include <stdlib.h>
| #endif
| #ifdef HAVE_STRING_H
| # include <string.h>
| #endif
| #ifdef HAVE_INTTYPES_H
| # include <inttypes.h>
| #endif
| #ifdef HAVE_STDINT_H
| # include <stdint.h>
| #endif
| #ifdef HAVE_STRINGS_H
| # include <strings.h>
| #endif
| #ifdef HAVE_SYS_TYPES_H
| # include <sys/types.h>
| #endif
| #ifdef HAVE_SYS_STAT_H
| # include <sys/stat.h>
| #endif
| #ifdef HAVE_UNISTD_H
| # include <unistd.h>
| #endif
| int
| main (void)
| {
| if (sizeof ((uintptr_t)))
| 	    return 0;
|   ;
|   return 0;
| }
configure:14530: result: yes
configure:14542: checking for struct tm.tm_gmtoff
configure:14542: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2  conftest.c >&5
configure:14542: $? = 0
configure:14542: result: yes
configure:14553: checking for struct tm.__tm_gmtoff
configure:14553: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2  conftest.c >&5
conftest.c: In function 'main':
conftest.c:116:13: error: 'struct tm' has no member named '__tm_gmtoff'; did you mean 'tm_gmtoff'?
  116 | if (ac_aggr.__tm_gmtoff)
      |             ^~~~~~~~~~~
      |             tm_gmtoff
conftest.c:115:18: warning: variable 'ac_aggr' set but not used [-Wunused-but-set-variable]
  115 | static struct tm ac_aggr;
      |                  ^~~~~~~
configure:14553: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "libarchive"
| #define PACKAGE_TARNAME "libarchive"
| #define PACKAGE_VERSION "3.7.2"
| #define PACKAGE_STRING "libarchive 3.7.2"
| #define PACKAGE_BUGREPORT "libarchive-discuss@googlegroups.com"
| #define PACKAGE_URL ""
| #define PACKAGE "libarchive"
| #define VERSION "3.7.2"
| #define __LIBARCHIVE_CONFIG_H_INCLUDED 1
| #define LIBARCHIVE_VERSION_STRING "3.7.2"
| #define LIBARCHIVE_VERSION_NUMBER "3007002"
| #define BSDCPIO_VERSION_STRING "3.7.2"
| #define BSDTAR_VERSION_STRING "3.7.2"
| #define BSDCAT_VERSION_STRING "3.7.2"
| #define BSDUNZIP_VERSION_STRING "3.7.2"
| #define HAVE_STDIO_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_SYS_TIME_H 1
| #define STDC_HEADERS 1
| #define _ALL_SOURCE 1
| #define _DARWIN_C_SOURCE 1
| #define _GNU_SOURCE 1
| #define _HPUX_ALT_XOPEN_SOCKET_API 1
| #define _NETBSD_SOURCE 1
| #define _OPENBSD_SOURCE 1
| #define _POSIX_PTHREAD_SEMANTICS 1
| #define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1
| #define __STDC_WANT_IEC_60559_BFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_DFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1
| #define __STDC_WANT_IEC_60559_TYPES_EXT__ 1
| #define __STDC_WANT_LIB_EXT2__ 1
| #define __STDC_WANT_MATH_SPEC_FUNCS__ 1
| #define _TANDEM_SOURCE 1
| #define __EXTENSIONS__ 1
| #define HAVE_DLFCN_H 1
| #define LT_OBJDIR ".libs/"
| #define HAVE_DIRENT_H 1
| #define HAVE_SYS_WAIT_H 1
| #define HAVE_CTYPE_H 1
| #define HAVE_ERRNO_H 1
| #define HAVE_FCNTL_H 1
| #define HAVE_FNMATCH_H 1
| #define HAVE_GRP_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_LANGINFO_H 1
| #define HAVE_LIMITS_H 1
| #define HAVE_LINUX_FIEMAP_H 1
| #define HAVE_LINUX_FS_H 1
| #define HAVE_LINUX_MAGIC_H 1
| #define HAVE_LINUX_TYPES_H 1
| #define HAVE_WORKING_FS_IOC_GETFLAGS 1
| #define HAVE_LOCALE_H 1
| #define HAVE_PATHS_H 1
| #define HAVE_POLL_H 1
| #define HAVE_PTHREAD_H 1
| #define HAVE_PWD_H 1
| #define HAVE_SIGNAL_H 1
| #define HAVE_SPAWN_H 1
| #define HAVE_STDARG_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_SYS_CDEFS_H 1
| #define HAVE_SYS_IOCTL_H 1
| #define HAVE_SYS_MOUNT_H 1
| #define HAVE_SYS_QUEUE_H 1
| #define HAVE_SYS_PARAM_H 1
| #define HAVE_SYS_POLL_H 1
| #define HAVE_SYS_SELECT_H 1
| #define HAVE_SYS_STATFS_H 1
| #define HAVE_SYS_STATVFS_H 1
| #define HAVE_SYS_SYSMACROS_H 1
| #define HAVE_SYS_TIME_H 1
| #define HAVE_SYS_UTSNAME_H 1
| #define HAVE_SYS_VFS_H 1
| #define HAVE_SYS_XATTR_H 1
| #define HAVE_TIME_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_UTIME_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_WCTYPE_H 1
| #define HAVE_ZLIB_H 1
| #define HAVE_LIBZ 1
| #define HAVE_ICONV 1
| #define ICONV_CONST 
| #define HAVE_ICONV_H 1
| #define HAVE_LZ4_H 1
| #define HAVE_LZ4HC_H 1
| #define HAVE_LIBLZ4 1
| #define HAVE_ZSTD_H 1
| #define HAVE_LIBZSTD 1
| #define HAVE_LIBZSTD_COMPRESSOR 1
| #define HAVE_LIBXML_XMLREADER_H 1
| #define HAVE_LIBXML_XMLWRITER_H 1
| #define HAVE_REGEX_H 1
| #define HAVE_STRUCT_TM_TM_GMTOFF 1
| /* end confdefs.h.  */
| 
| #include <time.h>
| 
| 
| int
| main (void)
| {
| static struct tm ac_aggr;
| if (ac_aggr.__tm_gmtoff)
| return 0;
|   ;
|   return 0;
| }
configure:14553: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2  conftest.c >&5
conftest.c: In function 'main':
conftest.c:116:20: error: 'struct tm' has no member named '__tm_gmtoff'; did you mean 'tm_gmtoff'?
  116 | if (sizeof ac_aggr.__tm_gmtoff)
      |                    ^~~~~~~~~~~
      |                    tm_gmtoff
conftest.c:115:18: warning: variable 'ac_aggr' set but not used [-Wunused-but-set-variable]
  115 | static struct tm ac_aggr;
      |                  ^~~~~~~
configure:14553: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "libarchive"
| #define PACKAGE_TARNAME "libarchive"
| #define PACKAGE_VERSION "3.7.2"
| #define PACKAGE_STRING "libarchive 3.7.2"
| #define PACKAGE_BUGREPORT "libarchive-discuss@googlegroups.com"
| #define PACKAGE_URL ""
| #define PACKAGE "libarchive"
| #define VERSION "3.7.2"
| #define __LIBARCHIVE_CONFIG_H_INCLUDED 1
| #define LIBARCHIVE_VERSION_STRING "3.7.2"
| #define LIBARCHIVE_VERSION_NUMBER "3007002"
| #define BSDCPIO_VERSION_STRING "3.7.2"
| #define BSDTAR_VERSION_STRING "3.7.2"
| #define BSDCAT_VERSION_STRING "3.7.2"
| #define BSDUNZIP_VERSION_STRING "3.7.2"
| #define HAVE_STDIO_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_SYS_TIME_H 1
| #define STDC_HEADERS 1
| #define _ALL_SOURCE 1
| #define _DARWIN_C_SOURCE 1
| #define _GNU_SOURCE 1
| #define _HPUX_ALT_XOPEN_SOCKET_API 1
| #define _NETBSD_SOURCE 1
| #define _OPENBSD_SOURCE 1
| #define _POSIX_PTHREAD_SEMANTICS 1
| #define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1
| #define __STDC_WANT_IEC_60559_BFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_DFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1
| #define __STDC_WANT_IEC_60559_TYPES_EXT__ 1
| #define __STDC_WANT_LIB_EXT2__ 1
| #define __STDC_WANT_MATH_SPEC_FUNCS__ 1
| #define _TANDEM_SOURCE 1
| #define __EXTENSIONS__ 1
| #define HAVE_DLFCN_H 1
| #define LT_OBJDIR ".libs/"
| #define HAVE_DIRENT_H 1
| #define HAVE_SYS_WAIT_H 1
| #define HAVE_CTYPE_H 1
| #define HAVE_ERRNO_H 1
| #define HAVE_FCNTL_H 1
| #define HAVE_FNMATCH_H 1
| #define HAVE_GRP_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_LANGINFO_H 1
| #define HAVE_LIMITS_H 1
| #define HAVE_LINUX_FIEMAP_H 1
| #define HAVE_LINUX_FS_H 1
| #define HAVE_LINUX_MAGIC_H 1
| #define HAVE_LINUX_TYPES_H 1
| #define HAVE_WORKING_FS_IOC_GETFLAGS 1
| #define HAVE_LOCALE_H 1
| #define HAVE_PATHS_H 1
| #define HAVE_POLL_H 1
| #define HAVE_PTHREAD_H 1
| #define HAVE_PWD_H 1
| #define HAVE_SIGNAL_H 1
| #define HAVE_SPAWN_H 1
| #define HAVE_STDARG_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_SYS_CDEFS_H 1
| #define HAVE_SYS_IOCTL_H 1
| #define HAVE_SYS_MOUNT_H 1
| #define HAVE_SYS_QUEUE_H 1
| #define HAVE_SYS_PARAM_H 1
| #define HAVE_SYS_POLL_H 1
| #define HAVE_SYS_SELECT_H 1
| #define HAVE_SYS_STATFS_H 1
| #define HAVE_SYS_STATVFS_H 1
| #define HAVE_SYS_SYSMACROS_H 1
| #define HAVE_SYS_TIME_H 1
| #define HAVE_SYS_UTSNAME_H 1
| #define HAVE_SYS_VFS_H 1
| #define HAVE_SYS_XATTR_H 1
| #define HAVE_TIME_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_UTIME_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_WCTYPE_H 1
| #define HAVE_ZLIB_H 1
| #define HAVE_LIBZ 1
| #define HAVE_ICONV 1
| #define ICONV_CONST 
| #define HAVE_ICONV_H 1
| #define HAVE_LZ4_H 1
| #define HAVE_LZ4HC_H 1
| #define HAVE_LIBLZ4 1
| #define HAVE_ZSTD_H 1
| #define HAVE_LIBZSTD 1
| #define HAVE_LIBZSTD_COMPRESSOR 1
| #define HAVE_LIBXML_XMLREADER_H 1
| #define HAVE_LIBXML_XMLWRITER_H 1
| #define HAVE_REGEX_H 1
| #define HAVE_STRUCT_TM_TM_GMTOFF 1
| /* end confdefs.h.  */
| 
| #include <time.h>
| 
| 
| int
| main (void)
| {
| static struct tm ac_aggr;
| if (sizeof ac_aggr.__tm_gmtoff)
| return 0;
|   ;
|   return 0;
| }
configure:14553: result: no
configure:14567: checking for struct statfs.f_namemax
configure:14567: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2  conftest.c >&5
conftest.c: In function 'main':
conftest.c:116:22: error: storage size of 'ac_aggr' isn't known
  116 | static struct statfs ac_aggr;
      |                      ^~~~~~~
conftest.c:116:22: warning: unused variable 'ac_aggr' [-Wunused-variable]
configure:14567: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "libarchive"
| #define PACKAGE_TARNAME "libarchive"
| #define PACKAGE_VERSION "3.7.2"
| #define PACKAGE_STRING "libarchive 3.7.2"
| #define PACKAGE_BUGREPORT "libarchive-discuss@googlegroups.com"
| #define PACKAGE_URL ""
| #define PACKAGE "libarchive"
| #define VERSION "3.7.2"
| #define __LIBARCHIVE_CONFIG_H_INCLUDED 1
| #define LIBARCHIVE_VERSION_STRING "3.7.2"
| #define LIBARCHIVE_VERSION_NUMBER "3007002"
| #define BSDCPIO_VERSION_STRING "3.7.2"
| #define BSDTAR_VERSION_STRING "3.7.2"
| #define BSDCAT_VERSION_STRING "3.7.2"
| #define BSDUNZIP_VERSION_STRING "3.7.2"
| #define HAVE_STDIO_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_SYS_TIME_H 1
| #define STDC_HEADERS 1
| #define _ALL_SOURCE 1
| #define _DARWIN_C_SOURCE 1
| #define _GNU_SOURCE 1
| #define _HPUX_ALT_XOPEN_SOCKET_API 1
| #define _NETBSD_SOURCE 1
| #define _OPENBSD_SOURCE 1
| #define _POSIX_PTHREAD_SEMANTICS 1
| #define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1
| #define __STDC_WANT_IEC_60559_BFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_DFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1
| #define __STDC_WANT_IEC_60559_TYPES_EXT__ 1
| #define __STDC_WANT_LIB_EXT2__ 1
| #define __STDC_WANT_MATH_SPEC_FUNCS__ 1
| #define _TANDEM_SOURCE 1
| #define __EXTENSIONS__ 1
| #define HAVE_DLFCN_H 1
| #define LT_OBJDIR ".libs/"
| #define HAVE_DIRENT_H 1
| #define HAVE_SYS_WAIT_H 1
| #define HAVE_CTYPE_H 1
| #define HAVE_ERRNO_H 1
| #define HAVE_FCNTL_H 1
| #define HAVE_FNMATCH_H 1
| #define HAVE_GRP_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_LANGINFO_H 1
| #define HAVE_LIMITS_H 1
| #define HAVE_LINUX_FIEMAP_H 1
| #define HAVE_LINUX_FS_H 1
| #define HAVE_LINUX_MAGIC_H 1
| #define HAVE_LINUX_TYPES_H 1
| #define HAVE_WORKING_FS_IOC_GETFLAGS 1
| #define HAVE_LOCALE_H 1
| #define HAVE_PATHS_H 1
| #define HAVE_POLL_H 1
| #define HAVE_PTHREAD_H 1
| #define HAVE_PWD_H 1
| #define HAVE_SIGNAL_H 1
| #define HAVE_SPAWN_H 1
| #define HAVE_STDARG_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_SYS_CDEFS_H 1
| #define HAVE_SYS_IOCTL_H 1
| #define HAVE_SYS_MOUNT_H 1
| #define HAVE_SYS_QUEUE_H 1
| #define HAVE_SYS_PARAM_H 1
| #define HAVE_SYS_POLL_H 1
| #define HAVE_SYS_SELECT_H 1
| #define HAVE_SYS_STATFS_H 1
| #define HAVE_SYS_STATVFS_H 1
| #define HAVE_SYS_SYSMACROS_H 1
| #define HAVE_SYS_TIME_H 1
| #define HAVE_SYS_UTSNAME_H 1
| #define HAVE_SYS_VFS_H 1
| #define HAVE_SYS_XATTR_H 1
| #define HAVE_TIME_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_UTIME_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_WCTYPE_H 1
| #define HAVE_ZLIB_H 1
| #define HAVE_LIBZ 1
| #define HAVE_ICONV 1
| #define ICONV_CONST 
| #define HAVE_ICONV_H 1
| #define HAVE_LZ4_H 1
| #define HAVE_LZ4HC_H 1
| #define HAVE_LIBLZ4 1
| #define HAVE_ZSTD_H 1
| #define HAVE_LIBZSTD 1
| #define HAVE_LIBZSTD_COMPRESSOR 1
| #define HAVE_LIBXML_XMLREADER_H 1
| #define HAVE_LIBXML_XMLWRITER_H 1
| #define HAVE_REGEX_H 1
| #define HAVE_STRUCT_TM_TM_GMTOFF 1
| /* end confdefs.h.  */
| 
| #include <sys/param.h>
| #include <sys/mount.h>
| 
| 
| int
| main (void)
| {
| static struct statfs ac_aggr;
| if (ac_aggr.f_namemax)
| return 0;
|   ;
|   return 0;
| }
configure:14567: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2  conftest.c >&5
conftest.c: In function 'main':
conftest.c:116:22: error: storage size of 'ac_aggr' isn't known
  116 | static struct statfs ac_aggr;
      |                      ^~~~~~~
conftest.c:116:22: warning: unused variable 'ac_aggr' [-Wunused-variable]
configure:14567: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "libarchive"
| #define PACKAGE_TARNAME "libarchive"
| #define PACKAGE_VERSION "3.7.2"
| #define PACKAGE_STRING "libarchive 3.7.2"
| #define PACKAGE_BUGREPORT "libarchive-discuss@googlegroups.com"
| #define PACKAGE_URL ""
| #define PACKAGE "libarchive"
| #define VERSION "3.7.2"
| #define __LIBARCHIVE_CONFIG_H_INCLUDED 1
| #define LIBARCHIVE_VERSION_STRING "3.7.2"
| #define LIBARCHIVE_VERSION_NUMBER "3007002"
| #define BSDCPIO_VERSION_STRING "3.7.2"
| #define BSDTAR_VERSION_STRING "3.7.2"
| #define BSDCAT_VERSION_STRING "3.7.2"
| #define BSDUNZIP_VERSION_STRING "3.7.2"
| #define HAVE_STDIO_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_SYS_TIME_H 1
| #define STDC_HEADERS 1
| #define _ALL_SOURCE 1
| #define _DARWIN_C_SOURCE 1
| #define _GNU_SOURCE 1
| #define _HPUX_ALT_XOPEN_SOCKET_API 1
| #define _NETBSD_SOURCE 1
| #define _OPENBSD_SOURCE 1
| #define _POSIX_PTHREAD_SEMANTICS 1
| #define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1
| #define __STDC_WANT_IEC_60559_BFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_DFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1
| #define __STDC_WANT_IEC_60559_TYPES_EXT__ 1
| #define __STDC_WANT_LIB_EXT2__ 1
| #define __STDC_WANT_MATH_SPEC_FUNCS__ 1
| #define _TANDEM_SOURCE 1
| #define __EXTENSIONS__ 1
| #define HAVE_DLFCN_H 1
| #define LT_OBJDIR ".libs/"
| #define HAVE_DIRENT_H 1
| #define HAVE_SYS_WAIT_H 1
| #define HAVE_CTYPE_H 1
| #define HAVE_ERRNO_H 1
| #define HAVE_FCNTL_H 1
| #define HAVE_FNMATCH_H 1
| #define HAVE_GRP_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_LANGINFO_H 1
| #define HAVE_LIMITS_H 1
| #define HAVE_LINUX_FIEMAP_H 1
| #define HAVE_LINUX_FS_H 1
| #define HAVE_LINUX_MAGIC_H 1
| #define HAVE_LINUX_TYPES_H 1
| #define HAVE_WORKING_FS_IOC_GETFLAGS 1
| #define HAVE_LOCALE_H 1
| #define HAVE_PATHS_H 1
| #define HAVE_POLL_H 1
| #define HAVE_PTHREAD_H 1
| #define HAVE_PWD_H 1
| #define HAVE_SIGNAL_H 1
| #define HAVE_SPAWN_H 1
| #define HAVE_STDARG_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_SYS_CDEFS_H 1
| #define HAVE_SYS_IOCTL_H 1
| #define HAVE_SYS_MOUNT_H 1
| #define HAVE_SYS_QUEUE_H 1
| #define HAVE_SYS_PARAM_H 1
| #define HAVE_SYS_POLL_H 1
| #define HAVE_SYS_SELECT_H 1
| #define HAVE_SYS_STATFS_H 1
| #define HAVE_SYS_STATVFS_H 1
| #define HAVE_SYS_SYSMACROS_H 1
| #define HAVE_SYS_TIME_H 1
| #define HAVE_SYS_UTSNAME_H 1
| #define HAVE_SYS_VFS_H 1
| #define HAVE_SYS_XATTR_H 1
| #define HAVE_TIME_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_UTIME_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_WCTYPE_H 1
| #define HAVE_ZLIB_H 1
| #define HAVE_LIBZ 1
| #define HAVE_ICONV 1
| #define ICONV_CONST 
| #define HAVE_ICONV_H 1
| #define HAVE_LZ4_H 1
| #define HAVE_LZ4HC_H 1
| #define HAVE_LIBLZ4 1
| #define HAVE_ZSTD_H 1
| #define HAVE_LIBZSTD 1
| #define HAVE_LIBZSTD_COMPRESSOR 1
| #define HAVE_LIBXML_XMLREADER_H 1
| #define HAVE_LIBXML_XMLWRITER_H 1
| #define HAVE_REGEX_H 1
| #define HAVE_STRUCT_TM_TM_GMTOFF 1
| /* end confdefs.h.  */
| 
| #include <sys/param.h>
| #include <sys/mount.h>
| 
| 
| int
| main (void)
| {
| static struct statfs ac_aggr;
| if (sizeof ac_aggr.f_namemax)
| return 0;
|   ;
|   return 0;
| }
configure:14567: result: no
configure:14582: checking for struct statfs.f_iosize
configure:14582: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2  conftest.c >&5
conftest.c: In function 'main':
conftest.c:116:22: error: storage size of 'ac_aggr' isn't known
  116 | static struct statfs ac_aggr;
      |                      ^~~~~~~
conftest.c:116:22: warning: unused variable 'ac_aggr' [-Wunused-variable]
configure:14582: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "libarchive"
| #define PACKAGE_TARNAME "libarchive"
| #define PACKAGE_VERSION "3.7.2"
| #define PACKAGE_STRING "libarchive 3.7.2"
| #define PACKAGE_BUGREPORT "libarchive-discuss@googlegroups.com"
| #define PACKAGE_URL ""
| #define PACKAGE "libarchive"
| #define VERSION "3.7.2"
| #define __LIBARCHIVE_CONFIG_H_INCLUDED 1
| #define LIBARCHIVE_VERSION_STRING "3.7.2"
| #define LIBARCHIVE_VERSION_NUMBER "3007002"
| #define BSDCPIO_VERSION_STRING "3.7.2"
| #define BSDTAR_VERSION_STRING "3.7.2"
| #define BSDCAT_VERSION_STRING "3.7.2"
| #define BSDUNZIP_VERSION_STRING "3.7.2"
| #define HAVE_STDIO_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_SYS_TIME_H 1
| #define STDC_HEADERS 1
| #define _ALL_SOURCE 1
| #define _DARWIN_C_SOURCE 1
| #define _GNU_SOURCE 1
| #define _HPUX_ALT_XOPEN_SOCKET_API 1
| #define _NETBSD_SOURCE 1
| #define _OPENBSD_SOURCE 1
| #define _POSIX_PTHREAD_SEMANTICS 1
| #define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1
| #define __STDC_WANT_IEC_60559_BFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_DFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1
| #define __STDC_WANT_IEC_60559_TYPES_EXT__ 1
| #define __STDC_WANT_LIB_EXT2__ 1
| #define __STDC_WANT_MATH_SPEC_FUNCS__ 1
| #define _TANDEM_SOURCE 1
| #define __EXTENSIONS__ 1
| #define HAVE_DLFCN_H 1
| #define LT_OBJDIR ".libs/"
| #define HAVE_DIRENT_H 1
| #define HAVE_SYS_WAIT_H 1
| #define HAVE_CTYPE_H 1
| #define HAVE_ERRNO_H 1
| #define HAVE_FCNTL_H 1
| #define HAVE_FNMATCH_H 1
| #define HAVE_GRP_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_LANGINFO_H 1
| #define HAVE_LIMITS_H 1
| #define HAVE_LINUX_FIEMAP_H 1
| #define HAVE_LINUX_FS_H 1
| #define HAVE_LINUX_MAGIC_H 1
| #define HAVE_LINUX_TYPES_H 1
| #define HAVE_WORKING_FS_IOC_GETFLAGS 1
| #define HAVE_LOCALE_H 1
| #define HAVE_PATHS_H 1
| #define HAVE_POLL_H 1
| #define HAVE_PTHREAD_H 1
| #define HAVE_PWD_H 1
| #define HAVE_SIGNAL_H 1
| #define HAVE_SPAWN_H 1
| #define HAVE_STDARG_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_SYS_CDEFS_H 1
| #define HAVE_SYS_IOCTL_H 1
| #define HAVE_SYS_MOUNT_H 1
| #define HAVE_SYS_QUEUE_H 1
| #define HAVE_SYS_PARAM_H 1
| #define HAVE_SYS_POLL_H 1
| #define HAVE_SYS_SELECT_H 1
| #define HAVE_SYS_STATFS_H 1
| #define HAVE_SYS_STATVFS_H 1
| #define HAVE_SYS_SYSMACROS_H 1
| #define HAVE_SYS_TIME_H 1
| #define HAVE_SYS_UTSNAME_H 1
| #define HAVE_SYS_VFS_H 1
| #define HAVE_SYS_XATTR_H 1
| #define HAVE_TIME_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_UTIME_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_WCTYPE_H 1
| #define HAVE_ZLIB_H 1
| #define HAVE_LIBZ 1
| #define HAVE_ICONV 1
| #define ICONV_CONST 
| #define HAVE_ICONV_H 1
| #define HAVE_LZ4_H 1
| #define HAVE_LZ4HC_H 1
| #define HAVE_LIBLZ4 1
| #define HAVE_ZSTD_H 1
| #define HAVE_LIBZSTD 1
| #define HAVE_LIBZSTD_COMPRESSOR 1
| #define HAVE_LIBXML_XMLREADER_H 1
| #define HAVE_LIBXML_XMLWRITER_H 1
| #define HAVE_REGEX_H 1
| #define HAVE_STRUCT_TM_TM_GMTOFF 1
| /* end confdefs.h.  */
| 
| #include <sys/param.h>
| #include <sys/mount.h>
| 
| 
| int
| main (void)
| {
| static struct statfs ac_aggr;
| if (ac_aggr.f_iosize)
| return 0;
|   ;
|   return 0;
| }
configure:14582: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2  conftest.c >&5
conftest.c: In function 'main':
conftest.c:116:22: error: storage size of 'ac_aggr' isn't known
  116 | static struct statfs ac_aggr;
      |                      ^~~~~~~
conftest.c:116:22: warning: unused variable 'ac_aggr' [-Wunused-variable]
configure:14582: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "libarchive"
| #define PACKAGE_TARNAME "libarchive"
| #define PACKAGE_VERSION "3.7.2"
| #define PACKAGE_STRING "libarchive 3.7.2"
| #define PACKAGE_BUGREPORT "libarchive-discuss@googlegroups.com"
| #define PACKAGE_URL ""
| #define PACKAGE "libarchive"
| #define VERSION "3.7.2"
| #define __LIBARCHIVE_CONFIG_H_INCLUDED 1
| #define LIBARCHIVE_VERSION_STRING "3.7.2"
| #define LIBARCHIVE_VERSION_NUMBER "3007002"
| #define BSDCPIO_VERSION_STRING "3.7.2"
| #define BSDTAR_VERSION_STRING "3.7.2"
| #define BSDCAT_VERSION_STRING "3.7.2"
| #define BSDUNZIP_VERSION_STRING "3.7.2"
| #define HAVE_STDIO_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_SYS_TIME_H 1
| #define STDC_HEADERS 1
| #define _ALL_SOURCE 1
| #define _DARWIN_C_SOURCE 1
| #define _GNU_SOURCE 1
| #define _HPUX_ALT_XOPEN_SOCKET_API 1
| #define _NETBSD_SOURCE 1
| #define _OPENBSD_SOURCE 1
| #define _POSIX_PTHREAD_SEMANTICS 1
| #define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1
| #define __STDC_WANT_IEC_60559_BFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_DFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1
| #define __STDC_WANT_IEC_60559_TYPES_EXT__ 1
| #define __STDC_WANT_LIB_EXT2__ 1
| #define __STDC_WANT_MATH_SPEC_FUNCS__ 1
| #define _TANDEM_SOURCE 1
| #define __EXTENSIONS__ 1
| #define HAVE_DLFCN_H 1
| #define LT_OBJDIR ".libs/"
| #define HAVE_DIRENT_H 1
| #define HAVE_SYS_WAIT_H 1
| #define HAVE_CTYPE_H 1
| #define HAVE_ERRNO_H 1
| #define HAVE_FCNTL_H 1
| #define HAVE_FNMATCH_H 1
| #define HAVE_GRP_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_LANGINFO_H 1
| #define HAVE_LIMITS_H 1
| #define HAVE_LINUX_FIEMAP_H 1
| #define HAVE_LINUX_FS_H 1
| #define HAVE_LINUX_MAGIC_H 1
| #define HAVE_LINUX_TYPES_H 1
| #define HAVE_WORKING_FS_IOC_GETFLAGS 1
| #define HAVE_LOCALE_H 1
| #define HAVE_PATHS_H 1
| #define HAVE_POLL_H 1
| #define HAVE_PTHREAD_H 1
| #define HAVE_PWD_H 1
| #define HAVE_SIGNAL_H 1
| #define HAVE_SPAWN_H 1
| #define HAVE_STDARG_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_SYS_CDEFS_H 1
| #define HAVE_SYS_IOCTL_H 1
| #define HAVE_SYS_MOUNT_H 1
| #define HAVE_SYS_QUEUE_H 1
| #define HAVE_SYS_PARAM_H 1
| #define HAVE_SYS_POLL_H 1
| #define HAVE_SYS_SELECT_H 1
| #define HAVE_SYS_STATFS_H 1
| #define HAVE_SYS_STATVFS_H 1
| #define HAVE_SYS_SYSMACROS_H 1
| #define HAVE_SYS_TIME_H 1
| #define HAVE_SYS_UTSNAME_H 1
| #define HAVE_SYS_VFS_H 1
| #define HAVE_SYS_XATTR_H 1
| #define HAVE_TIME_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_UTIME_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_WCTYPE_H 1
| #define HAVE_ZLIB_H 1
| #define HAVE_LIBZ 1
| #define HAVE_ICONV 1
| #define ICONV_CONST 
| #define HAVE_ICONV_H 1
| #define HAVE_LZ4_H 1
| #define HAVE_LZ4HC_H 1
| #define HAVE_LIBLZ4 1
| #define HAVE_ZSTD_H 1
| #define HAVE_LIBZSTD 1
| #define HAVE_LIBZSTD_COMPRESSOR 1
| #define HAVE_LIBXML_XMLREADER_H 1
| #define HAVE_LIBXML_XMLWRITER_H 1
| #define HAVE_REGEX_H 1
| #define HAVE_STRUCT_TM_TM_GMTOFF 1
| /* end confdefs.h.  */
| 
| #include <sys/param.h>
| #include <sys/mount.h>
| 
| 
| int
| main (void)
| {
| static struct statfs ac_aggr;
| if (sizeof ac_aggr.f_iosize)
| return 0;
|   ;
|   return 0;
| }
configure:14582: result: no
configure:14597: checking for struct statvfs.f_iosize
configure:14597: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2  conftest.c >&5
conftest.c: In function 'main':
conftest.c:116:13: error: 'struct statvfs' has no member named 'f_iosize'; did you mean 'f_bsize'?
  116 | if (ac_aggr.f_iosize)
      |             ^~~~~~~~
      |             f_bsize
conftest.c:115:23: warning: variable 'ac_aggr' set but not used [-Wunused-but-set-variable]
  115 | static struct statvfs ac_aggr;
      |                       ^~~~~~~
configure:14597: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "libarchive"
| #define PACKAGE_TARNAME "libarchive"
| #define PACKAGE_VERSION "3.7.2"
| #define PACKAGE_STRING "libarchive 3.7.2"
| #define PACKAGE_BUGREPORT "libarchive-discuss@googlegroups.com"
| #define PACKAGE_URL ""
| #define PACKAGE "libarchive"
| #define VERSION "3.7.2"
| #define __LIBARCHIVE_CONFIG_H_INCLUDED 1
| #define LIBARCHIVE_VERSION_STRING "3.7.2"
| #define LIBARCHIVE_VERSION_NUMBER "3007002"
| #define BSDCPIO_VERSION_STRING "3.7.2"
| #define BSDTAR_VERSION_STRING "3.7.2"
| #define BSDCAT_VERSION_STRING "3.7.2"
| #define BSDUNZIP_VERSION_STRING "3.7.2"
| #define HAVE_STDIO_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_SYS_TIME_H 1
| #define STDC_HEADERS 1
| #define _ALL_SOURCE 1
| #define _DARWIN_C_SOURCE 1
| #define _GNU_SOURCE 1
| #define _HPUX_ALT_XOPEN_SOCKET_API 1
| #define _NETBSD_SOURCE 1
| #define _OPENBSD_SOURCE 1
| #define _POSIX_PTHREAD_SEMANTICS 1
| #define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1
| #define __STDC_WANT_IEC_60559_BFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_DFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1
| #define __STDC_WANT_IEC_60559_TYPES_EXT__ 1
| #define __STDC_WANT_LIB_EXT2__ 1
| #define __STDC_WANT_MATH_SPEC_FUNCS__ 1
| #define _TANDEM_SOURCE 1
| #define __EXTENSIONS__ 1
| #define HAVE_DLFCN_H 1
| #define LT_OBJDIR ".libs/"
| #define HAVE_DIRENT_H 1
| #define HAVE_SYS_WAIT_H 1
| #define HAVE_CTYPE_H 1
| #define HAVE_ERRNO_H 1
| #define HAVE_FCNTL_H 1
| #define HAVE_FNMATCH_H 1
| #define HAVE_GRP_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_LANGINFO_H 1
| #define HAVE_LIMITS_H 1
| #define HAVE_LINUX_FIEMAP_H 1
| #define HAVE_LINUX_FS_H 1
| #define HAVE_LINUX_MAGIC_H 1
| #define HAVE_LINUX_TYPES_H 1
| #define HAVE_WORKING_FS_IOC_GETFLAGS 1
| #define HAVE_LOCALE_H 1
| #define HAVE_PATHS_H 1
| #define HAVE_POLL_H 1
| #define HAVE_PTHREAD_H 1
| #define HAVE_PWD_H 1
| #define HAVE_SIGNAL_H 1
| #define HAVE_SPAWN_H 1
| #define HAVE_STDARG_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_SYS_CDEFS_H 1
| #define HAVE_SYS_IOCTL_H 1
| #define HAVE_SYS_MOUNT_H 1
| #define HAVE_SYS_QUEUE_H 1
| #define HAVE_SYS_PARAM_H 1
| #define HAVE_SYS_POLL_H 1
| #define HAVE_SYS_SELECT_H 1
| #define HAVE_SYS_STATFS_H 1
| #define HAVE_SYS_STATVFS_H 1
| #define HAVE_SYS_SYSMACROS_H 1
| #define HAVE_SYS_TIME_H 1
| #define HAVE_SYS_UTSNAME_H 1
| #define HAVE_SYS_VFS_H 1
| #define HAVE_SYS_XATTR_H 1
| #define HAVE_TIME_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_UTIME_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_WCTYPE_H 1
| #define HAVE_ZLIB_H 1
| #define HAVE_LIBZ 1
| #define HAVE_ICONV 1
| #define ICONV_CONST 
| #define HAVE_ICONV_H 1
| #define HAVE_LZ4_H 1
| #define HAVE_LZ4HC_H 1
| #define HAVE_LIBLZ4 1
| #define HAVE_ZSTD_H 1
| #define HAVE_LIBZSTD 1
| #define HAVE_LIBZSTD_COMPRESSOR 1
| #define HAVE_LIBXML_XMLREADER_H 1
| #define HAVE_LIBXML_XMLWRITER_H 1
| #define HAVE_REGEX_H 1
| #define HAVE_STRUCT_TM_TM_GMTOFF 1
| /* end confdefs.h.  */
| 
| #include <sys/statvfs.h>
| 
| 
| int
| main (void)
| {
| static struct statvfs ac_aggr;
| if (ac_aggr.f_iosize)
| return 0;
|   ;
|   return 0;
| }
configure:14597: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2  conftest.c >&5
conftest.c: In function 'main':
conftest.c:116:20: error: 'struct statvfs' has no member named 'f_iosize'; did you mean 'f_bsize'?
  116 | if (sizeof ac_aggr.f_iosize)
      |                    ^~~~~~~~
      |                    f_bsize
conftest.c:115:23: warning: variable 'ac_aggr' set but not used [-Wunused-but-set-variable]
  115 | static struct statvfs ac_aggr;
      |                       ^~~~~~~
configure:14597: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "libarchive"
| #define PACKAGE_TARNAME "libarchive"
| #define PACKAGE_VERSION "3.7.2"
| #define PACKAGE_STRING "libarchive 3.7.2"
| #define PACKAGE_BUGREPORT "libarchive-discuss@googlegroups.com"
| #define PACKAGE_URL ""
| #define PACKAGE "libarchive"
| #define VERSION "3.7.2"
| #define __LIBARCHIVE_CONFIG_H_INCLUDED 1
| #define LIBARCHIVE_VERSION_STRING "3.7.2"
| #define LIBARCHIVE_VERSION_NUMBER "3007002"
| #define BSDCPIO_VERSION_STRING "3.7.2"
| #define BSDTAR_VERSION_STRING "3.7.2"
| #define BSDCAT_VERSION_STRING "3.7.2"
| #define BSDUNZIP_VERSION_STRING "3.7.2"
| #define HAVE_STDIO_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_SYS_TIME_H 1
| #define STDC_HEADERS 1
| #define _ALL_SOURCE 1
| #define _DARWIN_C_SOURCE 1
| #define _GNU_SOURCE 1
| #define _HPUX_ALT_XOPEN_SOCKET_API 1
| #define _NETBSD_SOURCE 1
| #define _OPENBSD_SOURCE 1
| #define _POSIX_PTHREAD_SEMANTICS 1
| #define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1
| #define __STDC_WANT_IEC_60559_BFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_DFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1
| #define __STDC_WANT_IEC_60559_TYPES_EXT__ 1
| #define __STDC_WANT_LIB_EXT2__ 1
| #define __STDC_WANT_MATH_SPEC_FUNCS__ 1
| #define _TANDEM_SOURCE 1
| #define __EXTENSIONS__ 1
| #define HAVE_DLFCN_H 1
| #define LT_OBJDIR ".libs/"
| #define HAVE_DIRENT_H 1
| #define HAVE_SYS_WAIT_H 1
| #define HAVE_CTYPE_H 1
| #define HAVE_ERRNO_H 1
| #define HAVE_FCNTL_H 1
| #define HAVE_FNMATCH_H 1
| #define HAVE_GRP_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_LANGINFO_H 1
| #define HAVE_LIMITS_H 1
| #define HAVE_LINUX_FIEMAP_H 1
| #define HAVE_LINUX_FS_H 1
| #define HAVE_LINUX_MAGIC_H 1
| #define HAVE_LINUX_TYPES_H 1
| #define HAVE_WORKING_FS_IOC_GETFLAGS 1
| #define HAVE_LOCALE_H 1
| #define HAVE_PATHS_H 1
| #define HAVE_POLL_H 1
| #define HAVE_PTHREAD_H 1
| #define HAVE_PWD_H 1
| #define HAVE_SIGNAL_H 1
| #define HAVE_SPAWN_H 1
| #define HAVE_STDARG_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_SYS_CDEFS_H 1
| #define HAVE_SYS_IOCTL_H 1
| #define HAVE_SYS_MOUNT_H 1
| #define HAVE_SYS_QUEUE_H 1
| #define HAVE_SYS_PARAM_H 1
| #define HAVE_SYS_POLL_H 1
| #define HAVE_SYS_SELECT_H 1
| #define HAVE_SYS_STATFS_H 1
| #define HAVE_SYS_STATVFS_H 1
| #define HAVE_SYS_SYSMACROS_H 1
| #define HAVE_SYS_TIME_H 1
| #define HAVE_SYS_UTSNAME_H 1
| #define HAVE_SYS_VFS_H 1
| #define HAVE_SYS_XATTR_H 1
| #define HAVE_TIME_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_UTIME_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_WCTYPE_H 1
| #define HAVE_ZLIB_H 1
| #define HAVE_LIBZ 1
| #define HAVE_ICONV 1
| #define ICONV_CONST 
| #define HAVE_ICONV_H 1
| #define HAVE_LZ4_H 1
| #define HAVE_LZ4HC_H 1
| #define HAVE_LIBLZ4 1
| #define HAVE_ZSTD_H 1
| #define HAVE_LIBZSTD 1
| #define HAVE_LIBZSTD_COMPRESSOR 1
| #define HAVE_LIBXML_XMLREADER_H 1
| #define HAVE_LIBXML_XMLWRITER_H 1
| #define HAVE_REGEX_H 1
| #define HAVE_STRUCT_TM_TM_GMTOFF 1
| /* end confdefs.h.  */
| 
| #include <sys/statvfs.h>
| 
| 
| int
| main (void)
| {
| static struct statvfs ac_aggr;
| if (sizeof ac_aggr.f_iosize)
| return 0;
|   ;
|   return 0;
| }
configure:14597: result: no
configure:14611: checking for struct stat.st_birthtime
configure:14611: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2  conftest.c >&5
conftest.c: In function 'main':
conftest.c:140:12: error: 'struct stat' has no member named 'st_birthtime'
  140 | if (ac_aggr.st_birthtime)
      |            ^
conftest.c:139:20: warning: variable 'ac_aggr' set but not used [-Wunused-but-set-variable]
  139 | static struct stat ac_aggr;
      |                    ^~~~~~~
configure:14611: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "libarchive"
| #define PACKAGE_TARNAME "libarchive"
| #define PACKAGE_VERSION "3.7.2"
| #define PACKAGE_STRING "libarchive 3.7.2"
| #define PACKAGE_BUGREPORT "libarchive-discuss@googlegroups.com"
| #define PACKAGE_URL ""
| #define PACKAGE "libarchive"
| #define VERSION "3.7.2"
| #define __LIBARCHIVE_CONFIG_H_INCLUDED 1
| #define LIBARCHIVE_VERSION_STRING "3.7.2"
| #define LIBARCHIVE_VERSION_NUMBER "3007002"
| #define BSDCPIO_VERSION_STRING "3.7.2"
| #define BSDTAR_VERSION_STRING "3.7.2"
| #define BSDCAT_VERSION_STRING "3.7.2"
| #define BSDUNZIP_VERSION_STRING "3.7.2"
| #define HAVE_STDIO_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_SYS_TIME_H 1
| #define STDC_HEADERS 1
| #define _ALL_SOURCE 1
| #define _DARWIN_C_SOURCE 1
| #define _GNU_SOURCE 1
| #define _HPUX_ALT_XOPEN_SOCKET_API 1
| #define _NETBSD_SOURCE 1
| #define _OPENBSD_SOURCE 1
| #define _POSIX_PTHREAD_SEMANTICS 1
| #define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1
| #define __STDC_WANT_IEC_60559_BFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_DFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1
| #define __STDC_WANT_IEC_60559_TYPES_EXT__ 1
| #define __STDC_WANT_LIB_EXT2__ 1
| #define __STDC_WANT_MATH_SPEC_FUNCS__ 1
| #define _TANDEM_SOURCE 1
| #define __EXTENSIONS__ 1
| #define HAVE_DLFCN_H 1
| #define LT_OBJDIR ".libs/"
| #define HAVE_DIRENT_H 1
| #define HAVE_SYS_WAIT_H 1
| #define HAVE_CTYPE_H 1
| #define HAVE_ERRNO_H 1
| #define HAVE_FCNTL_H 1
| #define HAVE_FNMATCH_H 1
| #define HAVE_GRP_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_LANGINFO_H 1
| #define HAVE_LIMITS_H 1
| #define HAVE_LINUX_FIEMAP_H 1
| #define HAVE_LINUX_FS_H 1
| #define HAVE_LINUX_MAGIC_H 1
| #define HAVE_LINUX_TYPES_H 1
| #define HAVE_WORKING_FS_IOC_GETFLAGS 1
| #define HAVE_LOCALE_H 1
| #define HAVE_PATHS_H 1
| #define HAVE_POLL_H 1
| #define HAVE_PTHREAD_H 1
| #define HAVE_PWD_H 1
| #define HAVE_SIGNAL_H 1
| #define HAVE_SPAWN_H 1
| #define HAVE_STDARG_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_SYS_CDEFS_H 1
| #define HAVE_SYS_IOCTL_H 1
| #define HAVE_SYS_MOUNT_H 1
| #define HAVE_SYS_QUEUE_H 1
| #define HAVE_SYS_PARAM_H 1
| #define HAVE_SYS_POLL_H 1
| #define HAVE_SYS_SELECT_H 1
| #define HAVE_SYS_STATFS_H 1
| #define HAVE_SYS_STATVFS_H 1
| #define HAVE_SYS_SYSMACROS_H 1
| #define HAVE_SYS_TIME_H 1
| #define HAVE_SYS_UTSNAME_H 1
| #define HAVE_SYS_VFS_H 1
| #define HAVE_SYS_XATTR_H 1
| #define HAVE_TIME_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_UTIME_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_WCTYPE_H 1
| #define HAVE_ZLIB_H 1
| #define HAVE_LIBZ 1
| #define HAVE_ICONV 1
| #define ICONV_CONST 
| #define HAVE_ICONV_H 1
| #define HAVE_LZ4_H 1
| #define HAVE_LZ4HC_H 1
| #define HAVE_LIBLZ4 1
| #define HAVE_ZSTD_H 1
| #define HAVE_LIBZSTD 1
| #define HAVE_LIBZSTD_COMPRESSOR 1
| #define HAVE_LIBXML_XMLREADER_H 1
| #define HAVE_LIBXML_XMLWRITER_H 1
| #define HAVE_REGEX_H 1
| #define HAVE_STRUCT_TM_TM_GMTOFF 1
| /* end confdefs.h.  */
| #include <stddef.h>
| #ifdef HAVE_STDIO_H
| # include <stdio.h>
| #endif
| #ifdef HAVE_STDLIB_H
| # include <stdlib.h>
| #endif
| #ifdef HAVE_STRING_H
| # include <string.h>
| #endif
| #ifdef HAVE_INTTYPES_H
| # include <inttypes.h>
| #endif
| #ifdef HAVE_STDINT_H
| # include <stdint.h>
| #endif
| #ifdef HAVE_STRINGS_H
| # include <strings.h>
| #endif
| #ifdef HAVE_SYS_TYPES_H
| # include <sys/types.h>
| #endif
| #ifdef HAVE_SYS_STAT_H
| # include <sys/stat.h>
| #endif
| #ifdef HAVE_UNISTD_H
| # include <unistd.h>
| #endif
| int
| main (void)
| {
| static struct stat ac_aggr;
| if (ac_aggr.st_birthtime)
| return 0;
|   ;
|   return 0;
| }
configure:14611: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2  conftest.c >&5
conftest.c: In function 'main':
conftest.c:140:19: error: 'struct stat' has no member named 'st_birthtime'
  140 | if (sizeof ac_aggr.st_birthtime)
      |                   ^
conftest.c:139:20: warning: variable 'ac_aggr' set but not used [-Wunused-but-set-variable]
  139 | static struct stat ac_aggr;
      |                    ^~~~~~~
configure:14611: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "libarchive"
| #define PACKAGE_TARNAME "libarchive"
| #define PACKAGE_VERSION "3.7.2"
| #define PACKAGE_STRING "libarchive 3.7.2"
| #define PACKAGE_BUGREPORT "libarchive-discuss@googlegroups.com"
| #define PACKAGE_URL ""
| #define PACKAGE "libarchive"
| #define VERSION "3.7.2"
| #define __LIBARCHIVE_CONFIG_H_INCLUDED 1
| #define LIBARCHIVE_VERSION_STRING "3.7.2"
| #define LIBARCHIVE_VERSION_NUMBER "3007002"
| #define BSDCPIO_VERSION_STRING "3.7.2"
| #define BSDTAR_VERSION_STRING "3.7.2"
| #define BSDCAT_VERSION_STRING "3.7.2"
| #define BSDUNZIP_VERSION_STRING "3.7.2"
| #define HAVE_STDIO_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_SYS_TIME_H 1
| #define STDC_HEADERS 1
| #define _ALL_SOURCE 1
| #define _DARWIN_C_SOURCE 1
| #define _GNU_SOURCE 1
| #define _HPUX_ALT_XOPEN_SOCKET_API 1
| #define _NETBSD_SOURCE 1
| #define _OPENBSD_SOURCE 1
| #define _POSIX_PTHREAD_SEMANTICS 1
| #define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1
| #define __STDC_WANT_IEC_60559_BFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_DFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1
| #define __STDC_WANT_IEC_60559_TYPES_EXT__ 1
| #define __STDC_WANT_LIB_EXT2__ 1
| #define __STDC_WANT_MATH_SPEC_FUNCS__ 1
| #define _TANDEM_SOURCE 1
| #define __EXTENSIONS__ 1
| #define HAVE_DLFCN_H 1
| #define LT_OBJDIR ".libs/"
| #define HAVE_DIRENT_H 1
| #define HAVE_SYS_WAIT_H 1
| #define HAVE_CTYPE_H 1
| #define HAVE_ERRNO_H 1
| #define HAVE_FCNTL_H 1
| #define HAVE_FNMATCH_H 1
| #define HAVE_GRP_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_LANGINFO_H 1
| #define HAVE_LIMITS_H 1
| #define HAVE_LINUX_FIEMAP_H 1
| #define HAVE_LINUX_FS_H 1
| #define HAVE_LINUX_MAGIC_H 1
| #define HAVE_LINUX_TYPES_H 1
| #define HAVE_WORKING_FS_IOC_GETFLAGS 1
| #define HAVE_LOCALE_H 1
| #define HAVE_PATHS_H 1
| #define HAVE_POLL_H 1
| #define HAVE_PTHREAD_H 1
| #define HAVE_PWD_H 1
| #define HAVE_SIGNAL_H 1
| #define HAVE_SPAWN_H 1
| #define HAVE_STDARG_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_SYS_CDEFS_H 1
| #define HAVE_SYS_IOCTL_H 1
| #define HAVE_SYS_MOUNT_H 1
| #define HAVE_SYS_QUEUE_H 1
| #define HAVE_SYS_PARAM_H 1
| #define HAVE_SYS_POLL_H 1
| #define HAVE_SYS_SELECT_H 1
| #define HAVE_SYS_STATFS_H 1
| #define HAVE_SYS_STATVFS_H 1
| #define HAVE_SYS_SYSMACROS_H 1
| #define HAVE_SYS_TIME_H 1
| #define HAVE_SYS_UTSNAME_H 1
| #define HAVE_SYS_VFS_H 1
| #define HAVE_SYS_XATTR_H 1
| #define HAVE_TIME_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_UTIME_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_WCTYPE_H 1
| #define HAVE_ZLIB_H 1
| #define HAVE_LIBZ 1
| #define HAVE_ICONV 1
| #define ICONV_CONST 
| #define HAVE_ICONV_H 1
| #define HAVE_LZ4_H 1
| #define HAVE_LZ4HC_H 1
| #define HAVE_LIBLZ4 1
| #define HAVE_ZSTD_H 1
| #define HAVE_LIBZSTD 1
| #define HAVE_LIBZSTD_COMPRESSOR 1
| #define HAVE_LIBXML_XMLREADER_H 1
| #define HAVE_LIBXML_XMLWRITER_H 1
| #define HAVE_REGEX_H 1
| #define HAVE_STRUCT_TM_TM_GMTOFF 1
| /* end confdefs.h.  */
| #include <stddef.h>
| #ifdef HAVE_STDIO_H
| # include <stdio.h>
| #endif
| #ifdef HAVE_STDLIB_H
| # include <stdlib.h>
| #endif
| #ifdef HAVE_STRING_H
| # include <string.h>
| #endif
| #ifdef HAVE_INTTYPES_H
| # include <inttypes.h>
| #endif
| #ifdef HAVE_STDINT_H
| # include <stdint.h>
| #endif
| #ifdef HAVE_STRINGS_H
| # include <strings.h>
| #endif
| #ifdef HAVE_SYS_TYPES_H
| # include <sys/types.h>
| #endif
| #ifdef HAVE_SYS_STAT_H
| # include <sys/stat.h>
| #endif
| #ifdef HAVE_UNISTD_H
| # include <unistd.h>
| #endif
| int
| main (void)
| {
| static struct stat ac_aggr;
| if (sizeof ac_aggr.st_birthtime)
| return 0;
|   ;
|   return 0;
| }
configure:14611: result: no
configure:14622: checking for struct stat.st_birthtimespec.tv_nsec
configure:14622: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2  conftest.c >&5
conftest.c: In function 'main':
conftest.c:140:12: error: 'struct stat' has no member named 'st_birthtimespec'
  140 | if (ac_aggr.st_birthtimespec.tv_nsec)
      |            ^
conftest.c:139:20: warning: variable 'ac_aggr' set but not used [-Wunused-but-set-variable]
  139 | static struct stat ac_aggr;
      |                    ^~~~~~~
configure:14622: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "libarchive"
| #define PACKAGE_TARNAME "libarchive"
| #define PACKAGE_VERSION "3.7.2"
| #define PACKAGE_STRING "libarchive 3.7.2"
| #define PACKAGE_BUGREPORT "libarchive-discuss@googlegroups.com"
| #define PACKAGE_URL ""
| #define PACKAGE "libarchive"
| #define VERSION "3.7.2"
| #define __LIBARCHIVE_CONFIG_H_INCLUDED 1
| #define LIBARCHIVE_VERSION_STRING "3.7.2"
| #define LIBARCHIVE_VERSION_NUMBER "3007002"
| #define BSDCPIO_VERSION_STRING "3.7.2"
| #define BSDTAR_VERSION_STRING "3.7.2"
| #define BSDCAT_VERSION_STRING "3.7.2"
| #define BSDUNZIP_VERSION_STRING "3.7.2"
| #define HAVE_STDIO_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_SYS_TIME_H 1
| #define STDC_HEADERS 1
| #define _ALL_SOURCE 1
| #define _DARWIN_C_SOURCE 1
| #define _GNU_SOURCE 1
| #define _HPUX_ALT_XOPEN_SOCKET_API 1
| #define _NETBSD_SOURCE 1
| #define _OPENBSD_SOURCE 1
| #define _POSIX_PTHREAD_SEMANTICS 1
| #define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1
| #define __STDC_WANT_IEC_60559_BFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_DFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1
| #define __STDC_WANT_IEC_60559_TYPES_EXT__ 1
| #define __STDC_WANT_LIB_EXT2__ 1
| #define __STDC_WANT_MATH_SPEC_FUNCS__ 1
| #define _TANDEM_SOURCE 1
| #define __EXTENSIONS__ 1
| #define HAVE_DLFCN_H 1
| #define LT_OBJDIR ".libs/"
| #define HAVE_DIRENT_H 1
| #define HAVE_SYS_WAIT_H 1
| #define HAVE_CTYPE_H 1
| #define HAVE_ERRNO_H 1
| #define HAVE_FCNTL_H 1
| #define HAVE_FNMATCH_H 1
| #define HAVE_GRP_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_LANGINFO_H 1
| #define HAVE_LIMITS_H 1
| #define HAVE_LINUX_FIEMAP_H 1
| #define HAVE_LINUX_FS_H 1
| #define HAVE_LINUX_MAGIC_H 1
| #define HAVE_LINUX_TYPES_H 1
| #define HAVE_WORKING_FS_IOC_GETFLAGS 1
| #define HAVE_LOCALE_H 1
| #define HAVE_PATHS_H 1
| #define HAVE_POLL_H 1
| #define HAVE_PTHREAD_H 1
| #define HAVE_PWD_H 1
| #define HAVE_SIGNAL_H 1
| #define HAVE_SPAWN_H 1
| #define HAVE_STDARG_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_SYS_CDEFS_H 1
| #define HAVE_SYS_IOCTL_H 1
| #define HAVE_SYS_MOUNT_H 1
| #define HAVE_SYS_QUEUE_H 1
| #define HAVE_SYS_PARAM_H 1
| #define HAVE_SYS_POLL_H 1
| #define HAVE_SYS_SELECT_H 1
| #define HAVE_SYS_STATFS_H 1
| #define HAVE_SYS_STATVFS_H 1
| #define HAVE_SYS_SYSMACROS_H 1
| #define HAVE_SYS_TIME_H 1
| #define HAVE_SYS_UTSNAME_H 1
| #define HAVE_SYS_VFS_H 1
| #define HAVE_SYS_XATTR_H 1
| #define HAVE_TIME_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_UTIME_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_WCTYPE_H 1
| #define HAVE_ZLIB_H 1
| #define HAVE_LIBZ 1
| #define HAVE_ICONV 1
| #define ICONV_CONST 
| #define HAVE_ICONV_H 1
| #define HAVE_LZ4_H 1
| #define HAVE_LZ4HC_H 1
| #define HAVE_LIBLZ4 1
| #define HAVE_ZSTD_H 1
| #define HAVE_LIBZSTD 1
| #define HAVE_LIBZSTD_COMPRESSOR 1
| #define HAVE_LIBXML_XMLREADER_H 1
| #define HAVE_LIBXML_XMLWRITER_H 1
| #define HAVE_REGEX_H 1
| #define HAVE_STRUCT_TM_TM_GMTOFF 1
| /* end confdefs.h.  */
| #include <stddef.h>
| #ifdef HAVE_STDIO_H
| # include <stdio.h>
| #endif
| #ifdef HAVE_STDLIB_H
| # include <stdlib.h>
| #endif
| #ifdef HAVE_STRING_H
| # include <string.h>
| #endif
| #ifdef HAVE_INTTYPES_H
| # include <inttypes.h>
| #endif
| #ifdef HAVE_STDINT_H
| # include <stdint.h>
| #endif
| #ifdef HAVE_STRINGS_H
| # include <strings.h>
| #endif
| #ifdef HAVE_SYS_TYPES_H
| # include <sys/types.h>
| #endif
| #ifdef HAVE_SYS_STAT_H
| # include <sys/stat.h>
| #endif
| #ifdef HAVE_UNISTD_H
| # include <unistd.h>
| #endif
| int
| main (void)
| {
| static struct stat ac_aggr;
| if (ac_aggr.st_birthtimespec.tv_nsec)
| return 0;
|   ;
|   return 0;
| }
configure:14622: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2  conftest.c >&5
conftest.c: In function 'main':
conftest.c:140:19: error: 'struct stat' has no member named 'st_birthtimespec'
  140 | if (sizeof ac_aggr.st_birthtimespec.tv_nsec)
      |                   ^
conftest.c:139:20: warning: variable 'ac_aggr' set but not used [-Wunused-but-set-variable]
  139 | static struct stat ac_aggr;
      |                    ^~~~~~~
configure:14622: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "libarchive"
| #define PACKAGE_TARNAME "libarchive"
| #define PACKAGE_VERSION "3.7.2"
| #define PACKAGE_STRING "libarchive 3.7.2"
| #define PACKAGE_BUGREPORT "libarchive-discuss@googlegroups.com"
| #define PACKAGE_URL ""
| #define PACKAGE "libarchive"
| #define VERSION "3.7.2"
| #define __LIBARCHIVE_CONFIG_H_INCLUDED 1
| #define LIBARCHIVE_VERSION_STRING "3.7.2"
| #define LIBARCHIVE_VERSION_NUMBER "3007002"
| #define BSDCPIO_VERSION_STRING "3.7.2"
| #define BSDTAR_VERSION_STRING "3.7.2"
| #define BSDCAT_VERSION_STRING "3.7.2"
| #define BSDUNZIP_VERSION_STRING "3.7.2"
| #define HAVE_STDIO_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_SYS_TIME_H 1
| #define STDC_HEADERS 1
| #define _ALL_SOURCE 1
| #define _DARWIN_C_SOURCE 1
| #define _GNU_SOURCE 1
| #define _HPUX_ALT_XOPEN_SOCKET_API 1
| #define _NETBSD_SOURCE 1
| #define _OPENBSD_SOURCE 1
| #define _POSIX_PTHREAD_SEMANTICS 1
| #define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1
| #define __STDC_WANT_IEC_60559_BFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_DFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1
| #define __STDC_WANT_IEC_60559_TYPES_EXT__ 1
| #define __STDC_WANT_LIB_EXT2__ 1
| #define __STDC_WANT_MATH_SPEC_FUNCS__ 1
| #define _TANDEM_SOURCE 1
| #define __EXTENSIONS__ 1
| #define HAVE_DLFCN_H 1
| #define LT_OBJDIR ".libs/"
| #define HAVE_DIRENT_H 1
| #define HAVE_SYS_WAIT_H 1
| #define HAVE_CTYPE_H 1
| #define HAVE_ERRNO_H 1
| #define HAVE_FCNTL_H 1
| #define HAVE_FNMATCH_H 1
| #define HAVE_GRP_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_LANGINFO_H 1
| #define HAVE_LIMITS_H 1
| #define HAVE_LINUX_FIEMAP_H 1
| #define HAVE_LINUX_FS_H 1
| #define HAVE_LINUX_MAGIC_H 1
| #define HAVE_LINUX_TYPES_H 1
| #define HAVE_WORKING_FS_IOC_GETFLAGS 1
| #define HAVE_LOCALE_H 1
| #define HAVE_PATHS_H 1
| #define HAVE_POLL_H 1
| #define HAVE_PTHREAD_H 1
| #define HAVE_PWD_H 1
| #define HAVE_SIGNAL_H 1
| #define HAVE_SPAWN_H 1
| #define HAVE_STDARG_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_SYS_CDEFS_H 1
| #define HAVE_SYS_IOCTL_H 1
| #define HAVE_SYS_MOUNT_H 1
| #define HAVE_SYS_QUEUE_H 1
| #define HAVE_SYS_PARAM_H 1
| #define HAVE_SYS_POLL_H 1
| #define HAVE_SYS_SELECT_H 1
| #define HAVE_SYS_STATFS_H 1
| #define HAVE_SYS_STATVFS_H 1
| #define HAVE_SYS_SYSMACROS_H 1
| #define HAVE_SYS_TIME_H 1
| #define HAVE_SYS_UTSNAME_H 1
| #define HAVE_SYS_VFS_H 1
| #define HAVE_SYS_XATTR_H 1
| #define HAVE_TIME_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_UTIME_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_WCTYPE_H 1
| #define HAVE_ZLIB_H 1
| #define HAVE_LIBZ 1
| #define HAVE_ICONV 1
| #define ICONV_CONST 
| #define HAVE_ICONV_H 1
| #define HAVE_LZ4_H 1
| #define HAVE_LZ4HC_H 1
| #define HAVE_LIBLZ4 1
| #define HAVE_ZSTD_H 1
| #define HAVE_LIBZSTD 1
| #define HAVE_LIBZSTD_COMPRESSOR 1
| #define HAVE_LIBXML_XMLREADER_H 1
| #define HAVE_LIBXML_XMLWRITER_H 1
| #define HAVE_REGEX_H 1
| #define HAVE_STRUCT_TM_TM_GMTOFF 1
| /* end confdefs.h.  */
| #include <stddef.h>
| #ifdef HAVE_STDIO_H
| # include <stdio.h>
| #endif
| #ifdef HAVE_STDLIB_H
| # include <stdlib.h>
| #endif
| #ifdef HAVE_STRING_H
| # include <string.h>
| #endif
| #ifdef HAVE_INTTYPES_H
| # include <inttypes.h>
| #endif
| #ifdef HAVE_STDINT_H
| # include <stdint.h>
| #endif
| #ifdef HAVE_STRINGS_H
| # include <strings.h>
| #endif
| #ifdef HAVE_SYS_TYPES_H
| # include <sys/types.h>
| #endif
| #ifdef HAVE_SYS_STAT_H
| # include <sys/stat.h>
| #endif
| #ifdef HAVE_UNISTD_H
| # include <unistd.h>
| #endif
| int
| main (void)
| {
| static struct stat ac_aggr;
| if (sizeof ac_aggr.st_birthtimespec.tv_nsec)
| return 0;
|   ;
|   return 0;
| }
configure:14622: result: no
configure:14631: checking for struct stat.st_mtimespec.tv_nsec
configure:14631: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2  conftest.c >&5
conftest.c: In function 'main':
conftest.c:140:12: error: 'struct stat' has no member named 'st_mtimespec'
  140 | if (ac_aggr.st_mtimespec.tv_nsec)
      |            ^
conftest.c:139:20: warning: variable 'ac_aggr' set but not used [-Wunused-but-set-variable]
  139 | static struct stat ac_aggr;
      |                    ^~~~~~~
configure:14631: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "libarchive"
| #define PACKAGE_TARNAME "libarchive"
| #define PACKAGE_VERSION "3.7.2"
| #define PACKAGE_STRING "libarchive 3.7.2"
| #define PACKAGE_BUGREPORT "libarchive-discuss@googlegroups.com"
| #define PACKAGE_URL ""
| #define PACKAGE "libarchive"
| #define VERSION "3.7.2"
| #define __LIBARCHIVE_CONFIG_H_INCLUDED 1
| #define LIBARCHIVE_VERSION_STRING "3.7.2"
| #define LIBARCHIVE_VERSION_NUMBER "3007002"
| #define BSDCPIO_VERSION_STRING "3.7.2"
| #define BSDTAR_VERSION_STRING "3.7.2"
| #define BSDCAT_VERSION_STRING "3.7.2"
| #define BSDUNZIP_VERSION_STRING "3.7.2"
| #define HAVE_STDIO_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_SYS_TIME_H 1
| #define STDC_HEADERS 1
| #define _ALL_SOURCE 1
| #define _DARWIN_C_SOURCE 1
| #define _GNU_SOURCE 1
| #define _HPUX_ALT_XOPEN_SOCKET_API 1
| #define _NETBSD_SOURCE 1
| #define _OPENBSD_SOURCE 1
| #define _POSIX_PTHREAD_SEMANTICS 1
| #define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1
| #define __STDC_WANT_IEC_60559_BFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_DFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1
| #define __STDC_WANT_IEC_60559_TYPES_EXT__ 1
| #define __STDC_WANT_LIB_EXT2__ 1
| #define __STDC_WANT_MATH_SPEC_FUNCS__ 1
| #define _TANDEM_SOURCE 1
| #define __EXTENSIONS__ 1
| #define HAVE_DLFCN_H 1
| #define LT_OBJDIR ".libs/"
| #define HAVE_DIRENT_H 1
| #define HAVE_SYS_WAIT_H 1
| #define HAVE_CTYPE_H 1
| #define HAVE_ERRNO_H 1
| #define HAVE_FCNTL_H 1
| #define HAVE_FNMATCH_H 1
| #define HAVE_GRP_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_LANGINFO_H 1
| #define HAVE_LIMITS_H 1
| #define HAVE_LINUX_FIEMAP_H 1
| #define HAVE_LINUX_FS_H 1
| #define HAVE_LINUX_MAGIC_H 1
| #define HAVE_LINUX_TYPES_H 1
| #define HAVE_WORKING_FS_IOC_GETFLAGS 1
| #define HAVE_LOCALE_H 1
| #define HAVE_PATHS_H 1
| #define HAVE_POLL_H 1
| #define HAVE_PTHREAD_H 1
| #define HAVE_PWD_H 1
| #define HAVE_SIGNAL_H 1
| #define HAVE_SPAWN_H 1
| #define HAVE_STDARG_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_SYS_CDEFS_H 1
| #define HAVE_SYS_IOCTL_H 1
| #define HAVE_SYS_MOUNT_H 1
| #define HAVE_SYS_QUEUE_H 1
| #define HAVE_SYS_PARAM_H 1
| #define HAVE_SYS_POLL_H 1
| #define HAVE_SYS_SELECT_H 1
| #define HAVE_SYS_STATFS_H 1
| #define HAVE_SYS_STATVFS_H 1
| #define HAVE_SYS_SYSMACROS_H 1
| #define HAVE_SYS_TIME_H 1
| #define HAVE_SYS_UTSNAME_H 1
| #define HAVE_SYS_VFS_H 1
| #define HAVE_SYS_XATTR_H 1
| #define HAVE_TIME_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_UTIME_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_WCTYPE_H 1
| #define HAVE_ZLIB_H 1
| #define HAVE_LIBZ 1
| #define HAVE_ICONV 1
| #define ICONV_CONST 
| #define HAVE_ICONV_H 1
| #define HAVE_LZ4_H 1
| #define HAVE_LZ4HC_H 1
| #define HAVE_LIBLZ4 1
| #define HAVE_ZSTD_H 1
| #define HAVE_LIBZSTD 1
| #define HAVE_LIBZSTD_COMPRESSOR 1
| #define HAVE_LIBXML_XMLREADER_H 1
| #define HAVE_LIBXML_XMLWRITER_H 1
| #define HAVE_REGEX_H 1
| #define HAVE_STRUCT_TM_TM_GMTOFF 1
| /* end confdefs.h.  */
| #include <stddef.h>
| #ifdef HAVE_STDIO_H
| # include <stdio.h>
| #endif
| #ifdef HAVE_STDLIB_H
| # include <stdlib.h>
| #endif
| #ifdef HAVE_STRING_H
| # include <string.h>
| #endif
| #ifdef HAVE_INTTYPES_H
| # include <inttypes.h>
| #endif
| #ifdef HAVE_STDINT_H
| # include <stdint.h>
| #endif
| #ifdef HAVE_STRINGS_H
| # include <strings.h>
| #endif
| #ifdef HAVE_SYS_TYPES_H
| # include <sys/types.h>
| #endif
| #ifdef HAVE_SYS_STAT_H
| # include <sys/stat.h>
| #endif
| #ifdef HAVE_UNISTD_H
| # include <unistd.h>
| #endif
| int
| main (void)
| {
| static struct stat ac_aggr;
| if (ac_aggr.st_mtimespec.tv_nsec)
| return 0;
|   ;
|   return 0;
| }
configure:14631: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2  conftest.c >&5
conftest.c: In function 'main':
conftest.c:140:19: error: 'struct stat' has no member named 'st_mtimespec'
  140 | if (sizeof ac_aggr.st_mtimespec.tv_nsec)
      |                   ^
conftest.c:139:20: warning: variable 'ac_aggr' set but not used [-Wunused-but-set-variable]
  139 | static struct stat ac_aggr;
      |                    ^~~~~~~
configure:14631: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "libarchive"
| #define PACKAGE_TARNAME "libarchive"
| #define PACKAGE_VERSION "3.7.2"
| #define PACKAGE_STRING "libarchive 3.7.2"
| #define PACKAGE_BUGREPORT "libarchive-discuss@googlegroups.com"
| #define PACKAGE_URL ""
| #define PACKAGE "libarchive"
| #define VERSION "3.7.2"
| #define __LIBARCHIVE_CONFIG_H_INCLUDED 1
| #define LIBARCHIVE_VERSION_STRING "3.7.2"
| #define LIBARCHIVE_VERSION_NUMBER "3007002"
| #define BSDCPIO_VERSION_STRING "3.7.2"
| #define BSDTAR_VERSION_STRING "3.7.2"
| #define BSDCAT_VERSION_STRING "3.7.2"
| #define BSDUNZIP_VERSION_STRING "3.7.2"
| #define HAVE_STDIO_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_SYS_TIME_H 1
| #define STDC_HEADERS 1
| #define _ALL_SOURCE 1
| #define _DARWIN_C_SOURCE 1
| #define _GNU_SOURCE 1
| #define _HPUX_ALT_XOPEN_SOCKET_API 1
| #define _NETBSD_SOURCE 1
| #define _OPENBSD_SOURCE 1
| #define _POSIX_PTHREAD_SEMANTICS 1
| #define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1
| #define __STDC_WANT_IEC_60559_BFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_DFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1
| #define __STDC_WANT_IEC_60559_TYPES_EXT__ 1
| #define __STDC_WANT_LIB_EXT2__ 1
| #define __STDC_WANT_MATH_SPEC_FUNCS__ 1
| #define _TANDEM_SOURCE 1
| #define __EXTENSIONS__ 1
| #define HAVE_DLFCN_H 1
| #define LT_OBJDIR ".libs/"
| #define HAVE_DIRENT_H 1
| #define HAVE_SYS_WAIT_H 1
| #define HAVE_CTYPE_H 1
| #define HAVE_ERRNO_H 1
| #define HAVE_FCNTL_H 1
| #define HAVE_FNMATCH_H 1
| #define HAVE_GRP_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_LANGINFO_H 1
| #define HAVE_LIMITS_H 1
| #define HAVE_LINUX_FIEMAP_H 1
| #define HAVE_LINUX_FS_H 1
| #define HAVE_LINUX_MAGIC_H 1
| #define HAVE_LINUX_TYPES_H 1
| #define HAVE_WORKING_FS_IOC_GETFLAGS 1
| #define HAVE_LOCALE_H 1
| #define HAVE_PATHS_H 1
| #define HAVE_POLL_H 1
| #define HAVE_PTHREAD_H 1
| #define HAVE_PWD_H 1
| #define HAVE_SIGNAL_H 1
| #define HAVE_SPAWN_H 1
| #define HAVE_STDARG_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_SYS_CDEFS_H 1
| #define HAVE_SYS_IOCTL_H 1
| #define HAVE_SYS_MOUNT_H 1
| #define HAVE_SYS_QUEUE_H 1
| #define HAVE_SYS_PARAM_H 1
| #define HAVE_SYS_POLL_H 1
| #define HAVE_SYS_SELECT_H 1
| #define HAVE_SYS_STATFS_H 1
| #define HAVE_SYS_STATVFS_H 1
| #define HAVE_SYS_SYSMACROS_H 1
| #define HAVE_SYS_TIME_H 1
| #define HAVE_SYS_UTSNAME_H 1
| #define HAVE_SYS_VFS_H 1
| #define HAVE_SYS_XATTR_H 1
| #define HAVE_TIME_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_UTIME_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_WCTYPE_H 1
| #define HAVE_ZLIB_H 1
| #define HAVE_LIBZ 1
| #define HAVE_ICONV 1
| #define ICONV_CONST 
| #define HAVE_ICONV_H 1
| #define HAVE_LZ4_H 1
| #define HAVE_LZ4HC_H 1
| #define HAVE_LIBLZ4 1
| #define HAVE_ZSTD_H 1
| #define HAVE_LIBZSTD 1
| #define HAVE_LIBZSTD_COMPRESSOR 1
| #define HAVE_LIBXML_XMLREADER_H 1
| #define HAVE_LIBXML_XMLWRITER_H 1
| #define HAVE_REGEX_H 1
| #define HAVE_STRUCT_TM_TM_GMTOFF 1
| /* end confdefs.h.  */
| #include <stddef.h>
| #ifdef HAVE_STDIO_H
| # include <stdio.h>
| #endif
| #ifdef HAVE_STDLIB_H
| # include <stdlib.h>
| #endif
| #ifdef HAVE_STRING_H
| # include <string.h>
| #endif
| #ifdef HAVE_INTTYPES_H
| # include <inttypes.h>
| #endif
| #ifdef HAVE_STDINT_H
| # include <stdint.h>
| #endif
| #ifdef HAVE_STRINGS_H
| # include <strings.h>
| #endif
| #ifdef HAVE_SYS_TYPES_H
| # include <sys/types.h>
| #endif
| #ifdef HAVE_SYS_STAT_H
| # include <sys/stat.h>
| #endif
| #ifdef HAVE_UNISTD_H
| # include <unistd.h>
| #endif
| int
| main (void)
| {
| static struct stat ac_aggr;
| if (sizeof ac_aggr.st_mtimespec.tv_nsec)
| return 0;
|   ;
|   return 0;
| }
configure:14631: result: no
configure:14640: checking for struct stat.st_mtim.tv_nsec
configure:14640: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2  conftest.c >&5
configure:14640: $? = 0
configure:14640: result: yes
configure:14649: checking for struct stat.st_mtime_n
configure:14649: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2  conftest.c >&5
conftest.c: In function 'main':
conftest.c:141:13: error: 'struct stat' has no member named 'st_mtime_n'; did you mean 'st_mtim'?
  141 | if (ac_aggr.st_mtime_n)
      |             ^~~~~~~~~~
      |             st_mtim
conftest.c:140:20: warning: variable 'ac_aggr' set but not used [-Wunused-but-set-variable]
  140 | static struct stat ac_aggr;
      |                    ^~~~~~~
configure:14649: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "libarchive"
| #define PACKAGE_TARNAME "libarchive"
| #define PACKAGE_VERSION "3.7.2"
| #define PACKAGE_STRING "libarchive 3.7.2"
| #define PACKAGE_BUGREPORT "libarchive-discuss@googlegroups.com"
| #define PACKAGE_URL ""
| #define PACKAGE "libarchive"
| #define VERSION "3.7.2"
| #define __LIBARCHIVE_CONFIG_H_INCLUDED 1
| #define LIBARCHIVE_VERSION_STRING "3.7.2"
| #define LIBARCHIVE_VERSION_NUMBER "3007002"
| #define BSDCPIO_VERSION_STRING "3.7.2"
| #define BSDTAR_VERSION_STRING "3.7.2"
| #define BSDCAT_VERSION_STRING "3.7.2"
| #define BSDUNZIP_VERSION_STRING "3.7.2"
| #define HAVE_STDIO_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_SYS_TIME_H 1
| #define STDC_HEADERS 1
| #define _ALL_SOURCE 1
| #define _DARWIN_C_SOURCE 1
| #define _GNU_SOURCE 1
| #define _HPUX_ALT_XOPEN_SOCKET_API 1
| #define _NETBSD_SOURCE 1
| #define _OPENBSD_SOURCE 1
| #define _POSIX_PTHREAD_SEMANTICS 1
| #define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1
| #define __STDC_WANT_IEC_60559_BFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_DFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1
| #define __STDC_WANT_IEC_60559_TYPES_EXT__ 1
| #define __STDC_WANT_LIB_EXT2__ 1
| #define __STDC_WANT_MATH_SPEC_FUNCS__ 1
| #define _TANDEM_SOURCE 1
| #define __EXTENSIONS__ 1
| #define HAVE_DLFCN_H 1
| #define LT_OBJDIR ".libs/"
| #define HAVE_DIRENT_H 1
| #define HAVE_SYS_WAIT_H 1
| #define HAVE_CTYPE_H 1
| #define HAVE_ERRNO_H 1
| #define HAVE_FCNTL_H 1
| #define HAVE_FNMATCH_H 1
| #define HAVE_GRP_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_LANGINFO_H 1
| #define HAVE_LIMITS_H 1
| #define HAVE_LINUX_FIEMAP_H 1
| #define HAVE_LINUX_FS_H 1
| #define HAVE_LINUX_MAGIC_H 1
| #define HAVE_LINUX_TYPES_H 1
| #define HAVE_WORKING_FS_IOC_GETFLAGS 1
| #define HAVE_LOCALE_H 1
| #define HAVE_PATHS_H 1
| #define HAVE_POLL_H 1
| #define HAVE_PTHREAD_H 1
| #define HAVE_PWD_H 1
| #define HAVE_SIGNAL_H 1
| #define HAVE_SPAWN_H 1
| #define HAVE_STDARG_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_SYS_CDEFS_H 1
| #define HAVE_SYS_IOCTL_H 1
| #define HAVE_SYS_MOUNT_H 1
| #define HAVE_SYS_QUEUE_H 1
| #define HAVE_SYS_PARAM_H 1
| #define HAVE_SYS_POLL_H 1
| #define HAVE_SYS_SELECT_H 1
| #define HAVE_SYS_STATFS_H 1
| #define HAVE_SYS_STATVFS_H 1
| #define HAVE_SYS_SYSMACROS_H 1
| #define HAVE_SYS_TIME_H 1
| #define HAVE_SYS_UTSNAME_H 1
| #define HAVE_SYS_VFS_H 1
| #define HAVE_SYS_XATTR_H 1
| #define HAVE_TIME_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_UTIME_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_WCTYPE_H 1
| #define HAVE_ZLIB_H 1
| #define HAVE_LIBZ 1
| #define HAVE_ICONV 1
| #define ICONV_CONST 
| #define HAVE_ICONV_H 1
| #define HAVE_LZ4_H 1
| #define HAVE_LZ4HC_H 1
| #define HAVE_LIBLZ4 1
| #define HAVE_ZSTD_H 1
| #define HAVE_LIBZSTD 1
| #define HAVE_LIBZSTD_COMPRESSOR 1
| #define HAVE_LIBXML_XMLREADER_H 1
| #define HAVE_LIBXML_XMLWRITER_H 1
| #define HAVE_REGEX_H 1
| #define HAVE_STRUCT_TM_TM_GMTOFF 1
| #define HAVE_STRUCT_STAT_ST_MTIM_TV_NSEC 1
| /* end confdefs.h.  */
| #include <stddef.h>
| #ifdef HAVE_STDIO_H
| # include <stdio.h>
| #endif
| #ifdef HAVE_STDLIB_H
| # include <stdlib.h>
| #endif
| #ifdef HAVE_STRING_H
| # include <string.h>
| #endif
| #ifdef HAVE_INTTYPES_H
| # include <inttypes.h>
| #endif
| #ifdef HAVE_STDINT_H
| # include <stdint.h>
| #endif
| #ifdef HAVE_STRINGS_H
| # include <strings.h>
| #endif
| #ifdef HAVE_SYS_TYPES_H
| # include <sys/types.h>
| #endif
| #ifdef HAVE_SYS_STAT_H
| # include <sys/stat.h>
| #endif
| #ifdef HAVE_UNISTD_H
| # include <unistd.h>
| #endif
| int
| main (void)
| {
| static struct stat ac_aggr;
| if (ac_aggr.st_mtime_n)
| return 0;
|   ;
|   return 0;
| }
configure:14649: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2  conftest.c >&5
conftest.c: In function 'main':
conftest.c:141:20: error: 'struct stat' has no member named 'st_mtime_n'; did you mean 'st_mtim'?
  141 | if (sizeof ac_aggr.st_mtime_n)
      |                    ^~~~~~~~~~
      |                    st_mtim
conftest.c:140:20: warning: variable 'ac_aggr' set but not used [-Wunused-but-set-variable]
  140 | static struct stat ac_aggr;
      |                    ^~~~~~~
configure:14649: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "libarchive"
| #define PACKAGE_TARNAME "libarchive"
| #define PACKAGE_VERSION "3.7.2"
| #define PACKAGE_STRING "libarchive 3.7.2"
| #define PACKAGE_BUGREPORT "libarchive-discuss@googlegroups.com"
| #define PACKAGE_URL ""
| #define PACKAGE "libarchive"
| #define VERSION "3.7.2"
| #define __LIBARCHIVE_CONFIG_H_INCLUDED 1
| #define LIBARCHIVE_VERSION_STRING "3.7.2"
| #define LIBARCHIVE_VERSION_NUMBER "3007002"
| #define BSDCPIO_VERSION_STRING "3.7.2"
| #define BSDTAR_VERSION_STRING "3.7.2"
| #define BSDCAT_VERSION_STRING "3.7.2"
| #define BSDUNZIP_VERSION_STRING "3.7.2"
| #define HAVE_STDIO_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_SYS_TIME_H 1
| #define STDC_HEADERS 1
| #define _ALL_SOURCE 1
| #define _DARWIN_C_SOURCE 1
| #define _GNU_SOURCE 1
| #define _HPUX_ALT_XOPEN_SOCKET_API 1
| #define _NETBSD_SOURCE 1
| #define _OPENBSD_SOURCE 1
| #define _POSIX_PTHREAD_SEMANTICS 1
| #define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1
| #define __STDC_WANT_IEC_60559_BFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_DFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1
| #define __STDC_WANT_IEC_60559_TYPES_EXT__ 1
| #define __STDC_WANT_LIB_EXT2__ 1
| #define __STDC_WANT_MATH_SPEC_FUNCS__ 1
| #define _TANDEM_SOURCE 1
| #define __EXTENSIONS__ 1
| #define HAVE_DLFCN_H 1
| #define LT_OBJDIR ".libs/"
| #define HAVE_DIRENT_H 1
| #define HAVE_SYS_WAIT_H 1
| #define HAVE_CTYPE_H 1
| #define HAVE_ERRNO_H 1
| #define HAVE_FCNTL_H 1
| #define HAVE_FNMATCH_H 1
| #define HAVE_GRP_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_LANGINFO_H 1
| #define HAVE_LIMITS_H 1
| #define HAVE_LINUX_FIEMAP_H 1
| #define HAVE_LINUX_FS_H 1
| #define HAVE_LINUX_MAGIC_H 1
| #define HAVE_LINUX_TYPES_H 1
| #define HAVE_WORKING_FS_IOC_GETFLAGS 1
| #define HAVE_LOCALE_H 1
| #define HAVE_PATHS_H 1
| #define HAVE_POLL_H 1
| #define HAVE_PTHREAD_H 1
| #define HAVE_PWD_H 1
| #define HAVE_SIGNAL_H 1
| #define HAVE_SPAWN_H 1
| #define HAVE_STDARG_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_SYS_CDEFS_H 1
| #define HAVE_SYS_IOCTL_H 1
| #define HAVE_SYS_MOUNT_H 1
| #define HAVE_SYS_QUEUE_H 1
| #define HAVE_SYS_PARAM_H 1
| #define HAVE_SYS_POLL_H 1
| #define HAVE_SYS_SELECT_H 1
| #define HAVE_SYS_STATFS_H 1
| #define HAVE_SYS_STATVFS_H 1
| #define HAVE_SYS_SYSMACROS_H 1
| #define HAVE_SYS_TIME_H 1
| #define HAVE_SYS_UTSNAME_H 1
| #define HAVE_SYS_VFS_H 1
| #define HAVE_SYS_XATTR_H 1
| #define HAVE_TIME_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_UTIME_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_WCTYPE_H 1
| #define HAVE_ZLIB_H 1
| #define HAVE_LIBZ 1
| #define HAVE_ICONV 1
| #define ICONV_CONST 
| #define HAVE_ICONV_H 1
| #define HAVE_LZ4_H 1
| #define HAVE_LZ4HC_H 1
| #define HAVE_LIBLZ4 1
| #define HAVE_ZSTD_H 1
| #define HAVE_LIBZSTD 1
| #define HAVE_LIBZSTD_COMPRESSOR 1
| #define HAVE_LIBXML_XMLREADER_H 1
| #define HAVE_LIBXML_XMLWRITER_H 1
| #define HAVE_REGEX_H 1
| #define HAVE_STRUCT_TM_TM_GMTOFF 1
| #define HAVE_STRUCT_STAT_ST_MTIM_TV_NSEC 1
| /* end confdefs.h.  */
| #include <stddef.h>
| #ifdef HAVE_STDIO_H
| # include <stdio.h>
| #endif
| #ifdef HAVE_STDLIB_H
| # include <stdlib.h>
| #endif
| #ifdef HAVE_STRING_H
| # include <string.h>
| #endif
| #ifdef HAVE_INTTYPES_H
| # include <inttypes.h>
| #endif
| #ifdef HAVE_STDINT_H
| # include <stdint.h>
| #endif
| #ifdef HAVE_STRINGS_H
| # include <strings.h>
| #endif
| #ifdef HAVE_SYS_TYPES_H
| # include <sys/types.h>
| #endif
| #ifdef HAVE_SYS_STAT_H
| # include <sys/stat.h>
| #endif
| #ifdef HAVE_UNISTD_H
| # include <unistd.h>
| #endif
| int
| main (void)
| {
| static struct stat ac_aggr;
| if (sizeof ac_aggr.st_mtime_n)
| return 0;
|   ;
|   return 0;
| }
configure:14649: result: no
configure:14658: checking for struct stat.st_umtime
configure:14658: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2  conftest.c >&5
conftest.c: In function 'main':
conftest.c:141:13: error: 'struct stat' has no member named 'st_umtime'; did you mean 'st_mtim'?
  141 | if (ac_aggr.st_umtime)
      |             ^~~~~~~~~
      |             st_mtim
conftest.c:140:20: warning: variable 'ac_aggr' set but not used [-Wunused-but-set-variable]
  140 | static struct stat ac_aggr;
      |                    ^~~~~~~
configure:14658: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "libarchive"
| #define PACKAGE_TARNAME "libarchive"
| #define PACKAGE_VERSION "3.7.2"
| #define PACKAGE_STRING "libarchive 3.7.2"
| #define PACKAGE_BUGREPORT "libarchive-discuss@googlegroups.com"
| #define PACKAGE_URL ""
| #define PACKAGE "libarchive"
| #define VERSION "3.7.2"
| #define __LIBARCHIVE_CONFIG_H_INCLUDED 1
| #define LIBARCHIVE_VERSION_STRING "3.7.2"
| #define LIBARCHIVE_VERSION_NUMBER "3007002"
| #define BSDCPIO_VERSION_STRING "3.7.2"
| #define BSDTAR_VERSION_STRING "3.7.2"
| #define BSDCAT_VERSION_STRING "3.7.2"
| #define BSDUNZIP_VERSION_STRING "3.7.2"
| #define HAVE_STDIO_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_SYS_TIME_H 1
| #define STDC_HEADERS 1
| #define _ALL_SOURCE 1
| #define _DARWIN_C_SOURCE 1
| #define _GNU_SOURCE 1
| #define _HPUX_ALT_XOPEN_SOCKET_API 1
| #define _NETBSD_SOURCE 1
| #define _OPENBSD_SOURCE 1
| #define _POSIX_PTHREAD_SEMANTICS 1
| #define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1
| #define __STDC_WANT_IEC_60559_BFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_DFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1
| #define __STDC_WANT_IEC_60559_TYPES_EXT__ 1
| #define __STDC_WANT_LIB_EXT2__ 1
| #define __STDC_WANT_MATH_SPEC_FUNCS__ 1
| #define _TANDEM_SOURCE 1
| #define __EXTENSIONS__ 1
| #define HAVE_DLFCN_H 1
| #define LT_OBJDIR ".libs/"
| #define HAVE_DIRENT_H 1
| #define HAVE_SYS_WAIT_H 1
| #define HAVE_CTYPE_H 1
| #define HAVE_ERRNO_H 1
| #define HAVE_FCNTL_H 1
| #define HAVE_FNMATCH_H 1
| #define HAVE_GRP_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_LANGINFO_H 1
| #define HAVE_LIMITS_H 1
| #define HAVE_LINUX_FIEMAP_H 1
| #define HAVE_LINUX_FS_H 1
| #define HAVE_LINUX_MAGIC_H 1
| #define HAVE_LINUX_TYPES_H 1
| #define HAVE_WORKING_FS_IOC_GETFLAGS 1
| #define HAVE_LOCALE_H 1
| #define HAVE_PATHS_H 1
| #define HAVE_POLL_H 1
| #define HAVE_PTHREAD_H 1
| #define HAVE_PWD_H 1
| #define HAVE_SIGNAL_H 1
| #define HAVE_SPAWN_H 1
| #define HAVE_STDARG_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_SYS_CDEFS_H 1
| #define HAVE_SYS_IOCTL_H 1
| #define HAVE_SYS_MOUNT_H 1
| #define HAVE_SYS_QUEUE_H 1
| #define HAVE_SYS_PARAM_H 1
| #define HAVE_SYS_POLL_H 1
| #define HAVE_SYS_SELECT_H 1
| #define HAVE_SYS_STATFS_H 1
| #define HAVE_SYS_STATVFS_H 1
| #define HAVE_SYS_SYSMACROS_H 1
| #define HAVE_SYS_TIME_H 1
| #define HAVE_SYS_UTSNAME_H 1
| #define HAVE_SYS_VFS_H 1
| #define HAVE_SYS_XATTR_H 1
| #define HAVE_TIME_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_UTIME_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_WCTYPE_H 1
| #define HAVE_ZLIB_H 1
| #define HAVE_LIBZ 1
| #define HAVE_ICONV 1
| #define ICONV_CONST 
| #define HAVE_ICONV_H 1
| #define HAVE_LZ4_H 1
| #define HAVE_LZ4HC_H 1
| #define HAVE_LIBLZ4 1
| #define HAVE_ZSTD_H 1
| #define HAVE_LIBZSTD 1
| #define HAVE_LIBZSTD_COMPRESSOR 1
| #define HAVE_LIBXML_XMLREADER_H 1
| #define HAVE_LIBXML_XMLWRITER_H 1
| #define HAVE_REGEX_H 1
| #define HAVE_STRUCT_TM_TM_GMTOFF 1
| #define HAVE_STRUCT_STAT_ST_MTIM_TV_NSEC 1
| /* end confdefs.h.  */
| #include <stddef.h>
| #ifdef HAVE_STDIO_H
| # include <stdio.h>
| #endif
| #ifdef HAVE_STDLIB_H
| # include <stdlib.h>
| #endif
| #ifdef HAVE_STRING_H
| # include <string.h>
| #endif
| #ifdef HAVE_INTTYPES_H
| # include <inttypes.h>
| #endif
| #ifdef HAVE_STDINT_H
| # include <stdint.h>
| #endif
| #ifdef HAVE_STRINGS_H
| # include <strings.h>
| #endif
| #ifdef HAVE_SYS_TYPES_H
| # include <sys/types.h>
| #endif
| #ifdef HAVE_SYS_STAT_H
| # include <sys/stat.h>
| #endif
| #ifdef HAVE_UNISTD_H
| # include <unistd.h>
| #endif
| int
| main (void)
| {
| static struct stat ac_aggr;
| if (ac_aggr.st_umtime)
| return 0;
|   ;
|   return 0;
| }
configure:14658: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2  conftest.c >&5
conftest.c: In function 'main':
conftest.c:141:20: error: 'struct stat' has no member named 'st_umtime'; did you mean 'st_mtim'?
  141 | if (sizeof ac_aggr.st_umtime)
      |                    ^~~~~~~~~
      |                    st_mtim
conftest.c:140:20: warning: variable 'ac_aggr' set but not used [-Wunused-but-set-variable]
  140 | static struct stat ac_aggr;
      |                    ^~~~~~~
configure:14658: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "libarchive"
| #define PACKAGE_TARNAME "libarchive"
| #define PACKAGE_VERSION "3.7.2"
| #define PACKAGE_STRING "libarchive 3.7.2"
| #define PACKAGE_BUGREPORT "libarchive-discuss@googlegroups.com"
| #define PACKAGE_URL ""
| #define PACKAGE "libarchive"
| #define VERSION "3.7.2"
| #define __LIBARCHIVE_CONFIG_H_INCLUDED 1
| #define LIBARCHIVE_VERSION_STRING "3.7.2"
| #define LIBARCHIVE_VERSION_NUMBER "3007002"
| #define BSDCPIO_VERSION_STRING "3.7.2"
| #define BSDTAR_VERSION_STRING "3.7.2"
| #define BSDCAT_VERSION_STRING "3.7.2"
| #define BSDUNZIP_VERSION_STRING "3.7.2"
| #define HAVE_STDIO_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_SYS_TIME_H 1
| #define STDC_HEADERS 1
| #define _ALL_SOURCE 1
| #define _DARWIN_C_SOURCE 1
| #define _GNU_SOURCE 1
| #define _HPUX_ALT_XOPEN_SOCKET_API 1
| #define _NETBSD_SOURCE 1
| #define _OPENBSD_SOURCE 1
| #define _POSIX_PTHREAD_SEMANTICS 1
| #define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1
| #define __STDC_WANT_IEC_60559_BFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_DFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1
| #define __STDC_WANT_IEC_60559_TYPES_EXT__ 1
| #define __STDC_WANT_LIB_EXT2__ 1
| #define __STDC_WANT_MATH_SPEC_FUNCS__ 1
| #define _TANDEM_SOURCE 1
| #define __EXTENSIONS__ 1
| #define HAVE_DLFCN_H 1
| #define LT_OBJDIR ".libs/"
| #define HAVE_DIRENT_H 1
| #define HAVE_SYS_WAIT_H 1
| #define HAVE_CTYPE_H 1
| #define HAVE_ERRNO_H 1
| #define HAVE_FCNTL_H 1
| #define HAVE_FNMATCH_H 1
| #define HAVE_GRP_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_LANGINFO_H 1
| #define HAVE_LIMITS_H 1
| #define HAVE_LINUX_FIEMAP_H 1
| #define HAVE_LINUX_FS_H 1
| #define HAVE_LINUX_MAGIC_H 1
| #define HAVE_LINUX_TYPES_H 1
| #define HAVE_WORKING_FS_IOC_GETFLAGS 1
| #define HAVE_LOCALE_H 1
| #define HAVE_PATHS_H 1
| #define HAVE_POLL_H 1
| #define HAVE_PTHREAD_H 1
| #define HAVE_PWD_H 1
| #define HAVE_SIGNAL_H 1
| #define HAVE_SPAWN_H 1
| #define HAVE_STDARG_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_SYS_CDEFS_H 1
| #define HAVE_SYS_IOCTL_H 1
| #define HAVE_SYS_MOUNT_H 1
| #define HAVE_SYS_QUEUE_H 1
| #define HAVE_SYS_PARAM_H 1
| #define HAVE_SYS_POLL_H 1
| #define HAVE_SYS_SELECT_H 1
| #define HAVE_SYS_STATFS_H 1
| #define HAVE_SYS_STATVFS_H 1
| #define HAVE_SYS_SYSMACROS_H 1
| #define HAVE_SYS_TIME_H 1
| #define HAVE_SYS_UTSNAME_H 1
| #define HAVE_SYS_VFS_H 1
| #define HAVE_SYS_XATTR_H 1
| #define HAVE_TIME_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_UTIME_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_WCTYPE_H 1
| #define HAVE_ZLIB_H 1
| #define HAVE_LIBZ 1
| #define HAVE_ICONV 1
| #define ICONV_CONST 
| #define HAVE_ICONV_H 1
| #define HAVE_LZ4_H 1
| #define HAVE_LZ4HC_H 1
| #define HAVE_LIBLZ4 1
| #define HAVE_ZSTD_H 1
| #define HAVE_LIBZSTD 1
| #define HAVE_LIBZSTD_COMPRESSOR 1
| #define HAVE_LIBXML_XMLREADER_H 1
| #define HAVE_LIBXML_XMLWRITER_H 1
| #define HAVE_REGEX_H 1
| #define HAVE_STRUCT_TM_TM_GMTOFF 1
| #define HAVE_STRUCT_STAT_ST_MTIM_TV_NSEC 1
| /* end confdefs.h.  */
| #include <stddef.h>
| #ifdef HAVE_STDIO_H
| # include <stdio.h>
| #endif
| #ifdef HAVE_STDLIB_H
| # include <stdlib.h>
| #endif
| #ifdef HAVE_STRING_H
| # include <string.h>
| #endif
| #ifdef HAVE_INTTYPES_H
| # include <inttypes.h>
| #endif
| #ifdef HAVE_STDINT_H
| # include <stdint.h>
| #endif
| #ifdef HAVE_STRINGS_H
| # include <strings.h>
| #endif
| #ifdef HAVE_SYS_TYPES_H
| # include <sys/types.h>
| #endif
| #ifdef HAVE_SYS_STAT_H
| # include <sys/stat.h>
| #endif
| #ifdef HAVE_UNISTD_H
| # include <unistd.h>
| #endif
| int
| main (void)
| {
| static struct stat ac_aggr;
| if (sizeof ac_aggr.st_umtime)
| return 0;
|   ;
|   return 0;
| }
configure:14658: result: no
configure:14667: checking for struct stat.st_mtime_usec
configure:14667: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2  conftest.c >&5
conftest.c: In function 'main':
conftest.c:141:12: error: 'struct stat' has no member named 'st_mtime_usec'
  141 | if (ac_aggr.st_mtime_usec)
      |            ^
conftest.c:140:20: warning: variable 'ac_aggr' set but not used [-Wunused-but-set-variable]
  140 | static struct stat ac_aggr;
      |                    ^~~~~~~
configure:14667: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "libarchive"
| #define PACKAGE_TARNAME "libarchive"
| #define PACKAGE_VERSION "3.7.2"
| #define PACKAGE_STRING "libarchive 3.7.2"
| #define PACKAGE_BUGREPORT "libarchive-discuss@googlegroups.com"
| #define PACKAGE_URL ""
| #define PACKAGE "libarchive"
| #define VERSION "3.7.2"
| #define __LIBARCHIVE_CONFIG_H_INCLUDED 1
| #define LIBARCHIVE_VERSION_STRING "3.7.2"
| #define LIBARCHIVE_VERSION_NUMBER "3007002"
| #define BSDCPIO_VERSION_STRING "3.7.2"
| #define BSDTAR_VERSION_STRING "3.7.2"
| #define BSDCAT_VERSION_STRING "3.7.2"
| #define BSDUNZIP_VERSION_STRING "3.7.2"
| #define HAVE_STDIO_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_SYS_TIME_H 1
| #define STDC_HEADERS 1
| #define _ALL_SOURCE 1
| #define _DARWIN_C_SOURCE 1
| #define _GNU_SOURCE 1
| #define _HPUX_ALT_XOPEN_SOCKET_API 1
| #define _NETBSD_SOURCE 1
| #define _OPENBSD_SOURCE 1
| #define _POSIX_PTHREAD_SEMANTICS 1
| #define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1
| #define __STDC_WANT_IEC_60559_BFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_DFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1
| #define __STDC_WANT_IEC_60559_TYPES_EXT__ 1
| #define __STDC_WANT_LIB_EXT2__ 1
| #define __STDC_WANT_MATH_SPEC_FUNCS__ 1
| #define _TANDEM_SOURCE 1
| #define __EXTENSIONS__ 1
| #define HAVE_DLFCN_H 1
| #define LT_OBJDIR ".libs/"
| #define HAVE_DIRENT_H 1
| #define HAVE_SYS_WAIT_H 1
| #define HAVE_CTYPE_H 1
| #define HAVE_ERRNO_H 1
| #define HAVE_FCNTL_H 1
| #define HAVE_FNMATCH_H 1
| #define HAVE_GRP_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_LANGINFO_H 1
| #define HAVE_LIMITS_H 1
| #define HAVE_LINUX_FIEMAP_H 1
| #define HAVE_LINUX_FS_H 1
| #define HAVE_LINUX_MAGIC_H 1
| #define HAVE_LINUX_TYPES_H 1
| #define HAVE_WORKING_FS_IOC_GETFLAGS 1
| #define HAVE_LOCALE_H 1
| #define HAVE_PATHS_H 1
| #define HAVE_POLL_H 1
| #define HAVE_PTHREAD_H 1
| #define HAVE_PWD_H 1
| #define HAVE_SIGNAL_H 1
| #define HAVE_SPAWN_H 1
| #define HAVE_STDARG_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_SYS_CDEFS_H 1
| #define HAVE_SYS_IOCTL_H 1
| #define HAVE_SYS_MOUNT_H 1
| #define HAVE_SYS_QUEUE_H 1
| #define HAVE_SYS_PARAM_H 1
| #define HAVE_SYS_POLL_H 1
| #define HAVE_SYS_SELECT_H 1
| #define HAVE_SYS_STATFS_H 1
| #define HAVE_SYS_STATVFS_H 1
| #define HAVE_SYS_SYSMACROS_H 1
| #define HAVE_SYS_TIME_H 1
| #define HAVE_SYS_UTSNAME_H 1
| #define HAVE_SYS_VFS_H 1
| #define HAVE_SYS_XATTR_H 1
| #define HAVE_TIME_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_UTIME_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_WCTYPE_H 1
| #define HAVE_ZLIB_H 1
| #define HAVE_LIBZ 1
| #define HAVE_ICONV 1
| #define ICONV_CONST 
| #define HAVE_ICONV_H 1
| #define HAVE_LZ4_H 1
| #define HAVE_LZ4HC_H 1
| #define HAVE_LIBLZ4 1
| #define HAVE_ZSTD_H 1
| #define HAVE_LIBZSTD 1
| #define HAVE_LIBZSTD_COMPRESSOR 1
| #define HAVE_LIBXML_XMLREADER_H 1
| #define HAVE_LIBXML_XMLWRITER_H 1
| #define HAVE_REGEX_H 1
| #define HAVE_STRUCT_TM_TM_GMTOFF 1
| #define HAVE_STRUCT_STAT_ST_MTIM_TV_NSEC 1
| /* end confdefs.h.  */
| #include <stddef.h>
| #ifdef HAVE_STDIO_H
| # include <stdio.h>
| #endif
| #ifdef HAVE_STDLIB_H
| # include <stdlib.h>
| #endif
| #ifdef HAVE_STRING_H
| # include <string.h>
| #endif
| #ifdef HAVE_INTTYPES_H
| # include <inttypes.h>
| #endif
| #ifdef HAVE_STDINT_H
| # include <stdint.h>
| #endif
| #ifdef HAVE_STRINGS_H
| # include <strings.h>
| #endif
| #ifdef HAVE_SYS_TYPES_H
| # include <sys/types.h>
| #endif
| #ifdef HAVE_SYS_STAT_H
| # include <sys/stat.h>
| #endif
| #ifdef HAVE_UNISTD_H
| # include <unistd.h>
| #endif
| int
| main (void)
| {
| static struct stat ac_aggr;
| if (ac_aggr.st_mtime_usec)
| return 0;
|   ;
|   return 0;
| }
configure:14667: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2  conftest.c >&5
conftest.c: In function 'main':
conftest.c:141:19: error: 'struct stat' has no member named 'st_mtime_usec'
  141 | if (sizeof ac_aggr.st_mtime_usec)
      |                   ^
conftest.c:140:20: warning: variable 'ac_aggr' set but not used [-Wunused-but-set-variable]
  140 | static struct stat ac_aggr;
      |                    ^~~~~~~
configure:14667: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "libarchive"
| #define PACKAGE_TARNAME "libarchive"
| #define PACKAGE_VERSION "3.7.2"
| #define PACKAGE_STRING "libarchive 3.7.2"
| #define PACKAGE_BUGREPORT "libarchive-discuss@googlegroups.com"
| #define PACKAGE_URL ""
| #define PACKAGE "libarchive"
| #define VERSION "3.7.2"
| #define __LIBARCHIVE_CONFIG_H_INCLUDED 1
| #define LIBARCHIVE_VERSION_STRING "3.7.2"
| #define LIBARCHIVE_VERSION_NUMBER "3007002"
| #define BSDCPIO_VERSION_STRING "3.7.2"
| #define BSDTAR_VERSION_STRING "3.7.2"
| #define BSDCAT_VERSION_STRING "3.7.2"
| #define BSDUNZIP_VERSION_STRING "3.7.2"
| #define HAVE_STDIO_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_SYS_TIME_H 1
| #define STDC_HEADERS 1
| #define _ALL_SOURCE 1
| #define _DARWIN_C_SOURCE 1
| #define _GNU_SOURCE 1
| #define _HPUX_ALT_XOPEN_SOCKET_API 1
| #define _NETBSD_SOURCE 1
| #define _OPENBSD_SOURCE 1
| #define _POSIX_PTHREAD_SEMANTICS 1
| #define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1
| #define __STDC_WANT_IEC_60559_BFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_DFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1
| #define __STDC_WANT_IEC_60559_TYPES_EXT__ 1
| #define __STDC_WANT_LIB_EXT2__ 1
| #define __STDC_WANT_MATH_SPEC_FUNCS__ 1
| #define _TANDEM_SOURCE 1
| #define __EXTENSIONS__ 1
| #define HAVE_DLFCN_H 1
| #define LT_OBJDIR ".libs/"
| #define HAVE_DIRENT_H 1
| #define HAVE_SYS_WAIT_H 1
| #define HAVE_CTYPE_H 1
| #define HAVE_ERRNO_H 1
| #define HAVE_FCNTL_H 1
| #define HAVE_FNMATCH_H 1
| #define HAVE_GRP_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_LANGINFO_H 1
| #define HAVE_LIMITS_H 1
| #define HAVE_LINUX_FIEMAP_H 1
| #define HAVE_LINUX_FS_H 1
| #define HAVE_LINUX_MAGIC_H 1
| #define HAVE_LINUX_TYPES_H 1
| #define HAVE_WORKING_FS_IOC_GETFLAGS 1
| #define HAVE_LOCALE_H 1
| #define HAVE_PATHS_H 1
| #define HAVE_POLL_H 1
| #define HAVE_PTHREAD_H 1
| #define HAVE_PWD_H 1
| #define HAVE_SIGNAL_H 1
| #define HAVE_SPAWN_H 1
| #define HAVE_STDARG_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_SYS_CDEFS_H 1
| #define HAVE_SYS_IOCTL_H 1
| #define HAVE_SYS_MOUNT_H 1
| #define HAVE_SYS_QUEUE_H 1
| #define HAVE_SYS_PARAM_H 1
| #define HAVE_SYS_POLL_H 1
| #define HAVE_SYS_SELECT_H 1
| #define HAVE_SYS_STATFS_H 1
| #define HAVE_SYS_STATVFS_H 1
| #define HAVE_SYS_SYSMACROS_H 1
| #define HAVE_SYS_TIME_H 1
| #define HAVE_SYS_UTSNAME_H 1
| #define HAVE_SYS_VFS_H 1
| #define HAVE_SYS_XATTR_H 1
| #define HAVE_TIME_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_UTIME_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_WCTYPE_H 1
| #define HAVE_ZLIB_H 1
| #define HAVE_LIBZ 1
| #define HAVE_ICONV 1
| #define ICONV_CONST 
| #define HAVE_ICONV_H 1
| #define HAVE_LZ4_H 1
| #define HAVE_LZ4HC_H 1
| #define HAVE_LIBLZ4 1
| #define HAVE_ZSTD_H 1
| #define HAVE_LIBZSTD 1
| #define HAVE_LIBZSTD_COMPRESSOR 1
| #define HAVE_LIBXML_XMLREADER_H 1
| #define HAVE_LIBXML_XMLWRITER_H 1
| #define HAVE_REGEX_H 1
| #define HAVE_STRUCT_TM_TM_GMTOFF 1
| #define HAVE_STRUCT_STAT_ST_MTIM_TV_NSEC 1
| /* end confdefs.h.  */
| #include <stddef.h>
| #ifdef HAVE_STDIO_H
| # include <stdio.h>
| #endif
| #ifdef HAVE_STDLIB_H
| # include <stdlib.h>
| #endif
| #ifdef HAVE_STRING_H
| # include <string.h>
| #endif
| #ifdef HAVE_INTTYPES_H
| # include <inttypes.h>
| #endif
| #ifdef HAVE_STDINT_H
| # include <stdint.h>
| #endif
| #ifdef HAVE_STRINGS_H
| # include <strings.h>
| #endif
| #ifdef HAVE_SYS_TYPES_H
| # include <sys/types.h>
| #endif
| #ifdef HAVE_SYS_STAT_H
| # include <sys/stat.h>
| #endif
| #ifdef HAVE_UNISTD_H
| # include <unistd.h>
| #endif
| int
| main (void)
| {
| static struct stat ac_aggr;
| if (sizeof ac_aggr.st_mtime_usec)
| return 0;
|   ;
|   return 0;
| }
configure:14667: result: no
configure:14677: checking for struct stat.st_blksize
configure:14677: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2  conftest.c >&5
configure:14677: $? = 0
configure:14677: result: yes
configure:14687: checking for struct stat.st_flags
configure:14687: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2  conftest.c >&5
conftest.c: In function 'main':
conftest.c:142:12: error: 'struct stat' has no member named 'st_flags'
  142 | if (ac_aggr.st_flags)
      |            ^
conftest.c:141:20: warning: variable 'ac_aggr' set but not used [-Wunused-but-set-variable]
  141 | static struct stat ac_aggr;
      |                    ^~~~~~~
configure:14687: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "libarchive"
| #define PACKAGE_TARNAME "libarchive"
| #define PACKAGE_VERSION "3.7.2"
| #define PACKAGE_STRING "libarchive 3.7.2"
| #define PACKAGE_BUGREPORT "libarchive-discuss@googlegroups.com"
| #define PACKAGE_URL ""
| #define PACKAGE "libarchive"
| #define VERSION "3.7.2"
| #define __LIBARCHIVE_CONFIG_H_INCLUDED 1
| #define LIBARCHIVE_VERSION_STRING "3.7.2"
| #define LIBARCHIVE_VERSION_NUMBER "3007002"
| #define BSDCPIO_VERSION_STRING "3.7.2"
| #define BSDTAR_VERSION_STRING "3.7.2"
| #define BSDCAT_VERSION_STRING "3.7.2"
| #define BSDUNZIP_VERSION_STRING "3.7.2"
| #define HAVE_STDIO_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_SYS_TIME_H 1
| #define STDC_HEADERS 1
| #define _ALL_SOURCE 1
| #define _DARWIN_C_SOURCE 1
| #define _GNU_SOURCE 1
| #define _HPUX_ALT_XOPEN_SOCKET_API 1
| #define _NETBSD_SOURCE 1
| #define _OPENBSD_SOURCE 1
| #define _POSIX_PTHREAD_SEMANTICS 1
| #define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1
| #define __STDC_WANT_IEC_60559_BFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_DFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1
| #define __STDC_WANT_IEC_60559_TYPES_EXT__ 1
| #define __STDC_WANT_LIB_EXT2__ 1
| #define __STDC_WANT_MATH_SPEC_FUNCS__ 1
| #define _TANDEM_SOURCE 1
| #define __EXTENSIONS__ 1
| #define HAVE_DLFCN_H 1
| #define LT_OBJDIR ".libs/"
| #define HAVE_DIRENT_H 1
| #define HAVE_SYS_WAIT_H 1
| #define HAVE_CTYPE_H 1
| #define HAVE_ERRNO_H 1
| #define HAVE_FCNTL_H 1
| #define HAVE_FNMATCH_H 1
| #define HAVE_GRP_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_LANGINFO_H 1
| #define HAVE_LIMITS_H 1
| #define HAVE_LINUX_FIEMAP_H 1
| #define HAVE_LINUX_FS_H 1
| #define HAVE_LINUX_MAGIC_H 1
| #define HAVE_LINUX_TYPES_H 1
| #define HAVE_WORKING_FS_IOC_GETFLAGS 1
| #define HAVE_LOCALE_H 1
| #define HAVE_PATHS_H 1
| #define HAVE_POLL_H 1
| #define HAVE_PTHREAD_H 1
| #define HAVE_PWD_H 1
| #define HAVE_SIGNAL_H 1
| #define HAVE_SPAWN_H 1
| #define HAVE_STDARG_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_SYS_CDEFS_H 1
| #define HAVE_SYS_IOCTL_H 1
| #define HAVE_SYS_MOUNT_H 1
| #define HAVE_SYS_QUEUE_H 1
| #define HAVE_SYS_PARAM_H 1
| #define HAVE_SYS_POLL_H 1
| #define HAVE_SYS_SELECT_H 1
| #define HAVE_SYS_STATFS_H 1
| #define HAVE_SYS_STATVFS_H 1
| #define HAVE_SYS_SYSMACROS_H 1
| #define HAVE_SYS_TIME_H 1
| #define HAVE_SYS_UTSNAME_H 1
| #define HAVE_SYS_VFS_H 1
| #define HAVE_SYS_XATTR_H 1
| #define HAVE_TIME_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_UTIME_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_WCTYPE_H 1
| #define HAVE_ZLIB_H 1
| #define HAVE_LIBZ 1
| #define HAVE_ICONV 1
| #define ICONV_CONST 
| #define HAVE_ICONV_H 1
| #define HAVE_LZ4_H 1
| #define HAVE_LZ4HC_H 1
| #define HAVE_LIBLZ4 1
| #define HAVE_ZSTD_H 1
| #define HAVE_LIBZSTD 1
| #define HAVE_LIBZSTD_COMPRESSOR 1
| #define HAVE_LIBXML_XMLREADER_H 1
| #define HAVE_LIBXML_XMLWRITER_H 1
| #define HAVE_REGEX_H 1
| #define HAVE_STRUCT_TM_TM_GMTOFF 1
| #define HAVE_STRUCT_STAT_ST_MTIM_TV_NSEC 1
| #define HAVE_STRUCT_STAT_ST_BLKSIZE 1
| /* end confdefs.h.  */
| #include <stddef.h>
| #ifdef HAVE_STDIO_H
| # include <stdio.h>
| #endif
| #ifdef HAVE_STDLIB_H
| # include <stdlib.h>
| #endif
| #ifdef HAVE_STRING_H
| # include <string.h>
| #endif
| #ifdef HAVE_INTTYPES_H
| # include <inttypes.h>
| #endif
| #ifdef HAVE_STDINT_H
| # include <stdint.h>
| #endif
| #ifdef HAVE_STRINGS_H
| # include <strings.h>
| #endif
| #ifdef HAVE_SYS_TYPES_H
| # include <sys/types.h>
| #endif
| #ifdef HAVE_SYS_STAT_H
| # include <sys/stat.h>
| #endif
| #ifdef HAVE_UNISTD_H
| # include <unistd.h>
| #endif
| int
| main (void)
| {
| static struct stat ac_aggr;
| if (ac_aggr.st_flags)
| return 0;
|   ;
|   return 0;
| }
configure:14687: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2  conftest.c >&5
conftest.c: In function 'main':
conftest.c:142:19: error: 'struct stat' has no member named 'st_flags'
  142 | if (sizeof ac_aggr.st_flags)
      |                   ^
conftest.c:141:20: warning: variable 'ac_aggr' set but not used [-Wunused-but-set-variable]
  141 | static struct stat ac_aggr;
      |                    ^~~~~~~
configure:14687: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "libarchive"
| #define PACKAGE_TARNAME "libarchive"
| #define PACKAGE_VERSION "3.7.2"
| #define PACKAGE_STRING "libarchive 3.7.2"
| #define PACKAGE_BUGREPORT "libarchive-discuss@googlegroups.com"
| #define PACKAGE_URL ""
| #define PACKAGE "libarchive"
| #define VERSION "3.7.2"
| #define __LIBARCHIVE_CONFIG_H_INCLUDED 1
| #define LIBARCHIVE_VERSION_STRING "3.7.2"
| #define LIBARCHIVE_VERSION_NUMBER "3007002"
| #define BSDCPIO_VERSION_STRING "3.7.2"
| #define BSDTAR_VERSION_STRING "3.7.2"
| #define BSDCAT_VERSION_STRING "3.7.2"
| #define BSDUNZIP_VERSION_STRING "3.7.2"
| #define HAVE_STDIO_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_SYS_TIME_H 1
| #define STDC_HEADERS 1
| #define _ALL_SOURCE 1
| #define _DARWIN_C_SOURCE 1
| #define _GNU_SOURCE 1
| #define _HPUX_ALT_XOPEN_SOCKET_API 1
| #define _NETBSD_SOURCE 1
| #define _OPENBSD_SOURCE 1
| #define _POSIX_PTHREAD_SEMANTICS 1
| #define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1
| #define __STDC_WANT_IEC_60559_BFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_DFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1
| #define __STDC_WANT_IEC_60559_TYPES_EXT__ 1
| #define __STDC_WANT_LIB_EXT2__ 1
| #define __STDC_WANT_MATH_SPEC_FUNCS__ 1
| #define _TANDEM_SOURCE 1
| #define __EXTENSIONS__ 1
| #define HAVE_DLFCN_H 1
| #define LT_OBJDIR ".libs/"
| #define HAVE_DIRENT_H 1
| #define HAVE_SYS_WAIT_H 1
| #define HAVE_CTYPE_H 1
| #define HAVE_ERRNO_H 1
| #define HAVE_FCNTL_H 1
| #define HAVE_FNMATCH_H 1
| #define HAVE_GRP_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_LANGINFO_H 1
| #define HAVE_LIMITS_H 1
| #define HAVE_LINUX_FIEMAP_H 1
| #define HAVE_LINUX_FS_H 1
| #define HAVE_LINUX_MAGIC_H 1
| #define HAVE_LINUX_TYPES_H 1
| #define HAVE_WORKING_FS_IOC_GETFLAGS 1
| #define HAVE_LOCALE_H 1
| #define HAVE_PATHS_H 1
| #define HAVE_POLL_H 1
| #define HAVE_PTHREAD_H 1
| #define HAVE_PWD_H 1
| #define HAVE_SIGNAL_H 1
| #define HAVE_SPAWN_H 1
| #define HAVE_STDARG_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_SYS_CDEFS_H 1
| #define HAVE_SYS_IOCTL_H 1
| #define HAVE_SYS_MOUNT_H 1
| #define HAVE_SYS_QUEUE_H 1
| #define HAVE_SYS_PARAM_H 1
| #define HAVE_SYS_POLL_H 1
| #define HAVE_SYS_SELECT_H 1
| #define HAVE_SYS_STATFS_H 1
| #define HAVE_SYS_STATVFS_H 1
| #define HAVE_SYS_SYSMACROS_H 1
| #define HAVE_SYS_TIME_H 1
| #define HAVE_SYS_UTSNAME_H 1
| #define HAVE_SYS_VFS_H 1
| #define HAVE_SYS_XATTR_H 1
| #define HAVE_TIME_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_UTIME_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_WCTYPE_H 1
| #define HAVE_ZLIB_H 1
| #define HAVE_LIBZ 1
| #define HAVE_ICONV 1
| #define ICONV_CONST 
| #define HAVE_ICONV_H 1
| #define HAVE_LZ4_H 1
| #define HAVE_LZ4HC_H 1
| #define HAVE_LIBLZ4 1
| #define HAVE_ZSTD_H 1
| #define HAVE_LIBZSTD 1
| #define HAVE_LIBZSTD_COMPRESSOR 1
| #define HAVE_LIBXML_XMLREADER_H 1
| #define HAVE_LIBXML_XMLWRITER_H 1
| #define HAVE_REGEX_H 1
| #define HAVE_STRUCT_TM_TM_GMTOFF 1
| #define HAVE_STRUCT_STAT_ST_MTIM_TV_NSEC 1
| #define HAVE_STRUCT_STAT_ST_BLKSIZE 1
| /* end confdefs.h.  */
| #include <stddef.h>
| #ifdef HAVE_STDIO_H
| # include <stdio.h>
| #endif
| #ifdef HAVE_STDLIB_H
| # include <stdlib.h>
| #endif
| #ifdef HAVE_STRING_H
| # include <string.h>
| #endif
| #ifdef HAVE_INTTYPES_H
| # include <inttypes.h>
| #endif
| #ifdef HAVE_STDINT_H
| # include <stdint.h>
| #endif
| #ifdef HAVE_STRINGS_H
| # include <strings.h>
| #endif
| #ifdef HAVE_SYS_TYPES_H
| # include <sys/types.h>
| #endif
| #ifdef HAVE_SYS_STAT_H
| # include <sys/stat.h>
| #endif
| #ifdef HAVE_UNISTD_H
| # include <unistd.h>
| #endif
| int
| main (void)
| {
| static struct stat ac_aggr;
| if (sizeof ac_aggr.st_flags)
| return 0;
|   ;
|   return 0;
| }
configure:14687: result: no
configure:14700: checking for uintmax_t
configure:14700: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2  conftest.c >&5
configure:14700: $? = 0
configure:14700: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2  conftest.c >&5
conftest.c: In function 'main':
conftest.c:141:24: error: expected expression before ')' token
  141 | if (sizeof ((uintmax_t)))
      |                        ^
configure:14700: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "libarchive"
| #define PACKAGE_TARNAME "libarchive"
| #define PACKAGE_VERSION "3.7.2"
| #define PACKAGE_STRING "libarchive 3.7.2"
| #define PACKAGE_BUGREPORT "libarchive-discuss@googlegroups.com"
| #define PACKAGE_URL ""
| #define PACKAGE "libarchive"
| #define VERSION "3.7.2"
| #define __LIBARCHIVE_CONFIG_H_INCLUDED 1
| #define LIBARCHIVE_VERSION_STRING "3.7.2"
| #define LIBARCHIVE_VERSION_NUMBER "3007002"
| #define BSDCPIO_VERSION_STRING "3.7.2"
| #define BSDTAR_VERSION_STRING "3.7.2"
| #define BSDCAT_VERSION_STRING "3.7.2"
| #define BSDUNZIP_VERSION_STRING "3.7.2"
| #define HAVE_STDIO_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_SYS_TIME_H 1
| #define STDC_HEADERS 1
| #define _ALL_SOURCE 1
| #define _DARWIN_C_SOURCE 1
| #define _GNU_SOURCE 1
| #define _HPUX_ALT_XOPEN_SOCKET_API 1
| #define _NETBSD_SOURCE 1
| #define _OPENBSD_SOURCE 1
| #define _POSIX_PTHREAD_SEMANTICS 1
| #define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1
| #define __STDC_WANT_IEC_60559_BFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_DFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1
| #define __STDC_WANT_IEC_60559_TYPES_EXT__ 1
| #define __STDC_WANT_LIB_EXT2__ 1
| #define __STDC_WANT_MATH_SPEC_FUNCS__ 1
| #define _TANDEM_SOURCE 1
| #define __EXTENSIONS__ 1
| #define HAVE_DLFCN_H 1
| #define LT_OBJDIR ".libs/"
| #define HAVE_DIRENT_H 1
| #define HAVE_SYS_WAIT_H 1
| #define HAVE_CTYPE_H 1
| #define HAVE_ERRNO_H 1
| #define HAVE_FCNTL_H 1
| #define HAVE_FNMATCH_H 1
| #define HAVE_GRP_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_LANGINFO_H 1
| #define HAVE_LIMITS_H 1
| #define HAVE_LINUX_FIEMAP_H 1
| #define HAVE_LINUX_FS_H 1
| #define HAVE_LINUX_MAGIC_H 1
| #define HAVE_LINUX_TYPES_H 1
| #define HAVE_WORKING_FS_IOC_GETFLAGS 1
| #define HAVE_LOCALE_H 1
| #define HAVE_PATHS_H 1
| #define HAVE_POLL_H 1
| #define HAVE_PTHREAD_H 1
| #define HAVE_PWD_H 1
| #define HAVE_SIGNAL_H 1
| #define HAVE_SPAWN_H 1
| #define HAVE_STDARG_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_SYS_CDEFS_H 1
| #define HAVE_SYS_IOCTL_H 1
| #define HAVE_SYS_MOUNT_H 1
| #define HAVE_SYS_QUEUE_H 1
| #define HAVE_SYS_PARAM_H 1
| #define HAVE_SYS_POLL_H 1
| #define HAVE_SYS_SELECT_H 1
| #define HAVE_SYS_STATFS_H 1
| #define HAVE_SYS_STATVFS_H 1
| #define HAVE_SYS_SYSMACROS_H 1
| #define HAVE_SYS_TIME_H 1
| #define HAVE_SYS_UTSNAME_H 1
| #define HAVE_SYS_VFS_H 1
| #define HAVE_SYS_XATTR_H 1
| #define HAVE_TIME_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_UTIME_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_WCTYPE_H 1
| #define HAVE_ZLIB_H 1
| #define HAVE_LIBZ 1
| #define HAVE_ICONV 1
| #define ICONV_CONST 
| #define HAVE_ICONV_H 1
| #define HAVE_LZ4_H 1
| #define HAVE_LZ4HC_H 1
| #define HAVE_LIBLZ4 1
| #define HAVE_ZSTD_H 1
| #define HAVE_LIBZSTD 1
| #define HAVE_LIBZSTD_COMPRESSOR 1
| #define HAVE_LIBXML_XMLREADER_H 1
| #define HAVE_LIBXML_XMLWRITER_H 1
| #define HAVE_REGEX_H 1
| #define HAVE_STRUCT_TM_TM_GMTOFF 1
| #define HAVE_STRUCT_STAT_ST_MTIM_TV_NSEC 1
| #define HAVE_STRUCT_STAT_ST_BLKSIZE 1
| /* end confdefs.h.  */
| #include <stddef.h>
| #ifdef HAVE_STDIO_H
| # include <stdio.h>
| #endif
| #ifdef HAVE_STDLIB_H
| # include <stdlib.h>
| #endif
| #ifdef HAVE_STRING_H
| # include <string.h>
| #endif
| #ifdef HAVE_INTTYPES_H
| # include <inttypes.h>
| #endif
| #ifdef HAVE_STDINT_H
| # include <stdint.h>
| #endif
| #ifdef HAVE_STRINGS_H
| # include <strings.h>
| #endif
| #ifdef HAVE_SYS_TYPES_H
| # include <sys/types.h>
| #endif
| #ifdef HAVE_SYS_STAT_H
| # include <sys/stat.h>
| #endif
| #ifdef HAVE_UNISTD_H
| # include <unistd.h>
| #endif
| int
| main (void)
| {
| if (sizeof ((uintmax_t)))
| 	    return 0;
|   ;
|   return 0;
| }
configure:14700: result: yes
configure:14708: checking for unsigned long long
configure:14708: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2  conftest.c >&5
configure:14708: $? = 0
configure:14708: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2  conftest.c >&5
conftest.c: In function 'main':
conftest.c:142:33: error: expected expression before ')' token
  142 | if (sizeof ((unsigned long long)))
      |                                 ^
configure:14708: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "libarchive"
| #define PACKAGE_TARNAME "libarchive"
| #define PACKAGE_VERSION "3.7.2"
| #define PACKAGE_STRING "libarchive 3.7.2"
| #define PACKAGE_BUGREPORT "libarchive-discuss@googlegroups.com"
| #define PACKAGE_URL ""
| #define PACKAGE "libarchive"
| #define VERSION "3.7.2"
| #define __LIBARCHIVE_CONFIG_H_INCLUDED 1
| #define LIBARCHIVE_VERSION_STRING "3.7.2"
| #define LIBARCHIVE_VERSION_NUMBER "3007002"
| #define BSDCPIO_VERSION_STRING "3.7.2"
| #define BSDTAR_VERSION_STRING "3.7.2"
| #define BSDCAT_VERSION_STRING "3.7.2"
| #define BSDUNZIP_VERSION_STRING "3.7.2"
| #define HAVE_STDIO_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_SYS_TIME_H 1
| #define STDC_HEADERS 1
| #define _ALL_SOURCE 1
| #define _DARWIN_C_SOURCE 1
| #define _GNU_SOURCE 1
| #define _HPUX_ALT_XOPEN_SOCKET_API 1
| #define _NETBSD_SOURCE 1
| #define _OPENBSD_SOURCE 1
| #define _POSIX_PTHREAD_SEMANTICS 1
| #define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1
| #define __STDC_WANT_IEC_60559_BFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_DFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1
| #define __STDC_WANT_IEC_60559_TYPES_EXT__ 1
| #define __STDC_WANT_LIB_EXT2__ 1
| #define __STDC_WANT_MATH_SPEC_FUNCS__ 1
| #define _TANDEM_SOURCE 1
| #define __EXTENSIONS__ 1
| #define HAVE_DLFCN_H 1
| #define LT_OBJDIR ".libs/"
| #define HAVE_DIRENT_H 1
| #define HAVE_SYS_WAIT_H 1
| #define HAVE_CTYPE_H 1
| #define HAVE_ERRNO_H 1
| #define HAVE_FCNTL_H 1
| #define HAVE_FNMATCH_H 1
| #define HAVE_GRP_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_LANGINFO_H 1
| #define HAVE_LIMITS_H 1
| #define HAVE_LINUX_FIEMAP_H 1
| #define HAVE_LINUX_FS_H 1
| #define HAVE_LINUX_MAGIC_H 1
| #define HAVE_LINUX_TYPES_H 1
| #define HAVE_WORKING_FS_IOC_GETFLAGS 1
| #define HAVE_LOCALE_H 1
| #define HAVE_PATHS_H 1
| #define HAVE_POLL_H 1
| #define HAVE_PTHREAD_H 1
| #define HAVE_PWD_H 1
| #define HAVE_SIGNAL_H 1
| #define HAVE_SPAWN_H 1
| #define HAVE_STDARG_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_SYS_CDEFS_H 1
| #define HAVE_SYS_IOCTL_H 1
| #define HAVE_SYS_MOUNT_H 1
| #define HAVE_SYS_QUEUE_H 1
| #define HAVE_SYS_PARAM_H 1
| #define HAVE_SYS_POLL_H 1
| #define HAVE_SYS_SELECT_H 1
| #define HAVE_SYS_STATFS_H 1
| #define HAVE_SYS_STATVFS_H 1
| #define HAVE_SYS_SYSMACROS_H 1
| #define HAVE_SYS_TIME_H 1
| #define HAVE_SYS_UTSNAME_H 1
| #define HAVE_SYS_VFS_H 1
| #define HAVE_SYS_XATTR_H 1
| #define HAVE_TIME_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_UTIME_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_WCTYPE_H 1
| #define HAVE_ZLIB_H 1
| #define HAVE_LIBZ 1
| #define HAVE_ICONV 1
| #define ICONV_CONST 
| #define HAVE_ICONV_H 1
| #define HAVE_LZ4_H 1
| #define HAVE_LZ4HC_H 1
| #define HAVE_LIBLZ4 1
| #define HAVE_ZSTD_H 1
| #define HAVE_LIBZSTD 1
| #define HAVE_LIBZSTD_COMPRESSOR 1
| #define HAVE_LIBXML_XMLREADER_H 1
| #define HAVE_LIBXML_XMLWRITER_H 1
| #define HAVE_REGEX_H 1
| #define HAVE_STRUCT_TM_TM_GMTOFF 1
| #define HAVE_STRUCT_STAT_ST_MTIM_TV_NSEC 1
| #define HAVE_STRUCT_STAT_ST_BLKSIZE 1
| #define HAVE_UINTMAX_T 1
| /* end confdefs.h.  */
| #include <stddef.h>
| #ifdef HAVE_STDIO_H
| # include <stdio.h>
| #endif
| #ifdef HAVE_STDLIB_H
| # include <stdlib.h>
| #endif
| #ifdef HAVE_STRING_H
| # include <string.h>
| #endif
| #ifdef HAVE_INTTYPES_H
| # include <inttypes.h>
| #endif
| #ifdef HAVE_STDINT_H
| # include <stdint.h>
| #endif
| #ifdef HAVE_STRINGS_H
| # include <strings.h>
| #endif
| #ifdef HAVE_SYS_TYPES_H
| # include <sys/types.h>
| #endif
| #ifdef HAVE_SYS_STAT_H
| # include <sys/stat.h>
| #endif
| #ifdef HAVE_UNISTD_H
| # include <unistd.h>
| #endif
| int
| main (void)
| {
| if (sizeof ((unsigned long long)))
| 	    return 0;
|   ;
|   return 0;
| }
configure:14708: result: yes
configure:14721: checking for unsigned long long int
configure:14763: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -o conftest -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2   conftest.c -lzstd -llz4 -lz  -L/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/lib -lxml2  >&5
configure:14763: $? = 0
configure:14773: result: yes
configure:14783: checking for long long int
configure:14838: result: yes
configure:14848: checking for intmax_t
configure:14848: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2  conftest.c >&5
configure:14848: $? = 0
configure:14848: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2  conftest.c >&5
conftest.c: In function 'main':
conftest.c:145:23: error: expected expression before ')' token
  145 | if (sizeof ((intmax_t)))
      |                       ^
configure:14848: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "libarchive"
| #define PACKAGE_TARNAME "libarchive"
| #define PACKAGE_VERSION "3.7.2"
| #define PACKAGE_STRING "libarchive 3.7.2"
| #define PACKAGE_BUGREPORT "libarchive-discuss@googlegroups.com"
| #define PACKAGE_URL ""
| #define PACKAGE "libarchive"
| #define VERSION "3.7.2"
| #define __LIBARCHIVE_CONFIG_H_INCLUDED 1
| #define LIBARCHIVE_VERSION_STRING "3.7.2"
| #define LIBARCHIVE_VERSION_NUMBER "3007002"
| #define BSDCPIO_VERSION_STRING "3.7.2"
| #define BSDTAR_VERSION_STRING "3.7.2"
| #define BSDCAT_VERSION_STRING "3.7.2"
| #define BSDUNZIP_VERSION_STRING "3.7.2"
| #define HAVE_STDIO_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_SYS_TIME_H 1
| #define STDC_HEADERS 1
| #define _ALL_SOURCE 1
| #define _DARWIN_C_SOURCE 1
| #define _GNU_SOURCE 1
| #define _HPUX_ALT_XOPEN_SOCKET_API 1
| #define _NETBSD_SOURCE 1
| #define _OPENBSD_SOURCE 1
| #define _POSIX_PTHREAD_SEMANTICS 1
| #define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1
| #define __STDC_WANT_IEC_60559_BFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_DFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1
| #define __STDC_WANT_IEC_60559_TYPES_EXT__ 1
| #define __STDC_WANT_LIB_EXT2__ 1
| #define __STDC_WANT_MATH_SPEC_FUNCS__ 1
| #define _TANDEM_SOURCE 1
| #define __EXTENSIONS__ 1
| #define HAVE_DLFCN_H 1
| #define LT_OBJDIR ".libs/"
| #define HAVE_DIRENT_H 1
| #define HAVE_SYS_WAIT_H 1
| #define HAVE_CTYPE_H 1
| #define HAVE_ERRNO_H 1
| #define HAVE_FCNTL_H 1
| #define HAVE_FNMATCH_H 1
| #define HAVE_GRP_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_LANGINFO_H 1
| #define HAVE_LIMITS_H 1
| #define HAVE_LINUX_FIEMAP_H 1
| #define HAVE_LINUX_FS_H 1
| #define HAVE_LINUX_MAGIC_H 1
| #define HAVE_LINUX_TYPES_H 1
| #define HAVE_WORKING_FS_IOC_GETFLAGS 1
| #define HAVE_LOCALE_H 1
| #define HAVE_PATHS_H 1
| #define HAVE_POLL_H 1
| #define HAVE_PTHREAD_H 1
| #define HAVE_PWD_H 1
| #define HAVE_SIGNAL_H 1
| #define HAVE_SPAWN_H 1
| #define HAVE_STDARG_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_SYS_CDEFS_H 1
| #define HAVE_SYS_IOCTL_H 1
| #define HAVE_SYS_MOUNT_H 1
| #define HAVE_SYS_QUEUE_H 1
| #define HAVE_SYS_PARAM_H 1
| #define HAVE_SYS_POLL_H 1
| #define HAVE_SYS_SELECT_H 1
| #define HAVE_SYS_STATFS_H 1
| #define HAVE_SYS_STATVFS_H 1
| #define HAVE_SYS_SYSMACROS_H 1
| #define HAVE_SYS_TIME_H 1
| #define HAVE_SYS_UTSNAME_H 1
| #define HAVE_SYS_VFS_H 1
| #define HAVE_SYS_XATTR_H 1
| #define HAVE_TIME_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_UTIME_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_WCTYPE_H 1
| #define HAVE_ZLIB_H 1
| #define HAVE_LIBZ 1
| #define HAVE_ICONV 1
| #define ICONV_CONST 
| #define HAVE_ICONV_H 1
| #define HAVE_LZ4_H 1
| #define HAVE_LZ4HC_H 1
| #define HAVE_LIBLZ4 1
| #define HAVE_ZSTD_H 1
| #define HAVE_LIBZSTD 1
| #define HAVE_LIBZSTD_COMPRESSOR 1
| #define HAVE_LIBXML_XMLREADER_H 1
| #define HAVE_LIBXML_XMLWRITER_H 1
| #define HAVE_REGEX_H 1
| #define HAVE_STRUCT_TM_TM_GMTOFF 1
| #define HAVE_STRUCT_STAT_ST_MTIM_TV_NSEC 1
| #define HAVE_STRUCT_STAT_ST_BLKSIZE 1
| #define HAVE_UINTMAX_T 1
| #define HAVE_UNSIGNED_LONG_LONG 1
| #define HAVE_UNSIGNED_LONG_LONG_INT 1
| #define HAVE_LONG_LONG_INT 1
| /* end confdefs.h.  */
| #include <stddef.h>
| #ifdef HAVE_STDIO_H
| # include <stdio.h>
| #endif
| #ifdef HAVE_STDLIB_H
| # include <stdlib.h>
| #endif
| #ifdef HAVE_STRING_H
| # include <string.h>
| #endif
| #ifdef HAVE_INTTYPES_H
| # include <inttypes.h>
| #endif
| #ifdef HAVE_STDINT_H
| # include <stdint.h>
| #endif
| #ifdef HAVE_STRINGS_H
| # include <strings.h>
| #endif
| #ifdef HAVE_SYS_TYPES_H
| # include <sys/types.h>
| #endif
| #ifdef HAVE_SYS_STAT_H
| # include <sys/stat.h>
| #endif
| #ifdef HAVE_UNISTD_H
| # include <unistd.h>
| #endif
| int
| main (void)
| {
| if (sizeof ((intmax_t)))
| 	    return 0;
|   ;
|   return 0;
| }
configure:14848: result: yes
configure:14866: checking for uintmax_t
configure:14866: result: yes
configure:14882: checking for int64_t
configure:14882: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2  conftest.c >&5
configure:14882: $? = 0
configure:14882: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2  conftest.c >&5
conftest.c: In function 'main':
conftest.c:149:67: warning: integer overflow in expression of type 'long long int' results in '-9223372036854775808' [-Woverflow]
  149 |                  < (int64_t) (((((int64_t) 1 << N) << N) - 1) * 2 + 2))];
      |                                                                   ^
conftest.c:148:12: error: storage size of 'test_array' isn't constant
  148 | static int test_array [1 - 2 * !((int64_t) (((((int64_t) 1 << N) << N) - 1) * 2 + 1)
      |            ^~~~~~~~~~
conftest.c:148:12: warning: unused variable 'test_array' [-Wunused-variable]
configure:14882: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "libarchive"
| #define PACKAGE_TARNAME "libarchive"
| #define PACKAGE_VERSION "3.7.2"
| #define PACKAGE_STRING "libarchive 3.7.2"
| #define PACKAGE_BUGREPORT "libarchive-discuss@googlegroups.com"
| #define PACKAGE_URL ""
| #define PACKAGE "libarchive"
| #define VERSION "3.7.2"
| #define __LIBARCHIVE_CONFIG_H_INCLUDED 1
| #define LIBARCHIVE_VERSION_STRING "3.7.2"
| #define LIBARCHIVE_VERSION_NUMBER "3007002"
| #define BSDCPIO_VERSION_STRING "3.7.2"
| #define BSDTAR_VERSION_STRING "3.7.2"
| #define BSDCAT_VERSION_STRING "3.7.2"
| #define BSDUNZIP_VERSION_STRING "3.7.2"
| #define HAVE_STDIO_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_SYS_TIME_H 1
| #define STDC_HEADERS 1
| #define _ALL_SOURCE 1
| #define _DARWIN_C_SOURCE 1
| #define _GNU_SOURCE 1
| #define _HPUX_ALT_XOPEN_SOCKET_API 1
| #define _NETBSD_SOURCE 1
| #define _OPENBSD_SOURCE 1
| #define _POSIX_PTHREAD_SEMANTICS 1
| #define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1
| #define __STDC_WANT_IEC_60559_BFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_DFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1
| #define __STDC_WANT_IEC_60559_TYPES_EXT__ 1
| #define __STDC_WANT_LIB_EXT2__ 1
| #define __STDC_WANT_MATH_SPEC_FUNCS__ 1
| #define _TANDEM_SOURCE 1
| #define __EXTENSIONS__ 1
| #define HAVE_DLFCN_H 1
| #define LT_OBJDIR ".libs/"
| #define HAVE_DIRENT_H 1
| #define HAVE_SYS_WAIT_H 1
| #define HAVE_CTYPE_H 1
| #define HAVE_ERRNO_H 1
| #define HAVE_FCNTL_H 1
| #define HAVE_FNMATCH_H 1
| #define HAVE_GRP_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_LANGINFO_H 1
| #define HAVE_LIMITS_H 1
| #define HAVE_LINUX_FIEMAP_H 1
| #define HAVE_LINUX_FS_H 1
| #define HAVE_LINUX_MAGIC_H 1
| #define HAVE_LINUX_TYPES_H 1
| #define HAVE_WORKING_FS_IOC_GETFLAGS 1
| #define HAVE_LOCALE_H 1
| #define HAVE_PATHS_H 1
| #define HAVE_POLL_H 1
| #define HAVE_PTHREAD_H 1
| #define HAVE_PWD_H 1
| #define HAVE_SIGNAL_H 1
| #define HAVE_SPAWN_H 1
| #define HAVE_STDARG_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_SYS_CDEFS_H 1
| #define HAVE_SYS_IOCTL_H 1
| #define HAVE_SYS_MOUNT_H 1
| #define HAVE_SYS_QUEUE_H 1
| #define HAVE_SYS_PARAM_H 1
| #define HAVE_SYS_POLL_H 1
| #define HAVE_SYS_SELECT_H 1
| #define HAVE_SYS_STATFS_H 1
| #define HAVE_SYS_STATVFS_H 1
| #define HAVE_SYS_SYSMACROS_H 1
| #define HAVE_SYS_TIME_H 1
| #define HAVE_SYS_UTSNAME_H 1
| #define HAVE_SYS_VFS_H 1
| #define HAVE_SYS_XATTR_H 1
| #define HAVE_TIME_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_UTIME_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_WCTYPE_H 1
| #define HAVE_ZLIB_H 1
| #define HAVE_LIBZ 1
| #define HAVE_ICONV 1
| #define ICONV_CONST 
| #define HAVE_ICONV_H 1
| #define HAVE_LZ4_H 1
| #define HAVE_LZ4HC_H 1
| #define HAVE_LIBLZ4 1
| #define HAVE_ZSTD_H 1
| #define HAVE_LIBZSTD 1
| #define HAVE_LIBZSTD_COMPRESSOR 1
| #define HAVE_LIBXML_XMLREADER_H 1
| #define HAVE_LIBXML_XMLWRITER_H 1
| #define HAVE_REGEX_H 1
| #define HAVE_STRUCT_TM_TM_GMTOFF 1
| #define HAVE_STRUCT_STAT_ST_MTIM_TV_NSEC 1
| #define HAVE_STRUCT_STAT_ST_BLKSIZE 1
| #define HAVE_UINTMAX_T 1
| #define HAVE_UNSIGNED_LONG_LONG 1
| #define HAVE_UNSIGNED_LONG_LONG_INT 1
| #define HAVE_LONG_LONG_INT 1
| #define HAVE_INTMAX_T 1
| #define HAVE_UINTMAX_T 1
| /* end confdefs.h.  */
| #include <stddef.h>
| #ifdef HAVE_STDIO_H
| # include <stdio.h>
| #endif
| #ifdef HAVE_STDLIB_H
| # include <stdlib.h>
| #endif
| #ifdef HAVE_STRING_H
| # include <string.h>
| #endif
| #ifdef HAVE_INTTYPES_H
| # include <inttypes.h>
| #endif
| #ifdef HAVE_STDINT_H
| # include <stdint.h>
| #endif
| #ifdef HAVE_STRINGS_H
| # include <strings.h>
| #endif
| #ifdef HAVE_SYS_TYPES_H
| # include <sys/types.h>
| #endif
| #ifdef HAVE_SYS_STAT_H
| # include <sys/stat.h>
| #endif
| #ifdef HAVE_UNISTD_H
| # include <unistd.h>
| #endif
| 	        enum { N = 64 / 2 - 1 };
| int
| main (void)
| {
| static int test_array [1 - 2 * !((int64_t) (((((int64_t) 1 << N) << N) - 1) * 2 + 1)
| 		 < (int64_t) (((((int64_t) 1 << N) << N) - 1) * 2 + 2))];
| test_array [0] = 0;
| return test_array [0];
| 
|   ;
|   return 0;
| }
configure:14882: result: yes
configure:14891: checking for uint64_t
configure:14891: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2  conftest.c >&5
configure:14891: $? = 0
configure:14891: result: yes
configure:14903: checking for int32_t
configure:14903: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2  conftest.c >&5
configure:14903: $? = 0
configure:14903: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2  conftest.c >&5
conftest.c: In function 'main':
conftest.c:149:67: warning: integer overflow in expression of type 'int' results in '-2147483648' [-Woverflow]
  149 |                  < (int32_t) (((((int32_t) 1 << N) << N) - 1) * 2 + 2))];
      |                                                                   ^
conftest.c:148:12: error: storage size of 'test_array' isn't constant
  148 | static int test_array [1 - 2 * !((int32_t) (((((int32_t) 1 << N) << N) - 1) * 2 + 1)
      |            ^~~~~~~~~~
conftest.c:148:12: warning: unused variable 'test_array' [-Wunused-variable]
configure:14903: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "libarchive"
| #define PACKAGE_TARNAME "libarchive"
| #define PACKAGE_VERSION "3.7.2"
| #define PACKAGE_STRING "libarchive 3.7.2"
| #define PACKAGE_BUGREPORT "libarchive-discuss@googlegroups.com"
| #define PACKAGE_URL ""
| #define PACKAGE "libarchive"
| #define VERSION "3.7.2"
| #define __LIBARCHIVE_CONFIG_H_INCLUDED 1
| #define LIBARCHIVE_VERSION_STRING "3.7.2"
| #define LIBARCHIVE_VERSION_NUMBER "3007002"
| #define BSDCPIO_VERSION_STRING "3.7.2"
| #define BSDTAR_VERSION_STRING "3.7.2"
| #define BSDCAT_VERSION_STRING "3.7.2"
| #define BSDUNZIP_VERSION_STRING "3.7.2"
| #define HAVE_STDIO_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_SYS_TIME_H 1
| #define STDC_HEADERS 1
| #define _ALL_SOURCE 1
| #define _DARWIN_C_SOURCE 1
| #define _GNU_SOURCE 1
| #define _HPUX_ALT_XOPEN_SOCKET_API 1
| #define _NETBSD_SOURCE 1
| #define _OPENBSD_SOURCE 1
| #define _POSIX_PTHREAD_SEMANTICS 1
| #define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1
| #define __STDC_WANT_IEC_60559_BFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_DFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1
| #define __STDC_WANT_IEC_60559_TYPES_EXT__ 1
| #define __STDC_WANT_LIB_EXT2__ 1
| #define __STDC_WANT_MATH_SPEC_FUNCS__ 1
| #define _TANDEM_SOURCE 1
| #define __EXTENSIONS__ 1
| #define HAVE_DLFCN_H 1
| #define LT_OBJDIR ".libs/"
| #define HAVE_DIRENT_H 1
| #define HAVE_SYS_WAIT_H 1
| #define HAVE_CTYPE_H 1
| #define HAVE_ERRNO_H 1
| #define HAVE_FCNTL_H 1
| #define HAVE_FNMATCH_H 1
| #define HAVE_GRP_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_LANGINFO_H 1
| #define HAVE_LIMITS_H 1
| #define HAVE_LINUX_FIEMAP_H 1
| #define HAVE_LINUX_FS_H 1
| #define HAVE_LINUX_MAGIC_H 1
| #define HAVE_LINUX_TYPES_H 1
| #define HAVE_WORKING_FS_IOC_GETFLAGS 1
| #define HAVE_LOCALE_H 1
| #define HAVE_PATHS_H 1
| #define HAVE_POLL_H 1
| #define HAVE_PTHREAD_H 1
| #define HAVE_PWD_H 1
| #define HAVE_SIGNAL_H 1
| #define HAVE_SPAWN_H 1
| #define HAVE_STDARG_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_SYS_CDEFS_H 1
| #define HAVE_SYS_IOCTL_H 1
| #define HAVE_SYS_MOUNT_H 1
| #define HAVE_SYS_QUEUE_H 1
| #define HAVE_SYS_PARAM_H 1
| #define HAVE_SYS_POLL_H 1
| #define HAVE_SYS_SELECT_H 1
| #define HAVE_SYS_STATFS_H 1
| #define HAVE_SYS_STATVFS_H 1
| #define HAVE_SYS_SYSMACROS_H 1
| #define HAVE_SYS_TIME_H 1
| #define HAVE_SYS_UTSNAME_H 1
| #define HAVE_SYS_VFS_H 1
| #define HAVE_SYS_XATTR_H 1
| #define HAVE_TIME_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_UTIME_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_WCTYPE_H 1
| #define HAVE_ZLIB_H 1
| #define HAVE_LIBZ 1
| #define HAVE_ICONV 1
| #define ICONV_CONST 
| #define HAVE_ICONV_H 1
| #define HAVE_LZ4_H 1
| #define HAVE_LZ4HC_H 1
| #define HAVE_LIBLZ4 1
| #define HAVE_ZSTD_H 1
| #define HAVE_LIBZSTD 1
| #define HAVE_LIBZSTD_COMPRESSOR 1
| #define HAVE_LIBXML_XMLREADER_H 1
| #define HAVE_LIBXML_XMLWRITER_H 1
| #define HAVE_REGEX_H 1
| #define HAVE_STRUCT_TM_TM_GMTOFF 1
| #define HAVE_STRUCT_STAT_ST_MTIM_TV_NSEC 1
| #define HAVE_STRUCT_STAT_ST_BLKSIZE 1
| #define HAVE_UINTMAX_T 1
| #define HAVE_UNSIGNED_LONG_LONG 1
| #define HAVE_UNSIGNED_LONG_LONG_INT 1
| #define HAVE_LONG_LONG_INT 1
| #define HAVE_INTMAX_T 1
| #define HAVE_UINTMAX_T 1
| /* end confdefs.h.  */
| #include <stddef.h>
| #ifdef HAVE_STDIO_H
| # include <stdio.h>
| #endif
| #ifdef HAVE_STDLIB_H
| # include <stdlib.h>
| #endif
| #ifdef HAVE_STRING_H
| # include <string.h>
| #endif
| #ifdef HAVE_INTTYPES_H
| # include <inttypes.h>
| #endif
| #ifdef HAVE_STDINT_H
| # include <stdint.h>
| #endif
| #ifdef HAVE_STRINGS_H
| # include <strings.h>
| #endif
| #ifdef HAVE_SYS_TYPES_H
| # include <sys/types.h>
| #endif
| #ifdef HAVE_SYS_STAT_H
| # include <sys/stat.h>
| #endif
| #ifdef HAVE_UNISTD_H
| # include <unistd.h>
| #endif
| 	        enum { N = 32 / 2 - 1 };
| int
| main (void)
| {
| static int test_array [1 - 2 * !((int32_t) (((((int32_t) 1 << N) << N) - 1) * 2 + 1)
| 		 < (int32_t) (((((int32_t) 1 << N) << N) - 1) * 2 + 2))];
| test_array [0] = 0;
| return test_array [0];
| 
|   ;
|   return 0;
| }
configure:14903: result: yes
configure:14912: checking for uint32_t
configure:14912: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2  conftest.c >&5
configure:14912: $? = 0
configure:14912: result: yes
configure:14924: checking for int16_t
configure:14924: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2  conftest.c >&5
configure:14924: $? = 0
configure:14924: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2  conftest.c >&5
conftest.c: In function 'main':
conftest.c:148:12: error: size of array 'test_array' is negative
  148 | static int test_array [1 - 2 * !((int16_t) (((((int16_t) 1 << N) << N) - 1) * 2 + 1)
      |            ^~~~~~~~~~
configure:14924: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "libarchive"
| #define PACKAGE_TARNAME "libarchive"
| #define PACKAGE_VERSION "3.7.2"
| #define PACKAGE_STRING "libarchive 3.7.2"
| #define PACKAGE_BUGREPORT "libarchive-discuss@googlegroups.com"
| #define PACKAGE_URL ""
| #define PACKAGE "libarchive"
| #define VERSION "3.7.2"
| #define __LIBARCHIVE_CONFIG_H_INCLUDED 1
| #define LIBARCHIVE_VERSION_STRING "3.7.2"
| #define LIBARCHIVE_VERSION_NUMBER "3007002"
| #define BSDCPIO_VERSION_STRING "3.7.2"
| #define BSDTAR_VERSION_STRING "3.7.2"
| #define BSDCAT_VERSION_STRING "3.7.2"
| #define BSDUNZIP_VERSION_STRING "3.7.2"
| #define HAVE_STDIO_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_SYS_TIME_H 1
| #define STDC_HEADERS 1
| #define _ALL_SOURCE 1
| #define _DARWIN_C_SOURCE 1
| #define _GNU_SOURCE 1
| #define _HPUX_ALT_XOPEN_SOCKET_API 1
| #define _NETBSD_SOURCE 1
| #define _OPENBSD_SOURCE 1
| #define _POSIX_PTHREAD_SEMANTICS 1
| #define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1
| #define __STDC_WANT_IEC_60559_BFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_DFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1
| #define __STDC_WANT_IEC_60559_TYPES_EXT__ 1
| #define __STDC_WANT_LIB_EXT2__ 1
| #define __STDC_WANT_MATH_SPEC_FUNCS__ 1
| #define _TANDEM_SOURCE 1
| #define __EXTENSIONS__ 1
| #define HAVE_DLFCN_H 1
| #define LT_OBJDIR ".libs/"
| #define HAVE_DIRENT_H 1
| #define HAVE_SYS_WAIT_H 1
| #define HAVE_CTYPE_H 1
| #define HAVE_ERRNO_H 1
| #define HAVE_FCNTL_H 1
| #define HAVE_FNMATCH_H 1
| #define HAVE_GRP_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_LANGINFO_H 1
| #define HAVE_LIMITS_H 1
| #define HAVE_LINUX_FIEMAP_H 1
| #define HAVE_LINUX_FS_H 1
| #define HAVE_LINUX_MAGIC_H 1
| #define HAVE_LINUX_TYPES_H 1
| #define HAVE_WORKING_FS_IOC_GETFLAGS 1
| #define HAVE_LOCALE_H 1
| #define HAVE_PATHS_H 1
| #define HAVE_POLL_H 1
| #define HAVE_PTHREAD_H 1
| #define HAVE_PWD_H 1
| #define HAVE_SIGNAL_H 1
| #define HAVE_SPAWN_H 1
| #define HAVE_STDARG_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_SYS_CDEFS_H 1
| #define HAVE_SYS_IOCTL_H 1
| #define HAVE_SYS_MOUNT_H 1
| #define HAVE_SYS_QUEUE_H 1
| #define HAVE_SYS_PARAM_H 1
| #define HAVE_SYS_POLL_H 1
| #define HAVE_SYS_SELECT_H 1
| #define HAVE_SYS_STATFS_H 1
| #define HAVE_SYS_STATVFS_H 1
| #define HAVE_SYS_SYSMACROS_H 1
| #define HAVE_SYS_TIME_H 1
| #define HAVE_SYS_UTSNAME_H 1
| #define HAVE_SYS_VFS_H 1
| #define HAVE_SYS_XATTR_H 1
| #define HAVE_TIME_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_UTIME_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_WCTYPE_H 1
| #define HAVE_ZLIB_H 1
| #define HAVE_LIBZ 1
| #define HAVE_ICONV 1
| #define ICONV_CONST 
| #define HAVE_ICONV_H 1
| #define HAVE_LZ4_H 1
| #define HAVE_LZ4HC_H 1
| #define HAVE_LIBLZ4 1
| #define HAVE_ZSTD_H 1
| #define HAVE_LIBZSTD 1
| #define HAVE_LIBZSTD_COMPRESSOR 1
| #define HAVE_LIBXML_XMLREADER_H 1
| #define HAVE_LIBXML_XMLWRITER_H 1
| #define HAVE_REGEX_H 1
| #define HAVE_STRUCT_TM_TM_GMTOFF 1
| #define HAVE_STRUCT_STAT_ST_MTIM_TV_NSEC 1
| #define HAVE_STRUCT_STAT_ST_BLKSIZE 1
| #define HAVE_UINTMAX_T 1
| #define HAVE_UNSIGNED_LONG_LONG 1
| #define HAVE_UNSIGNED_LONG_LONG_INT 1
| #define HAVE_LONG_LONG_INT 1
| #define HAVE_INTMAX_T 1
| #define HAVE_UINTMAX_T 1
| /* end confdefs.h.  */
| #include <stddef.h>
| #ifdef HAVE_STDIO_H
| # include <stdio.h>
| #endif
| #ifdef HAVE_STDLIB_H
| # include <stdlib.h>
| #endif
| #ifdef HAVE_STRING_H
| # include <string.h>
| #endif
| #ifdef HAVE_INTTYPES_H
| # include <inttypes.h>
| #endif
| #ifdef HAVE_STDINT_H
| # include <stdint.h>
| #endif
| #ifdef HAVE_STRINGS_H
| # include <strings.h>
| #endif
| #ifdef HAVE_SYS_TYPES_H
| # include <sys/types.h>
| #endif
| #ifdef HAVE_SYS_STAT_H
| # include <sys/stat.h>
| #endif
| #ifdef HAVE_UNISTD_H
| # include <unistd.h>
| #endif
| 	        enum { N = 16 / 2 - 1 };
| int
| main (void)
| {
| static int test_array [1 - 2 * !((int16_t) (((((int16_t) 1 << N) << N) - 1) * 2 + 1)
| 		 < (int16_t) (((((int16_t) 1 << N) << N) - 1) * 2 + 2))];
| test_array [0] = 0;
| return test_array [0];
| 
|   ;
|   return 0;
| }
configure:14924: result: yes
configure:14933: checking for uint16_t
configure:14933: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2  conftest.c >&5
configure:14933: $? = 0
configure:14933: result: yes
configure:14943: checking for uint8_t
configure:14943: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2  conftest.c >&5
configure:14943: $? = 0
configure:14943: result: yes
configure:14956: checking for /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc options needed to detect all undeclared functions
configure:14978: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections  -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2  conftest.c >&5
conftest.c: In function 'main':
conftest.c:120:8: error: 'strchr' undeclared (first use in this function)
  120 | (void) strchr;
      |        ^~~~~~
conftest.c:1:1: note: 'strchr' is defined in header '<string.h>'; did you forget to '#include <string.h>'?
    1 | /* confdefs.h */
conftest.c:120:8: note: each undeclared identifier is reported only once for each function it appears in
  120 | (void) strchr;
      |        ^~~~~~
configure:14978: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "libarchive"
| #define PACKAGE_TARNAME "libarchive"
| #define PACKAGE_VERSION "3.7.2"
| #define PACKAGE_STRING "libarchive 3.7.2"
| #define PACKAGE_BUGREPORT "libarchive-discuss@googlegroups.com"
| #define PACKAGE_URL ""
| #define PACKAGE "libarchive"
| #define VERSION "3.7.2"
| #define __LIBARCHIVE_CONFIG_H_INCLUDED 1
| #define LIBARCHIVE_VERSION_STRING "3.7.2"
| #define LIBARCHIVE_VERSION_NUMBER "3007002"
| #define BSDCPIO_VERSION_STRING "3.7.2"
| #define BSDTAR_VERSION_STRING "3.7.2"
| #define BSDCAT_VERSION_STRING "3.7.2"
| #define BSDUNZIP_VERSION_STRING "3.7.2"
| #define HAVE_STDIO_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_SYS_TIME_H 1
| #define STDC_HEADERS 1
| #define _ALL_SOURCE 1
| #define _DARWIN_C_SOURCE 1
| #define _GNU_SOURCE 1
| #define _HPUX_ALT_XOPEN_SOCKET_API 1
| #define _NETBSD_SOURCE 1
| #define _OPENBSD_SOURCE 1
| #define _POSIX_PTHREAD_SEMANTICS 1
| #define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1
| #define __STDC_WANT_IEC_60559_BFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_DFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1
| #define __STDC_WANT_IEC_60559_TYPES_EXT__ 1
| #define __STDC_WANT_LIB_EXT2__ 1
| #define __STDC_WANT_MATH_SPEC_FUNCS__ 1
| #define _TANDEM_SOURCE 1
| #define __EXTENSIONS__ 1
| #define HAVE_DLFCN_H 1
| #define LT_OBJDIR ".libs/"
| #define HAVE_DIRENT_H 1
| #define HAVE_SYS_WAIT_H 1
| #define HAVE_CTYPE_H 1
| #define HAVE_ERRNO_H 1
| #define HAVE_FCNTL_H 1
| #define HAVE_FNMATCH_H 1
| #define HAVE_GRP_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_LANGINFO_H 1
| #define HAVE_LIMITS_H 1
| #define HAVE_LINUX_FIEMAP_H 1
| #define HAVE_LINUX_FS_H 1
| #define HAVE_LINUX_MAGIC_H 1
| #define HAVE_LINUX_TYPES_H 1
| #define HAVE_WORKING_FS_IOC_GETFLAGS 1
| #define HAVE_LOCALE_H 1
| #define HAVE_PATHS_H 1
| #define HAVE_POLL_H 1
| #define HAVE_PTHREAD_H 1
| #define HAVE_PWD_H 1
| #define HAVE_SIGNAL_H 1
| #define HAVE_SPAWN_H 1
| #define HAVE_STDARG_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_SYS_CDEFS_H 1
| #define HAVE_SYS_IOCTL_H 1
| #define HAVE_SYS_MOUNT_H 1
| #define HAVE_SYS_QUEUE_H 1
| #define HAVE_SYS_PARAM_H 1
| #define HAVE_SYS_POLL_H 1
| #define HAVE_SYS_SELECT_H 1
| #define HAVE_SYS_STATFS_H 1
| #define HAVE_SYS_STATVFS_H 1
| #define HAVE_SYS_SYSMACROS_H 1
| #define HAVE_SYS_TIME_H 1
| #define HAVE_SYS_UTSNAME_H 1
| #define HAVE_SYS_VFS_H 1
| #define HAVE_SYS_XATTR_H 1
| #define HAVE_TIME_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_UTIME_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_WCTYPE_H 1
| #define HAVE_ZLIB_H 1
| #define HAVE_LIBZ 1
| #define HAVE_ICONV 1
| #define ICONV_CONST 
| #define HAVE_ICONV_H 1
| #define HAVE_LZ4_H 1
| #define HAVE_LZ4HC_H 1
| #define HAVE_LIBLZ4 1
| #define HAVE_ZSTD_H 1
| #define HAVE_LIBZSTD 1
| #define HAVE_LIBZSTD_COMPRESSOR 1
| #define HAVE_LIBXML_XMLREADER_H 1
| #define HAVE_LIBXML_XMLWRITER_H 1
| #define HAVE_REGEX_H 1
| #define HAVE_STRUCT_TM_TM_GMTOFF 1
| #define HAVE_STRUCT_STAT_ST_MTIM_TV_NSEC 1
| #define HAVE_STRUCT_STAT_ST_BLKSIZE 1
| #define HAVE_UINTMAX_T 1
| #define HAVE_UNSIGNED_LONG_LONG 1
| #define HAVE_UNSIGNED_LONG_LONG_INT 1
| #define HAVE_LONG_LONG_INT 1
| #define HAVE_INTMAX_T 1
| #define HAVE_UINTMAX_T 1
| /* end confdefs.h.  */
| 
| int
| main (void)
| {
| (void) strchr;
|   ;
|   return 0;
| }
configure:15005: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections  -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2  conftest.c >&5
configure:15005: $? = 0
configure:15022: result: none needed
configure:15036: checking whether SIZE_MAX is declared
configure:15036: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections  -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2  conftest.c >&5
configure:15036: $? = 0
configure:15036: result: yes
configure:15044: checking whether INT32_MAX is declared
configure:15044: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections  -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2  conftest.c >&5
configure:15044: $? = 0
configure:15044: result: yes
configure:15052: checking whether INT32_MIN is declared
configure:15052: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections  -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2  conftest.c >&5
configure:15052: $? = 0
configure:15052: result: yes
configure:15061: checking whether INT64_MAX is declared
configure:15061: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections  -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2  conftest.c >&5
configure:15061: $? = 0
configure:15061: result: yes
configure:15069: checking whether INT64_MIN is declared
configure:15069: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections  -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2  conftest.c >&5
configure:15069: $? = 0
configure:15069: result: yes
configure:15077: checking whether UINT64_MAX is declared
configure:15077: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections  -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2  conftest.c >&5
configure:15077: $? = 0
configure:15077: result: yes
configure:15085: checking whether UINT32_MAX is declared
configure:15085: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections  -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2  conftest.c >&5
configure:15085: $? = 0
configure:15085: result: yes
configure:15094: checking whether INTMAX_MAX is declared
configure:15094: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections  -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2  conftest.c >&5
configure:15094: $? = 0
configure:15094: result: yes
configure:15102: checking whether INTMAX_MIN is declared
configure:15102: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections  -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2  conftest.c >&5
configure:15102: $? = 0
configure:15102: result: yes
configure:15110: checking whether UINTMAX_MAX is declared
configure:15110: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections  -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2  conftest.c >&5
configure:15110: $? = 0
configure:15110: result: yes
configure:15120: checking whether SSIZE_MAX is declared
configure:15120: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections  -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2  conftest.c >&5
configure:15120: $? = 0
configure:15120: result: yes
configure:15129: checking whether EFTYPE is declared
configure:15129: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections  -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2  conftest.c >&5
conftest.c: In function 'main':
conftest.c:136:10: error: 'EFTYPE' undeclared (first use in this function)
  136 |   (void) EFTYPE;
      |          ^~~~~~
conftest.c:136:10: note: each undeclared identifier is reported only once for each function it appears in
configure:15129: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "libarchive"
| #define PACKAGE_TARNAME "libarchive"
| #define PACKAGE_VERSION "3.7.2"
| #define PACKAGE_STRING "libarchive 3.7.2"
| #define PACKAGE_BUGREPORT "libarchive-discuss@googlegroups.com"
| #define PACKAGE_URL ""
| #define PACKAGE "libarchive"
| #define VERSION "3.7.2"
| #define __LIBARCHIVE_CONFIG_H_INCLUDED 1
| #define LIBARCHIVE_VERSION_STRING "3.7.2"
| #define LIBARCHIVE_VERSION_NUMBER "3007002"
| #define BSDCPIO_VERSION_STRING "3.7.2"
| #define BSDTAR_VERSION_STRING "3.7.2"
| #define BSDCAT_VERSION_STRING "3.7.2"
| #define BSDUNZIP_VERSION_STRING "3.7.2"
| #define HAVE_STDIO_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_SYS_TIME_H 1
| #define STDC_HEADERS 1
| #define _ALL_SOURCE 1
| #define _DARWIN_C_SOURCE 1
| #define _GNU_SOURCE 1
| #define _HPUX_ALT_XOPEN_SOCKET_API 1
| #define _NETBSD_SOURCE 1
| #define _OPENBSD_SOURCE 1
| #define _POSIX_PTHREAD_SEMANTICS 1
| #define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1
| #define __STDC_WANT_IEC_60559_BFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_DFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1
| #define __STDC_WANT_IEC_60559_TYPES_EXT__ 1
| #define __STDC_WANT_LIB_EXT2__ 1
| #define __STDC_WANT_MATH_SPEC_FUNCS__ 1
| #define _TANDEM_SOURCE 1
| #define __EXTENSIONS__ 1
| #define HAVE_DLFCN_H 1
| #define LT_OBJDIR ".libs/"
| #define HAVE_DIRENT_H 1
| #define HAVE_SYS_WAIT_H 1
| #define HAVE_CTYPE_H 1
| #define HAVE_ERRNO_H 1
| #define HAVE_FCNTL_H 1
| #define HAVE_FNMATCH_H 1
| #define HAVE_GRP_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_LANGINFO_H 1
| #define HAVE_LIMITS_H 1
| #define HAVE_LINUX_FIEMAP_H 1
| #define HAVE_LINUX_FS_H 1
| #define HAVE_LINUX_MAGIC_H 1
| #define HAVE_LINUX_TYPES_H 1
| #define HAVE_WORKING_FS_IOC_GETFLAGS 1
| #define HAVE_LOCALE_H 1
| #define HAVE_PATHS_H 1
| #define HAVE_POLL_H 1
| #define HAVE_PTHREAD_H 1
| #define HAVE_PWD_H 1
| #define HAVE_SIGNAL_H 1
| #define HAVE_SPAWN_H 1
| #define HAVE_STDARG_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_SYS_CDEFS_H 1
| #define HAVE_SYS_IOCTL_H 1
| #define HAVE_SYS_MOUNT_H 1
| #define HAVE_SYS_QUEUE_H 1
| #define HAVE_SYS_PARAM_H 1
| #define HAVE_SYS_POLL_H 1
| #define HAVE_SYS_SELECT_H 1
| #define HAVE_SYS_STATFS_H 1
| #define HAVE_SYS_STATVFS_H 1
| #define HAVE_SYS_SYSMACROS_H 1
| #define HAVE_SYS_TIME_H 1
| #define HAVE_SYS_UTSNAME_H 1
| #define HAVE_SYS_VFS_H 1
| #define HAVE_SYS_XATTR_H 1
| #define HAVE_TIME_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_UTIME_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_WCTYPE_H 1
| #define HAVE_ZLIB_H 1
| #define HAVE_LIBZ 1
| #define HAVE_ICONV 1
| #define ICONV_CONST 
| #define HAVE_ICONV_H 1
| #define HAVE_LZ4_H 1
| #define HAVE_LZ4HC_H 1
| #define HAVE_LIBLZ4 1
| #define HAVE_ZSTD_H 1
| #define HAVE_LIBZSTD 1
| #define HAVE_LIBZSTD_COMPRESSOR 1
| #define HAVE_LIBXML_XMLREADER_H 1
| #define HAVE_LIBXML_XMLWRITER_H 1
| #define HAVE_REGEX_H 1
| #define HAVE_STRUCT_TM_TM_GMTOFF 1
| #define HAVE_STRUCT_STAT_ST_MTIM_TV_NSEC 1
| #define HAVE_STRUCT_STAT_ST_BLKSIZE 1
| #define HAVE_UINTMAX_T 1
| #define HAVE_UNSIGNED_LONG_LONG 1
| #define HAVE_UNSIGNED_LONG_LONG_INT 1
| #define HAVE_LONG_LONG_INT 1
| #define HAVE_INTMAX_T 1
| #define HAVE_UINTMAX_T 1
| #define HAVE_DECL_SIZE_MAX 1
| #define HAVE_DECL_INT32_MAX 1
| #define HAVE_DECL_INT32_MIN 1
| #define HAVE_DECL_INT64_MAX 1
| #define HAVE_DECL_INT64_MIN 1
| #define HAVE_DECL_UINT64_MAX 1
| #define HAVE_DECL_UINT32_MAX 1
| #define HAVE_DECL_INTMAX_MAX 1
| #define HAVE_DECL_INTMAX_MIN 1
| #define HAVE_DECL_UINTMAX_MAX 1
| #define HAVE_DECL_SSIZE_MAX 1
| /* end confdefs.h.  */
| #include <errno.h>
| 
| int
| main (void)
| {
| #ifndef EFTYPE
| #ifdef __cplusplus
|   (void) EFTYPE;
| #else
|   (void) EFTYPE;
| #endif
| #endif
| 
|   ;
|   return 0;
| }
configure:15129: result: no
configure:15137: checking whether EILSEQ is declared
configure:15137: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections  -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2  conftest.c >&5
configure:15137: $? = 0
configure:15137: result: yes
configure:15145: checking for wchar_t
configure:15145: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2  conftest.c >&5
configure:15145: $? = 0
configure:15145: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2  conftest.c >&5
conftest.c: In function 'main':
conftest.c:159:22: error: expected expression before ')' token
  159 | if (sizeof ((wchar_t)))
      |                      ^
configure:15145: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "libarchive"
| #define PACKAGE_TARNAME "libarchive"
| #define PACKAGE_VERSION "3.7.2"
| #define PACKAGE_STRING "libarchive 3.7.2"
| #define PACKAGE_BUGREPORT "libarchive-discuss@googlegroups.com"
| #define PACKAGE_URL ""
| #define PACKAGE "libarchive"
| #define VERSION "3.7.2"
| #define __LIBARCHIVE_CONFIG_H_INCLUDED 1
| #define LIBARCHIVE_VERSION_STRING "3.7.2"
| #define LIBARCHIVE_VERSION_NUMBER "3007002"
| #define BSDCPIO_VERSION_STRING "3.7.2"
| #define BSDTAR_VERSION_STRING "3.7.2"
| #define BSDCAT_VERSION_STRING "3.7.2"
| #define BSDUNZIP_VERSION_STRING "3.7.2"
| #define HAVE_STDIO_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_SYS_TIME_H 1
| #define STDC_HEADERS 1
| #define _ALL_SOURCE 1
| #define _DARWIN_C_SOURCE 1
| #define _GNU_SOURCE 1
| #define _HPUX_ALT_XOPEN_SOCKET_API 1
| #define _NETBSD_SOURCE 1
| #define _OPENBSD_SOURCE 1
| #define _POSIX_PTHREAD_SEMANTICS 1
| #define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1
| #define __STDC_WANT_IEC_60559_BFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_DFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1
| #define __STDC_WANT_IEC_60559_TYPES_EXT__ 1
| #define __STDC_WANT_LIB_EXT2__ 1
| #define __STDC_WANT_MATH_SPEC_FUNCS__ 1
| #define _TANDEM_SOURCE 1
| #define __EXTENSIONS__ 1
| #define HAVE_DLFCN_H 1
| #define LT_OBJDIR ".libs/"
| #define HAVE_DIRENT_H 1
| #define HAVE_SYS_WAIT_H 1
| #define HAVE_CTYPE_H 1
| #define HAVE_ERRNO_H 1
| #define HAVE_FCNTL_H 1
| #define HAVE_FNMATCH_H 1
| #define HAVE_GRP_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_LANGINFO_H 1
| #define HAVE_LIMITS_H 1
| #define HAVE_LINUX_FIEMAP_H 1
| #define HAVE_LINUX_FS_H 1
| #define HAVE_LINUX_MAGIC_H 1
| #define HAVE_LINUX_TYPES_H 1
| #define HAVE_WORKING_FS_IOC_GETFLAGS 1
| #define HAVE_LOCALE_H 1
| #define HAVE_PATHS_H 1
| #define HAVE_POLL_H 1
| #define HAVE_PTHREAD_H 1
| #define HAVE_PWD_H 1
| #define HAVE_SIGNAL_H 1
| #define HAVE_SPAWN_H 1
| #define HAVE_STDARG_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_SYS_CDEFS_H 1
| #define HAVE_SYS_IOCTL_H 1
| #define HAVE_SYS_MOUNT_H 1
| #define HAVE_SYS_QUEUE_H 1
| #define HAVE_SYS_PARAM_H 1
| #define HAVE_SYS_POLL_H 1
| #define HAVE_SYS_SELECT_H 1
| #define HAVE_SYS_STATFS_H 1
| #define HAVE_SYS_STATVFS_H 1
| #define HAVE_SYS_SYSMACROS_H 1
| #define HAVE_SYS_TIME_H 1
| #define HAVE_SYS_UTSNAME_H 1
| #define HAVE_SYS_VFS_H 1
| #define HAVE_SYS_XATTR_H 1
| #define HAVE_TIME_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_UTIME_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_WCTYPE_H 1
| #define HAVE_ZLIB_H 1
| #define HAVE_LIBZ 1
| #define HAVE_ICONV 1
| #define ICONV_CONST 
| #define HAVE_ICONV_H 1
| #define HAVE_LZ4_H 1
| #define HAVE_LZ4HC_H 1
| #define HAVE_LIBLZ4 1
| #define HAVE_ZSTD_H 1
| #define HAVE_LIBZSTD 1
| #define HAVE_LIBZSTD_COMPRESSOR 1
| #define HAVE_LIBXML_XMLREADER_H 1
| #define HAVE_LIBXML_XMLWRITER_H 1
| #define HAVE_REGEX_H 1
| #define HAVE_STRUCT_TM_TM_GMTOFF 1
| #define HAVE_STRUCT_STAT_ST_MTIM_TV_NSEC 1
| #define HAVE_STRUCT_STAT_ST_BLKSIZE 1
| #define HAVE_UINTMAX_T 1
| #define HAVE_UNSIGNED_LONG_LONG 1
| #define HAVE_UNSIGNED_LONG_LONG_INT 1
| #define HAVE_LONG_LONG_INT 1
| #define HAVE_INTMAX_T 1
| #define HAVE_UINTMAX_T 1
| #define HAVE_DECL_SIZE_MAX 1
| #define HAVE_DECL_INT32_MAX 1
| #define HAVE_DECL_INT32_MIN 1
| #define HAVE_DECL_INT64_MAX 1
| #define HAVE_DECL_INT64_MIN 1
| #define HAVE_DECL_UINT64_MAX 1
| #define HAVE_DECL_UINT32_MAX 1
| #define HAVE_DECL_INTMAX_MAX 1
| #define HAVE_DECL_INTMAX_MIN 1
| #define HAVE_DECL_UINTMAX_MAX 1
| #define HAVE_DECL_SSIZE_MAX 1
| #define HAVE_EILSEQ 1
| /* end confdefs.h.  */
| #include <stddef.h>
| #ifdef HAVE_STDIO_H
| # include <stdio.h>
| #endif
| #ifdef HAVE_STDLIB_H
| # include <stdlib.h>
| #endif
| #ifdef HAVE_STRING_H
| # include <string.h>
| #endif
| #ifdef HAVE_INTTYPES_H
| # include <inttypes.h>
| #endif
| #ifdef HAVE_STDINT_H
| # include <stdint.h>
| #endif
| #ifdef HAVE_STRINGS_H
| # include <strings.h>
| #endif
| #ifdef HAVE_SYS_TYPES_H
| # include <sys/types.h>
| #endif
| #ifdef HAVE_SYS_STAT_H
| # include <sys/stat.h>
| #endif
| #ifdef HAVE_UNISTD_H
| # include <unistd.h>
| #endif
| int
| main (void)
| {
| if (sizeof ((wchar_t)))
| 	    return 0;
|   ;
|   return 0;
| }
configure:15145: result: yes
configure:15154: checking size of wchar_t
configure:15160: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2  conftest.c >&5
configure:15160: $? = 0
configure:15160: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2  conftest.c >&5
conftest.c: In function 'main':
conftest.c:160:12: error: size of array 'test_array' is negative
  160 | static int test_array [1 - 2 * !(((long int) (sizeof (wchar_t))) <= 0)];
      |            ^~~~~~~~~~
configure:15160: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "libarchive"
| #define PACKAGE_TARNAME "libarchive"
| #define PACKAGE_VERSION "3.7.2"
| #define PACKAGE_STRING "libarchive 3.7.2"
| #define PACKAGE_BUGREPORT "libarchive-discuss@googlegroups.com"
| #define PACKAGE_URL ""
| #define PACKAGE "libarchive"
| #define VERSION "3.7.2"
| #define __LIBARCHIVE_CONFIG_H_INCLUDED 1
| #define LIBARCHIVE_VERSION_STRING "3.7.2"
| #define LIBARCHIVE_VERSION_NUMBER "3007002"
| #define BSDCPIO_VERSION_STRING "3.7.2"
| #define BSDTAR_VERSION_STRING "3.7.2"
| #define BSDCAT_VERSION_STRING "3.7.2"
| #define BSDUNZIP_VERSION_STRING "3.7.2"
| #define HAVE_STDIO_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_SYS_TIME_H 1
| #define STDC_HEADERS 1
| #define _ALL_SOURCE 1
| #define _DARWIN_C_SOURCE 1
| #define _GNU_SOURCE 1
| #define _HPUX_ALT_XOPEN_SOCKET_API 1
| #define _NETBSD_SOURCE 1
| #define _OPENBSD_SOURCE 1
| #define _POSIX_PTHREAD_SEMANTICS 1
| #define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1
| #define __STDC_WANT_IEC_60559_BFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_DFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1
| #define __STDC_WANT_IEC_60559_TYPES_EXT__ 1
| #define __STDC_WANT_LIB_EXT2__ 1
| #define __STDC_WANT_MATH_SPEC_FUNCS__ 1
| #define _TANDEM_SOURCE 1
| #define __EXTENSIONS__ 1
| #define HAVE_DLFCN_H 1
| #define LT_OBJDIR ".libs/"
| #define HAVE_DIRENT_H 1
| #define HAVE_SYS_WAIT_H 1
| #define HAVE_CTYPE_H 1
| #define HAVE_ERRNO_H 1
| #define HAVE_FCNTL_H 1
| #define HAVE_FNMATCH_H 1
| #define HAVE_GRP_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_LANGINFO_H 1
| #define HAVE_LIMITS_H 1
| #define HAVE_LINUX_FIEMAP_H 1
| #define HAVE_LINUX_FS_H 1
| #define HAVE_LINUX_MAGIC_H 1
| #define HAVE_LINUX_TYPES_H 1
| #define HAVE_WORKING_FS_IOC_GETFLAGS 1
| #define HAVE_LOCALE_H 1
| #define HAVE_PATHS_H 1
| #define HAVE_POLL_H 1
| #define HAVE_PTHREAD_H 1
| #define HAVE_PWD_H 1
| #define HAVE_SIGNAL_H 1
| #define HAVE_SPAWN_H 1
| #define HAVE_STDARG_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_SYS_CDEFS_H 1
| #define HAVE_SYS_IOCTL_H 1
| #define HAVE_SYS_MOUNT_H 1
| #define HAVE_SYS_QUEUE_H 1
| #define HAVE_SYS_PARAM_H 1
| #define HAVE_SYS_POLL_H 1
| #define HAVE_SYS_SELECT_H 1
| #define HAVE_SYS_STATFS_H 1
| #define HAVE_SYS_STATVFS_H 1
| #define HAVE_SYS_SYSMACROS_H 1
| #define HAVE_SYS_TIME_H 1
| #define HAVE_SYS_UTSNAME_H 1
| #define HAVE_SYS_VFS_H 1
| #define HAVE_SYS_XATTR_H 1
| #define HAVE_TIME_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_UTIME_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_WCTYPE_H 1
| #define HAVE_ZLIB_H 1
| #define HAVE_LIBZ 1
| #define HAVE_ICONV 1
| #define ICONV_CONST 
| #define HAVE_ICONV_H 1
| #define HAVE_LZ4_H 1
| #define HAVE_LZ4HC_H 1
| #define HAVE_LIBLZ4 1
| #define HAVE_ZSTD_H 1
| #define HAVE_LIBZSTD 1
| #define HAVE_LIBZSTD_COMPRESSOR 1
| #define HAVE_LIBXML_XMLREADER_H 1
| #define HAVE_LIBXML_XMLWRITER_H 1
| #define HAVE_REGEX_H 1
| #define HAVE_STRUCT_TM_TM_GMTOFF 1
| #define HAVE_STRUCT_STAT_ST_MTIM_TV_NSEC 1
| #define HAVE_STRUCT_STAT_ST_BLKSIZE 1
| #define HAVE_UINTMAX_T 1
| #define HAVE_UNSIGNED_LONG_LONG 1
| #define HAVE_UNSIGNED_LONG_LONG_INT 1
| #define HAVE_LONG_LONG_INT 1
| #define HAVE_INTMAX_T 1
| #define HAVE_UINTMAX_T 1
| #define HAVE_DECL_SIZE_MAX 1
| #define HAVE_DECL_INT32_MAX 1
| #define HAVE_DECL_INT32_MIN 1
| #define HAVE_DECL_INT64_MAX 1
| #define HAVE_DECL_INT64_MIN 1
| #define HAVE_DECL_UINT64_MAX 1
| #define HAVE_DECL_UINT32_MAX 1
| #define HAVE_DECL_INTMAX_MAX 1
| #define HAVE_DECL_INTMAX_MIN 1
| #define HAVE_DECL_UINTMAX_MAX 1
| #define HAVE_DECL_SSIZE_MAX 1
| #define HAVE_EILSEQ 1
| #define HAVE_WCHAR_T 1
| /* end confdefs.h.  */
| #include <stddef.h>
| #ifdef HAVE_STDIO_H
| # include <stdio.h>
| #endif
| #ifdef HAVE_STDLIB_H
| # include <stdlib.h>
| #endif
| #ifdef HAVE_STRING_H
| # include <string.h>
| #endif
| #ifdef HAVE_INTTYPES_H
| # include <inttypes.h>
| #endif
| #ifdef HAVE_STDINT_H
| # include <stdint.h>
| #endif
| #ifdef HAVE_STRINGS_H
| # include <strings.h>
| #endif
| #ifdef HAVE_SYS_TYPES_H
| # include <sys/types.h>
| #endif
| #ifdef HAVE_SYS_STAT_H
| # include <sys/stat.h>
| #endif
| #ifdef HAVE_UNISTD_H
| # include <unistd.h>
| #endif
| int
| main (void)
| {
| static int test_array [1 - 2 * !(((long int) (sizeof (wchar_t))) <= 0)];
| test_array [0] = 0;
| return test_array [0];
| 
|   ;
|   return 0;
| }
configure:15160: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2  conftest.c >&5
conftest.c: In function 'main':
conftest.c:160:12: error: size of array 'test_array' is negative
  160 | static int test_array [1 - 2 * !(((long int) (sizeof (wchar_t))) <= 1)];
      |            ^~~~~~~~~~
configure:15160: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "libarchive"
| #define PACKAGE_TARNAME "libarchive"
| #define PACKAGE_VERSION "3.7.2"
| #define PACKAGE_STRING "libarchive 3.7.2"
| #define PACKAGE_BUGREPORT "libarchive-discuss@googlegroups.com"
| #define PACKAGE_URL ""
| #define PACKAGE "libarchive"
| #define VERSION "3.7.2"
| #define __LIBARCHIVE_CONFIG_H_INCLUDED 1
| #define LIBARCHIVE_VERSION_STRING "3.7.2"
| #define LIBARCHIVE_VERSION_NUMBER "3007002"
| #define BSDCPIO_VERSION_STRING "3.7.2"
| #define BSDTAR_VERSION_STRING "3.7.2"
| #define BSDCAT_VERSION_STRING "3.7.2"
| #define BSDUNZIP_VERSION_STRING "3.7.2"
| #define HAVE_STDIO_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_SYS_TIME_H 1
| #define STDC_HEADERS 1
| #define _ALL_SOURCE 1
| #define _DARWIN_C_SOURCE 1
| #define _GNU_SOURCE 1
| #define _HPUX_ALT_XOPEN_SOCKET_API 1
| #define _NETBSD_SOURCE 1
| #define _OPENBSD_SOURCE 1
| #define _POSIX_PTHREAD_SEMANTICS 1
| #define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1
| #define __STDC_WANT_IEC_60559_BFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_DFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1
| #define __STDC_WANT_IEC_60559_TYPES_EXT__ 1
| #define __STDC_WANT_LIB_EXT2__ 1
| #define __STDC_WANT_MATH_SPEC_FUNCS__ 1
| #define _TANDEM_SOURCE 1
| #define __EXTENSIONS__ 1
| #define HAVE_DLFCN_H 1
| #define LT_OBJDIR ".libs/"
| #define HAVE_DIRENT_H 1
| #define HAVE_SYS_WAIT_H 1
| #define HAVE_CTYPE_H 1
| #define HAVE_ERRNO_H 1
| #define HAVE_FCNTL_H 1
| #define HAVE_FNMATCH_H 1
| #define HAVE_GRP_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_LANGINFO_H 1
| #define HAVE_LIMITS_H 1
| #define HAVE_LINUX_FIEMAP_H 1
| #define HAVE_LINUX_FS_H 1
| #define HAVE_LINUX_MAGIC_H 1
| #define HAVE_LINUX_TYPES_H 1
| #define HAVE_WORKING_FS_IOC_GETFLAGS 1
| #define HAVE_LOCALE_H 1
| #define HAVE_PATHS_H 1
| #define HAVE_POLL_H 1
| #define HAVE_PTHREAD_H 1
| #define HAVE_PWD_H 1
| #define HAVE_SIGNAL_H 1
| #define HAVE_SPAWN_H 1
| #define HAVE_STDARG_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_SYS_CDEFS_H 1
| #define HAVE_SYS_IOCTL_H 1
| #define HAVE_SYS_MOUNT_H 1
| #define HAVE_SYS_QUEUE_H 1
| #define HAVE_SYS_PARAM_H 1
| #define HAVE_SYS_POLL_H 1
| #define HAVE_SYS_SELECT_H 1
| #define HAVE_SYS_STATFS_H 1
| #define HAVE_SYS_STATVFS_H 1
| #define HAVE_SYS_SYSMACROS_H 1
| #define HAVE_SYS_TIME_H 1
| #define HAVE_SYS_UTSNAME_H 1
| #define HAVE_SYS_VFS_H 1
| #define HAVE_SYS_XATTR_H 1
| #define HAVE_TIME_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_UTIME_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_WCTYPE_H 1
| #define HAVE_ZLIB_H 1
| #define HAVE_LIBZ 1
| #define HAVE_ICONV 1
| #define ICONV_CONST 
| #define HAVE_ICONV_H 1
| #define HAVE_LZ4_H 1
| #define HAVE_LZ4HC_H 1
| #define HAVE_LIBLZ4 1
| #define HAVE_ZSTD_H 1
| #define HAVE_LIBZSTD 1
| #define HAVE_LIBZSTD_COMPRESSOR 1
| #define HAVE_LIBXML_XMLREADER_H 1
| #define HAVE_LIBXML_XMLWRITER_H 1
| #define HAVE_REGEX_H 1
| #define HAVE_STRUCT_TM_TM_GMTOFF 1
| #define HAVE_STRUCT_STAT_ST_MTIM_TV_NSEC 1
| #define HAVE_STRUCT_STAT_ST_BLKSIZE 1
| #define HAVE_UINTMAX_T 1
| #define HAVE_UNSIGNED_LONG_LONG 1
| #define HAVE_UNSIGNED_LONG_LONG_INT 1
| #define HAVE_LONG_LONG_INT 1
| #define HAVE_INTMAX_T 1
| #define HAVE_UINTMAX_T 1
| #define HAVE_DECL_SIZE_MAX 1
| #define HAVE_DECL_INT32_MAX 1
| #define HAVE_DECL_INT32_MIN 1
| #define HAVE_DECL_INT64_MAX 1
| #define HAVE_DECL_INT64_MIN 1
| #define HAVE_DECL_UINT64_MAX 1
| #define HAVE_DECL_UINT32_MAX 1
| #define HAVE_DECL_INTMAX_MAX 1
| #define HAVE_DECL_INTMAX_MIN 1
| #define HAVE_DECL_UINTMAX_MAX 1
| #define HAVE_DECL_SSIZE_MAX 1
| #define HAVE_EILSEQ 1
| #define HAVE_WCHAR_T 1
| /* end confdefs.h.  */
| #include <stddef.h>
| #ifdef HAVE_STDIO_H
| # include <stdio.h>
| #endif
| #ifdef HAVE_STDLIB_H
| # include <stdlib.h>
| #endif
| #ifdef HAVE_STRING_H
| # include <string.h>
| #endif
| #ifdef HAVE_INTTYPES_H
| # include <inttypes.h>
| #endif
| #ifdef HAVE_STDINT_H
| # include <stdint.h>
| #endif
| #ifdef HAVE_STRINGS_H
| # include <strings.h>
| #endif
| #ifdef HAVE_SYS_TYPES_H
| # include <sys/types.h>
| #endif
| #ifdef HAVE_SYS_STAT_H
| # include <sys/stat.h>
| #endif
| #ifdef HAVE_UNISTD_H
| # include <unistd.h>
| #endif
| int
| main (void)
| {
| static int test_array [1 - 2 * !(((long int) (sizeof (wchar_t))) <= 1)];
| test_array [0] = 0;
| return test_array [0];
| 
|   ;
|   return 0;
| }
configure:15160: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2  conftest.c >&5
conftest.c: In function 'main':
conftest.c:160:12: error: size of array 'test_array' is negative
  160 | static int test_array [1 - 2 * !(((long int) (sizeof (wchar_t))) <= 3)];
      |            ^~~~~~~~~~
configure:15160: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "libarchive"
| #define PACKAGE_TARNAME "libarchive"
| #define PACKAGE_VERSION "3.7.2"
| #define PACKAGE_STRING "libarchive 3.7.2"
| #define PACKAGE_BUGREPORT "libarchive-discuss@googlegroups.com"
| #define PACKAGE_URL ""
| #define PACKAGE "libarchive"
| #define VERSION "3.7.2"
| #define __LIBARCHIVE_CONFIG_H_INCLUDED 1
| #define LIBARCHIVE_VERSION_STRING "3.7.2"
| #define LIBARCHIVE_VERSION_NUMBER "3007002"
| #define BSDCPIO_VERSION_STRING "3.7.2"
| #define BSDTAR_VERSION_STRING "3.7.2"
| #define BSDCAT_VERSION_STRING "3.7.2"
| #define BSDUNZIP_VERSION_STRING "3.7.2"
| #define HAVE_STDIO_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_SYS_TIME_H 1
| #define STDC_HEADERS 1
| #define _ALL_SOURCE 1
| #define _DARWIN_C_SOURCE 1
| #define _GNU_SOURCE 1
| #define _HPUX_ALT_XOPEN_SOCKET_API 1
| #define _NETBSD_SOURCE 1
| #define _OPENBSD_SOURCE 1
| #define _POSIX_PTHREAD_SEMANTICS 1
| #define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1
| #define __STDC_WANT_IEC_60559_BFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_DFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1
| #define __STDC_WANT_IEC_60559_TYPES_EXT__ 1
| #define __STDC_WANT_LIB_EXT2__ 1
| #define __STDC_WANT_MATH_SPEC_FUNCS__ 1
| #define _TANDEM_SOURCE 1
| #define __EXTENSIONS__ 1
| #define HAVE_DLFCN_H 1
| #define LT_OBJDIR ".libs/"
| #define HAVE_DIRENT_H 1
| #define HAVE_SYS_WAIT_H 1
| #define HAVE_CTYPE_H 1
| #define HAVE_ERRNO_H 1
| #define HAVE_FCNTL_H 1
| #define HAVE_FNMATCH_H 1
| #define HAVE_GRP_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_LANGINFO_H 1
| #define HAVE_LIMITS_H 1
| #define HAVE_LINUX_FIEMAP_H 1
| #define HAVE_LINUX_FS_H 1
| #define HAVE_LINUX_MAGIC_H 1
| #define HAVE_LINUX_TYPES_H 1
| #define HAVE_WORKING_FS_IOC_GETFLAGS 1
| #define HAVE_LOCALE_H 1
| #define HAVE_PATHS_H 1
| #define HAVE_POLL_H 1
| #define HAVE_PTHREAD_H 1
| #define HAVE_PWD_H 1
| #define HAVE_SIGNAL_H 1
| #define HAVE_SPAWN_H 1
| #define HAVE_STDARG_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_SYS_CDEFS_H 1
| #define HAVE_SYS_IOCTL_H 1
| #define HAVE_SYS_MOUNT_H 1
| #define HAVE_SYS_QUEUE_H 1
| #define HAVE_SYS_PARAM_H 1
| #define HAVE_SYS_POLL_H 1
| #define HAVE_SYS_SELECT_H 1
| #define HAVE_SYS_STATFS_H 1
| #define HAVE_SYS_STATVFS_H 1
| #define HAVE_SYS_SYSMACROS_H 1
| #define HAVE_SYS_TIME_H 1
| #define HAVE_SYS_UTSNAME_H 1
| #define HAVE_SYS_VFS_H 1
| #define HAVE_SYS_XATTR_H 1
| #define HAVE_TIME_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_UTIME_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_WCTYPE_H 1
| #define HAVE_ZLIB_H 1
| #define HAVE_LIBZ 1
| #define HAVE_ICONV 1
| #define ICONV_CONST 
| #define HAVE_ICONV_H 1
| #define HAVE_LZ4_H 1
| #define HAVE_LZ4HC_H 1
| #define HAVE_LIBLZ4 1
| #define HAVE_ZSTD_H 1
| #define HAVE_LIBZSTD 1
| #define HAVE_LIBZSTD_COMPRESSOR 1
| #define HAVE_LIBXML_XMLREADER_H 1
| #define HAVE_LIBXML_XMLWRITER_H 1
| #define HAVE_REGEX_H 1
| #define HAVE_STRUCT_TM_TM_GMTOFF 1
| #define HAVE_STRUCT_STAT_ST_MTIM_TV_NSEC 1
| #define HAVE_STRUCT_STAT_ST_BLKSIZE 1
| #define HAVE_UINTMAX_T 1
| #define HAVE_UNSIGNED_LONG_LONG 1
| #define HAVE_UNSIGNED_LONG_LONG_INT 1
| #define HAVE_LONG_LONG_INT 1
| #define HAVE_INTMAX_T 1
| #define HAVE_UINTMAX_T 1
| #define HAVE_DECL_SIZE_MAX 1
| #define HAVE_DECL_INT32_MAX 1
| #define HAVE_DECL_INT32_MIN 1
| #define HAVE_DECL_INT64_MAX 1
| #define HAVE_DECL_INT64_MIN 1
| #define HAVE_DECL_UINT64_MAX 1
| #define HAVE_DECL_UINT32_MAX 1
| #define HAVE_DECL_INTMAX_MAX 1
| #define HAVE_DECL_INTMAX_MIN 1
| #define HAVE_DECL_UINTMAX_MAX 1
| #define HAVE_DECL_SSIZE_MAX 1
| #define HAVE_EILSEQ 1
| #define HAVE_WCHAR_T 1
| /* end confdefs.h.  */
| #include <stddef.h>
| #ifdef HAVE_STDIO_H
| # include <stdio.h>
| #endif
| #ifdef HAVE_STDLIB_H
| # include <stdlib.h>
| #endif
| #ifdef HAVE_STRING_H
| # include <string.h>
| #endif
| #ifdef HAVE_INTTYPES_H
| # include <inttypes.h>
| #endif
| #ifdef HAVE_STDINT_H
| # include <stdint.h>
| #endif
| #ifdef HAVE_STRINGS_H
| # include <strings.h>
| #endif
| #ifdef HAVE_SYS_TYPES_H
| # include <sys/types.h>
| #endif
| #ifdef HAVE_SYS_STAT_H
| # include <sys/stat.h>
| #endif
| #ifdef HAVE_UNISTD_H
| # include <unistd.h>
| #endif
| int
| main (void)
| {
| static int test_array [1 - 2 * !(((long int) (sizeof (wchar_t))) <= 3)];
| test_array [0] = 0;
| return test_array [0];
| 
|   ;
|   return 0;
| }
configure:15160: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2  conftest.c >&5
configure:15160: $? = 0
configure:15160: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2  conftest.c >&5
configure:15160: $? = 0
configure:15160: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2  conftest.c >&5
configure:15160: $? = 0
configure:15175: result: 4
configure:15186: checking size of int
configure:15207: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2  conftest.c >&5
configure:15207: $? = 0
configure:15220: result: 4
configure:15226: checking size of long
configure:15247: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2  conftest.c >&5
configure:15247: $? = 0
configure:15260: result: 4
configure:15272: checking whether /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc needs -traditional
configure:15309: result: no
configure:15317: checking for sys/mkdev.h
configure:15317: result: no
configure:15326: checking for sys/sysmacros.h
configure:15326: result: yes
configure:15336: checking for _LARGEFILE_SOURCE value needed for large files
configure:15356: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -o conftest -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2   conftest.c -lzstd -llz4 -lz  -L/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/lib -lxml2  >&5
configure:15356: $? = 0
configure:15386: result: no
configure:15405: checking for working memcmp
configure:15461: result: yes
configure:15470: checking whether lstat correctly handles trailing slash
configure:15521: result: yes
configure:15538: checking whether lstat accepts an empty string
configure:15571: result: yes
configure:15585: checking whether stat accepts an empty string
configure:15618: result: yes
configure:15632: checking whether strerror_r is declared
configure:15632: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections  -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2  conftest.c >&5
configure:15632: $? = 0
configure:15632: result: yes
configure:15651: checking whether strerror_r returns char *
configure:15676: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2  conftest.c >&5
configure:15676: $? = 0
configure:15685: result: yes
configure:15696: checking for strftime
configure:15696: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -o conftest -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2   conftest.c -lzstd -llz4 -lz  -L/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/lib -lxml2  >&5
conftest.c:156:6: warning: conflicting types for built-in function 'strftime'; expected 'unsigned int(char *, unsigned int,  const char *, const void *)' [-Wbuiltin-declaration-mismatch]
  156 | char strftime ();
      |      ^~~~~~~~
conftest.c:148:1: note: 'strftime' is declared in header '<time.h>'
  147 | #include <limits.h>
  148 | #undef strftime
configure:15696: $? = 0
configure:15696: result: yes
configure:15752: checking for vprintf
configure:15752: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -o conftest -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2   conftest.c -lzstd -llz4 -lz  -L/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/lib -lxml2  >&5
conftest.c:157:6: warning: conflicting types for built-in function 'vprintf'; expected 'int(const char *, void *)' [-Wbuiltin-declaration-mismatch]
  157 | char vprintf ();
      |      ^~~~~~~
conftest.c:149:1: note: 'vprintf' is declared in header '<stdio.h>'
  148 | #include <limits.h>
  149 | #undef vprintf
configure:15752: $? = 0
configure:15752: result: yes
configure:15777: checking for CreateHardLinkA
configure:15813: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -o conftest -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2   conftest.c -lzstd -llz4 -lz  -L/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/lib -lxml2  >&5
conftest.c:151:16: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'CreateHardLinkA'
  151 | char __stdcall CreateHardLinkA ( const char *, const char *, void * );
      |                ^~~~~~~~~~~~~~~
conftest.c: In function 'main':
conftest.c:163:5: error: 'CreateHardLinkA' undeclared (first use in this function)
  163 | f = CreateHardLinkA;
      |     ^~~~~~~~~~~~~~~
conftest.c:163:5: note: each undeclared identifier is reported only once for each function it appears in
configure:15813: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "libarchive"
| #define PACKAGE_TARNAME "libarchive"
| #define PACKAGE_VERSION "3.7.2"
| #define PACKAGE_STRING "libarchive 3.7.2"
| #define PACKAGE_BUGREPORT "libarchive-discuss@googlegroups.com"
| #define PACKAGE_URL ""
| #define PACKAGE "libarchive"
| #define VERSION "3.7.2"
| #define __LIBARCHIVE_CONFIG_H_INCLUDED 1
| #define LIBARCHIVE_VERSION_STRING "3.7.2"
| #define LIBARCHIVE_VERSION_NUMBER "3007002"
| #define BSDCPIO_VERSION_STRING "3.7.2"
| #define BSDTAR_VERSION_STRING "3.7.2"
| #define BSDCAT_VERSION_STRING "3.7.2"
| #define BSDUNZIP_VERSION_STRING "3.7.2"
| #define HAVE_STDIO_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_SYS_TIME_H 1
| #define STDC_HEADERS 1
| #define _ALL_SOURCE 1
| #define _DARWIN_C_SOURCE 1
| #define _GNU_SOURCE 1
| #define _HPUX_ALT_XOPEN_SOCKET_API 1
| #define _NETBSD_SOURCE 1
| #define _OPENBSD_SOURCE 1
| #define _POSIX_PTHREAD_SEMANTICS 1
| #define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1
| #define __STDC_WANT_IEC_60559_BFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_DFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1
| #define __STDC_WANT_IEC_60559_TYPES_EXT__ 1
| #define __STDC_WANT_LIB_EXT2__ 1
| #define __STDC_WANT_MATH_SPEC_FUNCS__ 1
| #define _TANDEM_SOURCE 1
| #define __EXTENSIONS__ 1
| #define HAVE_DLFCN_H 1
| #define LT_OBJDIR ".libs/"
| #define HAVE_DIRENT_H 1
| #define HAVE_SYS_WAIT_H 1
| #define HAVE_CTYPE_H 1
| #define HAVE_ERRNO_H 1
| #define HAVE_FCNTL_H 1
| #define HAVE_FNMATCH_H 1
| #define HAVE_GRP_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_LANGINFO_H 1
| #define HAVE_LIMITS_H 1
| #define HAVE_LINUX_FIEMAP_H 1
| #define HAVE_LINUX_FS_H 1
| #define HAVE_LINUX_MAGIC_H 1
| #define HAVE_LINUX_TYPES_H 1
| #define HAVE_WORKING_FS_IOC_GETFLAGS 1
| #define HAVE_LOCALE_H 1
| #define HAVE_PATHS_H 1
| #define HAVE_POLL_H 1
| #define HAVE_PTHREAD_H 1
| #define HAVE_PWD_H 1
| #define HAVE_SIGNAL_H 1
| #define HAVE_SPAWN_H 1
| #define HAVE_STDARG_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_SYS_CDEFS_H 1
| #define HAVE_SYS_IOCTL_H 1
| #define HAVE_SYS_MOUNT_H 1
| #define HAVE_SYS_QUEUE_H 1
| #define HAVE_SYS_PARAM_H 1
| #define HAVE_SYS_POLL_H 1
| #define HAVE_SYS_SELECT_H 1
| #define HAVE_SYS_STATFS_H 1
| #define HAVE_SYS_STATVFS_H 1
| #define HAVE_SYS_SYSMACROS_H 1
| #define HAVE_SYS_TIME_H 1
| #define HAVE_SYS_UTSNAME_H 1
| #define HAVE_SYS_VFS_H 1
| #define HAVE_SYS_XATTR_H 1
| #define HAVE_TIME_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_UTIME_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_WCTYPE_H 1
| #define HAVE_ZLIB_H 1
| #define HAVE_LIBZ 1
| #define HAVE_ICONV 1
| #define ICONV_CONST 
| #define HAVE_ICONV_H 1
| #define HAVE_LZ4_H 1
| #define HAVE_LZ4HC_H 1
| #define HAVE_LIBLZ4 1
| #define HAVE_ZSTD_H 1
| #define HAVE_LIBZSTD 1
| #define HAVE_LIBZSTD_COMPRESSOR 1
| #define HAVE_LIBXML_XMLREADER_H 1
| #define HAVE_LIBXML_XMLWRITER_H 1
| #define HAVE_REGEX_H 1
| #define HAVE_STRUCT_TM_TM_GMTOFF 1
| #define HAVE_STRUCT_STAT_ST_MTIM_TV_NSEC 1
| #define HAVE_STRUCT_STAT_ST_BLKSIZE 1
| #define HAVE_UINTMAX_T 1
| #define HAVE_UNSIGNED_LONG_LONG 1
| #define HAVE_UNSIGNED_LONG_LONG_INT 1
| #define HAVE_LONG_LONG_INT 1
| #define HAVE_INTMAX_T 1
| #define HAVE_UINTMAX_T 1
| #define HAVE_DECL_SIZE_MAX 1
| #define HAVE_DECL_INT32_MAX 1
| #define HAVE_DECL_INT32_MIN 1
| #define HAVE_DECL_INT64_MAX 1
| #define HAVE_DECL_INT64_MIN 1
| #define HAVE_DECL_UINT64_MAX 1
| #define HAVE_DECL_UINT32_MAX 1
| #define HAVE_DECL_INTMAX_MAX 1
| #define HAVE_DECL_INTMAX_MIN 1
| #define HAVE_DECL_UINTMAX_MAX 1
| #define HAVE_DECL_SSIZE_MAX 1
| #define HAVE_EILSEQ 1
| #define HAVE_WCHAR_T 1
| #define SIZEOF_WCHAR_T 4
| #define SIZEOF_INT 4
| #define SIZEOF_LONG 4
| #define MAJOR_IN_SYSMACROS 1
| #define HAVE_FSEEKO 1
| #define LSTAT_FOLLOWS_SLASHED_SYMLINK 1
| #define HAVE_LSTAT_EMPTY_STRING_BUG 1
| #define HAVE_STAT_EMPTY_STRING_BUG 1
| #define HAVE_DECL_STRERROR_R 1
| #define HAVE_STRERROR_R 1
| #define STRERROR_R_CHAR_P 1
| #define HAVE_STRFTIME 1
| #define HAVE_VPRINTF 1
| /* end confdefs.h.  */
| /* System header to define __stub macros and hopefully few prototypes,
|     which can conflict with char __stdcall CreateHardLinkA ( const char *, const char *, void * ) below.  */
| #include <assert.h>
| /* Override any gcc2 internal prototype to avoid an error.  */
| #ifdef __cplusplus
| extern "C"
| #endif
| /* We use char because int might match the return type of a gcc2
|    builtin and then its argument prototype would still apply.  */
| char __stdcall CreateHardLinkA ( const char *, const char *, void * );
| char (*f) ( const char *, const char *, void * );
| 
| int
| main (void)
| {
| /* The GNU C library defines this for functions which it implements
|     to always fail with ENOSYS.  Some functions are actually named
|     something starting with __ and the normal name is an alias.  */
| #if defined (__stub_CreateHardLinkA) || defined (__stub___CreateHardLinkA)
| choke me
| #else
| f = CreateHardLinkA;
| #endif
| 
|   ;
|   return 0;
| }
configure:15822: result: no
configure:15828: checking for arc4random_buf
configure:15828: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -o conftest -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2   conftest.c -lzstd -llz4 -lz  -L/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/lib -lxml2  >&5
configure:15828: $? = 0
configure:15828: result: yes
configure:15834: checking for chflags
configure:15834: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -o conftest -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2   conftest.c -lzstd -llz4 -lz  -L/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/lib -lxml2  >&5
conftest.c:164:1: error: unknown type name 'choke'
  164 | choke me
      | ^~~~~
conftest.c:164:9: error: expected ';' before 'int'
  164 | choke me
      |         ^
      |         ;
......
  167 | int
      | ~~~      
configure:15834: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "libarchive"
| #define PACKAGE_TARNAME "libarchive"
| #define PACKAGE_VERSION "3.7.2"
| #define PACKAGE_STRING "libarchive 3.7.2"
| #define PACKAGE_BUGREPORT "libarchive-discuss@googlegroups.com"
| #define PACKAGE_URL ""
| #define PACKAGE "libarchive"
| #define VERSION "3.7.2"
| #define __LIBARCHIVE_CONFIG_H_INCLUDED 1
| #define LIBARCHIVE_VERSION_STRING "3.7.2"
| #define LIBARCHIVE_VERSION_NUMBER "3007002"
| #define BSDCPIO_VERSION_STRING "3.7.2"
| #define BSDTAR_VERSION_STRING "3.7.2"
| #define BSDCAT_VERSION_STRING "3.7.2"
| #define BSDUNZIP_VERSION_STRING "3.7.2"
| #define HAVE_STDIO_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_SYS_TIME_H 1
| #define STDC_HEADERS 1
| #define _ALL_SOURCE 1
| #define _DARWIN_C_SOURCE 1
| #define _GNU_SOURCE 1
| #define _HPUX_ALT_XOPEN_SOCKET_API 1
| #define _NETBSD_SOURCE 1
| #define _OPENBSD_SOURCE 1
| #define _POSIX_PTHREAD_SEMANTICS 1
| #define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1
| #define __STDC_WANT_IEC_60559_BFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_DFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1
| #define __STDC_WANT_IEC_60559_TYPES_EXT__ 1
| #define __STDC_WANT_LIB_EXT2__ 1
| #define __STDC_WANT_MATH_SPEC_FUNCS__ 1
| #define _TANDEM_SOURCE 1
| #define __EXTENSIONS__ 1
| #define HAVE_DLFCN_H 1
| #define LT_OBJDIR ".libs/"
| #define HAVE_DIRENT_H 1
| #define HAVE_SYS_WAIT_H 1
| #define HAVE_CTYPE_H 1
| #define HAVE_ERRNO_H 1
| #define HAVE_FCNTL_H 1
| #define HAVE_FNMATCH_H 1
| #define HAVE_GRP_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_LANGINFO_H 1
| #define HAVE_LIMITS_H 1
| #define HAVE_LINUX_FIEMAP_H 1
| #define HAVE_LINUX_FS_H 1
| #define HAVE_LINUX_MAGIC_H 1
| #define HAVE_LINUX_TYPES_H 1
| #define HAVE_WORKING_FS_IOC_GETFLAGS 1
| #define HAVE_LOCALE_H 1
| #define HAVE_PATHS_H 1
| #define HAVE_POLL_H 1
| #define HAVE_PTHREAD_H 1
| #define HAVE_PWD_H 1
| #define HAVE_SIGNAL_H 1
| #define HAVE_SPAWN_H 1
| #define HAVE_STDARG_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_SYS_CDEFS_H 1
| #define HAVE_SYS_IOCTL_H 1
| #define HAVE_SYS_MOUNT_H 1
| #define HAVE_SYS_QUEUE_H 1
| #define HAVE_SYS_PARAM_H 1
| #define HAVE_SYS_POLL_H 1
| #define HAVE_SYS_SELECT_H 1
| #define HAVE_SYS_STATFS_H 1
| #define HAVE_SYS_STATVFS_H 1
| #define HAVE_SYS_SYSMACROS_H 1
| #define HAVE_SYS_TIME_H 1
| #define HAVE_SYS_UTSNAME_H 1
| #define HAVE_SYS_VFS_H 1
| #define HAVE_SYS_XATTR_H 1
| #define HAVE_TIME_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_UTIME_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_WCTYPE_H 1
| #define HAVE_ZLIB_H 1
| #define HAVE_LIBZ 1
| #define HAVE_ICONV 1
| #define ICONV_CONST 
| #define HAVE_ICONV_H 1
| #define HAVE_LZ4_H 1
| #define HAVE_LZ4HC_H 1
| #define HAVE_LIBLZ4 1
| #define HAVE_ZSTD_H 1
| #define HAVE_LIBZSTD 1
| #define HAVE_LIBZSTD_COMPRESSOR 1
| #define HAVE_LIBXML_XMLREADER_H 1
| #define HAVE_LIBXML_XMLWRITER_H 1
| #define HAVE_REGEX_H 1
| #define HAVE_STRUCT_TM_TM_GMTOFF 1
| #define HAVE_STRUCT_STAT_ST_MTIM_TV_NSEC 1
| #define HAVE_STRUCT_STAT_ST_BLKSIZE 1
| #define HAVE_UINTMAX_T 1
| #define HAVE_UNSIGNED_LONG_LONG 1
| #define HAVE_UNSIGNED_LONG_LONG_INT 1
| #define HAVE_LONG_LONG_INT 1
| #define HAVE_INTMAX_T 1
| #define HAVE_UINTMAX_T 1
| #define HAVE_DECL_SIZE_MAX 1
| #define HAVE_DECL_INT32_MAX 1
| #define HAVE_DECL_INT32_MIN 1
| #define HAVE_DECL_INT64_MAX 1
| #define HAVE_DECL_INT64_MIN 1
| #define HAVE_DECL_UINT64_MAX 1
| #define HAVE_DECL_UINT32_MAX 1
| #define HAVE_DECL_INTMAX_MAX 1
| #define HAVE_DECL_INTMAX_MIN 1
| #define HAVE_DECL_UINTMAX_MAX 1
| #define HAVE_DECL_SSIZE_MAX 1
| #define HAVE_EILSEQ 1
| #define HAVE_WCHAR_T 1
| #define SIZEOF_WCHAR_T 4
| #define SIZEOF_INT 4
| #define SIZEOF_LONG 4
| #define MAJOR_IN_SYSMACROS 1
| #define HAVE_FSEEKO 1
| #define LSTAT_FOLLOWS_SLASHED_SYMLINK 1
| #define HAVE_LSTAT_EMPTY_STRING_BUG 1
| #define HAVE_STAT_EMPTY_STRING_BUG 1
| #define HAVE_DECL_STRERROR_R 1
| #define HAVE_STRERROR_R 1
| #define STRERROR_R_CHAR_P 1
| #define HAVE_STRFTIME 1
| #define HAVE_VPRINTF 1
| #define HAVE_ARC4RANDOM_BUF 1
| /* end confdefs.h.  */
| /* Define chflags to an innocuous variant, in case <limits.h> declares chflags.
|    For example, HP-UX 11i <limits.h> declares gettimeofday.  */
| #define chflags innocuous_chflags
| 
| /* System header to define __stub macros and hopefully few prototypes,
|    which can conflict with char chflags (); below.  */
| 
| #include <limits.h>
| #undef chflags
| 
| /* Override any GCC internal prototype to avoid an error.
|    Use char because int might match the return type of a GCC
|    builtin and then its argument prototype would still apply.  */
| #ifdef __cplusplus
| extern "C"
| #endif
| char chflags ();
| /* The GNU C library defines this for functions which it implements
|     to always fail with ENOSYS.  Some functions are actually named
|     something starting with __ and the normal name is an alias.  */
| #if defined __stub_chflags || defined __stub___chflags
| choke me
| #endif
| 
| int
| main (void)
| {
| return chflags ();
|   ;
|   return 0;
| }
configure:15834: result: no
configure:15840: checking for chown
configure:15840: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -o conftest -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2   conftest.c -lzstd -llz4 -lz  -L/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/lib -lxml2  >&5
configure:15840: $? = 0
configure:15840: result: yes
configure:15846: checking for chroot
configure:15846: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -o conftest -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2   conftest.c -lzstd -llz4 -lz  -L/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/lib -lxml2  >&5
configure:15846: $? = 0
configure:15846: result: yes
configure:15852: checking for ctime_r
configure:15852: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -o conftest -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2   conftest.c -lzstd -llz4 -lz  -L/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/lib -lxml2  >&5
configure:15852: $? = 0
configure:15852: result: yes
configure:15859: checking for fchdir
configure:15859: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -o conftest -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2   conftest.c -lzstd -llz4 -lz  -L/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/lib -lxml2  >&5
configure:15859: $? = 0
configure:15859: result: yes
configure:15865: checking for fchflags
configure:15865: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -o conftest -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2   conftest.c -lzstd -llz4 -lz  -L/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/lib -lxml2  >&5
conftest.c:168:1: error: unknown type name 'choke'
  168 | choke me
      | ^~~~~
conftest.c:168:9: error: expected ';' before 'int'
  168 | choke me
      |         ^
      |         ;
......
  171 | int
      | ~~~      
configure:15865: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "libarchive"
| #define PACKAGE_TARNAME "libarchive"
| #define PACKAGE_VERSION "3.7.2"
| #define PACKAGE_STRING "libarchive 3.7.2"
| #define PACKAGE_BUGREPORT "libarchive-discuss@googlegroups.com"
| #define PACKAGE_URL ""
| #define PACKAGE "libarchive"
| #define VERSION "3.7.2"
| #define __LIBARCHIVE_CONFIG_H_INCLUDED 1
| #define LIBARCHIVE_VERSION_STRING "3.7.2"
| #define LIBARCHIVE_VERSION_NUMBER "3007002"
| #define BSDCPIO_VERSION_STRING "3.7.2"
| #define BSDTAR_VERSION_STRING "3.7.2"
| #define BSDCAT_VERSION_STRING "3.7.2"
| #define BSDUNZIP_VERSION_STRING "3.7.2"
| #define HAVE_STDIO_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_SYS_TIME_H 1
| #define STDC_HEADERS 1
| #define _ALL_SOURCE 1
| #define _DARWIN_C_SOURCE 1
| #define _GNU_SOURCE 1
| #define _HPUX_ALT_XOPEN_SOCKET_API 1
| #define _NETBSD_SOURCE 1
| #define _OPENBSD_SOURCE 1
| #define _POSIX_PTHREAD_SEMANTICS 1
| #define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1
| #define __STDC_WANT_IEC_60559_BFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_DFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1
| #define __STDC_WANT_IEC_60559_TYPES_EXT__ 1
| #define __STDC_WANT_LIB_EXT2__ 1
| #define __STDC_WANT_MATH_SPEC_FUNCS__ 1
| #define _TANDEM_SOURCE 1
| #define __EXTENSIONS__ 1
| #define HAVE_DLFCN_H 1
| #define LT_OBJDIR ".libs/"
| #define HAVE_DIRENT_H 1
| #define HAVE_SYS_WAIT_H 1
| #define HAVE_CTYPE_H 1
| #define HAVE_ERRNO_H 1
| #define HAVE_FCNTL_H 1
| #define HAVE_FNMATCH_H 1
| #define HAVE_GRP_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_LANGINFO_H 1
| #define HAVE_LIMITS_H 1
| #define HAVE_LINUX_FIEMAP_H 1
| #define HAVE_LINUX_FS_H 1
| #define HAVE_LINUX_MAGIC_H 1
| #define HAVE_LINUX_TYPES_H 1
| #define HAVE_WORKING_FS_IOC_GETFLAGS 1
| #define HAVE_LOCALE_H 1
| #define HAVE_PATHS_H 1
| #define HAVE_POLL_H 1
| #define HAVE_PTHREAD_H 1
| #define HAVE_PWD_H 1
| #define HAVE_SIGNAL_H 1
| #define HAVE_SPAWN_H 1
| #define HAVE_STDARG_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_SYS_CDEFS_H 1
| #define HAVE_SYS_IOCTL_H 1
| #define HAVE_SYS_MOUNT_H 1
| #define HAVE_SYS_QUEUE_H 1
| #define HAVE_SYS_PARAM_H 1
| #define HAVE_SYS_POLL_H 1
| #define HAVE_SYS_SELECT_H 1
| #define HAVE_SYS_STATFS_H 1
| #define HAVE_SYS_STATVFS_H 1
| #define HAVE_SYS_SYSMACROS_H 1
| #define HAVE_SYS_TIME_H 1
| #define HAVE_SYS_UTSNAME_H 1
| #define HAVE_SYS_VFS_H 1
| #define HAVE_SYS_XATTR_H 1
| #define HAVE_TIME_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_UTIME_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_WCTYPE_H 1
| #define HAVE_ZLIB_H 1
| #define HAVE_LIBZ 1
| #define HAVE_ICONV 1
| #define ICONV_CONST 
| #define HAVE_ICONV_H 1
| #define HAVE_LZ4_H 1
| #define HAVE_LZ4HC_H 1
| #define HAVE_LIBLZ4 1
| #define HAVE_ZSTD_H 1
| #define HAVE_LIBZSTD 1
| #define HAVE_LIBZSTD_COMPRESSOR 1
| #define HAVE_LIBXML_XMLREADER_H 1
| #define HAVE_LIBXML_XMLWRITER_H 1
| #define HAVE_REGEX_H 1
| #define HAVE_STRUCT_TM_TM_GMTOFF 1
| #define HAVE_STRUCT_STAT_ST_MTIM_TV_NSEC 1
| #define HAVE_STRUCT_STAT_ST_BLKSIZE 1
| #define HAVE_UINTMAX_T 1
| #define HAVE_UNSIGNED_LONG_LONG 1
| #define HAVE_UNSIGNED_LONG_LONG_INT 1
| #define HAVE_LONG_LONG_INT 1
| #define HAVE_INTMAX_T 1
| #define HAVE_UINTMAX_T 1
| #define HAVE_DECL_SIZE_MAX 1
| #define HAVE_DECL_INT32_MAX 1
| #define HAVE_DECL_INT32_MIN 1
| #define HAVE_DECL_INT64_MAX 1
| #define HAVE_DECL_INT64_MIN 1
| #define HAVE_DECL_UINT64_MAX 1
| #define HAVE_DECL_UINT32_MAX 1
| #define HAVE_DECL_INTMAX_MAX 1
| #define HAVE_DECL_INTMAX_MIN 1
| #define HAVE_DECL_UINTMAX_MAX 1
| #define HAVE_DECL_SSIZE_MAX 1
| #define HAVE_EILSEQ 1
| #define HAVE_WCHAR_T 1
| #define SIZEOF_WCHAR_T 4
| #define SIZEOF_INT 4
| #define SIZEOF_LONG 4
| #define MAJOR_IN_SYSMACROS 1
| #define HAVE_FSEEKO 1
| #define LSTAT_FOLLOWS_SLASHED_SYMLINK 1
| #define HAVE_LSTAT_EMPTY_STRING_BUG 1
| #define HAVE_STAT_EMPTY_STRING_BUG 1
| #define HAVE_DECL_STRERROR_R 1
| #define HAVE_STRERROR_R 1
| #define STRERROR_R_CHAR_P 1
| #define HAVE_STRFTIME 1
| #define HAVE_VPRINTF 1
| #define HAVE_ARC4RANDOM_BUF 1
| #define HAVE_CHOWN 1
| #define HAVE_CHROOT 1
| #define HAVE_CTIME_R 1
| #define HAVE_FCHDIR 1
| /* end confdefs.h.  */
| /* Define fchflags to an innocuous variant, in case <limits.h> declares fchflags.
|    For example, HP-UX 11i <limits.h> declares gettimeofday.  */
| #define fchflags innocuous_fchflags
| 
| /* System header to define __stub macros and hopefully few prototypes,
|    which can conflict with char fchflags (); below.  */
| 
| #include <limits.h>
| #undef fchflags
| 
| /* Override any GCC internal prototype to avoid an error.
|    Use char because int might match the return type of a GCC
|    builtin and then its argument prototype would still apply.  */
| #ifdef __cplusplus
| extern "C"
| #endif
| char fchflags ();
| /* The GNU C library defines this for functions which it implements
|     to always fail with ENOSYS.  Some functions are actually named
|     something starting with __ and the normal name is an alias.  */
| #if defined __stub_fchflags || defined __stub___fchflags
| choke me
| #endif
| 
| int
| main (void)
| {
| return fchflags ();
|   ;
|   return 0;
| }
configure:15865: result: no
configure:15871: checking for fchmod
configure:15871: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -o conftest -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2   conftest.c -lzstd -llz4 -lz  -L/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/lib -lxml2  >&5
configure:15871: $? = 0
configure:15871: result: yes
configure:15877: checking for fchown
configure:15877: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -o conftest -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2   conftest.c -lzstd -llz4 -lz  -L/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/lib -lxml2  >&5
configure:15877: $? = 0
configure:15877: result: yes
configure:15883: checking for fcntl
configure:15883: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -o conftest -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2   conftest.c -lzstd -llz4 -lz  -L/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/lib -lxml2  >&5
configure:15883: $? = 0
configure:15883: result: yes
configure:15889: checking for fdopendir
configure:15889: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -o conftest -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2   conftest.c -lzstd -llz4 -lz  -L/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/lib -lxml2  >&5
configure:15889: $? = 0
configure:15889: result: yes
configure:15895: checking for fnmatch
configure:15895: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -o conftest -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2   conftest.c -lzstd -llz4 -lz  -L/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/lib -lxml2  >&5
configure:15895: $? = 0
configure:15895: result: yes
configure:15901: checking for fork
configure:15901: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -o conftest -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2   conftest.c -lzstd -llz4 -lz  -L/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/lib -lxml2  >&5
conftest.c:168:6: warning: conflicting types for built-in function 'fork'; expected 'int(void)' [-Wbuiltin-declaration-mismatch]
  168 | char fork ();
      |      ^~~~
configure:15901: $? = 0
configure:15901: result: yes
configure:15908: checking for fstat
configure:15908: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -o conftest -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2   conftest.c -lzstd -llz4 -lz  -L/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/lib -lxml2  >&5
configure:15908: $? = 0
configure:15908: result: yes
configure:15914: checking for fstatat
configure:15914: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -o conftest -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2   conftest.c -lzstd -llz4 -lz  -L/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/lib -lxml2  >&5
configure:15914: $? = 0
configure:15914: result: yes
configure:15920: checking for fstatfs
configure:15920: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -o conftest -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2   conftest.c -lzstd -llz4 -lz  -L/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/lib -lxml2  >&5
configure:15920: $? = 0
configure:15920: result: yes
configure:15926: checking for fstatvfs
configure:15926: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -o conftest -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2   conftest.c -lzstd -llz4 -lz  -L/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/lib -lxml2  >&5
configure:15926: $? = 0
configure:15926: result: yes
configure:15932: checking for ftruncate
configure:15932: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -o conftest -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2   conftest.c -lzstd -llz4 -lz  -L/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/lib -lxml2  >&5
configure:15932: $? = 0
configure:15932: result: yes
configure:15939: checking for futimens
configure:15939: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -o conftest -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2   conftest.c -lzstd -llz4 -lz  -L/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/lib -lxml2  >&5
configure:15939: $? = 0
configure:15939: result: yes
configure:15945: checking for futimes
configure:15945: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -o conftest -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2   conftest.c -lzstd -llz4 -lz  -L/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/lib -lxml2  >&5
configure:15945: $? = 0
configure:15945: result: yes
configure:15951: checking for futimesat
configure:15951: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -o conftest -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2   conftest.c -lzstd -llz4 -lz  -L/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/lib -lxml2  >&5
configure:15951: $? = 0
configure:15951: result: yes
configure:15958: checking for geteuid
configure:15958: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -o conftest -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2   conftest.c -lzstd -llz4 -lz  -L/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/lib -lxml2  >&5
configure:15958: $? = 0
configure:15958: result: yes
configure:15964: checking for getline
configure:15964: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -o conftest -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2   conftest.c -lzstd -llz4 -lz  -L/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/lib -lxml2  >&5
configure:15964: $? = 0
configure:15964: result: yes
configure:15970: checking for getpid
configure:15970: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -o conftest -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2   conftest.c -lzstd -llz4 -lz  -L/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/lib -lxml2  >&5
configure:15970: $? = 0
configure:15970: result: yes
configure:15976: checking for getgrgid_r
configure:15976: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -o conftest -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2   conftest.c -lzstd -llz4 -lz  -L/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/lib -lxml2  >&5
configure:15976: $? = 0
configure:15976: result: yes
configure:15982: checking for getgrnam_r
configure:15982: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -o conftest -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2   conftest.c -lzstd -llz4 -lz  -L/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/lib -lxml2  >&5
configure:15982: $? = 0
configure:15982: result: yes
configure:15989: checking for getpwnam_r
configure:15989: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -o conftest -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2   conftest.c -lzstd -llz4 -lz  -L/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/lib -lxml2  >&5
configure:15989: $? = 0
configure:15989: result: yes
configure:15995: checking for getpwuid_r
configure:15995: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -o conftest -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2   conftest.c -lzstd -llz4 -lz  -L/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/lib -lxml2  >&5
configure:15995: $? = 0
configure:15995: result: yes
configure:16001: checking for getvfsbyname
configure:16001: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -o conftest -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2   conftest.c -lzstd -llz4 -lz  -L/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/lib -lxml2  >&5
/home/thomas/autobuild/instance-1/output-1/host/lib/gcc/nios2-buildroot-linux-gnu/13.2.0/../../../../nios2-buildroot-linux-gnu/bin/ld: /tmp/ccvkUYnF.o: in function `main':
conftest.c:(.text.startup.main+0x8): undefined reference to `getvfsbyname'
collect2: error: ld returned 1 exit status
configure:16001: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "libarchive"
| #define PACKAGE_TARNAME "libarchive"
| #define PACKAGE_VERSION "3.7.2"
| #define PACKAGE_STRING "libarchive 3.7.2"
| #define PACKAGE_BUGREPORT "libarchive-discuss@googlegroups.com"
| #define PACKAGE_URL ""
| #define PACKAGE "libarchive"
| #define VERSION "3.7.2"
| #define __LIBARCHIVE_CONFIG_H_INCLUDED 1
| #define LIBARCHIVE_VERSION_STRING "3.7.2"
| #define LIBARCHIVE_VERSION_NUMBER "3007002"
| #define BSDCPIO_VERSION_STRING "3.7.2"
| #define BSDTAR_VERSION_STRING "3.7.2"
| #define BSDCAT_VERSION_STRING "3.7.2"
| #define BSDUNZIP_VERSION_STRING "3.7.2"
| #define HAVE_STDIO_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_SYS_TIME_H 1
| #define STDC_HEADERS 1
| #define _ALL_SOURCE 1
| #define _DARWIN_C_SOURCE 1
| #define _GNU_SOURCE 1
| #define _HPUX_ALT_XOPEN_SOCKET_API 1
| #define _NETBSD_SOURCE 1
| #define _OPENBSD_SOURCE 1
| #define _POSIX_PTHREAD_SEMANTICS 1
| #define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1
| #define __STDC_WANT_IEC_60559_BFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_DFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1
| #define __STDC_WANT_IEC_60559_TYPES_EXT__ 1
| #define __STDC_WANT_LIB_EXT2__ 1
| #define __STDC_WANT_MATH_SPEC_FUNCS__ 1
| #define _TANDEM_SOURCE 1
| #define __EXTENSIONS__ 1
| #define HAVE_DLFCN_H 1
| #define LT_OBJDIR ".libs/"
| #define HAVE_DIRENT_H 1
| #define HAVE_SYS_WAIT_H 1
| #define HAVE_CTYPE_H 1
| #define HAVE_ERRNO_H 1
| #define HAVE_FCNTL_H 1
| #define HAVE_FNMATCH_H 1
| #define HAVE_GRP_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_LANGINFO_H 1
| #define HAVE_LIMITS_H 1
| #define HAVE_LINUX_FIEMAP_H 1
| #define HAVE_LINUX_FS_H 1
| #define HAVE_LINUX_MAGIC_H 1
| #define HAVE_LINUX_TYPES_H 1
| #define HAVE_WORKING_FS_IOC_GETFLAGS 1
| #define HAVE_LOCALE_H 1
| #define HAVE_PATHS_H 1
| #define HAVE_POLL_H 1
| #define HAVE_PTHREAD_H 1
| #define HAVE_PWD_H 1
| #define HAVE_SIGNAL_H 1
| #define HAVE_SPAWN_H 1
| #define HAVE_STDARG_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_SYS_CDEFS_H 1
| #define HAVE_SYS_IOCTL_H 1
| #define HAVE_SYS_MOUNT_H 1
| #define HAVE_SYS_QUEUE_H 1
| #define HAVE_SYS_PARAM_H 1
| #define HAVE_SYS_POLL_H 1
| #define HAVE_SYS_SELECT_H 1
| #define HAVE_SYS_STATFS_H 1
| #define HAVE_SYS_STATVFS_H 1
| #define HAVE_SYS_SYSMACROS_H 1
| #define HAVE_SYS_TIME_H 1
| #define HAVE_SYS_UTSNAME_H 1
| #define HAVE_SYS_VFS_H 1
| #define HAVE_SYS_XATTR_H 1
| #define HAVE_TIME_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_UTIME_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_WCTYPE_H 1
| #define HAVE_ZLIB_H 1
| #define HAVE_LIBZ 1
| #define HAVE_ICONV 1
| #define ICONV_CONST 
| #define HAVE_ICONV_H 1
| #define HAVE_LZ4_H 1
| #define HAVE_LZ4HC_H 1
| #define HAVE_LIBLZ4 1
| #define HAVE_ZSTD_H 1
| #define HAVE_LIBZSTD 1
| #define HAVE_LIBZSTD_COMPRESSOR 1
| #define HAVE_LIBXML_XMLREADER_H 1
| #define HAVE_LIBXML_XMLWRITER_H 1
| #define HAVE_REGEX_H 1
| #define HAVE_STRUCT_TM_TM_GMTOFF 1
| #define HAVE_STRUCT_STAT_ST_MTIM_TV_NSEC 1
| #define HAVE_STRUCT_STAT_ST_BLKSIZE 1
| #define HAVE_UINTMAX_T 1
| #define HAVE_UNSIGNED_LONG_LONG 1
| #define HAVE_UNSIGNED_LONG_LONG_INT 1
| #define HAVE_LONG_LONG_INT 1
| #define HAVE_INTMAX_T 1
| #define HAVE_UINTMAX_T 1
| #define HAVE_DECL_SIZE_MAX 1
| #define HAVE_DECL_INT32_MAX 1
| #define HAVE_DECL_INT32_MIN 1
| #define HAVE_DECL_INT64_MAX 1
| #define HAVE_DECL_INT64_MIN 1
| #define HAVE_DECL_UINT64_MAX 1
| #define HAVE_DECL_UINT32_MAX 1
| #define HAVE_DECL_INTMAX_MAX 1
| #define HAVE_DECL_INTMAX_MIN 1
| #define HAVE_DECL_UINTMAX_MAX 1
| #define HAVE_DECL_SSIZE_MAX 1
| #define HAVE_EILSEQ 1
| #define HAVE_WCHAR_T 1
| #define SIZEOF_WCHAR_T 4
| #define SIZEOF_INT 4
| #define SIZEOF_LONG 4
| #define MAJOR_IN_SYSMACROS 1
| #define HAVE_FSEEKO 1
| #define LSTAT_FOLLOWS_SLASHED_SYMLINK 1
| #define HAVE_LSTAT_EMPTY_STRING_BUG 1
| #define HAVE_STAT_EMPTY_STRING_BUG 1
| #define HAVE_DECL_STRERROR_R 1
| #define HAVE_STRERROR_R 1
| #define STRERROR_R_CHAR_P 1
| #define HAVE_STRFTIME 1
| #define HAVE_VPRINTF 1
| #define HAVE_ARC4RANDOM_BUF 1
| #define HAVE_CHOWN 1
| #define HAVE_CHROOT 1
| #define HAVE_CTIME_R 1
| #define HAVE_FCHDIR 1
| #define HAVE_FCHMOD 1
| #define HAVE_FCHOWN 1
| #define HAVE_FCNTL 1
| #define HAVE_FDOPENDIR 1
| #define HAVE_FNMATCH 1
| #define HAVE_FORK 1
| #define HAVE_FSTAT 1
| #define HAVE_FSTATAT 1
| #define HAVE_FSTATFS 1
| #define HAVE_FSTATVFS 1
| #define HAVE_FTRUNCATE 1
| #define HAVE_FUTIMENS 1
| #define HAVE_FUTIMES 1
| #define HAVE_FUTIMESAT 1
| #define HAVE_GETEUID 1
| #define HAVE_GETLINE 1
| #define HAVE_GETPID 1
| #define HAVE_GETGRGID_R 1
| #define HAVE_GETGRNAM_R 1
| #define HAVE_GETPWNAM_R 1
| #define HAVE_GETPWUID_R 1
| /* end confdefs.h.  */
| /* Define getvfsbyname to an innocuous variant, in case <limits.h> declares getvfsbyname.
|    For example, HP-UX 11i <limits.h> declares gettimeofday.  */
| #define getvfsbyname innocuous_getvfsbyname
| 
| /* System header to define __stub macros and hopefully few prototypes,
|    which can conflict with char getvfsbyname (); below.  */
| 
| #include <limits.h>
| #undef getvfsbyname
| 
| /* Override any GCC internal prototype to avoid an error.
|    Use char because int might match the return type of a GCC
|    builtin and then its argument prototype would still apply.  */
| #ifdef __cplusplus
| extern "C"
| #endif
| char getvfsbyname ();
| /* The GNU C library defines this for functions which it implements
|     to always fail with ENOSYS.  Some functions are actually named
|     something starting with __ and the normal name is an alias.  */
| #if defined __stub_getvfsbyname || defined __stub___getvfsbyname
| choke me
| #endif
| 
| int
| main (void)
| {
| return getvfsbyname ();
|   ;
|   return 0;
| }
configure:16001: result: no
configure:16007: checking for gmtime_r
configure:16007: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -o conftest -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2   conftest.c -lzstd -llz4 -lz  -L/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/lib -lxml2  >&5
configure:16007: $? = 0
configure:16007: result: yes
configure:16014: checking for lchflags
configure:16014: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -o conftest -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2   conftest.c -lzstd -llz4 -lz  -L/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/lib -lxml2  >&5
/home/thomas/autobuild/instance-1/output-1/host/lib/gcc/nios2-buildroot-linux-gnu/13.2.0/../../../../nios2-buildroot-linux-gnu/bin/ld: /tmp/cc7TN6mF.o: in function `main':
conftest.c:(.text.startup.main+0x8): undefined reference to `lchflags'
collect2: error: ld returned 1 exit status
configure:16014: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "libarchive"
| #define PACKAGE_TARNAME "libarchive"
| #define PACKAGE_VERSION "3.7.2"
| #define PACKAGE_STRING "libarchive 3.7.2"
| #define PACKAGE_BUGREPORT "libarchive-discuss@googlegroups.com"
| #define PACKAGE_URL ""
| #define PACKAGE "libarchive"
| #define VERSION "3.7.2"
| #define __LIBARCHIVE_CONFIG_H_INCLUDED 1
| #define LIBARCHIVE_VERSION_STRING "3.7.2"
| #define LIBARCHIVE_VERSION_NUMBER "3007002"
| #define BSDCPIO_VERSION_STRING "3.7.2"
| #define BSDTAR_VERSION_STRING "3.7.2"
| #define BSDCAT_VERSION_STRING "3.7.2"
| #define BSDUNZIP_VERSION_STRING "3.7.2"
| #define HAVE_STDIO_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_SYS_TIME_H 1
| #define STDC_HEADERS 1
| #define _ALL_SOURCE 1
| #define _DARWIN_C_SOURCE 1
| #define _GNU_SOURCE 1
| #define _HPUX_ALT_XOPEN_SOCKET_API 1
| #define _NETBSD_SOURCE 1
| #define _OPENBSD_SOURCE 1
| #define _POSIX_PTHREAD_SEMANTICS 1
| #define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1
| #define __STDC_WANT_IEC_60559_BFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_DFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1
| #define __STDC_WANT_IEC_60559_TYPES_EXT__ 1
| #define __STDC_WANT_LIB_EXT2__ 1
| #define __STDC_WANT_MATH_SPEC_FUNCS__ 1
| #define _TANDEM_SOURCE 1
| #define __EXTENSIONS__ 1
| #define HAVE_DLFCN_H 1
| #define LT_OBJDIR ".libs/"
| #define HAVE_DIRENT_H 1
| #define HAVE_SYS_WAIT_H 1
| #define HAVE_CTYPE_H 1
| #define HAVE_ERRNO_H 1
| #define HAVE_FCNTL_H 1
| #define HAVE_FNMATCH_H 1
| #define HAVE_GRP_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_LANGINFO_H 1
| #define HAVE_LIMITS_H 1
| #define HAVE_LINUX_FIEMAP_H 1
| #define HAVE_LINUX_FS_H 1
| #define HAVE_LINUX_MAGIC_H 1
| #define HAVE_LINUX_TYPES_H 1
| #define HAVE_WORKING_FS_IOC_GETFLAGS 1
| #define HAVE_LOCALE_H 1
| #define HAVE_PATHS_H 1
| #define HAVE_POLL_H 1
| #define HAVE_PTHREAD_H 1
| #define HAVE_PWD_H 1
| #define HAVE_SIGNAL_H 1
| #define HAVE_SPAWN_H 1
| #define HAVE_STDARG_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_SYS_CDEFS_H 1
| #define HAVE_SYS_IOCTL_H 1
| #define HAVE_SYS_MOUNT_H 1
| #define HAVE_SYS_QUEUE_H 1
| #define HAVE_SYS_PARAM_H 1
| #define HAVE_SYS_POLL_H 1
| #define HAVE_SYS_SELECT_H 1
| #define HAVE_SYS_STATFS_H 1
| #define HAVE_SYS_STATVFS_H 1
| #define HAVE_SYS_SYSMACROS_H 1
| #define HAVE_SYS_TIME_H 1
| #define HAVE_SYS_UTSNAME_H 1
| #define HAVE_SYS_VFS_H 1
| #define HAVE_SYS_XATTR_H 1
| #define HAVE_TIME_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_UTIME_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_WCTYPE_H 1
| #define HAVE_ZLIB_H 1
| #define HAVE_LIBZ 1
| #define HAVE_ICONV 1
| #define ICONV_CONST 
| #define HAVE_ICONV_H 1
| #define HAVE_LZ4_H 1
| #define HAVE_LZ4HC_H 1
| #define HAVE_LIBLZ4 1
| #define HAVE_ZSTD_H 1
| #define HAVE_LIBZSTD 1
| #define HAVE_LIBZSTD_COMPRESSOR 1
| #define HAVE_LIBXML_XMLREADER_H 1
| #define HAVE_LIBXML_XMLWRITER_H 1
| #define HAVE_REGEX_H 1
| #define HAVE_STRUCT_TM_TM_GMTOFF 1
| #define HAVE_STRUCT_STAT_ST_MTIM_TV_NSEC 1
| #define HAVE_STRUCT_STAT_ST_BLKSIZE 1
| #define HAVE_UINTMAX_T 1
| #define HAVE_UNSIGNED_LONG_LONG 1
| #define HAVE_UNSIGNED_LONG_LONG_INT 1
| #define HAVE_LONG_LONG_INT 1
| #define HAVE_INTMAX_T 1
| #define HAVE_UINTMAX_T 1
| #define HAVE_DECL_SIZE_MAX 1
| #define HAVE_DECL_INT32_MAX 1
| #define HAVE_DECL_INT32_MIN 1
| #define HAVE_DECL_INT64_MAX 1
| #define HAVE_DECL_INT64_MIN 1
| #define HAVE_DECL_UINT64_MAX 1
| #define HAVE_DECL_UINT32_MAX 1
| #define HAVE_DECL_INTMAX_MAX 1
| #define HAVE_DECL_INTMAX_MIN 1
| #define HAVE_DECL_UINTMAX_MAX 1
| #define HAVE_DECL_SSIZE_MAX 1
| #define HAVE_EILSEQ 1
| #define HAVE_WCHAR_T 1
| #define SIZEOF_WCHAR_T 4
| #define SIZEOF_INT 4
| #define SIZEOF_LONG 4
| #define MAJOR_IN_SYSMACROS 1
| #define HAVE_FSEEKO 1
| #define LSTAT_FOLLOWS_SLASHED_SYMLINK 1
| #define HAVE_LSTAT_EMPTY_STRING_BUG 1
| #define HAVE_STAT_EMPTY_STRING_BUG 1
| #define HAVE_DECL_STRERROR_R 1
| #define HAVE_STRERROR_R 1
| #define STRERROR_R_CHAR_P 1
| #define HAVE_STRFTIME 1
| #define HAVE_VPRINTF 1
| #define HAVE_ARC4RANDOM_BUF 1
| #define HAVE_CHOWN 1
| #define HAVE_CHROOT 1
| #define HAVE_CTIME_R 1
| #define HAVE_FCHDIR 1
| #define HAVE_FCHMOD 1
| #define HAVE_FCHOWN 1
| #define HAVE_FCNTL 1
| #define HAVE_FDOPENDIR 1
| #define HAVE_FNMATCH 1
| #define HAVE_FORK 1
| #define HAVE_FSTAT 1
| #define HAVE_FSTATAT 1
| #define HAVE_FSTATFS 1
| #define HAVE_FSTATVFS 1
| #define HAVE_FTRUNCATE 1
| #define HAVE_FUTIMENS 1
| #define HAVE_FUTIMES 1
| #define HAVE_FUTIMESAT 1
| #define HAVE_GETEUID 1
| #define HAVE_GETLINE 1
| #define HAVE_GETPID 1
| #define HAVE_GETGRGID_R 1
| #define HAVE_GETGRNAM_R 1
| #define HAVE_GETPWNAM_R 1
| #define HAVE_GETPWUID_R 1
| #define HAVE_GMTIME_R 1
| /* end confdefs.h.  */
| /* Define lchflags to an innocuous variant, in case <limits.h> declares lchflags.
|    For example, HP-UX 11i <limits.h> declares gettimeofday.  */
| #define lchflags innocuous_lchflags
| 
| /* System header to define __stub macros and hopefully few prototypes,
|    which can conflict with char lchflags (); below.  */
| 
| #include <limits.h>
| #undef lchflags
| 
| /* Override any GCC internal prototype to avoid an error.
|    Use char because int might match the return type of a GCC
|    builtin and then its argument prototype would still apply.  */
| #ifdef __cplusplus
| extern "C"
| #endif
| char lchflags ();
| /* The GNU C library defines this for functions which it implements
|     to always fail with ENOSYS.  Some functions are actually named
|     something starting with __ and the normal name is an alias.  */
| #if defined __stub_lchflags || defined __stub___lchflags
| choke me
| #endif
| 
| int
| main (void)
| {
| return lchflags ();
|   ;
|   return 0;
| }
configure:16014: result: no
configure:16020: checking for lchmod
configure:16020: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -o conftest -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2   conftest.c -lzstd -llz4 -lz  -L/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/lib -lxml2  >&5
configure:16020: $? = 0
configure:16020: result: yes
configure:16026: checking for lchown
configure:16026: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -o conftest -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2   conftest.c -lzstd -llz4 -lz  -L/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/lib -lxml2  >&5
configure:16026: $? = 0
configure:16026: result: yes
configure:16032: checking for link
configure:16032: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -o conftest -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2   conftest.c -lzstd -llz4 -lz  -L/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/lib -lxml2  >&5
configure:16032: $? = 0
configure:16032: result: yes
configure:16038: checking for linkat
configure:16038: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -o conftest -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2   conftest.c -lzstd -llz4 -lz  -L/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/lib -lxml2  >&5
configure:16038: $? = 0
configure:16038: result: yes
configure:16044: checking for localtime_r
configure:16044: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -o conftest -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2   conftest.c -lzstd -llz4 -lz  -L/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/lib -lxml2  >&5
configure:16044: $? = 0
configure:16044: result: yes
configure:16050: checking for lstat
configure:16050: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -o conftest -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2   conftest.c -lzstd -llz4 -lz  -L/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/lib -lxml2  >&5
configure:16050: $? = 0
configure:16050: result: yes
configure:16056: checking for lutimes
configure:16056: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -o conftest -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2   conftest.c -lzstd -llz4 -lz  -L/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/lib -lxml2  >&5
configure:16056: $? = 0
configure:16056: result: yes
configure:16063: checking for mbrtowc
configure:16063: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -o conftest -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2   conftest.c -lzstd -llz4 -lz  -L/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/lib -lxml2  >&5
configure:16063: $? = 0
configure:16063: result: yes
configure:16069: checking for memmove
configure:16069: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -o conftest -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2   conftest.c -lzstd -llz4 -lz  -L/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/lib -lxml2  >&5
conftest.c:193:6: warning: conflicting types for built-in function 'memmove'; expected 'void *(void *, const void *, unsigned int)' [-Wbuiltin-declaration-mismatch]
  193 | char memmove ();
      |      ^~~~~~~
conftest.c:185:1: note: 'memmove' is declared in header '<string.h>'
  184 | #include <limits.h>
  185 | #undef memmove
configure:16069: $? = 0
configure:16069: result: yes
configure:16075: checking for memset
configure:16075: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -o conftest -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2   conftest.c -lzstd -llz4 -lz  -L/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/lib -lxml2  >&5
conftest.c:194:6: warning: conflicting types for built-in function 'memset'; expected 'void *(void *, int,  unsigned int)' [-Wbuiltin-declaration-mismatch]
  194 | char memset ();
      |      ^~~~~~
conftest.c:186:1: note: 'memset' is declared in header '<string.h>'
  185 | #include <limits.h>
  186 | #undef memset
configure:16075: $? = 0
configure:16075: result: yes
configure:16082: checking for mkdir
configure:16082: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -o conftest -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2   conftest.c -lzstd -llz4 -lz  -L/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/lib -lxml2  >&5
configure:16082: $? = 0
configure:16082: result: yes
configure:16088: checking for mkfifo
configure:16088: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -o conftest -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2   conftest.c -lzstd -llz4 -lz  -L/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/lib -lxml2  >&5
configure:16088: $? = 0
configure:16088: result: yes
configure:16094: checking for mknod
configure:16094: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -o conftest -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2   conftest.c -lzstd -llz4 -lz  -L/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/lib -lxml2  >&5
configure:16094: $? = 0
configure:16094: result: yes
configure:16100: checking for mkstemp
configure:16100: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -o conftest -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2   conftest.c -lzstd -llz4 -lz  -L/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/lib -lxml2  >&5
configure:16100: $? = 0
configure:16100: result: yes
configure:16107: checking for nl_langinfo
configure:16107: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -o conftest -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2   conftest.c -lzstd -llz4 -lz  -L/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/lib -lxml2  >&5
configure:16107: $? = 0
configure:16107: result: yes
configure:16113: checking for openat
configure:16113: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -o conftest -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2   conftest.c -lzstd -llz4 -lz  -L/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/lib -lxml2  >&5
configure:16113: $? = 0
configure:16113: result: yes
configure:16119: checking for pipe
configure:16119: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -o conftest -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2   conftest.c -lzstd -llz4 -lz  -L/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/lib -lxml2  >&5
configure:16119: $? = 0
configure:16119: result: yes
configure:16125: checking for poll
configure:16125: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -o conftest -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2   conftest.c -lzstd -llz4 -lz  -L/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/lib -lxml2  >&5
configure:16125: $? = 0
configure:16125: result: yes
configure:16131: checking for posix_spawnp
configure:16131: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -o conftest -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2   conftest.c -lzstd -llz4 -lz  -L/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/lib -lxml2  >&5
configure:16131: $? = 0
configure:16131: result: yes
configure:16137: checking for readlink
configure:16137: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -o conftest -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2   conftest.c -lzstd -llz4 -lz  -L/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/lib -lxml2  >&5
configure:16137: $? = 0
configure:16137: result: yes
configure:16143: checking for readlinkat
configure:16143: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -o conftest -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2   conftest.c -lzstd -llz4 -lz  -L/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/lib -lxml2  >&5
configure:16143: $? = 0
configure:16143: result: yes
configure:16150: checking for readpassphrase
configure:16150: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -o conftest -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2   conftest.c -lzstd -llz4 -lz  -L/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/lib -lxml2  >&5
/home/thomas/autobuild/instance-1/output-1/host/lib/gcc/nios2-buildroot-linux-gnu/13.2.0/../../../../nios2-buildroot-linux-gnu/bin/ld: /tmp/ccIioe0S.o: in function `main':
conftest.c:(.text.startup.main+0x8): undefined reference to `readpassphrase'
collect2: error: ld returned 1 exit status
configure:16150: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "libarchive"
| #define PACKAGE_TARNAME "libarchive"
| #define PACKAGE_VERSION "3.7.2"
| #define PACKAGE_STRING "libarchive 3.7.2"
| #define PACKAGE_BUGREPORT "libarchive-discuss@googlegroups.com"
| #define PACKAGE_URL ""
| #define PACKAGE "libarchive"
| #define VERSION "3.7.2"
| #define __LIBARCHIVE_CONFIG_H_INCLUDED 1
| #define LIBARCHIVE_VERSION_STRING "3.7.2"
| #define LIBARCHIVE_VERSION_NUMBER "3007002"
| #define BSDCPIO_VERSION_STRING "3.7.2"
| #define BSDTAR_VERSION_STRING "3.7.2"
| #define BSDCAT_VERSION_STRING "3.7.2"
| #define BSDUNZIP_VERSION_STRING "3.7.2"
| #define HAVE_STDIO_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_SYS_TIME_H 1
| #define STDC_HEADERS 1
| #define _ALL_SOURCE 1
| #define _DARWIN_C_SOURCE 1
| #define _GNU_SOURCE 1
| #define _HPUX_ALT_XOPEN_SOCKET_API 1
| #define _NETBSD_SOURCE 1
| #define _OPENBSD_SOURCE 1
| #define _POSIX_PTHREAD_SEMANTICS 1
| #define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1
| #define __STDC_WANT_IEC_60559_BFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_DFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1
| #define __STDC_WANT_IEC_60559_TYPES_EXT__ 1
| #define __STDC_WANT_LIB_EXT2__ 1
| #define __STDC_WANT_MATH_SPEC_FUNCS__ 1
| #define _TANDEM_SOURCE 1
| #define __EXTENSIONS__ 1
| #define HAVE_DLFCN_H 1
| #define LT_OBJDIR ".libs/"
| #define HAVE_DIRENT_H 1
| #define HAVE_SYS_WAIT_H 1
| #define HAVE_CTYPE_H 1
| #define HAVE_ERRNO_H 1
| #define HAVE_FCNTL_H 1
| #define HAVE_FNMATCH_H 1
| #define HAVE_GRP_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_LANGINFO_H 1
| #define HAVE_LIMITS_H 1
| #define HAVE_LINUX_FIEMAP_H 1
| #define HAVE_LINUX_FS_H 1
| #define HAVE_LINUX_MAGIC_H 1
| #define HAVE_LINUX_TYPES_H 1
| #define HAVE_WORKING_FS_IOC_GETFLAGS 1
| #define HAVE_LOCALE_H 1
| #define HAVE_PATHS_H 1
| #define HAVE_POLL_H 1
| #define HAVE_PTHREAD_H 1
| #define HAVE_PWD_H 1
| #define HAVE_SIGNAL_H 1
| #define HAVE_SPAWN_H 1
| #define HAVE_STDARG_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_SYS_CDEFS_H 1
| #define HAVE_SYS_IOCTL_H 1
| #define HAVE_SYS_MOUNT_H 1
| #define HAVE_SYS_QUEUE_H 1
| #define HAVE_SYS_PARAM_H 1
| #define HAVE_SYS_POLL_H 1
| #define HAVE_SYS_SELECT_H 1
| #define HAVE_SYS_STATFS_H 1
| #define HAVE_SYS_STATVFS_H 1
| #define HAVE_SYS_SYSMACROS_H 1
| #define HAVE_SYS_TIME_H 1
| #define HAVE_SYS_UTSNAME_H 1
| #define HAVE_SYS_VFS_H 1
| #define HAVE_SYS_XATTR_H 1
| #define HAVE_TIME_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_UTIME_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_WCTYPE_H 1
| #define HAVE_ZLIB_H 1
| #define HAVE_LIBZ 1
| #define HAVE_ICONV 1
| #define ICONV_CONST 
| #define HAVE_ICONV_H 1
| #define HAVE_LZ4_H 1
| #define HAVE_LZ4HC_H 1
| #define HAVE_LIBLZ4 1
| #define HAVE_ZSTD_H 1
| #define HAVE_LIBZSTD 1
| #define HAVE_LIBZSTD_COMPRESSOR 1
| #define HAVE_LIBXML_XMLREADER_H 1
| #define HAVE_LIBXML_XMLWRITER_H 1
| #define HAVE_REGEX_H 1
| #define HAVE_STRUCT_TM_TM_GMTOFF 1
| #define HAVE_STRUCT_STAT_ST_MTIM_TV_NSEC 1
| #define HAVE_STRUCT_STAT_ST_BLKSIZE 1
| #define HAVE_UINTMAX_T 1
| #define HAVE_UNSIGNED_LONG_LONG 1
| #define HAVE_UNSIGNED_LONG_LONG_INT 1
| #define HAVE_LONG_LONG_INT 1
| #define HAVE_INTMAX_T 1
| #define HAVE_UINTMAX_T 1
| #define HAVE_DECL_SIZE_MAX 1
| #define HAVE_DECL_INT32_MAX 1
| #define HAVE_DECL_INT32_MIN 1
| #define HAVE_DECL_INT64_MAX 1
| #define HAVE_DECL_INT64_MIN 1
| #define HAVE_DECL_UINT64_MAX 1
| #define HAVE_DECL_UINT32_MAX 1
| #define HAVE_DECL_INTMAX_MAX 1
| #define HAVE_DECL_INTMAX_MIN 1
| #define HAVE_DECL_UINTMAX_MAX 1
| #define HAVE_DECL_SSIZE_MAX 1
| #define HAVE_EILSEQ 1
| #define HAVE_WCHAR_T 1
| #define SIZEOF_WCHAR_T 4
| #define SIZEOF_INT 4
| #define SIZEOF_LONG 4
| #define MAJOR_IN_SYSMACROS 1
| #define HAVE_FSEEKO 1
| #define LSTAT_FOLLOWS_SLASHED_SYMLINK 1
| #define HAVE_LSTAT_EMPTY_STRING_BUG 1
| #define HAVE_STAT_EMPTY_STRING_BUG 1
| #define HAVE_DECL_STRERROR_R 1
| #define HAVE_STRERROR_R 1
| #define STRERROR_R_CHAR_P 1
| #define HAVE_STRFTIME 1
| #define HAVE_VPRINTF 1
| #define HAVE_ARC4RANDOM_BUF 1
| #define HAVE_CHOWN 1
| #define HAVE_CHROOT 1
| #define HAVE_CTIME_R 1
| #define HAVE_FCHDIR 1
| #define HAVE_FCHMOD 1
| #define HAVE_FCHOWN 1
| #define HAVE_FCNTL 1
| #define HAVE_FDOPENDIR 1
| #define HAVE_FNMATCH 1
| #define HAVE_FORK 1
| #define HAVE_FSTAT 1
| #define HAVE_FSTATAT 1
| #define HAVE_FSTATFS 1
| #define HAVE_FSTATVFS 1
| #define HAVE_FTRUNCATE 1
| #define HAVE_FUTIMENS 1
| #define HAVE_FUTIMES 1
| #define HAVE_FUTIMESAT 1
| #define HAVE_GETEUID 1
| #define HAVE_GETLINE 1
| #define HAVE_GETPID 1
| #define HAVE_GETGRGID_R 1
| #define HAVE_GETGRNAM_R 1
| #define HAVE_GETPWNAM_R 1
| #define HAVE_GETPWUID_R 1
| #define HAVE_GMTIME_R 1
| #define HAVE_LCHMOD 1
| #define HAVE_LCHOWN 1
| #define HAVE_LINK 1
| #define HAVE_LINKAT 1
| #define HAVE_LOCALTIME_R 1
| #define HAVE_LSTAT 1
| #define HAVE_LUTIMES 1
| #define HAVE_MBRTOWC 1
| #define HAVE_MEMMOVE 1
| #define HAVE_MEMSET 1
| #define HAVE_MKDIR 1
| #define HAVE_MKFIFO 1
| #define HAVE_MKNOD 1
| #define HAVE_MKSTEMP 1
| #define HAVE_NL_LANGINFO 1
| #define HAVE_OPENAT 1
| #define HAVE_PIPE 1
| #define HAVE_POLL 1
| #define HAVE_POSIX_SPAWNP 1
| #define HAVE_READLINK 1
| #define HAVE_READLINKAT 1
| /* end confdefs.h.  */
| /* Define readpassphrase to an innocuous variant, in case <limits.h> declares readpassphrase.
|    For example, HP-UX 11i <limits.h> declares gettimeofday.  */
| #define readpassphrase innocuous_readpassphrase
| 
| /* System header to define __stub macros and hopefully few prototypes,
|    which can conflict with char readpassphrase (); below.  */
| 
| #include <limits.h>
| #undef readpassphrase
| 
| /* Override any GCC internal prototype to avoid an error.
|    Use char because int might match the return type of a GCC
|    builtin and then its argument prototype would still apply.  */
| #ifdef __cplusplus
| extern "C"
| #endif
| char readpassphrase ();
| /* The GNU C library defines this for functions which it implements
|     to always fail with ENOSYS.  Some functions are actually named
|     something starting with __ and the normal name is an alias.  */
| #if defined __stub_readpassphrase || defined __stub___readpassphrase
| choke me
| #endif
| 
| int
| main (void)
| {
| return readpassphrase ();
|   ;
|   return 0;
| }
configure:16150: result: no
configure:16157: checking for select
configure:16157: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -o conftest -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2   conftest.c -lzstd -llz4 -lz  -L/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/lib -lxml2  >&5
configure:16157: $? = 0
configure:16157: result: yes
configure:16163: checking for setenv
configure:16163: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -o conftest -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2   conftest.c -lzstd -llz4 -lz  -L/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/lib -lxml2  >&5
configure:16163: $? = 0
configure:16163: result: yes
configure:16169: checking for setlocale
configure:16169: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -o conftest -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2   conftest.c -lzstd -llz4 -lz  -L/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/lib -lxml2  >&5
configure:16169: $? = 0
configure:16169: result: yes
configure:16175: checking for sigaction
configure:16175: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -o conftest -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2   conftest.c -lzstd -llz4 -lz  -L/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/lib -lxml2  >&5
configure:16175: $? = 0
configure:16175: result: yes
configure:16181: checking for statfs
configure:16181: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -o conftest -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2   conftest.c -lzstd -llz4 -lz  -L/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/lib -lxml2  >&5
configure:16181: $? = 0
configure:16181: result: yes
configure:16187: checking for statvfs
configure:16187: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -o conftest -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2   conftest.c -lzstd -llz4 -lz  -L/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/lib -lxml2  >&5
configure:16187: $? = 0
configure:16187: result: yes
configure:16194: checking for strchr
configure:16194: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -o conftest -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2   conftest.c -lzstd -llz4 -lz  -L/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/lib -lxml2  >&5
conftest.c:212:6: warning: conflicting types for built-in function 'strchr'; expected 'char *(const char *, int)' [-Wbuiltin-declaration-mismatch]
  212 | char strchr ();
      |      ^~~~~~
conftest.c:204:1: note: 'strchr' is declared in header '<string.h>'
  203 | #include <limits.h>
  204 | #undef strchr
configure:16194: $? = 0
configure:16194: result: yes
configure:16200: checking for strdup
configure:16200: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -o conftest -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2   conftest.c -lzstd -llz4 -lz  -L/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/lib -lxml2  >&5
conftest.c:213:6: warning: conflicting types for built-in function 'strdup'; expected 'char *(const char *)' [-Wbuiltin-declaration-mismatch]
  213 | char strdup ();
      |      ^~~~~~
configure:16200: $? = 0
configure:16200: result: yes
configure:16206: checking for strerror
configure:16206: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -o conftest -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2   conftest.c -lzstd -llz4 -lz  -L/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/lib -lxml2  >&5
configure:16206: $? = 0
configure:16206: result: yes
configure:16212: checking for strncpy_s
configure:16212: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -o conftest -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2   conftest.c -lzstd -llz4 -lz  -L/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/lib -lxml2  >&5
/home/thomas/autobuild/instance-1/output-1/host/lib/gcc/nios2-buildroot-linux-gnu/13.2.0/../../../../nios2-buildroot-linux-gnu/bin/ld: /tmp/cc236ktV.o: in function `main':
conftest.c:(.text.startup.main+0x8): undefined reference to `strncpy_s'
collect2: error: ld returned 1 exit status
configure:16212: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "libarchive"
| #define PACKAGE_TARNAME "libarchive"
| #define PACKAGE_VERSION "3.7.2"
| #define PACKAGE_STRING "libarchive 3.7.2"
| #define PACKAGE_BUGREPORT "libarchive-discuss@googlegroups.com"
| #define PACKAGE_URL ""
| #define PACKAGE "libarchive"
| #define VERSION "3.7.2"
| #define __LIBARCHIVE_CONFIG_H_INCLUDED 1
| #define LIBARCHIVE_VERSION_STRING "3.7.2"
| #define LIBARCHIVE_VERSION_NUMBER "3007002"
| #define BSDCPIO_VERSION_STRING "3.7.2"
| #define BSDTAR_VERSION_STRING "3.7.2"
| #define BSDCAT_VERSION_STRING "3.7.2"
| #define BSDUNZIP_VERSION_STRING "3.7.2"
| #define HAVE_STDIO_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_SYS_TIME_H 1
| #define STDC_HEADERS 1
| #define _ALL_SOURCE 1
| #define _DARWIN_C_SOURCE 1
| #define _GNU_SOURCE 1
| #define _HPUX_ALT_XOPEN_SOCKET_API 1
| #define _NETBSD_SOURCE 1
| #define _OPENBSD_SOURCE 1
| #define _POSIX_PTHREAD_SEMANTICS 1
| #define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1
| #define __STDC_WANT_IEC_60559_BFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_DFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1
| #define __STDC_WANT_IEC_60559_TYPES_EXT__ 1
| #define __STDC_WANT_LIB_EXT2__ 1
| #define __STDC_WANT_MATH_SPEC_FUNCS__ 1
| #define _TANDEM_SOURCE 1
| #define __EXTENSIONS__ 1
| #define HAVE_DLFCN_H 1
| #define LT_OBJDIR ".libs/"
| #define HAVE_DIRENT_H 1
| #define HAVE_SYS_WAIT_H 1
| #define HAVE_CTYPE_H 1
| #define HAVE_ERRNO_H 1
| #define HAVE_FCNTL_H 1
| #define HAVE_FNMATCH_H 1
| #define HAVE_GRP_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_LANGINFO_H 1
| #define HAVE_LIMITS_H 1
| #define HAVE_LINUX_FIEMAP_H 1
| #define HAVE_LINUX_FS_H 1
| #define HAVE_LINUX_MAGIC_H 1
| #define HAVE_LINUX_TYPES_H 1
| #define HAVE_WORKING_FS_IOC_GETFLAGS 1
| #define HAVE_LOCALE_H 1
| #define HAVE_PATHS_H 1
| #define HAVE_POLL_H 1
| #define HAVE_PTHREAD_H 1
| #define HAVE_PWD_H 1
| #define HAVE_SIGNAL_H 1
| #define HAVE_SPAWN_H 1
| #define HAVE_STDARG_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_SYS_CDEFS_H 1
| #define HAVE_SYS_IOCTL_H 1
| #define HAVE_SYS_MOUNT_H 1
| #define HAVE_SYS_QUEUE_H 1
| #define HAVE_SYS_PARAM_H 1
| #define HAVE_SYS_POLL_H 1
| #define HAVE_SYS_SELECT_H 1
| #define HAVE_SYS_STATFS_H 1
| #define HAVE_SYS_STATVFS_H 1
| #define HAVE_SYS_SYSMACROS_H 1
| #define HAVE_SYS_TIME_H 1
| #define HAVE_SYS_UTSNAME_H 1
| #define HAVE_SYS_VFS_H 1
| #define HAVE_SYS_XATTR_H 1
| #define HAVE_TIME_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_UTIME_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_WCTYPE_H 1
| #define HAVE_ZLIB_H 1
| #define HAVE_LIBZ 1
| #define HAVE_ICONV 1
| #define ICONV_CONST 
| #define HAVE_ICONV_H 1
| #define HAVE_LZ4_H 1
| #define HAVE_LZ4HC_H 1
| #define HAVE_LIBLZ4 1
| #define HAVE_ZSTD_H 1
| #define HAVE_LIBZSTD 1
| #define HAVE_LIBZSTD_COMPRESSOR 1
| #define HAVE_LIBXML_XMLREADER_H 1
| #define HAVE_LIBXML_XMLWRITER_H 1
| #define HAVE_REGEX_H 1
| #define HAVE_STRUCT_TM_TM_GMTOFF 1
| #define HAVE_STRUCT_STAT_ST_MTIM_TV_NSEC 1
| #define HAVE_STRUCT_STAT_ST_BLKSIZE 1
| #define HAVE_UINTMAX_T 1
| #define HAVE_UNSIGNED_LONG_LONG 1
| #define HAVE_UNSIGNED_LONG_LONG_INT 1
| #define HAVE_LONG_LONG_INT 1
| #define HAVE_INTMAX_T 1
| #define HAVE_UINTMAX_T 1
| #define HAVE_DECL_SIZE_MAX 1
| #define HAVE_DECL_INT32_MAX 1
| #define HAVE_DECL_INT32_MIN 1
| #define HAVE_DECL_INT64_MAX 1
| #define HAVE_DECL_INT64_MIN 1
| #define HAVE_DECL_UINT64_MAX 1
| #define HAVE_DECL_UINT32_MAX 1
| #define HAVE_DECL_INTMAX_MAX 1
| #define HAVE_DECL_INTMAX_MIN 1
| #define HAVE_DECL_UINTMAX_MAX 1
| #define HAVE_DECL_SSIZE_MAX 1
| #define HAVE_EILSEQ 1
| #define HAVE_WCHAR_T 1
| #define SIZEOF_WCHAR_T 4
| #define SIZEOF_INT 4
| #define SIZEOF_LONG 4
| #define MAJOR_IN_SYSMACROS 1
| #define HAVE_FSEEKO 1
| #define LSTAT_FOLLOWS_SLASHED_SYMLINK 1
| #define HAVE_LSTAT_EMPTY_STRING_BUG 1
| #define HAVE_STAT_EMPTY_STRING_BUG 1
| #define HAVE_DECL_STRERROR_R 1
| #define HAVE_STRERROR_R 1
| #define STRERROR_R_CHAR_P 1
| #define HAVE_STRFTIME 1
| #define HAVE_VPRINTF 1
| #define HAVE_ARC4RANDOM_BUF 1
| #define HAVE_CHOWN 1
| #define HAVE_CHROOT 1
| #define HAVE_CTIME_R 1
| #define HAVE_FCHDIR 1
| #define HAVE_FCHMOD 1
| #define HAVE_FCHOWN 1
| #define HAVE_FCNTL 1
| #define HAVE_FDOPENDIR 1
| #define HAVE_FNMATCH 1
| #define HAVE_FORK 1
| #define HAVE_FSTAT 1
| #define HAVE_FSTATAT 1
| #define HAVE_FSTATFS 1
| #define HAVE_FSTATVFS 1
| #define HAVE_FTRUNCATE 1
| #define HAVE_FUTIMENS 1
| #define HAVE_FUTIMES 1
| #define HAVE_FUTIMESAT 1
| #define HAVE_GETEUID 1
| #define HAVE_GETLINE 1
| #define HAVE_GETPID 1
| #define HAVE_GETGRGID_R 1
| #define HAVE_GETGRNAM_R 1
| #define HAVE_GETPWNAM_R 1
| #define HAVE_GETPWUID_R 1
| #define HAVE_GMTIME_R 1
| #define HAVE_LCHMOD 1
| #define HAVE_LCHOWN 1
| #define HAVE_LINK 1
| #define HAVE_LINKAT 1
| #define HAVE_LOCALTIME_R 1
| #define HAVE_LSTAT 1
| #define HAVE_LUTIMES 1
| #define HAVE_MBRTOWC 1
| #define HAVE_MEMMOVE 1
| #define HAVE_MEMSET 1
| #define HAVE_MKDIR 1
| #define HAVE_MKFIFO 1
| #define HAVE_MKNOD 1
| #define HAVE_MKSTEMP 1
| #define HAVE_NL_LANGINFO 1
| #define HAVE_OPENAT 1
| #define HAVE_PIPE 1
| #define HAVE_POLL 1
| #define HAVE_POSIX_SPAWNP 1
| #define HAVE_READLINK 1
| #define HAVE_READLINKAT 1
| #define HAVE_SELECT 1
| #define HAVE_SETENV 1
| #define HAVE_SETLOCALE 1
| #define HAVE_SIGACTION 1
| #define HAVE_STATFS 1
| #define HAVE_STATVFS 1
| #define HAVE_STRCHR 1
| #define HAVE_STRDUP 1
| #define HAVE_STRERROR 1
| /* end confdefs.h.  */
| /* Define strncpy_s to an innocuous variant, in case <limits.h> declares strncpy_s.
|    For example, HP-UX 11i <limits.h> declares gettimeofday.  */
| #define strncpy_s innocuous_strncpy_s
| 
| /* System header to define __stub macros and hopefully few prototypes,
|    which can conflict with char strncpy_s (); below.  */
| 
| #include <limits.h>
| #undef strncpy_s
| 
| /* Override any GCC internal prototype to avoid an error.
|    Use char because int might match the return type of a GCC
|    builtin and then its argument prototype would still apply.  */
| #ifdef __cplusplus
| extern "C"
| #endif
| char strncpy_s ();
| /* The GNU C library defines this for functions which it implements
|     to always fail with ENOSYS.  Some functions are actually named
|     something starting with __ and the normal name is an alias.  */
| #if defined __stub_strncpy_s || defined __stub___strncpy_s
| choke me
| #endif
| 
| int
| main (void)
| {
| return strncpy_s ();
|   ;
|   return 0;
| }
configure:16212: result: no
configure:16218: checking for strnlen
configure:16218: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -o conftest -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2   conftest.c -lzstd -llz4 -lz  -L/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/lib -lxml2  >&5
conftest.c:215:6: warning: conflicting types for built-in function 'strnlen'; expected 'unsigned int(const char *, unsigned int)' [-Wbuiltin-declaration-mismatch]
  215 | char strnlen ();
      |      ^~~~~~~
configure:16218: $? = 0
configure:16218: result: yes
configure:16224: checking for strrchr
configure:16224: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -o conftest -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2   conftest.c -lzstd -llz4 -lz  -L/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/lib -lxml2  >&5
conftest.c:216:6: warning: conflicting types for built-in function 'strrchr'; expected 'char *(const char *, int)' [-Wbuiltin-declaration-mismatch]
  216 | char strrchr ();
      |      ^~~~~~~
conftest.c:208:1: note: 'strrchr' is declared in header '<string.h>'
  207 | #include <limits.h>
  208 | #undef strrchr
configure:16224: $? = 0
configure:16224: result: yes
configure:16230: checking for symlink
configure:16230: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -o conftest -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2   conftest.c -lzstd -llz4 -lz  -L/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/lib -lxml2  >&5
configure:16230: $? = 0
configure:16230: result: yes
configure:16237: checking for timegm
configure:16237: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -o conftest -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2   conftest.c -lzstd -llz4 -lz  -L/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/lib -lxml2  >&5
configure:16237: $? = 0
configure:16237: result: yes
configure:16243: checking for tzset
configure:16243: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -o conftest -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2   conftest.c -lzstd -llz4 -lz  -L/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/lib -lxml2  >&5
configure:16243: $? = 0
configure:16243: result: yes
configure:16249: checking for unlinkat
configure:16249: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -o conftest -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2   conftest.c -lzstd -llz4 -lz  -L/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/lib -lxml2  >&5
configure:16249: $? = 0
configure:16249: result: yes
configure:16255: checking for unsetenv
configure:16255: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -o conftest -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2   conftest.c -lzstd -llz4 -lz  -L/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/lib -lxml2  >&5
configure:16255: $? = 0
configure:16255: result: yes
configure:16261: checking for utime
configure:16261: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -o conftest -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2   conftest.c -lzstd -llz4 -lz  -L/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/lib -lxml2  >&5
configure:16261: $? = 0
configure:16261: result: yes
configure:16267: checking for utimensat
configure:16267: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -o conftest -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2   conftest.c -lzstd -llz4 -lz  -L/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/lib -lxml2  >&5
configure:16267: $? = 0
configure:16267: result: yes
configure:16273: checking for utimes
configure:16273: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -o conftest -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2   conftest.c -lzstd -llz4 -lz  -L/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/lib -lxml2  >&5
configure:16273: $? = 0
configure:16273: result: yes
configure:16279: checking for vfork
configure:16279: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -o conftest -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2   conftest.c -lzstd -llz4 -lz  -L/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/lib -lxml2  >&5
configure:16279: $? = 0
configure:16279: result: yes
configure:16286: checking for wcrtomb
configure:16286: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -o conftest -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2   conftest.c -lzstd -llz4 -lz  -L/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/lib -lxml2  >&5
configure:16286: $? = 0
configure:16286: result: yes
configure:16292: checking for wcscmp
configure:16292: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -o conftest -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2   conftest.c -lzstd -llz4 -lz  -L/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/lib -lxml2  >&5
configure:16292: $? = 0
configure:16292: result: yes
configure:16298: checking for wcscpy
configure:16298: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -o conftest -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2   conftest.c -lzstd -llz4 -lz  -L/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/lib -lxml2  >&5
configure:16298: $? = 0
configure:16298: result: yes
configure:16304: checking for wcslen
configure:16304: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -o conftest -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2   conftest.c -lzstd -llz4 -lz  -L/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/lib -lxml2  >&5
configure:16304: $? = 0
configure:16304: result: yes
configure:16310: checking for wctomb
configure:16310: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -o conftest -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2   conftest.c -lzstd -llz4 -lz  -L/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/lib -lxml2  >&5
configure:16310: $? = 0
configure:16310: result: yes
configure:16316: checking for wmemcmp
configure:16316: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -o conftest -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2   conftest.c -lzstd -llz4 -lz  -L/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/lib -lxml2  >&5
configure:16316: $? = 0
configure:16316: result: yes
configure:16322: checking for wmemcpy
configure:16322: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -o conftest -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2   conftest.c -lzstd -llz4 -lz  -L/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/lib -lxml2  >&5
configure:16322: $? = 0
configure:16322: result: yes
configure:16328: checking for wmemmove
configure:16328: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -o conftest -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2   conftest.c -lzstd -llz4 -lz  -L/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/lib -lxml2  >&5
configure:16328: $? = 0
configure:16328: result: yes
configure:16335: checking for _fseeki64
configure:16335: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -o conftest -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2   conftest.c -lzstd -llz4 -lz  -L/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/lib -lxml2  >&5
/home/thomas/autobuild/instance-1/output-1/host/lib/gcc/nios2-buildroot-linux-gnu/13.2.0/../../../../nios2-buildroot-linux-gnu/bin/ld: /tmp/ccbbP3Sd.o: in function `main':
conftest.c:(.text.startup.main+0x8): undefined reference to `_fseeki64'
collect2: error: ld returned 1 exit status
configure:16335: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "libarchive"
| #define PACKAGE_TARNAME "libarchive"
| #define PACKAGE_VERSION "3.7.2"
| #define PACKAGE_STRING "libarchive 3.7.2"
| #define PACKAGE_BUGREPORT "libarchive-discuss@googlegroups.com"
| #define PACKAGE_URL ""
| #define PACKAGE "libarchive"
| #define VERSION "3.7.2"
| #define __LIBARCHIVE_CONFIG_H_INCLUDED 1
| #define LIBARCHIVE_VERSION_STRING "3.7.2"
| #define LIBARCHIVE_VERSION_NUMBER "3007002"
| #define BSDCPIO_VERSION_STRING "3.7.2"
| #define BSDTAR_VERSION_STRING "3.7.2"
| #define BSDCAT_VERSION_STRING "3.7.2"
| #define BSDUNZIP_VERSION_STRING "3.7.2"
| #define HAVE_STDIO_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_SYS_TIME_H 1
| #define STDC_HEADERS 1
| #define _ALL_SOURCE 1
| #define _DARWIN_C_SOURCE 1
| #define _GNU_SOURCE 1
| #define _HPUX_ALT_XOPEN_SOCKET_API 1
| #define _NETBSD_SOURCE 1
| #define _OPENBSD_SOURCE 1
| #define _POSIX_PTHREAD_SEMANTICS 1
| #define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1
| #define __STDC_WANT_IEC_60559_BFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_DFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1
| #define __STDC_WANT_IEC_60559_TYPES_EXT__ 1
| #define __STDC_WANT_LIB_EXT2__ 1
| #define __STDC_WANT_MATH_SPEC_FUNCS__ 1
| #define _TANDEM_SOURCE 1
| #define __EXTENSIONS__ 1
| #define HAVE_DLFCN_H 1
| #define LT_OBJDIR ".libs/"
| #define HAVE_DIRENT_H 1
| #define HAVE_SYS_WAIT_H 1
| #define HAVE_CTYPE_H 1
| #define HAVE_ERRNO_H 1
| #define HAVE_FCNTL_H 1
| #define HAVE_FNMATCH_H 1
| #define HAVE_GRP_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_LANGINFO_H 1
| #define HAVE_LIMITS_H 1
| #define HAVE_LINUX_FIEMAP_H 1
| #define HAVE_LINUX_FS_H 1
| #define HAVE_LINUX_MAGIC_H 1
| #define HAVE_LINUX_TYPES_H 1
| #define HAVE_WORKING_FS_IOC_GETFLAGS 1
| #define HAVE_LOCALE_H 1
| #define HAVE_PATHS_H 1
| #define HAVE_POLL_H 1
| #define HAVE_PTHREAD_H 1
| #define HAVE_PWD_H 1
| #define HAVE_SIGNAL_H 1
| #define HAVE_SPAWN_H 1
| #define HAVE_STDARG_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_SYS_CDEFS_H 1
| #define HAVE_SYS_IOCTL_H 1
| #define HAVE_SYS_MOUNT_H 1
| #define HAVE_SYS_QUEUE_H 1
| #define HAVE_SYS_PARAM_H 1
| #define HAVE_SYS_POLL_H 1
| #define HAVE_SYS_SELECT_H 1
| #define HAVE_SYS_STATFS_H 1
| #define HAVE_SYS_STATVFS_H 1
| #define HAVE_SYS_SYSMACROS_H 1
| #define HAVE_SYS_TIME_H 1
| #define HAVE_SYS_UTSNAME_H 1
| #define HAVE_SYS_VFS_H 1
| #define HAVE_SYS_XATTR_H 1
| #define HAVE_TIME_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_UTIME_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_WCTYPE_H 1
| #define HAVE_ZLIB_H 1
| #define HAVE_LIBZ 1
| #define HAVE_ICONV 1
| #define ICONV_CONST 
| #define HAVE_ICONV_H 1
| #define HAVE_LZ4_H 1
| #define HAVE_LZ4HC_H 1
| #define HAVE_LIBLZ4 1
| #define HAVE_ZSTD_H 1
| #define HAVE_LIBZSTD 1
| #define HAVE_LIBZSTD_COMPRESSOR 1
| #define HAVE_LIBXML_XMLREADER_H 1
| #define HAVE_LIBXML_XMLWRITER_H 1
| #define HAVE_REGEX_H 1
| #define HAVE_STRUCT_TM_TM_GMTOFF 1
| #define HAVE_STRUCT_STAT_ST_MTIM_TV_NSEC 1
| #define HAVE_STRUCT_STAT_ST_BLKSIZE 1
| #define HAVE_UINTMAX_T 1
| #define HAVE_UNSIGNED_LONG_LONG 1
| #define HAVE_UNSIGNED_LONG_LONG_INT 1
| #define HAVE_LONG_LONG_INT 1
| #define HAVE_INTMAX_T 1
| #define HAVE_UINTMAX_T 1
| #define HAVE_DECL_SIZE_MAX 1
| #define HAVE_DECL_INT32_MAX 1
| #define HAVE_DECL_INT32_MIN 1
| #define HAVE_DECL_INT64_MAX 1
| #define HAVE_DECL_INT64_MIN 1
| #define HAVE_DECL_UINT64_MAX 1
| #define HAVE_DECL_UINT32_MAX 1
| #define HAVE_DECL_INTMAX_MAX 1
| #define HAVE_DECL_INTMAX_MIN 1
| #define HAVE_DECL_UINTMAX_MAX 1
| #define HAVE_DECL_SSIZE_MAX 1
| #define HAVE_EILSEQ 1
| #define HAVE_WCHAR_T 1
| #define SIZEOF_WCHAR_T 4
| #define SIZEOF_INT 4
| #define SIZEOF_LONG 4
| #define MAJOR_IN_SYSMACROS 1
| #define HAVE_FSEEKO 1
| #define LSTAT_FOLLOWS_SLASHED_SYMLINK 1
| #define HAVE_LSTAT_EMPTY_STRING_BUG 1
| #define HAVE_STAT_EMPTY_STRING_BUG 1
| #define HAVE_DECL_STRERROR_R 1
| #define HAVE_STRERROR_R 1
| #define STRERROR_R_CHAR_P 1
| #define HAVE_STRFTIME 1
| #define HAVE_VPRINTF 1
| #define HAVE_ARC4RANDOM_BUF 1
| #define HAVE_CHOWN 1
| #define HAVE_CHROOT 1
| #define HAVE_CTIME_R 1
| #define HAVE_FCHDIR 1
| #define HAVE_FCHMOD 1
| #define HAVE_FCHOWN 1
| #define HAVE_FCNTL 1
| #define HAVE_FDOPENDIR 1
| #define HAVE_FNMATCH 1
| #define HAVE_FORK 1
| #define HAVE_FSTAT 1
| #define HAVE_FSTATAT 1
| #define HAVE_FSTATFS 1
| #define HAVE_FSTATVFS 1
| #define HAVE_FTRUNCATE 1
| #define HAVE_FUTIMENS 1
| #define HAVE_FUTIMES 1
| #define HAVE_FUTIMESAT 1
| #define HAVE_GETEUID 1
| #define HAVE_GETLINE 1
| #define HAVE_GETPID 1
| #define HAVE_GETGRGID_R 1
| #define HAVE_GETGRNAM_R 1
| #define HAVE_GETPWNAM_R 1
| #define HAVE_GETPWUID_R 1
| #define HAVE_GMTIME_R 1
| #define HAVE_LCHMOD 1
| #define HAVE_LCHOWN 1
| #define HAVE_LINK 1
| #define HAVE_LINKAT 1
| #define HAVE_LOCALTIME_R 1
| #define HAVE_LSTAT 1
| #define HAVE_LUTIMES 1
| #define HAVE_MBRTOWC 1
| #define HAVE_MEMMOVE 1
| #define HAVE_MEMSET 1
| #define HAVE_MKDIR 1
| #define HAVE_MKFIFO 1
| #define HAVE_MKNOD 1
| #define HAVE_MKSTEMP 1
| #define HAVE_NL_LANGINFO 1
| #define HAVE_OPENAT 1
| #define HAVE_PIPE 1
| #define HAVE_POLL 1
| #define HAVE_POSIX_SPAWNP 1
| #define HAVE_READLINK 1
| #define HAVE_READLINKAT 1
| #define HAVE_SELECT 1
| #define HAVE_SETENV 1
| #define HAVE_SETLOCALE 1
| #define HAVE_SIGACTION 1
| #define HAVE_STATFS 1
| #define HAVE_STATVFS 1
| #define HAVE_STRCHR 1
| #define HAVE_STRDUP 1
| #define HAVE_STRERROR 1
| #define HAVE_STRNLEN 1
| #define HAVE_STRRCHR 1
| #define HAVE_SYMLINK 1
| #define HAVE_TIMEGM 1
| #define HAVE_TZSET 1
| #define HAVE_UNLINKAT 1
| #define HAVE_UNSETENV 1
| #define HAVE_UTIME 1
| #define HAVE_UTIMENSAT 1
| #define HAVE_UTIMES 1
| #define HAVE_VFORK 1
| #define HAVE_WCRTOMB 1
| #define HAVE_WCSCMP 1
| #define HAVE_WCSCPY 1
| #define HAVE_WCSLEN 1
| #define HAVE_WCTOMB 1
| #define HAVE_WMEMCMP 1
| #define HAVE_WMEMCPY 1
| #define HAVE_WMEMMOVE 1
| /* end confdefs.h.  */
| /* Define _fseeki64 to an innocuous variant, in case <limits.h> declares _fseeki64.
|    For example, HP-UX 11i <limits.h> declares gettimeofday.  */
| #define _fseeki64 innocuous__fseeki64
| 
| /* System header to define __stub macros and hopefully few prototypes,
|    which can conflict with char _fseeki64 (); below.  */
| 
| #include <limits.h>
| #undef _fseeki64
| 
| /* Override any GCC internal prototype to avoid an error.
|    Use char because int might match the return type of a GCC
|    builtin and then its argument prototype would still apply.  */
| #ifdef __cplusplus
| extern "C"
| #endif
| char _fseeki64 ();
| /* The GNU C library defines this for functions which it implements
|     to always fail with ENOSYS.  Some functions are actually named
|     something starting with __ and the normal name is an alias.  */
| #if defined __stub__fseeki64 || defined __stub____fseeki64
| choke me
| #endif
| 
| int
| main (void)
| {
| return _fseeki64 ();
|   ;
|   return 0;
| }
configure:16335: result: no
configure:16341: checking for _get_timezone
configure:16341: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -o conftest -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2   conftest.c -lzstd -llz4 -lz  -L/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/lib -lxml2  >&5
/home/thomas/autobuild/instance-1/output-1/host/lib/gcc/nios2-buildroot-linux-gnu/13.2.0/../../../../nios2-buildroot-linux-gnu/bin/ld: /tmp/ccBEPQ4i.o: in function `main':
conftest.c:(.text.startup.main+0x8): undefined reference to `_get_timezone'
collect2: error: ld returned 1 exit status
configure:16341: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "libarchive"
| #define PACKAGE_TARNAME "libarchive"
| #define PACKAGE_VERSION "3.7.2"
| #define PACKAGE_STRING "libarchive 3.7.2"
| #define PACKAGE_BUGREPORT "libarchive-discuss@googlegroups.com"
| #define PACKAGE_URL ""
| #define PACKAGE "libarchive"
| #define VERSION "3.7.2"
| #define __LIBARCHIVE_CONFIG_H_INCLUDED 1
| #define LIBARCHIVE_VERSION_STRING "3.7.2"
| #define LIBARCHIVE_VERSION_NUMBER "3007002"
| #define BSDCPIO_VERSION_STRING "3.7.2"
| #define BSDTAR_VERSION_STRING "3.7.2"
| #define BSDCAT_VERSION_STRING "3.7.2"
| #define BSDUNZIP_VERSION_STRING "3.7.2"
| #define HAVE_STDIO_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_SYS_TIME_H 1
| #define STDC_HEADERS 1
| #define _ALL_SOURCE 1
| #define _DARWIN_C_SOURCE 1
| #define _GNU_SOURCE 1
| #define _HPUX_ALT_XOPEN_SOCKET_API 1
| #define _NETBSD_SOURCE 1
| #define _OPENBSD_SOURCE 1
| #define _POSIX_PTHREAD_SEMANTICS 1
| #define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1
| #define __STDC_WANT_IEC_60559_BFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_DFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1
| #define __STDC_WANT_IEC_60559_TYPES_EXT__ 1
| #define __STDC_WANT_LIB_EXT2__ 1
| #define __STDC_WANT_MATH_SPEC_FUNCS__ 1
| #define _TANDEM_SOURCE 1
| #define __EXTENSIONS__ 1
| #define HAVE_DLFCN_H 1
| #define LT_OBJDIR ".libs/"
| #define HAVE_DIRENT_H 1
| #define HAVE_SYS_WAIT_H 1
| #define HAVE_CTYPE_H 1
| #define HAVE_ERRNO_H 1
| #define HAVE_FCNTL_H 1
| #define HAVE_FNMATCH_H 1
| #define HAVE_GRP_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_LANGINFO_H 1
| #define HAVE_LIMITS_H 1
| #define HAVE_LINUX_FIEMAP_H 1
| #define HAVE_LINUX_FS_H 1
| #define HAVE_LINUX_MAGIC_H 1
| #define HAVE_LINUX_TYPES_H 1
| #define HAVE_WORKING_FS_IOC_GETFLAGS 1
| #define HAVE_LOCALE_H 1
| #define HAVE_PATHS_H 1
| #define HAVE_POLL_H 1
| #define HAVE_PTHREAD_H 1
| #define HAVE_PWD_H 1
| #define HAVE_SIGNAL_H 1
| #define HAVE_SPAWN_H 1
| #define HAVE_STDARG_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_SYS_CDEFS_H 1
| #define HAVE_SYS_IOCTL_H 1
| #define HAVE_SYS_MOUNT_H 1
| #define HAVE_SYS_QUEUE_H 1
| #define HAVE_SYS_PARAM_H 1
| #define HAVE_SYS_POLL_H 1
| #define HAVE_SYS_SELECT_H 1
| #define HAVE_SYS_STATFS_H 1
| #define HAVE_SYS_STATVFS_H 1
| #define HAVE_SYS_SYSMACROS_H 1
| #define HAVE_SYS_TIME_H 1
| #define HAVE_SYS_UTSNAME_H 1
| #define HAVE_SYS_VFS_H 1
| #define HAVE_SYS_XATTR_H 1
| #define HAVE_TIME_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_UTIME_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_WCTYPE_H 1
| #define HAVE_ZLIB_H 1
| #define HAVE_LIBZ 1
| #define HAVE_ICONV 1
| #define ICONV_CONST 
| #define HAVE_ICONV_H 1
| #define HAVE_LZ4_H 1
| #define HAVE_LZ4HC_H 1
| #define HAVE_LIBLZ4 1
| #define HAVE_ZSTD_H 1
| #define HAVE_LIBZSTD 1
| #define HAVE_LIBZSTD_COMPRESSOR 1
| #define HAVE_LIBXML_XMLREADER_H 1
| #define HAVE_LIBXML_XMLWRITER_H 1
| #define HAVE_REGEX_H 1
| #define HAVE_STRUCT_TM_TM_GMTOFF 1
| #define HAVE_STRUCT_STAT_ST_MTIM_TV_NSEC 1
| #define HAVE_STRUCT_STAT_ST_BLKSIZE 1
| #define HAVE_UINTMAX_T 1
| #define HAVE_UNSIGNED_LONG_LONG 1
| #define HAVE_UNSIGNED_LONG_LONG_INT 1
| #define HAVE_LONG_LONG_INT 1
| #define HAVE_INTMAX_T 1
| #define HAVE_UINTMAX_T 1
| #define HAVE_DECL_SIZE_MAX 1
| #define HAVE_DECL_INT32_MAX 1
| #define HAVE_DECL_INT32_MIN 1
| #define HAVE_DECL_INT64_MAX 1
| #define HAVE_DECL_INT64_MIN 1
| #define HAVE_DECL_UINT64_MAX 1
| #define HAVE_DECL_UINT32_MAX 1
| #define HAVE_DECL_INTMAX_MAX 1
| #define HAVE_DECL_INTMAX_MIN 1
| #define HAVE_DECL_UINTMAX_MAX 1
| #define HAVE_DECL_SSIZE_MAX 1
| #define HAVE_EILSEQ 1
| #define HAVE_WCHAR_T 1
| #define SIZEOF_WCHAR_T 4
| #define SIZEOF_INT 4
| #define SIZEOF_LONG 4
| #define MAJOR_IN_SYSMACROS 1
| #define HAVE_FSEEKO 1
| #define LSTAT_FOLLOWS_SLASHED_SYMLINK 1
| #define HAVE_LSTAT_EMPTY_STRING_BUG 1
| #define HAVE_STAT_EMPTY_STRING_BUG 1
| #define HAVE_DECL_STRERROR_R 1
| #define HAVE_STRERROR_R 1
| #define STRERROR_R_CHAR_P 1
| #define HAVE_STRFTIME 1
| #define HAVE_VPRINTF 1
| #define HAVE_ARC4RANDOM_BUF 1
| #define HAVE_CHOWN 1
| #define HAVE_CHROOT 1
| #define HAVE_CTIME_R 1
| #define HAVE_FCHDIR 1
| #define HAVE_FCHMOD 1
| #define HAVE_FCHOWN 1
| #define HAVE_FCNTL 1
| #define HAVE_FDOPENDIR 1
| #define HAVE_FNMATCH 1
| #define HAVE_FORK 1
| #define HAVE_FSTAT 1
| #define HAVE_FSTATAT 1
| #define HAVE_FSTATFS 1
| #define HAVE_FSTATVFS 1
| #define HAVE_FTRUNCATE 1
| #define HAVE_FUTIMENS 1
| #define HAVE_FUTIMES 1
| #define HAVE_FUTIMESAT 1
| #define HAVE_GETEUID 1
| #define HAVE_GETLINE 1
| #define HAVE_GETPID 1
| #define HAVE_GETGRGID_R 1
| #define HAVE_GETGRNAM_R 1
| #define HAVE_GETPWNAM_R 1
| #define HAVE_GETPWUID_R 1
| #define HAVE_GMTIME_R 1
| #define HAVE_LCHMOD 1
| #define HAVE_LCHOWN 1
| #define HAVE_LINK 1
| #define HAVE_LINKAT 1
| #define HAVE_LOCALTIME_R 1
| #define HAVE_LSTAT 1
| #define HAVE_LUTIMES 1
| #define HAVE_MBRTOWC 1
| #define HAVE_MEMMOVE 1
| #define HAVE_MEMSET 1
| #define HAVE_MKDIR 1
| #define HAVE_MKFIFO 1
| #define HAVE_MKNOD 1
| #define HAVE_MKSTEMP 1
| #define HAVE_NL_LANGINFO 1
| #define HAVE_OPENAT 1
| #define HAVE_PIPE 1
| #define HAVE_POLL 1
| #define HAVE_POSIX_SPAWNP 1
| #define HAVE_READLINK 1
| #define HAVE_READLINKAT 1
| #define HAVE_SELECT 1
| #define HAVE_SETENV 1
| #define HAVE_SETLOCALE 1
| #define HAVE_SIGACTION 1
| #define HAVE_STATFS 1
| #define HAVE_STATVFS 1
| #define HAVE_STRCHR 1
| #define HAVE_STRDUP 1
| #define HAVE_STRERROR 1
| #define HAVE_STRNLEN 1
| #define HAVE_STRRCHR 1
| #define HAVE_SYMLINK 1
| #define HAVE_TIMEGM 1
| #define HAVE_TZSET 1
| #define HAVE_UNLINKAT 1
| #define HAVE_UNSETENV 1
| #define HAVE_UTIME 1
| #define HAVE_UTIMENSAT 1
| #define HAVE_UTIMES 1
| #define HAVE_VFORK 1
| #define HAVE_WCRTOMB 1
| #define HAVE_WCSCMP 1
| #define HAVE_WCSCPY 1
| #define HAVE_WCSLEN 1
| #define HAVE_WCTOMB 1
| #define HAVE_WMEMCMP 1
| #define HAVE_WMEMCPY 1
| #define HAVE_WMEMMOVE 1
| /* end confdefs.h.  */
| /* Define _get_timezone to an innocuous variant, in case <limits.h> declares _get_timezone.
|    For example, HP-UX 11i <limits.h> declares gettimeofday.  */
| #define _get_timezone innocuous__get_timezone
| 
| /* System header to define __stub macros and hopefully few prototypes,
|    which can conflict with char _get_timezone (); below.  */
| 
| #include <limits.h>
| #undef _get_timezone
| 
| /* Override any GCC internal prototype to avoid an error.
|    Use char because int might match the return type of a GCC
|    builtin and then its argument prototype would still apply.  */
| #ifdef __cplusplus
| extern "C"
| #endif
| char _get_timezone ();
| /* The GNU C library defines this for functions which it implements
|     to always fail with ENOSYS.  Some functions are actually named
|     something starting with __ and the normal name is an alias.  */
| #if defined __stub__get_timezone || defined __stub____get_timezone
| choke me
| #endif
| 
| int
| main (void)
| {
| return _get_timezone ();
|   ;
|   return 0;
| }
configure:16341: result: no
configure:16348: checking whether cmtime_s is declared
configure:16348: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections  -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2  conftest.c >&5
conftest.c: In function 'main':
conftest.c:227:10: error: 'cmtime_s' undeclared (first use in this function); did you mean 'ctime_r'?
  227 |   (void) cmtime_s;
      |          ^~~~~~~~
      |          ctime_r
conftest.c:227:10: note: each undeclared identifier is reported only once for each function it appears in
configure:16348: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "libarchive"
| #define PACKAGE_TARNAME "libarchive"
| #define PACKAGE_VERSION "3.7.2"
| #define PACKAGE_STRING "libarchive 3.7.2"
| #define PACKAGE_BUGREPORT "libarchive-discuss@googlegroups.com"
| #define PACKAGE_URL ""
| #define PACKAGE "libarchive"
| #define VERSION "3.7.2"
| #define __LIBARCHIVE_CONFIG_H_INCLUDED 1
| #define LIBARCHIVE_VERSION_STRING "3.7.2"
| #define LIBARCHIVE_VERSION_NUMBER "3007002"
| #define BSDCPIO_VERSION_STRING "3.7.2"
| #define BSDTAR_VERSION_STRING "3.7.2"
| #define BSDCAT_VERSION_STRING "3.7.2"
| #define BSDUNZIP_VERSION_STRING "3.7.2"
| #define HAVE_STDIO_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_SYS_TIME_H 1
| #define STDC_HEADERS 1
| #define _ALL_SOURCE 1
| #define _DARWIN_C_SOURCE 1
| #define _GNU_SOURCE 1
| #define _HPUX_ALT_XOPEN_SOCKET_API 1
| #define _NETBSD_SOURCE 1
| #define _OPENBSD_SOURCE 1
| #define _POSIX_PTHREAD_SEMANTICS 1
| #define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1
| #define __STDC_WANT_IEC_60559_BFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_DFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1
| #define __STDC_WANT_IEC_60559_TYPES_EXT__ 1
| #define __STDC_WANT_LIB_EXT2__ 1
| #define __STDC_WANT_MATH_SPEC_FUNCS__ 1
| #define _TANDEM_SOURCE 1
| #define __EXTENSIONS__ 1
| #define HAVE_DLFCN_H 1
| #define LT_OBJDIR ".libs/"
| #define HAVE_DIRENT_H 1
| #define HAVE_SYS_WAIT_H 1
| #define HAVE_CTYPE_H 1
| #define HAVE_ERRNO_H 1
| #define HAVE_FCNTL_H 1
| #define HAVE_FNMATCH_H 1
| #define HAVE_GRP_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_LANGINFO_H 1
| #define HAVE_LIMITS_H 1
| #define HAVE_LINUX_FIEMAP_H 1
| #define HAVE_LINUX_FS_H 1
| #define HAVE_LINUX_MAGIC_H 1
| #define HAVE_LINUX_TYPES_H 1
| #define HAVE_WORKING_FS_IOC_GETFLAGS 1
| #define HAVE_LOCALE_H 1
| #define HAVE_PATHS_H 1
| #define HAVE_POLL_H 1
| #define HAVE_PTHREAD_H 1
| #define HAVE_PWD_H 1
| #define HAVE_SIGNAL_H 1
| #define HAVE_SPAWN_H 1
| #define HAVE_STDARG_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_SYS_CDEFS_H 1
| #define HAVE_SYS_IOCTL_H 1
| #define HAVE_SYS_MOUNT_H 1
| #define HAVE_SYS_QUEUE_H 1
| #define HAVE_SYS_PARAM_H 1
| #define HAVE_SYS_POLL_H 1
| #define HAVE_SYS_SELECT_H 1
| #define HAVE_SYS_STATFS_H 1
| #define HAVE_SYS_STATVFS_H 1
| #define HAVE_SYS_SYSMACROS_H 1
| #define HAVE_SYS_TIME_H 1
| #define HAVE_SYS_UTSNAME_H 1
| #define HAVE_SYS_VFS_H 1
| #define HAVE_SYS_XATTR_H 1
| #define HAVE_TIME_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_UTIME_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_WCTYPE_H 1
| #define HAVE_ZLIB_H 1
| #define HAVE_LIBZ 1
| #define HAVE_ICONV 1
| #define ICONV_CONST 
| #define HAVE_ICONV_H 1
| #define HAVE_LZ4_H 1
| #define HAVE_LZ4HC_H 1
| #define HAVE_LIBLZ4 1
| #define HAVE_ZSTD_H 1
| #define HAVE_LIBZSTD 1
| #define HAVE_LIBZSTD_COMPRESSOR 1
| #define HAVE_LIBXML_XMLREADER_H 1
| #define HAVE_LIBXML_XMLWRITER_H 1
| #define HAVE_REGEX_H 1
| #define HAVE_STRUCT_TM_TM_GMTOFF 1
| #define HAVE_STRUCT_STAT_ST_MTIM_TV_NSEC 1
| #define HAVE_STRUCT_STAT_ST_BLKSIZE 1
| #define HAVE_UINTMAX_T 1
| #define HAVE_UNSIGNED_LONG_LONG 1
| #define HAVE_UNSIGNED_LONG_LONG_INT 1
| #define HAVE_LONG_LONG_INT 1
| #define HAVE_INTMAX_T 1
| #define HAVE_UINTMAX_T 1
| #define HAVE_DECL_SIZE_MAX 1
| #define HAVE_DECL_INT32_MAX 1
| #define HAVE_DECL_INT32_MIN 1
| #define HAVE_DECL_INT64_MAX 1
| #define HAVE_DECL_INT64_MIN 1
| #define HAVE_DECL_UINT64_MAX 1
| #define HAVE_DECL_UINT32_MAX 1
| #define HAVE_DECL_INTMAX_MAX 1
| #define HAVE_DECL_INTMAX_MIN 1
| #define HAVE_DECL_UINTMAX_MAX 1
| #define HAVE_DECL_SSIZE_MAX 1
| #define HAVE_EILSEQ 1
| #define HAVE_WCHAR_T 1
| #define SIZEOF_WCHAR_T 4
| #define SIZEOF_INT 4
| #define SIZEOF_LONG 4
| #define MAJOR_IN_SYSMACROS 1
| #define HAVE_FSEEKO 1
| #define LSTAT_FOLLOWS_SLASHED_SYMLINK 1
| #define HAVE_LSTAT_EMPTY_STRING_BUG 1
| #define HAVE_STAT_EMPTY_STRING_BUG 1
| #define HAVE_DECL_STRERROR_R 1
| #define HAVE_STRERROR_R 1
| #define STRERROR_R_CHAR_P 1
| #define HAVE_STRFTIME 1
| #define HAVE_VPRINTF 1
| #define HAVE_ARC4RANDOM_BUF 1
| #define HAVE_CHOWN 1
| #define HAVE_CHROOT 1
| #define HAVE_CTIME_R 1
| #define HAVE_FCHDIR 1
| #define HAVE_FCHMOD 1
| #define HAVE_FCHOWN 1
| #define HAVE_FCNTL 1
| #define HAVE_FDOPENDIR 1
| #define HAVE_FNMATCH 1
| #define HAVE_FORK 1
| #define HAVE_FSTAT 1
| #define HAVE_FSTATAT 1
| #define HAVE_FSTATFS 1
| #define HAVE_FSTATVFS 1
| #define HAVE_FTRUNCATE 1
| #define HAVE_FUTIMENS 1
| #define HAVE_FUTIMES 1
| #define HAVE_FUTIMESAT 1
| #define HAVE_GETEUID 1
| #define HAVE_GETLINE 1
| #define HAVE_GETPID 1
| #define HAVE_GETGRGID_R 1
| #define HAVE_GETGRNAM_R 1
| #define HAVE_GETPWNAM_R 1
| #define HAVE_GETPWUID_R 1
| #define HAVE_GMTIME_R 1
| #define HAVE_LCHMOD 1
| #define HAVE_LCHOWN 1
| #define HAVE_LINK 1
| #define HAVE_LINKAT 1
| #define HAVE_LOCALTIME_R 1
| #define HAVE_LSTAT 1
| #define HAVE_LUTIMES 1
| #define HAVE_MBRTOWC 1
| #define HAVE_MEMMOVE 1
| #define HAVE_MEMSET 1
| #define HAVE_MKDIR 1
| #define HAVE_MKFIFO 1
| #define HAVE_MKNOD 1
| #define HAVE_MKSTEMP 1
| #define HAVE_NL_LANGINFO 1
| #define HAVE_OPENAT 1
| #define HAVE_PIPE 1
| #define HAVE_POLL 1
| #define HAVE_POSIX_SPAWNP 1
| #define HAVE_READLINK 1
| #define HAVE_READLINKAT 1
| #define HAVE_SELECT 1
| #define HAVE_SETENV 1
| #define HAVE_SETLOCALE 1
| #define HAVE_SIGACTION 1
| #define HAVE_STATFS 1
| #define HAVE_STATVFS 1
| #define HAVE_STRCHR 1
| #define HAVE_STRDUP 1
| #define HAVE_STRERROR 1
| #define HAVE_STRNLEN 1
| #define HAVE_STRRCHR 1
| #define HAVE_SYMLINK 1
| #define HAVE_TIMEGM 1
| #define HAVE_TZSET 1
| #define HAVE_UNLINKAT 1
| #define HAVE_UNSETENV 1
| #define HAVE_UTIME 1
| #define HAVE_UTIMENSAT 1
| #define HAVE_UTIMES 1
| #define HAVE_VFORK 1
| #define HAVE_WCRTOMB 1
| #define HAVE_WCSCMP 1
| #define HAVE_WCSCPY 1
| #define HAVE_WCSLEN 1
| #define HAVE_WCTOMB 1
| #define HAVE_WMEMCMP 1
| #define HAVE_WMEMCPY 1
| #define HAVE_WMEMMOVE 1
| /* end confdefs.h.  */
| #include <time.h>
| 
| int
| main (void)
| {
| #ifndef cmtime_s
| #ifdef __cplusplus
|   (void) cmtime_s;
| #else
|   (void) cmtime_s;
| #endif
| #endif
| 
|   ;
|   return 0;
| }
configure:16348: result: no
configure:16356: checking whether gmtime_s is declared
configure:16356: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections  -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2  conftest.c >&5
conftest.c: In function 'main':
conftest.c:227:10: error: 'gmtime_s' undeclared (first use in this function); did you mean 'gmtime_r'?
  227 |   (void) gmtime_s;
      |          ^~~~~~~~
      |          gmtime_r
conftest.c:227:10: note: each undeclared identifier is reported only once for each function it appears in
configure:16356: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "libarchive"
| #define PACKAGE_TARNAME "libarchive"
| #define PACKAGE_VERSION "3.7.2"
| #define PACKAGE_STRING "libarchive 3.7.2"
| #define PACKAGE_BUGREPORT "libarchive-discuss@googlegroups.com"
| #define PACKAGE_URL ""
| #define PACKAGE "libarchive"
| #define VERSION "3.7.2"
| #define __LIBARCHIVE_CONFIG_H_INCLUDED 1
| #define LIBARCHIVE_VERSION_STRING "3.7.2"
| #define LIBARCHIVE_VERSION_NUMBER "3007002"
| #define BSDCPIO_VERSION_STRING "3.7.2"
| #define BSDTAR_VERSION_STRING "3.7.2"
| #define BSDCAT_VERSION_STRING "3.7.2"
| #define BSDUNZIP_VERSION_STRING "3.7.2"
| #define HAVE_STDIO_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_SYS_TIME_H 1
| #define STDC_HEADERS 1
| #define _ALL_SOURCE 1
| #define _DARWIN_C_SOURCE 1
| #define _GNU_SOURCE 1
| #define _HPUX_ALT_XOPEN_SOCKET_API 1
| #define _NETBSD_SOURCE 1
| #define _OPENBSD_SOURCE 1
| #define _POSIX_PTHREAD_SEMANTICS 1
| #define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1
| #define __STDC_WANT_IEC_60559_BFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_DFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1
| #define __STDC_WANT_IEC_60559_TYPES_EXT__ 1
| #define __STDC_WANT_LIB_EXT2__ 1
| #define __STDC_WANT_MATH_SPEC_FUNCS__ 1
| #define _TANDEM_SOURCE 1
| #define __EXTENSIONS__ 1
| #define HAVE_DLFCN_H 1
| #define LT_OBJDIR ".libs/"
| #define HAVE_DIRENT_H 1
| #define HAVE_SYS_WAIT_H 1
| #define HAVE_CTYPE_H 1
| #define HAVE_ERRNO_H 1
| #define HAVE_FCNTL_H 1
| #define HAVE_FNMATCH_H 1
| #define HAVE_GRP_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_LANGINFO_H 1
| #define HAVE_LIMITS_H 1
| #define HAVE_LINUX_FIEMAP_H 1
| #define HAVE_LINUX_FS_H 1
| #define HAVE_LINUX_MAGIC_H 1
| #define HAVE_LINUX_TYPES_H 1
| #define HAVE_WORKING_FS_IOC_GETFLAGS 1
| #define HAVE_LOCALE_H 1
| #define HAVE_PATHS_H 1
| #define HAVE_POLL_H 1
| #define HAVE_PTHREAD_H 1
| #define HAVE_PWD_H 1
| #define HAVE_SIGNAL_H 1
| #define HAVE_SPAWN_H 1
| #define HAVE_STDARG_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_SYS_CDEFS_H 1
| #define HAVE_SYS_IOCTL_H 1
| #define HAVE_SYS_MOUNT_H 1
| #define HAVE_SYS_QUEUE_H 1
| #define HAVE_SYS_PARAM_H 1
| #define HAVE_SYS_POLL_H 1
| #define HAVE_SYS_SELECT_H 1
| #define HAVE_SYS_STATFS_H 1
| #define HAVE_SYS_STATVFS_H 1
| #define HAVE_SYS_SYSMACROS_H 1
| #define HAVE_SYS_TIME_H 1
| #define HAVE_SYS_UTSNAME_H 1
| #define HAVE_SYS_VFS_H 1
| #define HAVE_SYS_XATTR_H 1
| #define HAVE_TIME_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_UTIME_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_WCTYPE_H 1
| #define HAVE_ZLIB_H 1
| #define HAVE_LIBZ 1
| #define HAVE_ICONV 1
| #define ICONV_CONST 
| #define HAVE_ICONV_H 1
| #define HAVE_LZ4_H 1
| #define HAVE_LZ4HC_H 1
| #define HAVE_LIBLZ4 1
| #define HAVE_ZSTD_H 1
| #define HAVE_LIBZSTD 1
| #define HAVE_LIBZSTD_COMPRESSOR 1
| #define HAVE_LIBXML_XMLREADER_H 1
| #define HAVE_LIBXML_XMLWRITER_H 1
| #define HAVE_REGEX_H 1
| #define HAVE_STRUCT_TM_TM_GMTOFF 1
| #define HAVE_STRUCT_STAT_ST_MTIM_TV_NSEC 1
| #define HAVE_STRUCT_STAT_ST_BLKSIZE 1
| #define HAVE_UINTMAX_T 1
| #define HAVE_UNSIGNED_LONG_LONG 1
| #define HAVE_UNSIGNED_LONG_LONG_INT 1
| #define HAVE_LONG_LONG_INT 1
| #define HAVE_INTMAX_T 1
| #define HAVE_UINTMAX_T 1
| #define HAVE_DECL_SIZE_MAX 1
| #define HAVE_DECL_INT32_MAX 1
| #define HAVE_DECL_INT32_MIN 1
| #define HAVE_DECL_INT64_MAX 1
| #define HAVE_DECL_INT64_MIN 1
| #define HAVE_DECL_UINT64_MAX 1
| #define HAVE_DECL_UINT32_MAX 1
| #define HAVE_DECL_INTMAX_MAX 1
| #define HAVE_DECL_INTMAX_MIN 1
| #define HAVE_DECL_UINTMAX_MAX 1
| #define HAVE_DECL_SSIZE_MAX 1
| #define HAVE_EILSEQ 1
| #define HAVE_WCHAR_T 1
| #define SIZEOF_WCHAR_T 4
| #define SIZEOF_INT 4
| #define SIZEOF_LONG 4
| #define MAJOR_IN_SYSMACROS 1
| #define HAVE_FSEEKO 1
| #define LSTAT_FOLLOWS_SLASHED_SYMLINK 1
| #define HAVE_LSTAT_EMPTY_STRING_BUG 1
| #define HAVE_STAT_EMPTY_STRING_BUG 1
| #define HAVE_DECL_STRERROR_R 1
| #define HAVE_STRERROR_R 1
| #define STRERROR_R_CHAR_P 1
| #define HAVE_STRFTIME 1
| #define HAVE_VPRINTF 1
| #define HAVE_ARC4RANDOM_BUF 1
| #define HAVE_CHOWN 1
| #define HAVE_CHROOT 1
| #define HAVE_CTIME_R 1
| #define HAVE_FCHDIR 1
| #define HAVE_FCHMOD 1
| #define HAVE_FCHOWN 1
| #define HAVE_FCNTL 1
| #define HAVE_FDOPENDIR 1
| #define HAVE_FNMATCH 1
| #define HAVE_FORK 1
| #define HAVE_FSTAT 1
| #define HAVE_FSTATAT 1
| #define HAVE_FSTATFS 1
| #define HAVE_FSTATVFS 1
| #define HAVE_FTRUNCATE 1
| #define HAVE_FUTIMENS 1
| #define HAVE_FUTIMES 1
| #define HAVE_FUTIMESAT 1
| #define HAVE_GETEUID 1
| #define HAVE_GETLINE 1
| #define HAVE_GETPID 1
| #define HAVE_GETGRGID_R 1
| #define HAVE_GETGRNAM_R 1
| #define HAVE_GETPWNAM_R 1
| #define HAVE_GETPWUID_R 1
| #define HAVE_GMTIME_R 1
| #define HAVE_LCHMOD 1
| #define HAVE_LCHOWN 1
| #define HAVE_LINK 1
| #define HAVE_LINKAT 1
| #define HAVE_LOCALTIME_R 1
| #define HAVE_LSTAT 1
| #define HAVE_LUTIMES 1
| #define HAVE_MBRTOWC 1
| #define HAVE_MEMMOVE 1
| #define HAVE_MEMSET 1
| #define HAVE_MKDIR 1
| #define HAVE_MKFIFO 1
| #define HAVE_MKNOD 1
| #define HAVE_MKSTEMP 1
| #define HAVE_NL_LANGINFO 1
| #define HAVE_OPENAT 1
| #define HAVE_PIPE 1
| #define HAVE_POLL 1
| #define HAVE_POSIX_SPAWNP 1
| #define HAVE_READLINK 1
| #define HAVE_READLINKAT 1
| #define HAVE_SELECT 1
| #define HAVE_SETENV 1
| #define HAVE_SETLOCALE 1
| #define HAVE_SIGACTION 1
| #define HAVE_STATFS 1
| #define HAVE_STATVFS 1
| #define HAVE_STRCHR 1
| #define HAVE_STRDUP 1
| #define HAVE_STRERROR 1
| #define HAVE_STRNLEN 1
| #define HAVE_STRRCHR 1
| #define HAVE_SYMLINK 1
| #define HAVE_TIMEGM 1
| #define HAVE_TZSET 1
| #define HAVE_UNLINKAT 1
| #define HAVE_UNSETENV 1
| #define HAVE_UTIME 1
| #define HAVE_UTIMENSAT 1
| #define HAVE_UTIMES 1
| #define HAVE_VFORK 1
| #define HAVE_WCRTOMB 1
| #define HAVE_WCSCMP 1
| #define HAVE_WCSCPY 1
| #define HAVE_WCSLEN 1
| #define HAVE_WCTOMB 1
| #define HAVE_WMEMCMP 1
| #define HAVE_WMEMCPY 1
| #define HAVE_WMEMMOVE 1
| /* end confdefs.h.  */
| #include <time.h>
| 
| int
| main (void)
| {
| #ifndef gmtime_s
| #ifdef __cplusplus
|   (void) gmtime_s;
| #else
|   (void) gmtime_s;
| #endif
| #endif
| 
|   ;
|   return 0;
| }
configure:16356: result: no
configure:16364: checking for localtime_s
configure:16364: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2  conftest.c >&5
conftest.c: In function 'main':
conftest.c:223:13: error: 'localtime_s' undeclared (first use in this function); did you mean 'localtime_r'?
  223 | if (sizeof (localtime_s))
      |             ^~~~~~~~~~~
      |             localtime_r
conftest.c:223:13: note: each undeclared identifier is reported only once for each function it appears in
configure:16364: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "libarchive"
| #define PACKAGE_TARNAME "libarchive"
| #define PACKAGE_VERSION "3.7.2"
| #define PACKAGE_STRING "libarchive 3.7.2"
| #define PACKAGE_BUGREPORT "libarchive-discuss@googlegroups.com"
| #define PACKAGE_URL ""
| #define PACKAGE "libarchive"
| #define VERSION "3.7.2"
| #define __LIBARCHIVE_CONFIG_H_INCLUDED 1
| #define LIBARCHIVE_VERSION_STRING "3.7.2"
| #define LIBARCHIVE_VERSION_NUMBER "3007002"
| #define BSDCPIO_VERSION_STRING "3.7.2"
| #define BSDTAR_VERSION_STRING "3.7.2"
| #define BSDCAT_VERSION_STRING "3.7.2"
| #define BSDUNZIP_VERSION_STRING "3.7.2"
| #define HAVE_STDIO_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_SYS_TIME_H 1
| #define STDC_HEADERS 1
| #define _ALL_SOURCE 1
| #define _DARWIN_C_SOURCE 1
| #define _GNU_SOURCE 1
| #define _HPUX_ALT_XOPEN_SOCKET_API 1
| #define _NETBSD_SOURCE 1
| #define _OPENBSD_SOURCE 1
| #define _POSIX_PTHREAD_SEMANTICS 1
| #define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1
| #define __STDC_WANT_IEC_60559_BFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_DFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1
| #define __STDC_WANT_IEC_60559_TYPES_EXT__ 1
| #define __STDC_WANT_LIB_EXT2__ 1
| #define __STDC_WANT_MATH_SPEC_FUNCS__ 1
| #define _TANDEM_SOURCE 1
| #define __EXTENSIONS__ 1
| #define HAVE_DLFCN_H 1
| #define LT_OBJDIR ".libs/"
| #define HAVE_DIRENT_H 1
| #define HAVE_SYS_WAIT_H 1
| #define HAVE_CTYPE_H 1
| #define HAVE_ERRNO_H 1
| #define HAVE_FCNTL_H 1
| #define HAVE_FNMATCH_H 1
| #define HAVE_GRP_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_LANGINFO_H 1
| #define HAVE_LIMITS_H 1
| #define HAVE_LINUX_FIEMAP_H 1
| #define HAVE_LINUX_FS_H 1
| #define HAVE_LINUX_MAGIC_H 1
| #define HAVE_LINUX_TYPES_H 1
| #define HAVE_WORKING_FS_IOC_GETFLAGS 1
| #define HAVE_LOCALE_H 1
| #define HAVE_PATHS_H 1
| #define HAVE_POLL_H 1
| #define HAVE_PTHREAD_H 1
| #define HAVE_PWD_H 1
| #define HAVE_SIGNAL_H 1
| #define HAVE_SPAWN_H 1
| #define HAVE_STDARG_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_SYS_CDEFS_H 1
| #define HAVE_SYS_IOCTL_H 1
| #define HAVE_SYS_MOUNT_H 1
| #define HAVE_SYS_QUEUE_H 1
| #define HAVE_SYS_PARAM_H 1
| #define HAVE_SYS_POLL_H 1
| #define HAVE_SYS_SELECT_H 1
| #define HAVE_SYS_STATFS_H 1
| #define HAVE_SYS_STATVFS_H 1
| #define HAVE_SYS_SYSMACROS_H 1
| #define HAVE_SYS_TIME_H 1
| #define HAVE_SYS_UTSNAME_H 1
| #define HAVE_SYS_VFS_H 1
| #define HAVE_SYS_XATTR_H 1
| #define HAVE_TIME_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_UTIME_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_WCTYPE_H 1
| #define HAVE_ZLIB_H 1
| #define HAVE_LIBZ 1
| #define HAVE_ICONV 1
| #define ICONV_CONST 
| #define HAVE_ICONV_H 1
| #define HAVE_LZ4_H 1
| #define HAVE_LZ4HC_H 1
| #define HAVE_LIBLZ4 1
| #define HAVE_ZSTD_H 1
| #define HAVE_LIBZSTD 1
| #define HAVE_LIBZSTD_COMPRESSOR 1
| #define HAVE_LIBXML_XMLREADER_H 1
| #define HAVE_LIBXML_XMLWRITER_H 1
| #define HAVE_REGEX_H 1
| #define HAVE_STRUCT_TM_TM_GMTOFF 1
| #define HAVE_STRUCT_STAT_ST_MTIM_TV_NSEC 1
| #define HAVE_STRUCT_STAT_ST_BLKSIZE 1
| #define HAVE_UINTMAX_T 1
| #define HAVE_UNSIGNED_LONG_LONG 1
| #define HAVE_UNSIGNED_LONG_LONG_INT 1
| #define HAVE_LONG_LONG_INT 1
| #define HAVE_INTMAX_T 1
| #define HAVE_UINTMAX_T 1
| #define HAVE_DECL_SIZE_MAX 1
| #define HAVE_DECL_INT32_MAX 1
| #define HAVE_DECL_INT32_MIN 1
| #define HAVE_DECL_INT64_MAX 1
| #define HAVE_DECL_INT64_MIN 1
| #define HAVE_DECL_UINT64_MAX 1
| #define HAVE_DECL_UINT32_MAX 1
| #define HAVE_DECL_INTMAX_MAX 1
| #define HAVE_DECL_INTMAX_MIN 1
| #define HAVE_DECL_UINTMAX_MAX 1
| #define HAVE_DECL_SSIZE_MAX 1
| #define HAVE_EILSEQ 1
| #define HAVE_WCHAR_T 1
| #define SIZEOF_WCHAR_T 4
| #define SIZEOF_INT 4
| #define SIZEOF_LONG 4
| #define MAJOR_IN_SYSMACROS 1
| #define HAVE_FSEEKO 1
| #define LSTAT_FOLLOWS_SLASHED_SYMLINK 1
| #define HAVE_LSTAT_EMPTY_STRING_BUG 1
| #define HAVE_STAT_EMPTY_STRING_BUG 1
| #define HAVE_DECL_STRERROR_R 1
| #define HAVE_STRERROR_R 1
| #define STRERROR_R_CHAR_P 1
| #define HAVE_STRFTIME 1
| #define HAVE_VPRINTF 1
| #define HAVE_ARC4RANDOM_BUF 1
| #define HAVE_CHOWN 1
| #define HAVE_CHROOT 1
| #define HAVE_CTIME_R 1
| #define HAVE_FCHDIR 1
| #define HAVE_FCHMOD 1
| #define HAVE_FCHOWN 1
| #define HAVE_FCNTL 1
| #define HAVE_FDOPENDIR 1
| #define HAVE_FNMATCH 1
| #define HAVE_FORK 1
| #define HAVE_FSTAT 1
| #define HAVE_FSTATAT 1
| #define HAVE_FSTATFS 1
| #define HAVE_FSTATVFS 1
| #define HAVE_FTRUNCATE 1
| #define HAVE_FUTIMENS 1
| #define HAVE_FUTIMES 1
| #define HAVE_FUTIMESAT 1
| #define HAVE_GETEUID 1
| #define HAVE_GETLINE 1
| #define HAVE_GETPID 1
| #define HAVE_GETGRGID_R 1
| #define HAVE_GETGRNAM_R 1
| #define HAVE_GETPWNAM_R 1
| #define HAVE_GETPWUID_R 1
| #define HAVE_GMTIME_R 1
| #define HAVE_LCHMOD 1
| #define HAVE_LCHOWN 1
| #define HAVE_LINK 1
| #define HAVE_LINKAT 1
| #define HAVE_LOCALTIME_R 1
| #define HAVE_LSTAT 1
| #define HAVE_LUTIMES 1
| #define HAVE_MBRTOWC 1
| #define HAVE_MEMMOVE 1
| #define HAVE_MEMSET 1
| #define HAVE_MKDIR 1
| #define HAVE_MKFIFO 1
| #define HAVE_MKNOD 1
| #define HAVE_MKSTEMP 1
| #define HAVE_NL_LANGINFO 1
| #define HAVE_OPENAT 1
| #define HAVE_PIPE 1
| #define HAVE_POLL 1
| #define HAVE_POSIX_SPAWNP 1
| #define HAVE_READLINK 1
| #define HAVE_READLINKAT 1
| #define HAVE_SELECT 1
| #define HAVE_SETENV 1
| #define HAVE_SETLOCALE 1
| #define HAVE_SIGACTION 1
| #define HAVE_STATFS 1
| #define HAVE_STATVFS 1
| #define HAVE_STRCHR 1
| #define HAVE_STRDUP 1
| #define HAVE_STRERROR 1
| #define HAVE_STRNLEN 1
| #define HAVE_STRRCHR 1
| #define HAVE_SYMLINK 1
| #define HAVE_TIMEGM 1
| #define HAVE_TZSET 1
| #define HAVE_UNLINKAT 1
| #define HAVE_UNSETENV 1
| #define HAVE_UTIME 1
| #define HAVE_UTIMENSAT 1
| #define HAVE_UTIMES 1
| #define HAVE_VFORK 1
| #define HAVE_WCRTOMB 1
| #define HAVE_WCSCMP 1
| #define HAVE_WCSCPY 1
| #define HAVE_WCSLEN 1
| #define HAVE_WCTOMB 1
| #define HAVE_WMEMCMP 1
| #define HAVE_WMEMCPY 1
| #define HAVE_WMEMMOVE 1
| /* end confdefs.h.  */
| #include <time.h>
| 
| int
| main (void)
| {
| if (sizeof (localtime_s))
| 	 return 0;
|   ;
|   return 0;
| }
configure:16364: result: no
configure:16373: checking whether _mkgmtime is declared
configure:16373: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections  -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2  conftest.c >&5
conftest.c: In function 'main':
conftest.c:227:10: error: '_mkgmtime' undeclared (first use in this function); did you mean 'gmtime'?
  227 |   (void) _mkgmtime;
      |          ^~~~~~~~~
      |          gmtime
conftest.c:227:10: note: each undeclared identifier is reported only once for each function it appears in
configure:16373: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "libarchive"
| #define PACKAGE_TARNAME "libarchive"
| #define PACKAGE_VERSION "3.7.2"
| #define PACKAGE_STRING "libarchive 3.7.2"
| #define PACKAGE_BUGREPORT "libarchive-discuss@googlegroups.com"
| #define PACKAGE_URL ""
| #define PACKAGE "libarchive"
| #define VERSION "3.7.2"
| #define __LIBARCHIVE_CONFIG_H_INCLUDED 1
| #define LIBARCHIVE_VERSION_STRING "3.7.2"
| #define LIBARCHIVE_VERSION_NUMBER "3007002"
| #define BSDCPIO_VERSION_STRING "3.7.2"
| #define BSDTAR_VERSION_STRING "3.7.2"
| #define BSDCAT_VERSION_STRING "3.7.2"
| #define BSDUNZIP_VERSION_STRING "3.7.2"
| #define HAVE_STDIO_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_SYS_TIME_H 1
| #define STDC_HEADERS 1
| #define _ALL_SOURCE 1
| #define _DARWIN_C_SOURCE 1
| #define _GNU_SOURCE 1
| #define _HPUX_ALT_XOPEN_SOCKET_API 1
| #define _NETBSD_SOURCE 1
| #define _OPENBSD_SOURCE 1
| #define _POSIX_PTHREAD_SEMANTICS 1
| #define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1
| #define __STDC_WANT_IEC_60559_BFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_DFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1
| #define __STDC_WANT_IEC_60559_TYPES_EXT__ 1
| #define __STDC_WANT_LIB_EXT2__ 1
| #define __STDC_WANT_MATH_SPEC_FUNCS__ 1
| #define _TANDEM_SOURCE 1
| #define __EXTENSIONS__ 1
| #define HAVE_DLFCN_H 1
| #define LT_OBJDIR ".libs/"
| #define HAVE_DIRENT_H 1
| #define HAVE_SYS_WAIT_H 1
| #define HAVE_CTYPE_H 1
| #define HAVE_ERRNO_H 1
| #define HAVE_FCNTL_H 1
| #define HAVE_FNMATCH_H 1
| #define HAVE_GRP_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_LANGINFO_H 1
| #define HAVE_LIMITS_H 1
| #define HAVE_LINUX_FIEMAP_H 1
| #define HAVE_LINUX_FS_H 1
| #define HAVE_LINUX_MAGIC_H 1
| #define HAVE_LINUX_TYPES_H 1
| #define HAVE_WORKING_FS_IOC_GETFLAGS 1
| #define HAVE_LOCALE_H 1
| #define HAVE_PATHS_H 1
| #define HAVE_POLL_H 1
| #define HAVE_PTHREAD_H 1
| #define HAVE_PWD_H 1
| #define HAVE_SIGNAL_H 1
| #define HAVE_SPAWN_H 1
| #define HAVE_STDARG_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_SYS_CDEFS_H 1
| #define HAVE_SYS_IOCTL_H 1
| #define HAVE_SYS_MOUNT_H 1
| #define HAVE_SYS_QUEUE_H 1
| #define HAVE_SYS_PARAM_H 1
| #define HAVE_SYS_POLL_H 1
| #define HAVE_SYS_SELECT_H 1
| #define HAVE_SYS_STATFS_H 1
| #define HAVE_SYS_STATVFS_H 1
| #define HAVE_SYS_SYSMACROS_H 1
| #define HAVE_SYS_TIME_H 1
| #define HAVE_SYS_UTSNAME_H 1
| #define HAVE_SYS_VFS_H 1
| #define HAVE_SYS_XATTR_H 1
| #define HAVE_TIME_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_UTIME_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_WCTYPE_H 1
| #define HAVE_ZLIB_H 1
| #define HAVE_LIBZ 1
| #define HAVE_ICONV 1
| #define ICONV_CONST 
| #define HAVE_ICONV_H 1
| #define HAVE_LZ4_H 1
| #define HAVE_LZ4HC_H 1
| #define HAVE_LIBLZ4 1
| #define HAVE_ZSTD_H 1
| #define HAVE_LIBZSTD 1
| #define HAVE_LIBZSTD_COMPRESSOR 1
| #define HAVE_LIBXML_XMLREADER_H 1
| #define HAVE_LIBXML_XMLWRITER_H 1
| #define HAVE_REGEX_H 1
| #define HAVE_STRUCT_TM_TM_GMTOFF 1
| #define HAVE_STRUCT_STAT_ST_MTIM_TV_NSEC 1
| #define HAVE_STRUCT_STAT_ST_BLKSIZE 1
| #define HAVE_UINTMAX_T 1
| #define HAVE_UNSIGNED_LONG_LONG 1
| #define HAVE_UNSIGNED_LONG_LONG_INT 1
| #define HAVE_LONG_LONG_INT 1
| #define HAVE_INTMAX_T 1
| #define HAVE_UINTMAX_T 1
| #define HAVE_DECL_SIZE_MAX 1
| #define HAVE_DECL_INT32_MAX 1
| #define HAVE_DECL_INT32_MIN 1
| #define HAVE_DECL_INT64_MAX 1
| #define HAVE_DECL_INT64_MIN 1
| #define HAVE_DECL_UINT64_MAX 1
| #define HAVE_DECL_UINT32_MAX 1
| #define HAVE_DECL_INTMAX_MAX 1
| #define HAVE_DECL_INTMAX_MIN 1
| #define HAVE_DECL_UINTMAX_MAX 1
| #define HAVE_DECL_SSIZE_MAX 1
| #define HAVE_EILSEQ 1
| #define HAVE_WCHAR_T 1
| #define SIZEOF_WCHAR_T 4
| #define SIZEOF_INT 4
| #define SIZEOF_LONG 4
| #define MAJOR_IN_SYSMACROS 1
| #define HAVE_FSEEKO 1
| #define LSTAT_FOLLOWS_SLASHED_SYMLINK 1
| #define HAVE_LSTAT_EMPTY_STRING_BUG 1
| #define HAVE_STAT_EMPTY_STRING_BUG 1
| #define HAVE_DECL_STRERROR_R 1
| #define HAVE_STRERROR_R 1
| #define STRERROR_R_CHAR_P 1
| #define HAVE_STRFTIME 1
| #define HAVE_VPRINTF 1
| #define HAVE_ARC4RANDOM_BUF 1
| #define HAVE_CHOWN 1
| #define HAVE_CHROOT 1
| #define HAVE_CTIME_R 1
| #define HAVE_FCHDIR 1
| #define HAVE_FCHMOD 1
| #define HAVE_FCHOWN 1
| #define HAVE_FCNTL 1
| #define HAVE_FDOPENDIR 1
| #define HAVE_FNMATCH 1
| #define HAVE_FORK 1
| #define HAVE_FSTAT 1
| #define HAVE_FSTATAT 1
| #define HAVE_FSTATFS 1
| #define HAVE_FSTATVFS 1
| #define HAVE_FTRUNCATE 1
| #define HAVE_FUTIMENS 1
| #define HAVE_FUTIMES 1
| #define HAVE_FUTIMESAT 1
| #define HAVE_GETEUID 1
| #define HAVE_GETLINE 1
| #define HAVE_GETPID 1
| #define HAVE_GETGRGID_R 1
| #define HAVE_GETGRNAM_R 1
| #define HAVE_GETPWNAM_R 1
| #define HAVE_GETPWUID_R 1
| #define HAVE_GMTIME_R 1
| #define HAVE_LCHMOD 1
| #define HAVE_LCHOWN 1
| #define HAVE_LINK 1
| #define HAVE_LINKAT 1
| #define HAVE_LOCALTIME_R 1
| #define HAVE_LSTAT 1
| #define HAVE_LUTIMES 1
| #define HAVE_MBRTOWC 1
| #define HAVE_MEMMOVE 1
| #define HAVE_MEMSET 1
| #define HAVE_MKDIR 1
| #define HAVE_MKFIFO 1
| #define HAVE_MKNOD 1
| #define HAVE_MKSTEMP 1
| #define HAVE_NL_LANGINFO 1
| #define HAVE_OPENAT 1
| #define HAVE_PIPE 1
| #define HAVE_POLL 1
| #define HAVE_POSIX_SPAWNP 1
| #define HAVE_READLINK 1
| #define HAVE_READLINKAT 1
| #define HAVE_SELECT 1
| #define HAVE_SETENV 1
| #define HAVE_SETLOCALE 1
| #define HAVE_SIGACTION 1
| #define HAVE_STATFS 1
| #define HAVE_STATVFS 1
| #define HAVE_STRCHR 1
| #define HAVE_STRDUP 1
| #define HAVE_STRERROR 1
| #define HAVE_STRNLEN 1
| #define HAVE_STRRCHR 1
| #define HAVE_SYMLINK 1
| #define HAVE_TIMEGM 1
| #define HAVE_TZSET 1
| #define HAVE_UNLINKAT 1
| #define HAVE_UNSETENV 1
| #define HAVE_UTIME 1
| #define HAVE_UTIMENSAT 1
| #define HAVE_UTIMES 1
| #define HAVE_VFORK 1
| #define HAVE_WCRTOMB 1
| #define HAVE_WCSCMP 1
| #define HAVE_WCSCPY 1
| #define HAVE_WCSLEN 1
| #define HAVE_WCTOMB 1
| #define HAVE_WMEMCMP 1
| #define HAVE_WMEMCPY 1
| #define HAVE_WMEMMOVE 1
| /* end confdefs.h.  */
| #include <time.h>
| 
| int
| main (void)
| {
| #ifndef _mkgmtime
| #ifdef __cplusplus
|   (void) _mkgmtime;
| #else
|   (void) _mkgmtime;
| #endif
| #endif
| 
|   ;
|   return 0;
| }
configure:16373: result: no
configure:16383: checking for cygwin_conv_path
configure:16383: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -o conftest -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2   conftest.c -lzstd -llz4 -lz  -L/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/lib -lxml2  >&5
/home/thomas/autobuild/instance-1/output-1/host/lib/gcc/nios2-buildroot-linux-gnu/13.2.0/../../../../nios2-buildroot-linux-gnu/bin/ld: /tmp/ccT3xoCE.o: in function `main':
conftest.c:(.text.startup.main+0x8): undefined reference to `cygwin_conv_path'
collect2: error: ld returned 1 exit status
configure:16383: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "libarchive"
| #define PACKAGE_TARNAME "libarchive"
| #define PACKAGE_VERSION "3.7.2"
| #define PACKAGE_STRING "libarchive 3.7.2"
| #define PACKAGE_BUGREPORT "libarchive-discuss@googlegroups.com"
| #define PACKAGE_URL ""
| #define PACKAGE "libarchive"
| #define VERSION "3.7.2"
| #define __LIBARCHIVE_CONFIG_H_INCLUDED 1
| #define LIBARCHIVE_VERSION_STRING "3.7.2"
| #define LIBARCHIVE_VERSION_NUMBER "3007002"
| #define BSDCPIO_VERSION_STRING "3.7.2"
| #define BSDTAR_VERSION_STRING "3.7.2"
| #define BSDCAT_VERSION_STRING "3.7.2"
| #define BSDUNZIP_VERSION_STRING "3.7.2"
| #define HAVE_STDIO_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_SYS_TIME_H 1
| #define STDC_HEADERS 1
| #define _ALL_SOURCE 1
| #define _DARWIN_C_SOURCE 1
| #define _GNU_SOURCE 1
| #define _HPUX_ALT_XOPEN_SOCKET_API 1
| #define _NETBSD_SOURCE 1
| #define _OPENBSD_SOURCE 1
| #define _POSIX_PTHREAD_SEMANTICS 1
| #define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1
| #define __STDC_WANT_IEC_60559_BFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_DFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1
| #define __STDC_WANT_IEC_60559_TYPES_EXT__ 1
| #define __STDC_WANT_LIB_EXT2__ 1
| #define __STDC_WANT_MATH_SPEC_FUNCS__ 1
| #define _TANDEM_SOURCE 1
| #define __EXTENSIONS__ 1
| #define HAVE_DLFCN_H 1
| #define LT_OBJDIR ".libs/"
| #define HAVE_DIRENT_H 1
| #define HAVE_SYS_WAIT_H 1
| #define HAVE_CTYPE_H 1
| #define HAVE_ERRNO_H 1
| #define HAVE_FCNTL_H 1
| #define HAVE_FNMATCH_H 1
| #define HAVE_GRP_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_LANGINFO_H 1
| #define HAVE_LIMITS_H 1
| #define HAVE_LINUX_FIEMAP_H 1
| #define HAVE_LINUX_FS_H 1
| #define HAVE_LINUX_MAGIC_H 1
| #define HAVE_LINUX_TYPES_H 1
| #define HAVE_WORKING_FS_IOC_GETFLAGS 1
| #define HAVE_LOCALE_H 1
| #define HAVE_PATHS_H 1
| #define HAVE_POLL_H 1
| #define HAVE_PTHREAD_H 1
| #define HAVE_PWD_H 1
| #define HAVE_SIGNAL_H 1
| #define HAVE_SPAWN_H 1
| #define HAVE_STDARG_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_SYS_CDEFS_H 1
| #define HAVE_SYS_IOCTL_H 1
| #define HAVE_SYS_MOUNT_H 1
| #define HAVE_SYS_QUEUE_H 1
| #define HAVE_SYS_PARAM_H 1
| #define HAVE_SYS_POLL_H 1
| #define HAVE_SYS_SELECT_H 1
| #define HAVE_SYS_STATFS_H 1
| #define HAVE_SYS_STATVFS_H 1
| #define HAVE_SYS_SYSMACROS_H 1
| #define HAVE_SYS_TIME_H 1
| #define HAVE_SYS_UTSNAME_H 1
| #define HAVE_SYS_VFS_H 1
| #define HAVE_SYS_XATTR_H 1
| #define HAVE_TIME_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_UTIME_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_WCTYPE_H 1
| #define HAVE_ZLIB_H 1
| #define HAVE_LIBZ 1
| #define HAVE_ICONV 1
| #define ICONV_CONST 
| #define HAVE_ICONV_H 1
| #define HAVE_LZ4_H 1
| #define HAVE_LZ4HC_H 1
| #define HAVE_LIBLZ4 1
| #define HAVE_ZSTD_H 1
| #define HAVE_LIBZSTD 1
| #define HAVE_LIBZSTD_COMPRESSOR 1
| #define HAVE_LIBXML_XMLREADER_H 1
| #define HAVE_LIBXML_XMLWRITER_H 1
| #define HAVE_REGEX_H 1
| #define HAVE_STRUCT_TM_TM_GMTOFF 1
| #define HAVE_STRUCT_STAT_ST_MTIM_TV_NSEC 1
| #define HAVE_STRUCT_STAT_ST_BLKSIZE 1
| #define HAVE_UINTMAX_T 1
| #define HAVE_UNSIGNED_LONG_LONG 1
| #define HAVE_UNSIGNED_LONG_LONG_INT 1
| #define HAVE_LONG_LONG_INT 1
| #define HAVE_INTMAX_T 1
| #define HAVE_UINTMAX_T 1
| #define HAVE_DECL_SIZE_MAX 1
| #define HAVE_DECL_INT32_MAX 1
| #define HAVE_DECL_INT32_MIN 1
| #define HAVE_DECL_INT64_MAX 1
| #define HAVE_DECL_INT64_MIN 1
| #define HAVE_DECL_UINT64_MAX 1
| #define HAVE_DECL_UINT32_MAX 1
| #define HAVE_DECL_INTMAX_MAX 1
| #define HAVE_DECL_INTMAX_MIN 1
| #define HAVE_DECL_UINTMAX_MAX 1
| #define HAVE_DECL_SSIZE_MAX 1
| #define HAVE_EILSEQ 1
| #define HAVE_WCHAR_T 1
| #define SIZEOF_WCHAR_T 4
| #define SIZEOF_INT 4
| #define SIZEOF_LONG 4
| #define MAJOR_IN_SYSMACROS 1
| #define HAVE_FSEEKO 1
| #define LSTAT_FOLLOWS_SLASHED_SYMLINK 1
| #define HAVE_LSTAT_EMPTY_STRING_BUG 1
| #define HAVE_STAT_EMPTY_STRING_BUG 1
| #define HAVE_DECL_STRERROR_R 1
| #define HAVE_STRERROR_R 1
| #define STRERROR_R_CHAR_P 1
| #define HAVE_STRFTIME 1
| #define HAVE_VPRINTF 1
| #define HAVE_ARC4RANDOM_BUF 1
| #define HAVE_CHOWN 1
| #define HAVE_CHROOT 1
| #define HAVE_CTIME_R 1
| #define HAVE_FCHDIR 1
| #define HAVE_FCHMOD 1
| #define HAVE_FCHOWN 1
| #define HAVE_FCNTL 1
| #define HAVE_FDOPENDIR 1
| #define HAVE_FNMATCH 1
| #define HAVE_FORK 1
| #define HAVE_FSTAT 1
| #define HAVE_FSTATAT 1
| #define HAVE_FSTATFS 1
| #define HAVE_FSTATVFS 1
| #define HAVE_FTRUNCATE 1
| #define HAVE_FUTIMENS 1
| #define HAVE_FUTIMES 1
| #define HAVE_FUTIMESAT 1
| #define HAVE_GETEUID 1
| #define HAVE_GETLINE 1
| #define HAVE_GETPID 1
| #define HAVE_GETGRGID_R 1
| #define HAVE_GETGRNAM_R 1
| #define HAVE_GETPWNAM_R 1
| #define HAVE_GETPWUID_R 1
| #define HAVE_GMTIME_R 1
| #define HAVE_LCHMOD 1
| #define HAVE_LCHOWN 1
| #define HAVE_LINK 1
| #define HAVE_LINKAT 1
| #define HAVE_LOCALTIME_R 1
| #define HAVE_LSTAT 1
| #define HAVE_LUTIMES 1
| #define HAVE_MBRTOWC 1
| #define HAVE_MEMMOVE 1
| #define HAVE_MEMSET 1
| #define HAVE_MKDIR 1
| #define HAVE_MKFIFO 1
| #define HAVE_MKNOD 1
| #define HAVE_MKSTEMP 1
| #define HAVE_NL_LANGINFO 1
| #define HAVE_OPENAT 1
| #define HAVE_PIPE 1
| #define HAVE_POLL 1
| #define HAVE_POSIX_SPAWNP 1
| #define HAVE_READLINK 1
| #define HAVE_READLINKAT 1
| #define HAVE_SELECT 1
| #define HAVE_SETENV 1
| #define HAVE_SETLOCALE 1
| #define HAVE_SIGACTION 1
| #define HAVE_STATFS 1
| #define HAVE_STATVFS 1
| #define HAVE_STRCHR 1
| #define HAVE_STRDUP 1
| #define HAVE_STRERROR 1
| #define HAVE_STRNLEN 1
| #define HAVE_STRRCHR 1
| #define HAVE_SYMLINK 1
| #define HAVE_TIMEGM 1
| #define HAVE_TZSET 1
| #define HAVE_UNLINKAT 1
| #define HAVE_UNSETENV 1
| #define HAVE_UTIME 1
| #define HAVE_UTIMENSAT 1
| #define HAVE_UTIMES 1
| #define HAVE_VFORK 1
| #define HAVE_WCRTOMB 1
| #define HAVE_WCSCMP 1
| #define HAVE_WCSCPY 1
| #define HAVE_WCSLEN 1
| #define HAVE_WCTOMB 1
| #define HAVE_WMEMCMP 1
| #define HAVE_WMEMCPY 1
| #define HAVE_WMEMMOVE 1
| /* end confdefs.h.  */
| /* Define cygwin_conv_path to an innocuous variant, in case <limits.h> declares cygwin_conv_path.
|    For example, HP-UX 11i <limits.h> declares gettimeofday.  */
| #define cygwin_conv_path innocuous_cygwin_conv_path
| 
| /* System header to define __stub macros and hopefully few prototypes,
|    which can conflict with char cygwin_conv_path (); below.  */
| 
| #include <limits.h>
| #undef cygwin_conv_path
| 
| /* Override any GCC internal prototype to avoid an error.
|    Use char because int might match the return type of a GCC
|    builtin and then its argument prototype would still apply.  */
| #ifdef __cplusplus
| extern "C"
| #endif
| char cygwin_conv_path ();
| /* The GNU C library defines this for functions which it implements
|     to always fail with ENOSYS.  Some functions are actually named
|     something starting with __ and the normal name is an alias.  */
| #if defined __stub_cygwin_conv_path || defined __stub___cygwin_conv_path
| choke me
| #endif
| 
| int
| main (void)
| {
| return cygwin_conv_path ();
|   ;
|   return 0;
| }
configure:16383: result: no
configure:16392: checking for struct vfsconf
configure:16392: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2  conftest.c >&5
conftest.c: In function 'main':
conftest.c:227:13: error: invalid application of 'sizeof' to incomplete type 'struct vfsconf'
  227 | if (sizeof (struct vfsconf))
      |             ^~~~~~
configure:16392: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "libarchive"
| #define PACKAGE_TARNAME "libarchive"
| #define PACKAGE_VERSION "3.7.2"
| #define PACKAGE_STRING "libarchive 3.7.2"
| #define PACKAGE_BUGREPORT "libarchive-discuss@googlegroups.com"
| #define PACKAGE_URL ""
| #define PACKAGE "libarchive"
| #define VERSION "3.7.2"
| #define __LIBARCHIVE_CONFIG_H_INCLUDED 1
| #define LIBARCHIVE_VERSION_STRING "3.7.2"
| #define LIBARCHIVE_VERSION_NUMBER "3007002"
| #define BSDCPIO_VERSION_STRING "3.7.2"
| #define BSDTAR_VERSION_STRING "3.7.2"
| #define BSDCAT_VERSION_STRING "3.7.2"
| #define BSDUNZIP_VERSION_STRING "3.7.2"
| #define HAVE_STDIO_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_SYS_TIME_H 1
| #define STDC_HEADERS 1
| #define _ALL_SOURCE 1
| #define _DARWIN_C_SOURCE 1
| #define _GNU_SOURCE 1
| #define _HPUX_ALT_XOPEN_SOCKET_API 1
| #define _NETBSD_SOURCE 1
| #define _OPENBSD_SOURCE 1
| #define _POSIX_PTHREAD_SEMANTICS 1
| #define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1
| #define __STDC_WANT_IEC_60559_BFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_DFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1
| #define __STDC_WANT_IEC_60559_TYPES_EXT__ 1
| #define __STDC_WANT_LIB_EXT2__ 1
| #define __STDC_WANT_MATH_SPEC_FUNCS__ 1
| #define _TANDEM_SOURCE 1
| #define __EXTENSIONS__ 1
| #define HAVE_DLFCN_H 1
| #define LT_OBJDIR ".libs/"
| #define HAVE_DIRENT_H 1
| #define HAVE_SYS_WAIT_H 1
| #define HAVE_CTYPE_H 1
| #define HAVE_ERRNO_H 1
| #define HAVE_FCNTL_H 1
| #define HAVE_FNMATCH_H 1
| #define HAVE_GRP_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_LANGINFO_H 1
| #define HAVE_LIMITS_H 1
| #define HAVE_LINUX_FIEMAP_H 1
| #define HAVE_LINUX_FS_H 1
| #define HAVE_LINUX_MAGIC_H 1
| #define HAVE_LINUX_TYPES_H 1
| #define HAVE_WORKING_FS_IOC_GETFLAGS 1
| #define HAVE_LOCALE_H 1
| #define HAVE_PATHS_H 1
| #define HAVE_POLL_H 1
| #define HAVE_PTHREAD_H 1
| #define HAVE_PWD_H 1
| #define HAVE_SIGNAL_H 1
| #define HAVE_SPAWN_H 1
| #define HAVE_STDARG_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_SYS_CDEFS_H 1
| #define HAVE_SYS_IOCTL_H 1
| #define HAVE_SYS_MOUNT_H 1
| #define HAVE_SYS_QUEUE_H 1
| #define HAVE_SYS_PARAM_H 1
| #define HAVE_SYS_POLL_H 1
| #define HAVE_SYS_SELECT_H 1
| #define HAVE_SYS_STATFS_H 1
| #define HAVE_SYS_STATVFS_H 1
| #define HAVE_SYS_SYSMACROS_H 1
| #define HAVE_SYS_TIME_H 1
| #define HAVE_SYS_UTSNAME_H 1
| #define HAVE_SYS_VFS_H 1
| #define HAVE_SYS_XATTR_H 1
| #define HAVE_TIME_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_UTIME_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_WCTYPE_H 1
| #define HAVE_ZLIB_H 1
| #define HAVE_LIBZ 1
| #define HAVE_ICONV 1
| #define ICONV_CONST 
| #define HAVE_ICONV_H 1
| #define HAVE_LZ4_H 1
| #define HAVE_LZ4HC_H 1
| #define HAVE_LIBLZ4 1
| #define HAVE_ZSTD_H 1
| #define HAVE_LIBZSTD 1
| #define HAVE_LIBZSTD_COMPRESSOR 1
| #define HAVE_LIBXML_XMLREADER_H 1
| #define HAVE_LIBXML_XMLWRITER_H 1
| #define HAVE_REGEX_H 1
| #define HAVE_STRUCT_TM_TM_GMTOFF 1
| #define HAVE_STRUCT_STAT_ST_MTIM_TV_NSEC 1
| #define HAVE_STRUCT_STAT_ST_BLKSIZE 1
| #define HAVE_UINTMAX_T 1
| #define HAVE_UNSIGNED_LONG_LONG 1
| #define HAVE_UNSIGNED_LONG_LONG_INT 1
| #define HAVE_LONG_LONG_INT 1
| #define HAVE_INTMAX_T 1
| #define HAVE_UINTMAX_T 1
| #define HAVE_DECL_SIZE_MAX 1
| #define HAVE_DECL_INT32_MAX 1
| #define HAVE_DECL_INT32_MIN 1
| #define HAVE_DECL_INT64_MAX 1
| #define HAVE_DECL_INT64_MIN 1
| #define HAVE_DECL_UINT64_MAX 1
| #define HAVE_DECL_UINT32_MAX 1
| #define HAVE_DECL_INTMAX_MAX 1
| #define HAVE_DECL_INTMAX_MIN 1
| #define HAVE_DECL_UINTMAX_MAX 1
| #define HAVE_DECL_SSIZE_MAX 1
| #define HAVE_EILSEQ 1
| #define HAVE_WCHAR_T 1
| #define SIZEOF_WCHAR_T 4
| #define SIZEOF_INT 4
| #define SIZEOF_LONG 4
| #define MAJOR_IN_SYSMACROS 1
| #define HAVE_FSEEKO 1
| #define LSTAT_FOLLOWS_SLASHED_SYMLINK 1
| #define HAVE_LSTAT_EMPTY_STRING_BUG 1
| #define HAVE_STAT_EMPTY_STRING_BUG 1
| #define HAVE_DECL_STRERROR_R 1
| #define HAVE_STRERROR_R 1
| #define STRERROR_R_CHAR_P 1
| #define HAVE_STRFTIME 1
| #define HAVE_VPRINTF 1
| #define HAVE_ARC4RANDOM_BUF 1
| #define HAVE_CHOWN 1
| #define HAVE_CHROOT 1
| #define HAVE_CTIME_R 1
| #define HAVE_FCHDIR 1
| #define HAVE_FCHMOD 1
| #define HAVE_FCHOWN 1
| #define HAVE_FCNTL 1
| #define HAVE_FDOPENDIR 1
| #define HAVE_FNMATCH 1
| #define HAVE_FORK 1
| #define HAVE_FSTAT 1
| #define HAVE_FSTATAT 1
| #define HAVE_FSTATFS 1
| #define HAVE_FSTATVFS 1
| #define HAVE_FTRUNCATE 1
| #define HAVE_FUTIMENS 1
| #define HAVE_FUTIMES 1
| #define HAVE_FUTIMESAT 1
| #define HAVE_GETEUID 1
| #define HAVE_GETLINE 1
| #define HAVE_GETPID 1
| #define HAVE_GETGRGID_R 1
| #define HAVE_GETGRNAM_R 1
| #define HAVE_GETPWNAM_R 1
| #define HAVE_GETPWUID_R 1
| #define HAVE_GMTIME_R 1
| #define HAVE_LCHMOD 1
| #define HAVE_LCHOWN 1
| #define HAVE_LINK 1
| #define HAVE_LINKAT 1
| #define HAVE_LOCALTIME_R 1
| #define HAVE_LSTAT 1
| #define HAVE_LUTIMES 1
| #define HAVE_MBRTOWC 1
| #define HAVE_MEMMOVE 1
| #define HAVE_MEMSET 1
| #define HAVE_MKDIR 1
| #define HAVE_MKFIFO 1
| #define HAVE_MKNOD 1
| #define HAVE_MKSTEMP 1
| #define HAVE_NL_LANGINFO 1
| #define HAVE_OPENAT 1
| #define HAVE_PIPE 1
| #define HAVE_POLL 1
| #define HAVE_POSIX_SPAWNP 1
| #define HAVE_READLINK 1
| #define HAVE_READLINKAT 1
| #define HAVE_SELECT 1
| #define HAVE_SETENV 1
| #define HAVE_SETLOCALE 1
| #define HAVE_SIGACTION 1
| #define HAVE_STATFS 1
| #define HAVE_STATVFS 1
| #define HAVE_STRCHR 1
| #define HAVE_STRDUP 1
| #define HAVE_STRERROR 1
| #define HAVE_STRNLEN 1
| #define HAVE_STRRCHR 1
| #define HAVE_SYMLINK 1
| #define HAVE_TIMEGM 1
| #define HAVE_TZSET 1
| #define HAVE_UNLINKAT 1
| #define HAVE_UNSETENV 1
| #define HAVE_UTIME 1
| #define HAVE_UTIMENSAT 1
| #define HAVE_UTIMES 1
| #define HAVE_VFORK 1
| #define HAVE_WCRTOMB 1
| #define HAVE_WCSCMP 1
| #define HAVE_WCSCPY 1
| #define HAVE_WCSLEN 1
| #define HAVE_WCTOMB 1
| #define HAVE_WMEMCMP 1
| #define HAVE_WMEMCPY 1
| #define HAVE_WMEMMOVE 1
| /* end confdefs.h.  */
| #if HAVE_SYS_TYPES_H
| 	#include <sys/types.h>
| 	#endif
| 	#include <sys/mount.h>
| 
| 
| int
| main (void)
| {
| if (sizeof (struct vfsconf))
| 	 return 0;
|   ;
|   return 0;
| }
configure:16392: result: no
configure:16407: checking for struct xvfsconf
configure:16407: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2  conftest.c >&5
conftest.c: In function 'main':
conftest.c:227:13: error: invalid application of 'sizeof' to incomplete type 'struct xvfsconf'
  227 | if (sizeof (struct xvfsconf))
      |             ^~~~~~
configure:16407: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "libarchive"
| #define PACKAGE_TARNAME "libarchive"
| #define PACKAGE_VERSION "3.7.2"
| #define PACKAGE_STRING "libarchive 3.7.2"
| #define PACKAGE_BUGREPORT "libarchive-discuss@googlegroups.com"
| #define PACKAGE_URL ""
| #define PACKAGE "libarchive"
| #define VERSION "3.7.2"
| #define __LIBARCHIVE_CONFIG_H_INCLUDED 1
| #define LIBARCHIVE_VERSION_STRING "3.7.2"
| #define LIBARCHIVE_VERSION_NUMBER "3007002"
| #define BSDCPIO_VERSION_STRING "3.7.2"
| #define BSDTAR_VERSION_STRING "3.7.2"
| #define BSDCAT_VERSION_STRING "3.7.2"
| #define BSDUNZIP_VERSION_STRING "3.7.2"
| #define HAVE_STDIO_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_SYS_TIME_H 1
| #define STDC_HEADERS 1
| #define _ALL_SOURCE 1
| #define _DARWIN_C_SOURCE 1
| #define _GNU_SOURCE 1
| #define _HPUX_ALT_XOPEN_SOCKET_API 1
| #define _NETBSD_SOURCE 1
| #define _OPENBSD_SOURCE 1
| #define _POSIX_PTHREAD_SEMANTICS 1
| #define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1
| #define __STDC_WANT_IEC_60559_BFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_DFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1
| #define __STDC_WANT_IEC_60559_TYPES_EXT__ 1
| #define __STDC_WANT_LIB_EXT2__ 1
| #define __STDC_WANT_MATH_SPEC_FUNCS__ 1
| #define _TANDEM_SOURCE 1
| #define __EXTENSIONS__ 1
| #define HAVE_DLFCN_H 1
| #define LT_OBJDIR ".libs/"
| #define HAVE_DIRENT_H 1
| #define HAVE_SYS_WAIT_H 1
| #define HAVE_CTYPE_H 1
| #define HAVE_ERRNO_H 1
| #define HAVE_FCNTL_H 1
| #define HAVE_FNMATCH_H 1
| #define HAVE_GRP_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_LANGINFO_H 1
| #define HAVE_LIMITS_H 1
| #define HAVE_LINUX_FIEMAP_H 1
| #define HAVE_LINUX_FS_H 1
| #define HAVE_LINUX_MAGIC_H 1
| #define HAVE_LINUX_TYPES_H 1
| #define HAVE_WORKING_FS_IOC_GETFLAGS 1
| #define HAVE_LOCALE_H 1
| #define HAVE_PATHS_H 1
| #define HAVE_POLL_H 1
| #define HAVE_PTHREAD_H 1
| #define HAVE_PWD_H 1
| #define HAVE_SIGNAL_H 1
| #define HAVE_SPAWN_H 1
| #define HAVE_STDARG_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_SYS_CDEFS_H 1
| #define HAVE_SYS_IOCTL_H 1
| #define HAVE_SYS_MOUNT_H 1
| #define HAVE_SYS_QUEUE_H 1
| #define HAVE_SYS_PARAM_H 1
| #define HAVE_SYS_POLL_H 1
| #define HAVE_SYS_SELECT_H 1
| #define HAVE_SYS_STATFS_H 1
| #define HAVE_SYS_STATVFS_H 1
| #define HAVE_SYS_SYSMACROS_H 1
| #define HAVE_SYS_TIME_H 1
| #define HAVE_SYS_UTSNAME_H 1
| #define HAVE_SYS_VFS_H 1
| #define HAVE_SYS_XATTR_H 1
| #define HAVE_TIME_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_UTIME_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_WCTYPE_H 1
| #define HAVE_ZLIB_H 1
| #define HAVE_LIBZ 1
| #define HAVE_ICONV 1
| #define ICONV_CONST 
| #define HAVE_ICONV_H 1
| #define HAVE_LZ4_H 1
| #define HAVE_LZ4HC_H 1
| #define HAVE_LIBLZ4 1
| #define HAVE_ZSTD_H 1
| #define HAVE_LIBZSTD 1
| #define HAVE_LIBZSTD_COMPRESSOR 1
| #define HAVE_LIBXML_XMLREADER_H 1
| #define HAVE_LIBXML_XMLWRITER_H 1
| #define HAVE_REGEX_H 1
| #define HAVE_STRUCT_TM_TM_GMTOFF 1
| #define HAVE_STRUCT_STAT_ST_MTIM_TV_NSEC 1
| #define HAVE_STRUCT_STAT_ST_BLKSIZE 1
| #define HAVE_UINTMAX_T 1
| #define HAVE_UNSIGNED_LONG_LONG 1
| #define HAVE_UNSIGNED_LONG_LONG_INT 1
| #define HAVE_LONG_LONG_INT 1
| #define HAVE_INTMAX_T 1
| #define HAVE_UINTMAX_T 1
| #define HAVE_DECL_SIZE_MAX 1
| #define HAVE_DECL_INT32_MAX 1
| #define HAVE_DECL_INT32_MIN 1
| #define HAVE_DECL_INT64_MAX 1
| #define HAVE_DECL_INT64_MIN 1
| #define HAVE_DECL_UINT64_MAX 1
| #define HAVE_DECL_UINT32_MAX 1
| #define HAVE_DECL_INTMAX_MAX 1
| #define HAVE_DECL_INTMAX_MIN 1
| #define HAVE_DECL_UINTMAX_MAX 1
| #define HAVE_DECL_SSIZE_MAX 1
| #define HAVE_EILSEQ 1
| #define HAVE_WCHAR_T 1
| #define SIZEOF_WCHAR_T 4
| #define SIZEOF_INT 4
| #define SIZEOF_LONG 4
| #define MAJOR_IN_SYSMACROS 1
| #define HAVE_FSEEKO 1
| #define LSTAT_FOLLOWS_SLASHED_SYMLINK 1
| #define HAVE_LSTAT_EMPTY_STRING_BUG 1
| #define HAVE_STAT_EMPTY_STRING_BUG 1
| #define HAVE_DECL_STRERROR_R 1
| #define HAVE_STRERROR_R 1
| #define STRERROR_R_CHAR_P 1
| #define HAVE_STRFTIME 1
| #define HAVE_VPRINTF 1
| #define HAVE_ARC4RANDOM_BUF 1
| #define HAVE_CHOWN 1
| #define HAVE_CHROOT 1
| #define HAVE_CTIME_R 1
| #define HAVE_FCHDIR 1
| #define HAVE_FCHMOD 1
| #define HAVE_FCHOWN 1
| #define HAVE_FCNTL 1
| #define HAVE_FDOPENDIR 1
| #define HAVE_FNMATCH 1
| #define HAVE_FORK 1
| #define HAVE_FSTAT 1
| #define HAVE_FSTATAT 1
| #define HAVE_FSTATFS 1
| #define HAVE_FSTATVFS 1
| #define HAVE_FTRUNCATE 1
| #define HAVE_FUTIMENS 1
| #define HAVE_FUTIMES 1
| #define HAVE_FUTIMESAT 1
| #define HAVE_GETEUID 1
| #define HAVE_GETLINE 1
| #define HAVE_GETPID 1
| #define HAVE_GETGRGID_R 1
| #define HAVE_GETGRNAM_R 1
| #define HAVE_GETPWNAM_R 1
| #define HAVE_GETPWUID_R 1
| #define HAVE_GMTIME_R 1
| #define HAVE_LCHMOD 1
| #define HAVE_LCHOWN 1
| #define HAVE_LINK 1
| #define HAVE_LINKAT 1
| #define HAVE_LOCALTIME_R 1
| #define HAVE_LSTAT 1
| #define HAVE_LUTIMES 1
| #define HAVE_MBRTOWC 1
| #define HAVE_MEMMOVE 1
| #define HAVE_MEMSET 1
| #define HAVE_MKDIR 1
| #define HAVE_MKFIFO 1
| #define HAVE_MKNOD 1
| #define HAVE_MKSTEMP 1
| #define HAVE_NL_LANGINFO 1
| #define HAVE_OPENAT 1
| #define HAVE_PIPE 1
| #define HAVE_POLL 1
| #define HAVE_POSIX_SPAWNP 1
| #define HAVE_READLINK 1
| #define HAVE_READLINKAT 1
| #define HAVE_SELECT 1
| #define HAVE_SETENV 1
| #define HAVE_SETLOCALE 1
| #define HAVE_SIGACTION 1
| #define HAVE_STATFS 1
| #define HAVE_STATVFS 1
| #define HAVE_STRCHR 1
| #define HAVE_STRDUP 1
| #define HAVE_STRERROR 1
| #define HAVE_STRNLEN 1
| #define HAVE_STRRCHR 1
| #define HAVE_SYMLINK 1
| #define HAVE_TIMEGM 1
| #define HAVE_TZSET 1
| #define HAVE_UNLINKAT 1
| #define HAVE_UNSETENV 1
| #define HAVE_UTIME 1
| #define HAVE_UTIMENSAT 1
| #define HAVE_UTIMES 1
| #define HAVE_VFORK 1
| #define HAVE_WCRTOMB 1
| #define HAVE_WCSCMP 1
| #define HAVE_WCSCPY 1
| #define HAVE_WCSLEN 1
| #define HAVE_WCTOMB 1
| #define HAVE_WMEMCMP 1
| #define HAVE_WMEMCPY 1
| #define HAVE_WMEMMOVE 1
| /* end confdefs.h.  */
| #if HAVE_SYS_TYPES_H
| 	#include <sys/types.h>
| 	#endif
| 	#include <sys/mount.h>
| 
| 
| int
| main (void)
| {
| if (sizeof (struct xvfsconf))
| 	 return 0;
|   ;
|   return 0;
| }
configure:16407: result: no
configure:16422: checking for struct statfs
configure:16422: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2  conftest.c >&5
conftest.c: In function 'main':
conftest.c:227:13: error: invalid application of 'sizeof' to incomplete type 'struct statfs'
  227 | if (sizeof (struct statfs))
      |             ^~~~~~
configure:16422: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "libarchive"
| #define PACKAGE_TARNAME "libarchive"
| #define PACKAGE_VERSION "3.7.2"
| #define PACKAGE_STRING "libarchive 3.7.2"
| #define PACKAGE_BUGREPORT "libarchive-discuss@googlegroups.com"
| #define PACKAGE_URL ""
| #define PACKAGE "libarchive"
| #define VERSION "3.7.2"
| #define __LIBARCHIVE_CONFIG_H_INCLUDED 1
| #define LIBARCHIVE_VERSION_STRING "3.7.2"
| #define LIBARCHIVE_VERSION_NUMBER "3007002"
| #define BSDCPIO_VERSION_STRING "3.7.2"
| #define BSDTAR_VERSION_STRING "3.7.2"
| #define BSDCAT_VERSION_STRING "3.7.2"
| #define BSDUNZIP_VERSION_STRING "3.7.2"
| #define HAVE_STDIO_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_SYS_TIME_H 1
| #define STDC_HEADERS 1
| #define _ALL_SOURCE 1
| #define _DARWIN_C_SOURCE 1
| #define _GNU_SOURCE 1
| #define _HPUX_ALT_XOPEN_SOCKET_API 1
| #define _NETBSD_SOURCE 1
| #define _OPENBSD_SOURCE 1
| #define _POSIX_PTHREAD_SEMANTICS 1
| #define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1
| #define __STDC_WANT_IEC_60559_BFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_DFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1
| #define __STDC_WANT_IEC_60559_TYPES_EXT__ 1
| #define __STDC_WANT_LIB_EXT2__ 1
| #define __STDC_WANT_MATH_SPEC_FUNCS__ 1
| #define _TANDEM_SOURCE 1
| #define __EXTENSIONS__ 1
| #define HAVE_DLFCN_H 1
| #define LT_OBJDIR ".libs/"
| #define HAVE_DIRENT_H 1
| #define HAVE_SYS_WAIT_H 1
| #define HAVE_CTYPE_H 1
| #define HAVE_ERRNO_H 1
| #define HAVE_FCNTL_H 1
| #define HAVE_FNMATCH_H 1
| #define HAVE_GRP_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_LANGINFO_H 1
| #define HAVE_LIMITS_H 1
| #define HAVE_LINUX_FIEMAP_H 1
| #define HAVE_LINUX_FS_H 1
| #define HAVE_LINUX_MAGIC_H 1
| #define HAVE_LINUX_TYPES_H 1
| #define HAVE_WORKING_FS_IOC_GETFLAGS 1
| #define HAVE_LOCALE_H 1
| #define HAVE_PATHS_H 1
| #define HAVE_POLL_H 1
| #define HAVE_PTHREAD_H 1
| #define HAVE_PWD_H 1
| #define HAVE_SIGNAL_H 1
| #define HAVE_SPAWN_H 1
| #define HAVE_STDARG_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_SYS_CDEFS_H 1
| #define HAVE_SYS_IOCTL_H 1
| #define HAVE_SYS_MOUNT_H 1
| #define HAVE_SYS_QUEUE_H 1
| #define HAVE_SYS_PARAM_H 1
| #define HAVE_SYS_POLL_H 1
| #define HAVE_SYS_SELECT_H 1
| #define HAVE_SYS_STATFS_H 1
| #define HAVE_SYS_STATVFS_H 1
| #define HAVE_SYS_SYSMACROS_H 1
| #define HAVE_SYS_TIME_H 1
| #define HAVE_SYS_UTSNAME_H 1
| #define HAVE_SYS_VFS_H 1
| #define HAVE_SYS_XATTR_H 1
| #define HAVE_TIME_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_UTIME_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_WCTYPE_H 1
| #define HAVE_ZLIB_H 1
| #define HAVE_LIBZ 1
| #define HAVE_ICONV 1
| #define ICONV_CONST 
| #define HAVE_ICONV_H 1
| #define HAVE_LZ4_H 1
| #define HAVE_LZ4HC_H 1
| #define HAVE_LIBLZ4 1
| #define HAVE_ZSTD_H 1
| #define HAVE_LIBZSTD 1
| #define HAVE_LIBZSTD_COMPRESSOR 1
| #define HAVE_LIBXML_XMLREADER_H 1
| #define HAVE_LIBXML_XMLWRITER_H 1
| #define HAVE_REGEX_H 1
| #define HAVE_STRUCT_TM_TM_GMTOFF 1
| #define HAVE_STRUCT_STAT_ST_MTIM_TV_NSEC 1
| #define HAVE_STRUCT_STAT_ST_BLKSIZE 1
| #define HAVE_UINTMAX_T 1
| #define HAVE_UNSIGNED_LONG_LONG 1
| #define HAVE_UNSIGNED_LONG_LONG_INT 1
| #define HAVE_LONG_LONG_INT 1
| #define HAVE_INTMAX_T 1
| #define HAVE_UINTMAX_T 1
| #define HAVE_DECL_SIZE_MAX 1
| #define HAVE_DECL_INT32_MAX 1
| #define HAVE_DECL_INT32_MIN 1
| #define HAVE_DECL_INT64_MAX 1
| #define HAVE_DECL_INT64_MIN 1
| #define HAVE_DECL_UINT64_MAX 1
| #define HAVE_DECL_UINT32_MAX 1
| #define HAVE_DECL_INTMAX_MAX 1
| #define HAVE_DECL_INTMAX_MIN 1
| #define HAVE_DECL_UINTMAX_MAX 1
| #define HAVE_DECL_SSIZE_MAX 1
| #define HAVE_EILSEQ 1
| #define HAVE_WCHAR_T 1
| #define SIZEOF_WCHAR_T 4
| #define SIZEOF_INT 4
| #define SIZEOF_LONG 4
| #define MAJOR_IN_SYSMACROS 1
| #define HAVE_FSEEKO 1
| #define LSTAT_FOLLOWS_SLASHED_SYMLINK 1
| #define HAVE_LSTAT_EMPTY_STRING_BUG 1
| #define HAVE_STAT_EMPTY_STRING_BUG 1
| #define HAVE_DECL_STRERROR_R 1
| #define HAVE_STRERROR_R 1
| #define STRERROR_R_CHAR_P 1
| #define HAVE_STRFTIME 1
| #define HAVE_VPRINTF 1
| #define HAVE_ARC4RANDOM_BUF 1
| #define HAVE_CHOWN 1
| #define HAVE_CHROOT 1
| #define HAVE_CTIME_R 1
| #define HAVE_FCHDIR 1
| #define HAVE_FCHMOD 1
| #define HAVE_FCHOWN 1
| #define HAVE_FCNTL 1
| #define HAVE_FDOPENDIR 1
| #define HAVE_FNMATCH 1
| #define HAVE_FORK 1
| #define HAVE_FSTAT 1
| #define HAVE_FSTATAT 1
| #define HAVE_FSTATFS 1
| #define HAVE_FSTATVFS 1
| #define HAVE_FTRUNCATE 1
| #define HAVE_FUTIMENS 1
| #define HAVE_FUTIMES 1
| #define HAVE_FUTIMESAT 1
| #define HAVE_GETEUID 1
| #define HAVE_GETLINE 1
| #define HAVE_GETPID 1
| #define HAVE_GETGRGID_R 1
| #define HAVE_GETGRNAM_R 1
| #define HAVE_GETPWNAM_R 1
| #define HAVE_GETPWUID_R 1
| #define HAVE_GMTIME_R 1
| #define HAVE_LCHMOD 1
| #define HAVE_LCHOWN 1
| #define HAVE_LINK 1
| #define HAVE_LINKAT 1
| #define HAVE_LOCALTIME_R 1
| #define HAVE_LSTAT 1
| #define HAVE_LUTIMES 1
| #define HAVE_MBRTOWC 1
| #define HAVE_MEMMOVE 1
| #define HAVE_MEMSET 1
| #define HAVE_MKDIR 1
| #define HAVE_MKFIFO 1
| #define HAVE_MKNOD 1
| #define HAVE_MKSTEMP 1
| #define HAVE_NL_LANGINFO 1
| #define HAVE_OPENAT 1
| #define HAVE_PIPE 1
| #define HAVE_POLL 1
| #define HAVE_POSIX_SPAWNP 1
| #define HAVE_READLINK 1
| #define HAVE_READLINKAT 1
| #define HAVE_SELECT 1
| #define HAVE_SETENV 1
| #define HAVE_SETLOCALE 1
| #define HAVE_SIGACTION 1
| #define HAVE_STATFS 1
| #define HAVE_STATVFS 1
| #define HAVE_STRCHR 1
| #define HAVE_STRDUP 1
| #define HAVE_STRERROR 1
| #define HAVE_STRNLEN 1
| #define HAVE_STRRCHR 1
| #define HAVE_SYMLINK 1
| #define HAVE_TIMEGM 1
| #define HAVE_TZSET 1
| #define HAVE_UNLINKAT 1
| #define HAVE_UNSETENV 1
| #define HAVE_UTIME 1
| #define HAVE_UTIMENSAT 1
| #define HAVE_UTIMES 1
| #define HAVE_VFORK 1
| #define HAVE_WCRTOMB 1
| #define HAVE_WCSCMP 1
| #define HAVE_WCSCPY 1
| #define HAVE_WCSLEN 1
| #define HAVE_WCTOMB 1
| #define HAVE_WMEMCMP 1
| #define HAVE_WMEMCPY 1
| #define HAVE_WMEMMOVE 1
| /* end confdefs.h.  */
| #if HAVE_SYS_TYPES_H
| 	#include <sys/types.h>
| 	#endif
| 	#include <sys/mount.h>
| 
| 
| int
| main (void)
| {
| if (sizeof (struct statfs))
| 	 return 0;
|   ;
|   return 0;
| }
configure:16422: result: no
configure:16451: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -o conftest -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2   conftest.c -lzstd -llz4 -lz  -L/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/lib -lxml2  >&5
conftest.c: In function 'main':
conftest.c:223:21: warning: 'readdir_r' is deprecated [-Wdeprecated-declarations]
  223 |                     return(readdir_r(dir, &e, &r));
      |                     ^~~~~~
In file included from /home/thomas/autobuild/instance-1/output-1/host/nios2-buildroot-linux-gnu/sysroot/usr/include/features.h:503,
                 from /home/thomas/autobuild/instance-1/output-1/host/nios2-buildroot-linux-gnu/sysroot/usr/include/dirent.h:25,
                 from conftest.c:218:
/home/thomas/autobuild/instance-1/output-1/host/nios2-buildroot-linux-gnu/sysroot/usr/include/dirent.h:191:12: note: declared here
  191 | extern int __REDIRECT (readdir_r,
      |            ^~~~~~~~~~
conftest.c:223:28: warning: 'dir' is used uninitialized [-Wuninitialized]
  223 |                     return(readdir_r(dir, &e, &r));
      |                           ~^~~~~~~~~~~~~~~~~~~~~~~
conftest.c:222:6: note: 'dir' was declared here
  222 | DIR *dir; struct dirent e, *r;
      |      ^~~
configure:16451: $? = 0
configure:16473: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -o conftest -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2   conftest.c -lzstd -llz4 -lz  -L/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/lib -lxml2  >&5
configure:16473: $? = 0
configure:16486: checking whether D_MD_ORDER is declared
configure:16486: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections  -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2  conftest.c >&5
conftest.c: In function 'main':
conftest.c:232:10: error: 'D_MD_ORDER' undeclared (first use in this function)
  232 |   (void) D_MD_ORDER;
      |          ^~~~~~~~~~
conftest.c:232:10: note: each undeclared identifier is reported only once for each function it appears in
configure:16486: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "libarchive"
| #define PACKAGE_TARNAME "libarchive"
| #define PACKAGE_VERSION "3.7.2"
| #define PACKAGE_STRING "libarchive 3.7.2"
| #define PACKAGE_BUGREPORT "libarchive-discuss@googlegroups.com"
| #define PACKAGE_URL ""
| #define PACKAGE "libarchive"
| #define VERSION "3.7.2"
| #define __LIBARCHIVE_CONFIG_H_INCLUDED 1
| #define LIBARCHIVE_VERSION_STRING "3.7.2"
| #define LIBARCHIVE_VERSION_NUMBER "3007002"
| #define BSDCPIO_VERSION_STRING "3.7.2"
| #define BSDTAR_VERSION_STRING "3.7.2"
| #define BSDCAT_VERSION_STRING "3.7.2"
| #define BSDUNZIP_VERSION_STRING "3.7.2"
| #define HAVE_STDIO_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_SYS_TIME_H 1
| #define STDC_HEADERS 1
| #define _ALL_SOURCE 1
| #define _DARWIN_C_SOURCE 1
| #define _GNU_SOURCE 1
| #define _HPUX_ALT_XOPEN_SOCKET_API 1
| #define _NETBSD_SOURCE 1
| #define _OPENBSD_SOURCE 1
| #define _POSIX_PTHREAD_SEMANTICS 1
| #define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1
| #define __STDC_WANT_IEC_60559_BFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_DFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1
| #define __STDC_WANT_IEC_60559_TYPES_EXT__ 1
| #define __STDC_WANT_LIB_EXT2__ 1
| #define __STDC_WANT_MATH_SPEC_FUNCS__ 1
| #define _TANDEM_SOURCE 1
| #define __EXTENSIONS__ 1
| #define HAVE_DLFCN_H 1
| #define LT_OBJDIR ".libs/"
| #define HAVE_DIRENT_H 1
| #define HAVE_SYS_WAIT_H 1
| #define HAVE_CTYPE_H 1
| #define HAVE_ERRNO_H 1
| #define HAVE_FCNTL_H 1
| #define HAVE_FNMATCH_H 1
| #define HAVE_GRP_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_LANGINFO_H 1
| #define HAVE_LIMITS_H 1
| #define HAVE_LINUX_FIEMAP_H 1
| #define HAVE_LINUX_FS_H 1
| #define HAVE_LINUX_MAGIC_H 1
| #define HAVE_LINUX_TYPES_H 1
| #define HAVE_WORKING_FS_IOC_GETFLAGS 1
| #define HAVE_LOCALE_H 1
| #define HAVE_PATHS_H 1
| #define HAVE_POLL_H 1
| #define HAVE_PTHREAD_H 1
| #define HAVE_PWD_H 1
| #define HAVE_SIGNAL_H 1
| #define HAVE_SPAWN_H 1
| #define HAVE_STDARG_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_SYS_CDEFS_H 1
| #define HAVE_SYS_IOCTL_H 1
| #define HAVE_SYS_MOUNT_H 1
| #define HAVE_SYS_QUEUE_H 1
| #define HAVE_SYS_PARAM_H 1
| #define HAVE_SYS_POLL_H 1
| #define HAVE_SYS_SELECT_H 1
| #define HAVE_SYS_STATFS_H 1
| #define HAVE_SYS_STATVFS_H 1
| #define HAVE_SYS_SYSMACROS_H 1
| #define HAVE_SYS_TIME_H 1
| #define HAVE_SYS_UTSNAME_H 1
| #define HAVE_SYS_VFS_H 1
| #define HAVE_SYS_XATTR_H 1
| #define HAVE_TIME_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_UTIME_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_WCTYPE_H 1
| #define HAVE_ZLIB_H 1
| #define HAVE_LIBZ 1
| #define HAVE_ICONV 1
| #define ICONV_CONST 
| #define HAVE_ICONV_H 1
| #define HAVE_LZ4_H 1
| #define HAVE_LZ4HC_H 1
| #define HAVE_LIBLZ4 1
| #define HAVE_ZSTD_H 1
| #define HAVE_LIBZSTD 1
| #define HAVE_LIBZSTD_COMPRESSOR 1
| #define HAVE_LIBXML_XMLREADER_H 1
| #define HAVE_LIBXML_XMLWRITER_H 1
| #define HAVE_REGEX_H 1
| #define HAVE_STRUCT_TM_TM_GMTOFF 1
| #define HAVE_STRUCT_STAT_ST_MTIM_TV_NSEC 1
| #define HAVE_STRUCT_STAT_ST_BLKSIZE 1
| #define HAVE_UINTMAX_T 1
| #define HAVE_UNSIGNED_LONG_LONG 1
| #define HAVE_UNSIGNED_LONG_LONG_INT 1
| #define HAVE_LONG_LONG_INT 1
| #define HAVE_INTMAX_T 1
| #define HAVE_UINTMAX_T 1
| #define HAVE_DECL_SIZE_MAX 1
| #define HAVE_DECL_INT32_MAX 1
| #define HAVE_DECL_INT32_MIN 1
| #define HAVE_DECL_INT64_MAX 1
| #define HAVE_DECL_INT64_MIN 1
| #define HAVE_DECL_UINT64_MAX 1
| #define HAVE_DECL_UINT32_MAX 1
| #define HAVE_DECL_INTMAX_MAX 1
| #define HAVE_DECL_INTMAX_MIN 1
| #define HAVE_DECL_UINTMAX_MAX 1
| #define HAVE_DECL_SSIZE_MAX 1
| #define HAVE_EILSEQ 1
| #define HAVE_WCHAR_T 1
| #define SIZEOF_WCHAR_T 4
| #define SIZEOF_INT 4
| #define SIZEOF_LONG 4
| #define MAJOR_IN_SYSMACROS 1
| #define HAVE_FSEEKO 1
| #define LSTAT_FOLLOWS_SLASHED_SYMLINK 1
| #define HAVE_LSTAT_EMPTY_STRING_BUG 1
| #define HAVE_STAT_EMPTY_STRING_BUG 1
| #define HAVE_DECL_STRERROR_R 1
| #define HAVE_STRERROR_R 1
| #define STRERROR_R_CHAR_P 1
| #define HAVE_STRFTIME 1
| #define HAVE_VPRINTF 1
| #define HAVE_ARC4RANDOM_BUF 1
| #define HAVE_CHOWN 1
| #define HAVE_CHROOT 1
| #define HAVE_CTIME_R 1
| #define HAVE_FCHDIR 1
| #define HAVE_FCHMOD 1
| #define HAVE_FCHOWN 1
| #define HAVE_FCNTL 1
| #define HAVE_FDOPENDIR 1
| #define HAVE_FNMATCH 1
| #define HAVE_FORK 1
| #define HAVE_FSTAT 1
| #define HAVE_FSTATAT 1
| #define HAVE_FSTATFS 1
| #define HAVE_FSTATVFS 1
| #define HAVE_FTRUNCATE 1
| #define HAVE_FUTIMENS 1
| #define HAVE_FUTIMES 1
| #define HAVE_FUTIMESAT 1
| #define HAVE_GETEUID 1
| #define HAVE_GETLINE 1
| #define HAVE_GETPID 1
| #define HAVE_GETGRGID_R 1
| #define HAVE_GETGRNAM_R 1
| #define HAVE_GETPWNAM_R 1
| #define HAVE_GETPWUID_R 1
| #define HAVE_GMTIME_R 1
| #define HAVE_LCHMOD 1
| #define HAVE_LCHOWN 1
| #define HAVE_LINK 1
| #define HAVE_LINKAT 1
| #define HAVE_LOCALTIME_R 1
| #define HAVE_LSTAT 1
| #define HAVE_LUTIMES 1
| #define HAVE_MBRTOWC 1
| #define HAVE_MEMMOVE 1
| #define HAVE_MEMSET 1
| #define HAVE_MKDIR 1
| #define HAVE_MKFIFO 1
| #define HAVE_MKNOD 1
| #define HAVE_MKSTEMP 1
| #define HAVE_NL_LANGINFO 1
| #define HAVE_OPENAT 1
| #define HAVE_PIPE 1
| #define HAVE_POLL 1
| #define HAVE_POSIX_SPAWNP 1
| #define HAVE_READLINK 1
| #define HAVE_READLINKAT 1
| #define HAVE_SELECT 1
| #define HAVE_SETENV 1
| #define HAVE_SETLOCALE 1
| #define HAVE_SIGACTION 1
| #define HAVE_STATFS 1
| #define HAVE_STATVFS 1
| #define HAVE_STRCHR 1
| #define HAVE_STRDUP 1
| #define HAVE_STRERROR 1
| #define HAVE_STRNLEN 1
| #define HAVE_STRRCHR 1
| #define HAVE_SYMLINK 1
| #define HAVE_TIMEGM 1
| #define HAVE_TZSET 1
| #define HAVE_UNLINKAT 1
| #define HAVE_UNSETENV 1
| #define HAVE_UTIME 1
| #define HAVE_UTIMENSAT 1
| #define HAVE_UTIMES 1
| #define HAVE_VFORK 1
| #define HAVE_WCRTOMB 1
| #define HAVE_WCSCMP 1
| #define HAVE_WCSCPY 1
| #define HAVE_WCSLEN 1
| #define HAVE_WCTOMB 1
| #define HAVE_WMEMCMP 1
| #define HAVE_WMEMCPY 1
| #define HAVE_WMEMMOVE 1
| #define HAVE_READDIR_R 1
| #define HAVE_DIRFD 1
| /* end confdefs.h.  */
| #if HAVE_LANGINFO_H
| #include <langinfo.h>
| #endif
| 
| 
| int
| main (void)
| {
| #ifndef D_MD_ORDER
| #ifdef __cplusplus
|   (void) D_MD_ORDER;
| #else
|   (void) D_MD_ORDER;
| #endif
| #endif
| 
|   ;
|   return 0;
| }
configure:16486: result: no
configure:16501: checking for struct dirent.d_namlen
configure:16501: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2  conftest.c >&5
conftest.c: In function 'main':
conftest.c:229:13: error: 'struct dirent' has no member named 'd_namlen'; did you mean 'd_name'?
  229 | if (ac_aggr.d_namlen)
      |             ^~~~~~~~
      |             d_name
conftest.c:228:22: warning: variable 'ac_aggr' set but not used [-Wunused-but-set-variable]
  228 | static struct dirent ac_aggr;
      |                      ^~~~~~~
configure:16501: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "libarchive"
| #define PACKAGE_TARNAME "libarchive"
| #define PACKAGE_VERSION "3.7.2"
| #define PACKAGE_STRING "libarchive 3.7.2"
| #define PACKAGE_BUGREPORT "libarchive-discuss@googlegroups.com"
| #define PACKAGE_URL ""
| #define PACKAGE "libarchive"
| #define VERSION "3.7.2"
| #define __LIBARCHIVE_CONFIG_H_INCLUDED 1
| #define LIBARCHIVE_VERSION_STRING "3.7.2"
| #define LIBARCHIVE_VERSION_NUMBER "3007002"
| #define BSDCPIO_VERSION_STRING "3.7.2"
| #define BSDTAR_VERSION_STRING "3.7.2"
| #define BSDCAT_VERSION_STRING "3.7.2"
| #define BSDUNZIP_VERSION_STRING "3.7.2"
| #define HAVE_STDIO_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_SYS_TIME_H 1
| #define STDC_HEADERS 1
| #define _ALL_SOURCE 1
| #define _DARWIN_C_SOURCE 1
| #define _GNU_SOURCE 1
| #define _HPUX_ALT_XOPEN_SOCKET_API 1
| #define _NETBSD_SOURCE 1
| #define _OPENBSD_SOURCE 1
| #define _POSIX_PTHREAD_SEMANTICS 1
| #define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1
| #define __STDC_WANT_IEC_60559_BFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_DFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1
| #define __STDC_WANT_IEC_60559_TYPES_EXT__ 1
| #define __STDC_WANT_LIB_EXT2__ 1
| #define __STDC_WANT_MATH_SPEC_FUNCS__ 1
| #define _TANDEM_SOURCE 1
| #define __EXTENSIONS__ 1
| #define HAVE_DLFCN_H 1
| #define LT_OBJDIR ".libs/"
| #define HAVE_DIRENT_H 1
| #define HAVE_SYS_WAIT_H 1
| #define HAVE_CTYPE_H 1
| #define HAVE_ERRNO_H 1
| #define HAVE_FCNTL_H 1
| #define HAVE_FNMATCH_H 1
| #define HAVE_GRP_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_LANGINFO_H 1
| #define HAVE_LIMITS_H 1
| #define HAVE_LINUX_FIEMAP_H 1
| #define HAVE_LINUX_FS_H 1
| #define HAVE_LINUX_MAGIC_H 1
| #define HAVE_LINUX_TYPES_H 1
| #define HAVE_WORKING_FS_IOC_GETFLAGS 1
| #define HAVE_LOCALE_H 1
| #define HAVE_PATHS_H 1
| #define HAVE_POLL_H 1
| #define HAVE_PTHREAD_H 1
| #define HAVE_PWD_H 1
| #define HAVE_SIGNAL_H 1
| #define HAVE_SPAWN_H 1
| #define HAVE_STDARG_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_SYS_CDEFS_H 1
| #define HAVE_SYS_IOCTL_H 1
| #define HAVE_SYS_MOUNT_H 1
| #define HAVE_SYS_QUEUE_H 1
| #define HAVE_SYS_PARAM_H 1
| #define HAVE_SYS_POLL_H 1
| #define HAVE_SYS_SELECT_H 1
| #define HAVE_SYS_STATFS_H 1
| #define HAVE_SYS_STATVFS_H 1
| #define HAVE_SYS_SYSMACROS_H 1
| #define HAVE_SYS_TIME_H 1
| #define HAVE_SYS_UTSNAME_H 1
| #define HAVE_SYS_VFS_H 1
| #define HAVE_SYS_XATTR_H 1
| #define HAVE_TIME_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_UTIME_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_WCTYPE_H 1
| #define HAVE_ZLIB_H 1
| #define HAVE_LIBZ 1
| #define HAVE_ICONV 1
| #define ICONV_CONST 
| #define HAVE_ICONV_H 1
| #define HAVE_LZ4_H 1
| #define HAVE_LZ4HC_H 1
| #define HAVE_LIBLZ4 1
| #define HAVE_ZSTD_H 1
| #define HAVE_LIBZSTD 1
| #define HAVE_LIBZSTD_COMPRESSOR 1
| #define HAVE_LIBXML_XMLREADER_H 1
| #define HAVE_LIBXML_XMLWRITER_H 1
| #define HAVE_REGEX_H 1
| #define HAVE_STRUCT_TM_TM_GMTOFF 1
| #define HAVE_STRUCT_STAT_ST_MTIM_TV_NSEC 1
| #define HAVE_STRUCT_STAT_ST_BLKSIZE 1
| #define HAVE_UINTMAX_T 1
| #define HAVE_UNSIGNED_LONG_LONG 1
| #define HAVE_UNSIGNED_LONG_LONG_INT 1
| #define HAVE_LONG_LONG_INT 1
| #define HAVE_INTMAX_T 1
| #define HAVE_UINTMAX_T 1
| #define HAVE_DECL_SIZE_MAX 1
| #define HAVE_DECL_INT32_MAX 1
| #define HAVE_DECL_INT32_MIN 1
| #define HAVE_DECL_INT64_MAX 1
| #define HAVE_DECL_INT64_MIN 1
| #define HAVE_DECL_UINT64_MAX 1
| #define HAVE_DECL_UINT32_MAX 1
| #define HAVE_DECL_INTMAX_MAX 1
| #define HAVE_DECL_INTMAX_MIN 1
| #define HAVE_DECL_UINTMAX_MAX 1
| #define HAVE_DECL_SSIZE_MAX 1
| #define HAVE_EILSEQ 1
| #define HAVE_WCHAR_T 1
| #define SIZEOF_WCHAR_T 4
| #define SIZEOF_INT 4
| #define SIZEOF_LONG 4
| #define MAJOR_IN_SYSMACROS 1
| #define HAVE_FSEEKO 1
| #define LSTAT_FOLLOWS_SLASHED_SYMLINK 1
| #define HAVE_LSTAT_EMPTY_STRING_BUG 1
| #define HAVE_STAT_EMPTY_STRING_BUG 1
| #define HAVE_DECL_STRERROR_R 1
| #define HAVE_STRERROR_R 1
| #define STRERROR_R_CHAR_P 1
| #define HAVE_STRFTIME 1
| #define HAVE_VPRINTF 1
| #define HAVE_ARC4RANDOM_BUF 1
| #define HAVE_CHOWN 1
| #define HAVE_CHROOT 1
| #define HAVE_CTIME_R 1
| #define HAVE_FCHDIR 1
| #define HAVE_FCHMOD 1
| #define HAVE_FCHOWN 1
| #define HAVE_FCNTL 1
| #define HAVE_FDOPENDIR 1
| #define HAVE_FNMATCH 1
| #define HAVE_FORK 1
| #define HAVE_FSTAT 1
| #define HAVE_FSTATAT 1
| #define HAVE_FSTATFS 1
| #define HAVE_FSTATVFS 1
| #define HAVE_FTRUNCATE 1
| #define HAVE_FUTIMENS 1
| #define HAVE_FUTIMES 1
| #define HAVE_FUTIMESAT 1
| #define HAVE_GETEUID 1
| #define HAVE_GETLINE 1
| #define HAVE_GETPID 1
| #define HAVE_GETGRGID_R 1
| #define HAVE_GETGRNAM_R 1
| #define HAVE_GETPWNAM_R 1
| #define HAVE_GETPWUID_R 1
| #define HAVE_GMTIME_R 1
| #define HAVE_LCHMOD 1
| #define HAVE_LCHOWN 1
| #define HAVE_LINK 1
| #define HAVE_LINKAT 1
| #define HAVE_LOCALTIME_R 1
| #define HAVE_LSTAT 1
| #define HAVE_LUTIMES 1
| #define HAVE_MBRTOWC 1
| #define HAVE_MEMMOVE 1
| #define HAVE_MEMSET 1
| #define HAVE_MKDIR 1
| #define HAVE_MKFIFO 1
| #define HAVE_MKNOD 1
| #define HAVE_MKSTEMP 1
| #define HAVE_NL_LANGINFO 1
| #define HAVE_OPENAT 1
| #define HAVE_PIPE 1
| #define HAVE_POLL 1
| #define HAVE_POSIX_SPAWNP 1
| #define HAVE_READLINK 1
| #define HAVE_READLINKAT 1
| #define HAVE_SELECT 1
| #define HAVE_SETENV 1
| #define HAVE_SETLOCALE 1
| #define HAVE_SIGACTION 1
| #define HAVE_STATFS 1
| #define HAVE_STATVFS 1
| #define HAVE_STRCHR 1
| #define HAVE_STRDUP 1
| #define HAVE_STRERROR 1
| #define HAVE_STRNLEN 1
| #define HAVE_STRRCHR 1
| #define HAVE_SYMLINK 1
| #define HAVE_TIMEGM 1
| #define HAVE_TZSET 1
| #define HAVE_UNLINKAT 1
| #define HAVE_UNSETENV 1
| #define HAVE_UTIME 1
| #define HAVE_UTIMENSAT 1
| #define HAVE_UTIMES 1
| #define HAVE_VFORK 1
| #define HAVE_WCRTOMB 1
| #define HAVE_WCSCMP 1
| #define HAVE_WCSCPY 1
| #define HAVE_WCSLEN 1
| #define HAVE_WCTOMB 1
| #define HAVE_WMEMCMP 1
| #define HAVE_WMEMCPY 1
| #define HAVE_WMEMMOVE 1
| #define HAVE_READDIR_R 1
| #define HAVE_DIRFD 1
| /* end confdefs.h.  */
| #if HAVE_DIRENT_H
| #include <dirent.h>
| #endif
| 
| 
| int
| main (void)
| {
| static struct dirent ac_aggr;
| if (ac_aggr.d_namlen)
| return 0;
|   ;
|   return 0;
| }
configure:16501: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2  conftest.c >&5
conftest.c: In function 'main':
conftest.c:229:20: error: 'struct dirent' has no member named 'd_namlen'; did you mean 'd_name'?
  229 | if (sizeof ac_aggr.d_namlen)
      |                    ^~~~~~~~
      |                    d_name
conftest.c:228:22: warning: variable 'ac_aggr' set but not used [-Wunused-but-set-variable]
  228 | static struct dirent ac_aggr;
      |                      ^~~~~~~
configure:16501: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "libarchive"
| #define PACKAGE_TARNAME "libarchive"
| #define PACKAGE_VERSION "3.7.2"
| #define PACKAGE_STRING "libarchive 3.7.2"
| #define PACKAGE_BUGREPORT "libarchive-discuss@googlegroups.com"
| #define PACKAGE_URL ""
| #define PACKAGE "libarchive"
| #define VERSION "3.7.2"
| #define __LIBARCHIVE_CONFIG_H_INCLUDED 1
| #define LIBARCHIVE_VERSION_STRING "3.7.2"
| #define LIBARCHIVE_VERSION_NUMBER "3007002"
| #define BSDCPIO_VERSION_STRING "3.7.2"
| #define BSDTAR_VERSION_STRING "3.7.2"
| #define BSDCAT_VERSION_STRING "3.7.2"
| #define BSDUNZIP_VERSION_STRING "3.7.2"
| #define HAVE_STDIO_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_SYS_TIME_H 1
| #define STDC_HEADERS 1
| #define _ALL_SOURCE 1
| #define _DARWIN_C_SOURCE 1
| #define _GNU_SOURCE 1
| #define _HPUX_ALT_XOPEN_SOCKET_API 1
| #define _NETBSD_SOURCE 1
| #define _OPENBSD_SOURCE 1
| #define _POSIX_PTHREAD_SEMANTICS 1
| #define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1
| #define __STDC_WANT_IEC_60559_BFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_DFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1
| #define __STDC_WANT_IEC_60559_TYPES_EXT__ 1
| #define __STDC_WANT_LIB_EXT2__ 1
| #define __STDC_WANT_MATH_SPEC_FUNCS__ 1
| #define _TANDEM_SOURCE 1
| #define __EXTENSIONS__ 1
| #define HAVE_DLFCN_H 1
| #define LT_OBJDIR ".libs/"
| #define HAVE_DIRENT_H 1
| #define HAVE_SYS_WAIT_H 1
| #define HAVE_CTYPE_H 1
| #define HAVE_ERRNO_H 1
| #define HAVE_FCNTL_H 1
| #define HAVE_FNMATCH_H 1
| #define HAVE_GRP_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_LANGINFO_H 1
| #define HAVE_LIMITS_H 1
| #define HAVE_LINUX_FIEMAP_H 1
| #define HAVE_LINUX_FS_H 1
| #define HAVE_LINUX_MAGIC_H 1
| #define HAVE_LINUX_TYPES_H 1
| #define HAVE_WORKING_FS_IOC_GETFLAGS 1
| #define HAVE_LOCALE_H 1
| #define HAVE_PATHS_H 1
| #define HAVE_POLL_H 1
| #define HAVE_PTHREAD_H 1
| #define HAVE_PWD_H 1
| #define HAVE_SIGNAL_H 1
| #define HAVE_SPAWN_H 1
| #define HAVE_STDARG_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_SYS_CDEFS_H 1
| #define HAVE_SYS_IOCTL_H 1
| #define HAVE_SYS_MOUNT_H 1
| #define HAVE_SYS_QUEUE_H 1
| #define HAVE_SYS_PARAM_H 1
| #define HAVE_SYS_POLL_H 1
| #define HAVE_SYS_SELECT_H 1
| #define HAVE_SYS_STATFS_H 1
| #define HAVE_SYS_STATVFS_H 1
| #define HAVE_SYS_SYSMACROS_H 1
| #define HAVE_SYS_TIME_H 1
| #define HAVE_SYS_UTSNAME_H 1
| #define HAVE_SYS_VFS_H 1
| #define HAVE_SYS_XATTR_H 1
| #define HAVE_TIME_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_UTIME_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_WCTYPE_H 1
| #define HAVE_ZLIB_H 1
| #define HAVE_LIBZ 1
| #define HAVE_ICONV 1
| #define ICONV_CONST 
| #define HAVE_ICONV_H 1
| #define HAVE_LZ4_H 1
| #define HAVE_LZ4HC_H 1
| #define HAVE_LIBLZ4 1
| #define HAVE_ZSTD_H 1
| #define HAVE_LIBZSTD 1
| #define HAVE_LIBZSTD_COMPRESSOR 1
| #define HAVE_LIBXML_XMLREADER_H 1
| #define HAVE_LIBXML_XMLWRITER_H 1
| #define HAVE_REGEX_H 1
| #define HAVE_STRUCT_TM_TM_GMTOFF 1
| #define HAVE_STRUCT_STAT_ST_MTIM_TV_NSEC 1
| #define HAVE_STRUCT_STAT_ST_BLKSIZE 1
| #define HAVE_UINTMAX_T 1
| #define HAVE_UNSIGNED_LONG_LONG 1
| #define HAVE_UNSIGNED_LONG_LONG_INT 1
| #define HAVE_LONG_LONG_INT 1
| #define HAVE_INTMAX_T 1
| #define HAVE_UINTMAX_T 1
| #define HAVE_DECL_SIZE_MAX 1
| #define HAVE_DECL_INT32_MAX 1
| #define HAVE_DECL_INT32_MIN 1
| #define HAVE_DECL_INT64_MAX 1
| #define HAVE_DECL_INT64_MIN 1
| #define HAVE_DECL_UINT64_MAX 1
| #define HAVE_DECL_UINT32_MAX 1
| #define HAVE_DECL_INTMAX_MAX 1
| #define HAVE_DECL_INTMAX_MIN 1
| #define HAVE_DECL_UINTMAX_MAX 1
| #define HAVE_DECL_SSIZE_MAX 1
| #define HAVE_EILSEQ 1
| #define HAVE_WCHAR_T 1
| #define SIZEOF_WCHAR_T 4
| #define SIZEOF_INT 4
| #define SIZEOF_LONG 4
| #define MAJOR_IN_SYSMACROS 1
| #define HAVE_FSEEKO 1
| #define LSTAT_FOLLOWS_SLASHED_SYMLINK 1
| #define HAVE_LSTAT_EMPTY_STRING_BUG 1
| #define HAVE_STAT_EMPTY_STRING_BUG 1
| #define HAVE_DECL_STRERROR_R 1
| #define HAVE_STRERROR_R 1
| #define STRERROR_R_CHAR_P 1
| #define HAVE_STRFTIME 1
| #define HAVE_VPRINTF 1
| #define HAVE_ARC4RANDOM_BUF 1
| #define HAVE_CHOWN 1
| #define HAVE_CHROOT 1
| #define HAVE_CTIME_R 1
| #define HAVE_FCHDIR 1
| #define HAVE_FCHMOD 1
| #define HAVE_FCHOWN 1
| #define HAVE_FCNTL 1
| #define HAVE_FDOPENDIR 1
| #define HAVE_FNMATCH 1
| #define HAVE_FORK 1
| #define HAVE_FSTAT 1
| #define HAVE_FSTATAT 1
| #define HAVE_FSTATFS 1
| #define HAVE_FSTATVFS 1
| #define HAVE_FTRUNCATE 1
| #define HAVE_FUTIMENS 1
| #define HAVE_FUTIMES 1
| #define HAVE_FUTIMESAT 1
| #define HAVE_GETEUID 1
| #define HAVE_GETLINE 1
| #define HAVE_GETPID 1
| #define HAVE_GETGRGID_R 1
| #define HAVE_GETGRNAM_R 1
| #define HAVE_GETPWNAM_R 1
| #define HAVE_GETPWUID_R 1
| #define HAVE_GMTIME_R 1
| #define HAVE_LCHMOD 1
| #define HAVE_LCHOWN 1
| #define HAVE_LINK 1
| #define HAVE_LINKAT 1
| #define HAVE_LOCALTIME_R 1
| #define HAVE_LSTAT 1
| #define HAVE_LUTIMES 1
| #define HAVE_MBRTOWC 1
| #define HAVE_MEMMOVE 1
| #define HAVE_MEMSET 1
| #define HAVE_MKDIR 1
| #define HAVE_MKFIFO 1
| #define HAVE_MKNOD 1
| #define HAVE_MKSTEMP 1
| #define HAVE_NL_LANGINFO 1
| #define HAVE_OPENAT 1
| #define HAVE_PIPE 1
| #define HAVE_POLL 1
| #define HAVE_POSIX_SPAWNP 1
| #define HAVE_READLINK 1
| #define HAVE_READLINKAT 1
| #define HAVE_SELECT 1
| #define HAVE_SETENV 1
| #define HAVE_SETLOCALE 1
| #define HAVE_SIGACTION 1
| #define HAVE_STATFS 1
| #define HAVE_STATVFS 1
| #define HAVE_STRCHR 1
| #define HAVE_STRDUP 1
| #define HAVE_STRERROR 1
| #define HAVE_STRNLEN 1
| #define HAVE_STRRCHR 1
| #define HAVE_SYMLINK 1
| #define HAVE_TIMEGM 1
| #define HAVE_TZSET 1
| #define HAVE_UNLINKAT 1
| #define HAVE_UNSETENV 1
| #define HAVE_UTIME 1
| #define HAVE_UTIMENSAT 1
| #define HAVE_UTIMES 1
| #define HAVE_VFORK 1
| #define HAVE_WCRTOMB 1
| #define HAVE_WCSCMP 1
| #define HAVE_WCSCPY 1
| #define HAVE_WCSLEN 1
| #define HAVE_WCTOMB 1
| #define HAVE_WMEMCMP 1
| #define HAVE_WMEMCPY 1
| #define HAVE_WMEMMOVE 1
| #define HAVE_READDIR_R 1
| #define HAVE_DIRFD 1
| /* end confdefs.h.  */
| #if HAVE_DIRENT_H
| #include <dirent.h>
| #endif
| 
| 
| int
| main (void)
| {
| static struct dirent ac_aggr;
| if (sizeof ac_aggr.d_namlen)
| return 0;
|   ;
|   return 0;
| }
configure:16501: result: no
configure:17462: checking for special C compiler options needed for large files
configure:17510: result: no
configure:17516: checking for _FILE_OFFSET_BITS value needed for large files
configure:17542: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2  conftest.c >&5
configure:17542: $? = 0
configure:17576: result: no
configure:17672: checking support for ARCHIVE_CRYPTO_MD5_LIBC
configure:17694: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -o conftest -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2  -I. -I. -I./libarchive  conftest.c -lzstd -llz4 -lz  -L/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/lib -lxml2  >&5
In file included from conftest.c:255:
./libarchive/archive_digest_private.h:64:10: fatal error: md5.h: No such file or directory
   64 | #include <md5.h>
      |          ^~~~~~~
compilation terminated.
configure:17694: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "libarchive"
| #define PACKAGE_TARNAME "libarchive"
| #define PACKAGE_VERSION "3.7.2"
| #define PACKAGE_STRING "libarchive 3.7.2"
| #define PACKAGE_BUGREPORT "libarchive-discuss@googlegroups.com"
| #define PACKAGE_URL ""
| #define PACKAGE "libarchive"
| #define VERSION "3.7.2"
| #define __LIBARCHIVE_CONFIG_H_INCLUDED 1
| #define LIBARCHIVE_VERSION_STRING "3.7.2"
| #define LIBARCHIVE_VERSION_NUMBER "3007002"
| #define BSDCPIO_VERSION_STRING "3.7.2"
| #define BSDTAR_VERSION_STRING "3.7.2"
| #define BSDCAT_VERSION_STRING "3.7.2"
| #define BSDUNZIP_VERSION_STRING "3.7.2"
| #define HAVE_STDIO_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_SYS_TIME_H 1
| #define STDC_HEADERS 1
| #define _ALL_SOURCE 1
| #define _DARWIN_C_SOURCE 1
| #define _GNU_SOURCE 1
| #define _HPUX_ALT_XOPEN_SOCKET_API 1
| #define _NETBSD_SOURCE 1
| #define _OPENBSD_SOURCE 1
| #define _POSIX_PTHREAD_SEMANTICS 1
| #define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1
| #define __STDC_WANT_IEC_60559_BFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_DFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1
| #define __STDC_WANT_IEC_60559_TYPES_EXT__ 1
| #define __STDC_WANT_LIB_EXT2__ 1
| #define __STDC_WANT_MATH_SPEC_FUNCS__ 1
| #define _TANDEM_SOURCE 1
| #define __EXTENSIONS__ 1
| #define HAVE_DLFCN_H 1
| #define LT_OBJDIR ".libs/"
| #define HAVE_DIRENT_H 1
| #define HAVE_SYS_WAIT_H 1
| #define HAVE_CTYPE_H 1
| #define HAVE_ERRNO_H 1
| #define HAVE_FCNTL_H 1
| #define HAVE_FNMATCH_H 1
| #define HAVE_GRP_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_LANGINFO_H 1
| #define HAVE_LIMITS_H 1
| #define HAVE_LINUX_FIEMAP_H 1
| #define HAVE_LINUX_FS_H 1
| #define HAVE_LINUX_MAGIC_H 1
| #define HAVE_LINUX_TYPES_H 1
| #define HAVE_WORKING_FS_IOC_GETFLAGS 1
| #define HAVE_LOCALE_H 1
| #define HAVE_PATHS_H 1
| #define HAVE_POLL_H 1
| #define HAVE_PTHREAD_H 1
| #define HAVE_PWD_H 1
| #define HAVE_SIGNAL_H 1
| #define HAVE_SPAWN_H 1
| #define HAVE_STDARG_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_SYS_CDEFS_H 1
| #define HAVE_SYS_IOCTL_H 1
| #define HAVE_SYS_MOUNT_H 1
| #define HAVE_SYS_QUEUE_H 1
| #define HAVE_SYS_PARAM_H 1
| #define HAVE_SYS_POLL_H 1
| #define HAVE_SYS_SELECT_H 1
| #define HAVE_SYS_STATFS_H 1
| #define HAVE_SYS_STATVFS_H 1
| #define HAVE_SYS_SYSMACROS_H 1
| #define HAVE_SYS_TIME_H 1
| #define HAVE_SYS_UTSNAME_H 1
| #define HAVE_SYS_VFS_H 1
| #define HAVE_SYS_XATTR_H 1
| #define HAVE_TIME_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_UTIME_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_WCTYPE_H 1
| #define HAVE_ZLIB_H 1
| #define HAVE_LIBZ 1
| #define HAVE_ICONV 1
| #define ICONV_CONST 
| #define HAVE_ICONV_H 1
| #define HAVE_LZ4_H 1
| #define HAVE_LZ4HC_H 1
| #define HAVE_LIBLZ4 1
| #define HAVE_ZSTD_H 1
| #define HAVE_LIBZSTD 1
| #define HAVE_LIBZSTD_COMPRESSOR 1
| #define HAVE_LIBXML_XMLREADER_H 1
| #define HAVE_LIBXML_XMLWRITER_H 1
| #define HAVE_REGEX_H 1
| #define HAVE_STRUCT_TM_TM_GMTOFF 1
| #define HAVE_STRUCT_STAT_ST_MTIM_TV_NSEC 1
| #define HAVE_STRUCT_STAT_ST_BLKSIZE 1
| #define HAVE_UINTMAX_T 1
| #define HAVE_UNSIGNED_LONG_LONG 1
| #define HAVE_UNSIGNED_LONG_LONG_INT 1
| #define HAVE_LONG_LONG_INT 1
| #define HAVE_INTMAX_T 1
| #define HAVE_UINTMAX_T 1
| #define HAVE_DECL_SIZE_MAX 1
| #define HAVE_DECL_INT32_MAX 1
| #define HAVE_DECL_INT32_MIN 1
| #define HAVE_DECL_INT64_MAX 1
| #define HAVE_DECL_INT64_MIN 1
| #define HAVE_DECL_UINT64_MAX 1
| #define HAVE_DECL_UINT32_MAX 1
| #define HAVE_DECL_INTMAX_MAX 1
| #define HAVE_DECL_INTMAX_MIN 1
| #define HAVE_DECL_UINTMAX_MAX 1
| #define HAVE_DECL_SSIZE_MAX 1
| #define HAVE_EILSEQ 1
| #define HAVE_WCHAR_T 1
| #define SIZEOF_WCHAR_T 4
| #define SIZEOF_INT 4
| #define SIZEOF_LONG 4
| #define MAJOR_IN_SYSMACROS 1
| #define HAVE_FSEEKO 1
| #define LSTAT_FOLLOWS_SLASHED_SYMLINK 1
| #define HAVE_LSTAT_EMPTY_STRING_BUG 1
| #define HAVE_STAT_EMPTY_STRING_BUG 1
| #define HAVE_DECL_STRERROR_R 1
| #define HAVE_STRERROR_R 1
| #define STRERROR_R_CHAR_P 1
| #define HAVE_STRFTIME 1
| #define HAVE_VPRINTF 1
| #define HAVE_ARC4RANDOM_BUF 1
| #define HAVE_CHOWN 1
| #define HAVE_CHROOT 1
| #define HAVE_CTIME_R 1
| #define HAVE_FCHDIR 1
| #define HAVE_FCHMOD 1
| #define HAVE_FCHOWN 1
| #define HAVE_FCNTL 1
| #define HAVE_FDOPENDIR 1
| #define HAVE_FNMATCH 1
| #define HAVE_FORK 1
| #define HAVE_FSTAT 1
| #define HAVE_FSTATAT 1
| #define HAVE_FSTATFS 1
| #define HAVE_FSTATVFS 1
| #define HAVE_FTRUNCATE 1
| #define HAVE_FUTIMENS 1
| #define HAVE_FUTIMES 1
| #define HAVE_FUTIMESAT 1
| #define HAVE_GETEUID 1
| #define HAVE_GETLINE 1
| #define HAVE_GETPID 1
| #define HAVE_GETGRGID_R 1
| #define HAVE_GETGRNAM_R 1
| #define HAVE_GETPWNAM_R 1
| #define HAVE_GETPWUID_R 1
| #define HAVE_GMTIME_R 1
| #define HAVE_LCHMOD 1
| #define HAVE_LCHOWN 1
| #define HAVE_LINK 1
| #define HAVE_LINKAT 1
| #define HAVE_LOCALTIME_R 1
| #define HAVE_LSTAT 1
| #define HAVE_LUTIMES 1
| #define HAVE_MBRTOWC 1
| #define HAVE_MEMMOVE 1
| #define HAVE_MEMSET 1
| #define HAVE_MKDIR 1
| #define HAVE_MKFIFO 1
| #define HAVE_MKNOD 1
| #define HAVE_MKSTEMP 1
| #define HAVE_NL_LANGINFO 1
| #define HAVE_OPENAT 1
| #define HAVE_PIPE 1
| #define HAVE_POLL 1
| #define HAVE_POSIX_SPAWNP 1
| #define HAVE_READLINK 1
| #define HAVE_READLINKAT 1
| #define HAVE_SELECT 1
| #define HAVE_SETENV 1
| #define HAVE_SETLOCALE 1
| #define HAVE_SIGACTION 1
| #define HAVE_STATFS 1
| #define HAVE_STATVFS 1
| #define HAVE_STRCHR 1
| #define HAVE_STRDUP 1
| #define HAVE_STRERROR 1
| #define HAVE_STRNLEN 1
| #define HAVE_STRRCHR 1
| #define HAVE_SYMLINK 1
| #define HAVE_TIMEGM 1
| #define HAVE_TZSET 1
| #define HAVE_UNLINKAT 1
| #define HAVE_UNSETENV 1
| #define HAVE_UTIME 1
| #define HAVE_UTIMENSAT 1
| #define HAVE_UTIMES 1
| #define HAVE_VFORK 1
| #define HAVE_WCRTOMB 1
| #define HAVE_WCSCMP 1
| #define HAVE_WCSCPY 1
| #define HAVE_WCSLEN 1
| #define HAVE_WCTOMB 1
| #define HAVE_WMEMCMP 1
| #define HAVE_WMEMCPY 1
| #define HAVE_WMEMMOVE 1
| #define HAVE_READDIR_R 1
| #define HAVE_DIRFD 1
| /* end confdefs.h.  */
| 
| #define ARCHIVE_MD5_COMPILE_TEST
| #define ARCHIVE_CRYPTO_MD5_LIBC
| #define PLATFORM_CONFIG_H "check_crypto_md.h"
| 
| /*-
| * Copyright (c) 2003-2007 Tim Kientzle
| * Copyright (c) 2011 Andres Mejia
| * Copyright (c) 2011 Michihiro NAKAJIMA
| * All rights reserved.
| *
| * Redistribution and use in source and binary forms, with or without
| * modification, are permitted provided that the following conditions
| * are met:
| * 1. Redistributions of source code must retain the above copyright
| *    notice, this list of conditions and the following disclaimer.
| * 2. Redistributions in binary form must reproduce the above copyright
| *    notice, this list of conditions and the following disclaimer in the
| *    documentation and/or other materials provided with the distribution.
| *
| * THIS SOFTWARE IS PROVIDED BY THE AUTHOR(S) ``AS IS'' AND ANY EXPRESS OR
| * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
| * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
| * IN NO EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY DIRECT, INDIRECT,
| * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
| * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
| * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
| * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
| * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
| * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
| */
| 
| #include "archive_platform.h"
| 
| #include "archive.h"
| #include "archive_digest_private.h"
| 
| /* In particular, force the configure probe to break if it tries
|  * to test a combination of OpenSSL and libmd. */
| #if defined(ARCHIVE_CRYPTO_OPENSSL) && defined(ARCHIVE_CRYPTO_LIBMD)
| #error Cannot use both OpenSSL and libmd.
| #endif
| 
| /* Common in other bcrypt implementations, but missing from VS2008. */
| #ifndef BCRYPT_SUCCESS
| #define BCRYPT_SUCCESS(r) ((NTSTATUS)(r) == STATUS_SUCCESS)
| #endif
| 
| /*
|  * Message digest functions for Windows platform.
|  */
| #if defined(ARCHIVE_CRYPTO_MD5_WIN)    ||\
| 	defined(ARCHIVE_CRYPTO_SHA1_WIN)   ||\
| 	defined(ARCHIVE_CRYPTO_SHA256_WIN) ||\
| 	defined(ARCHIVE_CRYPTO_SHA384_WIN) ||\
| 	defined(ARCHIVE_CRYPTO_SHA512_WIN)
| 
| /*
|  * Initialize a Message digest.
|  */
| #if defined(HAVE_BCRYPT_H) && _WIN32_WINNT >= _WIN32_WINNT_VISTA
| static int
| win_crypto_init(Digest_CTX *ctx, const WCHAR *algo)
| {
| 	NTSTATUS status;
| 	ctx->valid = 0;
| 
| 	status = BCryptOpenAlgorithmProvider(&ctx->hAlg, algo, NULL, 0);
| 	if (!BCRYPT_SUCCESS(status))
| 		return (ARCHIVE_FAILED);
| 	status = BCryptCreateHash(ctx->hAlg, &ctx->hHash, NULL, 0, NULL, 0, 0);
| 	if (!BCRYPT_SUCCESS(status)) {
| 		BCryptCloseAlgorithmProvider(ctx->hAlg, 0);
| 		return (ARCHIVE_FAILED);
| 	}
| 
| 	ctx->valid = 1;
| 	return (ARCHIVE_OK);
| }
| #else
| static int
| win_crypto_init(Digest_CTX *ctx, DWORD prov, ALG_ID algId)
| {
| 
| 	ctx->valid = 0;
| 	if (!CryptAcquireContext(&ctx->cryptProv, NULL, NULL,
| 	    prov, CRYPT_VERIFYCONTEXT)) {
| 		if (GetLastError() != (DWORD)NTE_BAD_KEYSET)
| 			return (ARCHIVE_FAILED);
| 		if (!CryptAcquireContext(&ctx->cryptProv, NULL, NULL,
| 		    prov, CRYPT_NEWKEYSET))
| 			return (ARCHIVE_FAILED);
| 	}
| 
| 	if (!CryptCreateHash(ctx->cryptProv, algId, 0, 0, &ctx->hash)) {
| 		CryptReleaseContext(ctx->cryptProv, 0);
| 		return (ARCHIVE_FAILED);
| 	}
| 
| 	ctx->valid = 1;
| 	return (ARCHIVE_OK);
| }
| #endif
| 
| /*
|  * Update a Message digest.
|  */
| static int
| win_crypto_Update(Digest_CTX *ctx, const unsigned char *buf, size_t len)
| {
| 
| 	if (!ctx->valid)
| 		return (ARCHIVE_FAILED);
| 
| #if defined(HAVE_BCRYPT_H) && _WIN32_WINNT >= _WIN32_WINNT_VISTA
| 	BCryptHashData(ctx->hHash,
| 		      (PUCHAR)(uintptr_t)buf,
| 		      (ULONG)len, 0);
| #else
| 	CryptHashData(ctx->hash,
| 		      (unsigned char *)(uintptr_t)buf,
| 		      (DWORD)len, 0);
| #endif
| 	return (ARCHIVE_OK);
| }
| 
| static int
| win_crypto_Final(unsigned char *buf, size_t bufsize, Digest_CTX *ctx)
| {
| #if !(defined(HAVE_BCRYPT_H) && _WIN32_WINNT >= _WIN32_WINNT_VISTA)
| 	DWORD siglen = (DWORD)bufsize;
| #endif
| 
| 	if (!ctx->valid)
| 		return (ARCHIVE_FAILED);
| 
| #if defined(HAVE_BCRYPT_H) && _WIN32_WINNT >= _WIN32_WINNT_VISTA
| 	BCryptFinishHash(ctx->hHash, buf, (ULONG)bufsize, 0);
| 	BCryptDestroyHash(ctx->hHash);
| 	BCryptCloseAlgorithmProvider(ctx->hAlg, 0);
| #else
| 	CryptGetHashParam(ctx->hash, HP_HASHVAL, buf, &siglen, 0);
| 	CryptDestroyHash(ctx->hash);
| 	CryptReleaseContext(ctx->cryptProv, 0);
| #endif
| 	ctx->valid = 0;
| 	return (ARCHIVE_OK);
| }
| 
| #endif /* defined(ARCHIVE_CRYPTO_*_WIN) */
| 
| 
| /* MD5 implementations */
| #if defined(ARCHIVE_CRYPTO_MD5_LIBC)
| 
| static int
| __archive_md5init(archive_md5_ctx *ctx)
| {
|   MD5Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5update(archive_md5_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   MD5Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5final(archive_md5_ctx *ctx, void *md)
| {
|   MD5Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_MD5_LIBMD)
| 
| static int
| __archive_md5init(archive_md5_ctx *ctx)
| {
|   MD5Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5update(archive_md5_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   MD5Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5final(archive_md5_ctx *ctx, void *md)
| {
|   MD5Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_MD5_LIBSYSTEM)
| 
| static int
| __archive_md5init(archive_md5_ctx *ctx)
| {
|   CC_MD5_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5update(archive_md5_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   CC_MD5_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5final(archive_md5_ctx *ctx, void *md)
| {
|   CC_MD5_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_MD5_MBEDTLS)
| 
| static int
| __archive_md5init(archive_md5_ctx *ctx)
| {
|   mbedtls_md5_init(ctx);
|   if (mbedtls_md5_starts_ret(ctx) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_md5update(archive_md5_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   if (mbedtls_md5_update_ret(ctx, indata, insize) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_md5final(archive_md5_ctx *ctx, void *md)
| {
|   if (mbedtls_md5_finish_ret(ctx, md) == 0) {
|     mbedtls_md5_free(ctx);
|     return (ARCHIVE_OK);
|   } else {
|     mbedtls_md5_free(ctx);
|     return (ARCHIVE_FATAL);
|   }
| }
| 
| #elif defined(ARCHIVE_CRYPTO_MD5_NETTLE)
| 
| static int
| __archive_md5init(archive_md5_ctx *ctx)
| {
|   md5_init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5update(archive_md5_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   md5_update(ctx, insize, indata);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5final(archive_md5_ctx *ctx, void *md)
| {
|   md5_digest(ctx, MD5_DIGEST_SIZE, md);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_MD5_OPENSSL)
| 
| static int
| __archive_md5init(archive_md5_ctx *ctx)
| {
|   if ((*ctx = EVP_MD_CTX_new()) == NULL)
| 	return (ARCHIVE_FAILED);
|   if (!EVP_DigestInit(*ctx, EVP_md5()))
| 	return (ARCHIVE_FAILED);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5update(archive_md5_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   EVP_DigestUpdate(*ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5final(archive_md5_ctx *ctx, void *md)
| {
|   /* HACK: archive_write_set_format_xar.c is finalizing empty contexts, so
|    * this is meant to cope with that. Real fix is probably to fix
|    * archive_write_set_format_xar.c
|    */
|   if (*ctx) {
|     EVP_DigestFinal(*ctx, md, NULL);
|     EVP_MD_CTX_free(*ctx);
|     *ctx = NULL;
|   }
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_MD5_WIN)
| 
| static int
| __archive_md5init(archive_md5_ctx *ctx)
| {
| #if defined(HAVE_BCRYPT_H) && _WIN32_WINNT >= _WIN32_WINNT_VISTA
|   return (win_crypto_init(ctx, BCRYPT_MD5_ALGORITHM));
| #else
|   return (win_crypto_init(ctx, PROV_RSA_FULL, CALG_MD5));
| #endif
| }
| 
| static int
| __archive_md5update(archive_md5_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   return (win_crypto_Update(ctx, indata, insize));
| }
| 
| static int
| __archive_md5final(archive_md5_ctx *ctx, void *md)
| {
|   return (win_crypto_Final(md, 16, ctx));
| }
| 
| #else
| 
| static int
| __archive_md5init(archive_md5_ctx *ctx)
| {
| 	(void)ctx; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_md5update(archive_md5_ctx *ctx, const void *indata,
|     size_t insize)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)indata; /* UNUSED */
| 	(void)insize; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_md5final(archive_md5_ctx *ctx, void *md)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)md; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| #endif
| 
| /* RIPEMD160 implementations */
| #if defined(ARCHIVE_CRYPTO_RMD160_LIBC)
| 
| static int
| __archive_ripemd160init(archive_rmd160_ctx *ctx)
| {
|   RMD160Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   RMD160Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md)
| {
|   RMD160Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_RMD160_LIBMD)
| 
| static int
| __archive_ripemd160init(archive_rmd160_ctx *ctx)
| {
|   RIPEMD160_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   RIPEMD160_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md)
| {
|   RIPEMD160_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_RMD160_MBEDTLS)
| 
| static int
| __archive_ripemd160init(archive_rmd160_ctx *ctx)
| {
|   mbedtls_ripemd160_init(ctx);
|   if (mbedtls_ripemd160_starts_ret(ctx) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   if (mbedtls_ripemd160_update_ret(ctx, indata, insize) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md)
| {
|   if (mbedtls_ripemd160_finish_ret(ctx, md) == 0) {
|     mbedtls_ripemd160_free(ctx);
|     return (ARCHIVE_OK);
|   } else {
|     mbedtls_ripemd160_free(ctx);
|     return (ARCHIVE_FATAL);
|   }
| }
| 
| #elif defined(ARCHIVE_CRYPTO_RMD160_NETTLE)
| 
| static int
| __archive_ripemd160init(archive_rmd160_ctx *ctx)
| {
|   ripemd160_init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   ripemd160_update(ctx, insize, indata);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md)
| {
|   ripemd160_digest(ctx, RIPEMD160_DIGEST_SIZE, md);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_RMD160_OPENSSL)
| 
| static int
| __archive_ripemd160init(archive_rmd160_ctx *ctx)
| {
|   if ((*ctx = EVP_MD_CTX_new()) == NULL)
| 	return (ARCHIVE_FAILED);
|   if (!EVP_DigestInit(*ctx, EVP_ripemd160()))
| 	return (ARCHIVE_FAILED);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   EVP_DigestUpdate(*ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md)
| {
|   if (*ctx) {
|     EVP_DigestFinal(*ctx, md, NULL);
|     EVP_MD_CTX_free(*ctx);
|     *ctx = NULL;
|   }
|   return (ARCHIVE_OK);
| }
| 
| #else
| 
| static int
| __archive_ripemd160init(archive_rmd160_ctx *ctx)
| {
| 	(void)ctx; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata,
|     size_t insize)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)indata; /* UNUSED */
| 	(void)insize; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)md; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| #endif
| 
| /* SHA1 implementations */
| #if defined(ARCHIVE_CRYPTO_SHA1_LIBC)
| 
| static int
| __archive_sha1init(archive_sha1_ctx *ctx)
| {
|   SHA1Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1update(archive_sha1_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA1Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1final(archive_sha1_ctx *ctx, void *md)
| {
|   SHA1Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA1_LIBMD)
| 
| static int
| __archive_sha1init(archive_sha1_ctx *ctx)
| {
|   SHA1_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1update(archive_sha1_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA1_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1final(archive_sha1_ctx *ctx, void *md)
| {
|   SHA1_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA1_LIBSYSTEM)
| 
| static int
| __archive_sha1init(archive_sha1_ctx *ctx)
| {
|   CC_SHA1_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1update(archive_sha1_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   CC_SHA1_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1final(archive_sha1_ctx *ctx, void *md)
| {
|   CC_SHA1_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA1_MBEDTLS)
| 
| static int
| __archive_sha1init(archive_sha1_ctx *ctx)
| {
|   mbedtls_sha1_init(ctx);
|   if (mbedtls_sha1_starts_ret(ctx) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_sha1update(archive_sha1_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   if (mbedtls_sha1_update_ret(ctx, indata, insize) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_sha1final(archive_sha1_ctx *ctx, void *md)
| {
|   if (mbedtls_sha1_finish_ret(ctx, md) == 0) {
|     mbedtls_sha1_free(ctx);
|     return (ARCHIVE_OK);
|   } else {
|     mbedtls_sha1_free(ctx);
|     return (ARCHIVE_FATAL);
|   }
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA1_NETTLE)
| 
| static int
| __archive_sha1init(archive_sha1_ctx *ctx)
| {
|   sha1_init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1update(archive_sha1_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   sha1_update(ctx, insize, indata);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1final(archive_sha1_ctx *ctx, void *md)
| {
|   sha1_digest(ctx, SHA1_DIGEST_SIZE, md);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA1_OPENSSL)
| 
| static int
| __archive_sha1init(archive_sha1_ctx *ctx)
| {
|   if ((*ctx = EVP_MD_CTX_new()) == NULL)
| 	return (ARCHIVE_FAILED);
|   if (!EVP_DigestInit(*ctx, EVP_sha1()))
| 	return (ARCHIVE_FAILED);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1update(archive_sha1_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   EVP_DigestUpdate(*ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1final(archive_sha1_ctx *ctx, void *md)
| {
|   /* HACK: archive_write_set_format_xar.c is finalizing empty contexts, so
|    * this is meant to cope with that. Real fix is probably to fix
|    * archive_write_set_format_xar.c
|    */
|   if (*ctx) {
|     EVP_DigestFinal(*ctx, md, NULL);
|     EVP_MD_CTX_free(*ctx);
|     *ctx = NULL;
|   }
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA1_WIN)
| 
| static int
| __archive_sha1init(archive_sha1_ctx *ctx)
| {
| #if defined(HAVE_BCRYPT_H) && _WIN32_WINNT >= _WIN32_WINNT_VISTA
|   return (win_crypto_init(ctx, BCRYPT_SHA1_ALGORITHM));
| #else
|   return (win_crypto_init(ctx, PROV_RSA_FULL, CALG_SHA1));
| #endif
| }
| 
| static int
| __archive_sha1update(archive_sha1_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   return (win_crypto_Update(ctx, indata, insize));
| }
| 
| static int
| __archive_sha1final(archive_sha1_ctx *ctx, void *md)
| {
|   return (win_crypto_Final(md, 20, ctx));
| }
| 
| #else
| 
| static int
| __archive_sha1init(archive_sha1_ctx *ctx)
| {
| 	(void)ctx; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_sha1update(archive_sha1_ctx *ctx, const void *indata,
|     size_t insize)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)indata; /* UNUSED */
| 	(void)insize; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_sha1final(archive_sha1_ctx *ctx, void *md)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)md; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| #endif
| 
| /* SHA256 implementations */
| #if defined(ARCHIVE_CRYPTO_SHA256_LIBC)
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
|   SHA256_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA256_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
|   SHA256_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA256_LIBC2)
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
|   SHA256Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA256Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
|   SHA256Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA256_LIBC3)
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
|   SHA256Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA256Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
|   SHA256Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA256_LIBMD)
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
|   SHA256_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA256_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
|   SHA256_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA256_LIBSYSTEM)
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
|   CC_SHA256_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   CC_SHA256_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
|   CC_SHA256_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA256_MBEDTLS)
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
|   mbedtls_sha256_init(ctx);
|   if (mbedtls_sha256_starts_ret(ctx, 0) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   if (mbedtls_sha256_update_ret(ctx, indata, insize) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
|   if (mbedtls_sha256_finish_ret(ctx, md) == 0) {
|     mbedtls_sha256_free(ctx);
|     return (ARCHIVE_OK);
|   } else {
|     mbedtls_sha256_free(ctx);
|     return (ARCHIVE_FATAL);
|   }
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA256_NETTLE)
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
|   sha256_init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   sha256_update(ctx, insize, indata);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
|   sha256_digest(ctx, SHA256_DIGEST_SIZE, md);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA256_OPENSSL)
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
|   if ((*ctx = EVP_MD_CTX_new()) == NULL)
| 	return (ARCHIVE_FAILED);
|   if (!EVP_DigestInit(*ctx, EVP_sha256()))
| 	return (ARCHIVE_FAILED);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   EVP_DigestUpdate(*ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
|   if (*ctx) {
|     EVP_DigestFinal(*ctx, md, NULL);
|     EVP_MD_CTX_free(*ctx);
|     *ctx = NULL;
|   }
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA256_WIN)
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
| #if defined(HAVE_BCRYPT_H) && _WIN32_WINNT >= _WIN32_WINNT_VISTA
|   return (win_crypto_init(ctx, BCRYPT_SHA256_ALGORITHM));
| #else
|   return (win_crypto_init(ctx, PROV_RSA_AES, CALG_SHA_256));
| #endif
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   return (win_crypto_Update(ctx, indata, insize));
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
|   return (win_crypto_Final(md, 32, ctx));
| }
| 
| #else
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
| 	(void)ctx; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)indata; /* UNUSED */
| 	(void)insize; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)md; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| #endif
| 
| /* SHA384 implementations */
| #if defined(ARCHIVE_CRYPTO_SHA384_LIBC)
| 
| static int
| __archive_sha384init(archive_sha384_ctx *ctx)
| {
|   SHA384_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384update(archive_sha384_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA384_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384final(archive_sha384_ctx *ctx, void *md)
| {
|   SHA384_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA384_LIBC2)
| 
| static int
| __archive_sha384init(archive_sha384_ctx *ctx)
| {
|   SHA384Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384update(archive_sha384_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA384Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384final(archive_sha384_ctx *ctx, void *md)
| {
|   SHA384Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA384_LIBC3)
| 
| static int
| __archive_sha384init(archive_sha384_ctx *ctx)
| {
|   SHA384Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384update(archive_sha384_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA384Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384final(archive_sha384_ctx *ctx, void *md)
| {
|   SHA384Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA384_LIBSYSTEM)
| 
| static int
| __archive_sha384init(archive_sha384_ctx *ctx)
| {
|   CC_SHA384_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384update(archive_sha384_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   CC_SHA384_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384final(archive_sha384_ctx *ctx, void *md)
| {
|   CC_SHA384_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA384_MBEDTLS)
| 
| static int
| __archive_sha384init(archive_sha384_ctx *ctx)
| {
|   mbedtls_sha512_init(ctx);
|   if (mbedtls_sha512_starts_ret(ctx, 1) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_sha384update(archive_sha384_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   if (mbedtls_sha512_update_ret(ctx, indata, insize) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_sha384final(archive_sha384_ctx *ctx, void *md)
| {
|   if (mbedtls_sha512_finish_ret(ctx, md) == 0) {
|     mbedtls_sha512_free(ctx);
|     return (ARCHIVE_OK);
|   } else {
|     mbedtls_sha512_free(ctx);
|     return (ARCHIVE_FATAL);
|   }
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA384_NETTLE)
| 
| static int
| __archive_sha384init(archive_sha384_ctx *ctx)
| {
|   sha384_init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384update(archive_sha384_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   sha384_update(ctx, insize, indata);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384final(archive_sha384_ctx *ctx, void *md)
| {
|   sha384_digest(ctx, SHA384_DIGEST_SIZE, md);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA384_OPENSSL)
| 
| static int
| __archive_sha384init(archive_sha384_ctx *ctx)
| {
|   if ((*ctx = EVP_MD_CTX_new()) == NULL)
| 	return (ARCHIVE_FAILED);
|   if (!EVP_DigestInit(*ctx, EVP_sha384()))
| 	return (ARCHIVE_FAILED);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384update(archive_sha384_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   EVP_DigestUpdate(*ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384final(archive_sha384_ctx *ctx, void *md)
| {
|   if (*ctx) {
|     EVP_DigestFinal(*ctx, md, NULL);
|     EVP_MD_CTX_free(*ctx);
|     *ctx = NULL;
|   }
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA384_WIN)
| 
| static int
| __archive_sha384init(archive_sha384_ctx *ctx)
| {
| #if defined(HAVE_BCRYPT_H) && _WIN32_WINNT >= _WIN32_WINNT_VISTA
|   return (win_crypto_init(ctx, BCRYPT_SHA384_ALGORITHM));
| #else
|   return (win_crypto_init(ctx, PROV_RSA_AES, CALG_SHA_384));
| #endif
| }
| 
| static int
| __archive_sha384update(archive_sha384_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   return (win_crypto_Update(ctx, indata, insize));
| }
| 
| static int
| __archive_sha384final(archive_sha384_ctx *ctx, void *md)
| {
|   return (win_crypto_Final(md, 48, ctx));
| }
| 
| #else
| 
| static int
| __archive_sha384init(archive_sha384_ctx *ctx)
| {
| 	(void)ctx; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_sha384update(archive_sha384_ctx *ctx, const void *indata,
|     size_t insize)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)indata; /* UNUSED */
| 	(void)insize; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_sha384final(archive_sha384_ctx *ctx, void *md)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)md; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| #endif
| 
| /* SHA512 implementations */
| #if defined(ARCHIVE_CRYPTO_SHA512_LIBC)
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
|   SHA512_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA512_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
|   SHA512_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA512_LIBC2)
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
|   SHA512Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA512Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
|   SHA512Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA512_LIBC3)
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
|   SHA512Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA512Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
|   SHA512Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA512_LIBMD)
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
|   SHA512_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA512_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
|   SHA512_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA512_LIBSYSTEM)
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
|   CC_SHA512_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   CC_SHA512_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
|   CC_SHA512_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA512_MBEDTLS)
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
|   mbedtls_sha512_init(ctx);
|   if (mbedtls_sha512_starts_ret(ctx, 0) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   if (mbedtls_sha512_update_ret(ctx, indata, insize) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
|   if (mbedtls_sha512_finish_ret(ctx, md) == 0) {
|     mbedtls_sha512_free(ctx);
|     return (ARCHIVE_OK);
|   } else {
|     mbedtls_sha512_free(ctx);
|     return (ARCHIVE_FATAL);
|   }
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA512_NETTLE)
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
|   sha512_init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   sha512_update(ctx, insize, indata);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
|   sha512_digest(ctx, SHA512_DIGEST_SIZE, md);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA512_OPENSSL)
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
|   if ((*ctx = EVP_MD_CTX_new()) == NULL)
| 	return (ARCHIVE_FAILED);
|   if (!EVP_DigestInit(*ctx, EVP_sha512()))
| 	return (ARCHIVE_FAILED);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   EVP_DigestUpdate(*ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
|   if (*ctx) {
|     EVP_DigestFinal(*ctx, md, NULL);
|     EVP_MD_CTX_free(*ctx);
|     *ctx = NULL;
|   }
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA512_WIN)
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
| #if defined(HAVE_BCRYPT_H) && _WIN32_WINNT >= _WIN32_WINNT_VISTA
|   return (win_crypto_init(ctx, BCRYPT_SHA512_ALGORITHM));
| #else
|   return (win_crypto_init(ctx, PROV_RSA_AES, CALG_SHA_512));
| #endif
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   return (win_crypto_Update(ctx, indata, insize));
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
|   return (win_crypto_Final(md, 64, ctx));
| }
| 
| #else
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
| 	(void)ctx; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)indata; /* UNUSED */
| 	(void)insize; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)md; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| #endif
| 
| /* NOTE: Message Digest functions are set based on availability and by the
|  * following order of preference.
|  * 1. libc
|  * 2. libc2
|  * 3. libc3
|  * 4. libSystem
|  * 5. Nettle
|  * 6. OpenSSL
|  * 7. libmd
|  * 8. Windows API
|  */
| const struct archive_digest __archive_digest =
| {
| /* MD5 */
|   &__archive_md5init,
|   &__archive_md5update,
|   &__archive_md5final,
| 
| /* RIPEMD160 */
|   &__archive_ripemd160init,
|   &__archive_ripemd160update,
|   &__archive_ripemd160final,
| 
| /* SHA1 */
|   &__archive_sha1init,
|   &__archive_sha1update,
|   &__archive_sha1final,
| 
| /* SHA256 */
|   &__archive_sha256init,
|   &__archive_sha256update,
|   &__archive_sha256final,
| 
| /* SHA384 */
|   &__archive_sha384init,
|   &__archive_sha384update,
|   &__archive_sha384final,
| 
| /* SHA512 */
|   &__archive_sha512init,
|   &__archive_sha512update,
|   &__archive_sha512final
| };
| 
| int
| main(int argc, char **argv)
| {
|   archive_md5_ctx ctx;
|   archive_md5_init(&ctx);
|   archive_md5_update(&ctx, *argv, argc);
|   archive_md5_final(&ctx, NULL);
|   return 0;
| }
| 
configure:17705: result: no
configure:17719: checking support for ARCHIVE_CRYPTO_MD5_LIBSYSTEM
configure:17741: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -o conftest -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2  -I. -I. -I./libarchive  conftest.c -lzstd -llz4 -lz  -L/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/lib -lxml2  >&5
In file included from conftest.c:255:
./libarchive/archive_digest_private.h:115:10: fatal error: CommonCrypto/CommonDigest.h: No such file or directory
  115 | #include <CommonCrypto/CommonDigest.h>
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
compilation terminated.
configure:17741: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "libarchive"
| #define PACKAGE_TARNAME "libarchive"
| #define PACKAGE_VERSION "3.7.2"
| #define PACKAGE_STRING "libarchive 3.7.2"
| #define PACKAGE_BUGREPORT "libarchive-discuss@googlegroups.com"
| #define PACKAGE_URL ""
| #define PACKAGE "libarchive"
| #define VERSION "3.7.2"
| #define __LIBARCHIVE_CONFIG_H_INCLUDED 1
| #define LIBARCHIVE_VERSION_STRING "3.7.2"
| #define LIBARCHIVE_VERSION_NUMBER "3007002"
| #define BSDCPIO_VERSION_STRING "3.7.2"
| #define BSDTAR_VERSION_STRING "3.7.2"
| #define BSDCAT_VERSION_STRING "3.7.2"
| #define BSDUNZIP_VERSION_STRING "3.7.2"
| #define HAVE_STDIO_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_SYS_TIME_H 1
| #define STDC_HEADERS 1
| #define _ALL_SOURCE 1
| #define _DARWIN_C_SOURCE 1
| #define _GNU_SOURCE 1
| #define _HPUX_ALT_XOPEN_SOCKET_API 1
| #define _NETBSD_SOURCE 1
| #define _OPENBSD_SOURCE 1
| #define _POSIX_PTHREAD_SEMANTICS 1
| #define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1
| #define __STDC_WANT_IEC_60559_BFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_DFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1
| #define __STDC_WANT_IEC_60559_TYPES_EXT__ 1
| #define __STDC_WANT_LIB_EXT2__ 1
| #define __STDC_WANT_MATH_SPEC_FUNCS__ 1
| #define _TANDEM_SOURCE 1
| #define __EXTENSIONS__ 1
| #define HAVE_DLFCN_H 1
| #define LT_OBJDIR ".libs/"
| #define HAVE_DIRENT_H 1
| #define HAVE_SYS_WAIT_H 1
| #define HAVE_CTYPE_H 1
| #define HAVE_ERRNO_H 1
| #define HAVE_FCNTL_H 1
| #define HAVE_FNMATCH_H 1
| #define HAVE_GRP_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_LANGINFO_H 1
| #define HAVE_LIMITS_H 1
| #define HAVE_LINUX_FIEMAP_H 1
| #define HAVE_LINUX_FS_H 1
| #define HAVE_LINUX_MAGIC_H 1
| #define HAVE_LINUX_TYPES_H 1
| #define HAVE_WORKING_FS_IOC_GETFLAGS 1
| #define HAVE_LOCALE_H 1
| #define HAVE_PATHS_H 1
| #define HAVE_POLL_H 1
| #define HAVE_PTHREAD_H 1
| #define HAVE_PWD_H 1
| #define HAVE_SIGNAL_H 1
| #define HAVE_SPAWN_H 1
| #define HAVE_STDARG_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_SYS_CDEFS_H 1
| #define HAVE_SYS_IOCTL_H 1
| #define HAVE_SYS_MOUNT_H 1
| #define HAVE_SYS_QUEUE_H 1
| #define HAVE_SYS_PARAM_H 1
| #define HAVE_SYS_POLL_H 1
| #define HAVE_SYS_SELECT_H 1
| #define HAVE_SYS_STATFS_H 1
| #define HAVE_SYS_STATVFS_H 1
| #define HAVE_SYS_SYSMACROS_H 1
| #define HAVE_SYS_TIME_H 1
| #define HAVE_SYS_UTSNAME_H 1
| #define HAVE_SYS_VFS_H 1
| #define HAVE_SYS_XATTR_H 1
| #define HAVE_TIME_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_UTIME_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_WCTYPE_H 1
| #define HAVE_ZLIB_H 1
| #define HAVE_LIBZ 1
| #define HAVE_ICONV 1
| #define ICONV_CONST 
| #define HAVE_ICONV_H 1
| #define HAVE_LZ4_H 1
| #define HAVE_LZ4HC_H 1
| #define HAVE_LIBLZ4 1
| #define HAVE_ZSTD_H 1
| #define HAVE_LIBZSTD 1
| #define HAVE_LIBZSTD_COMPRESSOR 1
| #define HAVE_LIBXML_XMLREADER_H 1
| #define HAVE_LIBXML_XMLWRITER_H 1
| #define HAVE_REGEX_H 1
| #define HAVE_STRUCT_TM_TM_GMTOFF 1
| #define HAVE_STRUCT_STAT_ST_MTIM_TV_NSEC 1
| #define HAVE_STRUCT_STAT_ST_BLKSIZE 1
| #define HAVE_UINTMAX_T 1
| #define HAVE_UNSIGNED_LONG_LONG 1
| #define HAVE_UNSIGNED_LONG_LONG_INT 1
| #define HAVE_LONG_LONG_INT 1
| #define HAVE_INTMAX_T 1
| #define HAVE_UINTMAX_T 1
| #define HAVE_DECL_SIZE_MAX 1
| #define HAVE_DECL_INT32_MAX 1
| #define HAVE_DECL_INT32_MIN 1
| #define HAVE_DECL_INT64_MAX 1
| #define HAVE_DECL_INT64_MIN 1
| #define HAVE_DECL_UINT64_MAX 1
| #define HAVE_DECL_UINT32_MAX 1
| #define HAVE_DECL_INTMAX_MAX 1
| #define HAVE_DECL_INTMAX_MIN 1
| #define HAVE_DECL_UINTMAX_MAX 1
| #define HAVE_DECL_SSIZE_MAX 1
| #define HAVE_EILSEQ 1
| #define HAVE_WCHAR_T 1
| #define SIZEOF_WCHAR_T 4
| #define SIZEOF_INT 4
| #define SIZEOF_LONG 4
| #define MAJOR_IN_SYSMACROS 1
| #define HAVE_FSEEKO 1
| #define LSTAT_FOLLOWS_SLASHED_SYMLINK 1
| #define HAVE_LSTAT_EMPTY_STRING_BUG 1
| #define HAVE_STAT_EMPTY_STRING_BUG 1
| #define HAVE_DECL_STRERROR_R 1
| #define HAVE_STRERROR_R 1
| #define STRERROR_R_CHAR_P 1
| #define HAVE_STRFTIME 1
| #define HAVE_VPRINTF 1
| #define HAVE_ARC4RANDOM_BUF 1
| #define HAVE_CHOWN 1
| #define HAVE_CHROOT 1
| #define HAVE_CTIME_R 1
| #define HAVE_FCHDIR 1
| #define HAVE_FCHMOD 1
| #define HAVE_FCHOWN 1
| #define HAVE_FCNTL 1
| #define HAVE_FDOPENDIR 1
| #define HAVE_FNMATCH 1
| #define HAVE_FORK 1
| #define HAVE_FSTAT 1
| #define HAVE_FSTATAT 1
| #define HAVE_FSTATFS 1
| #define HAVE_FSTATVFS 1
| #define HAVE_FTRUNCATE 1
| #define HAVE_FUTIMENS 1
| #define HAVE_FUTIMES 1
| #define HAVE_FUTIMESAT 1
| #define HAVE_GETEUID 1
| #define HAVE_GETLINE 1
| #define HAVE_GETPID 1
| #define HAVE_GETGRGID_R 1
| #define HAVE_GETGRNAM_R 1
| #define HAVE_GETPWNAM_R 1
| #define HAVE_GETPWUID_R 1
| #define HAVE_GMTIME_R 1
| #define HAVE_LCHMOD 1
| #define HAVE_LCHOWN 1
| #define HAVE_LINK 1
| #define HAVE_LINKAT 1
| #define HAVE_LOCALTIME_R 1
| #define HAVE_LSTAT 1
| #define HAVE_LUTIMES 1
| #define HAVE_MBRTOWC 1
| #define HAVE_MEMMOVE 1
| #define HAVE_MEMSET 1
| #define HAVE_MKDIR 1
| #define HAVE_MKFIFO 1
| #define HAVE_MKNOD 1
| #define HAVE_MKSTEMP 1
| #define HAVE_NL_LANGINFO 1
| #define HAVE_OPENAT 1
| #define HAVE_PIPE 1
| #define HAVE_POLL 1
| #define HAVE_POSIX_SPAWNP 1
| #define HAVE_READLINK 1
| #define HAVE_READLINKAT 1
| #define HAVE_SELECT 1
| #define HAVE_SETENV 1
| #define HAVE_SETLOCALE 1
| #define HAVE_SIGACTION 1
| #define HAVE_STATFS 1
| #define HAVE_STATVFS 1
| #define HAVE_STRCHR 1
| #define HAVE_STRDUP 1
| #define HAVE_STRERROR 1
| #define HAVE_STRNLEN 1
| #define HAVE_STRRCHR 1
| #define HAVE_SYMLINK 1
| #define HAVE_TIMEGM 1
| #define HAVE_TZSET 1
| #define HAVE_UNLINKAT 1
| #define HAVE_UNSETENV 1
| #define HAVE_UTIME 1
| #define HAVE_UTIMENSAT 1
| #define HAVE_UTIMES 1
| #define HAVE_VFORK 1
| #define HAVE_WCRTOMB 1
| #define HAVE_WCSCMP 1
| #define HAVE_WCSCPY 1
| #define HAVE_WCSLEN 1
| #define HAVE_WCTOMB 1
| #define HAVE_WMEMCMP 1
| #define HAVE_WMEMCPY 1
| #define HAVE_WMEMMOVE 1
| #define HAVE_READDIR_R 1
| #define HAVE_DIRFD 1
| /* end confdefs.h.  */
| 
| #define ARCHIVE_MD5_COMPILE_TEST
| #define ARCHIVE_CRYPTO_MD5_LIBSYSTEM
| #define PLATFORM_CONFIG_H "check_crypto_md.h"
| 
| /*-
| * Copyright (c) 2003-2007 Tim Kientzle
| * Copyright (c) 2011 Andres Mejia
| * Copyright (c) 2011 Michihiro NAKAJIMA
| * All rights reserved.
| *
| * Redistribution and use in source and binary forms, with or without
| * modification, are permitted provided that the following conditions
| * are met:
| * 1. Redistributions of source code must retain the above copyright
| *    notice, this list of conditions and the following disclaimer.
| * 2. Redistributions in binary form must reproduce the above copyright
| *    notice, this list of conditions and the following disclaimer in the
| *    documentation and/or other materials provided with the distribution.
| *
| * THIS SOFTWARE IS PROVIDED BY THE AUTHOR(S) ``AS IS'' AND ANY EXPRESS OR
| * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
| * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
| * IN NO EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY DIRECT, INDIRECT,
| * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
| * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
| * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
| * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
| * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
| * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
| */
| 
| #include "archive_platform.h"
| 
| #include "archive.h"
| #include "archive_digest_private.h"
| 
| /* In particular, force the configure probe to break if it tries
|  * to test a combination of OpenSSL and libmd. */
| #if defined(ARCHIVE_CRYPTO_OPENSSL) && defined(ARCHIVE_CRYPTO_LIBMD)
| #error Cannot use both OpenSSL and libmd.
| #endif
| 
| /* Common in other bcrypt implementations, but missing from VS2008. */
| #ifndef BCRYPT_SUCCESS
| #define BCRYPT_SUCCESS(r) ((NTSTATUS)(r) == STATUS_SUCCESS)
| #endif
| 
| /*
|  * Message digest functions for Windows platform.
|  */
| #if defined(ARCHIVE_CRYPTO_MD5_WIN)    ||\
| 	defined(ARCHIVE_CRYPTO_SHA1_WIN)   ||\
| 	defined(ARCHIVE_CRYPTO_SHA256_WIN) ||\
| 	defined(ARCHIVE_CRYPTO_SHA384_WIN) ||\
| 	defined(ARCHIVE_CRYPTO_SHA512_WIN)
| 
| /*
|  * Initialize a Message digest.
|  */
| #if defined(HAVE_BCRYPT_H) && _WIN32_WINNT >= _WIN32_WINNT_VISTA
| static int
| win_crypto_init(Digest_CTX *ctx, const WCHAR *algo)
| {
| 	NTSTATUS status;
| 	ctx->valid = 0;
| 
| 	status = BCryptOpenAlgorithmProvider(&ctx->hAlg, algo, NULL, 0);
| 	if (!BCRYPT_SUCCESS(status))
| 		return (ARCHIVE_FAILED);
| 	status = BCryptCreateHash(ctx->hAlg, &ctx->hHash, NULL, 0, NULL, 0, 0);
| 	if (!BCRYPT_SUCCESS(status)) {
| 		BCryptCloseAlgorithmProvider(ctx->hAlg, 0);
| 		return (ARCHIVE_FAILED);
| 	}
| 
| 	ctx->valid = 1;
| 	return (ARCHIVE_OK);
| }
| #else
| static int
| win_crypto_init(Digest_CTX *ctx, DWORD prov, ALG_ID algId)
| {
| 
| 	ctx->valid = 0;
| 	if (!CryptAcquireContext(&ctx->cryptProv, NULL, NULL,
| 	    prov, CRYPT_VERIFYCONTEXT)) {
| 		if (GetLastError() != (DWORD)NTE_BAD_KEYSET)
| 			return (ARCHIVE_FAILED);
| 		if (!CryptAcquireContext(&ctx->cryptProv, NULL, NULL,
| 		    prov, CRYPT_NEWKEYSET))
| 			return (ARCHIVE_FAILED);
| 	}
| 
| 	if (!CryptCreateHash(ctx->cryptProv, algId, 0, 0, &ctx->hash)) {
| 		CryptReleaseContext(ctx->cryptProv, 0);
| 		return (ARCHIVE_FAILED);
| 	}
| 
| 	ctx->valid = 1;
| 	return (ARCHIVE_OK);
| }
| #endif
| 
| /*
|  * Update a Message digest.
|  */
| static int
| win_crypto_Update(Digest_CTX *ctx, const unsigned char *buf, size_t len)
| {
| 
| 	if (!ctx->valid)
| 		return (ARCHIVE_FAILED);
| 
| #if defined(HAVE_BCRYPT_H) && _WIN32_WINNT >= _WIN32_WINNT_VISTA
| 	BCryptHashData(ctx->hHash,
| 		      (PUCHAR)(uintptr_t)buf,
| 		      (ULONG)len, 0);
| #else
| 	CryptHashData(ctx->hash,
| 		      (unsigned char *)(uintptr_t)buf,
| 		      (DWORD)len, 0);
| #endif
| 	return (ARCHIVE_OK);
| }
| 
| static int
| win_crypto_Final(unsigned char *buf, size_t bufsize, Digest_CTX *ctx)
| {
| #if !(defined(HAVE_BCRYPT_H) && _WIN32_WINNT >= _WIN32_WINNT_VISTA)
| 	DWORD siglen = (DWORD)bufsize;
| #endif
| 
| 	if (!ctx->valid)
| 		return (ARCHIVE_FAILED);
| 
| #if defined(HAVE_BCRYPT_H) && _WIN32_WINNT >= _WIN32_WINNT_VISTA
| 	BCryptFinishHash(ctx->hHash, buf, (ULONG)bufsize, 0);
| 	BCryptDestroyHash(ctx->hHash);
| 	BCryptCloseAlgorithmProvider(ctx->hAlg, 0);
| #else
| 	CryptGetHashParam(ctx->hash, HP_HASHVAL, buf, &siglen, 0);
| 	CryptDestroyHash(ctx->hash);
| 	CryptReleaseContext(ctx->cryptProv, 0);
| #endif
| 	ctx->valid = 0;
| 	return (ARCHIVE_OK);
| }
| 
| #endif /* defined(ARCHIVE_CRYPTO_*_WIN) */
| 
| 
| /* MD5 implementations */
| #if defined(ARCHIVE_CRYPTO_MD5_LIBC)
| 
| static int
| __archive_md5init(archive_md5_ctx *ctx)
| {
|   MD5Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5update(archive_md5_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   MD5Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5final(archive_md5_ctx *ctx, void *md)
| {
|   MD5Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_MD5_LIBMD)
| 
| static int
| __archive_md5init(archive_md5_ctx *ctx)
| {
|   MD5Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5update(archive_md5_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   MD5Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5final(archive_md5_ctx *ctx, void *md)
| {
|   MD5Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_MD5_LIBSYSTEM)
| 
| static int
| __archive_md5init(archive_md5_ctx *ctx)
| {
|   CC_MD5_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5update(archive_md5_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   CC_MD5_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5final(archive_md5_ctx *ctx, void *md)
| {
|   CC_MD5_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_MD5_MBEDTLS)
| 
| static int
| __archive_md5init(archive_md5_ctx *ctx)
| {
|   mbedtls_md5_init(ctx);
|   if (mbedtls_md5_starts_ret(ctx) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_md5update(archive_md5_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   if (mbedtls_md5_update_ret(ctx, indata, insize) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_md5final(archive_md5_ctx *ctx, void *md)
| {
|   if (mbedtls_md5_finish_ret(ctx, md) == 0) {
|     mbedtls_md5_free(ctx);
|     return (ARCHIVE_OK);
|   } else {
|     mbedtls_md5_free(ctx);
|     return (ARCHIVE_FATAL);
|   }
| }
| 
| #elif defined(ARCHIVE_CRYPTO_MD5_NETTLE)
| 
| static int
| __archive_md5init(archive_md5_ctx *ctx)
| {
|   md5_init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5update(archive_md5_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   md5_update(ctx, insize, indata);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5final(archive_md5_ctx *ctx, void *md)
| {
|   md5_digest(ctx, MD5_DIGEST_SIZE, md);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_MD5_OPENSSL)
| 
| static int
| __archive_md5init(archive_md5_ctx *ctx)
| {
|   if ((*ctx = EVP_MD_CTX_new()) == NULL)
| 	return (ARCHIVE_FAILED);
|   if (!EVP_DigestInit(*ctx, EVP_md5()))
| 	return (ARCHIVE_FAILED);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5update(archive_md5_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   EVP_DigestUpdate(*ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5final(archive_md5_ctx *ctx, void *md)
| {
|   /* HACK: archive_write_set_format_xar.c is finalizing empty contexts, so
|    * this is meant to cope with that. Real fix is probably to fix
|    * archive_write_set_format_xar.c
|    */
|   if (*ctx) {
|     EVP_DigestFinal(*ctx, md, NULL);
|     EVP_MD_CTX_free(*ctx);
|     *ctx = NULL;
|   }
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_MD5_WIN)
| 
| static int
| __archive_md5init(archive_md5_ctx *ctx)
| {
| #if defined(HAVE_BCRYPT_H) && _WIN32_WINNT >= _WIN32_WINNT_VISTA
|   return (win_crypto_init(ctx, BCRYPT_MD5_ALGORITHM));
| #else
|   return (win_crypto_init(ctx, PROV_RSA_FULL, CALG_MD5));
| #endif
| }
| 
| static int
| __archive_md5update(archive_md5_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   return (win_crypto_Update(ctx, indata, insize));
| }
| 
| static int
| __archive_md5final(archive_md5_ctx *ctx, void *md)
| {
|   return (win_crypto_Final(md, 16, ctx));
| }
| 
| #else
| 
| static int
| __archive_md5init(archive_md5_ctx *ctx)
| {
| 	(void)ctx; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_md5update(archive_md5_ctx *ctx, const void *indata,
|     size_t insize)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)indata; /* UNUSED */
| 	(void)insize; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_md5final(archive_md5_ctx *ctx, void *md)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)md; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| #endif
| 
| /* RIPEMD160 implementations */
| #if defined(ARCHIVE_CRYPTO_RMD160_LIBC)
| 
| static int
| __archive_ripemd160init(archive_rmd160_ctx *ctx)
| {
|   RMD160Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   RMD160Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md)
| {
|   RMD160Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_RMD160_LIBMD)
| 
| static int
| __archive_ripemd160init(archive_rmd160_ctx *ctx)
| {
|   RIPEMD160_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   RIPEMD160_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md)
| {
|   RIPEMD160_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_RMD160_MBEDTLS)
| 
| static int
| __archive_ripemd160init(archive_rmd160_ctx *ctx)
| {
|   mbedtls_ripemd160_init(ctx);
|   if (mbedtls_ripemd160_starts_ret(ctx) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   if (mbedtls_ripemd160_update_ret(ctx, indata, insize) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md)
| {
|   if (mbedtls_ripemd160_finish_ret(ctx, md) == 0) {
|     mbedtls_ripemd160_free(ctx);
|     return (ARCHIVE_OK);
|   } else {
|     mbedtls_ripemd160_free(ctx);
|     return (ARCHIVE_FATAL);
|   }
| }
| 
| #elif defined(ARCHIVE_CRYPTO_RMD160_NETTLE)
| 
| static int
| __archive_ripemd160init(archive_rmd160_ctx *ctx)
| {
|   ripemd160_init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   ripemd160_update(ctx, insize, indata);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md)
| {
|   ripemd160_digest(ctx, RIPEMD160_DIGEST_SIZE, md);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_RMD160_OPENSSL)
| 
| static int
| __archive_ripemd160init(archive_rmd160_ctx *ctx)
| {
|   if ((*ctx = EVP_MD_CTX_new()) == NULL)
| 	return (ARCHIVE_FAILED);
|   if (!EVP_DigestInit(*ctx, EVP_ripemd160()))
| 	return (ARCHIVE_FAILED);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   EVP_DigestUpdate(*ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md)
| {
|   if (*ctx) {
|     EVP_DigestFinal(*ctx, md, NULL);
|     EVP_MD_CTX_free(*ctx);
|     *ctx = NULL;
|   }
|   return (ARCHIVE_OK);
| }
| 
| #else
| 
| static int
| __archive_ripemd160init(archive_rmd160_ctx *ctx)
| {
| 	(void)ctx; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata,
|     size_t insize)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)indata; /* UNUSED */
| 	(void)insize; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)md; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| #endif
| 
| /* SHA1 implementations */
| #if defined(ARCHIVE_CRYPTO_SHA1_LIBC)
| 
| static int
| __archive_sha1init(archive_sha1_ctx *ctx)
| {
|   SHA1Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1update(archive_sha1_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA1Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1final(archive_sha1_ctx *ctx, void *md)
| {
|   SHA1Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA1_LIBMD)
| 
| static int
| __archive_sha1init(archive_sha1_ctx *ctx)
| {
|   SHA1_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1update(archive_sha1_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA1_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1final(archive_sha1_ctx *ctx, void *md)
| {
|   SHA1_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA1_LIBSYSTEM)
| 
| static int
| __archive_sha1init(archive_sha1_ctx *ctx)
| {
|   CC_SHA1_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1update(archive_sha1_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   CC_SHA1_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1final(archive_sha1_ctx *ctx, void *md)
| {
|   CC_SHA1_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA1_MBEDTLS)
| 
| static int
| __archive_sha1init(archive_sha1_ctx *ctx)
| {
|   mbedtls_sha1_init(ctx);
|   if (mbedtls_sha1_starts_ret(ctx) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_sha1update(archive_sha1_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   if (mbedtls_sha1_update_ret(ctx, indata, insize) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_sha1final(archive_sha1_ctx *ctx, void *md)
| {
|   if (mbedtls_sha1_finish_ret(ctx, md) == 0) {
|     mbedtls_sha1_free(ctx);
|     return (ARCHIVE_OK);
|   } else {
|     mbedtls_sha1_free(ctx);
|     return (ARCHIVE_FATAL);
|   }
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA1_NETTLE)
| 
| static int
| __archive_sha1init(archive_sha1_ctx *ctx)
| {
|   sha1_init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1update(archive_sha1_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   sha1_update(ctx, insize, indata);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1final(archive_sha1_ctx *ctx, void *md)
| {
|   sha1_digest(ctx, SHA1_DIGEST_SIZE, md);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA1_OPENSSL)
| 
| static int
| __archive_sha1init(archive_sha1_ctx *ctx)
| {
|   if ((*ctx = EVP_MD_CTX_new()) == NULL)
| 	return (ARCHIVE_FAILED);
|   if (!EVP_DigestInit(*ctx, EVP_sha1()))
| 	return (ARCHIVE_FAILED);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1update(archive_sha1_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   EVP_DigestUpdate(*ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1final(archive_sha1_ctx *ctx, void *md)
| {
|   /* HACK: archive_write_set_format_xar.c is finalizing empty contexts, so
|    * this is meant to cope with that. Real fix is probably to fix
|    * archive_write_set_format_xar.c
|    */
|   if (*ctx) {
|     EVP_DigestFinal(*ctx, md, NULL);
|     EVP_MD_CTX_free(*ctx);
|     *ctx = NULL;
|   }
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA1_WIN)
| 
| static int
| __archive_sha1init(archive_sha1_ctx *ctx)
| {
| #if defined(HAVE_BCRYPT_H) && _WIN32_WINNT >= _WIN32_WINNT_VISTA
|   return (win_crypto_init(ctx, BCRYPT_SHA1_ALGORITHM));
| #else
|   return (win_crypto_init(ctx, PROV_RSA_FULL, CALG_SHA1));
| #endif
| }
| 
| static int
| __archive_sha1update(archive_sha1_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   return (win_crypto_Update(ctx, indata, insize));
| }
| 
| static int
| __archive_sha1final(archive_sha1_ctx *ctx, void *md)
| {
|   return (win_crypto_Final(md, 20, ctx));
| }
| 
| #else
| 
| static int
| __archive_sha1init(archive_sha1_ctx *ctx)
| {
| 	(void)ctx; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_sha1update(archive_sha1_ctx *ctx, const void *indata,
|     size_t insize)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)indata; /* UNUSED */
| 	(void)insize; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_sha1final(archive_sha1_ctx *ctx, void *md)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)md; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| #endif
| 
| /* SHA256 implementations */
| #if defined(ARCHIVE_CRYPTO_SHA256_LIBC)
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
|   SHA256_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA256_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
|   SHA256_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA256_LIBC2)
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
|   SHA256Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA256Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
|   SHA256Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA256_LIBC3)
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
|   SHA256Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA256Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
|   SHA256Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA256_LIBMD)
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
|   SHA256_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA256_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
|   SHA256_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA256_LIBSYSTEM)
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
|   CC_SHA256_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   CC_SHA256_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
|   CC_SHA256_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA256_MBEDTLS)
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
|   mbedtls_sha256_init(ctx);
|   if (mbedtls_sha256_starts_ret(ctx, 0) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   if (mbedtls_sha256_update_ret(ctx, indata, insize) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
|   if (mbedtls_sha256_finish_ret(ctx, md) == 0) {
|     mbedtls_sha256_free(ctx);
|     return (ARCHIVE_OK);
|   } else {
|     mbedtls_sha256_free(ctx);
|     return (ARCHIVE_FATAL);
|   }
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA256_NETTLE)
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
|   sha256_init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   sha256_update(ctx, insize, indata);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
|   sha256_digest(ctx, SHA256_DIGEST_SIZE, md);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA256_OPENSSL)
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
|   if ((*ctx = EVP_MD_CTX_new()) == NULL)
| 	return (ARCHIVE_FAILED);
|   if (!EVP_DigestInit(*ctx, EVP_sha256()))
| 	return (ARCHIVE_FAILED);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   EVP_DigestUpdate(*ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
|   if (*ctx) {
|     EVP_DigestFinal(*ctx, md, NULL);
|     EVP_MD_CTX_free(*ctx);
|     *ctx = NULL;
|   }
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA256_WIN)
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
| #if defined(HAVE_BCRYPT_H) && _WIN32_WINNT >= _WIN32_WINNT_VISTA
|   return (win_crypto_init(ctx, BCRYPT_SHA256_ALGORITHM));
| #else
|   return (win_crypto_init(ctx, PROV_RSA_AES, CALG_SHA_256));
| #endif
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   return (win_crypto_Update(ctx, indata, insize));
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
|   return (win_crypto_Final(md, 32, ctx));
| }
| 
| #else
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
| 	(void)ctx; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)indata; /* UNUSED */
| 	(void)insize; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)md; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| #endif
| 
| /* SHA384 implementations */
| #if defined(ARCHIVE_CRYPTO_SHA384_LIBC)
| 
| static int
| __archive_sha384init(archive_sha384_ctx *ctx)
| {
|   SHA384_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384update(archive_sha384_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA384_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384final(archive_sha384_ctx *ctx, void *md)
| {
|   SHA384_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA384_LIBC2)
| 
| static int
| __archive_sha384init(archive_sha384_ctx *ctx)
| {
|   SHA384Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384update(archive_sha384_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA384Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384final(archive_sha384_ctx *ctx, void *md)
| {
|   SHA384Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA384_LIBC3)
| 
| static int
| __archive_sha384init(archive_sha384_ctx *ctx)
| {
|   SHA384Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384update(archive_sha384_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA384Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384final(archive_sha384_ctx *ctx, void *md)
| {
|   SHA384Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA384_LIBSYSTEM)
| 
| static int
| __archive_sha384init(archive_sha384_ctx *ctx)
| {
|   CC_SHA384_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384update(archive_sha384_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   CC_SHA384_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384final(archive_sha384_ctx *ctx, void *md)
| {
|   CC_SHA384_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA384_MBEDTLS)
| 
| static int
| __archive_sha384init(archive_sha384_ctx *ctx)
| {
|   mbedtls_sha512_init(ctx);
|   if (mbedtls_sha512_starts_ret(ctx, 1) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_sha384update(archive_sha384_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   if (mbedtls_sha512_update_ret(ctx, indata, insize) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_sha384final(archive_sha384_ctx *ctx, void *md)
| {
|   if (mbedtls_sha512_finish_ret(ctx, md) == 0) {
|     mbedtls_sha512_free(ctx);
|     return (ARCHIVE_OK);
|   } else {
|     mbedtls_sha512_free(ctx);
|     return (ARCHIVE_FATAL);
|   }
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA384_NETTLE)
| 
| static int
| __archive_sha384init(archive_sha384_ctx *ctx)
| {
|   sha384_init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384update(archive_sha384_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   sha384_update(ctx, insize, indata);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384final(archive_sha384_ctx *ctx, void *md)
| {
|   sha384_digest(ctx, SHA384_DIGEST_SIZE, md);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA384_OPENSSL)
| 
| static int
| __archive_sha384init(archive_sha384_ctx *ctx)
| {
|   if ((*ctx = EVP_MD_CTX_new()) == NULL)
| 	return (ARCHIVE_FAILED);
|   if (!EVP_DigestInit(*ctx, EVP_sha384()))
| 	return (ARCHIVE_FAILED);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384update(archive_sha384_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   EVP_DigestUpdate(*ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384final(archive_sha384_ctx *ctx, void *md)
| {
|   if (*ctx) {
|     EVP_DigestFinal(*ctx, md, NULL);
|     EVP_MD_CTX_free(*ctx);
|     *ctx = NULL;
|   }
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA384_WIN)
| 
| static int
| __archive_sha384init(archive_sha384_ctx *ctx)
| {
| #if defined(HAVE_BCRYPT_H) && _WIN32_WINNT >= _WIN32_WINNT_VISTA
|   return (win_crypto_init(ctx, BCRYPT_SHA384_ALGORITHM));
| #else
|   return (win_crypto_init(ctx, PROV_RSA_AES, CALG_SHA_384));
| #endif
| }
| 
| static int
| __archive_sha384update(archive_sha384_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   return (win_crypto_Update(ctx, indata, insize));
| }
| 
| static int
| __archive_sha384final(archive_sha384_ctx *ctx, void *md)
| {
|   return (win_crypto_Final(md, 48, ctx));
| }
| 
| #else
| 
| static int
| __archive_sha384init(archive_sha384_ctx *ctx)
| {
| 	(void)ctx; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_sha384update(archive_sha384_ctx *ctx, const void *indata,
|     size_t insize)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)indata; /* UNUSED */
| 	(void)insize; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_sha384final(archive_sha384_ctx *ctx, void *md)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)md; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| #endif
| 
| /* SHA512 implementations */
| #if defined(ARCHIVE_CRYPTO_SHA512_LIBC)
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
|   SHA512_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA512_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
|   SHA512_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA512_LIBC2)
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
|   SHA512Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA512Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
|   SHA512Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA512_LIBC3)
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
|   SHA512Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA512Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
|   SHA512Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA512_LIBMD)
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
|   SHA512_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA512_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
|   SHA512_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA512_LIBSYSTEM)
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
|   CC_SHA512_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   CC_SHA512_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
|   CC_SHA512_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA512_MBEDTLS)
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
|   mbedtls_sha512_init(ctx);
|   if (mbedtls_sha512_starts_ret(ctx, 0) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   if (mbedtls_sha512_update_ret(ctx, indata, insize) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
|   if (mbedtls_sha512_finish_ret(ctx, md) == 0) {
|     mbedtls_sha512_free(ctx);
|     return (ARCHIVE_OK);
|   } else {
|     mbedtls_sha512_free(ctx);
|     return (ARCHIVE_FATAL);
|   }
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA512_NETTLE)
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
|   sha512_init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   sha512_update(ctx, insize, indata);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
|   sha512_digest(ctx, SHA512_DIGEST_SIZE, md);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA512_OPENSSL)
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
|   if ((*ctx = EVP_MD_CTX_new()) == NULL)
| 	return (ARCHIVE_FAILED);
|   if (!EVP_DigestInit(*ctx, EVP_sha512()))
| 	return (ARCHIVE_FAILED);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   EVP_DigestUpdate(*ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
|   if (*ctx) {
|     EVP_DigestFinal(*ctx, md, NULL);
|     EVP_MD_CTX_free(*ctx);
|     *ctx = NULL;
|   }
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA512_WIN)
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
| #if defined(HAVE_BCRYPT_H) && _WIN32_WINNT >= _WIN32_WINNT_VISTA
|   return (win_crypto_init(ctx, BCRYPT_SHA512_ALGORITHM));
| #else
|   return (win_crypto_init(ctx, PROV_RSA_AES, CALG_SHA_512));
| #endif
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   return (win_crypto_Update(ctx, indata, insize));
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
|   return (win_crypto_Final(md, 64, ctx));
| }
| 
| #else
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
| 	(void)ctx; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)indata; /* UNUSED */
| 	(void)insize; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)md; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| #endif
| 
| /* NOTE: Message Digest functions are set based on availability and by the
|  * following order of preference.
|  * 1. libc
|  * 2. libc2
|  * 3. libc3
|  * 4. libSystem
|  * 5. Nettle
|  * 6. OpenSSL
|  * 7. libmd
|  * 8. Windows API
|  */
| const struct archive_digest __archive_digest =
| {
| /* MD5 */
|   &__archive_md5init,
|   &__archive_md5update,
|   &__archive_md5final,
| 
| /* RIPEMD160 */
|   &__archive_ripemd160init,
|   &__archive_ripemd160update,
|   &__archive_ripemd160final,
| 
| /* SHA1 */
|   &__archive_sha1init,
|   &__archive_sha1update,
|   &__archive_sha1final,
| 
| /* SHA256 */
|   &__archive_sha256init,
|   &__archive_sha256update,
|   &__archive_sha256final,
| 
| /* SHA384 */
|   &__archive_sha384init,
|   &__archive_sha384update,
|   &__archive_sha384final,
| 
| /* SHA512 */
|   &__archive_sha512init,
|   &__archive_sha512update,
|   &__archive_sha512final
| };
| 
| int
| main(int argc, char **argv)
| {
|   archive_md5_ctx ctx;
|   archive_md5_init(&ctx);
|   archive_md5_update(&ctx, *argv, argc);
|   archive_md5_final(&ctx, NULL);
|   return 0;
| }
| 
configure:17752: result: no
configure:17766: checking support for ARCHIVE_CRYPTO_RMD160_LIBC
configure:17788: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -o conftest -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2  -I. -I. -I./libarchive  conftest.c -lzstd -llz4 -lz  -L/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/lib -lxml2  >&5
In file included from conftest.c:255:
./libarchive/archive_digest_private.h:67:10: fatal error: rmd160.h: No such file or directory
   67 | #include <rmd160.h>
      |          ^~~~~~~~~~
compilation terminated.
configure:17788: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "libarchive"
| #define PACKAGE_TARNAME "libarchive"
| #define PACKAGE_VERSION "3.7.2"
| #define PACKAGE_STRING "libarchive 3.7.2"
| #define PACKAGE_BUGREPORT "libarchive-discuss@googlegroups.com"
| #define PACKAGE_URL ""
| #define PACKAGE "libarchive"
| #define VERSION "3.7.2"
| #define __LIBARCHIVE_CONFIG_H_INCLUDED 1
| #define LIBARCHIVE_VERSION_STRING "3.7.2"
| #define LIBARCHIVE_VERSION_NUMBER "3007002"
| #define BSDCPIO_VERSION_STRING "3.7.2"
| #define BSDTAR_VERSION_STRING "3.7.2"
| #define BSDCAT_VERSION_STRING "3.7.2"
| #define BSDUNZIP_VERSION_STRING "3.7.2"
| #define HAVE_STDIO_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_SYS_TIME_H 1
| #define STDC_HEADERS 1
| #define _ALL_SOURCE 1
| #define _DARWIN_C_SOURCE 1
| #define _GNU_SOURCE 1
| #define _HPUX_ALT_XOPEN_SOCKET_API 1
| #define _NETBSD_SOURCE 1
| #define _OPENBSD_SOURCE 1
| #define _POSIX_PTHREAD_SEMANTICS 1
| #define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1
| #define __STDC_WANT_IEC_60559_BFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_DFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1
| #define __STDC_WANT_IEC_60559_TYPES_EXT__ 1
| #define __STDC_WANT_LIB_EXT2__ 1
| #define __STDC_WANT_MATH_SPEC_FUNCS__ 1
| #define _TANDEM_SOURCE 1
| #define __EXTENSIONS__ 1
| #define HAVE_DLFCN_H 1
| #define LT_OBJDIR ".libs/"
| #define HAVE_DIRENT_H 1
| #define HAVE_SYS_WAIT_H 1
| #define HAVE_CTYPE_H 1
| #define HAVE_ERRNO_H 1
| #define HAVE_FCNTL_H 1
| #define HAVE_FNMATCH_H 1
| #define HAVE_GRP_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_LANGINFO_H 1
| #define HAVE_LIMITS_H 1
| #define HAVE_LINUX_FIEMAP_H 1
| #define HAVE_LINUX_FS_H 1
| #define HAVE_LINUX_MAGIC_H 1
| #define HAVE_LINUX_TYPES_H 1
| #define HAVE_WORKING_FS_IOC_GETFLAGS 1
| #define HAVE_LOCALE_H 1
| #define HAVE_PATHS_H 1
| #define HAVE_POLL_H 1
| #define HAVE_PTHREAD_H 1
| #define HAVE_PWD_H 1
| #define HAVE_SIGNAL_H 1
| #define HAVE_SPAWN_H 1
| #define HAVE_STDARG_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_SYS_CDEFS_H 1
| #define HAVE_SYS_IOCTL_H 1
| #define HAVE_SYS_MOUNT_H 1
| #define HAVE_SYS_QUEUE_H 1
| #define HAVE_SYS_PARAM_H 1
| #define HAVE_SYS_POLL_H 1
| #define HAVE_SYS_SELECT_H 1
| #define HAVE_SYS_STATFS_H 1
| #define HAVE_SYS_STATVFS_H 1
| #define HAVE_SYS_SYSMACROS_H 1
| #define HAVE_SYS_TIME_H 1
| #define HAVE_SYS_UTSNAME_H 1
| #define HAVE_SYS_VFS_H 1
| #define HAVE_SYS_XATTR_H 1
| #define HAVE_TIME_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_UTIME_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_WCTYPE_H 1
| #define HAVE_ZLIB_H 1
| #define HAVE_LIBZ 1
| #define HAVE_ICONV 1
| #define ICONV_CONST 
| #define HAVE_ICONV_H 1
| #define HAVE_LZ4_H 1
| #define HAVE_LZ4HC_H 1
| #define HAVE_LIBLZ4 1
| #define HAVE_ZSTD_H 1
| #define HAVE_LIBZSTD 1
| #define HAVE_LIBZSTD_COMPRESSOR 1
| #define HAVE_LIBXML_XMLREADER_H 1
| #define HAVE_LIBXML_XMLWRITER_H 1
| #define HAVE_REGEX_H 1
| #define HAVE_STRUCT_TM_TM_GMTOFF 1
| #define HAVE_STRUCT_STAT_ST_MTIM_TV_NSEC 1
| #define HAVE_STRUCT_STAT_ST_BLKSIZE 1
| #define HAVE_UINTMAX_T 1
| #define HAVE_UNSIGNED_LONG_LONG 1
| #define HAVE_UNSIGNED_LONG_LONG_INT 1
| #define HAVE_LONG_LONG_INT 1
| #define HAVE_INTMAX_T 1
| #define HAVE_UINTMAX_T 1
| #define HAVE_DECL_SIZE_MAX 1
| #define HAVE_DECL_INT32_MAX 1
| #define HAVE_DECL_INT32_MIN 1
| #define HAVE_DECL_INT64_MAX 1
| #define HAVE_DECL_INT64_MIN 1
| #define HAVE_DECL_UINT64_MAX 1
| #define HAVE_DECL_UINT32_MAX 1
| #define HAVE_DECL_INTMAX_MAX 1
| #define HAVE_DECL_INTMAX_MIN 1
| #define HAVE_DECL_UINTMAX_MAX 1
| #define HAVE_DECL_SSIZE_MAX 1
| #define HAVE_EILSEQ 1
| #define HAVE_WCHAR_T 1
| #define SIZEOF_WCHAR_T 4
| #define SIZEOF_INT 4
| #define SIZEOF_LONG 4
| #define MAJOR_IN_SYSMACROS 1
| #define HAVE_FSEEKO 1
| #define LSTAT_FOLLOWS_SLASHED_SYMLINK 1
| #define HAVE_LSTAT_EMPTY_STRING_BUG 1
| #define HAVE_STAT_EMPTY_STRING_BUG 1
| #define HAVE_DECL_STRERROR_R 1
| #define HAVE_STRERROR_R 1
| #define STRERROR_R_CHAR_P 1
| #define HAVE_STRFTIME 1
| #define HAVE_VPRINTF 1
| #define HAVE_ARC4RANDOM_BUF 1
| #define HAVE_CHOWN 1
| #define HAVE_CHROOT 1
| #define HAVE_CTIME_R 1
| #define HAVE_FCHDIR 1
| #define HAVE_FCHMOD 1
| #define HAVE_FCHOWN 1
| #define HAVE_FCNTL 1
| #define HAVE_FDOPENDIR 1
| #define HAVE_FNMATCH 1
| #define HAVE_FORK 1
| #define HAVE_FSTAT 1
| #define HAVE_FSTATAT 1
| #define HAVE_FSTATFS 1
| #define HAVE_FSTATVFS 1
| #define HAVE_FTRUNCATE 1
| #define HAVE_FUTIMENS 1
| #define HAVE_FUTIMES 1
| #define HAVE_FUTIMESAT 1
| #define HAVE_GETEUID 1
| #define HAVE_GETLINE 1
| #define HAVE_GETPID 1
| #define HAVE_GETGRGID_R 1
| #define HAVE_GETGRNAM_R 1
| #define HAVE_GETPWNAM_R 1
| #define HAVE_GETPWUID_R 1
| #define HAVE_GMTIME_R 1
| #define HAVE_LCHMOD 1
| #define HAVE_LCHOWN 1
| #define HAVE_LINK 1
| #define HAVE_LINKAT 1
| #define HAVE_LOCALTIME_R 1
| #define HAVE_LSTAT 1
| #define HAVE_LUTIMES 1
| #define HAVE_MBRTOWC 1
| #define HAVE_MEMMOVE 1
| #define HAVE_MEMSET 1
| #define HAVE_MKDIR 1
| #define HAVE_MKFIFO 1
| #define HAVE_MKNOD 1
| #define HAVE_MKSTEMP 1
| #define HAVE_NL_LANGINFO 1
| #define HAVE_OPENAT 1
| #define HAVE_PIPE 1
| #define HAVE_POLL 1
| #define HAVE_POSIX_SPAWNP 1
| #define HAVE_READLINK 1
| #define HAVE_READLINKAT 1
| #define HAVE_SELECT 1
| #define HAVE_SETENV 1
| #define HAVE_SETLOCALE 1
| #define HAVE_SIGACTION 1
| #define HAVE_STATFS 1
| #define HAVE_STATVFS 1
| #define HAVE_STRCHR 1
| #define HAVE_STRDUP 1
| #define HAVE_STRERROR 1
| #define HAVE_STRNLEN 1
| #define HAVE_STRRCHR 1
| #define HAVE_SYMLINK 1
| #define HAVE_TIMEGM 1
| #define HAVE_TZSET 1
| #define HAVE_UNLINKAT 1
| #define HAVE_UNSETENV 1
| #define HAVE_UTIME 1
| #define HAVE_UTIMENSAT 1
| #define HAVE_UTIMES 1
| #define HAVE_VFORK 1
| #define HAVE_WCRTOMB 1
| #define HAVE_WCSCMP 1
| #define HAVE_WCSCPY 1
| #define HAVE_WCSLEN 1
| #define HAVE_WCTOMB 1
| #define HAVE_WMEMCMP 1
| #define HAVE_WMEMCPY 1
| #define HAVE_WMEMMOVE 1
| #define HAVE_READDIR_R 1
| #define HAVE_DIRFD 1
| /* end confdefs.h.  */
| 
| #define ARCHIVE_RMD160_COMPILE_TEST
| #define ARCHIVE_CRYPTO_RMD160_LIBC
| #define PLATFORM_CONFIG_H "check_crypto_md.h"
| 
| /*-
| * Copyright (c) 2003-2007 Tim Kientzle
| * Copyright (c) 2011 Andres Mejia
| * Copyright (c) 2011 Michihiro NAKAJIMA
| * All rights reserved.
| *
| * Redistribution and use in source and binary forms, with or without
| * modification, are permitted provided that the following conditions
| * are met:
| * 1. Redistributions of source code must retain the above copyright
| *    notice, this list of conditions and the following disclaimer.
| * 2. Redistributions in binary form must reproduce the above copyright
| *    notice, this list of conditions and the following disclaimer in the
| *    documentation and/or other materials provided with the distribution.
| *
| * THIS SOFTWARE IS PROVIDED BY THE AUTHOR(S) ``AS IS'' AND ANY EXPRESS OR
| * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
| * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
| * IN NO EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY DIRECT, INDIRECT,
| * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
| * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
| * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
| * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
| * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
| * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
| */
| 
| #include "archive_platform.h"
| 
| #include "archive.h"
| #include "archive_digest_private.h"
| 
| /* In particular, force the configure probe to break if it tries
|  * to test a combination of OpenSSL and libmd. */
| #if defined(ARCHIVE_CRYPTO_OPENSSL) && defined(ARCHIVE_CRYPTO_LIBMD)
| #error Cannot use both OpenSSL and libmd.
| #endif
| 
| /* Common in other bcrypt implementations, but missing from VS2008. */
| #ifndef BCRYPT_SUCCESS
| #define BCRYPT_SUCCESS(r) ((NTSTATUS)(r) == STATUS_SUCCESS)
| #endif
| 
| /*
|  * Message digest functions for Windows platform.
|  */
| #if defined(ARCHIVE_CRYPTO_MD5_WIN)    ||\
| 	defined(ARCHIVE_CRYPTO_SHA1_WIN)   ||\
| 	defined(ARCHIVE_CRYPTO_SHA256_WIN) ||\
| 	defined(ARCHIVE_CRYPTO_SHA384_WIN) ||\
| 	defined(ARCHIVE_CRYPTO_SHA512_WIN)
| 
| /*
|  * Initialize a Message digest.
|  */
| #if defined(HAVE_BCRYPT_H) && _WIN32_WINNT >= _WIN32_WINNT_VISTA
| static int
| win_crypto_init(Digest_CTX *ctx, const WCHAR *algo)
| {
| 	NTSTATUS status;
| 	ctx->valid = 0;
| 
| 	status = BCryptOpenAlgorithmProvider(&ctx->hAlg, algo, NULL, 0);
| 	if (!BCRYPT_SUCCESS(status))
| 		return (ARCHIVE_FAILED);
| 	status = BCryptCreateHash(ctx->hAlg, &ctx->hHash, NULL, 0, NULL, 0, 0);
| 	if (!BCRYPT_SUCCESS(status)) {
| 		BCryptCloseAlgorithmProvider(ctx->hAlg, 0);
| 		return (ARCHIVE_FAILED);
| 	}
| 
| 	ctx->valid = 1;
| 	return (ARCHIVE_OK);
| }
| #else
| static int
| win_crypto_init(Digest_CTX *ctx, DWORD prov, ALG_ID algId)
| {
| 
| 	ctx->valid = 0;
| 	if (!CryptAcquireContext(&ctx->cryptProv, NULL, NULL,
| 	    prov, CRYPT_VERIFYCONTEXT)) {
| 		if (GetLastError() != (DWORD)NTE_BAD_KEYSET)
| 			return (ARCHIVE_FAILED);
| 		if (!CryptAcquireContext(&ctx->cryptProv, NULL, NULL,
| 		    prov, CRYPT_NEWKEYSET))
| 			return (ARCHIVE_FAILED);
| 	}
| 
| 	if (!CryptCreateHash(ctx->cryptProv, algId, 0, 0, &ctx->hash)) {
| 		CryptReleaseContext(ctx->cryptProv, 0);
| 		return (ARCHIVE_FAILED);
| 	}
| 
| 	ctx->valid = 1;
| 	return (ARCHIVE_OK);
| }
| #endif
| 
| /*
|  * Update a Message digest.
|  */
| static int
| win_crypto_Update(Digest_CTX *ctx, const unsigned char *buf, size_t len)
| {
| 
| 	if (!ctx->valid)
| 		return (ARCHIVE_FAILED);
| 
| #if defined(HAVE_BCRYPT_H) && _WIN32_WINNT >= _WIN32_WINNT_VISTA
| 	BCryptHashData(ctx->hHash,
| 		      (PUCHAR)(uintptr_t)buf,
| 		      (ULONG)len, 0);
| #else
| 	CryptHashData(ctx->hash,
| 		      (unsigned char *)(uintptr_t)buf,
| 		      (DWORD)len, 0);
| #endif
| 	return (ARCHIVE_OK);
| }
| 
| static int
| win_crypto_Final(unsigned char *buf, size_t bufsize, Digest_CTX *ctx)
| {
| #if !(defined(HAVE_BCRYPT_H) && _WIN32_WINNT >= _WIN32_WINNT_VISTA)
| 	DWORD siglen = (DWORD)bufsize;
| #endif
| 
| 	if (!ctx->valid)
| 		return (ARCHIVE_FAILED);
| 
| #if defined(HAVE_BCRYPT_H) && _WIN32_WINNT >= _WIN32_WINNT_VISTA
| 	BCryptFinishHash(ctx->hHash, buf, (ULONG)bufsize, 0);
| 	BCryptDestroyHash(ctx->hHash);
| 	BCryptCloseAlgorithmProvider(ctx->hAlg, 0);
| #else
| 	CryptGetHashParam(ctx->hash, HP_HASHVAL, buf, &siglen, 0);
| 	CryptDestroyHash(ctx->hash);
| 	CryptReleaseContext(ctx->cryptProv, 0);
| #endif
| 	ctx->valid = 0;
| 	return (ARCHIVE_OK);
| }
| 
| #endif /* defined(ARCHIVE_CRYPTO_*_WIN) */
| 
| 
| /* MD5 implementations */
| #if defined(ARCHIVE_CRYPTO_MD5_LIBC)
| 
| static int
| __archive_md5init(archive_md5_ctx *ctx)
| {
|   MD5Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5update(archive_md5_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   MD5Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5final(archive_md5_ctx *ctx, void *md)
| {
|   MD5Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_MD5_LIBMD)
| 
| static int
| __archive_md5init(archive_md5_ctx *ctx)
| {
|   MD5Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5update(archive_md5_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   MD5Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5final(archive_md5_ctx *ctx, void *md)
| {
|   MD5Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_MD5_LIBSYSTEM)
| 
| static int
| __archive_md5init(archive_md5_ctx *ctx)
| {
|   CC_MD5_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5update(archive_md5_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   CC_MD5_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5final(archive_md5_ctx *ctx, void *md)
| {
|   CC_MD5_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_MD5_MBEDTLS)
| 
| static int
| __archive_md5init(archive_md5_ctx *ctx)
| {
|   mbedtls_md5_init(ctx);
|   if (mbedtls_md5_starts_ret(ctx) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_md5update(archive_md5_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   if (mbedtls_md5_update_ret(ctx, indata, insize) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_md5final(archive_md5_ctx *ctx, void *md)
| {
|   if (mbedtls_md5_finish_ret(ctx, md) == 0) {
|     mbedtls_md5_free(ctx);
|     return (ARCHIVE_OK);
|   } else {
|     mbedtls_md5_free(ctx);
|     return (ARCHIVE_FATAL);
|   }
| }
| 
| #elif defined(ARCHIVE_CRYPTO_MD5_NETTLE)
| 
| static int
| __archive_md5init(archive_md5_ctx *ctx)
| {
|   md5_init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5update(archive_md5_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   md5_update(ctx, insize, indata);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5final(archive_md5_ctx *ctx, void *md)
| {
|   md5_digest(ctx, MD5_DIGEST_SIZE, md);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_MD5_OPENSSL)
| 
| static int
| __archive_md5init(archive_md5_ctx *ctx)
| {
|   if ((*ctx = EVP_MD_CTX_new()) == NULL)
| 	return (ARCHIVE_FAILED);
|   if (!EVP_DigestInit(*ctx, EVP_md5()))
| 	return (ARCHIVE_FAILED);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5update(archive_md5_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   EVP_DigestUpdate(*ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5final(archive_md5_ctx *ctx, void *md)
| {
|   /* HACK: archive_write_set_format_xar.c is finalizing empty contexts, so
|    * this is meant to cope with that. Real fix is probably to fix
|    * archive_write_set_format_xar.c
|    */
|   if (*ctx) {
|     EVP_DigestFinal(*ctx, md, NULL);
|     EVP_MD_CTX_free(*ctx);
|     *ctx = NULL;
|   }
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_MD5_WIN)
| 
| static int
| __archive_md5init(archive_md5_ctx *ctx)
| {
| #if defined(HAVE_BCRYPT_H) && _WIN32_WINNT >= _WIN32_WINNT_VISTA
|   return (win_crypto_init(ctx, BCRYPT_MD5_ALGORITHM));
| #else
|   return (win_crypto_init(ctx, PROV_RSA_FULL, CALG_MD5));
| #endif
| }
| 
| static int
| __archive_md5update(archive_md5_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   return (win_crypto_Update(ctx, indata, insize));
| }
| 
| static int
| __archive_md5final(archive_md5_ctx *ctx, void *md)
| {
|   return (win_crypto_Final(md, 16, ctx));
| }
| 
| #else
| 
| static int
| __archive_md5init(archive_md5_ctx *ctx)
| {
| 	(void)ctx; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_md5update(archive_md5_ctx *ctx, const void *indata,
|     size_t insize)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)indata; /* UNUSED */
| 	(void)insize; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_md5final(archive_md5_ctx *ctx, void *md)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)md; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| #endif
| 
| /* RIPEMD160 implementations */
| #if defined(ARCHIVE_CRYPTO_RMD160_LIBC)
| 
| static int
| __archive_ripemd160init(archive_rmd160_ctx *ctx)
| {
|   RMD160Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   RMD160Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md)
| {
|   RMD160Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_RMD160_LIBMD)
| 
| static int
| __archive_ripemd160init(archive_rmd160_ctx *ctx)
| {
|   RIPEMD160_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   RIPEMD160_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md)
| {
|   RIPEMD160_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_RMD160_MBEDTLS)
| 
| static int
| __archive_ripemd160init(archive_rmd160_ctx *ctx)
| {
|   mbedtls_ripemd160_init(ctx);
|   if (mbedtls_ripemd160_starts_ret(ctx) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   if (mbedtls_ripemd160_update_ret(ctx, indata, insize) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md)
| {
|   if (mbedtls_ripemd160_finish_ret(ctx, md) == 0) {
|     mbedtls_ripemd160_free(ctx);
|     return (ARCHIVE_OK);
|   } else {
|     mbedtls_ripemd160_free(ctx);
|     return (ARCHIVE_FATAL);
|   }
| }
| 
| #elif defined(ARCHIVE_CRYPTO_RMD160_NETTLE)
| 
| static int
| __archive_ripemd160init(archive_rmd160_ctx *ctx)
| {
|   ripemd160_init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   ripemd160_update(ctx, insize, indata);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md)
| {
|   ripemd160_digest(ctx, RIPEMD160_DIGEST_SIZE, md);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_RMD160_OPENSSL)
| 
| static int
| __archive_ripemd160init(archive_rmd160_ctx *ctx)
| {
|   if ((*ctx = EVP_MD_CTX_new()) == NULL)
| 	return (ARCHIVE_FAILED);
|   if (!EVP_DigestInit(*ctx, EVP_ripemd160()))
| 	return (ARCHIVE_FAILED);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   EVP_DigestUpdate(*ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md)
| {
|   if (*ctx) {
|     EVP_DigestFinal(*ctx, md, NULL);
|     EVP_MD_CTX_free(*ctx);
|     *ctx = NULL;
|   }
|   return (ARCHIVE_OK);
| }
| 
| #else
| 
| static int
| __archive_ripemd160init(archive_rmd160_ctx *ctx)
| {
| 	(void)ctx; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata,
|     size_t insize)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)indata; /* UNUSED */
| 	(void)insize; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)md; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| #endif
| 
| /* SHA1 implementations */
| #if defined(ARCHIVE_CRYPTO_SHA1_LIBC)
| 
| static int
| __archive_sha1init(archive_sha1_ctx *ctx)
| {
|   SHA1Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1update(archive_sha1_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA1Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1final(archive_sha1_ctx *ctx, void *md)
| {
|   SHA1Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA1_LIBMD)
| 
| static int
| __archive_sha1init(archive_sha1_ctx *ctx)
| {
|   SHA1_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1update(archive_sha1_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA1_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1final(archive_sha1_ctx *ctx, void *md)
| {
|   SHA1_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA1_LIBSYSTEM)
| 
| static int
| __archive_sha1init(archive_sha1_ctx *ctx)
| {
|   CC_SHA1_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1update(archive_sha1_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   CC_SHA1_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1final(archive_sha1_ctx *ctx, void *md)
| {
|   CC_SHA1_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA1_MBEDTLS)
| 
| static int
| __archive_sha1init(archive_sha1_ctx *ctx)
| {
|   mbedtls_sha1_init(ctx);
|   if (mbedtls_sha1_starts_ret(ctx) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_sha1update(archive_sha1_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   if (mbedtls_sha1_update_ret(ctx, indata, insize) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_sha1final(archive_sha1_ctx *ctx, void *md)
| {
|   if (mbedtls_sha1_finish_ret(ctx, md) == 0) {
|     mbedtls_sha1_free(ctx);
|     return (ARCHIVE_OK);
|   } else {
|     mbedtls_sha1_free(ctx);
|     return (ARCHIVE_FATAL);
|   }
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA1_NETTLE)
| 
| static int
| __archive_sha1init(archive_sha1_ctx *ctx)
| {
|   sha1_init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1update(archive_sha1_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   sha1_update(ctx, insize, indata);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1final(archive_sha1_ctx *ctx, void *md)
| {
|   sha1_digest(ctx, SHA1_DIGEST_SIZE, md);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA1_OPENSSL)
| 
| static int
| __archive_sha1init(archive_sha1_ctx *ctx)
| {
|   if ((*ctx = EVP_MD_CTX_new()) == NULL)
| 	return (ARCHIVE_FAILED);
|   if (!EVP_DigestInit(*ctx, EVP_sha1()))
| 	return (ARCHIVE_FAILED);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1update(archive_sha1_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   EVP_DigestUpdate(*ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1final(archive_sha1_ctx *ctx, void *md)
| {
|   /* HACK: archive_write_set_format_xar.c is finalizing empty contexts, so
|    * this is meant to cope with that. Real fix is probably to fix
|    * archive_write_set_format_xar.c
|    */
|   if (*ctx) {
|     EVP_DigestFinal(*ctx, md, NULL);
|     EVP_MD_CTX_free(*ctx);
|     *ctx = NULL;
|   }
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA1_WIN)
| 
| static int
| __archive_sha1init(archive_sha1_ctx *ctx)
| {
| #if defined(HAVE_BCRYPT_H) && _WIN32_WINNT >= _WIN32_WINNT_VISTA
|   return (win_crypto_init(ctx, BCRYPT_SHA1_ALGORITHM));
| #else
|   return (win_crypto_init(ctx, PROV_RSA_FULL, CALG_SHA1));
| #endif
| }
| 
| static int
| __archive_sha1update(archive_sha1_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   return (win_crypto_Update(ctx, indata, insize));
| }
| 
| static int
| __archive_sha1final(archive_sha1_ctx *ctx, void *md)
| {
|   return (win_crypto_Final(md, 20, ctx));
| }
| 
| #else
| 
| static int
| __archive_sha1init(archive_sha1_ctx *ctx)
| {
| 	(void)ctx; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_sha1update(archive_sha1_ctx *ctx, const void *indata,
|     size_t insize)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)indata; /* UNUSED */
| 	(void)insize; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_sha1final(archive_sha1_ctx *ctx, void *md)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)md; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| #endif
| 
| /* SHA256 implementations */
| #if defined(ARCHIVE_CRYPTO_SHA256_LIBC)
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
|   SHA256_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA256_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
|   SHA256_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA256_LIBC2)
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
|   SHA256Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA256Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
|   SHA256Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA256_LIBC3)
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
|   SHA256Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA256Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
|   SHA256Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA256_LIBMD)
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
|   SHA256_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA256_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
|   SHA256_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA256_LIBSYSTEM)
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
|   CC_SHA256_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   CC_SHA256_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
|   CC_SHA256_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA256_MBEDTLS)
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
|   mbedtls_sha256_init(ctx);
|   if (mbedtls_sha256_starts_ret(ctx, 0) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   if (mbedtls_sha256_update_ret(ctx, indata, insize) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
|   if (mbedtls_sha256_finish_ret(ctx, md) == 0) {
|     mbedtls_sha256_free(ctx);
|     return (ARCHIVE_OK);
|   } else {
|     mbedtls_sha256_free(ctx);
|     return (ARCHIVE_FATAL);
|   }
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA256_NETTLE)
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
|   sha256_init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   sha256_update(ctx, insize, indata);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
|   sha256_digest(ctx, SHA256_DIGEST_SIZE, md);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA256_OPENSSL)
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
|   if ((*ctx = EVP_MD_CTX_new()) == NULL)
| 	return (ARCHIVE_FAILED);
|   if (!EVP_DigestInit(*ctx, EVP_sha256()))
| 	return (ARCHIVE_FAILED);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   EVP_DigestUpdate(*ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
|   if (*ctx) {
|     EVP_DigestFinal(*ctx, md, NULL);
|     EVP_MD_CTX_free(*ctx);
|     *ctx = NULL;
|   }
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA256_WIN)
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
| #if defined(HAVE_BCRYPT_H) && _WIN32_WINNT >= _WIN32_WINNT_VISTA
|   return (win_crypto_init(ctx, BCRYPT_SHA256_ALGORITHM));
| #else
|   return (win_crypto_init(ctx, PROV_RSA_AES, CALG_SHA_256));
| #endif
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   return (win_crypto_Update(ctx, indata, insize));
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
|   return (win_crypto_Final(md, 32, ctx));
| }
| 
| #else
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
| 	(void)ctx; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)indata; /* UNUSED */
| 	(void)insize; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)md; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| #endif
| 
| /* SHA384 implementations */
| #if defined(ARCHIVE_CRYPTO_SHA384_LIBC)
| 
| static int
| __archive_sha384init(archive_sha384_ctx *ctx)
| {
|   SHA384_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384update(archive_sha384_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA384_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384final(archive_sha384_ctx *ctx, void *md)
| {
|   SHA384_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA384_LIBC2)
| 
| static int
| __archive_sha384init(archive_sha384_ctx *ctx)
| {
|   SHA384Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384update(archive_sha384_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA384Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384final(archive_sha384_ctx *ctx, void *md)
| {
|   SHA384Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA384_LIBC3)
| 
| static int
| __archive_sha384init(archive_sha384_ctx *ctx)
| {
|   SHA384Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384update(archive_sha384_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA384Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384final(archive_sha384_ctx *ctx, void *md)
| {
|   SHA384Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA384_LIBSYSTEM)
| 
| static int
| __archive_sha384init(archive_sha384_ctx *ctx)
| {
|   CC_SHA384_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384update(archive_sha384_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   CC_SHA384_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384final(archive_sha384_ctx *ctx, void *md)
| {
|   CC_SHA384_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA384_MBEDTLS)
| 
| static int
| __archive_sha384init(archive_sha384_ctx *ctx)
| {
|   mbedtls_sha512_init(ctx);
|   if (mbedtls_sha512_starts_ret(ctx, 1) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_sha384update(archive_sha384_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   if (mbedtls_sha512_update_ret(ctx, indata, insize) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_sha384final(archive_sha384_ctx *ctx, void *md)
| {
|   if (mbedtls_sha512_finish_ret(ctx, md) == 0) {
|     mbedtls_sha512_free(ctx);
|     return (ARCHIVE_OK);
|   } else {
|     mbedtls_sha512_free(ctx);
|     return (ARCHIVE_FATAL);
|   }
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA384_NETTLE)
| 
| static int
| __archive_sha384init(archive_sha384_ctx *ctx)
| {
|   sha384_init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384update(archive_sha384_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   sha384_update(ctx, insize, indata);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384final(archive_sha384_ctx *ctx, void *md)
| {
|   sha384_digest(ctx, SHA384_DIGEST_SIZE, md);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA384_OPENSSL)
| 
| static int
| __archive_sha384init(archive_sha384_ctx *ctx)
| {
|   if ((*ctx = EVP_MD_CTX_new()) == NULL)
| 	return (ARCHIVE_FAILED);
|   if (!EVP_DigestInit(*ctx, EVP_sha384()))
| 	return (ARCHIVE_FAILED);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384update(archive_sha384_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   EVP_DigestUpdate(*ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384final(archive_sha384_ctx *ctx, void *md)
| {
|   if (*ctx) {
|     EVP_DigestFinal(*ctx, md, NULL);
|     EVP_MD_CTX_free(*ctx);
|     *ctx = NULL;
|   }
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA384_WIN)
| 
| static int
| __archive_sha384init(archive_sha384_ctx *ctx)
| {
| #if defined(HAVE_BCRYPT_H) && _WIN32_WINNT >= _WIN32_WINNT_VISTA
|   return (win_crypto_init(ctx, BCRYPT_SHA384_ALGORITHM));
| #else
|   return (win_crypto_init(ctx, PROV_RSA_AES, CALG_SHA_384));
| #endif
| }
| 
| static int
| __archive_sha384update(archive_sha384_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   return (win_crypto_Update(ctx, indata, insize));
| }
| 
| static int
| __archive_sha384final(archive_sha384_ctx *ctx, void *md)
| {
|   return (win_crypto_Final(md, 48, ctx));
| }
| 
| #else
| 
| static int
| __archive_sha384init(archive_sha384_ctx *ctx)
| {
| 	(void)ctx; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_sha384update(archive_sha384_ctx *ctx, const void *indata,
|     size_t insize)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)indata; /* UNUSED */
| 	(void)insize; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_sha384final(archive_sha384_ctx *ctx, void *md)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)md; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| #endif
| 
| /* SHA512 implementations */
| #if defined(ARCHIVE_CRYPTO_SHA512_LIBC)
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
|   SHA512_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA512_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
|   SHA512_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA512_LIBC2)
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
|   SHA512Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA512Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
|   SHA512Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA512_LIBC3)
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
|   SHA512Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA512Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
|   SHA512Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA512_LIBMD)
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
|   SHA512_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA512_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
|   SHA512_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA512_LIBSYSTEM)
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
|   CC_SHA512_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   CC_SHA512_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
|   CC_SHA512_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA512_MBEDTLS)
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
|   mbedtls_sha512_init(ctx);
|   if (mbedtls_sha512_starts_ret(ctx, 0) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   if (mbedtls_sha512_update_ret(ctx, indata, insize) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
|   if (mbedtls_sha512_finish_ret(ctx, md) == 0) {
|     mbedtls_sha512_free(ctx);
|     return (ARCHIVE_OK);
|   } else {
|     mbedtls_sha512_free(ctx);
|     return (ARCHIVE_FATAL);
|   }
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA512_NETTLE)
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
|   sha512_init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   sha512_update(ctx, insize, indata);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
|   sha512_digest(ctx, SHA512_DIGEST_SIZE, md);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA512_OPENSSL)
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
|   if ((*ctx = EVP_MD_CTX_new()) == NULL)
| 	return (ARCHIVE_FAILED);
|   if (!EVP_DigestInit(*ctx, EVP_sha512()))
| 	return (ARCHIVE_FAILED);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   EVP_DigestUpdate(*ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
|   if (*ctx) {
|     EVP_DigestFinal(*ctx, md, NULL);
|     EVP_MD_CTX_free(*ctx);
|     *ctx = NULL;
|   }
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA512_WIN)
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
| #if defined(HAVE_BCRYPT_H) && _WIN32_WINNT >= _WIN32_WINNT_VISTA
|   return (win_crypto_init(ctx, BCRYPT_SHA512_ALGORITHM));
| #else
|   return (win_crypto_init(ctx, PROV_RSA_AES, CALG_SHA_512));
| #endif
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   return (win_crypto_Update(ctx, indata, insize));
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
|   return (win_crypto_Final(md, 64, ctx));
| }
| 
| #else
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
| 	(void)ctx; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)indata; /* UNUSED */
| 	(void)insize; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)md; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| #endif
| 
| /* NOTE: Message Digest functions are set based on availability and by the
|  * following order of preference.
|  * 1. libc
|  * 2. libc2
|  * 3. libc3
|  * 4. libSystem
|  * 5. Nettle
|  * 6. OpenSSL
|  * 7. libmd
|  * 8. Windows API
|  */
| const struct archive_digest __archive_digest =
| {
| /* MD5 */
|   &__archive_md5init,
|   &__archive_md5update,
|   &__archive_md5final,
| 
| /* RIPEMD160 */
|   &__archive_ripemd160init,
|   &__archive_ripemd160update,
|   &__archive_ripemd160final,
| 
| /* SHA1 */
|   &__archive_sha1init,
|   &__archive_sha1update,
|   &__archive_sha1final,
| 
| /* SHA256 */
|   &__archive_sha256init,
|   &__archive_sha256update,
|   &__archive_sha256final,
| 
| /* SHA384 */
|   &__archive_sha384init,
|   &__archive_sha384update,
|   &__archive_sha384final,
| 
| /* SHA512 */
|   &__archive_sha512init,
|   &__archive_sha512update,
|   &__archive_sha512final
| };
| 
| int
| main(int argc, char **argv)
| {
|   archive_rmd160_ctx ctx;
|   archive_rmd160_init(&ctx);
|   archive_rmd160_update(&ctx, *argv, argc);
|   archive_rmd160_final(&ctx, NULL);
|   return 0;
| }
| 
configure:17799: result: no
configure:17813: checking support for ARCHIVE_CRYPTO_SHA1_LIBC
configure:17835: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -o conftest -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2  -I. -I. -I./libarchive  conftest.c -lzstd -llz4 -lz  -L/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/lib -lxml2  >&5
In file included from conftest.c:255:
./libarchive/archive_digest_private.h:70:10: fatal error: sha1.h: No such file or directory
   70 | #include <sha1.h>
      |          ^~~~~~~~
compilation terminated.
configure:17835: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "libarchive"
| #define PACKAGE_TARNAME "libarchive"
| #define PACKAGE_VERSION "3.7.2"
| #define PACKAGE_STRING "libarchive 3.7.2"
| #define PACKAGE_BUGREPORT "libarchive-discuss@googlegroups.com"
| #define PACKAGE_URL ""
| #define PACKAGE "libarchive"
| #define VERSION "3.7.2"
| #define __LIBARCHIVE_CONFIG_H_INCLUDED 1
| #define LIBARCHIVE_VERSION_STRING "3.7.2"
| #define LIBARCHIVE_VERSION_NUMBER "3007002"
| #define BSDCPIO_VERSION_STRING "3.7.2"
| #define BSDTAR_VERSION_STRING "3.7.2"
| #define BSDCAT_VERSION_STRING "3.7.2"
| #define BSDUNZIP_VERSION_STRING "3.7.2"
| #define HAVE_STDIO_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_SYS_TIME_H 1
| #define STDC_HEADERS 1
| #define _ALL_SOURCE 1
| #define _DARWIN_C_SOURCE 1
| #define _GNU_SOURCE 1
| #define _HPUX_ALT_XOPEN_SOCKET_API 1
| #define _NETBSD_SOURCE 1
| #define _OPENBSD_SOURCE 1
| #define _POSIX_PTHREAD_SEMANTICS 1
| #define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1
| #define __STDC_WANT_IEC_60559_BFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_DFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1
| #define __STDC_WANT_IEC_60559_TYPES_EXT__ 1
| #define __STDC_WANT_LIB_EXT2__ 1
| #define __STDC_WANT_MATH_SPEC_FUNCS__ 1
| #define _TANDEM_SOURCE 1
| #define __EXTENSIONS__ 1
| #define HAVE_DLFCN_H 1
| #define LT_OBJDIR ".libs/"
| #define HAVE_DIRENT_H 1
| #define HAVE_SYS_WAIT_H 1
| #define HAVE_CTYPE_H 1
| #define HAVE_ERRNO_H 1
| #define HAVE_FCNTL_H 1
| #define HAVE_FNMATCH_H 1
| #define HAVE_GRP_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_LANGINFO_H 1
| #define HAVE_LIMITS_H 1
| #define HAVE_LINUX_FIEMAP_H 1
| #define HAVE_LINUX_FS_H 1
| #define HAVE_LINUX_MAGIC_H 1
| #define HAVE_LINUX_TYPES_H 1
| #define HAVE_WORKING_FS_IOC_GETFLAGS 1
| #define HAVE_LOCALE_H 1
| #define HAVE_PATHS_H 1
| #define HAVE_POLL_H 1
| #define HAVE_PTHREAD_H 1
| #define HAVE_PWD_H 1
| #define HAVE_SIGNAL_H 1
| #define HAVE_SPAWN_H 1
| #define HAVE_STDARG_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_SYS_CDEFS_H 1
| #define HAVE_SYS_IOCTL_H 1
| #define HAVE_SYS_MOUNT_H 1
| #define HAVE_SYS_QUEUE_H 1
| #define HAVE_SYS_PARAM_H 1
| #define HAVE_SYS_POLL_H 1
| #define HAVE_SYS_SELECT_H 1
| #define HAVE_SYS_STATFS_H 1
| #define HAVE_SYS_STATVFS_H 1
| #define HAVE_SYS_SYSMACROS_H 1
| #define HAVE_SYS_TIME_H 1
| #define HAVE_SYS_UTSNAME_H 1
| #define HAVE_SYS_VFS_H 1
| #define HAVE_SYS_XATTR_H 1
| #define HAVE_TIME_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_UTIME_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_WCTYPE_H 1
| #define HAVE_ZLIB_H 1
| #define HAVE_LIBZ 1
| #define HAVE_ICONV 1
| #define ICONV_CONST 
| #define HAVE_ICONV_H 1
| #define HAVE_LZ4_H 1
| #define HAVE_LZ4HC_H 1
| #define HAVE_LIBLZ4 1
| #define HAVE_ZSTD_H 1
| #define HAVE_LIBZSTD 1
| #define HAVE_LIBZSTD_COMPRESSOR 1
| #define HAVE_LIBXML_XMLREADER_H 1
| #define HAVE_LIBXML_XMLWRITER_H 1
| #define HAVE_REGEX_H 1
| #define HAVE_STRUCT_TM_TM_GMTOFF 1
| #define HAVE_STRUCT_STAT_ST_MTIM_TV_NSEC 1
| #define HAVE_STRUCT_STAT_ST_BLKSIZE 1
| #define HAVE_UINTMAX_T 1
| #define HAVE_UNSIGNED_LONG_LONG 1
| #define HAVE_UNSIGNED_LONG_LONG_INT 1
| #define HAVE_LONG_LONG_INT 1
| #define HAVE_INTMAX_T 1
| #define HAVE_UINTMAX_T 1
| #define HAVE_DECL_SIZE_MAX 1
| #define HAVE_DECL_INT32_MAX 1
| #define HAVE_DECL_INT32_MIN 1
| #define HAVE_DECL_INT64_MAX 1
| #define HAVE_DECL_INT64_MIN 1
| #define HAVE_DECL_UINT64_MAX 1
| #define HAVE_DECL_UINT32_MAX 1
| #define HAVE_DECL_INTMAX_MAX 1
| #define HAVE_DECL_INTMAX_MIN 1
| #define HAVE_DECL_UINTMAX_MAX 1
| #define HAVE_DECL_SSIZE_MAX 1
| #define HAVE_EILSEQ 1
| #define HAVE_WCHAR_T 1
| #define SIZEOF_WCHAR_T 4
| #define SIZEOF_INT 4
| #define SIZEOF_LONG 4
| #define MAJOR_IN_SYSMACROS 1
| #define HAVE_FSEEKO 1
| #define LSTAT_FOLLOWS_SLASHED_SYMLINK 1
| #define HAVE_LSTAT_EMPTY_STRING_BUG 1
| #define HAVE_STAT_EMPTY_STRING_BUG 1
| #define HAVE_DECL_STRERROR_R 1
| #define HAVE_STRERROR_R 1
| #define STRERROR_R_CHAR_P 1
| #define HAVE_STRFTIME 1
| #define HAVE_VPRINTF 1
| #define HAVE_ARC4RANDOM_BUF 1
| #define HAVE_CHOWN 1
| #define HAVE_CHROOT 1
| #define HAVE_CTIME_R 1
| #define HAVE_FCHDIR 1
| #define HAVE_FCHMOD 1
| #define HAVE_FCHOWN 1
| #define HAVE_FCNTL 1
| #define HAVE_FDOPENDIR 1
| #define HAVE_FNMATCH 1
| #define HAVE_FORK 1
| #define HAVE_FSTAT 1
| #define HAVE_FSTATAT 1
| #define HAVE_FSTATFS 1
| #define HAVE_FSTATVFS 1
| #define HAVE_FTRUNCATE 1
| #define HAVE_FUTIMENS 1
| #define HAVE_FUTIMES 1
| #define HAVE_FUTIMESAT 1
| #define HAVE_GETEUID 1
| #define HAVE_GETLINE 1
| #define HAVE_GETPID 1
| #define HAVE_GETGRGID_R 1
| #define HAVE_GETGRNAM_R 1
| #define HAVE_GETPWNAM_R 1
| #define HAVE_GETPWUID_R 1
| #define HAVE_GMTIME_R 1
| #define HAVE_LCHMOD 1
| #define HAVE_LCHOWN 1
| #define HAVE_LINK 1
| #define HAVE_LINKAT 1
| #define HAVE_LOCALTIME_R 1
| #define HAVE_LSTAT 1
| #define HAVE_LUTIMES 1
| #define HAVE_MBRTOWC 1
| #define HAVE_MEMMOVE 1
| #define HAVE_MEMSET 1
| #define HAVE_MKDIR 1
| #define HAVE_MKFIFO 1
| #define HAVE_MKNOD 1
| #define HAVE_MKSTEMP 1
| #define HAVE_NL_LANGINFO 1
| #define HAVE_OPENAT 1
| #define HAVE_PIPE 1
| #define HAVE_POLL 1
| #define HAVE_POSIX_SPAWNP 1
| #define HAVE_READLINK 1
| #define HAVE_READLINKAT 1
| #define HAVE_SELECT 1
| #define HAVE_SETENV 1
| #define HAVE_SETLOCALE 1
| #define HAVE_SIGACTION 1
| #define HAVE_STATFS 1
| #define HAVE_STATVFS 1
| #define HAVE_STRCHR 1
| #define HAVE_STRDUP 1
| #define HAVE_STRERROR 1
| #define HAVE_STRNLEN 1
| #define HAVE_STRRCHR 1
| #define HAVE_SYMLINK 1
| #define HAVE_TIMEGM 1
| #define HAVE_TZSET 1
| #define HAVE_UNLINKAT 1
| #define HAVE_UNSETENV 1
| #define HAVE_UTIME 1
| #define HAVE_UTIMENSAT 1
| #define HAVE_UTIMES 1
| #define HAVE_VFORK 1
| #define HAVE_WCRTOMB 1
| #define HAVE_WCSCMP 1
| #define HAVE_WCSCPY 1
| #define HAVE_WCSLEN 1
| #define HAVE_WCTOMB 1
| #define HAVE_WMEMCMP 1
| #define HAVE_WMEMCPY 1
| #define HAVE_WMEMMOVE 1
| #define HAVE_READDIR_R 1
| #define HAVE_DIRFD 1
| /* end confdefs.h.  */
| 
| #define ARCHIVE_SHA1_COMPILE_TEST
| #define ARCHIVE_CRYPTO_SHA1_LIBC
| #define PLATFORM_CONFIG_H "check_crypto_md.h"
| 
| /*-
| * Copyright (c) 2003-2007 Tim Kientzle
| * Copyright (c) 2011 Andres Mejia
| * Copyright (c) 2011 Michihiro NAKAJIMA
| * All rights reserved.
| *
| * Redistribution and use in source and binary forms, with or without
| * modification, are permitted provided that the following conditions
| * are met:
| * 1. Redistributions of source code must retain the above copyright
| *    notice, this list of conditions and the following disclaimer.
| * 2. Redistributions in binary form must reproduce the above copyright
| *    notice, this list of conditions and the following disclaimer in the
| *    documentation and/or other materials provided with the distribution.
| *
| * THIS SOFTWARE IS PROVIDED BY THE AUTHOR(S) ``AS IS'' AND ANY EXPRESS OR
| * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
| * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
| * IN NO EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY DIRECT, INDIRECT,
| * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
| * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
| * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
| * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
| * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
| * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
| */
| 
| #include "archive_platform.h"
| 
| #include "archive.h"
| #include "archive_digest_private.h"
| 
| /* In particular, force the configure probe to break if it tries
|  * to test a combination of OpenSSL and libmd. */
| #if defined(ARCHIVE_CRYPTO_OPENSSL) && defined(ARCHIVE_CRYPTO_LIBMD)
| #error Cannot use both OpenSSL and libmd.
| #endif
| 
| /* Common in other bcrypt implementations, but missing from VS2008. */
| #ifndef BCRYPT_SUCCESS
| #define BCRYPT_SUCCESS(r) ((NTSTATUS)(r) == STATUS_SUCCESS)
| #endif
| 
| /*
|  * Message digest functions for Windows platform.
|  */
| #if defined(ARCHIVE_CRYPTO_MD5_WIN)    ||\
| 	defined(ARCHIVE_CRYPTO_SHA1_WIN)   ||\
| 	defined(ARCHIVE_CRYPTO_SHA256_WIN) ||\
| 	defined(ARCHIVE_CRYPTO_SHA384_WIN) ||\
| 	defined(ARCHIVE_CRYPTO_SHA512_WIN)
| 
| /*
|  * Initialize a Message digest.
|  */
| #if defined(HAVE_BCRYPT_H) && _WIN32_WINNT >= _WIN32_WINNT_VISTA
| static int
| win_crypto_init(Digest_CTX *ctx, const WCHAR *algo)
| {
| 	NTSTATUS status;
| 	ctx->valid = 0;
| 
| 	status = BCryptOpenAlgorithmProvider(&ctx->hAlg, algo, NULL, 0);
| 	if (!BCRYPT_SUCCESS(status))
| 		return (ARCHIVE_FAILED);
| 	status = BCryptCreateHash(ctx->hAlg, &ctx->hHash, NULL, 0, NULL, 0, 0);
| 	if (!BCRYPT_SUCCESS(status)) {
| 		BCryptCloseAlgorithmProvider(ctx->hAlg, 0);
| 		return (ARCHIVE_FAILED);
| 	}
| 
| 	ctx->valid = 1;
| 	return (ARCHIVE_OK);
| }
| #else
| static int
| win_crypto_init(Digest_CTX *ctx, DWORD prov, ALG_ID algId)
| {
| 
| 	ctx->valid = 0;
| 	if (!CryptAcquireContext(&ctx->cryptProv, NULL, NULL,
| 	    prov, CRYPT_VERIFYCONTEXT)) {
| 		if (GetLastError() != (DWORD)NTE_BAD_KEYSET)
| 			return (ARCHIVE_FAILED);
| 		if (!CryptAcquireContext(&ctx->cryptProv, NULL, NULL,
| 		    prov, CRYPT_NEWKEYSET))
| 			return (ARCHIVE_FAILED);
| 	}
| 
| 	if (!CryptCreateHash(ctx->cryptProv, algId, 0, 0, &ctx->hash)) {
| 		CryptReleaseContext(ctx->cryptProv, 0);
| 		return (ARCHIVE_FAILED);
| 	}
| 
| 	ctx->valid = 1;
| 	return (ARCHIVE_OK);
| }
| #endif
| 
| /*
|  * Update a Message digest.
|  */
| static int
| win_crypto_Update(Digest_CTX *ctx, const unsigned char *buf, size_t len)
| {
| 
| 	if (!ctx->valid)
| 		return (ARCHIVE_FAILED);
| 
| #if defined(HAVE_BCRYPT_H) && _WIN32_WINNT >= _WIN32_WINNT_VISTA
| 	BCryptHashData(ctx->hHash,
| 		      (PUCHAR)(uintptr_t)buf,
| 		      (ULONG)len, 0);
| #else
| 	CryptHashData(ctx->hash,
| 		      (unsigned char *)(uintptr_t)buf,
| 		      (DWORD)len, 0);
| #endif
| 	return (ARCHIVE_OK);
| }
| 
| static int
| win_crypto_Final(unsigned char *buf, size_t bufsize, Digest_CTX *ctx)
| {
| #if !(defined(HAVE_BCRYPT_H) && _WIN32_WINNT >= _WIN32_WINNT_VISTA)
| 	DWORD siglen = (DWORD)bufsize;
| #endif
| 
| 	if (!ctx->valid)
| 		return (ARCHIVE_FAILED);
| 
| #if defined(HAVE_BCRYPT_H) && _WIN32_WINNT >= _WIN32_WINNT_VISTA
| 	BCryptFinishHash(ctx->hHash, buf, (ULONG)bufsize, 0);
| 	BCryptDestroyHash(ctx->hHash);
| 	BCryptCloseAlgorithmProvider(ctx->hAlg, 0);
| #else
| 	CryptGetHashParam(ctx->hash, HP_HASHVAL, buf, &siglen, 0);
| 	CryptDestroyHash(ctx->hash);
| 	CryptReleaseContext(ctx->cryptProv, 0);
| #endif
| 	ctx->valid = 0;
| 	return (ARCHIVE_OK);
| }
| 
| #endif /* defined(ARCHIVE_CRYPTO_*_WIN) */
| 
| 
| /* MD5 implementations */
| #if defined(ARCHIVE_CRYPTO_MD5_LIBC)
| 
| static int
| __archive_md5init(archive_md5_ctx *ctx)
| {
|   MD5Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5update(archive_md5_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   MD5Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5final(archive_md5_ctx *ctx, void *md)
| {
|   MD5Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_MD5_LIBMD)
| 
| static int
| __archive_md5init(archive_md5_ctx *ctx)
| {
|   MD5Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5update(archive_md5_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   MD5Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5final(archive_md5_ctx *ctx, void *md)
| {
|   MD5Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_MD5_LIBSYSTEM)
| 
| static int
| __archive_md5init(archive_md5_ctx *ctx)
| {
|   CC_MD5_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5update(archive_md5_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   CC_MD5_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5final(archive_md5_ctx *ctx, void *md)
| {
|   CC_MD5_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_MD5_MBEDTLS)
| 
| static int
| __archive_md5init(archive_md5_ctx *ctx)
| {
|   mbedtls_md5_init(ctx);
|   if (mbedtls_md5_starts_ret(ctx) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_md5update(archive_md5_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   if (mbedtls_md5_update_ret(ctx, indata, insize) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_md5final(archive_md5_ctx *ctx, void *md)
| {
|   if (mbedtls_md5_finish_ret(ctx, md) == 0) {
|     mbedtls_md5_free(ctx);
|     return (ARCHIVE_OK);
|   } else {
|     mbedtls_md5_free(ctx);
|     return (ARCHIVE_FATAL);
|   }
| }
| 
| #elif defined(ARCHIVE_CRYPTO_MD5_NETTLE)
| 
| static int
| __archive_md5init(archive_md5_ctx *ctx)
| {
|   md5_init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5update(archive_md5_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   md5_update(ctx, insize, indata);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5final(archive_md5_ctx *ctx, void *md)
| {
|   md5_digest(ctx, MD5_DIGEST_SIZE, md);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_MD5_OPENSSL)
| 
| static int
| __archive_md5init(archive_md5_ctx *ctx)
| {
|   if ((*ctx = EVP_MD_CTX_new()) == NULL)
| 	return (ARCHIVE_FAILED);
|   if (!EVP_DigestInit(*ctx, EVP_md5()))
| 	return (ARCHIVE_FAILED);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5update(archive_md5_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   EVP_DigestUpdate(*ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5final(archive_md5_ctx *ctx, void *md)
| {
|   /* HACK: archive_write_set_format_xar.c is finalizing empty contexts, so
|    * this is meant to cope with that. Real fix is probably to fix
|    * archive_write_set_format_xar.c
|    */
|   if (*ctx) {
|     EVP_DigestFinal(*ctx, md, NULL);
|     EVP_MD_CTX_free(*ctx);
|     *ctx = NULL;
|   }
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_MD5_WIN)
| 
| static int
| __archive_md5init(archive_md5_ctx *ctx)
| {
| #if defined(HAVE_BCRYPT_H) && _WIN32_WINNT >= _WIN32_WINNT_VISTA
|   return (win_crypto_init(ctx, BCRYPT_MD5_ALGORITHM));
| #else
|   return (win_crypto_init(ctx, PROV_RSA_FULL, CALG_MD5));
| #endif
| }
| 
| static int
| __archive_md5update(archive_md5_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   return (win_crypto_Update(ctx, indata, insize));
| }
| 
| static int
| __archive_md5final(archive_md5_ctx *ctx, void *md)
| {
|   return (win_crypto_Final(md, 16, ctx));
| }
| 
| #else
| 
| static int
| __archive_md5init(archive_md5_ctx *ctx)
| {
| 	(void)ctx; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_md5update(archive_md5_ctx *ctx, const void *indata,
|     size_t insize)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)indata; /* UNUSED */
| 	(void)insize; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_md5final(archive_md5_ctx *ctx, void *md)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)md; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| #endif
| 
| /* RIPEMD160 implementations */
| #if defined(ARCHIVE_CRYPTO_RMD160_LIBC)
| 
| static int
| __archive_ripemd160init(archive_rmd160_ctx *ctx)
| {
|   RMD160Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   RMD160Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md)
| {
|   RMD160Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_RMD160_LIBMD)
| 
| static int
| __archive_ripemd160init(archive_rmd160_ctx *ctx)
| {
|   RIPEMD160_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   RIPEMD160_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md)
| {
|   RIPEMD160_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_RMD160_MBEDTLS)
| 
| static int
| __archive_ripemd160init(archive_rmd160_ctx *ctx)
| {
|   mbedtls_ripemd160_init(ctx);
|   if (mbedtls_ripemd160_starts_ret(ctx) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   if (mbedtls_ripemd160_update_ret(ctx, indata, insize) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md)
| {
|   if (mbedtls_ripemd160_finish_ret(ctx, md) == 0) {
|     mbedtls_ripemd160_free(ctx);
|     return (ARCHIVE_OK);
|   } else {
|     mbedtls_ripemd160_free(ctx);
|     return (ARCHIVE_FATAL);
|   }
| }
| 
| #elif defined(ARCHIVE_CRYPTO_RMD160_NETTLE)
| 
| static int
| __archive_ripemd160init(archive_rmd160_ctx *ctx)
| {
|   ripemd160_init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   ripemd160_update(ctx, insize, indata);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md)
| {
|   ripemd160_digest(ctx, RIPEMD160_DIGEST_SIZE, md);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_RMD160_OPENSSL)
| 
| static int
| __archive_ripemd160init(archive_rmd160_ctx *ctx)
| {
|   if ((*ctx = EVP_MD_CTX_new()) == NULL)
| 	return (ARCHIVE_FAILED);
|   if (!EVP_DigestInit(*ctx, EVP_ripemd160()))
| 	return (ARCHIVE_FAILED);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   EVP_DigestUpdate(*ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md)
| {
|   if (*ctx) {
|     EVP_DigestFinal(*ctx, md, NULL);
|     EVP_MD_CTX_free(*ctx);
|     *ctx = NULL;
|   }
|   return (ARCHIVE_OK);
| }
| 
| #else
| 
| static int
| __archive_ripemd160init(archive_rmd160_ctx *ctx)
| {
| 	(void)ctx; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata,
|     size_t insize)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)indata; /* UNUSED */
| 	(void)insize; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)md; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| #endif
| 
| /* SHA1 implementations */
| #if defined(ARCHIVE_CRYPTO_SHA1_LIBC)
| 
| static int
| __archive_sha1init(archive_sha1_ctx *ctx)
| {
|   SHA1Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1update(archive_sha1_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA1Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1final(archive_sha1_ctx *ctx, void *md)
| {
|   SHA1Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA1_LIBMD)
| 
| static int
| __archive_sha1init(archive_sha1_ctx *ctx)
| {
|   SHA1_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1update(archive_sha1_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA1_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1final(archive_sha1_ctx *ctx, void *md)
| {
|   SHA1_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA1_LIBSYSTEM)
| 
| static int
| __archive_sha1init(archive_sha1_ctx *ctx)
| {
|   CC_SHA1_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1update(archive_sha1_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   CC_SHA1_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1final(archive_sha1_ctx *ctx, void *md)
| {
|   CC_SHA1_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA1_MBEDTLS)
| 
| static int
| __archive_sha1init(archive_sha1_ctx *ctx)
| {
|   mbedtls_sha1_init(ctx);
|   if (mbedtls_sha1_starts_ret(ctx) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_sha1update(archive_sha1_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   if (mbedtls_sha1_update_ret(ctx, indata, insize) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_sha1final(archive_sha1_ctx *ctx, void *md)
| {
|   if (mbedtls_sha1_finish_ret(ctx, md) == 0) {
|     mbedtls_sha1_free(ctx);
|     return (ARCHIVE_OK);
|   } else {
|     mbedtls_sha1_free(ctx);
|     return (ARCHIVE_FATAL);
|   }
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA1_NETTLE)
| 
| static int
| __archive_sha1init(archive_sha1_ctx *ctx)
| {
|   sha1_init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1update(archive_sha1_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   sha1_update(ctx, insize, indata);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1final(archive_sha1_ctx *ctx, void *md)
| {
|   sha1_digest(ctx, SHA1_DIGEST_SIZE, md);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA1_OPENSSL)
| 
| static int
| __archive_sha1init(archive_sha1_ctx *ctx)
| {
|   if ((*ctx = EVP_MD_CTX_new()) == NULL)
| 	return (ARCHIVE_FAILED);
|   if (!EVP_DigestInit(*ctx, EVP_sha1()))
| 	return (ARCHIVE_FAILED);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1update(archive_sha1_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   EVP_DigestUpdate(*ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1final(archive_sha1_ctx *ctx, void *md)
| {
|   /* HACK: archive_write_set_format_xar.c is finalizing empty contexts, so
|    * this is meant to cope with that. Real fix is probably to fix
|    * archive_write_set_format_xar.c
|    */
|   if (*ctx) {
|     EVP_DigestFinal(*ctx, md, NULL);
|     EVP_MD_CTX_free(*ctx);
|     *ctx = NULL;
|   }
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA1_WIN)
| 
| static int
| __archive_sha1init(archive_sha1_ctx *ctx)
| {
| #if defined(HAVE_BCRYPT_H) && _WIN32_WINNT >= _WIN32_WINNT_VISTA
|   return (win_crypto_init(ctx, BCRYPT_SHA1_ALGORITHM));
| #else
|   return (win_crypto_init(ctx, PROV_RSA_FULL, CALG_SHA1));
| #endif
| }
| 
| static int
| __archive_sha1update(archive_sha1_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   return (win_crypto_Update(ctx, indata, insize));
| }
| 
| static int
| __archive_sha1final(archive_sha1_ctx *ctx, void *md)
| {
|   return (win_crypto_Final(md, 20, ctx));
| }
| 
| #else
| 
| static int
| __archive_sha1init(archive_sha1_ctx *ctx)
| {
| 	(void)ctx; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_sha1update(archive_sha1_ctx *ctx, const void *indata,
|     size_t insize)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)indata; /* UNUSED */
| 	(void)insize; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_sha1final(archive_sha1_ctx *ctx, void *md)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)md; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| #endif
| 
| /* SHA256 implementations */
| #if defined(ARCHIVE_CRYPTO_SHA256_LIBC)
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
|   SHA256_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA256_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
|   SHA256_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA256_LIBC2)
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
|   SHA256Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA256Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
|   SHA256Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA256_LIBC3)
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
|   SHA256Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA256Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
|   SHA256Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA256_LIBMD)
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
|   SHA256_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA256_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
|   SHA256_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA256_LIBSYSTEM)
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
|   CC_SHA256_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   CC_SHA256_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
|   CC_SHA256_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA256_MBEDTLS)
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
|   mbedtls_sha256_init(ctx);
|   if (mbedtls_sha256_starts_ret(ctx, 0) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   if (mbedtls_sha256_update_ret(ctx, indata, insize) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
|   if (mbedtls_sha256_finish_ret(ctx, md) == 0) {
|     mbedtls_sha256_free(ctx);
|     return (ARCHIVE_OK);
|   } else {
|     mbedtls_sha256_free(ctx);
|     return (ARCHIVE_FATAL);
|   }
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA256_NETTLE)
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
|   sha256_init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   sha256_update(ctx, insize, indata);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
|   sha256_digest(ctx, SHA256_DIGEST_SIZE, md);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA256_OPENSSL)
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
|   if ((*ctx = EVP_MD_CTX_new()) == NULL)
| 	return (ARCHIVE_FAILED);
|   if (!EVP_DigestInit(*ctx, EVP_sha256()))
| 	return (ARCHIVE_FAILED);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   EVP_DigestUpdate(*ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
|   if (*ctx) {
|     EVP_DigestFinal(*ctx, md, NULL);
|     EVP_MD_CTX_free(*ctx);
|     *ctx = NULL;
|   }
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA256_WIN)
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
| #if defined(HAVE_BCRYPT_H) && _WIN32_WINNT >= _WIN32_WINNT_VISTA
|   return (win_crypto_init(ctx, BCRYPT_SHA256_ALGORITHM));
| #else
|   return (win_crypto_init(ctx, PROV_RSA_AES, CALG_SHA_256));
| #endif
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   return (win_crypto_Update(ctx, indata, insize));
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
|   return (win_crypto_Final(md, 32, ctx));
| }
| 
| #else
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
| 	(void)ctx; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)indata; /* UNUSED */
| 	(void)insize; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)md; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| #endif
| 
| /* SHA384 implementations */
| #if defined(ARCHIVE_CRYPTO_SHA384_LIBC)
| 
| static int
| __archive_sha384init(archive_sha384_ctx *ctx)
| {
|   SHA384_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384update(archive_sha384_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA384_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384final(archive_sha384_ctx *ctx, void *md)
| {
|   SHA384_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA384_LIBC2)
| 
| static int
| __archive_sha384init(archive_sha384_ctx *ctx)
| {
|   SHA384Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384update(archive_sha384_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA384Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384final(archive_sha384_ctx *ctx, void *md)
| {
|   SHA384Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA384_LIBC3)
| 
| static int
| __archive_sha384init(archive_sha384_ctx *ctx)
| {
|   SHA384Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384update(archive_sha384_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA384Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384final(archive_sha384_ctx *ctx, void *md)
| {
|   SHA384Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA384_LIBSYSTEM)
| 
| static int
| __archive_sha384init(archive_sha384_ctx *ctx)
| {
|   CC_SHA384_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384update(archive_sha384_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   CC_SHA384_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384final(archive_sha384_ctx *ctx, void *md)
| {
|   CC_SHA384_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA384_MBEDTLS)
| 
| static int
| __archive_sha384init(archive_sha384_ctx *ctx)
| {
|   mbedtls_sha512_init(ctx);
|   if (mbedtls_sha512_starts_ret(ctx, 1) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_sha384update(archive_sha384_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   if (mbedtls_sha512_update_ret(ctx, indata, insize) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_sha384final(archive_sha384_ctx *ctx, void *md)
| {
|   if (mbedtls_sha512_finish_ret(ctx, md) == 0) {
|     mbedtls_sha512_free(ctx);
|     return (ARCHIVE_OK);
|   } else {
|     mbedtls_sha512_free(ctx);
|     return (ARCHIVE_FATAL);
|   }
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA384_NETTLE)
| 
| static int
| __archive_sha384init(archive_sha384_ctx *ctx)
| {
|   sha384_init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384update(archive_sha384_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   sha384_update(ctx, insize, indata);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384final(archive_sha384_ctx *ctx, void *md)
| {
|   sha384_digest(ctx, SHA384_DIGEST_SIZE, md);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA384_OPENSSL)
| 
| static int
| __archive_sha384init(archive_sha384_ctx *ctx)
| {
|   if ((*ctx = EVP_MD_CTX_new()) == NULL)
| 	return (ARCHIVE_FAILED);
|   if (!EVP_DigestInit(*ctx, EVP_sha384()))
| 	return (ARCHIVE_FAILED);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384update(archive_sha384_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   EVP_DigestUpdate(*ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384final(archive_sha384_ctx *ctx, void *md)
| {
|   if (*ctx) {
|     EVP_DigestFinal(*ctx, md, NULL);
|     EVP_MD_CTX_free(*ctx);
|     *ctx = NULL;
|   }
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA384_WIN)
| 
| static int
| __archive_sha384init(archive_sha384_ctx *ctx)
| {
| #if defined(HAVE_BCRYPT_H) && _WIN32_WINNT >= _WIN32_WINNT_VISTA
|   return (win_crypto_init(ctx, BCRYPT_SHA384_ALGORITHM));
| #else
|   return (win_crypto_init(ctx, PROV_RSA_AES, CALG_SHA_384));
| #endif
| }
| 
| static int
| __archive_sha384update(archive_sha384_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   return (win_crypto_Update(ctx, indata, insize));
| }
| 
| static int
| __archive_sha384final(archive_sha384_ctx *ctx, void *md)
| {
|   return (win_crypto_Final(md, 48, ctx));
| }
| 
| #else
| 
| static int
| __archive_sha384init(archive_sha384_ctx *ctx)
| {
| 	(void)ctx; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_sha384update(archive_sha384_ctx *ctx, const void *indata,
|     size_t insize)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)indata; /* UNUSED */
| 	(void)insize; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_sha384final(archive_sha384_ctx *ctx, void *md)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)md; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| #endif
| 
| /* SHA512 implementations */
| #if defined(ARCHIVE_CRYPTO_SHA512_LIBC)
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
|   SHA512_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA512_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
|   SHA512_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA512_LIBC2)
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
|   SHA512Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA512Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
|   SHA512Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA512_LIBC3)
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
|   SHA512Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA512Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
|   SHA512Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA512_LIBMD)
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
|   SHA512_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA512_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
|   SHA512_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA512_LIBSYSTEM)
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
|   CC_SHA512_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   CC_SHA512_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
|   CC_SHA512_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA512_MBEDTLS)
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
|   mbedtls_sha512_init(ctx);
|   if (mbedtls_sha512_starts_ret(ctx, 0) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   if (mbedtls_sha512_update_ret(ctx, indata, insize) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
|   if (mbedtls_sha512_finish_ret(ctx, md) == 0) {
|     mbedtls_sha512_free(ctx);
|     return (ARCHIVE_OK);
|   } else {
|     mbedtls_sha512_free(ctx);
|     return (ARCHIVE_FATAL);
|   }
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA512_NETTLE)
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
|   sha512_init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   sha512_update(ctx, insize, indata);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
|   sha512_digest(ctx, SHA512_DIGEST_SIZE, md);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA512_OPENSSL)
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
|   if ((*ctx = EVP_MD_CTX_new()) == NULL)
| 	return (ARCHIVE_FAILED);
|   if (!EVP_DigestInit(*ctx, EVP_sha512()))
| 	return (ARCHIVE_FAILED);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   EVP_DigestUpdate(*ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
|   if (*ctx) {
|     EVP_DigestFinal(*ctx, md, NULL);
|     EVP_MD_CTX_free(*ctx);
|     *ctx = NULL;
|   }
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA512_WIN)
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
| #if defined(HAVE_BCRYPT_H) && _WIN32_WINNT >= _WIN32_WINNT_VISTA
|   return (win_crypto_init(ctx, BCRYPT_SHA512_ALGORITHM));
| #else
|   return (win_crypto_init(ctx, PROV_RSA_AES, CALG_SHA_512));
| #endif
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   return (win_crypto_Update(ctx, indata, insize));
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
|   return (win_crypto_Final(md, 64, ctx));
| }
| 
| #else
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
| 	(void)ctx; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)indata; /* UNUSED */
| 	(void)insize; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)md; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| #endif
| 
| /* NOTE: Message Digest functions are set based on availability and by the
|  * following order of preference.
|  * 1. libc
|  * 2. libc2
|  * 3. libc3
|  * 4. libSystem
|  * 5. Nettle
|  * 6. OpenSSL
|  * 7. libmd
|  * 8. Windows API
|  */
| const struct archive_digest __archive_digest =
| {
| /* MD5 */
|   &__archive_md5init,
|   &__archive_md5update,
|   &__archive_md5final,
| 
| /* RIPEMD160 */
|   &__archive_ripemd160init,
|   &__archive_ripemd160update,
|   &__archive_ripemd160final,
| 
| /* SHA1 */
|   &__archive_sha1init,
|   &__archive_sha1update,
|   &__archive_sha1final,
| 
| /* SHA256 */
|   &__archive_sha256init,
|   &__archive_sha256update,
|   &__archive_sha256final,
| 
| /* SHA384 */
|   &__archive_sha384init,
|   &__archive_sha384update,
|   &__archive_sha384final,
| 
| /* SHA512 */
|   &__archive_sha512init,
|   &__archive_sha512update,
|   &__archive_sha512final
| };
| 
| int
| main(int argc, char **argv)
| {
|   archive_sha1_ctx ctx;
|   archive_sha1_init(&ctx);
|   archive_sha1_update(&ctx, *argv, argc);
|   archive_sha1_final(&ctx, NULL);
|   return 0;
| }
| 
configure:17846: result: no
configure:17860: checking support for ARCHIVE_CRYPTO_SHA1_LIBSYSTEM
configure:17882: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -o conftest -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2  -I. -I. -I./libarchive  conftest.c -lzstd -llz4 -lz  -L/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/lib -lxml2  >&5
In file included from conftest.c:255:
./libarchive/archive_digest_private.h:115:10: fatal error: CommonCrypto/CommonDigest.h: No such file or directory
  115 | #include <CommonCrypto/CommonDigest.h>
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
compilation terminated.
configure:17882: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "libarchive"
| #define PACKAGE_TARNAME "libarchive"
| #define PACKAGE_VERSION "3.7.2"
| #define PACKAGE_STRING "libarchive 3.7.2"
| #define PACKAGE_BUGREPORT "libarchive-discuss@googlegroups.com"
| #define PACKAGE_URL ""
| #define PACKAGE "libarchive"
| #define VERSION "3.7.2"
| #define __LIBARCHIVE_CONFIG_H_INCLUDED 1
| #define LIBARCHIVE_VERSION_STRING "3.7.2"
| #define LIBARCHIVE_VERSION_NUMBER "3007002"
| #define BSDCPIO_VERSION_STRING "3.7.2"
| #define BSDTAR_VERSION_STRING "3.7.2"
| #define BSDCAT_VERSION_STRING "3.7.2"
| #define BSDUNZIP_VERSION_STRING "3.7.2"
| #define HAVE_STDIO_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_SYS_TIME_H 1
| #define STDC_HEADERS 1
| #define _ALL_SOURCE 1
| #define _DARWIN_C_SOURCE 1
| #define _GNU_SOURCE 1
| #define _HPUX_ALT_XOPEN_SOCKET_API 1
| #define _NETBSD_SOURCE 1
| #define _OPENBSD_SOURCE 1
| #define _POSIX_PTHREAD_SEMANTICS 1
| #define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1
| #define __STDC_WANT_IEC_60559_BFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_DFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1
| #define __STDC_WANT_IEC_60559_TYPES_EXT__ 1
| #define __STDC_WANT_LIB_EXT2__ 1
| #define __STDC_WANT_MATH_SPEC_FUNCS__ 1
| #define _TANDEM_SOURCE 1
| #define __EXTENSIONS__ 1
| #define HAVE_DLFCN_H 1
| #define LT_OBJDIR ".libs/"
| #define HAVE_DIRENT_H 1
| #define HAVE_SYS_WAIT_H 1
| #define HAVE_CTYPE_H 1
| #define HAVE_ERRNO_H 1
| #define HAVE_FCNTL_H 1
| #define HAVE_FNMATCH_H 1
| #define HAVE_GRP_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_LANGINFO_H 1
| #define HAVE_LIMITS_H 1
| #define HAVE_LINUX_FIEMAP_H 1
| #define HAVE_LINUX_FS_H 1
| #define HAVE_LINUX_MAGIC_H 1
| #define HAVE_LINUX_TYPES_H 1
| #define HAVE_WORKING_FS_IOC_GETFLAGS 1
| #define HAVE_LOCALE_H 1
| #define HAVE_PATHS_H 1
| #define HAVE_POLL_H 1
| #define HAVE_PTHREAD_H 1
| #define HAVE_PWD_H 1
| #define HAVE_SIGNAL_H 1
| #define HAVE_SPAWN_H 1
| #define HAVE_STDARG_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_SYS_CDEFS_H 1
| #define HAVE_SYS_IOCTL_H 1
| #define HAVE_SYS_MOUNT_H 1
| #define HAVE_SYS_QUEUE_H 1
| #define HAVE_SYS_PARAM_H 1
| #define HAVE_SYS_POLL_H 1
| #define HAVE_SYS_SELECT_H 1
| #define HAVE_SYS_STATFS_H 1
| #define HAVE_SYS_STATVFS_H 1
| #define HAVE_SYS_SYSMACROS_H 1
| #define HAVE_SYS_TIME_H 1
| #define HAVE_SYS_UTSNAME_H 1
| #define HAVE_SYS_VFS_H 1
| #define HAVE_SYS_XATTR_H 1
| #define HAVE_TIME_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_UTIME_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_WCTYPE_H 1
| #define HAVE_ZLIB_H 1
| #define HAVE_LIBZ 1
| #define HAVE_ICONV 1
| #define ICONV_CONST 
| #define HAVE_ICONV_H 1
| #define HAVE_LZ4_H 1
| #define HAVE_LZ4HC_H 1
| #define HAVE_LIBLZ4 1
| #define HAVE_ZSTD_H 1
| #define HAVE_LIBZSTD 1
| #define HAVE_LIBZSTD_COMPRESSOR 1
| #define HAVE_LIBXML_XMLREADER_H 1
| #define HAVE_LIBXML_XMLWRITER_H 1
| #define HAVE_REGEX_H 1
| #define HAVE_STRUCT_TM_TM_GMTOFF 1
| #define HAVE_STRUCT_STAT_ST_MTIM_TV_NSEC 1
| #define HAVE_STRUCT_STAT_ST_BLKSIZE 1
| #define HAVE_UINTMAX_T 1
| #define HAVE_UNSIGNED_LONG_LONG 1
| #define HAVE_UNSIGNED_LONG_LONG_INT 1
| #define HAVE_LONG_LONG_INT 1
| #define HAVE_INTMAX_T 1
| #define HAVE_UINTMAX_T 1
| #define HAVE_DECL_SIZE_MAX 1
| #define HAVE_DECL_INT32_MAX 1
| #define HAVE_DECL_INT32_MIN 1
| #define HAVE_DECL_INT64_MAX 1
| #define HAVE_DECL_INT64_MIN 1
| #define HAVE_DECL_UINT64_MAX 1
| #define HAVE_DECL_UINT32_MAX 1
| #define HAVE_DECL_INTMAX_MAX 1
| #define HAVE_DECL_INTMAX_MIN 1
| #define HAVE_DECL_UINTMAX_MAX 1
| #define HAVE_DECL_SSIZE_MAX 1
| #define HAVE_EILSEQ 1
| #define HAVE_WCHAR_T 1
| #define SIZEOF_WCHAR_T 4
| #define SIZEOF_INT 4
| #define SIZEOF_LONG 4
| #define MAJOR_IN_SYSMACROS 1
| #define HAVE_FSEEKO 1
| #define LSTAT_FOLLOWS_SLASHED_SYMLINK 1
| #define HAVE_LSTAT_EMPTY_STRING_BUG 1
| #define HAVE_STAT_EMPTY_STRING_BUG 1
| #define HAVE_DECL_STRERROR_R 1
| #define HAVE_STRERROR_R 1
| #define STRERROR_R_CHAR_P 1
| #define HAVE_STRFTIME 1
| #define HAVE_VPRINTF 1
| #define HAVE_ARC4RANDOM_BUF 1
| #define HAVE_CHOWN 1
| #define HAVE_CHROOT 1
| #define HAVE_CTIME_R 1
| #define HAVE_FCHDIR 1
| #define HAVE_FCHMOD 1
| #define HAVE_FCHOWN 1
| #define HAVE_FCNTL 1
| #define HAVE_FDOPENDIR 1
| #define HAVE_FNMATCH 1
| #define HAVE_FORK 1
| #define HAVE_FSTAT 1
| #define HAVE_FSTATAT 1
| #define HAVE_FSTATFS 1
| #define HAVE_FSTATVFS 1
| #define HAVE_FTRUNCATE 1
| #define HAVE_FUTIMENS 1
| #define HAVE_FUTIMES 1
| #define HAVE_FUTIMESAT 1
| #define HAVE_GETEUID 1
| #define HAVE_GETLINE 1
| #define HAVE_GETPID 1
| #define HAVE_GETGRGID_R 1
| #define HAVE_GETGRNAM_R 1
| #define HAVE_GETPWNAM_R 1
| #define HAVE_GETPWUID_R 1
| #define HAVE_GMTIME_R 1
| #define HAVE_LCHMOD 1
| #define HAVE_LCHOWN 1
| #define HAVE_LINK 1
| #define HAVE_LINKAT 1
| #define HAVE_LOCALTIME_R 1
| #define HAVE_LSTAT 1
| #define HAVE_LUTIMES 1
| #define HAVE_MBRTOWC 1
| #define HAVE_MEMMOVE 1
| #define HAVE_MEMSET 1
| #define HAVE_MKDIR 1
| #define HAVE_MKFIFO 1
| #define HAVE_MKNOD 1
| #define HAVE_MKSTEMP 1
| #define HAVE_NL_LANGINFO 1
| #define HAVE_OPENAT 1
| #define HAVE_PIPE 1
| #define HAVE_POLL 1
| #define HAVE_POSIX_SPAWNP 1
| #define HAVE_READLINK 1
| #define HAVE_READLINKAT 1
| #define HAVE_SELECT 1
| #define HAVE_SETENV 1
| #define HAVE_SETLOCALE 1
| #define HAVE_SIGACTION 1
| #define HAVE_STATFS 1
| #define HAVE_STATVFS 1
| #define HAVE_STRCHR 1
| #define HAVE_STRDUP 1
| #define HAVE_STRERROR 1
| #define HAVE_STRNLEN 1
| #define HAVE_STRRCHR 1
| #define HAVE_SYMLINK 1
| #define HAVE_TIMEGM 1
| #define HAVE_TZSET 1
| #define HAVE_UNLINKAT 1
| #define HAVE_UNSETENV 1
| #define HAVE_UTIME 1
| #define HAVE_UTIMENSAT 1
| #define HAVE_UTIMES 1
| #define HAVE_VFORK 1
| #define HAVE_WCRTOMB 1
| #define HAVE_WCSCMP 1
| #define HAVE_WCSCPY 1
| #define HAVE_WCSLEN 1
| #define HAVE_WCTOMB 1
| #define HAVE_WMEMCMP 1
| #define HAVE_WMEMCPY 1
| #define HAVE_WMEMMOVE 1
| #define HAVE_READDIR_R 1
| #define HAVE_DIRFD 1
| /* end confdefs.h.  */
| 
| #define ARCHIVE_SHA1_COMPILE_TEST
| #define ARCHIVE_CRYPTO_SHA1_LIBSYSTEM
| #define PLATFORM_CONFIG_H "check_crypto_md.h"
| 
| /*-
| * Copyright (c) 2003-2007 Tim Kientzle
| * Copyright (c) 2011 Andres Mejia
| * Copyright (c) 2011 Michihiro NAKAJIMA
| * All rights reserved.
| *
| * Redistribution and use in source and binary forms, with or without
| * modification, are permitted provided that the following conditions
| * are met:
| * 1. Redistributions of source code must retain the above copyright
| *    notice, this list of conditions and the following disclaimer.
| * 2. Redistributions in binary form must reproduce the above copyright
| *    notice, this list of conditions and the following disclaimer in the
| *    documentation and/or other materials provided with the distribution.
| *
| * THIS SOFTWARE IS PROVIDED BY THE AUTHOR(S) ``AS IS'' AND ANY EXPRESS OR
| * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
| * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
| * IN NO EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY DIRECT, INDIRECT,
| * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
| * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
| * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
| * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
| * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
| * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
| */
| 
| #include "archive_platform.h"
| 
| #include "archive.h"
| #include "archive_digest_private.h"
| 
| /* In particular, force the configure probe to break if it tries
|  * to test a combination of OpenSSL and libmd. */
| #if defined(ARCHIVE_CRYPTO_OPENSSL) && defined(ARCHIVE_CRYPTO_LIBMD)
| #error Cannot use both OpenSSL and libmd.
| #endif
| 
| /* Common in other bcrypt implementations, but missing from VS2008. */
| #ifndef BCRYPT_SUCCESS
| #define BCRYPT_SUCCESS(r) ((NTSTATUS)(r) == STATUS_SUCCESS)
| #endif
| 
| /*
|  * Message digest functions for Windows platform.
|  */
| #if defined(ARCHIVE_CRYPTO_MD5_WIN)    ||\
| 	defined(ARCHIVE_CRYPTO_SHA1_WIN)   ||\
| 	defined(ARCHIVE_CRYPTO_SHA256_WIN) ||\
| 	defined(ARCHIVE_CRYPTO_SHA384_WIN) ||\
| 	defined(ARCHIVE_CRYPTO_SHA512_WIN)
| 
| /*
|  * Initialize a Message digest.
|  */
| #if defined(HAVE_BCRYPT_H) && _WIN32_WINNT >= _WIN32_WINNT_VISTA
| static int
| win_crypto_init(Digest_CTX *ctx, const WCHAR *algo)
| {
| 	NTSTATUS status;
| 	ctx->valid = 0;
| 
| 	status = BCryptOpenAlgorithmProvider(&ctx->hAlg, algo, NULL, 0);
| 	if (!BCRYPT_SUCCESS(status))
| 		return (ARCHIVE_FAILED);
| 	status = BCryptCreateHash(ctx->hAlg, &ctx->hHash, NULL, 0, NULL, 0, 0);
| 	if (!BCRYPT_SUCCESS(status)) {
| 		BCryptCloseAlgorithmProvider(ctx->hAlg, 0);
| 		return (ARCHIVE_FAILED);
| 	}
| 
| 	ctx->valid = 1;
| 	return (ARCHIVE_OK);
| }
| #else
| static int
| win_crypto_init(Digest_CTX *ctx, DWORD prov, ALG_ID algId)
| {
| 
| 	ctx->valid = 0;
| 	if (!CryptAcquireContext(&ctx->cryptProv, NULL, NULL,
| 	    prov, CRYPT_VERIFYCONTEXT)) {
| 		if (GetLastError() != (DWORD)NTE_BAD_KEYSET)
| 			return (ARCHIVE_FAILED);
| 		if (!CryptAcquireContext(&ctx->cryptProv, NULL, NULL,
| 		    prov, CRYPT_NEWKEYSET))
| 			return (ARCHIVE_FAILED);
| 	}
| 
| 	if (!CryptCreateHash(ctx->cryptProv, algId, 0, 0, &ctx->hash)) {
| 		CryptReleaseContext(ctx->cryptProv, 0);
| 		return (ARCHIVE_FAILED);
| 	}
| 
| 	ctx->valid = 1;
| 	return (ARCHIVE_OK);
| }
| #endif
| 
| /*
|  * Update a Message digest.
|  */
| static int
| win_crypto_Update(Digest_CTX *ctx, const unsigned char *buf, size_t len)
| {
| 
| 	if (!ctx->valid)
| 		return (ARCHIVE_FAILED);
| 
| #if defined(HAVE_BCRYPT_H) && _WIN32_WINNT >= _WIN32_WINNT_VISTA
| 	BCryptHashData(ctx->hHash,
| 		      (PUCHAR)(uintptr_t)buf,
| 		      (ULONG)len, 0);
| #else
| 	CryptHashData(ctx->hash,
| 		      (unsigned char *)(uintptr_t)buf,
| 		      (DWORD)len, 0);
| #endif
| 	return (ARCHIVE_OK);
| }
| 
| static int
| win_crypto_Final(unsigned char *buf, size_t bufsize, Digest_CTX *ctx)
| {
| #if !(defined(HAVE_BCRYPT_H) && _WIN32_WINNT >= _WIN32_WINNT_VISTA)
| 	DWORD siglen = (DWORD)bufsize;
| #endif
| 
| 	if (!ctx->valid)
| 		return (ARCHIVE_FAILED);
| 
| #if defined(HAVE_BCRYPT_H) && _WIN32_WINNT >= _WIN32_WINNT_VISTA
| 	BCryptFinishHash(ctx->hHash, buf, (ULONG)bufsize, 0);
| 	BCryptDestroyHash(ctx->hHash);
| 	BCryptCloseAlgorithmProvider(ctx->hAlg, 0);
| #else
| 	CryptGetHashParam(ctx->hash, HP_HASHVAL, buf, &siglen, 0);
| 	CryptDestroyHash(ctx->hash);
| 	CryptReleaseContext(ctx->cryptProv, 0);
| #endif
| 	ctx->valid = 0;
| 	return (ARCHIVE_OK);
| }
| 
| #endif /* defined(ARCHIVE_CRYPTO_*_WIN) */
| 
| 
| /* MD5 implementations */
| #if defined(ARCHIVE_CRYPTO_MD5_LIBC)
| 
| static int
| __archive_md5init(archive_md5_ctx *ctx)
| {
|   MD5Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5update(archive_md5_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   MD5Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5final(archive_md5_ctx *ctx, void *md)
| {
|   MD5Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_MD5_LIBMD)
| 
| static int
| __archive_md5init(archive_md5_ctx *ctx)
| {
|   MD5Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5update(archive_md5_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   MD5Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5final(archive_md5_ctx *ctx, void *md)
| {
|   MD5Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_MD5_LIBSYSTEM)
| 
| static int
| __archive_md5init(archive_md5_ctx *ctx)
| {
|   CC_MD5_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5update(archive_md5_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   CC_MD5_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5final(archive_md5_ctx *ctx, void *md)
| {
|   CC_MD5_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_MD5_MBEDTLS)
| 
| static int
| __archive_md5init(archive_md5_ctx *ctx)
| {
|   mbedtls_md5_init(ctx);
|   if (mbedtls_md5_starts_ret(ctx) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_md5update(archive_md5_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   if (mbedtls_md5_update_ret(ctx, indata, insize) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_md5final(archive_md5_ctx *ctx, void *md)
| {
|   if (mbedtls_md5_finish_ret(ctx, md) == 0) {
|     mbedtls_md5_free(ctx);
|     return (ARCHIVE_OK);
|   } else {
|     mbedtls_md5_free(ctx);
|     return (ARCHIVE_FATAL);
|   }
| }
| 
| #elif defined(ARCHIVE_CRYPTO_MD5_NETTLE)
| 
| static int
| __archive_md5init(archive_md5_ctx *ctx)
| {
|   md5_init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5update(archive_md5_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   md5_update(ctx, insize, indata);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5final(archive_md5_ctx *ctx, void *md)
| {
|   md5_digest(ctx, MD5_DIGEST_SIZE, md);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_MD5_OPENSSL)
| 
| static int
| __archive_md5init(archive_md5_ctx *ctx)
| {
|   if ((*ctx = EVP_MD_CTX_new()) == NULL)
| 	return (ARCHIVE_FAILED);
|   if (!EVP_DigestInit(*ctx, EVP_md5()))
| 	return (ARCHIVE_FAILED);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5update(archive_md5_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   EVP_DigestUpdate(*ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5final(archive_md5_ctx *ctx, void *md)
| {
|   /* HACK: archive_write_set_format_xar.c is finalizing empty contexts, so
|    * this is meant to cope with that. Real fix is probably to fix
|    * archive_write_set_format_xar.c
|    */
|   if (*ctx) {
|     EVP_DigestFinal(*ctx, md, NULL);
|     EVP_MD_CTX_free(*ctx);
|     *ctx = NULL;
|   }
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_MD5_WIN)
| 
| static int
| __archive_md5init(archive_md5_ctx *ctx)
| {
| #if defined(HAVE_BCRYPT_H) && _WIN32_WINNT >= _WIN32_WINNT_VISTA
|   return (win_crypto_init(ctx, BCRYPT_MD5_ALGORITHM));
| #else
|   return (win_crypto_init(ctx, PROV_RSA_FULL, CALG_MD5));
| #endif
| }
| 
| static int
| __archive_md5update(archive_md5_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   return (win_crypto_Update(ctx, indata, insize));
| }
| 
| static int
| __archive_md5final(archive_md5_ctx *ctx, void *md)
| {
|   return (win_crypto_Final(md, 16, ctx));
| }
| 
| #else
| 
| static int
| __archive_md5init(archive_md5_ctx *ctx)
| {
| 	(void)ctx; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_md5update(archive_md5_ctx *ctx, const void *indata,
|     size_t insize)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)indata; /* UNUSED */
| 	(void)insize; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_md5final(archive_md5_ctx *ctx, void *md)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)md; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| #endif
| 
| /* RIPEMD160 implementations */
| #if defined(ARCHIVE_CRYPTO_RMD160_LIBC)
| 
| static int
| __archive_ripemd160init(archive_rmd160_ctx *ctx)
| {
|   RMD160Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   RMD160Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md)
| {
|   RMD160Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_RMD160_LIBMD)
| 
| static int
| __archive_ripemd160init(archive_rmd160_ctx *ctx)
| {
|   RIPEMD160_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   RIPEMD160_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md)
| {
|   RIPEMD160_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_RMD160_MBEDTLS)
| 
| static int
| __archive_ripemd160init(archive_rmd160_ctx *ctx)
| {
|   mbedtls_ripemd160_init(ctx);
|   if (mbedtls_ripemd160_starts_ret(ctx) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   if (mbedtls_ripemd160_update_ret(ctx, indata, insize) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md)
| {
|   if (mbedtls_ripemd160_finish_ret(ctx, md) == 0) {
|     mbedtls_ripemd160_free(ctx);
|     return (ARCHIVE_OK);
|   } else {
|     mbedtls_ripemd160_free(ctx);
|     return (ARCHIVE_FATAL);
|   }
| }
| 
| #elif defined(ARCHIVE_CRYPTO_RMD160_NETTLE)
| 
| static int
| __archive_ripemd160init(archive_rmd160_ctx *ctx)
| {
|   ripemd160_init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   ripemd160_update(ctx, insize, indata);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md)
| {
|   ripemd160_digest(ctx, RIPEMD160_DIGEST_SIZE, md);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_RMD160_OPENSSL)
| 
| static int
| __archive_ripemd160init(archive_rmd160_ctx *ctx)
| {
|   if ((*ctx = EVP_MD_CTX_new()) == NULL)
| 	return (ARCHIVE_FAILED);
|   if (!EVP_DigestInit(*ctx, EVP_ripemd160()))
| 	return (ARCHIVE_FAILED);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   EVP_DigestUpdate(*ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md)
| {
|   if (*ctx) {
|     EVP_DigestFinal(*ctx, md, NULL);
|     EVP_MD_CTX_free(*ctx);
|     *ctx = NULL;
|   }
|   return (ARCHIVE_OK);
| }
| 
| #else
| 
| static int
| __archive_ripemd160init(archive_rmd160_ctx *ctx)
| {
| 	(void)ctx; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata,
|     size_t insize)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)indata; /* UNUSED */
| 	(void)insize; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)md; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| #endif
| 
| /* SHA1 implementations */
| #if defined(ARCHIVE_CRYPTO_SHA1_LIBC)
| 
| static int
| __archive_sha1init(archive_sha1_ctx *ctx)
| {
|   SHA1Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1update(archive_sha1_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA1Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1final(archive_sha1_ctx *ctx, void *md)
| {
|   SHA1Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA1_LIBMD)
| 
| static int
| __archive_sha1init(archive_sha1_ctx *ctx)
| {
|   SHA1_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1update(archive_sha1_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA1_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1final(archive_sha1_ctx *ctx, void *md)
| {
|   SHA1_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA1_LIBSYSTEM)
| 
| static int
| __archive_sha1init(archive_sha1_ctx *ctx)
| {
|   CC_SHA1_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1update(archive_sha1_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   CC_SHA1_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1final(archive_sha1_ctx *ctx, void *md)
| {
|   CC_SHA1_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA1_MBEDTLS)
| 
| static int
| __archive_sha1init(archive_sha1_ctx *ctx)
| {
|   mbedtls_sha1_init(ctx);
|   if (mbedtls_sha1_starts_ret(ctx) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_sha1update(archive_sha1_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   if (mbedtls_sha1_update_ret(ctx, indata, insize) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_sha1final(archive_sha1_ctx *ctx, void *md)
| {
|   if (mbedtls_sha1_finish_ret(ctx, md) == 0) {
|     mbedtls_sha1_free(ctx);
|     return (ARCHIVE_OK);
|   } else {
|     mbedtls_sha1_free(ctx);
|     return (ARCHIVE_FATAL);
|   }
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA1_NETTLE)
| 
| static int
| __archive_sha1init(archive_sha1_ctx *ctx)
| {
|   sha1_init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1update(archive_sha1_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   sha1_update(ctx, insize, indata);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1final(archive_sha1_ctx *ctx, void *md)
| {
|   sha1_digest(ctx, SHA1_DIGEST_SIZE, md);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA1_OPENSSL)
| 
| static int
| __archive_sha1init(archive_sha1_ctx *ctx)
| {
|   if ((*ctx = EVP_MD_CTX_new()) == NULL)
| 	return (ARCHIVE_FAILED);
|   if (!EVP_DigestInit(*ctx, EVP_sha1()))
| 	return (ARCHIVE_FAILED);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1update(archive_sha1_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   EVP_DigestUpdate(*ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1final(archive_sha1_ctx *ctx, void *md)
| {
|   /* HACK: archive_write_set_format_xar.c is finalizing empty contexts, so
|    * this is meant to cope with that. Real fix is probably to fix
|    * archive_write_set_format_xar.c
|    */
|   if (*ctx) {
|     EVP_DigestFinal(*ctx, md, NULL);
|     EVP_MD_CTX_free(*ctx);
|     *ctx = NULL;
|   }
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA1_WIN)
| 
| static int
| __archive_sha1init(archive_sha1_ctx *ctx)
| {
| #if defined(HAVE_BCRYPT_H) && _WIN32_WINNT >= _WIN32_WINNT_VISTA
|   return (win_crypto_init(ctx, BCRYPT_SHA1_ALGORITHM));
| #else
|   return (win_crypto_init(ctx, PROV_RSA_FULL, CALG_SHA1));
| #endif
| }
| 
| static int
| __archive_sha1update(archive_sha1_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   return (win_crypto_Update(ctx, indata, insize));
| }
| 
| static int
| __archive_sha1final(archive_sha1_ctx *ctx, void *md)
| {
|   return (win_crypto_Final(md, 20, ctx));
| }
| 
| #else
| 
| static int
| __archive_sha1init(archive_sha1_ctx *ctx)
| {
| 	(void)ctx; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_sha1update(archive_sha1_ctx *ctx, const void *indata,
|     size_t insize)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)indata; /* UNUSED */
| 	(void)insize; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_sha1final(archive_sha1_ctx *ctx, void *md)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)md; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| #endif
| 
| /* SHA256 implementations */
| #if defined(ARCHIVE_CRYPTO_SHA256_LIBC)
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
|   SHA256_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA256_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
|   SHA256_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA256_LIBC2)
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
|   SHA256Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA256Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
|   SHA256Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA256_LIBC3)
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
|   SHA256Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA256Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
|   SHA256Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA256_LIBMD)
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
|   SHA256_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA256_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
|   SHA256_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA256_LIBSYSTEM)
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
|   CC_SHA256_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   CC_SHA256_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
|   CC_SHA256_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA256_MBEDTLS)
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
|   mbedtls_sha256_init(ctx);
|   if (mbedtls_sha256_starts_ret(ctx, 0) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   if (mbedtls_sha256_update_ret(ctx, indata, insize) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
|   if (mbedtls_sha256_finish_ret(ctx, md) == 0) {
|     mbedtls_sha256_free(ctx);
|     return (ARCHIVE_OK);
|   } else {
|     mbedtls_sha256_free(ctx);
|     return (ARCHIVE_FATAL);
|   }
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA256_NETTLE)
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
|   sha256_init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   sha256_update(ctx, insize, indata);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
|   sha256_digest(ctx, SHA256_DIGEST_SIZE, md);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA256_OPENSSL)
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
|   if ((*ctx = EVP_MD_CTX_new()) == NULL)
| 	return (ARCHIVE_FAILED);
|   if (!EVP_DigestInit(*ctx, EVP_sha256()))
| 	return (ARCHIVE_FAILED);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   EVP_DigestUpdate(*ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
|   if (*ctx) {
|     EVP_DigestFinal(*ctx, md, NULL);
|     EVP_MD_CTX_free(*ctx);
|     *ctx = NULL;
|   }
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA256_WIN)
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
| #if defined(HAVE_BCRYPT_H) && _WIN32_WINNT >= _WIN32_WINNT_VISTA
|   return (win_crypto_init(ctx, BCRYPT_SHA256_ALGORITHM));
| #else
|   return (win_crypto_init(ctx, PROV_RSA_AES, CALG_SHA_256));
| #endif
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   return (win_crypto_Update(ctx, indata, insize));
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
|   return (win_crypto_Final(md, 32, ctx));
| }
| 
| #else
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
| 	(void)ctx; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)indata; /* UNUSED */
| 	(void)insize; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)md; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| #endif
| 
| /* SHA384 implementations */
| #if defined(ARCHIVE_CRYPTO_SHA384_LIBC)
| 
| static int
| __archive_sha384init(archive_sha384_ctx *ctx)
| {
|   SHA384_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384update(archive_sha384_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA384_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384final(archive_sha384_ctx *ctx, void *md)
| {
|   SHA384_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA384_LIBC2)
| 
| static int
| __archive_sha384init(archive_sha384_ctx *ctx)
| {
|   SHA384Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384update(archive_sha384_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA384Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384final(archive_sha384_ctx *ctx, void *md)
| {
|   SHA384Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA384_LIBC3)
| 
| static int
| __archive_sha384init(archive_sha384_ctx *ctx)
| {
|   SHA384Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384update(archive_sha384_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA384Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384final(archive_sha384_ctx *ctx, void *md)
| {
|   SHA384Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA384_LIBSYSTEM)
| 
| static int
| __archive_sha384init(archive_sha384_ctx *ctx)
| {
|   CC_SHA384_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384update(archive_sha384_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   CC_SHA384_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384final(archive_sha384_ctx *ctx, void *md)
| {
|   CC_SHA384_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA384_MBEDTLS)
| 
| static int
| __archive_sha384init(archive_sha384_ctx *ctx)
| {
|   mbedtls_sha512_init(ctx);
|   if (mbedtls_sha512_starts_ret(ctx, 1) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_sha384update(archive_sha384_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   if (mbedtls_sha512_update_ret(ctx, indata, insize) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_sha384final(archive_sha384_ctx *ctx, void *md)
| {
|   if (mbedtls_sha512_finish_ret(ctx, md) == 0) {
|     mbedtls_sha512_free(ctx);
|     return (ARCHIVE_OK);
|   } else {
|     mbedtls_sha512_free(ctx);
|     return (ARCHIVE_FATAL);
|   }
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA384_NETTLE)
| 
| static int
| __archive_sha384init(archive_sha384_ctx *ctx)
| {
|   sha384_init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384update(archive_sha384_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   sha384_update(ctx, insize, indata);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384final(archive_sha384_ctx *ctx, void *md)
| {
|   sha384_digest(ctx, SHA384_DIGEST_SIZE, md);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA384_OPENSSL)
| 
| static int
| __archive_sha384init(archive_sha384_ctx *ctx)
| {
|   if ((*ctx = EVP_MD_CTX_new()) == NULL)
| 	return (ARCHIVE_FAILED);
|   if (!EVP_DigestInit(*ctx, EVP_sha384()))
| 	return (ARCHIVE_FAILED);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384update(archive_sha384_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   EVP_DigestUpdate(*ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384final(archive_sha384_ctx *ctx, void *md)
| {
|   if (*ctx) {
|     EVP_DigestFinal(*ctx, md, NULL);
|     EVP_MD_CTX_free(*ctx);
|     *ctx = NULL;
|   }
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA384_WIN)
| 
| static int
| __archive_sha384init(archive_sha384_ctx *ctx)
| {
| #if defined(HAVE_BCRYPT_H) && _WIN32_WINNT >= _WIN32_WINNT_VISTA
|   return (win_crypto_init(ctx, BCRYPT_SHA384_ALGORITHM));
| #else
|   return (win_crypto_init(ctx, PROV_RSA_AES, CALG_SHA_384));
| #endif
| }
| 
| static int
| __archive_sha384update(archive_sha384_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   return (win_crypto_Update(ctx, indata, insize));
| }
| 
| static int
| __archive_sha384final(archive_sha384_ctx *ctx, void *md)
| {
|   return (win_crypto_Final(md, 48, ctx));
| }
| 
| #else
| 
| static int
| __archive_sha384init(archive_sha384_ctx *ctx)
| {
| 	(void)ctx; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_sha384update(archive_sha384_ctx *ctx, const void *indata,
|     size_t insize)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)indata; /* UNUSED */
| 	(void)insize; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_sha384final(archive_sha384_ctx *ctx, void *md)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)md; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| #endif
| 
| /* SHA512 implementations */
| #if defined(ARCHIVE_CRYPTO_SHA512_LIBC)
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
|   SHA512_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA512_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
|   SHA512_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA512_LIBC2)
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
|   SHA512Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA512Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
|   SHA512Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA512_LIBC3)
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
|   SHA512Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA512Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
|   SHA512Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA512_LIBMD)
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
|   SHA512_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA512_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
|   SHA512_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA512_LIBSYSTEM)
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
|   CC_SHA512_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   CC_SHA512_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
|   CC_SHA512_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA512_MBEDTLS)
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
|   mbedtls_sha512_init(ctx);
|   if (mbedtls_sha512_starts_ret(ctx, 0) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   if (mbedtls_sha512_update_ret(ctx, indata, insize) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
|   if (mbedtls_sha512_finish_ret(ctx, md) == 0) {
|     mbedtls_sha512_free(ctx);
|     return (ARCHIVE_OK);
|   } else {
|     mbedtls_sha512_free(ctx);
|     return (ARCHIVE_FATAL);
|   }
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA512_NETTLE)
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
|   sha512_init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   sha512_update(ctx, insize, indata);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
|   sha512_digest(ctx, SHA512_DIGEST_SIZE, md);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA512_OPENSSL)
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
|   if ((*ctx = EVP_MD_CTX_new()) == NULL)
| 	return (ARCHIVE_FAILED);
|   if (!EVP_DigestInit(*ctx, EVP_sha512()))
| 	return (ARCHIVE_FAILED);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   EVP_DigestUpdate(*ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
|   if (*ctx) {
|     EVP_DigestFinal(*ctx, md, NULL);
|     EVP_MD_CTX_free(*ctx);
|     *ctx = NULL;
|   }
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA512_WIN)
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
| #if defined(HAVE_BCRYPT_H) && _WIN32_WINNT >= _WIN32_WINNT_VISTA
|   return (win_crypto_init(ctx, BCRYPT_SHA512_ALGORITHM));
| #else
|   return (win_crypto_init(ctx, PROV_RSA_AES, CALG_SHA_512));
| #endif
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   return (win_crypto_Update(ctx, indata, insize));
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
|   return (win_crypto_Final(md, 64, ctx));
| }
| 
| #else
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
| 	(void)ctx; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)indata; /* UNUSED */
| 	(void)insize; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)md; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| #endif
| 
| /* NOTE: Message Digest functions are set based on availability and by the
|  * following order of preference.
|  * 1. libc
|  * 2. libc2
|  * 3. libc3
|  * 4. libSystem
|  * 5. Nettle
|  * 6. OpenSSL
|  * 7. libmd
|  * 8. Windows API
|  */
| const struct archive_digest __archive_digest =
| {
| /* MD5 */
|   &__archive_md5init,
|   &__archive_md5update,
|   &__archive_md5final,
| 
| /* RIPEMD160 */
|   &__archive_ripemd160init,
|   &__archive_ripemd160update,
|   &__archive_ripemd160final,
| 
| /* SHA1 */
|   &__archive_sha1init,
|   &__archive_sha1update,
|   &__archive_sha1final,
| 
| /* SHA256 */
|   &__archive_sha256init,
|   &__archive_sha256update,
|   &__archive_sha256final,
| 
| /* SHA384 */
|   &__archive_sha384init,
|   &__archive_sha384update,
|   &__archive_sha384final,
| 
| /* SHA512 */
|   &__archive_sha512init,
|   &__archive_sha512update,
|   &__archive_sha512final
| };
| 
| int
| main(int argc, char **argv)
| {
|   archive_sha1_ctx ctx;
|   archive_sha1_init(&ctx);
|   archive_sha1_update(&ctx, *argv, argc);
|   archive_sha1_final(&ctx, NULL);
|   return 0;
| }
| 
configure:17893: result: no
configure:17907: checking support for ARCHIVE_CRYPTO_SHA256_LIBC
configure:17929: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -o conftest -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2  -I. -I. -I./libarchive  conftest.c -lzstd -llz4 -lz  -L/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/lib -lxml2  >&5
In file included from conftest.c:255:
./libarchive/archive_digest_private.h:81:10: fatal error: sha2.h: No such file or directory
   81 | #include <sha2.h>
      |          ^~~~~~~~
compilation terminated.
configure:17929: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "libarchive"
| #define PACKAGE_TARNAME "libarchive"
| #define PACKAGE_VERSION "3.7.2"
| #define PACKAGE_STRING "libarchive 3.7.2"
| #define PACKAGE_BUGREPORT "libarchive-discuss@googlegroups.com"
| #define PACKAGE_URL ""
| #define PACKAGE "libarchive"
| #define VERSION "3.7.2"
| #define __LIBARCHIVE_CONFIG_H_INCLUDED 1
| #define LIBARCHIVE_VERSION_STRING "3.7.2"
| #define LIBARCHIVE_VERSION_NUMBER "3007002"
| #define BSDCPIO_VERSION_STRING "3.7.2"
| #define BSDTAR_VERSION_STRING "3.7.2"
| #define BSDCAT_VERSION_STRING "3.7.2"
| #define BSDUNZIP_VERSION_STRING "3.7.2"
| #define HAVE_STDIO_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_SYS_TIME_H 1
| #define STDC_HEADERS 1
| #define _ALL_SOURCE 1
| #define _DARWIN_C_SOURCE 1
| #define _GNU_SOURCE 1
| #define _HPUX_ALT_XOPEN_SOCKET_API 1
| #define _NETBSD_SOURCE 1
| #define _OPENBSD_SOURCE 1
| #define _POSIX_PTHREAD_SEMANTICS 1
| #define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1
| #define __STDC_WANT_IEC_60559_BFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_DFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1
| #define __STDC_WANT_IEC_60559_TYPES_EXT__ 1
| #define __STDC_WANT_LIB_EXT2__ 1
| #define __STDC_WANT_MATH_SPEC_FUNCS__ 1
| #define _TANDEM_SOURCE 1
| #define __EXTENSIONS__ 1
| #define HAVE_DLFCN_H 1
| #define LT_OBJDIR ".libs/"
| #define HAVE_DIRENT_H 1
| #define HAVE_SYS_WAIT_H 1
| #define HAVE_CTYPE_H 1
| #define HAVE_ERRNO_H 1
| #define HAVE_FCNTL_H 1
| #define HAVE_FNMATCH_H 1
| #define HAVE_GRP_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_LANGINFO_H 1
| #define HAVE_LIMITS_H 1
| #define HAVE_LINUX_FIEMAP_H 1
| #define HAVE_LINUX_FS_H 1
| #define HAVE_LINUX_MAGIC_H 1
| #define HAVE_LINUX_TYPES_H 1
| #define HAVE_WORKING_FS_IOC_GETFLAGS 1
| #define HAVE_LOCALE_H 1
| #define HAVE_PATHS_H 1
| #define HAVE_POLL_H 1
| #define HAVE_PTHREAD_H 1
| #define HAVE_PWD_H 1
| #define HAVE_SIGNAL_H 1
| #define HAVE_SPAWN_H 1
| #define HAVE_STDARG_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_SYS_CDEFS_H 1
| #define HAVE_SYS_IOCTL_H 1
| #define HAVE_SYS_MOUNT_H 1
| #define HAVE_SYS_QUEUE_H 1
| #define HAVE_SYS_PARAM_H 1
| #define HAVE_SYS_POLL_H 1
| #define HAVE_SYS_SELECT_H 1
| #define HAVE_SYS_STATFS_H 1
| #define HAVE_SYS_STATVFS_H 1
| #define HAVE_SYS_SYSMACROS_H 1
| #define HAVE_SYS_TIME_H 1
| #define HAVE_SYS_UTSNAME_H 1
| #define HAVE_SYS_VFS_H 1
| #define HAVE_SYS_XATTR_H 1
| #define HAVE_TIME_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_UTIME_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_WCTYPE_H 1
| #define HAVE_ZLIB_H 1
| #define HAVE_LIBZ 1
| #define HAVE_ICONV 1
| #define ICONV_CONST 
| #define HAVE_ICONV_H 1
| #define HAVE_LZ4_H 1
| #define HAVE_LZ4HC_H 1
| #define HAVE_LIBLZ4 1
| #define HAVE_ZSTD_H 1
| #define HAVE_LIBZSTD 1
| #define HAVE_LIBZSTD_COMPRESSOR 1
| #define HAVE_LIBXML_XMLREADER_H 1
| #define HAVE_LIBXML_XMLWRITER_H 1
| #define HAVE_REGEX_H 1
| #define HAVE_STRUCT_TM_TM_GMTOFF 1
| #define HAVE_STRUCT_STAT_ST_MTIM_TV_NSEC 1
| #define HAVE_STRUCT_STAT_ST_BLKSIZE 1
| #define HAVE_UINTMAX_T 1
| #define HAVE_UNSIGNED_LONG_LONG 1
| #define HAVE_UNSIGNED_LONG_LONG_INT 1
| #define HAVE_LONG_LONG_INT 1
| #define HAVE_INTMAX_T 1
| #define HAVE_UINTMAX_T 1
| #define HAVE_DECL_SIZE_MAX 1
| #define HAVE_DECL_INT32_MAX 1
| #define HAVE_DECL_INT32_MIN 1
| #define HAVE_DECL_INT64_MAX 1
| #define HAVE_DECL_INT64_MIN 1
| #define HAVE_DECL_UINT64_MAX 1
| #define HAVE_DECL_UINT32_MAX 1
| #define HAVE_DECL_INTMAX_MAX 1
| #define HAVE_DECL_INTMAX_MIN 1
| #define HAVE_DECL_UINTMAX_MAX 1
| #define HAVE_DECL_SSIZE_MAX 1
| #define HAVE_EILSEQ 1
| #define HAVE_WCHAR_T 1
| #define SIZEOF_WCHAR_T 4
| #define SIZEOF_INT 4
| #define SIZEOF_LONG 4
| #define MAJOR_IN_SYSMACROS 1
| #define HAVE_FSEEKO 1
| #define LSTAT_FOLLOWS_SLASHED_SYMLINK 1
| #define HAVE_LSTAT_EMPTY_STRING_BUG 1
| #define HAVE_STAT_EMPTY_STRING_BUG 1
| #define HAVE_DECL_STRERROR_R 1
| #define HAVE_STRERROR_R 1
| #define STRERROR_R_CHAR_P 1
| #define HAVE_STRFTIME 1
| #define HAVE_VPRINTF 1
| #define HAVE_ARC4RANDOM_BUF 1
| #define HAVE_CHOWN 1
| #define HAVE_CHROOT 1
| #define HAVE_CTIME_R 1
| #define HAVE_FCHDIR 1
| #define HAVE_FCHMOD 1
| #define HAVE_FCHOWN 1
| #define HAVE_FCNTL 1
| #define HAVE_FDOPENDIR 1
| #define HAVE_FNMATCH 1
| #define HAVE_FORK 1
| #define HAVE_FSTAT 1
| #define HAVE_FSTATAT 1
| #define HAVE_FSTATFS 1
| #define HAVE_FSTATVFS 1
| #define HAVE_FTRUNCATE 1
| #define HAVE_FUTIMENS 1
| #define HAVE_FUTIMES 1
| #define HAVE_FUTIMESAT 1
| #define HAVE_GETEUID 1
| #define HAVE_GETLINE 1
| #define HAVE_GETPID 1
| #define HAVE_GETGRGID_R 1
| #define HAVE_GETGRNAM_R 1
| #define HAVE_GETPWNAM_R 1
| #define HAVE_GETPWUID_R 1
| #define HAVE_GMTIME_R 1
| #define HAVE_LCHMOD 1
| #define HAVE_LCHOWN 1
| #define HAVE_LINK 1
| #define HAVE_LINKAT 1
| #define HAVE_LOCALTIME_R 1
| #define HAVE_LSTAT 1
| #define HAVE_LUTIMES 1
| #define HAVE_MBRTOWC 1
| #define HAVE_MEMMOVE 1
| #define HAVE_MEMSET 1
| #define HAVE_MKDIR 1
| #define HAVE_MKFIFO 1
| #define HAVE_MKNOD 1
| #define HAVE_MKSTEMP 1
| #define HAVE_NL_LANGINFO 1
| #define HAVE_OPENAT 1
| #define HAVE_PIPE 1
| #define HAVE_POLL 1
| #define HAVE_POSIX_SPAWNP 1
| #define HAVE_READLINK 1
| #define HAVE_READLINKAT 1
| #define HAVE_SELECT 1
| #define HAVE_SETENV 1
| #define HAVE_SETLOCALE 1
| #define HAVE_SIGACTION 1
| #define HAVE_STATFS 1
| #define HAVE_STATVFS 1
| #define HAVE_STRCHR 1
| #define HAVE_STRDUP 1
| #define HAVE_STRERROR 1
| #define HAVE_STRNLEN 1
| #define HAVE_STRRCHR 1
| #define HAVE_SYMLINK 1
| #define HAVE_TIMEGM 1
| #define HAVE_TZSET 1
| #define HAVE_UNLINKAT 1
| #define HAVE_UNSETENV 1
| #define HAVE_UTIME 1
| #define HAVE_UTIMENSAT 1
| #define HAVE_UTIMES 1
| #define HAVE_VFORK 1
| #define HAVE_WCRTOMB 1
| #define HAVE_WCSCMP 1
| #define HAVE_WCSCPY 1
| #define HAVE_WCSLEN 1
| #define HAVE_WCTOMB 1
| #define HAVE_WMEMCMP 1
| #define HAVE_WMEMCPY 1
| #define HAVE_WMEMMOVE 1
| #define HAVE_READDIR_R 1
| #define HAVE_DIRFD 1
| /* end confdefs.h.  */
| 
| #define ARCHIVE_SHA256_COMPILE_TEST
| #define ARCHIVE_CRYPTO_SHA256_LIBC
| #define PLATFORM_CONFIG_H "check_crypto_md.h"
| 
| /*-
| * Copyright (c) 2003-2007 Tim Kientzle
| * Copyright (c) 2011 Andres Mejia
| * Copyright (c) 2011 Michihiro NAKAJIMA
| * All rights reserved.
| *
| * Redistribution and use in source and binary forms, with or without
| * modification, are permitted provided that the following conditions
| * are met:
| * 1. Redistributions of source code must retain the above copyright
| *    notice, this list of conditions and the following disclaimer.
| * 2. Redistributions in binary form must reproduce the above copyright
| *    notice, this list of conditions and the following disclaimer in the
| *    documentation and/or other materials provided with the distribution.
| *
| * THIS SOFTWARE IS PROVIDED BY THE AUTHOR(S) ``AS IS'' AND ANY EXPRESS OR
| * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
| * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
| * IN NO EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY DIRECT, INDIRECT,
| * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
| * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
| * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
| * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
| * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
| * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
| */
| 
| #include "archive_platform.h"
| 
| #include "archive.h"
| #include "archive_digest_private.h"
| 
| /* In particular, force the configure probe to break if it tries
|  * to test a combination of OpenSSL and libmd. */
| #if defined(ARCHIVE_CRYPTO_OPENSSL) && defined(ARCHIVE_CRYPTO_LIBMD)
| #error Cannot use both OpenSSL and libmd.
| #endif
| 
| /* Common in other bcrypt implementations, but missing from VS2008. */
| #ifndef BCRYPT_SUCCESS
| #define BCRYPT_SUCCESS(r) ((NTSTATUS)(r) == STATUS_SUCCESS)
| #endif
| 
| /*
|  * Message digest functions for Windows platform.
|  */
| #if defined(ARCHIVE_CRYPTO_MD5_WIN)    ||\
| 	defined(ARCHIVE_CRYPTO_SHA1_WIN)   ||\
| 	defined(ARCHIVE_CRYPTO_SHA256_WIN) ||\
| 	defined(ARCHIVE_CRYPTO_SHA384_WIN) ||\
| 	defined(ARCHIVE_CRYPTO_SHA512_WIN)
| 
| /*
|  * Initialize a Message digest.
|  */
| #if defined(HAVE_BCRYPT_H) && _WIN32_WINNT >= _WIN32_WINNT_VISTA
| static int
| win_crypto_init(Digest_CTX *ctx, const WCHAR *algo)
| {
| 	NTSTATUS status;
| 	ctx->valid = 0;
| 
| 	status = BCryptOpenAlgorithmProvider(&ctx->hAlg, algo, NULL, 0);
| 	if (!BCRYPT_SUCCESS(status))
| 		return (ARCHIVE_FAILED);
| 	status = BCryptCreateHash(ctx->hAlg, &ctx->hHash, NULL, 0, NULL, 0, 0);
| 	if (!BCRYPT_SUCCESS(status)) {
| 		BCryptCloseAlgorithmProvider(ctx->hAlg, 0);
| 		return (ARCHIVE_FAILED);
| 	}
| 
| 	ctx->valid = 1;
| 	return (ARCHIVE_OK);
| }
| #else
| static int
| win_crypto_init(Digest_CTX *ctx, DWORD prov, ALG_ID algId)
| {
| 
| 	ctx->valid = 0;
| 	if (!CryptAcquireContext(&ctx->cryptProv, NULL, NULL,
| 	    prov, CRYPT_VERIFYCONTEXT)) {
| 		if (GetLastError() != (DWORD)NTE_BAD_KEYSET)
| 			return (ARCHIVE_FAILED);
| 		if (!CryptAcquireContext(&ctx->cryptProv, NULL, NULL,
| 		    prov, CRYPT_NEWKEYSET))
| 			return (ARCHIVE_FAILED);
| 	}
| 
| 	if (!CryptCreateHash(ctx->cryptProv, algId, 0, 0, &ctx->hash)) {
| 		CryptReleaseContext(ctx->cryptProv, 0);
| 		return (ARCHIVE_FAILED);
| 	}
| 
| 	ctx->valid = 1;
| 	return (ARCHIVE_OK);
| }
| #endif
| 
| /*
|  * Update a Message digest.
|  */
| static int
| win_crypto_Update(Digest_CTX *ctx, const unsigned char *buf, size_t len)
| {
| 
| 	if (!ctx->valid)
| 		return (ARCHIVE_FAILED);
| 
| #if defined(HAVE_BCRYPT_H) && _WIN32_WINNT >= _WIN32_WINNT_VISTA
| 	BCryptHashData(ctx->hHash,
| 		      (PUCHAR)(uintptr_t)buf,
| 		      (ULONG)len, 0);
| #else
| 	CryptHashData(ctx->hash,
| 		      (unsigned char *)(uintptr_t)buf,
| 		      (DWORD)len, 0);
| #endif
| 	return (ARCHIVE_OK);
| }
| 
| static int
| win_crypto_Final(unsigned char *buf, size_t bufsize, Digest_CTX *ctx)
| {
| #if !(defined(HAVE_BCRYPT_H) && _WIN32_WINNT >= _WIN32_WINNT_VISTA)
| 	DWORD siglen = (DWORD)bufsize;
| #endif
| 
| 	if (!ctx->valid)
| 		return (ARCHIVE_FAILED);
| 
| #if defined(HAVE_BCRYPT_H) && _WIN32_WINNT >= _WIN32_WINNT_VISTA
| 	BCryptFinishHash(ctx->hHash, buf, (ULONG)bufsize, 0);
| 	BCryptDestroyHash(ctx->hHash);
| 	BCryptCloseAlgorithmProvider(ctx->hAlg, 0);
| #else
| 	CryptGetHashParam(ctx->hash, HP_HASHVAL, buf, &siglen, 0);
| 	CryptDestroyHash(ctx->hash);
| 	CryptReleaseContext(ctx->cryptProv, 0);
| #endif
| 	ctx->valid = 0;
| 	return (ARCHIVE_OK);
| }
| 
| #endif /* defined(ARCHIVE_CRYPTO_*_WIN) */
| 
| 
| /* MD5 implementations */
| #if defined(ARCHIVE_CRYPTO_MD5_LIBC)
| 
| static int
| __archive_md5init(archive_md5_ctx *ctx)
| {
|   MD5Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5update(archive_md5_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   MD5Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5final(archive_md5_ctx *ctx, void *md)
| {
|   MD5Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_MD5_LIBMD)
| 
| static int
| __archive_md5init(archive_md5_ctx *ctx)
| {
|   MD5Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5update(archive_md5_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   MD5Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5final(archive_md5_ctx *ctx, void *md)
| {
|   MD5Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_MD5_LIBSYSTEM)
| 
| static int
| __archive_md5init(archive_md5_ctx *ctx)
| {
|   CC_MD5_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5update(archive_md5_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   CC_MD5_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5final(archive_md5_ctx *ctx, void *md)
| {
|   CC_MD5_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_MD5_MBEDTLS)
| 
| static int
| __archive_md5init(archive_md5_ctx *ctx)
| {
|   mbedtls_md5_init(ctx);
|   if (mbedtls_md5_starts_ret(ctx) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_md5update(archive_md5_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   if (mbedtls_md5_update_ret(ctx, indata, insize) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_md5final(archive_md5_ctx *ctx, void *md)
| {
|   if (mbedtls_md5_finish_ret(ctx, md) == 0) {
|     mbedtls_md5_free(ctx);
|     return (ARCHIVE_OK);
|   } else {
|     mbedtls_md5_free(ctx);
|     return (ARCHIVE_FATAL);
|   }
| }
| 
| #elif defined(ARCHIVE_CRYPTO_MD5_NETTLE)
| 
| static int
| __archive_md5init(archive_md5_ctx *ctx)
| {
|   md5_init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5update(archive_md5_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   md5_update(ctx, insize, indata);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5final(archive_md5_ctx *ctx, void *md)
| {
|   md5_digest(ctx, MD5_DIGEST_SIZE, md);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_MD5_OPENSSL)
| 
| static int
| __archive_md5init(archive_md5_ctx *ctx)
| {
|   if ((*ctx = EVP_MD_CTX_new()) == NULL)
| 	return (ARCHIVE_FAILED);
|   if (!EVP_DigestInit(*ctx, EVP_md5()))
| 	return (ARCHIVE_FAILED);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5update(archive_md5_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   EVP_DigestUpdate(*ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5final(archive_md5_ctx *ctx, void *md)
| {
|   /* HACK: archive_write_set_format_xar.c is finalizing empty contexts, so
|    * this is meant to cope with that. Real fix is probably to fix
|    * archive_write_set_format_xar.c
|    */
|   if (*ctx) {
|     EVP_DigestFinal(*ctx, md, NULL);
|     EVP_MD_CTX_free(*ctx);
|     *ctx = NULL;
|   }
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_MD5_WIN)
| 
| static int
| __archive_md5init(archive_md5_ctx *ctx)
| {
| #if defined(HAVE_BCRYPT_H) && _WIN32_WINNT >= _WIN32_WINNT_VISTA
|   return (win_crypto_init(ctx, BCRYPT_MD5_ALGORITHM));
| #else
|   return (win_crypto_init(ctx, PROV_RSA_FULL, CALG_MD5));
| #endif
| }
| 
| static int
| __archive_md5update(archive_md5_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   return (win_crypto_Update(ctx, indata, insize));
| }
| 
| static int
| __archive_md5final(archive_md5_ctx *ctx, void *md)
| {
|   return (win_crypto_Final(md, 16, ctx));
| }
| 
| #else
| 
| static int
| __archive_md5init(archive_md5_ctx *ctx)
| {
| 	(void)ctx; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_md5update(archive_md5_ctx *ctx, const void *indata,
|     size_t insize)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)indata; /* UNUSED */
| 	(void)insize; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_md5final(archive_md5_ctx *ctx, void *md)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)md; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| #endif
| 
| /* RIPEMD160 implementations */
| #if defined(ARCHIVE_CRYPTO_RMD160_LIBC)
| 
| static int
| __archive_ripemd160init(archive_rmd160_ctx *ctx)
| {
|   RMD160Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   RMD160Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md)
| {
|   RMD160Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_RMD160_LIBMD)
| 
| static int
| __archive_ripemd160init(archive_rmd160_ctx *ctx)
| {
|   RIPEMD160_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   RIPEMD160_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md)
| {
|   RIPEMD160_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_RMD160_MBEDTLS)
| 
| static int
| __archive_ripemd160init(archive_rmd160_ctx *ctx)
| {
|   mbedtls_ripemd160_init(ctx);
|   if (mbedtls_ripemd160_starts_ret(ctx) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   if (mbedtls_ripemd160_update_ret(ctx, indata, insize) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md)
| {
|   if (mbedtls_ripemd160_finish_ret(ctx, md) == 0) {
|     mbedtls_ripemd160_free(ctx);
|     return (ARCHIVE_OK);
|   } else {
|     mbedtls_ripemd160_free(ctx);
|     return (ARCHIVE_FATAL);
|   }
| }
| 
| #elif defined(ARCHIVE_CRYPTO_RMD160_NETTLE)
| 
| static int
| __archive_ripemd160init(archive_rmd160_ctx *ctx)
| {
|   ripemd160_init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   ripemd160_update(ctx, insize, indata);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md)
| {
|   ripemd160_digest(ctx, RIPEMD160_DIGEST_SIZE, md);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_RMD160_OPENSSL)
| 
| static int
| __archive_ripemd160init(archive_rmd160_ctx *ctx)
| {
|   if ((*ctx = EVP_MD_CTX_new()) == NULL)
| 	return (ARCHIVE_FAILED);
|   if (!EVP_DigestInit(*ctx, EVP_ripemd160()))
| 	return (ARCHIVE_FAILED);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   EVP_DigestUpdate(*ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md)
| {
|   if (*ctx) {
|     EVP_DigestFinal(*ctx, md, NULL);
|     EVP_MD_CTX_free(*ctx);
|     *ctx = NULL;
|   }
|   return (ARCHIVE_OK);
| }
| 
| #else
| 
| static int
| __archive_ripemd160init(archive_rmd160_ctx *ctx)
| {
| 	(void)ctx; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata,
|     size_t insize)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)indata; /* UNUSED */
| 	(void)insize; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)md; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| #endif
| 
| /* SHA1 implementations */
| #if defined(ARCHIVE_CRYPTO_SHA1_LIBC)
| 
| static int
| __archive_sha1init(archive_sha1_ctx *ctx)
| {
|   SHA1Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1update(archive_sha1_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA1Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1final(archive_sha1_ctx *ctx, void *md)
| {
|   SHA1Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA1_LIBMD)
| 
| static int
| __archive_sha1init(archive_sha1_ctx *ctx)
| {
|   SHA1_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1update(archive_sha1_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA1_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1final(archive_sha1_ctx *ctx, void *md)
| {
|   SHA1_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA1_LIBSYSTEM)
| 
| static int
| __archive_sha1init(archive_sha1_ctx *ctx)
| {
|   CC_SHA1_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1update(archive_sha1_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   CC_SHA1_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1final(archive_sha1_ctx *ctx, void *md)
| {
|   CC_SHA1_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA1_MBEDTLS)
| 
| static int
| __archive_sha1init(archive_sha1_ctx *ctx)
| {
|   mbedtls_sha1_init(ctx);
|   if (mbedtls_sha1_starts_ret(ctx) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_sha1update(archive_sha1_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   if (mbedtls_sha1_update_ret(ctx, indata, insize) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_sha1final(archive_sha1_ctx *ctx, void *md)
| {
|   if (mbedtls_sha1_finish_ret(ctx, md) == 0) {
|     mbedtls_sha1_free(ctx);
|     return (ARCHIVE_OK);
|   } else {
|     mbedtls_sha1_free(ctx);
|     return (ARCHIVE_FATAL);
|   }
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA1_NETTLE)
| 
| static int
| __archive_sha1init(archive_sha1_ctx *ctx)
| {
|   sha1_init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1update(archive_sha1_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   sha1_update(ctx, insize, indata);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1final(archive_sha1_ctx *ctx, void *md)
| {
|   sha1_digest(ctx, SHA1_DIGEST_SIZE, md);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA1_OPENSSL)
| 
| static int
| __archive_sha1init(archive_sha1_ctx *ctx)
| {
|   if ((*ctx = EVP_MD_CTX_new()) == NULL)
| 	return (ARCHIVE_FAILED);
|   if (!EVP_DigestInit(*ctx, EVP_sha1()))
| 	return (ARCHIVE_FAILED);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1update(archive_sha1_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   EVP_DigestUpdate(*ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1final(archive_sha1_ctx *ctx, void *md)
| {
|   /* HACK: archive_write_set_format_xar.c is finalizing empty contexts, so
|    * this is meant to cope with that. Real fix is probably to fix
|    * archive_write_set_format_xar.c
|    */
|   if (*ctx) {
|     EVP_DigestFinal(*ctx, md, NULL);
|     EVP_MD_CTX_free(*ctx);
|     *ctx = NULL;
|   }
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA1_WIN)
| 
| static int
| __archive_sha1init(archive_sha1_ctx *ctx)
| {
| #if defined(HAVE_BCRYPT_H) && _WIN32_WINNT >= _WIN32_WINNT_VISTA
|   return (win_crypto_init(ctx, BCRYPT_SHA1_ALGORITHM));
| #else
|   return (win_crypto_init(ctx, PROV_RSA_FULL, CALG_SHA1));
| #endif
| }
| 
| static int
| __archive_sha1update(archive_sha1_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   return (win_crypto_Update(ctx, indata, insize));
| }
| 
| static int
| __archive_sha1final(archive_sha1_ctx *ctx, void *md)
| {
|   return (win_crypto_Final(md, 20, ctx));
| }
| 
| #else
| 
| static int
| __archive_sha1init(archive_sha1_ctx *ctx)
| {
| 	(void)ctx; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_sha1update(archive_sha1_ctx *ctx, const void *indata,
|     size_t insize)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)indata; /* UNUSED */
| 	(void)insize; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_sha1final(archive_sha1_ctx *ctx, void *md)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)md; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| #endif
| 
| /* SHA256 implementations */
| #if defined(ARCHIVE_CRYPTO_SHA256_LIBC)
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
|   SHA256_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA256_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
|   SHA256_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA256_LIBC2)
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
|   SHA256Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA256Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
|   SHA256Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA256_LIBC3)
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
|   SHA256Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA256Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
|   SHA256Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA256_LIBMD)
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
|   SHA256_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA256_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
|   SHA256_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA256_LIBSYSTEM)
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
|   CC_SHA256_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   CC_SHA256_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
|   CC_SHA256_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA256_MBEDTLS)
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
|   mbedtls_sha256_init(ctx);
|   if (mbedtls_sha256_starts_ret(ctx, 0) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   if (mbedtls_sha256_update_ret(ctx, indata, insize) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
|   if (mbedtls_sha256_finish_ret(ctx, md) == 0) {
|     mbedtls_sha256_free(ctx);
|     return (ARCHIVE_OK);
|   } else {
|     mbedtls_sha256_free(ctx);
|     return (ARCHIVE_FATAL);
|   }
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA256_NETTLE)
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
|   sha256_init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   sha256_update(ctx, insize, indata);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
|   sha256_digest(ctx, SHA256_DIGEST_SIZE, md);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA256_OPENSSL)
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
|   if ((*ctx = EVP_MD_CTX_new()) == NULL)
| 	return (ARCHIVE_FAILED);
|   if (!EVP_DigestInit(*ctx, EVP_sha256()))
| 	return (ARCHIVE_FAILED);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   EVP_DigestUpdate(*ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
|   if (*ctx) {
|     EVP_DigestFinal(*ctx, md, NULL);
|     EVP_MD_CTX_free(*ctx);
|     *ctx = NULL;
|   }
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA256_WIN)
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
| #if defined(HAVE_BCRYPT_H) && _WIN32_WINNT >= _WIN32_WINNT_VISTA
|   return (win_crypto_init(ctx, BCRYPT_SHA256_ALGORITHM));
| #else
|   return (win_crypto_init(ctx, PROV_RSA_AES, CALG_SHA_256));
| #endif
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   return (win_crypto_Update(ctx, indata, insize));
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
|   return (win_crypto_Final(md, 32, ctx));
| }
| 
| #else
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
| 	(void)ctx; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)indata; /* UNUSED */
| 	(void)insize; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)md; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| #endif
| 
| /* SHA384 implementations */
| #if defined(ARCHIVE_CRYPTO_SHA384_LIBC)
| 
| static int
| __archive_sha384init(archive_sha384_ctx *ctx)
| {
|   SHA384_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384update(archive_sha384_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA384_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384final(archive_sha384_ctx *ctx, void *md)
| {
|   SHA384_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA384_LIBC2)
| 
| static int
| __archive_sha384init(archive_sha384_ctx *ctx)
| {
|   SHA384Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384update(archive_sha384_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA384Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384final(archive_sha384_ctx *ctx, void *md)
| {
|   SHA384Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA384_LIBC3)
| 
| static int
| __archive_sha384init(archive_sha384_ctx *ctx)
| {
|   SHA384Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384update(archive_sha384_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA384Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384final(archive_sha384_ctx *ctx, void *md)
| {
|   SHA384Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA384_LIBSYSTEM)
| 
| static int
| __archive_sha384init(archive_sha384_ctx *ctx)
| {
|   CC_SHA384_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384update(archive_sha384_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   CC_SHA384_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384final(archive_sha384_ctx *ctx, void *md)
| {
|   CC_SHA384_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA384_MBEDTLS)
| 
| static int
| __archive_sha384init(archive_sha384_ctx *ctx)
| {
|   mbedtls_sha512_init(ctx);
|   if (mbedtls_sha512_starts_ret(ctx, 1) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_sha384update(archive_sha384_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   if (mbedtls_sha512_update_ret(ctx, indata, insize) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_sha384final(archive_sha384_ctx *ctx, void *md)
| {
|   if (mbedtls_sha512_finish_ret(ctx, md) == 0) {
|     mbedtls_sha512_free(ctx);
|     return (ARCHIVE_OK);
|   } else {
|     mbedtls_sha512_free(ctx);
|     return (ARCHIVE_FATAL);
|   }
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA384_NETTLE)
| 
| static int
| __archive_sha384init(archive_sha384_ctx *ctx)
| {
|   sha384_init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384update(archive_sha384_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   sha384_update(ctx, insize, indata);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384final(archive_sha384_ctx *ctx, void *md)
| {
|   sha384_digest(ctx, SHA384_DIGEST_SIZE, md);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA384_OPENSSL)
| 
| static int
| __archive_sha384init(archive_sha384_ctx *ctx)
| {
|   if ((*ctx = EVP_MD_CTX_new()) == NULL)
| 	return (ARCHIVE_FAILED);
|   if (!EVP_DigestInit(*ctx, EVP_sha384()))
| 	return (ARCHIVE_FAILED);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384update(archive_sha384_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   EVP_DigestUpdate(*ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384final(archive_sha384_ctx *ctx, void *md)
| {
|   if (*ctx) {
|     EVP_DigestFinal(*ctx, md, NULL);
|     EVP_MD_CTX_free(*ctx);
|     *ctx = NULL;
|   }
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA384_WIN)
| 
| static int
| __archive_sha384init(archive_sha384_ctx *ctx)
| {
| #if defined(HAVE_BCRYPT_H) && _WIN32_WINNT >= _WIN32_WINNT_VISTA
|   return (win_crypto_init(ctx, BCRYPT_SHA384_ALGORITHM));
| #else
|   return (win_crypto_init(ctx, PROV_RSA_AES, CALG_SHA_384));
| #endif
| }
| 
| static int
| __archive_sha384update(archive_sha384_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   return (win_crypto_Update(ctx, indata, insize));
| }
| 
| static int
| __archive_sha384final(archive_sha384_ctx *ctx, void *md)
| {
|   return (win_crypto_Final(md, 48, ctx));
| }
| 
| #else
| 
| static int
| __archive_sha384init(archive_sha384_ctx *ctx)
| {
| 	(void)ctx; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_sha384update(archive_sha384_ctx *ctx, const void *indata,
|     size_t insize)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)indata; /* UNUSED */
| 	(void)insize; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_sha384final(archive_sha384_ctx *ctx, void *md)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)md; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| #endif
| 
| /* SHA512 implementations */
| #if defined(ARCHIVE_CRYPTO_SHA512_LIBC)
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
|   SHA512_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA512_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
|   SHA512_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA512_LIBC2)
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
|   SHA512Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA512Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
|   SHA512Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA512_LIBC3)
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
|   SHA512Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA512Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
|   SHA512Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA512_LIBMD)
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
|   SHA512_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA512_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
|   SHA512_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA512_LIBSYSTEM)
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
|   CC_SHA512_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   CC_SHA512_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
|   CC_SHA512_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA512_MBEDTLS)
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
|   mbedtls_sha512_init(ctx);
|   if (mbedtls_sha512_starts_ret(ctx, 0) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   if (mbedtls_sha512_update_ret(ctx, indata, insize) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
|   if (mbedtls_sha512_finish_ret(ctx, md) == 0) {
|     mbedtls_sha512_free(ctx);
|     return (ARCHIVE_OK);
|   } else {
|     mbedtls_sha512_free(ctx);
|     return (ARCHIVE_FATAL);
|   }
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA512_NETTLE)
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
|   sha512_init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   sha512_update(ctx, insize, indata);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
|   sha512_digest(ctx, SHA512_DIGEST_SIZE, md);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA512_OPENSSL)
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
|   if ((*ctx = EVP_MD_CTX_new()) == NULL)
| 	return (ARCHIVE_FAILED);
|   if (!EVP_DigestInit(*ctx, EVP_sha512()))
| 	return (ARCHIVE_FAILED);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   EVP_DigestUpdate(*ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
|   if (*ctx) {
|     EVP_DigestFinal(*ctx, md, NULL);
|     EVP_MD_CTX_free(*ctx);
|     *ctx = NULL;
|   }
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA512_WIN)
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
| #if defined(HAVE_BCRYPT_H) && _WIN32_WINNT >= _WIN32_WINNT_VISTA
|   return (win_crypto_init(ctx, BCRYPT_SHA512_ALGORITHM));
| #else
|   return (win_crypto_init(ctx, PROV_RSA_AES, CALG_SHA_512));
| #endif
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   return (win_crypto_Update(ctx, indata, insize));
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
|   return (win_crypto_Final(md, 64, ctx));
| }
| 
| #else
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
| 	(void)ctx; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)indata; /* UNUSED */
| 	(void)insize; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)md; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| #endif
| 
| /* NOTE: Message Digest functions are set based on availability and by the
|  * following order of preference.
|  * 1. libc
|  * 2. libc2
|  * 3. libc3
|  * 4. libSystem
|  * 5. Nettle
|  * 6. OpenSSL
|  * 7. libmd
|  * 8. Windows API
|  */
| const struct archive_digest __archive_digest =
| {
| /* MD5 */
|   &__archive_md5init,
|   &__archive_md5update,
|   &__archive_md5final,
| 
| /* RIPEMD160 */
|   &__archive_ripemd160init,
|   &__archive_ripemd160update,
|   &__archive_ripemd160final,
| 
| /* SHA1 */
|   &__archive_sha1init,
|   &__archive_sha1update,
|   &__archive_sha1final,
| 
| /* SHA256 */
|   &__archive_sha256init,
|   &__archive_sha256update,
|   &__archive_sha256final,
| 
| /* SHA384 */
|   &__archive_sha384init,
|   &__archive_sha384update,
|   &__archive_sha384final,
| 
| /* SHA512 */
|   &__archive_sha512init,
|   &__archive_sha512update,
|   &__archive_sha512final
| };
| 
| int
| main(int argc, char **argv)
| {
|   archive_sha256_ctx ctx;
|   archive_sha256_init(&ctx);
|   archive_sha256_update(&ctx, *argv, argc);
|   archive_sha256_final(&ctx, NULL);
|   return 0;
| }
| 
configure:17940: result: no
configure:17954: checking support for ARCHIVE_CRYPTO_SHA256_LIBC2
configure:17976: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -o conftest -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2  -I. -I. -I./libarchive  conftest.c -lzstd -llz4 -lz  -L/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/lib -lxml2  >&5
In file included from conftest.c:255:
./libarchive/archive_digest_private.h:81:10: fatal error: sha2.h: No such file or directory
   81 | #include <sha2.h>
      |          ^~~~~~~~
compilation terminated.
configure:17976: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "libarchive"
| #define PACKAGE_TARNAME "libarchive"
| #define PACKAGE_VERSION "3.7.2"
| #define PACKAGE_STRING "libarchive 3.7.2"
| #define PACKAGE_BUGREPORT "libarchive-discuss@googlegroups.com"
| #define PACKAGE_URL ""
| #define PACKAGE "libarchive"
| #define VERSION "3.7.2"
| #define __LIBARCHIVE_CONFIG_H_INCLUDED 1
| #define LIBARCHIVE_VERSION_STRING "3.7.2"
| #define LIBARCHIVE_VERSION_NUMBER "3007002"
| #define BSDCPIO_VERSION_STRING "3.7.2"
| #define BSDTAR_VERSION_STRING "3.7.2"
| #define BSDCAT_VERSION_STRING "3.7.2"
| #define BSDUNZIP_VERSION_STRING "3.7.2"
| #define HAVE_STDIO_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_SYS_TIME_H 1
| #define STDC_HEADERS 1
| #define _ALL_SOURCE 1
| #define _DARWIN_C_SOURCE 1
| #define _GNU_SOURCE 1
| #define _HPUX_ALT_XOPEN_SOCKET_API 1
| #define _NETBSD_SOURCE 1
| #define _OPENBSD_SOURCE 1
| #define _POSIX_PTHREAD_SEMANTICS 1
| #define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1
| #define __STDC_WANT_IEC_60559_BFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_DFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1
| #define __STDC_WANT_IEC_60559_TYPES_EXT__ 1
| #define __STDC_WANT_LIB_EXT2__ 1
| #define __STDC_WANT_MATH_SPEC_FUNCS__ 1
| #define _TANDEM_SOURCE 1
| #define __EXTENSIONS__ 1
| #define HAVE_DLFCN_H 1
| #define LT_OBJDIR ".libs/"
| #define HAVE_DIRENT_H 1
| #define HAVE_SYS_WAIT_H 1
| #define HAVE_CTYPE_H 1
| #define HAVE_ERRNO_H 1
| #define HAVE_FCNTL_H 1
| #define HAVE_FNMATCH_H 1
| #define HAVE_GRP_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_LANGINFO_H 1
| #define HAVE_LIMITS_H 1
| #define HAVE_LINUX_FIEMAP_H 1
| #define HAVE_LINUX_FS_H 1
| #define HAVE_LINUX_MAGIC_H 1
| #define HAVE_LINUX_TYPES_H 1
| #define HAVE_WORKING_FS_IOC_GETFLAGS 1
| #define HAVE_LOCALE_H 1
| #define HAVE_PATHS_H 1
| #define HAVE_POLL_H 1
| #define HAVE_PTHREAD_H 1
| #define HAVE_PWD_H 1
| #define HAVE_SIGNAL_H 1
| #define HAVE_SPAWN_H 1
| #define HAVE_STDARG_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_SYS_CDEFS_H 1
| #define HAVE_SYS_IOCTL_H 1
| #define HAVE_SYS_MOUNT_H 1
| #define HAVE_SYS_QUEUE_H 1
| #define HAVE_SYS_PARAM_H 1
| #define HAVE_SYS_POLL_H 1
| #define HAVE_SYS_SELECT_H 1
| #define HAVE_SYS_STATFS_H 1
| #define HAVE_SYS_STATVFS_H 1
| #define HAVE_SYS_SYSMACROS_H 1
| #define HAVE_SYS_TIME_H 1
| #define HAVE_SYS_UTSNAME_H 1
| #define HAVE_SYS_VFS_H 1
| #define HAVE_SYS_XATTR_H 1
| #define HAVE_TIME_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_UTIME_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_WCTYPE_H 1
| #define HAVE_ZLIB_H 1
| #define HAVE_LIBZ 1
| #define HAVE_ICONV 1
| #define ICONV_CONST 
| #define HAVE_ICONV_H 1
| #define HAVE_LZ4_H 1
| #define HAVE_LZ4HC_H 1
| #define HAVE_LIBLZ4 1
| #define HAVE_ZSTD_H 1
| #define HAVE_LIBZSTD 1
| #define HAVE_LIBZSTD_COMPRESSOR 1
| #define HAVE_LIBXML_XMLREADER_H 1
| #define HAVE_LIBXML_XMLWRITER_H 1
| #define HAVE_REGEX_H 1
| #define HAVE_STRUCT_TM_TM_GMTOFF 1
| #define HAVE_STRUCT_STAT_ST_MTIM_TV_NSEC 1
| #define HAVE_STRUCT_STAT_ST_BLKSIZE 1
| #define HAVE_UINTMAX_T 1
| #define HAVE_UNSIGNED_LONG_LONG 1
| #define HAVE_UNSIGNED_LONG_LONG_INT 1
| #define HAVE_LONG_LONG_INT 1
| #define HAVE_INTMAX_T 1
| #define HAVE_UINTMAX_T 1
| #define HAVE_DECL_SIZE_MAX 1
| #define HAVE_DECL_INT32_MAX 1
| #define HAVE_DECL_INT32_MIN 1
| #define HAVE_DECL_INT64_MAX 1
| #define HAVE_DECL_INT64_MIN 1
| #define HAVE_DECL_UINT64_MAX 1
| #define HAVE_DECL_UINT32_MAX 1
| #define HAVE_DECL_INTMAX_MAX 1
| #define HAVE_DECL_INTMAX_MIN 1
| #define HAVE_DECL_UINTMAX_MAX 1
| #define HAVE_DECL_SSIZE_MAX 1
| #define HAVE_EILSEQ 1
| #define HAVE_WCHAR_T 1
| #define SIZEOF_WCHAR_T 4
| #define SIZEOF_INT 4
| #define SIZEOF_LONG 4
| #define MAJOR_IN_SYSMACROS 1
| #define HAVE_FSEEKO 1
| #define LSTAT_FOLLOWS_SLASHED_SYMLINK 1
| #define HAVE_LSTAT_EMPTY_STRING_BUG 1
| #define HAVE_STAT_EMPTY_STRING_BUG 1
| #define HAVE_DECL_STRERROR_R 1
| #define HAVE_STRERROR_R 1
| #define STRERROR_R_CHAR_P 1
| #define HAVE_STRFTIME 1
| #define HAVE_VPRINTF 1
| #define HAVE_ARC4RANDOM_BUF 1
| #define HAVE_CHOWN 1
| #define HAVE_CHROOT 1
| #define HAVE_CTIME_R 1
| #define HAVE_FCHDIR 1
| #define HAVE_FCHMOD 1
| #define HAVE_FCHOWN 1
| #define HAVE_FCNTL 1
| #define HAVE_FDOPENDIR 1
| #define HAVE_FNMATCH 1
| #define HAVE_FORK 1
| #define HAVE_FSTAT 1
| #define HAVE_FSTATAT 1
| #define HAVE_FSTATFS 1
| #define HAVE_FSTATVFS 1
| #define HAVE_FTRUNCATE 1
| #define HAVE_FUTIMENS 1
| #define HAVE_FUTIMES 1
| #define HAVE_FUTIMESAT 1
| #define HAVE_GETEUID 1
| #define HAVE_GETLINE 1
| #define HAVE_GETPID 1
| #define HAVE_GETGRGID_R 1
| #define HAVE_GETGRNAM_R 1
| #define HAVE_GETPWNAM_R 1
| #define HAVE_GETPWUID_R 1
| #define HAVE_GMTIME_R 1
| #define HAVE_LCHMOD 1
| #define HAVE_LCHOWN 1
| #define HAVE_LINK 1
| #define HAVE_LINKAT 1
| #define HAVE_LOCALTIME_R 1
| #define HAVE_LSTAT 1
| #define HAVE_LUTIMES 1
| #define HAVE_MBRTOWC 1
| #define HAVE_MEMMOVE 1
| #define HAVE_MEMSET 1
| #define HAVE_MKDIR 1
| #define HAVE_MKFIFO 1
| #define HAVE_MKNOD 1
| #define HAVE_MKSTEMP 1
| #define HAVE_NL_LANGINFO 1
| #define HAVE_OPENAT 1
| #define HAVE_PIPE 1
| #define HAVE_POLL 1
| #define HAVE_POSIX_SPAWNP 1
| #define HAVE_READLINK 1
| #define HAVE_READLINKAT 1
| #define HAVE_SELECT 1
| #define HAVE_SETENV 1
| #define HAVE_SETLOCALE 1
| #define HAVE_SIGACTION 1
| #define HAVE_STATFS 1
| #define HAVE_STATVFS 1
| #define HAVE_STRCHR 1
| #define HAVE_STRDUP 1
| #define HAVE_STRERROR 1
| #define HAVE_STRNLEN 1
| #define HAVE_STRRCHR 1
| #define HAVE_SYMLINK 1
| #define HAVE_TIMEGM 1
| #define HAVE_TZSET 1
| #define HAVE_UNLINKAT 1
| #define HAVE_UNSETENV 1
| #define HAVE_UTIME 1
| #define HAVE_UTIMENSAT 1
| #define HAVE_UTIMES 1
| #define HAVE_VFORK 1
| #define HAVE_WCRTOMB 1
| #define HAVE_WCSCMP 1
| #define HAVE_WCSCPY 1
| #define HAVE_WCSLEN 1
| #define HAVE_WCTOMB 1
| #define HAVE_WMEMCMP 1
| #define HAVE_WMEMCPY 1
| #define HAVE_WMEMMOVE 1
| #define HAVE_READDIR_R 1
| #define HAVE_DIRFD 1
| /* end confdefs.h.  */
| 
| #define ARCHIVE_SHA256_COMPILE_TEST
| #define ARCHIVE_CRYPTO_SHA256_LIBC2
| #define PLATFORM_CONFIG_H "check_crypto_md.h"
| 
| /*-
| * Copyright (c) 2003-2007 Tim Kientzle
| * Copyright (c) 2011 Andres Mejia
| * Copyright (c) 2011 Michihiro NAKAJIMA
| * All rights reserved.
| *
| * Redistribution and use in source and binary forms, with or without
| * modification, are permitted provided that the following conditions
| * are met:
| * 1. Redistributions of source code must retain the above copyright
| *    notice, this list of conditions and the following disclaimer.
| * 2. Redistributions in binary form must reproduce the above copyright
| *    notice, this list of conditions and the following disclaimer in the
| *    documentation and/or other materials provided with the distribution.
| *
| * THIS SOFTWARE IS PROVIDED BY THE AUTHOR(S) ``AS IS'' AND ANY EXPRESS OR
| * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
| * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
| * IN NO EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY DIRECT, INDIRECT,
| * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
| * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
| * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
| * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
| * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
| * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
| */
| 
| #include "archive_platform.h"
| 
| #include "archive.h"
| #include "archive_digest_private.h"
| 
| /* In particular, force the configure probe to break if it tries
|  * to test a combination of OpenSSL and libmd. */
| #if defined(ARCHIVE_CRYPTO_OPENSSL) && defined(ARCHIVE_CRYPTO_LIBMD)
| #error Cannot use both OpenSSL and libmd.
| #endif
| 
| /* Common in other bcrypt implementations, but missing from VS2008. */
| #ifndef BCRYPT_SUCCESS
| #define BCRYPT_SUCCESS(r) ((NTSTATUS)(r) == STATUS_SUCCESS)
| #endif
| 
| /*
|  * Message digest functions for Windows platform.
|  */
| #if defined(ARCHIVE_CRYPTO_MD5_WIN)    ||\
| 	defined(ARCHIVE_CRYPTO_SHA1_WIN)   ||\
| 	defined(ARCHIVE_CRYPTO_SHA256_WIN) ||\
| 	defined(ARCHIVE_CRYPTO_SHA384_WIN) ||\
| 	defined(ARCHIVE_CRYPTO_SHA512_WIN)
| 
| /*
|  * Initialize a Message digest.
|  */
| #if defined(HAVE_BCRYPT_H) && _WIN32_WINNT >= _WIN32_WINNT_VISTA
| static int
| win_crypto_init(Digest_CTX *ctx, const WCHAR *algo)
| {
| 	NTSTATUS status;
| 	ctx->valid = 0;
| 
| 	status = BCryptOpenAlgorithmProvider(&ctx->hAlg, algo, NULL, 0);
| 	if (!BCRYPT_SUCCESS(status))
| 		return (ARCHIVE_FAILED);
| 	status = BCryptCreateHash(ctx->hAlg, &ctx->hHash, NULL, 0, NULL, 0, 0);
| 	if (!BCRYPT_SUCCESS(status)) {
| 		BCryptCloseAlgorithmProvider(ctx->hAlg, 0);
| 		return (ARCHIVE_FAILED);
| 	}
| 
| 	ctx->valid = 1;
| 	return (ARCHIVE_OK);
| }
| #else
| static int
| win_crypto_init(Digest_CTX *ctx, DWORD prov, ALG_ID algId)
| {
| 
| 	ctx->valid = 0;
| 	if (!CryptAcquireContext(&ctx->cryptProv, NULL, NULL,
| 	    prov, CRYPT_VERIFYCONTEXT)) {
| 		if (GetLastError() != (DWORD)NTE_BAD_KEYSET)
| 			return (ARCHIVE_FAILED);
| 		if (!CryptAcquireContext(&ctx->cryptProv, NULL, NULL,
| 		    prov, CRYPT_NEWKEYSET))
| 			return (ARCHIVE_FAILED);
| 	}
| 
| 	if (!CryptCreateHash(ctx->cryptProv, algId, 0, 0, &ctx->hash)) {
| 		CryptReleaseContext(ctx->cryptProv, 0);
| 		return (ARCHIVE_FAILED);
| 	}
| 
| 	ctx->valid = 1;
| 	return (ARCHIVE_OK);
| }
| #endif
| 
| /*
|  * Update a Message digest.
|  */
| static int
| win_crypto_Update(Digest_CTX *ctx, const unsigned char *buf, size_t len)
| {
| 
| 	if (!ctx->valid)
| 		return (ARCHIVE_FAILED);
| 
| #if defined(HAVE_BCRYPT_H) && _WIN32_WINNT >= _WIN32_WINNT_VISTA
| 	BCryptHashData(ctx->hHash,
| 		      (PUCHAR)(uintptr_t)buf,
| 		      (ULONG)len, 0);
| #else
| 	CryptHashData(ctx->hash,
| 		      (unsigned char *)(uintptr_t)buf,
| 		      (DWORD)len, 0);
| #endif
| 	return (ARCHIVE_OK);
| }
| 
| static int
| win_crypto_Final(unsigned char *buf, size_t bufsize, Digest_CTX *ctx)
| {
| #if !(defined(HAVE_BCRYPT_H) && _WIN32_WINNT >= _WIN32_WINNT_VISTA)
| 	DWORD siglen = (DWORD)bufsize;
| #endif
| 
| 	if (!ctx->valid)
| 		return (ARCHIVE_FAILED);
| 
| #if defined(HAVE_BCRYPT_H) && _WIN32_WINNT >= _WIN32_WINNT_VISTA
| 	BCryptFinishHash(ctx->hHash, buf, (ULONG)bufsize, 0);
| 	BCryptDestroyHash(ctx->hHash);
| 	BCryptCloseAlgorithmProvider(ctx->hAlg, 0);
| #else
| 	CryptGetHashParam(ctx->hash, HP_HASHVAL, buf, &siglen, 0);
| 	CryptDestroyHash(ctx->hash);
| 	CryptReleaseContext(ctx->cryptProv, 0);
| #endif
| 	ctx->valid = 0;
| 	return (ARCHIVE_OK);
| }
| 
| #endif /* defined(ARCHIVE_CRYPTO_*_WIN) */
| 
| 
| /* MD5 implementations */
| #if defined(ARCHIVE_CRYPTO_MD5_LIBC)
| 
| static int
| __archive_md5init(archive_md5_ctx *ctx)
| {
|   MD5Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5update(archive_md5_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   MD5Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5final(archive_md5_ctx *ctx, void *md)
| {
|   MD5Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_MD5_LIBMD)
| 
| static int
| __archive_md5init(archive_md5_ctx *ctx)
| {
|   MD5Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5update(archive_md5_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   MD5Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5final(archive_md5_ctx *ctx, void *md)
| {
|   MD5Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_MD5_LIBSYSTEM)
| 
| static int
| __archive_md5init(archive_md5_ctx *ctx)
| {
|   CC_MD5_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5update(archive_md5_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   CC_MD5_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5final(archive_md5_ctx *ctx, void *md)
| {
|   CC_MD5_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_MD5_MBEDTLS)
| 
| static int
| __archive_md5init(archive_md5_ctx *ctx)
| {
|   mbedtls_md5_init(ctx);
|   if (mbedtls_md5_starts_ret(ctx) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_md5update(archive_md5_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   if (mbedtls_md5_update_ret(ctx, indata, insize) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_md5final(archive_md5_ctx *ctx, void *md)
| {
|   if (mbedtls_md5_finish_ret(ctx, md) == 0) {
|     mbedtls_md5_free(ctx);
|     return (ARCHIVE_OK);
|   } else {
|     mbedtls_md5_free(ctx);
|     return (ARCHIVE_FATAL);
|   }
| }
| 
| #elif defined(ARCHIVE_CRYPTO_MD5_NETTLE)
| 
| static int
| __archive_md5init(archive_md5_ctx *ctx)
| {
|   md5_init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5update(archive_md5_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   md5_update(ctx, insize, indata);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5final(archive_md5_ctx *ctx, void *md)
| {
|   md5_digest(ctx, MD5_DIGEST_SIZE, md);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_MD5_OPENSSL)
| 
| static int
| __archive_md5init(archive_md5_ctx *ctx)
| {
|   if ((*ctx = EVP_MD_CTX_new()) == NULL)
| 	return (ARCHIVE_FAILED);
|   if (!EVP_DigestInit(*ctx, EVP_md5()))
| 	return (ARCHIVE_FAILED);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5update(archive_md5_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   EVP_DigestUpdate(*ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5final(archive_md5_ctx *ctx, void *md)
| {
|   /* HACK: archive_write_set_format_xar.c is finalizing empty contexts, so
|    * this is meant to cope with that. Real fix is probably to fix
|    * archive_write_set_format_xar.c
|    */
|   if (*ctx) {
|     EVP_DigestFinal(*ctx, md, NULL);
|     EVP_MD_CTX_free(*ctx);
|     *ctx = NULL;
|   }
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_MD5_WIN)
| 
| static int
| __archive_md5init(archive_md5_ctx *ctx)
| {
| #if defined(HAVE_BCRYPT_H) && _WIN32_WINNT >= _WIN32_WINNT_VISTA
|   return (win_crypto_init(ctx, BCRYPT_MD5_ALGORITHM));
| #else
|   return (win_crypto_init(ctx, PROV_RSA_FULL, CALG_MD5));
| #endif
| }
| 
| static int
| __archive_md5update(archive_md5_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   return (win_crypto_Update(ctx, indata, insize));
| }
| 
| static int
| __archive_md5final(archive_md5_ctx *ctx, void *md)
| {
|   return (win_crypto_Final(md, 16, ctx));
| }
| 
| #else
| 
| static int
| __archive_md5init(archive_md5_ctx *ctx)
| {
| 	(void)ctx; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_md5update(archive_md5_ctx *ctx, const void *indata,
|     size_t insize)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)indata; /* UNUSED */
| 	(void)insize; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_md5final(archive_md5_ctx *ctx, void *md)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)md; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| #endif
| 
| /* RIPEMD160 implementations */
| #if defined(ARCHIVE_CRYPTO_RMD160_LIBC)
| 
| static int
| __archive_ripemd160init(archive_rmd160_ctx *ctx)
| {
|   RMD160Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   RMD160Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md)
| {
|   RMD160Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_RMD160_LIBMD)
| 
| static int
| __archive_ripemd160init(archive_rmd160_ctx *ctx)
| {
|   RIPEMD160_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   RIPEMD160_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md)
| {
|   RIPEMD160_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_RMD160_MBEDTLS)
| 
| static int
| __archive_ripemd160init(archive_rmd160_ctx *ctx)
| {
|   mbedtls_ripemd160_init(ctx);
|   if (mbedtls_ripemd160_starts_ret(ctx) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   if (mbedtls_ripemd160_update_ret(ctx, indata, insize) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md)
| {
|   if (mbedtls_ripemd160_finish_ret(ctx, md) == 0) {
|     mbedtls_ripemd160_free(ctx);
|     return (ARCHIVE_OK);
|   } else {
|     mbedtls_ripemd160_free(ctx);
|     return (ARCHIVE_FATAL);
|   }
| }
| 
| #elif defined(ARCHIVE_CRYPTO_RMD160_NETTLE)
| 
| static int
| __archive_ripemd160init(archive_rmd160_ctx *ctx)
| {
|   ripemd160_init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   ripemd160_update(ctx, insize, indata);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md)
| {
|   ripemd160_digest(ctx, RIPEMD160_DIGEST_SIZE, md);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_RMD160_OPENSSL)
| 
| static int
| __archive_ripemd160init(archive_rmd160_ctx *ctx)
| {
|   if ((*ctx = EVP_MD_CTX_new()) == NULL)
| 	return (ARCHIVE_FAILED);
|   if (!EVP_DigestInit(*ctx, EVP_ripemd160()))
| 	return (ARCHIVE_FAILED);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   EVP_DigestUpdate(*ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md)
| {
|   if (*ctx) {
|     EVP_DigestFinal(*ctx, md, NULL);
|     EVP_MD_CTX_free(*ctx);
|     *ctx = NULL;
|   }
|   return (ARCHIVE_OK);
| }
| 
| #else
| 
| static int
| __archive_ripemd160init(archive_rmd160_ctx *ctx)
| {
| 	(void)ctx; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata,
|     size_t insize)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)indata; /* UNUSED */
| 	(void)insize; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)md; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| #endif
| 
| /* SHA1 implementations */
| #if defined(ARCHIVE_CRYPTO_SHA1_LIBC)
| 
| static int
| __archive_sha1init(archive_sha1_ctx *ctx)
| {
|   SHA1Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1update(archive_sha1_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA1Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1final(archive_sha1_ctx *ctx, void *md)
| {
|   SHA1Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA1_LIBMD)
| 
| static int
| __archive_sha1init(archive_sha1_ctx *ctx)
| {
|   SHA1_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1update(archive_sha1_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA1_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1final(archive_sha1_ctx *ctx, void *md)
| {
|   SHA1_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA1_LIBSYSTEM)
| 
| static int
| __archive_sha1init(archive_sha1_ctx *ctx)
| {
|   CC_SHA1_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1update(archive_sha1_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   CC_SHA1_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1final(archive_sha1_ctx *ctx, void *md)
| {
|   CC_SHA1_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA1_MBEDTLS)
| 
| static int
| __archive_sha1init(archive_sha1_ctx *ctx)
| {
|   mbedtls_sha1_init(ctx);
|   if (mbedtls_sha1_starts_ret(ctx) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_sha1update(archive_sha1_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   if (mbedtls_sha1_update_ret(ctx, indata, insize) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_sha1final(archive_sha1_ctx *ctx, void *md)
| {
|   if (mbedtls_sha1_finish_ret(ctx, md) == 0) {
|     mbedtls_sha1_free(ctx);
|     return (ARCHIVE_OK);
|   } else {
|     mbedtls_sha1_free(ctx);
|     return (ARCHIVE_FATAL);
|   }
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA1_NETTLE)
| 
| static int
| __archive_sha1init(archive_sha1_ctx *ctx)
| {
|   sha1_init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1update(archive_sha1_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   sha1_update(ctx, insize, indata);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1final(archive_sha1_ctx *ctx, void *md)
| {
|   sha1_digest(ctx, SHA1_DIGEST_SIZE, md);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA1_OPENSSL)
| 
| static int
| __archive_sha1init(archive_sha1_ctx *ctx)
| {
|   if ((*ctx = EVP_MD_CTX_new()) == NULL)
| 	return (ARCHIVE_FAILED);
|   if (!EVP_DigestInit(*ctx, EVP_sha1()))
| 	return (ARCHIVE_FAILED);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1update(archive_sha1_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   EVP_DigestUpdate(*ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1final(archive_sha1_ctx *ctx, void *md)
| {
|   /* HACK: archive_write_set_format_xar.c is finalizing empty contexts, so
|    * this is meant to cope with that. Real fix is probably to fix
|    * archive_write_set_format_xar.c
|    */
|   if (*ctx) {
|     EVP_DigestFinal(*ctx, md, NULL);
|     EVP_MD_CTX_free(*ctx);
|     *ctx = NULL;
|   }
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA1_WIN)
| 
| static int
| __archive_sha1init(archive_sha1_ctx *ctx)
| {
| #if defined(HAVE_BCRYPT_H) && _WIN32_WINNT >= _WIN32_WINNT_VISTA
|   return (win_crypto_init(ctx, BCRYPT_SHA1_ALGORITHM));
| #else
|   return (win_crypto_init(ctx, PROV_RSA_FULL, CALG_SHA1));
| #endif
| }
| 
| static int
| __archive_sha1update(archive_sha1_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   return (win_crypto_Update(ctx, indata, insize));
| }
| 
| static int
| __archive_sha1final(archive_sha1_ctx *ctx, void *md)
| {
|   return (win_crypto_Final(md, 20, ctx));
| }
| 
| #else
| 
| static int
| __archive_sha1init(archive_sha1_ctx *ctx)
| {
| 	(void)ctx; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_sha1update(archive_sha1_ctx *ctx, const void *indata,
|     size_t insize)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)indata; /* UNUSED */
| 	(void)insize; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_sha1final(archive_sha1_ctx *ctx, void *md)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)md; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| #endif
| 
| /* SHA256 implementations */
| #if defined(ARCHIVE_CRYPTO_SHA256_LIBC)
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
|   SHA256_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA256_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
|   SHA256_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA256_LIBC2)
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
|   SHA256Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA256Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
|   SHA256Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA256_LIBC3)
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
|   SHA256Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA256Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
|   SHA256Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA256_LIBMD)
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
|   SHA256_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA256_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
|   SHA256_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA256_LIBSYSTEM)
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
|   CC_SHA256_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   CC_SHA256_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
|   CC_SHA256_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA256_MBEDTLS)
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
|   mbedtls_sha256_init(ctx);
|   if (mbedtls_sha256_starts_ret(ctx, 0) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   if (mbedtls_sha256_update_ret(ctx, indata, insize) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
|   if (mbedtls_sha256_finish_ret(ctx, md) == 0) {
|     mbedtls_sha256_free(ctx);
|     return (ARCHIVE_OK);
|   } else {
|     mbedtls_sha256_free(ctx);
|     return (ARCHIVE_FATAL);
|   }
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA256_NETTLE)
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
|   sha256_init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   sha256_update(ctx, insize, indata);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
|   sha256_digest(ctx, SHA256_DIGEST_SIZE, md);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA256_OPENSSL)
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
|   if ((*ctx = EVP_MD_CTX_new()) == NULL)
| 	return (ARCHIVE_FAILED);
|   if (!EVP_DigestInit(*ctx, EVP_sha256()))
| 	return (ARCHIVE_FAILED);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   EVP_DigestUpdate(*ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
|   if (*ctx) {
|     EVP_DigestFinal(*ctx, md, NULL);
|     EVP_MD_CTX_free(*ctx);
|     *ctx = NULL;
|   }
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA256_WIN)
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
| #if defined(HAVE_BCRYPT_H) && _WIN32_WINNT >= _WIN32_WINNT_VISTA
|   return (win_crypto_init(ctx, BCRYPT_SHA256_ALGORITHM));
| #else
|   return (win_crypto_init(ctx, PROV_RSA_AES, CALG_SHA_256));
| #endif
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   return (win_crypto_Update(ctx, indata, insize));
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
|   return (win_crypto_Final(md, 32, ctx));
| }
| 
| #else
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
| 	(void)ctx; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)indata; /* UNUSED */
| 	(void)insize; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)md; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| #endif
| 
| /* SHA384 implementations */
| #if defined(ARCHIVE_CRYPTO_SHA384_LIBC)
| 
| static int
| __archive_sha384init(archive_sha384_ctx *ctx)
| {
|   SHA384_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384update(archive_sha384_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA384_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384final(archive_sha384_ctx *ctx, void *md)
| {
|   SHA384_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA384_LIBC2)
| 
| static int
| __archive_sha384init(archive_sha384_ctx *ctx)
| {
|   SHA384Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384update(archive_sha384_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA384Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384final(archive_sha384_ctx *ctx, void *md)
| {
|   SHA384Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA384_LIBC3)
| 
| static int
| __archive_sha384init(archive_sha384_ctx *ctx)
| {
|   SHA384Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384update(archive_sha384_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA384Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384final(archive_sha384_ctx *ctx, void *md)
| {
|   SHA384Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA384_LIBSYSTEM)
| 
| static int
| __archive_sha384init(archive_sha384_ctx *ctx)
| {
|   CC_SHA384_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384update(archive_sha384_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   CC_SHA384_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384final(archive_sha384_ctx *ctx, void *md)
| {
|   CC_SHA384_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA384_MBEDTLS)
| 
| static int
| __archive_sha384init(archive_sha384_ctx *ctx)
| {
|   mbedtls_sha512_init(ctx);
|   if (mbedtls_sha512_starts_ret(ctx, 1) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_sha384update(archive_sha384_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   if (mbedtls_sha512_update_ret(ctx, indata, insize) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_sha384final(archive_sha384_ctx *ctx, void *md)
| {
|   if (mbedtls_sha512_finish_ret(ctx, md) == 0) {
|     mbedtls_sha512_free(ctx);
|     return (ARCHIVE_OK);
|   } else {
|     mbedtls_sha512_free(ctx);
|     return (ARCHIVE_FATAL);
|   }
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA384_NETTLE)
| 
| static int
| __archive_sha384init(archive_sha384_ctx *ctx)
| {
|   sha384_init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384update(archive_sha384_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   sha384_update(ctx, insize, indata);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384final(archive_sha384_ctx *ctx, void *md)
| {
|   sha384_digest(ctx, SHA384_DIGEST_SIZE, md);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA384_OPENSSL)
| 
| static int
| __archive_sha384init(archive_sha384_ctx *ctx)
| {
|   if ((*ctx = EVP_MD_CTX_new()) == NULL)
| 	return (ARCHIVE_FAILED);
|   if (!EVP_DigestInit(*ctx, EVP_sha384()))
| 	return (ARCHIVE_FAILED);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384update(archive_sha384_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   EVP_DigestUpdate(*ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384final(archive_sha384_ctx *ctx, void *md)
| {
|   if (*ctx) {
|     EVP_DigestFinal(*ctx, md, NULL);
|     EVP_MD_CTX_free(*ctx);
|     *ctx = NULL;
|   }
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA384_WIN)
| 
| static int
| __archive_sha384init(archive_sha384_ctx *ctx)
| {
| #if defined(HAVE_BCRYPT_H) && _WIN32_WINNT >= _WIN32_WINNT_VISTA
|   return (win_crypto_init(ctx, BCRYPT_SHA384_ALGORITHM));
| #else
|   return (win_crypto_init(ctx, PROV_RSA_AES, CALG_SHA_384));
| #endif
| }
| 
| static int
| __archive_sha384update(archive_sha384_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   return (win_crypto_Update(ctx, indata, insize));
| }
| 
| static int
| __archive_sha384final(archive_sha384_ctx *ctx, void *md)
| {
|   return (win_crypto_Final(md, 48, ctx));
| }
| 
| #else
| 
| static int
| __archive_sha384init(archive_sha384_ctx *ctx)
| {
| 	(void)ctx; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_sha384update(archive_sha384_ctx *ctx, const void *indata,
|     size_t insize)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)indata; /* UNUSED */
| 	(void)insize; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_sha384final(archive_sha384_ctx *ctx, void *md)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)md; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| #endif
| 
| /* SHA512 implementations */
| #if defined(ARCHIVE_CRYPTO_SHA512_LIBC)
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
|   SHA512_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA512_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
|   SHA512_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA512_LIBC2)
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
|   SHA512Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA512Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
|   SHA512Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA512_LIBC3)
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
|   SHA512Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA512Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
|   SHA512Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA512_LIBMD)
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
|   SHA512_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA512_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
|   SHA512_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA512_LIBSYSTEM)
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
|   CC_SHA512_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   CC_SHA512_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
|   CC_SHA512_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA512_MBEDTLS)
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
|   mbedtls_sha512_init(ctx);
|   if (mbedtls_sha512_starts_ret(ctx, 0) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   if (mbedtls_sha512_update_ret(ctx, indata, insize) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
|   if (mbedtls_sha512_finish_ret(ctx, md) == 0) {
|     mbedtls_sha512_free(ctx);
|     return (ARCHIVE_OK);
|   } else {
|     mbedtls_sha512_free(ctx);
|     return (ARCHIVE_FATAL);
|   }
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA512_NETTLE)
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
|   sha512_init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   sha512_update(ctx, insize, indata);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
|   sha512_digest(ctx, SHA512_DIGEST_SIZE, md);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA512_OPENSSL)
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
|   if ((*ctx = EVP_MD_CTX_new()) == NULL)
| 	return (ARCHIVE_FAILED);
|   if (!EVP_DigestInit(*ctx, EVP_sha512()))
| 	return (ARCHIVE_FAILED);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   EVP_DigestUpdate(*ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
|   if (*ctx) {
|     EVP_DigestFinal(*ctx, md, NULL);
|     EVP_MD_CTX_free(*ctx);
|     *ctx = NULL;
|   }
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA512_WIN)
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
| #if defined(HAVE_BCRYPT_H) && _WIN32_WINNT >= _WIN32_WINNT_VISTA
|   return (win_crypto_init(ctx, BCRYPT_SHA512_ALGORITHM));
| #else
|   return (win_crypto_init(ctx, PROV_RSA_AES, CALG_SHA_512));
| #endif
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   return (win_crypto_Update(ctx, indata, insize));
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
|   return (win_crypto_Final(md, 64, ctx));
| }
| 
| #else
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
| 	(void)ctx; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)indata; /* UNUSED */
| 	(void)insize; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)md; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| #endif
| 
| /* NOTE: Message Digest functions are set based on availability and by the
|  * following order of preference.
|  * 1. libc
|  * 2. libc2
|  * 3. libc3
|  * 4. libSystem
|  * 5. Nettle
|  * 6. OpenSSL
|  * 7. libmd
|  * 8. Windows API
|  */
| const struct archive_digest __archive_digest =
| {
| /* MD5 */
|   &__archive_md5init,
|   &__archive_md5update,
|   &__archive_md5final,
| 
| /* RIPEMD160 */
|   &__archive_ripemd160init,
|   &__archive_ripemd160update,
|   &__archive_ripemd160final,
| 
| /* SHA1 */
|   &__archive_sha1init,
|   &__archive_sha1update,
|   &__archive_sha1final,
| 
| /* SHA256 */
|   &__archive_sha256init,
|   &__archive_sha256update,
|   &__archive_sha256final,
| 
| /* SHA384 */
|   &__archive_sha384init,
|   &__archive_sha384update,
|   &__archive_sha384final,
| 
| /* SHA512 */
|   &__archive_sha512init,
|   &__archive_sha512update,
|   &__archive_sha512final
| };
| 
| int
| main(int argc, char **argv)
| {
|   archive_sha256_ctx ctx;
|   archive_sha256_init(&ctx);
|   archive_sha256_update(&ctx, *argv, argc);
|   archive_sha256_final(&ctx, NULL);
|   return 0;
| }
| 
configure:17987: result: no
configure:18001: checking support for ARCHIVE_CRYPTO_SHA256_LIBC3
configure:18023: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -o conftest -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2  -I. -I. -I./libarchive  conftest.c -lzstd -llz4 -lz  -L/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/lib -lxml2  >&5
In file included from conftest.c:255:
./libarchive/archive_digest_private.h:81:10: fatal error: sha2.h: No such file or directory
   81 | #include <sha2.h>
      |          ^~~~~~~~
compilation terminated.
configure:18023: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "libarchive"
| #define PACKAGE_TARNAME "libarchive"
| #define PACKAGE_VERSION "3.7.2"
| #define PACKAGE_STRING "libarchive 3.7.2"
| #define PACKAGE_BUGREPORT "libarchive-discuss@googlegroups.com"
| #define PACKAGE_URL ""
| #define PACKAGE "libarchive"
| #define VERSION "3.7.2"
| #define __LIBARCHIVE_CONFIG_H_INCLUDED 1
| #define LIBARCHIVE_VERSION_STRING "3.7.2"
| #define LIBARCHIVE_VERSION_NUMBER "3007002"
| #define BSDCPIO_VERSION_STRING "3.7.2"
| #define BSDTAR_VERSION_STRING "3.7.2"
| #define BSDCAT_VERSION_STRING "3.7.2"
| #define BSDUNZIP_VERSION_STRING "3.7.2"
| #define HAVE_STDIO_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_SYS_TIME_H 1
| #define STDC_HEADERS 1
| #define _ALL_SOURCE 1
| #define _DARWIN_C_SOURCE 1
| #define _GNU_SOURCE 1
| #define _HPUX_ALT_XOPEN_SOCKET_API 1
| #define _NETBSD_SOURCE 1
| #define _OPENBSD_SOURCE 1
| #define _POSIX_PTHREAD_SEMANTICS 1
| #define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1
| #define __STDC_WANT_IEC_60559_BFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_DFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1
| #define __STDC_WANT_IEC_60559_TYPES_EXT__ 1
| #define __STDC_WANT_LIB_EXT2__ 1
| #define __STDC_WANT_MATH_SPEC_FUNCS__ 1
| #define _TANDEM_SOURCE 1
| #define __EXTENSIONS__ 1
| #define HAVE_DLFCN_H 1
| #define LT_OBJDIR ".libs/"
| #define HAVE_DIRENT_H 1
| #define HAVE_SYS_WAIT_H 1
| #define HAVE_CTYPE_H 1
| #define HAVE_ERRNO_H 1
| #define HAVE_FCNTL_H 1
| #define HAVE_FNMATCH_H 1
| #define HAVE_GRP_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_LANGINFO_H 1
| #define HAVE_LIMITS_H 1
| #define HAVE_LINUX_FIEMAP_H 1
| #define HAVE_LINUX_FS_H 1
| #define HAVE_LINUX_MAGIC_H 1
| #define HAVE_LINUX_TYPES_H 1
| #define HAVE_WORKING_FS_IOC_GETFLAGS 1
| #define HAVE_LOCALE_H 1
| #define HAVE_PATHS_H 1
| #define HAVE_POLL_H 1
| #define HAVE_PTHREAD_H 1
| #define HAVE_PWD_H 1
| #define HAVE_SIGNAL_H 1
| #define HAVE_SPAWN_H 1
| #define HAVE_STDARG_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_SYS_CDEFS_H 1
| #define HAVE_SYS_IOCTL_H 1
| #define HAVE_SYS_MOUNT_H 1
| #define HAVE_SYS_QUEUE_H 1
| #define HAVE_SYS_PARAM_H 1
| #define HAVE_SYS_POLL_H 1
| #define HAVE_SYS_SELECT_H 1
| #define HAVE_SYS_STATFS_H 1
| #define HAVE_SYS_STATVFS_H 1
| #define HAVE_SYS_SYSMACROS_H 1
| #define HAVE_SYS_TIME_H 1
| #define HAVE_SYS_UTSNAME_H 1
| #define HAVE_SYS_VFS_H 1
| #define HAVE_SYS_XATTR_H 1
| #define HAVE_TIME_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_UTIME_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_WCTYPE_H 1
| #define HAVE_ZLIB_H 1
| #define HAVE_LIBZ 1
| #define HAVE_ICONV 1
| #define ICONV_CONST 
| #define HAVE_ICONV_H 1
| #define HAVE_LZ4_H 1
| #define HAVE_LZ4HC_H 1
| #define HAVE_LIBLZ4 1
| #define HAVE_ZSTD_H 1
| #define HAVE_LIBZSTD 1
| #define HAVE_LIBZSTD_COMPRESSOR 1
| #define HAVE_LIBXML_XMLREADER_H 1
| #define HAVE_LIBXML_XMLWRITER_H 1
| #define HAVE_REGEX_H 1
| #define HAVE_STRUCT_TM_TM_GMTOFF 1
| #define HAVE_STRUCT_STAT_ST_MTIM_TV_NSEC 1
| #define HAVE_STRUCT_STAT_ST_BLKSIZE 1
| #define HAVE_UINTMAX_T 1
| #define HAVE_UNSIGNED_LONG_LONG 1
| #define HAVE_UNSIGNED_LONG_LONG_INT 1
| #define HAVE_LONG_LONG_INT 1
| #define HAVE_INTMAX_T 1
| #define HAVE_UINTMAX_T 1
| #define HAVE_DECL_SIZE_MAX 1
| #define HAVE_DECL_INT32_MAX 1
| #define HAVE_DECL_INT32_MIN 1
| #define HAVE_DECL_INT64_MAX 1
| #define HAVE_DECL_INT64_MIN 1
| #define HAVE_DECL_UINT64_MAX 1
| #define HAVE_DECL_UINT32_MAX 1
| #define HAVE_DECL_INTMAX_MAX 1
| #define HAVE_DECL_INTMAX_MIN 1
| #define HAVE_DECL_UINTMAX_MAX 1
| #define HAVE_DECL_SSIZE_MAX 1
| #define HAVE_EILSEQ 1
| #define HAVE_WCHAR_T 1
| #define SIZEOF_WCHAR_T 4
| #define SIZEOF_INT 4
| #define SIZEOF_LONG 4
| #define MAJOR_IN_SYSMACROS 1
| #define HAVE_FSEEKO 1
| #define LSTAT_FOLLOWS_SLASHED_SYMLINK 1
| #define HAVE_LSTAT_EMPTY_STRING_BUG 1
| #define HAVE_STAT_EMPTY_STRING_BUG 1
| #define HAVE_DECL_STRERROR_R 1
| #define HAVE_STRERROR_R 1
| #define STRERROR_R_CHAR_P 1
| #define HAVE_STRFTIME 1
| #define HAVE_VPRINTF 1
| #define HAVE_ARC4RANDOM_BUF 1
| #define HAVE_CHOWN 1
| #define HAVE_CHROOT 1
| #define HAVE_CTIME_R 1
| #define HAVE_FCHDIR 1
| #define HAVE_FCHMOD 1
| #define HAVE_FCHOWN 1
| #define HAVE_FCNTL 1
| #define HAVE_FDOPENDIR 1
| #define HAVE_FNMATCH 1
| #define HAVE_FORK 1
| #define HAVE_FSTAT 1
| #define HAVE_FSTATAT 1
| #define HAVE_FSTATFS 1
| #define HAVE_FSTATVFS 1
| #define HAVE_FTRUNCATE 1
| #define HAVE_FUTIMENS 1
| #define HAVE_FUTIMES 1
| #define HAVE_FUTIMESAT 1
| #define HAVE_GETEUID 1
| #define HAVE_GETLINE 1
| #define HAVE_GETPID 1
| #define HAVE_GETGRGID_R 1
| #define HAVE_GETGRNAM_R 1
| #define HAVE_GETPWNAM_R 1
| #define HAVE_GETPWUID_R 1
| #define HAVE_GMTIME_R 1
| #define HAVE_LCHMOD 1
| #define HAVE_LCHOWN 1
| #define HAVE_LINK 1
| #define HAVE_LINKAT 1
| #define HAVE_LOCALTIME_R 1
| #define HAVE_LSTAT 1
| #define HAVE_LUTIMES 1
| #define HAVE_MBRTOWC 1
| #define HAVE_MEMMOVE 1
| #define HAVE_MEMSET 1
| #define HAVE_MKDIR 1
| #define HAVE_MKFIFO 1
| #define HAVE_MKNOD 1
| #define HAVE_MKSTEMP 1
| #define HAVE_NL_LANGINFO 1
| #define HAVE_OPENAT 1
| #define HAVE_PIPE 1
| #define HAVE_POLL 1
| #define HAVE_POSIX_SPAWNP 1
| #define HAVE_READLINK 1
| #define HAVE_READLINKAT 1
| #define HAVE_SELECT 1
| #define HAVE_SETENV 1
| #define HAVE_SETLOCALE 1
| #define HAVE_SIGACTION 1
| #define HAVE_STATFS 1
| #define HAVE_STATVFS 1
| #define HAVE_STRCHR 1
| #define HAVE_STRDUP 1
| #define HAVE_STRERROR 1
| #define HAVE_STRNLEN 1
| #define HAVE_STRRCHR 1
| #define HAVE_SYMLINK 1
| #define HAVE_TIMEGM 1
| #define HAVE_TZSET 1
| #define HAVE_UNLINKAT 1
| #define HAVE_UNSETENV 1
| #define HAVE_UTIME 1
| #define HAVE_UTIMENSAT 1
| #define HAVE_UTIMES 1
| #define HAVE_VFORK 1
| #define HAVE_WCRTOMB 1
| #define HAVE_WCSCMP 1
| #define HAVE_WCSCPY 1
| #define HAVE_WCSLEN 1
| #define HAVE_WCTOMB 1
| #define HAVE_WMEMCMP 1
| #define HAVE_WMEMCPY 1
| #define HAVE_WMEMMOVE 1
| #define HAVE_READDIR_R 1
| #define HAVE_DIRFD 1
| /* end confdefs.h.  */
| 
| #define ARCHIVE_SHA256_COMPILE_TEST
| #define ARCHIVE_CRYPTO_SHA256_LIBC3
| #define PLATFORM_CONFIG_H "check_crypto_md.h"
| 
| /*-
| * Copyright (c) 2003-2007 Tim Kientzle
| * Copyright (c) 2011 Andres Mejia
| * Copyright (c) 2011 Michihiro NAKAJIMA
| * All rights reserved.
| *
| * Redistribution and use in source and binary forms, with or without
| * modification, are permitted provided that the following conditions
| * are met:
| * 1. Redistributions of source code must retain the above copyright
| *    notice, this list of conditions and the following disclaimer.
| * 2. Redistributions in binary form must reproduce the above copyright
| *    notice, this list of conditions and the following disclaimer in the
| *    documentation and/or other materials provided with the distribution.
| *
| * THIS SOFTWARE IS PROVIDED BY THE AUTHOR(S) ``AS IS'' AND ANY EXPRESS OR
| * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
| * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
| * IN NO EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY DIRECT, INDIRECT,
| * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
| * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
| * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
| * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
| * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
| * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
| */
| 
| #include "archive_platform.h"
| 
| #include "archive.h"
| #include "archive_digest_private.h"
| 
| /* In particular, force the configure probe to break if it tries
|  * to test a combination of OpenSSL and libmd. */
| #if defined(ARCHIVE_CRYPTO_OPENSSL) && defined(ARCHIVE_CRYPTO_LIBMD)
| #error Cannot use both OpenSSL and libmd.
| #endif
| 
| /* Common in other bcrypt implementations, but missing from VS2008. */
| #ifndef BCRYPT_SUCCESS
| #define BCRYPT_SUCCESS(r) ((NTSTATUS)(r) == STATUS_SUCCESS)
| #endif
| 
| /*
|  * Message digest functions for Windows platform.
|  */
| #if defined(ARCHIVE_CRYPTO_MD5_WIN)    ||\
| 	defined(ARCHIVE_CRYPTO_SHA1_WIN)   ||\
| 	defined(ARCHIVE_CRYPTO_SHA256_WIN) ||\
| 	defined(ARCHIVE_CRYPTO_SHA384_WIN) ||\
| 	defined(ARCHIVE_CRYPTO_SHA512_WIN)
| 
| /*
|  * Initialize a Message digest.
|  */
| #if defined(HAVE_BCRYPT_H) && _WIN32_WINNT >= _WIN32_WINNT_VISTA
| static int
| win_crypto_init(Digest_CTX *ctx, const WCHAR *algo)
| {
| 	NTSTATUS status;
| 	ctx->valid = 0;
| 
| 	status = BCryptOpenAlgorithmProvider(&ctx->hAlg, algo, NULL, 0);
| 	if (!BCRYPT_SUCCESS(status))
| 		return (ARCHIVE_FAILED);
| 	status = BCryptCreateHash(ctx->hAlg, &ctx->hHash, NULL, 0, NULL, 0, 0);
| 	if (!BCRYPT_SUCCESS(status)) {
| 		BCryptCloseAlgorithmProvider(ctx->hAlg, 0);
| 		return (ARCHIVE_FAILED);
| 	}
| 
| 	ctx->valid = 1;
| 	return (ARCHIVE_OK);
| }
| #else
| static int
| win_crypto_init(Digest_CTX *ctx, DWORD prov, ALG_ID algId)
| {
| 
| 	ctx->valid = 0;
| 	if (!CryptAcquireContext(&ctx->cryptProv, NULL, NULL,
| 	    prov, CRYPT_VERIFYCONTEXT)) {
| 		if (GetLastError() != (DWORD)NTE_BAD_KEYSET)
| 			return (ARCHIVE_FAILED);
| 		if (!CryptAcquireContext(&ctx->cryptProv, NULL, NULL,
| 		    prov, CRYPT_NEWKEYSET))
| 			return (ARCHIVE_FAILED);
| 	}
| 
| 	if (!CryptCreateHash(ctx->cryptProv, algId, 0, 0, &ctx->hash)) {
| 		CryptReleaseContext(ctx->cryptProv, 0);
| 		return (ARCHIVE_FAILED);
| 	}
| 
| 	ctx->valid = 1;
| 	return (ARCHIVE_OK);
| }
| #endif
| 
| /*
|  * Update a Message digest.
|  */
| static int
| win_crypto_Update(Digest_CTX *ctx, const unsigned char *buf, size_t len)
| {
| 
| 	if (!ctx->valid)
| 		return (ARCHIVE_FAILED);
| 
| #if defined(HAVE_BCRYPT_H) && _WIN32_WINNT >= _WIN32_WINNT_VISTA
| 	BCryptHashData(ctx->hHash,
| 		      (PUCHAR)(uintptr_t)buf,
| 		      (ULONG)len, 0);
| #else
| 	CryptHashData(ctx->hash,
| 		      (unsigned char *)(uintptr_t)buf,
| 		      (DWORD)len, 0);
| #endif
| 	return (ARCHIVE_OK);
| }
| 
| static int
| win_crypto_Final(unsigned char *buf, size_t bufsize, Digest_CTX *ctx)
| {
| #if !(defined(HAVE_BCRYPT_H) && _WIN32_WINNT >= _WIN32_WINNT_VISTA)
| 	DWORD siglen = (DWORD)bufsize;
| #endif
| 
| 	if (!ctx->valid)
| 		return (ARCHIVE_FAILED);
| 
| #if defined(HAVE_BCRYPT_H) && _WIN32_WINNT >= _WIN32_WINNT_VISTA
| 	BCryptFinishHash(ctx->hHash, buf, (ULONG)bufsize, 0);
| 	BCryptDestroyHash(ctx->hHash);
| 	BCryptCloseAlgorithmProvider(ctx->hAlg, 0);
| #else
| 	CryptGetHashParam(ctx->hash, HP_HASHVAL, buf, &siglen, 0);
| 	CryptDestroyHash(ctx->hash);
| 	CryptReleaseContext(ctx->cryptProv, 0);
| #endif
| 	ctx->valid = 0;
| 	return (ARCHIVE_OK);
| }
| 
| #endif /* defined(ARCHIVE_CRYPTO_*_WIN) */
| 
| 
| /* MD5 implementations */
| #if defined(ARCHIVE_CRYPTO_MD5_LIBC)
| 
| static int
| __archive_md5init(archive_md5_ctx *ctx)
| {
|   MD5Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5update(archive_md5_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   MD5Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5final(archive_md5_ctx *ctx, void *md)
| {
|   MD5Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_MD5_LIBMD)
| 
| static int
| __archive_md5init(archive_md5_ctx *ctx)
| {
|   MD5Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5update(archive_md5_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   MD5Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5final(archive_md5_ctx *ctx, void *md)
| {
|   MD5Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_MD5_LIBSYSTEM)
| 
| static int
| __archive_md5init(archive_md5_ctx *ctx)
| {
|   CC_MD5_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5update(archive_md5_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   CC_MD5_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5final(archive_md5_ctx *ctx, void *md)
| {
|   CC_MD5_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_MD5_MBEDTLS)
| 
| static int
| __archive_md5init(archive_md5_ctx *ctx)
| {
|   mbedtls_md5_init(ctx);
|   if (mbedtls_md5_starts_ret(ctx) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_md5update(archive_md5_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   if (mbedtls_md5_update_ret(ctx, indata, insize) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_md5final(archive_md5_ctx *ctx, void *md)
| {
|   if (mbedtls_md5_finish_ret(ctx, md) == 0) {
|     mbedtls_md5_free(ctx);
|     return (ARCHIVE_OK);
|   } else {
|     mbedtls_md5_free(ctx);
|     return (ARCHIVE_FATAL);
|   }
| }
| 
| #elif defined(ARCHIVE_CRYPTO_MD5_NETTLE)
| 
| static int
| __archive_md5init(archive_md5_ctx *ctx)
| {
|   md5_init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5update(archive_md5_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   md5_update(ctx, insize, indata);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5final(archive_md5_ctx *ctx, void *md)
| {
|   md5_digest(ctx, MD5_DIGEST_SIZE, md);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_MD5_OPENSSL)
| 
| static int
| __archive_md5init(archive_md5_ctx *ctx)
| {
|   if ((*ctx = EVP_MD_CTX_new()) == NULL)
| 	return (ARCHIVE_FAILED);
|   if (!EVP_DigestInit(*ctx, EVP_md5()))
| 	return (ARCHIVE_FAILED);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5update(archive_md5_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   EVP_DigestUpdate(*ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5final(archive_md5_ctx *ctx, void *md)
| {
|   /* HACK: archive_write_set_format_xar.c is finalizing empty contexts, so
|    * this is meant to cope with that. Real fix is probably to fix
|    * archive_write_set_format_xar.c
|    */
|   if (*ctx) {
|     EVP_DigestFinal(*ctx, md, NULL);
|     EVP_MD_CTX_free(*ctx);
|     *ctx = NULL;
|   }
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_MD5_WIN)
| 
| static int
| __archive_md5init(archive_md5_ctx *ctx)
| {
| #if defined(HAVE_BCRYPT_H) && _WIN32_WINNT >= _WIN32_WINNT_VISTA
|   return (win_crypto_init(ctx, BCRYPT_MD5_ALGORITHM));
| #else
|   return (win_crypto_init(ctx, PROV_RSA_FULL, CALG_MD5));
| #endif
| }
| 
| static int
| __archive_md5update(archive_md5_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   return (win_crypto_Update(ctx, indata, insize));
| }
| 
| static int
| __archive_md5final(archive_md5_ctx *ctx, void *md)
| {
|   return (win_crypto_Final(md, 16, ctx));
| }
| 
| #else
| 
| static int
| __archive_md5init(archive_md5_ctx *ctx)
| {
| 	(void)ctx; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_md5update(archive_md5_ctx *ctx, const void *indata,
|     size_t insize)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)indata; /* UNUSED */
| 	(void)insize; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_md5final(archive_md5_ctx *ctx, void *md)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)md; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| #endif
| 
| /* RIPEMD160 implementations */
| #if defined(ARCHIVE_CRYPTO_RMD160_LIBC)
| 
| static int
| __archive_ripemd160init(archive_rmd160_ctx *ctx)
| {
|   RMD160Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   RMD160Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md)
| {
|   RMD160Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_RMD160_LIBMD)
| 
| static int
| __archive_ripemd160init(archive_rmd160_ctx *ctx)
| {
|   RIPEMD160_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   RIPEMD160_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md)
| {
|   RIPEMD160_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_RMD160_MBEDTLS)
| 
| static int
| __archive_ripemd160init(archive_rmd160_ctx *ctx)
| {
|   mbedtls_ripemd160_init(ctx);
|   if (mbedtls_ripemd160_starts_ret(ctx) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   if (mbedtls_ripemd160_update_ret(ctx, indata, insize) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md)
| {
|   if (mbedtls_ripemd160_finish_ret(ctx, md) == 0) {
|     mbedtls_ripemd160_free(ctx);
|     return (ARCHIVE_OK);
|   } else {
|     mbedtls_ripemd160_free(ctx);
|     return (ARCHIVE_FATAL);
|   }
| }
| 
| #elif defined(ARCHIVE_CRYPTO_RMD160_NETTLE)
| 
| static int
| __archive_ripemd160init(archive_rmd160_ctx *ctx)
| {
|   ripemd160_init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   ripemd160_update(ctx, insize, indata);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md)
| {
|   ripemd160_digest(ctx, RIPEMD160_DIGEST_SIZE, md);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_RMD160_OPENSSL)
| 
| static int
| __archive_ripemd160init(archive_rmd160_ctx *ctx)
| {
|   if ((*ctx = EVP_MD_CTX_new()) == NULL)
| 	return (ARCHIVE_FAILED);
|   if (!EVP_DigestInit(*ctx, EVP_ripemd160()))
| 	return (ARCHIVE_FAILED);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   EVP_DigestUpdate(*ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md)
| {
|   if (*ctx) {
|     EVP_DigestFinal(*ctx, md, NULL);
|     EVP_MD_CTX_free(*ctx);
|     *ctx = NULL;
|   }
|   return (ARCHIVE_OK);
| }
| 
| #else
| 
| static int
| __archive_ripemd160init(archive_rmd160_ctx *ctx)
| {
| 	(void)ctx; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata,
|     size_t insize)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)indata; /* UNUSED */
| 	(void)insize; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)md; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| #endif
| 
| /* SHA1 implementations */
| #if defined(ARCHIVE_CRYPTO_SHA1_LIBC)
| 
| static int
| __archive_sha1init(archive_sha1_ctx *ctx)
| {
|   SHA1Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1update(archive_sha1_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA1Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1final(archive_sha1_ctx *ctx, void *md)
| {
|   SHA1Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA1_LIBMD)
| 
| static int
| __archive_sha1init(archive_sha1_ctx *ctx)
| {
|   SHA1_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1update(archive_sha1_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA1_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1final(archive_sha1_ctx *ctx, void *md)
| {
|   SHA1_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA1_LIBSYSTEM)
| 
| static int
| __archive_sha1init(archive_sha1_ctx *ctx)
| {
|   CC_SHA1_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1update(archive_sha1_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   CC_SHA1_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1final(archive_sha1_ctx *ctx, void *md)
| {
|   CC_SHA1_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA1_MBEDTLS)
| 
| static int
| __archive_sha1init(archive_sha1_ctx *ctx)
| {
|   mbedtls_sha1_init(ctx);
|   if (mbedtls_sha1_starts_ret(ctx) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_sha1update(archive_sha1_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   if (mbedtls_sha1_update_ret(ctx, indata, insize) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_sha1final(archive_sha1_ctx *ctx, void *md)
| {
|   if (mbedtls_sha1_finish_ret(ctx, md) == 0) {
|     mbedtls_sha1_free(ctx);
|     return (ARCHIVE_OK);
|   } else {
|     mbedtls_sha1_free(ctx);
|     return (ARCHIVE_FATAL);
|   }
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA1_NETTLE)
| 
| static int
| __archive_sha1init(archive_sha1_ctx *ctx)
| {
|   sha1_init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1update(archive_sha1_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   sha1_update(ctx, insize, indata);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1final(archive_sha1_ctx *ctx, void *md)
| {
|   sha1_digest(ctx, SHA1_DIGEST_SIZE, md);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA1_OPENSSL)
| 
| static int
| __archive_sha1init(archive_sha1_ctx *ctx)
| {
|   if ((*ctx = EVP_MD_CTX_new()) == NULL)
| 	return (ARCHIVE_FAILED);
|   if (!EVP_DigestInit(*ctx, EVP_sha1()))
| 	return (ARCHIVE_FAILED);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1update(archive_sha1_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   EVP_DigestUpdate(*ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1final(archive_sha1_ctx *ctx, void *md)
| {
|   /* HACK: archive_write_set_format_xar.c is finalizing empty contexts, so
|    * this is meant to cope with that. Real fix is probably to fix
|    * archive_write_set_format_xar.c
|    */
|   if (*ctx) {
|     EVP_DigestFinal(*ctx, md, NULL);
|     EVP_MD_CTX_free(*ctx);
|     *ctx = NULL;
|   }
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA1_WIN)
| 
| static int
| __archive_sha1init(archive_sha1_ctx *ctx)
| {
| #if defined(HAVE_BCRYPT_H) && _WIN32_WINNT >= _WIN32_WINNT_VISTA
|   return (win_crypto_init(ctx, BCRYPT_SHA1_ALGORITHM));
| #else
|   return (win_crypto_init(ctx, PROV_RSA_FULL, CALG_SHA1));
| #endif
| }
| 
| static int
| __archive_sha1update(archive_sha1_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   return (win_crypto_Update(ctx, indata, insize));
| }
| 
| static int
| __archive_sha1final(archive_sha1_ctx *ctx, void *md)
| {
|   return (win_crypto_Final(md, 20, ctx));
| }
| 
| #else
| 
| static int
| __archive_sha1init(archive_sha1_ctx *ctx)
| {
| 	(void)ctx; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_sha1update(archive_sha1_ctx *ctx, const void *indata,
|     size_t insize)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)indata; /* UNUSED */
| 	(void)insize; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_sha1final(archive_sha1_ctx *ctx, void *md)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)md; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| #endif
| 
| /* SHA256 implementations */
| #if defined(ARCHIVE_CRYPTO_SHA256_LIBC)
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
|   SHA256_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA256_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
|   SHA256_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA256_LIBC2)
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
|   SHA256Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA256Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
|   SHA256Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA256_LIBC3)
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
|   SHA256Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA256Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
|   SHA256Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA256_LIBMD)
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
|   SHA256_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA256_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
|   SHA256_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA256_LIBSYSTEM)
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
|   CC_SHA256_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   CC_SHA256_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
|   CC_SHA256_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA256_MBEDTLS)
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
|   mbedtls_sha256_init(ctx);
|   if (mbedtls_sha256_starts_ret(ctx, 0) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   if (mbedtls_sha256_update_ret(ctx, indata, insize) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
|   if (mbedtls_sha256_finish_ret(ctx, md) == 0) {
|     mbedtls_sha256_free(ctx);
|     return (ARCHIVE_OK);
|   } else {
|     mbedtls_sha256_free(ctx);
|     return (ARCHIVE_FATAL);
|   }
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA256_NETTLE)
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
|   sha256_init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   sha256_update(ctx, insize, indata);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
|   sha256_digest(ctx, SHA256_DIGEST_SIZE, md);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA256_OPENSSL)
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
|   if ((*ctx = EVP_MD_CTX_new()) == NULL)
| 	return (ARCHIVE_FAILED);
|   if (!EVP_DigestInit(*ctx, EVP_sha256()))
| 	return (ARCHIVE_FAILED);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   EVP_DigestUpdate(*ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
|   if (*ctx) {
|     EVP_DigestFinal(*ctx, md, NULL);
|     EVP_MD_CTX_free(*ctx);
|     *ctx = NULL;
|   }
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA256_WIN)
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
| #if defined(HAVE_BCRYPT_H) && _WIN32_WINNT >= _WIN32_WINNT_VISTA
|   return (win_crypto_init(ctx, BCRYPT_SHA256_ALGORITHM));
| #else
|   return (win_crypto_init(ctx, PROV_RSA_AES, CALG_SHA_256));
| #endif
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   return (win_crypto_Update(ctx, indata, insize));
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
|   return (win_crypto_Final(md, 32, ctx));
| }
| 
| #else
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
| 	(void)ctx; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)indata; /* UNUSED */
| 	(void)insize; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)md; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| #endif
| 
| /* SHA384 implementations */
| #if defined(ARCHIVE_CRYPTO_SHA384_LIBC)
| 
| static int
| __archive_sha384init(archive_sha384_ctx *ctx)
| {
|   SHA384_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384update(archive_sha384_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA384_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384final(archive_sha384_ctx *ctx, void *md)
| {
|   SHA384_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA384_LIBC2)
| 
| static int
| __archive_sha384init(archive_sha384_ctx *ctx)
| {
|   SHA384Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384update(archive_sha384_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA384Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384final(archive_sha384_ctx *ctx, void *md)
| {
|   SHA384Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA384_LIBC3)
| 
| static int
| __archive_sha384init(archive_sha384_ctx *ctx)
| {
|   SHA384Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384update(archive_sha384_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA384Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384final(archive_sha384_ctx *ctx, void *md)
| {
|   SHA384Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA384_LIBSYSTEM)
| 
| static int
| __archive_sha384init(archive_sha384_ctx *ctx)
| {
|   CC_SHA384_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384update(archive_sha384_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   CC_SHA384_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384final(archive_sha384_ctx *ctx, void *md)
| {
|   CC_SHA384_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA384_MBEDTLS)
| 
| static int
| __archive_sha384init(archive_sha384_ctx *ctx)
| {
|   mbedtls_sha512_init(ctx);
|   if (mbedtls_sha512_starts_ret(ctx, 1) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_sha384update(archive_sha384_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   if (mbedtls_sha512_update_ret(ctx, indata, insize) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_sha384final(archive_sha384_ctx *ctx, void *md)
| {
|   if (mbedtls_sha512_finish_ret(ctx, md) == 0) {
|     mbedtls_sha512_free(ctx);
|     return (ARCHIVE_OK);
|   } else {
|     mbedtls_sha512_free(ctx);
|     return (ARCHIVE_FATAL);
|   }
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA384_NETTLE)
| 
| static int
| __archive_sha384init(archive_sha384_ctx *ctx)
| {
|   sha384_init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384update(archive_sha384_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   sha384_update(ctx, insize, indata);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384final(archive_sha384_ctx *ctx, void *md)
| {
|   sha384_digest(ctx, SHA384_DIGEST_SIZE, md);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA384_OPENSSL)
| 
| static int
| __archive_sha384init(archive_sha384_ctx *ctx)
| {
|   if ((*ctx = EVP_MD_CTX_new()) == NULL)
| 	return (ARCHIVE_FAILED);
|   if (!EVP_DigestInit(*ctx, EVP_sha384()))
| 	return (ARCHIVE_FAILED);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384update(archive_sha384_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   EVP_DigestUpdate(*ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384final(archive_sha384_ctx *ctx, void *md)
| {
|   if (*ctx) {
|     EVP_DigestFinal(*ctx, md, NULL);
|     EVP_MD_CTX_free(*ctx);
|     *ctx = NULL;
|   }
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA384_WIN)
| 
| static int
| __archive_sha384init(archive_sha384_ctx *ctx)
| {
| #if defined(HAVE_BCRYPT_H) && _WIN32_WINNT >= _WIN32_WINNT_VISTA
|   return (win_crypto_init(ctx, BCRYPT_SHA384_ALGORITHM));
| #else
|   return (win_crypto_init(ctx, PROV_RSA_AES, CALG_SHA_384));
| #endif
| }
| 
| static int
| __archive_sha384update(archive_sha384_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   return (win_crypto_Update(ctx, indata, insize));
| }
| 
| static int
| __archive_sha384final(archive_sha384_ctx *ctx, void *md)
| {
|   return (win_crypto_Final(md, 48, ctx));
| }
| 
| #else
| 
| static int
| __archive_sha384init(archive_sha384_ctx *ctx)
| {
| 	(void)ctx; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_sha384update(archive_sha384_ctx *ctx, const void *indata,
|     size_t insize)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)indata; /* UNUSED */
| 	(void)insize; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_sha384final(archive_sha384_ctx *ctx, void *md)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)md; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| #endif
| 
| /* SHA512 implementations */
| #if defined(ARCHIVE_CRYPTO_SHA512_LIBC)
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
|   SHA512_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA512_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
|   SHA512_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA512_LIBC2)
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
|   SHA512Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA512Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
|   SHA512Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA512_LIBC3)
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
|   SHA512Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA512Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
|   SHA512Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA512_LIBMD)
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
|   SHA512_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA512_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
|   SHA512_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA512_LIBSYSTEM)
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
|   CC_SHA512_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   CC_SHA512_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
|   CC_SHA512_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA512_MBEDTLS)
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
|   mbedtls_sha512_init(ctx);
|   if (mbedtls_sha512_starts_ret(ctx, 0) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   if (mbedtls_sha512_update_ret(ctx, indata, insize) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
|   if (mbedtls_sha512_finish_ret(ctx, md) == 0) {
|     mbedtls_sha512_free(ctx);
|     return (ARCHIVE_OK);
|   } else {
|     mbedtls_sha512_free(ctx);
|     return (ARCHIVE_FATAL);
|   }
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA512_NETTLE)
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
|   sha512_init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   sha512_update(ctx, insize, indata);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
|   sha512_digest(ctx, SHA512_DIGEST_SIZE, md);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA512_OPENSSL)
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
|   if ((*ctx = EVP_MD_CTX_new()) == NULL)
| 	return (ARCHIVE_FAILED);
|   if (!EVP_DigestInit(*ctx, EVP_sha512()))
| 	return (ARCHIVE_FAILED);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   EVP_DigestUpdate(*ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
|   if (*ctx) {
|     EVP_DigestFinal(*ctx, md, NULL);
|     EVP_MD_CTX_free(*ctx);
|     *ctx = NULL;
|   }
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA512_WIN)
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
| #if defined(HAVE_BCRYPT_H) && _WIN32_WINNT >= _WIN32_WINNT_VISTA
|   return (win_crypto_init(ctx, BCRYPT_SHA512_ALGORITHM));
| #else
|   return (win_crypto_init(ctx, PROV_RSA_AES, CALG_SHA_512));
| #endif
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   return (win_crypto_Update(ctx, indata, insize));
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
|   return (win_crypto_Final(md, 64, ctx));
| }
| 
| #else
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
| 	(void)ctx; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)indata; /* UNUSED */
| 	(void)insize; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)md; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| #endif
| 
| /* NOTE: Message Digest functions are set based on availability and by the
|  * following order of preference.
|  * 1. libc
|  * 2. libc2
|  * 3. libc3
|  * 4. libSystem
|  * 5. Nettle
|  * 6. OpenSSL
|  * 7. libmd
|  * 8. Windows API
|  */
| const struct archive_digest __archive_digest =
| {
| /* MD5 */
|   &__archive_md5init,
|   &__archive_md5update,
|   &__archive_md5final,
| 
| /* RIPEMD160 */
|   &__archive_ripemd160init,
|   &__archive_ripemd160update,
|   &__archive_ripemd160final,
| 
| /* SHA1 */
|   &__archive_sha1init,
|   &__archive_sha1update,
|   &__archive_sha1final,
| 
| /* SHA256 */
|   &__archive_sha256init,
|   &__archive_sha256update,
|   &__archive_sha256final,
| 
| /* SHA384 */
|   &__archive_sha384init,
|   &__archive_sha384update,
|   &__archive_sha384final,
| 
| /* SHA512 */
|   &__archive_sha512init,
|   &__archive_sha512update,
|   &__archive_sha512final
| };
| 
| int
| main(int argc, char **argv)
| {
|   archive_sha256_ctx ctx;
|   archive_sha256_init(&ctx);
|   archive_sha256_update(&ctx, *argv, argc);
|   archive_sha256_final(&ctx, NULL);
|   return 0;
| }
| 
configure:18034: result: no
configure:18048: checking support for ARCHIVE_CRYPTO_SHA256_LIBSYSTEM
configure:18070: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -o conftest -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2  -I. -I. -I./libarchive  conftest.c -lzstd -llz4 -lz  -L/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/lib -lxml2  >&5
In file included from conftest.c:255:
./libarchive/archive_digest_private.h:115:10: fatal error: CommonCrypto/CommonDigest.h: No such file or directory
  115 | #include <CommonCrypto/CommonDigest.h>
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
compilation terminated.
configure:18070: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "libarchive"
| #define PACKAGE_TARNAME "libarchive"
| #define PACKAGE_VERSION "3.7.2"
| #define PACKAGE_STRING "libarchive 3.7.2"
| #define PACKAGE_BUGREPORT "libarchive-discuss@googlegroups.com"
| #define PACKAGE_URL ""
| #define PACKAGE "libarchive"
| #define VERSION "3.7.2"
| #define __LIBARCHIVE_CONFIG_H_INCLUDED 1
| #define LIBARCHIVE_VERSION_STRING "3.7.2"
| #define LIBARCHIVE_VERSION_NUMBER "3007002"
| #define BSDCPIO_VERSION_STRING "3.7.2"
| #define BSDTAR_VERSION_STRING "3.7.2"
| #define BSDCAT_VERSION_STRING "3.7.2"
| #define BSDUNZIP_VERSION_STRING "3.7.2"
| #define HAVE_STDIO_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_SYS_TIME_H 1
| #define STDC_HEADERS 1
| #define _ALL_SOURCE 1
| #define _DARWIN_C_SOURCE 1
| #define _GNU_SOURCE 1
| #define _HPUX_ALT_XOPEN_SOCKET_API 1
| #define _NETBSD_SOURCE 1
| #define _OPENBSD_SOURCE 1
| #define _POSIX_PTHREAD_SEMANTICS 1
| #define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1
| #define __STDC_WANT_IEC_60559_BFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_DFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1
| #define __STDC_WANT_IEC_60559_TYPES_EXT__ 1
| #define __STDC_WANT_LIB_EXT2__ 1
| #define __STDC_WANT_MATH_SPEC_FUNCS__ 1
| #define _TANDEM_SOURCE 1
| #define __EXTENSIONS__ 1
| #define HAVE_DLFCN_H 1
| #define LT_OBJDIR ".libs/"
| #define HAVE_DIRENT_H 1
| #define HAVE_SYS_WAIT_H 1
| #define HAVE_CTYPE_H 1
| #define HAVE_ERRNO_H 1
| #define HAVE_FCNTL_H 1
| #define HAVE_FNMATCH_H 1
| #define HAVE_GRP_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_LANGINFO_H 1
| #define HAVE_LIMITS_H 1
| #define HAVE_LINUX_FIEMAP_H 1
| #define HAVE_LINUX_FS_H 1
| #define HAVE_LINUX_MAGIC_H 1
| #define HAVE_LINUX_TYPES_H 1
| #define HAVE_WORKING_FS_IOC_GETFLAGS 1
| #define HAVE_LOCALE_H 1
| #define HAVE_PATHS_H 1
| #define HAVE_POLL_H 1
| #define HAVE_PTHREAD_H 1
| #define HAVE_PWD_H 1
| #define HAVE_SIGNAL_H 1
| #define HAVE_SPAWN_H 1
| #define HAVE_STDARG_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_SYS_CDEFS_H 1
| #define HAVE_SYS_IOCTL_H 1
| #define HAVE_SYS_MOUNT_H 1
| #define HAVE_SYS_QUEUE_H 1
| #define HAVE_SYS_PARAM_H 1
| #define HAVE_SYS_POLL_H 1
| #define HAVE_SYS_SELECT_H 1
| #define HAVE_SYS_STATFS_H 1
| #define HAVE_SYS_STATVFS_H 1
| #define HAVE_SYS_SYSMACROS_H 1
| #define HAVE_SYS_TIME_H 1
| #define HAVE_SYS_UTSNAME_H 1
| #define HAVE_SYS_VFS_H 1
| #define HAVE_SYS_XATTR_H 1
| #define HAVE_TIME_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_UTIME_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_WCTYPE_H 1
| #define HAVE_ZLIB_H 1
| #define HAVE_LIBZ 1
| #define HAVE_ICONV 1
| #define ICONV_CONST 
| #define HAVE_ICONV_H 1
| #define HAVE_LZ4_H 1
| #define HAVE_LZ4HC_H 1
| #define HAVE_LIBLZ4 1
| #define HAVE_ZSTD_H 1
| #define HAVE_LIBZSTD 1
| #define HAVE_LIBZSTD_COMPRESSOR 1
| #define HAVE_LIBXML_XMLREADER_H 1
| #define HAVE_LIBXML_XMLWRITER_H 1
| #define HAVE_REGEX_H 1
| #define HAVE_STRUCT_TM_TM_GMTOFF 1
| #define HAVE_STRUCT_STAT_ST_MTIM_TV_NSEC 1
| #define HAVE_STRUCT_STAT_ST_BLKSIZE 1
| #define HAVE_UINTMAX_T 1
| #define HAVE_UNSIGNED_LONG_LONG 1
| #define HAVE_UNSIGNED_LONG_LONG_INT 1
| #define HAVE_LONG_LONG_INT 1
| #define HAVE_INTMAX_T 1
| #define HAVE_UINTMAX_T 1
| #define HAVE_DECL_SIZE_MAX 1
| #define HAVE_DECL_INT32_MAX 1
| #define HAVE_DECL_INT32_MIN 1
| #define HAVE_DECL_INT64_MAX 1
| #define HAVE_DECL_INT64_MIN 1
| #define HAVE_DECL_UINT64_MAX 1
| #define HAVE_DECL_UINT32_MAX 1
| #define HAVE_DECL_INTMAX_MAX 1
| #define HAVE_DECL_INTMAX_MIN 1
| #define HAVE_DECL_UINTMAX_MAX 1
| #define HAVE_DECL_SSIZE_MAX 1
| #define HAVE_EILSEQ 1
| #define HAVE_WCHAR_T 1
| #define SIZEOF_WCHAR_T 4
| #define SIZEOF_INT 4
| #define SIZEOF_LONG 4
| #define MAJOR_IN_SYSMACROS 1
| #define HAVE_FSEEKO 1
| #define LSTAT_FOLLOWS_SLASHED_SYMLINK 1
| #define HAVE_LSTAT_EMPTY_STRING_BUG 1
| #define HAVE_STAT_EMPTY_STRING_BUG 1
| #define HAVE_DECL_STRERROR_R 1
| #define HAVE_STRERROR_R 1
| #define STRERROR_R_CHAR_P 1
| #define HAVE_STRFTIME 1
| #define HAVE_VPRINTF 1
| #define HAVE_ARC4RANDOM_BUF 1
| #define HAVE_CHOWN 1
| #define HAVE_CHROOT 1
| #define HAVE_CTIME_R 1
| #define HAVE_FCHDIR 1
| #define HAVE_FCHMOD 1
| #define HAVE_FCHOWN 1
| #define HAVE_FCNTL 1
| #define HAVE_FDOPENDIR 1
| #define HAVE_FNMATCH 1
| #define HAVE_FORK 1
| #define HAVE_FSTAT 1
| #define HAVE_FSTATAT 1
| #define HAVE_FSTATFS 1
| #define HAVE_FSTATVFS 1
| #define HAVE_FTRUNCATE 1
| #define HAVE_FUTIMENS 1
| #define HAVE_FUTIMES 1
| #define HAVE_FUTIMESAT 1
| #define HAVE_GETEUID 1
| #define HAVE_GETLINE 1
| #define HAVE_GETPID 1
| #define HAVE_GETGRGID_R 1
| #define HAVE_GETGRNAM_R 1
| #define HAVE_GETPWNAM_R 1
| #define HAVE_GETPWUID_R 1
| #define HAVE_GMTIME_R 1
| #define HAVE_LCHMOD 1
| #define HAVE_LCHOWN 1
| #define HAVE_LINK 1
| #define HAVE_LINKAT 1
| #define HAVE_LOCALTIME_R 1
| #define HAVE_LSTAT 1
| #define HAVE_LUTIMES 1
| #define HAVE_MBRTOWC 1
| #define HAVE_MEMMOVE 1
| #define HAVE_MEMSET 1
| #define HAVE_MKDIR 1
| #define HAVE_MKFIFO 1
| #define HAVE_MKNOD 1
| #define HAVE_MKSTEMP 1
| #define HAVE_NL_LANGINFO 1
| #define HAVE_OPENAT 1
| #define HAVE_PIPE 1
| #define HAVE_POLL 1
| #define HAVE_POSIX_SPAWNP 1
| #define HAVE_READLINK 1
| #define HAVE_READLINKAT 1
| #define HAVE_SELECT 1
| #define HAVE_SETENV 1
| #define HAVE_SETLOCALE 1
| #define HAVE_SIGACTION 1
| #define HAVE_STATFS 1
| #define HAVE_STATVFS 1
| #define HAVE_STRCHR 1
| #define HAVE_STRDUP 1
| #define HAVE_STRERROR 1
| #define HAVE_STRNLEN 1
| #define HAVE_STRRCHR 1
| #define HAVE_SYMLINK 1
| #define HAVE_TIMEGM 1
| #define HAVE_TZSET 1
| #define HAVE_UNLINKAT 1
| #define HAVE_UNSETENV 1
| #define HAVE_UTIME 1
| #define HAVE_UTIMENSAT 1
| #define HAVE_UTIMES 1
| #define HAVE_VFORK 1
| #define HAVE_WCRTOMB 1
| #define HAVE_WCSCMP 1
| #define HAVE_WCSCPY 1
| #define HAVE_WCSLEN 1
| #define HAVE_WCTOMB 1
| #define HAVE_WMEMCMP 1
| #define HAVE_WMEMCPY 1
| #define HAVE_WMEMMOVE 1
| #define HAVE_READDIR_R 1
| #define HAVE_DIRFD 1
| /* end confdefs.h.  */
| 
| #define ARCHIVE_SHA256_COMPILE_TEST
| #define ARCHIVE_CRYPTO_SHA256_LIBSYSTEM
| #define PLATFORM_CONFIG_H "check_crypto_md.h"
| 
| /*-
| * Copyright (c) 2003-2007 Tim Kientzle
| * Copyright (c) 2011 Andres Mejia
| * Copyright (c) 2011 Michihiro NAKAJIMA
| * All rights reserved.
| *
| * Redistribution and use in source and binary forms, with or without
| * modification, are permitted provided that the following conditions
| * are met:
| * 1. Redistributions of source code must retain the above copyright
| *    notice, this list of conditions and the following disclaimer.
| * 2. Redistributions in binary form must reproduce the above copyright
| *    notice, this list of conditions and the following disclaimer in the
| *    documentation and/or other materials provided with the distribution.
| *
| * THIS SOFTWARE IS PROVIDED BY THE AUTHOR(S) ``AS IS'' AND ANY EXPRESS OR
| * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
| * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
| * IN NO EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY DIRECT, INDIRECT,
| * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
| * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
| * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
| * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
| * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
| * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
| */
| 
| #include "archive_platform.h"
| 
| #include "archive.h"
| #include "archive_digest_private.h"
| 
| /* In particular, force the configure probe to break if it tries
|  * to test a combination of OpenSSL and libmd. */
| #if defined(ARCHIVE_CRYPTO_OPENSSL) && defined(ARCHIVE_CRYPTO_LIBMD)
| #error Cannot use both OpenSSL and libmd.
| #endif
| 
| /* Common in other bcrypt implementations, but missing from VS2008. */
| #ifndef BCRYPT_SUCCESS
| #define BCRYPT_SUCCESS(r) ((NTSTATUS)(r) == STATUS_SUCCESS)
| #endif
| 
| /*
|  * Message digest functions for Windows platform.
|  */
| #if defined(ARCHIVE_CRYPTO_MD5_WIN)    ||\
| 	defined(ARCHIVE_CRYPTO_SHA1_WIN)   ||\
| 	defined(ARCHIVE_CRYPTO_SHA256_WIN) ||\
| 	defined(ARCHIVE_CRYPTO_SHA384_WIN) ||\
| 	defined(ARCHIVE_CRYPTO_SHA512_WIN)
| 
| /*
|  * Initialize a Message digest.
|  */
| #if defined(HAVE_BCRYPT_H) && _WIN32_WINNT >= _WIN32_WINNT_VISTA
| static int
| win_crypto_init(Digest_CTX *ctx, const WCHAR *algo)
| {
| 	NTSTATUS status;
| 	ctx->valid = 0;
| 
| 	status = BCryptOpenAlgorithmProvider(&ctx->hAlg, algo, NULL, 0);
| 	if (!BCRYPT_SUCCESS(status))
| 		return (ARCHIVE_FAILED);
| 	status = BCryptCreateHash(ctx->hAlg, &ctx->hHash, NULL, 0, NULL, 0, 0);
| 	if (!BCRYPT_SUCCESS(status)) {
| 		BCryptCloseAlgorithmProvider(ctx->hAlg, 0);
| 		return (ARCHIVE_FAILED);
| 	}
| 
| 	ctx->valid = 1;
| 	return (ARCHIVE_OK);
| }
| #else
| static int
| win_crypto_init(Digest_CTX *ctx, DWORD prov, ALG_ID algId)
| {
| 
| 	ctx->valid = 0;
| 	if (!CryptAcquireContext(&ctx->cryptProv, NULL, NULL,
| 	    prov, CRYPT_VERIFYCONTEXT)) {
| 		if (GetLastError() != (DWORD)NTE_BAD_KEYSET)
| 			return (ARCHIVE_FAILED);
| 		if (!CryptAcquireContext(&ctx->cryptProv, NULL, NULL,
| 		    prov, CRYPT_NEWKEYSET))
| 			return (ARCHIVE_FAILED);
| 	}
| 
| 	if (!CryptCreateHash(ctx->cryptProv, algId, 0, 0, &ctx->hash)) {
| 		CryptReleaseContext(ctx->cryptProv, 0);
| 		return (ARCHIVE_FAILED);
| 	}
| 
| 	ctx->valid = 1;
| 	return (ARCHIVE_OK);
| }
| #endif
| 
| /*
|  * Update a Message digest.
|  */
| static int
| win_crypto_Update(Digest_CTX *ctx, const unsigned char *buf, size_t len)
| {
| 
| 	if (!ctx->valid)
| 		return (ARCHIVE_FAILED);
| 
| #if defined(HAVE_BCRYPT_H) && _WIN32_WINNT >= _WIN32_WINNT_VISTA
| 	BCryptHashData(ctx->hHash,
| 		      (PUCHAR)(uintptr_t)buf,
| 		      (ULONG)len, 0);
| #else
| 	CryptHashData(ctx->hash,
| 		      (unsigned char *)(uintptr_t)buf,
| 		      (DWORD)len, 0);
| #endif
| 	return (ARCHIVE_OK);
| }
| 
| static int
| win_crypto_Final(unsigned char *buf, size_t bufsize, Digest_CTX *ctx)
| {
| #if !(defined(HAVE_BCRYPT_H) && _WIN32_WINNT >= _WIN32_WINNT_VISTA)
| 	DWORD siglen = (DWORD)bufsize;
| #endif
| 
| 	if (!ctx->valid)
| 		return (ARCHIVE_FAILED);
| 
| #if defined(HAVE_BCRYPT_H) && _WIN32_WINNT >= _WIN32_WINNT_VISTA
| 	BCryptFinishHash(ctx->hHash, buf, (ULONG)bufsize, 0);
| 	BCryptDestroyHash(ctx->hHash);
| 	BCryptCloseAlgorithmProvider(ctx->hAlg, 0);
| #else
| 	CryptGetHashParam(ctx->hash, HP_HASHVAL, buf, &siglen, 0);
| 	CryptDestroyHash(ctx->hash);
| 	CryptReleaseContext(ctx->cryptProv, 0);
| #endif
| 	ctx->valid = 0;
| 	return (ARCHIVE_OK);
| }
| 
| #endif /* defined(ARCHIVE_CRYPTO_*_WIN) */
| 
| 
| /* MD5 implementations */
| #if defined(ARCHIVE_CRYPTO_MD5_LIBC)
| 
| static int
| __archive_md5init(archive_md5_ctx *ctx)
| {
|   MD5Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5update(archive_md5_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   MD5Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5final(archive_md5_ctx *ctx, void *md)
| {
|   MD5Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_MD5_LIBMD)
| 
| static int
| __archive_md5init(archive_md5_ctx *ctx)
| {
|   MD5Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5update(archive_md5_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   MD5Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5final(archive_md5_ctx *ctx, void *md)
| {
|   MD5Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_MD5_LIBSYSTEM)
| 
| static int
| __archive_md5init(archive_md5_ctx *ctx)
| {
|   CC_MD5_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5update(archive_md5_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   CC_MD5_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5final(archive_md5_ctx *ctx, void *md)
| {
|   CC_MD5_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_MD5_MBEDTLS)
| 
| static int
| __archive_md5init(archive_md5_ctx *ctx)
| {
|   mbedtls_md5_init(ctx);
|   if (mbedtls_md5_starts_ret(ctx) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_md5update(archive_md5_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   if (mbedtls_md5_update_ret(ctx, indata, insize) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_md5final(archive_md5_ctx *ctx, void *md)
| {
|   if (mbedtls_md5_finish_ret(ctx, md) == 0) {
|     mbedtls_md5_free(ctx);
|     return (ARCHIVE_OK);
|   } else {
|     mbedtls_md5_free(ctx);
|     return (ARCHIVE_FATAL);
|   }
| }
| 
| #elif defined(ARCHIVE_CRYPTO_MD5_NETTLE)
| 
| static int
| __archive_md5init(archive_md5_ctx *ctx)
| {
|   md5_init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5update(archive_md5_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   md5_update(ctx, insize, indata);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5final(archive_md5_ctx *ctx, void *md)
| {
|   md5_digest(ctx, MD5_DIGEST_SIZE, md);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_MD5_OPENSSL)
| 
| static int
| __archive_md5init(archive_md5_ctx *ctx)
| {
|   if ((*ctx = EVP_MD_CTX_new()) == NULL)
| 	return (ARCHIVE_FAILED);
|   if (!EVP_DigestInit(*ctx, EVP_md5()))
| 	return (ARCHIVE_FAILED);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5update(archive_md5_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   EVP_DigestUpdate(*ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5final(archive_md5_ctx *ctx, void *md)
| {
|   /* HACK: archive_write_set_format_xar.c is finalizing empty contexts, so
|    * this is meant to cope with that. Real fix is probably to fix
|    * archive_write_set_format_xar.c
|    */
|   if (*ctx) {
|     EVP_DigestFinal(*ctx, md, NULL);
|     EVP_MD_CTX_free(*ctx);
|     *ctx = NULL;
|   }
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_MD5_WIN)
| 
| static int
| __archive_md5init(archive_md5_ctx *ctx)
| {
| #if defined(HAVE_BCRYPT_H) && _WIN32_WINNT >= _WIN32_WINNT_VISTA
|   return (win_crypto_init(ctx, BCRYPT_MD5_ALGORITHM));
| #else
|   return (win_crypto_init(ctx, PROV_RSA_FULL, CALG_MD5));
| #endif
| }
| 
| static int
| __archive_md5update(archive_md5_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   return (win_crypto_Update(ctx, indata, insize));
| }
| 
| static int
| __archive_md5final(archive_md5_ctx *ctx, void *md)
| {
|   return (win_crypto_Final(md, 16, ctx));
| }
| 
| #else
| 
| static int
| __archive_md5init(archive_md5_ctx *ctx)
| {
| 	(void)ctx; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_md5update(archive_md5_ctx *ctx, const void *indata,
|     size_t insize)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)indata; /* UNUSED */
| 	(void)insize; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_md5final(archive_md5_ctx *ctx, void *md)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)md; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| #endif
| 
| /* RIPEMD160 implementations */
| #if defined(ARCHIVE_CRYPTO_RMD160_LIBC)
| 
| static int
| __archive_ripemd160init(archive_rmd160_ctx *ctx)
| {
|   RMD160Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   RMD160Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md)
| {
|   RMD160Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_RMD160_LIBMD)
| 
| static int
| __archive_ripemd160init(archive_rmd160_ctx *ctx)
| {
|   RIPEMD160_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   RIPEMD160_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md)
| {
|   RIPEMD160_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_RMD160_MBEDTLS)
| 
| static int
| __archive_ripemd160init(archive_rmd160_ctx *ctx)
| {
|   mbedtls_ripemd160_init(ctx);
|   if (mbedtls_ripemd160_starts_ret(ctx) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   if (mbedtls_ripemd160_update_ret(ctx, indata, insize) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md)
| {
|   if (mbedtls_ripemd160_finish_ret(ctx, md) == 0) {
|     mbedtls_ripemd160_free(ctx);
|     return (ARCHIVE_OK);
|   } else {
|     mbedtls_ripemd160_free(ctx);
|     return (ARCHIVE_FATAL);
|   }
| }
| 
| #elif defined(ARCHIVE_CRYPTO_RMD160_NETTLE)
| 
| static int
| __archive_ripemd160init(archive_rmd160_ctx *ctx)
| {
|   ripemd160_init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   ripemd160_update(ctx, insize, indata);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md)
| {
|   ripemd160_digest(ctx, RIPEMD160_DIGEST_SIZE, md);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_RMD160_OPENSSL)
| 
| static int
| __archive_ripemd160init(archive_rmd160_ctx *ctx)
| {
|   if ((*ctx = EVP_MD_CTX_new()) == NULL)
| 	return (ARCHIVE_FAILED);
|   if (!EVP_DigestInit(*ctx, EVP_ripemd160()))
| 	return (ARCHIVE_FAILED);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   EVP_DigestUpdate(*ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md)
| {
|   if (*ctx) {
|     EVP_DigestFinal(*ctx, md, NULL);
|     EVP_MD_CTX_free(*ctx);
|     *ctx = NULL;
|   }
|   return (ARCHIVE_OK);
| }
| 
| #else
| 
| static int
| __archive_ripemd160init(archive_rmd160_ctx *ctx)
| {
| 	(void)ctx; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata,
|     size_t insize)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)indata; /* UNUSED */
| 	(void)insize; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)md; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| #endif
| 
| /* SHA1 implementations */
| #if defined(ARCHIVE_CRYPTO_SHA1_LIBC)
| 
| static int
| __archive_sha1init(archive_sha1_ctx *ctx)
| {
|   SHA1Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1update(archive_sha1_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA1Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1final(archive_sha1_ctx *ctx, void *md)
| {
|   SHA1Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA1_LIBMD)
| 
| static int
| __archive_sha1init(archive_sha1_ctx *ctx)
| {
|   SHA1_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1update(archive_sha1_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA1_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1final(archive_sha1_ctx *ctx, void *md)
| {
|   SHA1_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA1_LIBSYSTEM)
| 
| static int
| __archive_sha1init(archive_sha1_ctx *ctx)
| {
|   CC_SHA1_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1update(archive_sha1_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   CC_SHA1_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1final(archive_sha1_ctx *ctx, void *md)
| {
|   CC_SHA1_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA1_MBEDTLS)
| 
| static int
| __archive_sha1init(archive_sha1_ctx *ctx)
| {
|   mbedtls_sha1_init(ctx);
|   if (mbedtls_sha1_starts_ret(ctx) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_sha1update(archive_sha1_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   if (mbedtls_sha1_update_ret(ctx, indata, insize) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_sha1final(archive_sha1_ctx *ctx, void *md)
| {
|   if (mbedtls_sha1_finish_ret(ctx, md) == 0) {
|     mbedtls_sha1_free(ctx);
|     return (ARCHIVE_OK);
|   } else {
|     mbedtls_sha1_free(ctx);
|     return (ARCHIVE_FATAL);
|   }
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA1_NETTLE)
| 
| static int
| __archive_sha1init(archive_sha1_ctx *ctx)
| {
|   sha1_init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1update(archive_sha1_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   sha1_update(ctx, insize, indata);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1final(archive_sha1_ctx *ctx, void *md)
| {
|   sha1_digest(ctx, SHA1_DIGEST_SIZE, md);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA1_OPENSSL)
| 
| static int
| __archive_sha1init(archive_sha1_ctx *ctx)
| {
|   if ((*ctx = EVP_MD_CTX_new()) == NULL)
| 	return (ARCHIVE_FAILED);
|   if (!EVP_DigestInit(*ctx, EVP_sha1()))
| 	return (ARCHIVE_FAILED);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1update(archive_sha1_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   EVP_DigestUpdate(*ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1final(archive_sha1_ctx *ctx, void *md)
| {
|   /* HACK: archive_write_set_format_xar.c is finalizing empty contexts, so
|    * this is meant to cope with that. Real fix is probably to fix
|    * archive_write_set_format_xar.c
|    */
|   if (*ctx) {
|     EVP_DigestFinal(*ctx, md, NULL);
|     EVP_MD_CTX_free(*ctx);
|     *ctx = NULL;
|   }
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA1_WIN)
| 
| static int
| __archive_sha1init(archive_sha1_ctx *ctx)
| {
| #if defined(HAVE_BCRYPT_H) && _WIN32_WINNT >= _WIN32_WINNT_VISTA
|   return (win_crypto_init(ctx, BCRYPT_SHA1_ALGORITHM));
| #else
|   return (win_crypto_init(ctx, PROV_RSA_FULL, CALG_SHA1));
| #endif
| }
| 
| static int
| __archive_sha1update(archive_sha1_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   return (win_crypto_Update(ctx, indata, insize));
| }
| 
| static int
| __archive_sha1final(archive_sha1_ctx *ctx, void *md)
| {
|   return (win_crypto_Final(md, 20, ctx));
| }
| 
| #else
| 
| static int
| __archive_sha1init(archive_sha1_ctx *ctx)
| {
| 	(void)ctx; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_sha1update(archive_sha1_ctx *ctx, const void *indata,
|     size_t insize)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)indata; /* UNUSED */
| 	(void)insize; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_sha1final(archive_sha1_ctx *ctx, void *md)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)md; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| #endif
| 
| /* SHA256 implementations */
| #if defined(ARCHIVE_CRYPTO_SHA256_LIBC)
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
|   SHA256_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA256_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
|   SHA256_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA256_LIBC2)
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
|   SHA256Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA256Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
|   SHA256Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA256_LIBC3)
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
|   SHA256Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA256Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
|   SHA256Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA256_LIBMD)
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
|   SHA256_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA256_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
|   SHA256_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA256_LIBSYSTEM)
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
|   CC_SHA256_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   CC_SHA256_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
|   CC_SHA256_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA256_MBEDTLS)
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
|   mbedtls_sha256_init(ctx);
|   if (mbedtls_sha256_starts_ret(ctx, 0) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   if (mbedtls_sha256_update_ret(ctx, indata, insize) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
|   if (mbedtls_sha256_finish_ret(ctx, md) == 0) {
|     mbedtls_sha256_free(ctx);
|     return (ARCHIVE_OK);
|   } else {
|     mbedtls_sha256_free(ctx);
|     return (ARCHIVE_FATAL);
|   }
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA256_NETTLE)
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
|   sha256_init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   sha256_update(ctx, insize, indata);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
|   sha256_digest(ctx, SHA256_DIGEST_SIZE, md);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA256_OPENSSL)
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
|   if ((*ctx = EVP_MD_CTX_new()) == NULL)
| 	return (ARCHIVE_FAILED);
|   if (!EVP_DigestInit(*ctx, EVP_sha256()))
| 	return (ARCHIVE_FAILED);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   EVP_DigestUpdate(*ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
|   if (*ctx) {
|     EVP_DigestFinal(*ctx, md, NULL);
|     EVP_MD_CTX_free(*ctx);
|     *ctx = NULL;
|   }
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA256_WIN)
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
| #if defined(HAVE_BCRYPT_H) && _WIN32_WINNT >= _WIN32_WINNT_VISTA
|   return (win_crypto_init(ctx, BCRYPT_SHA256_ALGORITHM));
| #else
|   return (win_crypto_init(ctx, PROV_RSA_AES, CALG_SHA_256));
| #endif
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   return (win_crypto_Update(ctx, indata, insize));
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
|   return (win_crypto_Final(md, 32, ctx));
| }
| 
| #else
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
| 	(void)ctx; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)indata; /* UNUSED */
| 	(void)insize; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)md; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| #endif
| 
| /* SHA384 implementations */
| #if defined(ARCHIVE_CRYPTO_SHA384_LIBC)
| 
| static int
| __archive_sha384init(archive_sha384_ctx *ctx)
| {
|   SHA384_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384update(archive_sha384_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA384_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384final(archive_sha384_ctx *ctx, void *md)
| {
|   SHA384_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA384_LIBC2)
| 
| static int
| __archive_sha384init(archive_sha384_ctx *ctx)
| {
|   SHA384Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384update(archive_sha384_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA384Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384final(archive_sha384_ctx *ctx, void *md)
| {
|   SHA384Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA384_LIBC3)
| 
| static int
| __archive_sha384init(archive_sha384_ctx *ctx)
| {
|   SHA384Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384update(archive_sha384_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA384Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384final(archive_sha384_ctx *ctx, void *md)
| {
|   SHA384Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA384_LIBSYSTEM)
| 
| static int
| __archive_sha384init(archive_sha384_ctx *ctx)
| {
|   CC_SHA384_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384update(archive_sha384_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   CC_SHA384_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384final(archive_sha384_ctx *ctx, void *md)
| {
|   CC_SHA384_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA384_MBEDTLS)
| 
| static int
| __archive_sha384init(archive_sha384_ctx *ctx)
| {
|   mbedtls_sha512_init(ctx);
|   if (mbedtls_sha512_starts_ret(ctx, 1) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_sha384update(archive_sha384_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   if (mbedtls_sha512_update_ret(ctx, indata, insize) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_sha384final(archive_sha384_ctx *ctx, void *md)
| {
|   if (mbedtls_sha512_finish_ret(ctx, md) == 0) {
|     mbedtls_sha512_free(ctx);
|     return (ARCHIVE_OK);
|   } else {
|     mbedtls_sha512_free(ctx);
|     return (ARCHIVE_FATAL);
|   }
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA384_NETTLE)
| 
| static int
| __archive_sha384init(archive_sha384_ctx *ctx)
| {
|   sha384_init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384update(archive_sha384_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   sha384_update(ctx, insize, indata);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384final(archive_sha384_ctx *ctx, void *md)
| {
|   sha384_digest(ctx, SHA384_DIGEST_SIZE, md);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA384_OPENSSL)
| 
| static int
| __archive_sha384init(archive_sha384_ctx *ctx)
| {
|   if ((*ctx = EVP_MD_CTX_new()) == NULL)
| 	return (ARCHIVE_FAILED);
|   if (!EVP_DigestInit(*ctx, EVP_sha384()))
| 	return (ARCHIVE_FAILED);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384update(archive_sha384_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   EVP_DigestUpdate(*ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384final(archive_sha384_ctx *ctx, void *md)
| {
|   if (*ctx) {
|     EVP_DigestFinal(*ctx, md, NULL);
|     EVP_MD_CTX_free(*ctx);
|     *ctx = NULL;
|   }
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA384_WIN)
| 
| static int
| __archive_sha384init(archive_sha384_ctx *ctx)
| {
| #if defined(HAVE_BCRYPT_H) && _WIN32_WINNT >= _WIN32_WINNT_VISTA
|   return (win_crypto_init(ctx, BCRYPT_SHA384_ALGORITHM));
| #else
|   return (win_crypto_init(ctx, PROV_RSA_AES, CALG_SHA_384));
| #endif
| }
| 
| static int
| __archive_sha384update(archive_sha384_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   return (win_crypto_Update(ctx, indata, insize));
| }
| 
| static int
| __archive_sha384final(archive_sha384_ctx *ctx, void *md)
| {
|   return (win_crypto_Final(md, 48, ctx));
| }
| 
| #else
| 
| static int
| __archive_sha384init(archive_sha384_ctx *ctx)
| {
| 	(void)ctx; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_sha384update(archive_sha384_ctx *ctx, const void *indata,
|     size_t insize)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)indata; /* UNUSED */
| 	(void)insize; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_sha384final(archive_sha384_ctx *ctx, void *md)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)md; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| #endif
| 
| /* SHA512 implementations */
| #if defined(ARCHIVE_CRYPTO_SHA512_LIBC)
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
|   SHA512_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA512_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
|   SHA512_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA512_LIBC2)
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
|   SHA512Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA512Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
|   SHA512Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA512_LIBC3)
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
|   SHA512Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA512Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
|   SHA512Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA512_LIBMD)
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
|   SHA512_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA512_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
|   SHA512_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA512_LIBSYSTEM)
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
|   CC_SHA512_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   CC_SHA512_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
|   CC_SHA512_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA512_MBEDTLS)
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
|   mbedtls_sha512_init(ctx);
|   if (mbedtls_sha512_starts_ret(ctx, 0) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   if (mbedtls_sha512_update_ret(ctx, indata, insize) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
|   if (mbedtls_sha512_finish_ret(ctx, md) == 0) {
|     mbedtls_sha512_free(ctx);
|     return (ARCHIVE_OK);
|   } else {
|     mbedtls_sha512_free(ctx);
|     return (ARCHIVE_FATAL);
|   }
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA512_NETTLE)
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
|   sha512_init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   sha512_update(ctx, insize, indata);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
|   sha512_digest(ctx, SHA512_DIGEST_SIZE, md);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA512_OPENSSL)
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
|   if ((*ctx = EVP_MD_CTX_new()) == NULL)
| 	return (ARCHIVE_FAILED);
|   if (!EVP_DigestInit(*ctx, EVP_sha512()))
| 	return (ARCHIVE_FAILED);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   EVP_DigestUpdate(*ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
|   if (*ctx) {
|     EVP_DigestFinal(*ctx, md, NULL);
|     EVP_MD_CTX_free(*ctx);
|     *ctx = NULL;
|   }
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA512_WIN)
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
| #if defined(HAVE_BCRYPT_H) && _WIN32_WINNT >= _WIN32_WINNT_VISTA
|   return (win_crypto_init(ctx, BCRYPT_SHA512_ALGORITHM));
| #else
|   return (win_crypto_init(ctx, PROV_RSA_AES, CALG_SHA_512));
| #endif
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   return (win_crypto_Update(ctx, indata, insize));
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
|   return (win_crypto_Final(md, 64, ctx));
| }
| 
| #else
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
| 	(void)ctx; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)indata; /* UNUSED */
| 	(void)insize; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)md; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| #endif
| 
| /* NOTE: Message Digest functions are set based on availability and by the
|  * following order of preference.
|  * 1. libc
|  * 2. libc2
|  * 3. libc3
|  * 4. libSystem
|  * 5. Nettle
|  * 6. OpenSSL
|  * 7. libmd
|  * 8. Windows API
|  */
| const struct archive_digest __archive_digest =
| {
| /* MD5 */
|   &__archive_md5init,
|   &__archive_md5update,
|   &__archive_md5final,
| 
| /* RIPEMD160 */
|   &__archive_ripemd160init,
|   &__archive_ripemd160update,
|   &__archive_ripemd160final,
| 
| /* SHA1 */
|   &__archive_sha1init,
|   &__archive_sha1update,
|   &__archive_sha1final,
| 
| /* SHA256 */
|   &__archive_sha256init,
|   &__archive_sha256update,
|   &__archive_sha256final,
| 
| /* SHA384 */
|   &__archive_sha384init,
|   &__archive_sha384update,
|   &__archive_sha384final,
| 
| /* SHA512 */
|   &__archive_sha512init,
|   &__archive_sha512update,
|   &__archive_sha512final
| };
| 
| int
| main(int argc, char **argv)
| {
|   archive_sha256_ctx ctx;
|   archive_sha256_init(&ctx);
|   archive_sha256_update(&ctx, *argv, argc);
|   archive_sha256_final(&ctx, NULL);
|   return 0;
| }
| 
configure:18081: result: no
configure:18095: checking support for ARCHIVE_CRYPTO_SHA384_LIBC
configure:18117: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -o conftest -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2  -I. -I. -I./libarchive  conftest.c -lzstd -llz4 -lz  -L/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/lib -lxml2  >&5
In file included from conftest.c:255:
./libarchive/archive_digest_private.h:81:10: fatal error: sha2.h: No such file or directory
   81 | #include <sha2.h>
      |          ^~~~~~~~
compilation terminated.
configure:18117: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "libarchive"
| #define PACKAGE_TARNAME "libarchive"
| #define PACKAGE_VERSION "3.7.2"
| #define PACKAGE_STRING "libarchive 3.7.2"
| #define PACKAGE_BUGREPORT "libarchive-discuss@googlegroups.com"
| #define PACKAGE_URL ""
| #define PACKAGE "libarchive"
| #define VERSION "3.7.2"
| #define __LIBARCHIVE_CONFIG_H_INCLUDED 1
| #define LIBARCHIVE_VERSION_STRING "3.7.2"
| #define LIBARCHIVE_VERSION_NUMBER "3007002"
| #define BSDCPIO_VERSION_STRING "3.7.2"
| #define BSDTAR_VERSION_STRING "3.7.2"
| #define BSDCAT_VERSION_STRING "3.7.2"
| #define BSDUNZIP_VERSION_STRING "3.7.2"
| #define HAVE_STDIO_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_SYS_TIME_H 1
| #define STDC_HEADERS 1
| #define _ALL_SOURCE 1
| #define _DARWIN_C_SOURCE 1
| #define _GNU_SOURCE 1
| #define _HPUX_ALT_XOPEN_SOCKET_API 1
| #define _NETBSD_SOURCE 1
| #define _OPENBSD_SOURCE 1
| #define _POSIX_PTHREAD_SEMANTICS 1
| #define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1
| #define __STDC_WANT_IEC_60559_BFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_DFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1
| #define __STDC_WANT_IEC_60559_TYPES_EXT__ 1
| #define __STDC_WANT_LIB_EXT2__ 1
| #define __STDC_WANT_MATH_SPEC_FUNCS__ 1
| #define _TANDEM_SOURCE 1
| #define __EXTENSIONS__ 1
| #define HAVE_DLFCN_H 1
| #define LT_OBJDIR ".libs/"
| #define HAVE_DIRENT_H 1
| #define HAVE_SYS_WAIT_H 1
| #define HAVE_CTYPE_H 1
| #define HAVE_ERRNO_H 1
| #define HAVE_FCNTL_H 1
| #define HAVE_FNMATCH_H 1
| #define HAVE_GRP_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_LANGINFO_H 1
| #define HAVE_LIMITS_H 1
| #define HAVE_LINUX_FIEMAP_H 1
| #define HAVE_LINUX_FS_H 1
| #define HAVE_LINUX_MAGIC_H 1
| #define HAVE_LINUX_TYPES_H 1
| #define HAVE_WORKING_FS_IOC_GETFLAGS 1
| #define HAVE_LOCALE_H 1
| #define HAVE_PATHS_H 1
| #define HAVE_POLL_H 1
| #define HAVE_PTHREAD_H 1
| #define HAVE_PWD_H 1
| #define HAVE_SIGNAL_H 1
| #define HAVE_SPAWN_H 1
| #define HAVE_STDARG_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_SYS_CDEFS_H 1
| #define HAVE_SYS_IOCTL_H 1
| #define HAVE_SYS_MOUNT_H 1
| #define HAVE_SYS_QUEUE_H 1
| #define HAVE_SYS_PARAM_H 1
| #define HAVE_SYS_POLL_H 1
| #define HAVE_SYS_SELECT_H 1
| #define HAVE_SYS_STATFS_H 1
| #define HAVE_SYS_STATVFS_H 1
| #define HAVE_SYS_SYSMACROS_H 1
| #define HAVE_SYS_TIME_H 1
| #define HAVE_SYS_UTSNAME_H 1
| #define HAVE_SYS_VFS_H 1
| #define HAVE_SYS_XATTR_H 1
| #define HAVE_TIME_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_UTIME_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_WCTYPE_H 1
| #define HAVE_ZLIB_H 1
| #define HAVE_LIBZ 1
| #define HAVE_ICONV 1
| #define ICONV_CONST 
| #define HAVE_ICONV_H 1
| #define HAVE_LZ4_H 1
| #define HAVE_LZ4HC_H 1
| #define HAVE_LIBLZ4 1
| #define HAVE_ZSTD_H 1
| #define HAVE_LIBZSTD 1
| #define HAVE_LIBZSTD_COMPRESSOR 1
| #define HAVE_LIBXML_XMLREADER_H 1
| #define HAVE_LIBXML_XMLWRITER_H 1
| #define HAVE_REGEX_H 1
| #define HAVE_STRUCT_TM_TM_GMTOFF 1
| #define HAVE_STRUCT_STAT_ST_MTIM_TV_NSEC 1
| #define HAVE_STRUCT_STAT_ST_BLKSIZE 1
| #define HAVE_UINTMAX_T 1
| #define HAVE_UNSIGNED_LONG_LONG 1
| #define HAVE_UNSIGNED_LONG_LONG_INT 1
| #define HAVE_LONG_LONG_INT 1
| #define HAVE_INTMAX_T 1
| #define HAVE_UINTMAX_T 1
| #define HAVE_DECL_SIZE_MAX 1
| #define HAVE_DECL_INT32_MAX 1
| #define HAVE_DECL_INT32_MIN 1
| #define HAVE_DECL_INT64_MAX 1
| #define HAVE_DECL_INT64_MIN 1
| #define HAVE_DECL_UINT64_MAX 1
| #define HAVE_DECL_UINT32_MAX 1
| #define HAVE_DECL_INTMAX_MAX 1
| #define HAVE_DECL_INTMAX_MIN 1
| #define HAVE_DECL_UINTMAX_MAX 1
| #define HAVE_DECL_SSIZE_MAX 1
| #define HAVE_EILSEQ 1
| #define HAVE_WCHAR_T 1
| #define SIZEOF_WCHAR_T 4
| #define SIZEOF_INT 4
| #define SIZEOF_LONG 4
| #define MAJOR_IN_SYSMACROS 1
| #define HAVE_FSEEKO 1
| #define LSTAT_FOLLOWS_SLASHED_SYMLINK 1
| #define HAVE_LSTAT_EMPTY_STRING_BUG 1
| #define HAVE_STAT_EMPTY_STRING_BUG 1
| #define HAVE_DECL_STRERROR_R 1
| #define HAVE_STRERROR_R 1
| #define STRERROR_R_CHAR_P 1
| #define HAVE_STRFTIME 1
| #define HAVE_VPRINTF 1
| #define HAVE_ARC4RANDOM_BUF 1
| #define HAVE_CHOWN 1
| #define HAVE_CHROOT 1
| #define HAVE_CTIME_R 1
| #define HAVE_FCHDIR 1
| #define HAVE_FCHMOD 1
| #define HAVE_FCHOWN 1
| #define HAVE_FCNTL 1
| #define HAVE_FDOPENDIR 1
| #define HAVE_FNMATCH 1
| #define HAVE_FORK 1
| #define HAVE_FSTAT 1
| #define HAVE_FSTATAT 1
| #define HAVE_FSTATFS 1
| #define HAVE_FSTATVFS 1
| #define HAVE_FTRUNCATE 1
| #define HAVE_FUTIMENS 1
| #define HAVE_FUTIMES 1
| #define HAVE_FUTIMESAT 1
| #define HAVE_GETEUID 1
| #define HAVE_GETLINE 1
| #define HAVE_GETPID 1
| #define HAVE_GETGRGID_R 1
| #define HAVE_GETGRNAM_R 1
| #define HAVE_GETPWNAM_R 1
| #define HAVE_GETPWUID_R 1
| #define HAVE_GMTIME_R 1
| #define HAVE_LCHMOD 1
| #define HAVE_LCHOWN 1
| #define HAVE_LINK 1
| #define HAVE_LINKAT 1
| #define HAVE_LOCALTIME_R 1
| #define HAVE_LSTAT 1
| #define HAVE_LUTIMES 1
| #define HAVE_MBRTOWC 1
| #define HAVE_MEMMOVE 1
| #define HAVE_MEMSET 1
| #define HAVE_MKDIR 1
| #define HAVE_MKFIFO 1
| #define HAVE_MKNOD 1
| #define HAVE_MKSTEMP 1
| #define HAVE_NL_LANGINFO 1
| #define HAVE_OPENAT 1
| #define HAVE_PIPE 1
| #define HAVE_POLL 1
| #define HAVE_POSIX_SPAWNP 1
| #define HAVE_READLINK 1
| #define HAVE_READLINKAT 1
| #define HAVE_SELECT 1
| #define HAVE_SETENV 1
| #define HAVE_SETLOCALE 1
| #define HAVE_SIGACTION 1
| #define HAVE_STATFS 1
| #define HAVE_STATVFS 1
| #define HAVE_STRCHR 1
| #define HAVE_STRDUP 1
| #define HAVE_STRERROR 1
| #define HAVE_STRNLEN 1
| #define HAVE_STRRCHR 1
| #define HAVE_SYMLINK 1
| #define HAVE_TIMEGM 1
| #define HAVE_TZSET 1
| #define HAVE_UNLINKAT 1
| #define HAVE_UNSETENV 1
| #define HAVE_UTIME 1
| #define HAVE_UTIMENSAT 1
| #define HAVE_UTIMES 1
| #define HAVE_VFORK 1
| #define HAVE_WCRTOMB 1
| #define HAVE_WCSCMP 1
| #define HAVE_WCSCPY 1
| #define HAVE_WCSLEN 1
| #define HAVE_WCTOMB 1
| #define HAVE_WMEMCMP 1
| #define HAVE_WMEMCPY 1
| #define HAVE_WMEMMOVE 1
| #define HAVE_READDIR_R 1
| #define HAVE_DIRFD 1
| /* end confdefs.h.  */
| 
| #define ARCHIVE_SHA384_COMPILE_TEST
| #define ARCHIVE_CRYPTO_SHA384_LIBC
| #define PLATFORM_CONFIG_H "check_crypto_md.h"
| 
| /*-
| * Copyright (c) 2003-2007 Tim Kientzle
| * Copyright (c) 2011 Andres Mejia
| * Copyright (c) 2011 Michihiro NAKAJIMA
| * All rights reserved.
| *
| * Redistribution and use in source and binary forms, with or without
| * modification, are permitted provided that the following conditions
| * are met:
| * 1. Redistributions of source code must retain the above copyright
| *    notice, this list of conditions and the following disclaimer.
| * 2. Redistributions in binary form must reproduce the above copyright
| *    notice, this list of conditions and the following disclaimer in the
| *    documentation and/or other materials provided with the distribution.
| *
| * THIS SOFTWARE IS PROVIDED BY THE AUTHOR(S) ``AS IS'' AND ANY EXPRESS OR
| * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
| * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
| * IN NO EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY DIRECT, INDIRECT,
| * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
| * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
| * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
| * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
| * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
| * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
| */
| 
| #include "archive_platform.h"
| 
| #include "archive.h"
| #include "archive_digest_private.h"
| 
| /* In particular, force the configure probe to break if it tries
|  * to test a combination of OpenSSL and libmd. */
| #if defined(ARCHIVE_CRYPTO_OPENSSL) && defined(ARCHIVE_CRYPTO_LIBMD)
| #error Cannot use both OpenSSL and libmd.
| #endif
| 
| /* Common in other bcrypt implementations, but missing from VS2008. */
| #ifndef BCRYPT_SUCCESS
| #define BCRYPT_SUCCESS(r) ((NTSTATUS)(r) == STATUS_SUCCESS)
| #endif
| 
| /*
|  * Message digest functions for Windows platform.
|  */
| #if defined(ARCHIVE_CRYPTO_MD5_WIN)    ||\
| 	defined(ARCHIVE_CRYPTO_SHA1_WIN)   ||\
| 	defined(ARCHIVE_CRYPTO_SHA256_WIN) ||\
| 	defined(ARCHIVE_CRYPTO_SHA384_WIN) ||\
| 	defined(ARCHIVE_CRYPTO_SHA512_WIN)
| 
| /*
|  * Initialize a Message digest.
|  */
| #if defined(HAVE_BCRYPT_H) && _WIN32_WINNT >= _WIN32_WINNT_VISTA
| static int
| win_crypto_init(Digest_CTX *ctx, const WCHAR *algo)
| {
| 	NTSTATUS status;
| 	ctx->valid = 0;
| 
| 	status = BCryptOpenAlgorithmProvider(&ctx->hAlg, algo, NULL, 0);
| 	if (!BCRYPT_SUCCESS(status))
| 		return (ARCHIVE_FAILED);
| 	status = BCryptCreateHash(ctx->hAlg, &ctx->hHash, NULL, 0, NULL, 0, 0);
| 	if (!BCRYPT_SUCCESS(status)) {
| 		BCryptCloseAlgorithmProvider(ctx->hAlg, 0);
| 		return (ARCHIVE_FAILED);
| 	}
| 
| 	ctx->valid = 1;
| 	return (ARCHIVE_OK);
| }
| #else
| static int
| win_crypto_init(Digest_CTX *ctx, DWORD prov, ALG_ID algId)
| {
| 
| 	ctx->valid = 0;
| 	if (!CryptAcquireContext(&ctx->cryptProv, NULL, NULL,
| 	    prov, CRYPT_VERIFYCONTEXT)) {
| 		if (GetLastError() != (DWORD)NTE_BAD_KEYSET)
| 			return (ARCHIVE_FAILED);
| 		if (!CryptAcquireContext(&ctx->cryptProv, NULL, NULL,
| 		    prov, CRYPT_NEWKEYSET))
| 			return (ARCHIVE_FAILED);
| 	}
| 
| 	if (!CryptCreateHash(ctx->cryptProv, algId, 0, 0, &ctx->hash)) {
| 		CryptReleaseContext(ctx->cryptProv, 0);
| 		return (ARCHIVE_FAILED);
| 	}
| 
| 	ctx->valid = 1;
| 	return (ARCHIVE_OK);
| }
| #endif
| 
| /*
|  * Update a Message digest.
|  */
| static int
| win_crypto_Update(Digest_CTX *ctx, const unsigned char *buf, size_t len)
| {
| 
| 	if (!ctx->valid)
| 		return (ARCHIVE_FAILED);
| 
| #if defined(HAVE_BCRYPT_H) && _WIN32_WINNT >= _WIN32_WINNT_VISTA
| 	BCryptHashData(ctx->hHash,
| 		      (PUCHAR)(uintptr_t)buf,
| 		      (ULONG)len, 0);
| #else
| 	CryptHashData(ctx->hash,
| 		      (unsigned char *)(uintptr_t)buf,
| 		      (DWORD)len, 0);
| #endif
| 	return (ARCHIVE_OK);
| }
| 
| static int
| win_crypto_Final(unsigned char *buf, size_t bufsize, Digest_CTX *ctx)
| {
| #if !(defined(HAVE_BCRYPT_H) && _WIN32_WINNT >= _WIN32_WINNT_VISTA)
| 	DWORD siglen = (DWORD)bufsize;
| #endif
| 
| 	if (!ctx->valid)
| 		return (ARCHIVE_FAILED);
| 
| #if defined(HAVE_BCRYPT_H) && _WIN32_WINNT >= _WIN32_WINNT_VISTA
| 	BCryptFinishHash(ctx->hHash, buf, (ULONG)bufsize, 0);
| 	BCryptDestroyHash(ctx->hHash);
| 	BCryptCloseAlgorithmProvider(ctx->hAlg, 0);
| #else
| 	CryptGetHashParam(ctx->hash, HP_HASHVAL, buf, &siglen, 0);
| 	CryptDestroyHash(ctx->hash);
| 	CryptReleaseContext(ctx->cryptProv, 0);
| #endif
| 	ctx->valid = 0;
| 	return (ARCHIVE_OK);
| }
| 
| #endif /* defined(ARCHIVE_CRYPTO_*_WIN) */
| 
| 
| /* MD5 implementations */
| #if defined(ARCHIVE_CRYPTO_MD5_LIBC)
| 
| static int
| __archive_md5init(archive_md5_ctx *ctx)
| {
|   MD5Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5update(archive_md5_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   MD5Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5final(archive_md5_ctx *ctx, void *md)
| {
|   MD5Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_MD5_LIBMD)
| 
| static int
| __archive_md5init(archive_md5_ctx *ctx)
| {
|   MD5Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5update(archive_md5_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   MD5Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5final(archive_md5_ctx *ctx, void *md)
| {
|   MD5Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_MD5_LIBSYSTEM)
| 
| static int
| __archive_md5init(archive_md5_ctx *ctx)
| {
|   CC_MD5_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5update(archive_md5_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   CC_MD5_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5final(archive_md5_ctx *ctx, void *md)
| {
|   CC_MD5_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_MD5_MBEDTLS)
| 
| static int
| __archive_md5init(archive_md5_ctx *ctx)
| {
|   mbedtls_md5_init(ctx);
|   if (mbedtls_md5_starts_ret(ctx) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_md5update(archive_md5_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   if (mbedtls_md5_update_ret(ctx, indata, insize) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_md5final(archive_md5_ctx *ctx, void *md)
| {
|   if (mbedtls_md5_finish_ret(ctx, md) == 0) {
|     mbedtls_md5_free(ctx);
|     return (ARCHIVE_OK);
|   } else {
|     mbedtls_md5_free(ctx);
|     return (ARCHIVE_FATAL);
|   }
| }
| 
| #elif defined(ARCHIVE_CRYPTO_MD5_NETTLE)
| 
| static int
| __archive_md5init(archive_md5_ctx *ctx)
| {
|   md5_init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5update(archive_md5_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   md5_update(ctx, insize, indata);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5final(archive_md5_ctx *ctx, void *md)
| {
|   md5_digest(ctx, MD5_DIGEST_SIZE, md);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_MD5_OPENSSL)
| 
| static int
| __archive_md5init(archive_md5_ctx *ctx)
| {
|   if ((*ctx = EVP_MD_CTX_new()) == NULL)
| 	return (ARCHIVE_FAILED);
|   if (!EVP_DigestInit(*ctx, EVP_md5()))
| 	return (ARCHIVE_FAILED);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5update(archive_md5_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   EVP_DigestUpdate(*ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5final(archive_md5_ctx *ctx, void *md)
| {
|   /* HACK: archive_write_set_format_xar.c is finalizing empty contexts, so
|    * this is meant to cope with that. Real fix is probably to fix
|    * archive_write_set_format_xar.c
|    */
|   if (*ctx) {
|     EVP_DigestFinal(*ctx, md, NULL);
|     EVP_MD_CTX_free(*ctx);
|     *ctx = NULL;
|   }
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_MD5_WIN)
| 
| static int
| __archive_md5init(archive_md5_ctx *ctx)
| {
| #if defined(HAVE_BCRYPT_H) && _WIN32_WINNT >= _WIN32_WINNT_VISTA
|   return (win_crypto_init(ctx, BCRYPT_MD5_ALGORITHM));
| #else
|   return (win_crypto_init(ctx, PROV_RSA_FULL, CALG_MD5));
| #endif
| }
| 
| static int
| __archive_md5update(archive_md5_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   return (win_crypto_Update(ctx, indata, insize));
| }
| 
| static int
| __archive_md5final(archive_md5_ctx *ctx, void *md)
| {
|   return (win_crypto_Final(md, 16, ctx));
| }
| 
| #else
| 
| static int
| __archive_md5init(archive_md5_ctx *ctx)
| {
| 	(void)ctx; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_md5update(archive_md5_ctx *ctx, const void *indata,
|     size_t insize)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)indata; /* UNUSED */
| 	(void)insize; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_md5final(archive_md5_ctx *ctx, void *md)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)md; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| #endif
| 
| /* RIPEMD160 implementations */
| #if defined(ARCHIVE_CRYPTO_RMD160_LIBC)
| 
| static int
| __archive_ripemd160init(archive_rmd160_ctx *ctx)
| {
|   RMD160Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   RMD160Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md)
| {
|   RMD160Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_RMD160_LIBMD)
| 
| static int
| __archive_ripemd160init(archive_rmd160_ctx *ctx)
| {
|   RIPEMD160_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   RIPEMD160_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md)
| {
|   RIPEMD160_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_RMD160_MBEDTLS)
| 
| static int
| __archive_ripemd160init(archive_rmd160_ctx *ctx)
| {
|   mbedtls_ripemd160_init(ctx);
|   if (mbedtls_ripemd160_starts_ret(ctx) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   if (mbedtls_ripemd160_update_ret(ctx, indata, insize) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md)
| {
|   if (mbedtls_ripemd160_finish_ret(ctx, md) == 0) {
|     mbedtls_ripemd160_free(ctx);
|     return (ARCHIVE_OK);
|   } else {
|     mbedtls_ripemd160_free(ctx);
|     return (ARCHIVE_FATAL);
|   }
| }
| 
| #elif defined(ARCHIVE_CRYPTO_RMD160_NETTLE)
| 
| static int
| __archive_ripemd160init(archive_rmd160_ctx *ctx)
| {
|   ripemd160_init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   ripemd160_update(ctx, insize, indata);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md)
| {
|   ripemd160_digest(ctx, RIPEMD160_DIGEST_SIZE, md);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_RMD160_OPENSSL)
| 
| static int
| __archive_ripemd160init(archive_rmd160_ctx *ctx)
| {
|   if ((*ctx = EVP_MD_CTX_new()) == NULL)
| 	return (ARCHIVE_FAILED);
|   if (!EVP_DigestInit(*ctx, EVP_ripemd160()))
| 	return (ARCHIVE_FAILED);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   EVP_DigestUpdate(*ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md)
| {
|   if (*ctx) {
|     EVP_DigestFinal(*ctx, md, NULL);
|     EVP_MD_CTX_free(*ctx);
|     *ctx = NULL;
|   }
|   return (ARCHIVE_OK);
| }
| 
| #else
| 
| static int
| __archive_ripemd160init(archive_rmd160_ctx *ctx)
| {
| 	(void)ctx; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata,
|     size_t insize)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)indata; /* UNUSED */
| 	(void)insize; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)md; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| #endif
| 
| /* SHA1 implementations */
| #if defined(ARCHIVE_CRYPTO_SHA1_LIBC)
| 
| static int
| __archive_sha1init(archive_sha1_ctx *ctx)
| {
|   SHA1Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1update(archive_sha1_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA1Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1final(archive_sha1_ctx *ctx, void *md)
| {
|   SHA1Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA1_LIBMD)
| 
| static int
| __archive_sha1init(archive_sha1_ctx *ctx)
| {
|   SHA1_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1update(archive_sha1_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA1_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1final(archive_sha1_ctx *ctx, void *md)
| {
|   SHA1_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA1_LIBSYSTEM)
| 
| static int
| __archive_sha1init(archive_sha1_ctx *ctx)
| {
|   CC_SHA1_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1update(archive_sha1_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   CC_SHA1_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1final(archive_sha1_ctx *ctx, void *md)
| {
|   CC_SHA1_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA1_MBEDTLS)
| 
| static int
| __archive_sha1init(archive_sha1_ctx *ctx)
| {
|   mbedtls_sha1_init(ctx);
|   if (mbedtls_sha1_starts_ret(ctx) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_sha1update(archive_sha1_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   if (mbedtls_sha1_update_ret(ctx, indata, insize) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_sha1final(archive_sha1_ctx *ctx, void *md)
| {
|   if (mbedtls_sha1_finish_ret(ctx, md) == 0) {
|     mbedtls_sha1_free(ctx);
|     return (ARCHIVE_OK);
|   } else {
|     mbedtls_sha1_free(ctx);
|     return (ARCHIVE_FATAL);
|   }
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA1_NETTLE)
| 
| static int
| __archive_sha1init(archive_sha1_ctx *ctx)
| {
|   sha1_init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1update(archive_sha1_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   sha1_update(ctx, insize, indata);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1final(archive_sha1_ctx *ctx, void *md)
| {
|   sha1_digest(ctx, SHA1_DIGEST_SIZE, md);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA1_OPENSSL)
| 
| static int
| __archive_sha1init(archive_sha1_ctx *ctx)
| {
|   if ((*ctx = EVP_MD_CTX_new()) == NULL)
| 	return (ARCHIVE_FAILED);
|   if (!EVP_DigestInit(*ctx, EVP_sha1()))
| 	return (ARCHIVE_FAILED);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1update(archive_sha1_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   EVP_DigestUpdate(*ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1final(archive_sha1_ctx *ctx, void *md)
| {
|   /* HACK: archive_write_set_format_xar.c is finalizing empty contexts, so
|    * this is meant to cope with that. Real fix is probably to fix
|    * archive_write_set_format_xar.c
|    */
|   if (*ctx) {
|     EVP_DigestFinal(*ctx, md, NULL);
|     EVP_MD_CTX_free(*ctx);
|     *ctx = NULL;
|   }
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA1_WIN)
| 
| static int
| __archive_sha1init(archive_sha1_ctx *ctx)
| {
| #if defined(HAVE_BCRYPT_H) && _WIN32_WINNT >= _WIN32_WINNT_VISTA
|   return (win_crypto_init(ctx, BCRYPT_SHA1_ALGORITHM));
| #else
|   return (win_crypto_init(ctx, PROV_RSA_FULL, CALG_SHA1));
| #endif
| }
| 
| static int
| __archive_sha1update(archive_sha1_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   return (win_crypto_Update(ctx, indata, insize));
| }
| 
| static int
| __archive_sha1final(archive_sha1_ctx *ctx, void *md)
| {
|   return (win_crypto_Final(md, 20, ctx));
| }
| 
| #else
| 
| static int
| __archive_sha1init(archive_sha1_ctx *ctx)
| {
| 	(void)ctx; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_sha1update(archive_sha1_ctx *ctx, const void *indata,
|     size_t insize)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)indata; /* UNUSED */
| 	(void)insize; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_sha1final(archive_sha1_ctx *ctx, void *md)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)md; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| #endif
| 
| /* SHA256 implementations */
| #if defined(ARCHIVE_CRYPTO_SHA256_LIBC)
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
|   SHA256_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA256_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
|   SHA256_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA256_LIBC2)
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
|   SHA256Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA256Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
|   SHA256Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA256_LIBC3)
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
|   SHA256Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA256Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
|   SHA256Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA256_LIBMD)
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
|   SHA256_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA256_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
|   SHA256_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA256_LIBSYSTEM)
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
|   CC_SHA256_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   CC_SHA256_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
|   CC_SHA256_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA256_MBEDTLS)
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
|   mbedtls_sha256_init(ctx);
|   if (mbedtls_sha256_starts_ret(ctx, 0) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   if (mbedtls_sha256_update_ret(ctx, indata, insize) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
|   if (mbedtls_sha256_finish_ret(ctx, md) == 0) {
|     mbedtls_sha256_free(ctx);
|     return (ARCHIVE_OK);
|   } else {
|     mbedtls_sha256_free(ctx);
|     return (ARCHIVE_FATAL);
|   }
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA256_NETTLE)
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
|   sha256_init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   sha256_update(ctx, insize, indata);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
|   sha256_digest(ctx, SHA256_DIGEST_SIZE, md);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA256_OPENSSL)
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
|   if ((*ctx = EVP_MD_CTX_new()) == NULL)
| 	return (ARCHIVE_FAILED);
|   if (!EVP_DigestInit(*ctx, EVP_sha256()))
| 	return (ARCHIVE_FAILED);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   EVP_DigestUpdate(*ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
|   if (*ctx) {
|     EVP_DigestFinal(*ctx, md, NULL);
|     EVP_MD_CTX_free(*ctx);
|     *ctx = NULL;
|   }
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA256_WIN)
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
| #if defined(HAVE_BCRYPT_H) && _WIN32_WINNT >= _WIN32_WINNT_VISTA
|   return (win_crypto_init(ctx, BCRYPT_SHA256_ALGORITHM));
| #else
|   return (win_crypto_init(ctx, PROV_RSA_AES, CALG_SHA_256));
| #endif
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   return (win_crypto_Update(ctx, indata, insize));
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
|   return (win_crypto_Final(md, 32, ctx));
| }
| 
| #else
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
| 	(void)ctx; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)indata; /* UNUSED */
| 	(void)insize; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)md; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| #endif
| 
| /* SHA384 implementations */
| #if defined(ARCHIVE_CRYPTO_SHA384_LIBC)
| 
| static int
| __archive_sha384init(archive_sha384_ctx *ctx)
| {
|   SHA384_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384update(archive_sha384_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA384_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384final(archive_sha384_ctx *ctx, void *md)
| {
|   SHA384_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA384_LIBC2)
| 
| static int
| __archive_sha384init(archive_sha384_ctx *ctx)
| {
|   SHA384Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384update(archive_sha384_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA384Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384final(archive_sha384_ctx *ctx, void *md)
| {
|   SHA384Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA384_LIBC3)
| 
| static int
| __archive_sha384init(archive_sha384_ctx *ctx)
| {
|   SHA384Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384update(archive_sha384_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA384Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384final(archive_sha384_ctx *ctx, void *md)
| {
|   SHA384Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA384_LIBSYSTEM)
| 
| static int
| __archive_sha384init(archive_sha384_ctx *ctx)
| {
|   CC_SHA384_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384update(archive_sha384_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   CC_SHA384_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384final(archive_sha384_ctx *ctx, void *md)
| {
|   CC_SHA384_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA384_MBEDTLS)
| 
| static int
| __archive_sha384init(archive_sha384_ctx *ctx)
| {
|   mbedtls_sha512_init(ctx);
|   if (mbedtls_sha512_starts_ret(ctx, 1) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_sha384update(archive_sha384_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   if (mbedtls_sha512_update_ret(ctx, indata, insize) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_sha384final(archive_sha384_ctx *ctx, void *md)
| {
|   if (mbedtls_sha512_finish_ret(ctx, md) == 0) {
|     mbedtls_sha512_free(ctx);
|     return (ARCHIVE_OK);
|   } else {
|     mbedtls_sha512_free(ctx);
|     return (ARCHIVE_FATAL);
|   }
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA384_NETTLE)
| 
| static int
| __archive_sha384init(archive_sha384_ctx *ctx)
| {
|   sha384_init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384update(archive_sha384_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   sha384_update(ctx, insize, indata);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384final(archive_sha384_ctx *ctx, void *md)
| {
|   sha384_digest(ctx, SHA384_DIGEST_SIZE, md);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA384_OPENSSL)
| 
| static int
| __archive_sha384init(archive_sha384_ctx *ctx)
| {
|   if ((*ctx = EVP_MD_CTX_new()) == NULL)
| 	return (ARCHIVE_FAILED);
|   if (!EVP_DigestInit(*ctx, EVP_sha384()))
| 	return (ARCHIVE_FAILED);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384update(archive_sha384_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   EVP_DigestUpdate(*ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384final(archive_sha384_ctx *ctx, void *md)
| {
|   if (*ctx) {
|     EVP_DigestFinal(*ctx, md, NULL);
|     EVP_MD_CTX_free(*ctx);
|     *ctx = NULL;
|   }
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA384_WIN)
| 
| static int
| __archive_sha384init(archive_sha384_ctx *ctx)
| {
| #if defined(HAVE_BCRYPT_H) && _WIN32_WINNT >= _WIN32_WINNT_VISTA
|   return (win_crypto_init(ctx, BCRYPT_SHA384_ALGORITHM));
| #else
|   return (win_crypto_init(ctx, PROV_RSA_AES, CALG_SHA_384));
| #endif
| }
| 
| static int
| __archive_sha384update(archive_sha384_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   return (win_crypto_Update(ctx, indata, insize));
| }
| 
| static int
| __archive_sha384final(archive_sha384_ctx *ctx, void *md)
| {
|   return (win_crypto_Final(md, 48, ctx));
| }
| 
| #else
| 
| static int
| __archive_sha384init(archive_sha384_ctx *ctx)
| {
| 	(void)ctx; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_sha384update(archive_sha384_ctx *ctx, const void *indata,
|     size_t insize)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)indata; /* UNUSED */
| 	(void)insize; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_sha384final(archive_sha384_ctx *ctx, void *md)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)md; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| #endif
| 
| /* SHA512 implementations */
| #if defined(ARCHIVE_CRYPTO_SHA512_LIBC)
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
|   SHA512_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA512_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
|   SHA512_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA512_LIBC2)
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
|   SHA512Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA512Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
|   SHA512Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA512_LIBC3)
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
|   SHA512Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA512Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
|   SHA512Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA512_LIBMD)
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
|   SHA512_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA512_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
|   SHA512_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA512_LIBSYSTEM)
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
|   CC_SHA512_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   CC_SHA512_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
|   CC_SHA512_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA512_MBEDTLS)
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
|   mbedtls_sha512_init(ctx);
|   if (mbedtls_sha512_starts_ret(ctx, 0) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   if (mbedtls_sha512_update_ret(ctx, indata, insize) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
|   if (mbedtls_sha512_finish_ret(ctx, md) == 0) {
|     mbedtls_sha512_free(ctx);
|     return (ARCHIVE_OK);
|   } else {
|     mbedtls_sha512_free(ctx);
|     return (ARCHIVE_FATAL);
|   }
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA512_NETTLE)
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
|   sha512_init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   sha512_update(ctx, insize, indata);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
|   sha512_digest(ctx, SHA512_DIGEST_SIZE, md);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA512_OPENSSL)
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
|   if ((*ctx = EVP_MD_CTX_new()) == NULL)
| 	return (ARCHIVE_FAILED);
|   if (!EVP_DigestInit(*ctx, EVP_sha512()))
| 	return (ARCHIVE_FAILED);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   EVP_DigestUpdate(*ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
|   if (*ctx) {
|     EVP_DigestFinal(*ctx, md, NULL);
|     EVP_MD_CTX_free(*ctx);
|     *ctx = NULL;
|   }
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA512_WIN)
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
| #if defined(HAVE_BCRYPT_H) && _WIN32_WINNT >= _WIN32_WINNT_VISTA
|   return (win_crypto_init(ctx, BCRYPT_SHA512_ALGORITHM));
| #else
|   return (win_crypto_init(ctx, PROV_RSA_AES, CALG_SHA_512));
| #endif
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   return (win_crypto_Update(ctx, indata, insize));
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
|   return (win_crypto_Final(md, 64, ctx));
| }
| 
| #else
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
| 	(void)ctx; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)indata; /* UNUSED */
| 	(void)insize; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)md; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| #endif
| 
| /* NOTE: Message Digest functions are set based on availability and by the
|  * following order of preference.
|  * 1. libc
|  * 2. libc2
|  * 3. libc3
|  * 4. libSystem
|  * 5. Nettle
|  * 6. OpenSSL
|  * 7. libmd
|  * 8. Windows API
|  */
| const struct archive_digest __archive_digest =
| {
| /* MD5 */
|   &__archive_md5init,
|   &__archive_md5update,
|   &__archive_md5final,
| 
| /* RIPEMD160 */
|   &__archive_ripemd160init,
|   &__archive_ripemd160update,
|   &__archive_ripemd160final,
| 
| /* SHA1 */
|   &__archive_sha1init,
|   &__archive_sha1update,
|   &__archive_sha1final,
| 
| /* SHA256 */
|   &__archive_sha256init,
|   &__archive_sha256update,
|   &__archive_sha256final,
| 
| /* SHA384 */
|   &__archive_sha384init,
|   &__archive_sha384update,
|   &__archive_sha384final,
| 
| /* SHA512 */
|   &__archive_sha512init,
|   &__archive_sha512update,
|   &__archive_sha512final
| };
| 
| int
| main(int argc, char **argv)
| {
|   archive_sha384_ctx ctx;
|   archive_sha384_init(&ctx);
|   archive_sha384_update(&ctx, *argv, argc);
|   archive_sha384_final(&ctx, NULL);
|   return 0;
| }
| 
configure:18128: result: no
configure:18142: checking support for ARCHIVE_CRYPTO_SHA384_LIBC2
configure:18164: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -o conftest -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2  -I. -I. -I./libarchive  conftest.c -lzstd -llz4 -lz  -L/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/lib -lxml2  >&5
In file included from conftest.c:255:
./libarchive/archive_digest_private.h:81:10: fatal error: sha2.h: No such file or directory
   81 | #include <sha2.h>
      |          ^~~~~~~~
compilation terminated.
configure:18164: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "libarchive"
| #define PACKAGE_TARNAME "libarchive"
| #define PACKAGE_VERSION "3.7.2"
| #define PACKAGE_STRING "libarchive 3.7.2"
| #define PACKAGE_BUGREPORT "libarchive-discuss@googlegroups.com"
| #define PACKAGE_URL ""
| #define PACKAGE "libarchive"
| #define VERSION "3.7.2"
| #define __LIBARCHIVE_CONFIG_H_INCLUDED 1
| #define LIBARCHIVE_VERSION_STRING "3.7.2"
| #define LIBARCHIVE_VERSION_NUMBER "3007002"
| #define BSDCPIO_VERSION_STRING "3.7.2"
| #define BSDTAR_VERSION_STRING "3.7.2"
| #define BSDCAT_VERSION_STRING "3.7.2"
| #define BSDUNZIP_VERSION_STRING "3.7.2"
| #define HAVE_STDIO_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_SYS_TIME_H 1
| #define STDC_HEADERS 1
| #define _ALL_SOURCE 1
| #define _DARWIN_C_SOURCE 1
| #define _GNU_SOURCE 1
| #define _HPUX_ALT_XOPEN_SOCKET_API 1
| #define _NETBSD_SOURCE 1
| #define _OPENBSD_SOURCE 1
| #define _POSIX_PTHREAD_SEMANTICS 1
| #define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1
| #define __STDC_WANT_IEC_60559_BFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_DFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1
| #define __STDC_WANT_IEC_60559_TYPES_EXT__ 1
| #define __STDC_WANT_LIB_EXT2__ 1
| #define __STDC_WANT_MATH_SPEC_FUNCS__ 1
| #define _TANDEM_SOURCE 1
| #define __EXTENSIONS__ 1
| #define HAVE_DLFCN_H 1
| #define LT_OBJDIR ".libs/"
| #define HAVE_DIRENT_H 1
| #define HAVE_SYS_WAIT_H 1
| #define HAVE_CTYPE_H 1
| #define HAVE_ERRNO_H 1
| #define HAVE_FCNTL_H 1
| #define HAVE_FNMATCH_H 1
| #define HAVE_GRP_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_LANGINFO_H 1
| #define HAVE_LIMITS_H 1
| #define HAVE_LINUX_FIEMAP_H 1
| #define HAVE_LINUX_FS_H 1
| #define HAVE_LINUX_MAGIC_H 1
| #define HAVE_LINUX_TYPES_H 1
| #define HAVE_WORKING_FS_IOC_GETFLAGS 1
| #define HAVE_LOCALE_H 1
| #define HAVE_PATHS_H 1
| #define HAVE_POLL_H 1
| #define HAVE_PTHREAD_H 1
| #define HAVE_PWD_H 1
| #define HAVE_SIGNAL_H 1
| #define HAVE_SPAWN_H 1
| #define HAVE_STDARG_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_SYS_CDEFS_H 1
| #define HAVE_SYS_IOCTL_H 1
| #define HAVE_SYS_MOUNT_H 1
| #define HAVE_SYS_QUEUE_H 1
| #define HAVE_SYS_PARAM_H 1
| #define HAVE_SYS_POLL_H 1
| #define HAVE_SYS_SELECT_H 1
| #define HAVE_SYS_STATFS_H 1
| #define HAVE_SYS_STATVFS_H 1
| #define HAVE_SYS_SYSMACROS_H 1
| #define HAVE_SYS_TIME_H 1
| #define HAVE_SYS_UTSNAME_H 1
| #define HAVE_SYS_VFS_H 1
| #define HAVE_SYS_XATTR_H 1
| #define HAVE_TIME_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_UTIME_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_WCTYPE_H 1
| #define HAVE_ZLIB_H 1
| #define HAVE_LIBZ 1
| #define HAVE_ICONV 1
| #define ICONV_CONST 
| #define HAVE_ICONV_H 1
| #define HAVE_LZ4_H 1
| #define HAVE_LZ4HC_H 1
| #define HAVE_LIBLZ4 1
| #define HAVE_ZSTD_H 1
| #define HAVE_LIBZSTD 1
| #define HAVE_LIBZSTD_COMPRESSOR 1
| #define HAVE_LIBXML_XMLREADER_H 1
| #define HAVE_LIBXML_XMLWRITER_H 1
| #define HAVE_REGEX_H 1
| #define HAVE_STRUCT_TM_TM_GMTOFF 1
| #define HAVE_STRUCT_STAT_ST_MTIM_TV_NSEC 1
| #define HAVE_STRUCT_STAT_ST_BLKSIZE 1
| #define HAVE_UINTMAX_T 1
| #define HAVE_UNSIGNED_LONG_LONG 1
| #define HAVE_UNSIGNED_LONG_LONG_INT 1
| #define HAVE_LONG_LONG_INT 1
| #define HAVE_INTMAX_T 1
| #define HAVE_UINTMAX_T 1
| #define HAVE_DECL_SIZE_MAX 1
| #define HAVE_DECL_INT32_MAX 1
| #define HAVE_DECL_INT32_MIN 1
| #define HAVE_DECL_INT64_MAX 1
| #define HAVE_DECL_INT64_MIN 1
| #define HAVE_DECL_UINT64_MAX 1
| #define HAVE_DECL_UINT32_MAX 1
| #define HAVE_DECL_INTMAX_MAX 1
| #define HAVE_DECL_INTMAX_MIN 1
| #define HAVE_DECL_UINTMAX_MAX 1
| #define HAVE_DECL_SSIZE_MAX 1
| #define HAVE_EILSEQ 1
| #define HAVE_WCHAR_T 1
| #define SIZEOF_WCHAR_T 4
| #define SIZEOF_INT 4
| #define SIZEOF_LONG 4
| #define MAJOR_IN_SYSMACROS 1
| #define HAVE_FSEEKO 1
| #define LSTAT_FOLLOWS_SLASHED_SYMLINK 1
| #define HAVE_LSTAT_EMPTY_STRING_BUG 1
| #define HAVE_STAT_EMPTY_STRING_BUG 1
| #define HAVE_DECL_STRERROR_R 1
| #define HAVE_STRERROR_R 1
| #define STRERROR_R_CHAR_P 1
| #define HAVE_STRFTIME 1
| #define HAVE_VPRINTF 1
| #define HAVE_ARC4RANDOM_BUF 1
| #define HAVE_CHOWN 1
| #define HAVE_CHROOT 1
| #define HAVE_CTIME_R 1
| #define HAVE_FCHDIR 1
| #define HAVE_FCHMOD 1
| #define HAVE_FCHOWN 1
| #define HAVE_FCNTL 1
| #define HAVE_FDOPENDIR 1
| #define HAVE_FNMATCH 1
| #define HAVE_FORK 1
| #define HAVE_FSTAT 1
| #define HAVE_FSTATAT 1
| #define HAVE_FSTATFS 1
| #define HAVE_FSTATVFS 1
| #define HAVE_FTRUNCATE 1
| #define HAVE_FUTIMENS 1
| #define HAVE_FUTIMES 1
| #define HAVE_FUTIMESAT 1
| #define HAVE_GETEUID 1
| #define HAVE_GETLINE 1
| #define HAVE_GETPID 1
| #define HAVE_GETGRGID_R 1
| #define HAVE_GETGRNAM_R 1
| #define HAVE_GETPWNAM_R 1
| #define HAVE_GETPWUID_R 1
| #define HAVE_GMTIME_R 1
| #define HAVE_LCHMOD 1
| #define HAVE_LCHOWN 1
| #define HAVE_LINK 1
| #define HAVE_LINKAT 1
| #define HAVE_LOCALTIME_R 1
| #define HAVE_LSTAT 1
| #define HAVE_LUTIMES 1
| #define HAVE_MBRTOWC 1
| #define HAVE_MEMMOVE 1
| #define HAVE_MEMSET 1
| #define HAVE_MKDIR 1
| #define HAVE_MKFIFO 1
| #define HAVE_MKNOD 1
| #define HAVE_MKSTEMP 1
| #define HAVE_NL_LANGINFO 1
| #define HAVE_OPENAT 1
| #define HAVE_PIPE 1
| #define HAVE_POLL 1
| #define HAVE_POSIX_SPAWNP 1
| #define HAVE_READLINK 1
| #define HAVE_READLINKAT 1
| #define HAVE_SELECT 1
| #define HAVE_SETENV 1
| #define HAVE_SETLOCALE 1
| #define HAVE_SIGACTION 1
| #define HAVE_STATFS 1
| #define HAVE_STATVFS 1
| #define HAVE_STRCHR 1
| #define HAVE_STRDUP 1
| #define HAVE_STRERROR 1
| #define HAVE_STRNLEN 1
| #define HAVE_STRRCHR 1
| #define HAVE_SYMLINK 1
| #define HAVE_TIMEGM 1
| #define HAVE_TZSET 1
| #define HAVE_UNLINKAT 1
| #define HAVE_UNSETENV 1
| #define HAVE_UTIME 1
| #define HAVE_UTIMENSAT 1
| #define HAVE_UTIMES 1
| #define HAVE_VFORK 1
| #define HAVE_WCRTOMB 1
| #define HAVE_WCSCMP 1
| #define HAVE_WCSCPY 1
| #define HAVE_WCSLEN 1
| #define HAVE_WCTOMB 1
| #define HAVE_WMEMCMP 1
| #define HAVE_WMEMCPY 1
| #define HAVE_WMEMMOVE 1
| #define HAVE_READDIR_R 1
| #define HAVE_DIRFD 1
| /* end confdefs.h.  */
| 
| #define ARCHIVE_SHA384_COMPILE_TEST
| #define ARCHIVE_CRYPTO_SHA384_LIBC2
| #define PLATFORM_CONFIG_H "check_crypto_md.h"
| 
| /*-
| * Copyright (c) 2003-2007 Tim Kientzle
| * Copyright (c) 2011 Andres Mejia
| * Copyright (c) 2011 Michihiro NAKAJIMA
| * All rights reserved.
| *
| * Redistribution and use in source and binary forms, with or without
| * modification, are permitted provided that the following conditions
| * are met:
| * 1. Redistributions of source code must retain the above copyright
| *    notice, this list of conditions and the following disclaimer.
| * 2. Redistributions in binary form must reproduce the above copyright
| *    notice, this list of conditions and the following disclaimer in the
| *    documentation and/or other materials provided with the distribution.
| *
| * THIS SOFTWARE IS PROVIDED BY THE AUTHOR(S) ``AS IS'' AND ANY EXPRESS OR
| * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
| * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
| * IN NO EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY DIRECT, INDIRECT,
| * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
| * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
| * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
| * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
| * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
| * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
| */
| 
| #include "archive_platform.h"
| 
| #include "archive.h"
| #include "archive_digest_private.h"
| 
| /* In particular, force the configure probe to break if it tries
|  * to test a combination of OpenSSL and libmd. */
| #if defined(ARCHIVE_CRYPTO_OPENSSL) && defined(ARCHIVE_CRYPTO_LIBMD)
| #error Cannot use both OpenSSL and libmd.
| #endif
| 
| /* Common in other bcrypt implementations, but missing from VS2008. */
| #ifndef BCRYPT_SUCCESS
| #define BCRYPT_SUCCESS(r) ((NTSTATUS)(r) == STATUS_SUCCESS)
| #endif
| 
| /*
|  * Message digest functions for Windows platform.
|  */
| #if defined(ARCHIVE_CRYPTO_MD5_WIN)    ||\
| 	defined(ARCHIVE_CRYPTO_SHA1_WIN)   ||\
| 	defined(ARCHIVE_CRYPTO_SHA256_WIN) ||\
| 	defined(ARCHIVE_CRYPTO_SHA384_WIN) ||\
| 	defined(ARCHIVE_CRYPTO_SHA512_WIN)
| 
| /*
|  * Initialize a Message digest.
|  */
| #if defined(HAVE_BCRYPT_H) && _WIN32_WINNT >= _WIN32_WINNT_VISTA
| static int
| win_crypto_init(Digest_CTX *ctx, const WCHAR *algo)
| {
| 	NTSTATUS status;
| 	ctx->valid = 0;
| 
| 	status = BCryptOpenAlgorithmProvider(&ctx->hAlg, algo, NULL, 0);
| 	if (!BCRYPT_SUCCESS(status))
| 		return (ARCHIVE_FAILED);
| 	status = BCryptCreateHash(ctx->hAlg, &ctx->hHash, NULL, 0, NULL, 0, 0);
| 	if (!BCRYPT_SUCCESS(status)) {
| 		BCryptCloseAlgorithmProvider(ctx->hAlg, 0);
| 		return (ARCHIVE_FAILED);
| 	}
| 
| 	ctx->valid = 1;
| 	return (ARCHIVE_OK);
| }
| #else
| static int
| win_crypto_init(Digest_CTX *ctx, DWORD prov, ALG_ID algId)
| {
| 
| 	ctx->valid = 0;
| 	if (!CryptAcquireContext(&ctx->cryptProv, NULL, NULL,
| 	    prov, CRYPT_VERIFYCONTEXT)) {
| 		if (GetLastError() != (DWORD)NTE_BAD_KEYSET)
| 			return (ARCHIVE_FAILED);
| 		if (!CryptAcquireContext(&ctx->cryptProv, NULL, NULL,
| 		    prov, CRYPT_NEWKEYSET))
| 			return (ARCHIVE_FAILED);
| 	}
| 
| 	if (!CryptCreateHash(ctx->cryptProv, algId, 0, 0, &ctx->hash)) {
| 		CryptReleaseContext(ctx->cryptProv, 0);
| 		return (ARCHIVE_FAILED);
| 	}
| 
| 	ctx->valid = 1;
| 	return (ARCHIVE_OK);
| }
| #endif
| 
| /*
|  * Update a Message digest.
|  */
| static int
| win_crypto_Update(Digest_CTX *ctx, const unsigned char *buf, size_t len)
| {
| 
| 	if (!ctx->valid)
| 		return (ARCHIVE_FAILED);
| 
| #if defined(HAVE_BCRYPT_H) && _WIN32_WINNT >= _WIN32_WINNT_VISTA
| 	BCryptHashData(ctx->hHash,
| 		      (PUCHAR)(uintptr_t)buf,
| 		      (ULONG)len, 0);
| #else
| 	CryptHashData(ctx->hash,
| 		      (unsigned char *)(uintptr_t)buf,
| 		      (DWORD)len, 0);
| #endif
| 	return (ARCHIVE_OK);
| }
| 
| static int
| win_crypto_Final(unsigned char *buf, size_t bufsize, Digest_CTX *ctx)
| {
| #if !(defined(HAVE_BCRYPT_H) && _WIN32_WINNT >= _WIN32_WINNT_VISTA)
| 	DWORD siglen = (DWORD)bufsize;
| #endif
| 
| 	if (!ctx->valid)
| 		return (ARCHIVE_FAILED);
| 
| #if defined(HAVE_BCRYPT_H) && _WIN32_WINNT >= _WIN32_WINNT_VISTA
| 	BCryptFinishHash(ctx->hHash, buf, (ULONG)bufsize, 0);
| 	BCryptDestroyHash(ctx->hHash);
| 	BCryptCloseAlgorithmProvider(ctx->hAlg, 0);
| #else
| 	CryptGetHashParam(ctx->hash, HP_HASHVAL, buf, &siglen, 0);
| 	CryptDestroyHash(ctx->hash);
| 	CryptReleaseContext(ctx->cryptProv, 0);
| #endif
| 	ctx->valid = 0;
| 	return (ARCHIVE_OK);
| }
| 
| #endif /* defined(ARCHIVE_CRYPTO_*_WIN) */
| 
| 
| /* MD5 implementations */
| #if defined(ARCHIVE_CRYPTO_MD5_LIBC)
| 
| static int
| __archive_md5init(archive_md5_ctx *ctx)
| {
|   MD5Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5update(archive_md5_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   MD5Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5final(archive_md5_ctx *ctx, void *md)
| {
|   MD5Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_MD5_LIBMD)
| 
| static int
| __archive_md5init(archive_md5_ctx *ctx)
| {
|   MD5Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5update(archive_md5_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   MD5Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5final(archive_md5_ctx *ctx, void *md)
| {
|   MD5Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_MD5_LIBSYSTEM)
| 
| static int
| __archive_md5init(archive_md5_ctx *ctx)
| {
|   CC_MD5_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5update(archive_md5_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   CC_MD5_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5final(archive_md5_ctx *ctx, void *md)
| {
|   CC_MD5_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_MD5_MBEDTLS)
| 
| static int
| __archive_md5init(archive_md5_ctx *ctx)
| {
|   mbedtls_md5_init(ctx);
|   if (mbedtls_md5_starts_ret(ctx) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_md5update(archive_md5_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   if (mbedtls_md5_update_ret(ctx, indata, insize) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_md5final(archive_md5_ctx *ctx, void *md)
| {
|   if (mbedtls_md5_finish_ret(ctx, md) == 0) {
|     mbedtls_md5_free(ctx);
|     return (ARCHIVE_OK);
|   } else {
|     mbedtls_md5_free(ctx);
|     return (ARCHIVE_FATAL);
|   }
| }
| 
| #elif defined(ARCHIVE_CRYPTO_MD5_NETTLE)
| 
| static int
| __archive_md5init(archive_md5_ctx *ctx)
| {
|   md5_init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5update(archive_md5_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   md5_update(ctx, insize, indata);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5final(archive_md5_ctx *ctx, void *md)
| {
|   md5_digest(ctx, MD5_DIGEST_SIZE, md);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_MD5_OPENSSL)
| 
| static int
| __archive_md5init(archive_md5_ctx *ctx)
| {
|   if ((*ctx = EVP_MD_CTX_new()) == NULL)
| 	return (ARCHIVE_FAILED);
|   if (!EVP_DigestInit(*ctx, EVP_md5()))
| 	return (ARCHIVE_FAILED);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5update(archive_md5_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   EVP_DigestUpdate(*ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5final(archive_md5_ctx *ctx, void *md)
| {
|   /* HACK: archive_write_set_format_xar.c is finalizing empty contexts, so
|    * this is meant to cope with that. Real fix is probably to fix
|    * archive_write_set_format_xar.c
|    */
|   if (*ctx) {
|     EVP_DigestFinal(*ctx, md, NULL);
|     EVP_MD_CTX_free(*ctx);
|     *ctx = NULL;
|   }
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_MD5_WIN)
| 
| static int
| __archive_md5init(archive_md5_ctx *ctx)
| {
| #if defined(HAVE_BCRYPT_H) && _WIN32_WINNT >= _WIN32_WINNT_VISTA
|   return (win_crypto_init(ctx, BCRYPT_MD5_ALGORITHM));
| #else
|   return (win_crypto_init(ctx, PROV_RSA_FULL, CALG_MD5));
| #endif
| }
| 
| static int
| __archive_md5update(archive_md5_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   return (win_crypto_Update(ctx, indata, insize));
| }
| 
| static int
| __archive_md5final(archive_md5_ctx *ctx, void *md)
| {
|   return (win_crypto_Final(md, 16, ctx));
| }
| 
| #else
| 
| static int
| __archive_md5init(archive_md5_ctx *ctx)
| {
| 	(void)ctx; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_md5update(archive_md5_ctx *ctx, const void *indata,
|     size_t insize)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)indata; /* UNUSED */
| 	(void)insize; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_md5final(archive_md5_ctx *ctx, void *md)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)md; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| #endif
| 
| /* RIPEMD160 implementations */
| #if defined(ARCHIVE_CRYPTO_RMD160_LIBC)
| 
| static int
| __archive_ripemd160init(archive_rmd160_ctx *ctx)
| {
|   RMD160Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   RMD160Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md)
| {
|   RMD160Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_RMD160_LIBMD)
| 
| static int
| __archive_ripemd160init(archive_rmd160_ctx *ctx)
| {
|   RIPEMD160_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   RIPEMD160_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md)
| {
|   RIPEMD160_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_RMD160_MBEDTLS)
| 
| static int
| __archive_ripemd160init(archive_rmd160_ctx *ctx)
| {
|   mbedtls_ripemd160_init(ctx);
|   if (mbedtls_ripemd160_starts_ret(ctx) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   if (mbedtls_ripemd160_update_ret(ctx, indata, insize) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md)
| {
|   if (mbedtls_ripemd160_finish_ret(ctx, md) == 0) {
|     mbedtls_ripemd160_free(ctx);
|     return (ARCHIVE_OK);
|   } else {
|     mbedtls_ripemd160_free(ctx);
|     return (ARCHIVE_FATAL);
|   }
| }
| 
| #elif defined(ARCHIVE_CRYPTO_RMD160_NETTLE)
| 
| static int
| __archive_ripemd160init(archive_rmd160_ctx *ctx)
| {
|   ripemd160_init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   ripemd160_update(ctx, insize, indata);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md)
| {
|   ripemd160_digest(ctx, RIPEMD160_DIGEST_SIZE, md);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_RMD160_OPENSSL)
| 
| static int
| __archive_ripemd160init(archive_rmd160_ctx *ctx)
| {
|   if ((*ctx = EVP_MD_CTX_new()) == NULL)
| 	return (ARCHIVE_FAILED);
|   if (!EVP_DigestInit(*ctx, EVP_ripemd160()))
| 	return (ARCHIVE_FAILED);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   EVP_DigestUpdate(*ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md)
| {
|   if (*ctx) {
|     EVP_DigestFinal(*ctx, md, NULL);
|     EVP_MD_CTX_free(*ctx);
|     *ctx = NULL;
|   }
|   return (ARCHIVE_OK);
| }
| 
| #else
| 
| static int
| __archive_ripemd160init(archive_rmd160_ctx *ctx)
| {
| 	(void)ctx; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata,
|     size_t insize)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)indata; /* UNUSED */
| 	(void)insize; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)md; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| #endif
| 
| /* SHA1 implementations */
| #if defined(ARCHIVE_CRYPTO_SHA1_LIBC)
| 
| static int
| __archive_sha1init(archive_sha1_ctx *ctx)
| {
|   SHA1Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1update(archive_sha1_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA1Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1final(archive_sha1_ctx *ctx, void *md)
| {
|   SHA1Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA1_LIBMD)
| 
| static int
| __archive_sha1init(archive_sha1_ctx *ctx)
| {
|   SHA1_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1update(archive_sha1_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA1_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1final(archive_sha1_ctx *ctx, void *md)
| {
|   SHA1_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA1_LIBSYSTEM)
| 
| static int
| __archive_sha1init(archive_sha1_ctx *ctx)
| {
|   CC_SHA1_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1update(archive_sha1_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   CC_SHA1_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1final(archive_sha1_ctx *ctx, void *md)
| {
|   CC_SHA1_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA1_MBEDTLS)
| 
| static int
| __archive_sha1init(archive_sha1_ctx *ctx)
| {
|   mbedtls_sha1_init(ctx);
|   if (mbedtls_sha1_starts_ret(ctx) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_sha1update(archive_sha1_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   if (mbedtls_sha1_update_ret(ctx, indata, insize) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_sha1final(archive_sha1_ctx *ctx, void *md)
| {
|   if (mbedtls_sha1_finish_ret(ctx, md) == 0) {
|     mbedtls_sha1_free(ctx);
|     return (ARCHIVE_OK);
|   } else {
|     mbedtls_sha1_free(ctx);
|     return (ARCHIVE_FATAL);
|   }
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA1_NETTLE)
| 
| static int
| __archive_sha1init(archive_sha1_ctx *ctx)
| {
|   sha1_init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1update(archive_sha1_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   sha1_update(ctx, insize, indata);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1final(archive_sha1_ctx *ctx, void *md)
| {
|   sha1_digest(ctx, SHA1_DIGEST_SIZE, md);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA1_OPENSSL)
| 
| static int
| __archive_sha1init(archive_sha1_ctx *ctx)
| {
|   if ((*ctx = EVP_MD_CTX_new()) == NULL)
| 	return (ARCHIVE_FAILED);
|   if (!EVP_DigestInit(*ctx, EVP_sha1()))
| 	return (ARCHIVE_FAILED);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1update(archive_sha1_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   EVP_DigestUpdate(*ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1final(archive_sha1_ctx *ctx, void *md)
| {
|   /* HACK: archive_write_set_format_xar.c is finalizing empty contexts, so
|    * this is meant to cope with that. Real fix is probably to fix
|    * archive_write_set_format_xar.c
|    */
|   if (*ctx) {
|     EVP_DigestFinal(*ctx, md, NULL);
|     EVP_MD_CTX_free(*ctx);
|     *ctx = NULL;
|   }
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA1_WIN)
| 
| static int
| __archive_sha1init(archive_sha1_ctx *ctx)
| {
| #if defined(HAVE_BCRYPT_H) && _WIN32_WINNT >= _WIN32_WINNT_VISTA
|   return (win_crypto_init(ctx, BCRYPT_SHA1_ALGORITHM));
| #else
|   return (win_crypto_init(ctx, PROV_RSA_FULL, CALG_SHA1));
| #endif
| }
| 
| static int
| __archive_sha1update(archive_sha1_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   return (win_crypto_Update(ctx, indata, insize));
| }
| 
| static int
| __archive_sha1final(archive_sha1_ctx *ctx, void *md)
| {
|   return (win_crypto_Final(md, 20, ctx));
| }
| 
| #else
| 
| static int
| __archive_sha1init(archive_sha1_ctx *ctx)
| {
| 	(void)ctx; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_sha1update(archive_sha1_ctx *ctx, const void *indata,
|     size_t insize)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)indata; /* UNUSED */
| 	(void)insize; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_sha1final(archive_sha1_ctx *ctx, void *md)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)md; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| #endif
| 
| /* SHA256 implementations */
| #if defined(ARCHIVE_CRYPTO_SHA256_LIBC)
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
|   SHA256_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA256_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
|   SHA256_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA256_LIBC2)
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
|   SHA256Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA256Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
|   SHA256Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA256_LIBC3)
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
|   SHA256Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA256Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
|   SHA256Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA256_LIBMD)
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
|   SHA256_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA256_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
|   SHA256_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA256_LIBSYSTEM)
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
|   CC_SHA256_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   CC_SHA256_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
|   CC_SHA256_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA256_MBEDTLS)
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
|   mbedtls_sha256_init(ctx);
|   if (mbedtls_sha256_starts_ret(ctx, 0) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   if (mbedtls_sha256_update_ret(ctx, indata, insize) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
|   if (mbedtls_sha256_finish_ret(ctx, md) == 0) {
|     mbedtls_sha256_free(ctx);
|     return (ARCHIVE_OK);
|   } else {
|     mbedtls_sha256_free(ctx);
|     return (ARCHIVE_FATAL);
|   }
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA256_NETTLE)
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
|   sha256_init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   sha256_update(ctx, insize, indata);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
|   sha256_digest(ctx, SHA256_DIGEST_SIZE, md);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA256_OPENSSL)
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
|   if ((*ctx = EVP_MD_CTX_new()) == NULL)
| 	return (ARCHIVE_FAILED);
|   if (!EVP_DigestInit(*ctx, EVP_sha256()))
| 	return (ARCHIVE_FAILED);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   EVP_DigestUpdate(*ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
|   if (*ctx) {
|     EVP_DigestFinal(*ctx, md, NULL);
|     EVP_MD_CTX_free(*ctx);
|     *ctx = NULL;
|   }
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA256_WIN)
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
| #if defined(HAVE_BCRYPT_H) && _WIN32_WINNT >= _WIN32_WINNT_VISTA
|   return (win_crypto_init(ctx, BCRYPT_SHA256_ALGORITHM));
| #else
|   return (win_crypto_init(ctx, PROV_RSA_AES, CALG_SHA_256));
| #endif
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   return (win_crypto_Update(ctx, indata, insize));
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
|   return (win_crypto_Final(md, 32, ctx));
| }
| 
| #else
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
| 	(void)ctx; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)indata; /* UNUSED */
| 	(void)insize; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)md; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| #endif
| 
| /* SHA384 implementations */
| #if defined(ARCHIVE_CRYPTO_SHA384_LIBC)
| 
| static int
| __archive_sha384init(archive_sha384_ctx *ctx)
| {
|   SHA384_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384update(archive_sha384_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA384_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384final(archive_sha384_ctx *ctx, void *md)
| {
|   SHA384_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA384_LIBC2)
| 
| static int
| __archive_sha384init(archive_sha384_ctx *ctx)
| {
|   SHA384Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384update(archive_sha384_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA384Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384final(archive_sha384_ctx *ctx, void *md)
| {
|   SHA384Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA384_LIBC3)
| 
| static int
| __archive_sha384init(archive_sha384_ctx *ctx)
| {
|   SHA384Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384update(archive_sha384_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA384Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384final(archive_sha384_ctx *ctx, void *md)
| {
|   SHA384Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA384_LIBSYSTEM)
| 
| static int
| __archive_sha384init(archive_sha384_ctx *ctx)
| {
|   CC_SHA384_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384update(archive_sha384_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   CC_SHA384_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384final(archive_sha384_ctx *ctx, void *md)
| {
|   CC_SHA384_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA384_MBEDTLS)
| 
| static int
| __archive_sha384init(archive_sha384_ctx *ctx)
| {
|   mbedtls_sha512_init(ctx);
|   if (mbedtls_sha512_starts_ret(ctx, 1) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_sha384update(archive_sha384_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   if (mbedtls_sha512_update_ret(ctx, indata, insize) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_sha384final(archive_sha384_ctx *ctx, void *md)
| {
|   if (mbedtls_sha512_finish_ret(ctx, md) == 0) {
|     mbedtls_sha512_free(ctx);
|     return (ARCHIVE_OK);
|   } else {
|     mbedtls_sha512_free(ctx);
|     return (ARCHIVE_FATAL);
|   }
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA384_NETTLE)
| 
| static int
| __archive_sha384init(archive_sha384_ctx *ctx)
| {
|   sha384_init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384update(archive_sha384_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   sha384_update(ctx, insize, indata);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384final(archive_sha384_ctx *ctx, void *md)
| {
|   sha384_digest(ctx, SHA384_DIGEST_SIZE, md);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA384_OPENSSL)
| 
| static int
| __archive_sha384init(archive_sha384_ctx *ctx)
| {
|   if ((*ctx = EVP_MD_CTX_new()) == NULL)
| 	return (ARCHIVE_FAILED);
|   if (!EVP_DigestInit(*ctx, EVP_sha384()))
| 	return (ARCHIVE_FAILED);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384update(archive_sha384_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   EVP_DigestUpdate(*ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384final(archive_sha384_ctx *ctx, void *md)
| {
|   if (*ctx) {
|     EVP_DigestFinal(*ctx, md, NULL);
|     EVP_MD_CTX_free(*ctx);
|     *ctx = NULL;
|   }
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA384_WIN)
| 
| static int
| __archive_sha384init(archive_sha384_ctx *ctx)
| {
| #if defined(HAVE_BCRYPT_H) && _WIN32_WINNT >= _WIN32_WINNT_VISTA
|   return (win_crypto_init(ctx, BCRYPT_SHA384_ALGORITHM));
| #else
|   return (win_crypto_init(ctx, PROV_RSA_AES, CALG_SHA_384));
| #endif
| }
| 
| static int
| __archive_sha384update(archive_sha384_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   return (win_crypto_Update(ctx, indata, insize));
| }
| 
| static int
| __archive_sha384final(archive_sha384_ctx *ctx, void *md)
| {
|   return (win_crypto_Final(md, 48, ctx));
| }
| 
| #else
| 
| static int
| __archive_sha384init(archive_sha384_ctx *ctx)
| {
| 	(void)ctx; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_sha384update(archive_sha384_ctx *ctx, const void *indata,
|     size_t insize)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)indata; /* UNUSED */
| 	(void)insize; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_sha384final(archive_sha384_ctx *ctx, void *md)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)md; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| #endif
| 
| /* SHA512 implementations */
| #if defined(ARCHIVE_CRYPTO_SHA512_LIBC)
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
|   SHA512_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA512_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
|   SHA512_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA512_LIBC2)
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
|   SHA512Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA512Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
|   SHA512Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA512_LIBC3)
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
|   SHA512Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA512Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
|   SHA512Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA512_LIBMD)
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
|   SHA512_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA512_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
|   SHA512_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA512_LIBSYSTEM)
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
|   CC_SHA512_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   CC_SHA512_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
|   CC_SHA512_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA512_MBEDTLS)
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
|   mbedtls_sha512_init(ctx);
|   if (mbedtls_sha512_starts_ret(ctx, 0) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   if (mbedtls_sha512_update_ret(ctx, indata, insize) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
|   if (mbedtls_sha512_finish_ret(ctx, md) == 0) {
|     mbedtls_sha512_free(ctx);
|     return (ARCHIVE_OK);
|   } else {
|     mbedtls_sha512_free(ctx);
|     return (ARCHIVE_FATAL);
|   }
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA512_NETTLE)
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
|   sha512_init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   sha512_update(ctx, insize, indata);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
|   sha512_digest(ctx, SHA512_DIGEST_SIZE, md);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA512_OPENSSL)
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
|   if ((*ctx = EVP_MD_CTX_new()) == NULL)
| 	return (ARCHIVE_FAILED);
|   if (!EVP_DigestInit(*ctx, EVP_sha512()))
| 	return (ARCHIVE_FAILED);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   EVP_DigestUpdate(*ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
|   if (*ctx) {
|     EVP_DigestFinal(*ctx, md, NULL);
|     EVP_MD_CTX_free(*ctx);
|     *ctx = NULL;
|   }
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA512_WIN)
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
| #if defined(HAVE_BCRYPT_H) && _WIN32_WINNT >= _WIN32_WINNT_VISTA
|   return (win_crypto_init(ctx, BCRYPT_SHA512_ALGORITHM));
| #else
|   return (win_crypto_init(ctx, PROV_RSA_AES, CALG_SHA_512));
| #endif
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   return (win_crypto_Update(ctx, indata, insize));
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
|   return (win_crypto_Final(md, 64, ctx));
| }
| 
| #else
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
| 	(void)ctx; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)indata; /* UNUSED */
| 	(void)insize; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)md; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| #endif
| 
| /* NOTE: Message Digest functions are set based on availability and by the
|  * following order of preference.
|  * 1. libc
|  * 2. libc2
|  * 3. libc3
|  * 4. libSystem
|  * 5. Nettle
|  * 6. OpenSSL
|  * 7. libmd
|  * 8. Windows API
|  */
| const struct archive_digest __archive_digest =
| {
| /* MD5 */
|   &__archive_md5init,
|   &__archive_md5update,
|   &__archive_md5final,
| 
| /* RIPEMD160 */
|   &__archive_ripemd160init,
|   &__archive_ripemd160update,
|   &__archive_ripemd160final,
| 
| /* SHA1 */
|   &__archive_sha1init,
|   &__archive_sha1update,
|   &__archive_sha1final,
| 
| /* SHA256 */
|   &__archive_sha256init,
|   &__archive_sha256update,
|   &__archive_sha256final,
| 
| /* SHA384 */
|   &__archive_sha384init,
|   &__archive_sha384update,
|   &__archive_sha384final,
| 
| /* SHA512 */
|   &__archive_sha512init,
|   &__archive_sha512update,
|   &__archive_sha512final
| };
| 
| int
| main(int argc, char **argv)
| {
|   archive_sha384_ctx ctx;
|   archive_sha384_init(&ctx);
|   archive_sha384_update(&ctx, *argv, argc);
|   archive_sha384_final(&ctx, NULL);
|   return 0;
| }
| 
configure:18175: result: no
configure:18189: checking support for ARCHIVE_CRYPTO_SHA384_LIBC3
configure:18211: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -o conftest -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2  -I. -I. -I./libarchive  conftest.c -lzstd -llz4 -lz  -L/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/lib -lxml2  >&5
In file included from conftest.c:255:
./libarchive/archive_digest_private.h:81:10: fatal error: sha2.h: No such file or directory
   81 | #include <sha2.h>
      |          ^~~~~~~~
compilation terminated.
configure:18211: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "libarchive"
| #define PACKAGE_TARNAME "libarchive"
| #define PACKAGE_VERSION "3.7.2"
| #define PACKAGE_STRING "libarchive 3.7.2"
| #define PACKAGE_BUGREPORT "libarchive-discuss@googlegroups.com"
| #define PACKAGE_URL ""
| #define PACKAGE "libarchive"
| #define VERSION "3.7.2"
| #define __LIBARCHIVE_CONFIG_H_INCLUDED 1
| #define LIBARCHIVE_VERSION_STRING "3.7.2"
| #define LIBARCHIVE_VERSION_NUMBER "3007002"
| #define BSDCPIO_VERSION_STRING "3.7.2"
| #define BSDTAR_VERSION_STRING "3.7.2"
| #define BSDCAT_VERSION_STRING "3.7.2"
| #define BSDUNZIP_VERSION_STRING "3.7.2"
| #define HAVE_STDIO_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_SYS_TIME_H 1
| #define STDC_HEADERS 1
| #define _ALL_SOURCE 1
| #define _DARWIN_C_SOURCE 1
| #define _GNU_SOURCE 1
| #define _HPUX_ALT_XOPEN_SOCKET_API 1
| #define _NETBSD_SOURCE 1
| #define _OPENBSD_SOURCE 1
| #define _POSIX_PTHREAD_SEMANTICS 1
| #define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1
| #define __STDC_WANT_IEC_60559_BFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_DFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1
| #define __STDC_WANT_IEC_60559_TYPES_EXT__ 1
| #define __STDC_WANT_LIB_EXT2__ 1
| #define __STDC_WANT_MATH_SPEC_FUNCS__ 1
| #define _TANDEM_SOURCE 1
| #define __EXTENSIONS__ 1
| #define HAVE_DLFCN_H 1
| #define LT_OBJDIR ".libs/"
| #define HAVE_DIRENT_H 1
| #define HAVE_SYS_WAIT_H 1
| #define HAVE_CTYPE_H 1
| #define HAVE_ERRNO_H 1
| #define HAVE_FCNTL_H 1
| #define HAVE_FNMATCH_H 1
| #define HAVE_GRP_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_LANGINFO_H 1
| #define HAVE_LIMITS_H 1
| #define HAVE_LINUX_FIEMAP_H 1
| #define HAVE_LINUX_FS_H 1
| #define HAVE_LINUX_MAGIC_H 1
| #define HAVE_LINUX_TYPES_H 1
| #define HAVE_WORKING_FS_IOC_GETFLAGS 1
| #define HAVE_LOCALE_H 1
| #define HAVE_PATHS_H 1
| #define HAVE_POLL_H 1
| #define HAVE_PTHREAD_H 1
| #define HAVE_PWD_H 1
| #define HAVE_SIGNAL_H 1
| #define HAVE_SPAWN_H 1
| #define HAVE_STDARG_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_SYS_CDEFS_H 1
| #define HAVE_SYS_IOCTL_H 1
| #define HAVE_SYS_MOUNT_H 1
| #define HAVE_SYS_QUEUE_H 1
| #define HAVE_SYS_PARAM_H 1
| #define HAVE_SYS_POLL_H 1
| #define HAVE_SYS_SELECT_H 1
| #define HAVE_SYS_STATFS_H 1
| #define HAVE_SYS_STATVFS_H 1
| #define HAVE_SYS_SYSMACROS_H 1
| #define HAVE_SYS_TIME_H 1
| #define HAVE_SYS_UTSNAME_H 1
| #define HAVE_SYS_VFS_H 1
| #define HAVE_SYS_XATTR_H 1
| #define HAVE_TIME_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_UTIME_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_WCTYPE_H 1
| #define HAVE_ZLIB_H 1
| #define HAVE_LIBZ 1
| #define HAVE_ICONV 1
| #define ICONV_CONST 
| #define HAVE_ICONV_H 1
| #define HAVE_LZ4_H 1
| #define HAVE_LZ4HC_H 1
| #define HAVE_LIBLZ4 1
| #define HAVE_ZSTD_H 1
| #define HAVE_LIBZSTD 1
| #define HAVE_LIBZSTD_COMPRESSOR 1
| #define HAVE_LIBXML_XMLREADER_H 1
| #define HAVE_LIBXML_XMLWRITER_H 1
| #define HAVE_REGEX_H 1
| #define HAVE_STRUCT_TM_TM_GMTOFF 1
| #define HAVE_STRUCT_STAT_ST_MTIM_TV_NSEC 1
| #define HAVE_STRUCT_STAT_ST_BLKSIZE 1
| #define HAVE_UINTMAX_T 1
| #define HAVE_UNSIGNED_LONG_LONG 1
| #define HAVE_UNSIGNED_LONG_LONG_INT 1
| #define HAVE_LONG_LONG_INT 1
| #define HAVE_INTMAX_T 1
| #define HAVE_UINTMAX_T 1
| #define HAVE_DECL_SIZE_MAX 1
| #define HAVE_DECL_INT32_MAX 1
| #define HAVE_DECL_INT32_MIN 1
| #define HAVE_DECL_INT64_MAX 1
| #define HAVE_DECL_INT64_MIN 1
| #define HAVE_DECL_UINT64_MAX 1
| #define HAVE_DECL_UINT32_MAX 1
| #define HAVE_DECL_INTMAX_MAX 1
| #define HAVE_DECL_INTMAX_MIN 1
| #define HAVE_DECL_UINTMAX_MAX 1
| #define HAVE_DECL_SSIZE_MAX 1
| #define HAVE_EILSEQ 1
| #define HAVE_WCHAR_T 1
| #define SIZEOF_WCHAR_T 4
| #define SIZEOF_INT 4
| #define SIZEOF_LONG 4
| #define MAJOR_IN_SYSMACROS 1
| #define HAVE_FSEEKO 1
| #define LSTAT_FOLLOWS_SLASHED_SYMLINK 1
| #define HAVE_LSTAT_EMPTY_STRING_BUG 1
| #define HAVE_STAT_EMPTY_STRING_BUG 1
| #define HAVE_DECL_STRERROR_R 1
| #define HAVE_STRERROR_R 1
| #define STRERROR_R_CHAR_P 1
| #define HAVE_STRFTIME 1
| #define HAVE_VPRINTF 1
| #define HAVE_ARC4RANDOM_BUF 1
| #define HAVE_CHOWN 1
| #define HAVE_CHROOT 1
| #define HAVE_CTIME_R 1
| #define HAVE_FCHDIR 1
| #define HAVE_FCHMOD 1
| #define HAVE_FCHOWN 1
| #define HAVE_FCNTL 1
| #define HAVE_FDOPENDIR 1
| #define HAVE_FNMATCH 1
| #define HAVE_FORK 1
| #define HAVE_FSTAT 1
| #define HAVE_FSTATAT 1
| #define HAVE_FSTATFS 1
| #define HAVE_FSTATVFS 1
| #define HAVE_FTRUNCATE 1
| #define HAVE_FUTIMENS 1
| #define HAVE_FUTIMES 1
| #define HAVE_FUTIMESAT 1
| #define HAVE_GETEUID 1
| #define HAVE_GETLINE 1
| #define HAVE_GETPID 1
| #define HAVE_GETGRGID_R 1
| #define HAVE_GETGRNAM_R 1
| #define HAVE_GETPWNAM_R 1
| #define HAVE_GETPWUID_R 1
| #define HAVE_GMTIME_R 1
| #define HAVE_LCHMOD 1
| #define HAVE_LCHOWN 1
| #define HAVE_LINK 1
| #define HAVE_LINKAT 1
| #define HAVE_LOCALTIME_R 1
| #define HAVE_LSTAT 1
| #define HAVE_LUTIMES 1
| #define HAVE_MBRTOWC 1
| #define HAVE_MEMMOVE 1
| #define HAVE_MEMSET 1
| #define HAVE_MKDIR 1
| #define HAVE_MKFIFO 1
| #define HAVE_MKNOD 1
| #define HAVE_MKSTEMP 1
| #define HAVE_NL_LANGINFO 1
| #define HAVE_OPENAT 1
| #define HAVE_PIPE 1
| #define HAVE_POLL 1
| #define HAVE_POSIX_SPAWNP 1
| #define HAVE_READLINK 1
| #define HAVE_READLINKAT 1
| #define HAVE_SELECT 1
| #define HAVE_SETENV 1
| #define HAVE_SETLOCALE 1
| #define HAVE_SIGACTION 1
| #define HAVE_STATFS 1
| #define HAVE_STATVFS 1
| #define HAVE_STRCHR 1
| #define HAVE_STRDUP 1
| #define HAVE_STRERROR 1
| #define HAVE_STRNLEN 1
| #define HAVE_STRRCHR 1
| #define HAVE_SYMLINK 1
| #define HAVE_TIMEGM 1
| #define HAVE_TZSET 1
| #define HAVE_UNLINKAT 1
| #define HAVE_UNSETENV 1
| #define HAVE_UTIME 1
| #define HAVE_UTIMENSAT 1
| #define HAVE_UTIMES 1
| #define HAVE_VFORK 1
| #define HAVE_WCRTOMB 1
| #define HAVE_WCSCMP 1
| #define HAVE_WCSCPY 1
| #define HAVE_WCSLEN 1
| #define HAVE_WCTOMB 1
| #define HAVE_WMEMCMP 1
| #define HAVE_WMEMCPY 1
| #define HAVE_WMEMMOVE 1
| #define HAVE_READDIR_R 1
| #define HAVE_DIRFD 1
| /* end confdefs.h.  */
| 
| #define ARCHIVE_SHA384_COMPILE_TEST
| #define ARCHIVE_CRYPTO_SHA384_LIBC3
| #define PLATFORM_CONFIG_H "check_crypto_md.h"
| 
| /*-
| * Copyright (c) 2003-2007 Tim Kientzle
| * Copyright (c) 2011 Andres Mejia
| * Copyright (c) 2011 Michihiro NAKAJIMA
| * All rights reserved.
| *
| * Redistribution and use in source and binary forms, with or without
| * modification, are permitted provided that the following conditions
| * are met:
| * 1. Redistributions of source code must retain the above copyright
| *    notice, this list of conditions and the following disclaimer.
| * 2. Redistributions in binary form must reproduce the above copyright
| *    notice, this list of conditions and the following disclaimer in the
| *    documentation and/or other materials provided with the distribution.
| *
| * THIS SOFTWARE IS PROVIDED BY THE AUTHOR(S) ``AS IS'' AND ANY EXPRESS OR
| * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
| * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
| * IN NO EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY DIRECT, INDIRECT,
| * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
| * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
| * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
| * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
| * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
| * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
| */
| 
| #include "archive_platform.h"
| 
| #include "archive.h"
| #include "archive_digest_private.h"
| 
| /* In particular, force the configure probe to break if it tries
|  * to test a combination of OpenSSL and libmd. */
| #if defined(ARCHIVE_CRYPTO_OPENSSL) && defined(ARCHIVE_CRYPTO_LIBMD)
| #error Cannot use both OpenSSL and libmd.
| #endif
| 
| /* Common in other bcrypt implementations, but missing from VS2008. */
| #ifndef BCRYPT_SUCCESS
| #define BCRYPT_SUCCESS(r) ((NTSTATUS)(r) == STATUS_SUCCESS)
| #endif
| 
| /*
|  * Message digest functions for Windows platform.
|  */
| #if defined(ARCHIVE_CRYPTO_MD5_WIN)    ||\
| 	defined(ARCHIVE_CRYPTO_SHA1_WIN)   ||\
| 	defined(ARCHIVE_CRYPTO_SHA256_WIN) ||\
| 	defined(ARCHIVE_CRYPTO_SHA384_WIN) ||\
| 	defined(ARCHIVE_CRYPTO_SHA512_WIN)
| 
| /*
|  * Initialize a Message digest.
|  */
| #if defined(HAVE_BCRYPT_H) && _WIN32_WINNT >= _WIN32_WINNT_VISTA
| static int
| win_crypto_init(Digest_CTX *ctx, const WCHAR *algo)
| {
| 	NTSTATUS status;
| 	ctx->valid = 0;
| 
| 	status = BCryptOpenAlgorithmProvider(&ctx->hAlg, algo, NULL, 0);
| 	if (!BCRYPT_SUCCESS(status))
| 		return (ARCHIVE_FAILED);
| 	status = BCryptCreateHash(ctx->hAlg, &ctx->hHash, NULL, 0, NULL, 0, 0);
| 	if (!BCRYPT_SUCCESS(status)) {
| 		BCryptCloseAlgorithmProvider(ctx->hAlg, 0);
| 		return (ARCHIVE_FAILED);
| 	}
| 
| 	ctx->valid = 1;
| 	return (ARCHIVE_OK);
| }
| #else
| static int
| win_crypto_init(Digest_CTX *ctx, DWORD prov, ALG_ID algId)
| {
| 
| 	ctx->valid = 0;
| 	if (!CryptAcquireContext(&ctx->cryptProv, NULL, NULL,
| 	    prov, CRYPT_VERIFYCONTEXT)) {
| 		if (GetLastError() != (DWORD)NTE_BAD_KEYSET)
| 			return (ARCHIVE_FAILED);
| 		if (!CryptAcquireContext(&ctx->cryptProv, NULL, NULL,
| 		    prov, CRYPT_NEWKEYSET))
| 			return (ARCHIVE_FAILED);
| 	}
| 
| 	if (!CryptCreateHash(ctx->cryptProv, algId, 0, 0, &ctx->hash)) {
| 		CryptReleaseContext(ctx->cryptProv, 0);
| 		return (ARCHIVE_FAILED);
| 	}
| 
| 	ctx->valid = 1;
| 	return (ARCHIVE_OK);
| }
| #endif
| 
| /*
|  * Update a Message digest.
|  */
| static int
| win_crypto_Update(Digest_CTX *ctx, const unsigned char *buf, size_t len)
| {
| 
| 	if (!ctx->valid)
| 		return (ARCHIVE_FAILED);
| 
| #if defined(HAVE_BCRYPT_H) && _WIN32_WINNT >= _WIN32_WINNT_VISTA
| 	BCryptHashData(ctx->hHash,
| 		      (PUCHAR)(uintptr_t)buf,
| 		      (ULONG)len, 0);
| #else
| 	CryptHashData(ctx->hash,
| 		      (unsigned char *)(uintptr_t)buf,
| 		      (DWORD)len, 0);
| #endif
| 	return (ARCHIVE_OK);
| }
| 
| static int
| win_crypto_Final(unsigned char *buf, size_t bufsize, Digest_CTX *ctx)
| {
| #if !(defined(HAVE_BCRYPT_H) && _WIN32_WINNT >= _WIN32_WINNT_VISTA)
| 	DWORD siglen = (DWORD)bufsize;
| #endif
| 
| 	if (!ctx->valid)
| 		return (ARCHIVE_FAILED);
| 
| #if defined(HAVE_BCRYPT_H) && _WIN32_WINNT >= _WIN32_WINNT_VISTA
| 	BCryptFinishHash(ctx->hHash, buf, (ULONG)bufsize, 0);
| 	BCryptDestroyHash(ctx->hHash);
| 	BCryptCloseAlgorithmProvider(ctx->hAlg, 0);
| #else
| 	CryptGetHashParam(ctx->hash, HP_HASHVAL, buf, &siglen, 0);
| 	CryptDestroyHash(ctx->hash);
| 	CryptReleaseContext(ctx->cryptProv, 0);
| #endif
| 	ctx->valid = 0;
| 	return (ARCHIVE_OK);
| }
| 
| #endif /* defined(ARCHIVE_CRYPTO_*_WIN) */
| 
| 
| /* MD5 implementations */
| #if defined(ARCHIVE_CRYPTO_MD5_LIBC)
| 
| static int
| __archive_md5init(archive_md5_ctx *ctx)
| {
|   MD5Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5update(archive_md5_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   MD5Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5final(archive_md5_ctx *ctx, void *md)
| {
|   MD5Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_MD5_LIBMD)
| 
| static int
| __archive_md5init(archive_md5_ctx *ctx)
| {
|   MD5Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5update(archive_md5_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   MD5Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5final(archive_md5_ctx *ctx, void *md)
| {
|   MD5Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_MD5_LIBSYSTEM)
| 
| static int
| __archive_md5init(archive_md5_ctx *ctx)
| {
|   CC_MD5_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5update(archive_md5_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   CC_MD5_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5final(archive_md5_ctx *ctx, void *md)
| {
|   CC_MD5_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_MD5_MBEDTLS)
| 
| static int
| __archive_md5init(archive_md5_ctx *ctx)
| {
|   mbedtls_md5_init(ctx);
|   if (mbedtls_md5_starts_ret(ctx) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_md5update(archive_md5_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   if (mbedtls_md5_update_ret(ctx, indata, insize) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_md5final(archive_md5_ctx *ctx, void *md)
| {
|   if (mbedtls_md5_finish_ret(ctx, md) == 0) {
|     mbedtls_md5_free(ctx);
|     return (ARCHIVE_OK);
|   } else {
|     mbedtls_md5_free(ctx);
|     return (ARCHIVE_FATAL);
|   }
| }
| 
| #elif defined(ARCHIVE_CRYPTO_MD5_NETTLE)
| 
| static int
| __archive_md5init(archive_md5_ctx *ctx)
| {
|   md5_init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5update(archive_md5_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   md5_update(ctx, insize, indata);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5final(archive_md5_ctx *ctx, void *md)
| {
|   md5_digest(ctx, MD5_DIGEST_SIZE, md);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_MD5_OPENSSL)
| 
| static int
| __archive_md5init(archive_md5_ctx *ctx)
| {
|   if ((*ctx = EVP_MD_CTX_new()) == NULL)
| 	return (ARCHIVE_FAILED);
|   if (!EVP_DigestInit(*ctx, EVP_md5()))
| 	return (ARCHIVE_FAILED);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5update(archive_md5_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   EVP_DigestUpdate(*ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5final(archive_md5_ctx *ctx, void *md)
| {
|   /* HACK: archive_write_set_format_xar.c is finalizing empty contexts, so
|    * this is meant to cope with that. Real fix is probably to fix
|    * archive_write_set_format_xar.c
|    */
|   if (*ctx) {
|     EVP_DigestFinal(*ctx, md, NULL);
|     EVP_MD_CTX_free(*ctx);
|     *ctx = NULL;
|   }
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_MD5_WIN)
| 
| static int
| __archive_md5init(archive_md5_ctx *ctx)
| {
| #if defined(HAVE_BCRYPT_H) && _WIN32_WINNT >= _WIN32_WINNT_VISTA
|   return (win_crypto_init(ctx, BCRYPT_MD5_ALGORITHM));
| #else
|   return (win_crypto_init(ctx, PROV_RSA_FULL, CALG_MD5));
| #endif
| }
| 
| static int
| __archive_md5update(archive_md5_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   return (win_crypto_Update(ctx, indata, insize));
| }
| 
| static int
| __archive_md5final(archive_md5_ctx *ctx, void *md)
| {
|   return (win_crypto_Final(md, 16, ctx));
| }
| 
| #else
| 
| static int
| __archive_md5init(archive_md5_ctx *ctx)
| {
| 	(void)ctx; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_md5update(archive_md5_ctx *ctx, const void *indata,
|     size_t insize)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)indata; /* UNUSED */
| 	(void)insize; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_md5final(archive_md5_ctx *ctx, void *md)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)md; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| #endif
| 
| /* RIPEMD160 implementations */
| #if defined(ARCHIVE_CRYPTO_RMD160_LIBC)
| 
| static int
| __archive_ripemd160init(archive_rmd160_ctx *ctx)
| {
|   RMD160Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   RMD160Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md)
| {
|   RMD160Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_RMD160_LIBMD)
| 
| static int
| __archive_ripemd160init(archive_rmd160_ctx *ctx)
| {
|   RIPEMD160_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   RIPEMD160_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md)
| {
|   RIPEMD160_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_RMD160_MBEDTLS)
| 
| static int
| __archive_ripemd160init(archive_rmd160_ctx *ctx)
| {
|   mbedtls_ripemd160_init(ctx);
|   if (mbedtls_ripemd160_starts_ret(ctx) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   if (mbedtls_ripemd160_update_ret(ctx, indata, insize) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md)
| {
|   if (mbedtls_ripemd160_finish_ret(ctx, md) == 0) {
|     mbedtls_ripemd160_free(ctx);
|     return (ARCHIVE_OK);
|   } else {
|     mbedtls_ripemd160_free(ctx);
|     return (ARCHIVE_FATAL);
|   }
| }
| 
| #elif defined(ARCHIVE_CRYPTO_RMD160_NETTLE)
| 
| static int
| __archive_ripemd160init(archive_rmd160_ctx *ctx)
| {
|   ripemd160_init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   ripemd160_update(ctx, insize, indata);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md)
| {
|   ripemd160_digest(ctx, RIPEMD160_DIGEST_SIZE, md);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_RMD160_OPENSSL)
| 
| static int
| __archive_ripemd160init(archive_rmd160_ctx *ctx)
| {
|   if ((*ctx = EVP_MD_CTX_new()) == NULL)
| 	return (ARCHIVE_FAILED);
|   if (!EVP_DigestInit(*ctx, EVP_ripemd160()))
| 	return (ARCHIVE_FAILED);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   EVP_DigestUpdate(*ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md)
| {
|   if (*ctx) {
|     EVP_DigestFinal(*ctx, md, NULL);
|     EVP_MD_CTX_free(*ctx);
|     *ctx = NULL;
|   }
|   return (ARCHIVE_OK);
| }
| 
| #else
| 
| static int
| __archive_ripemd160init(archive_rmd160_ctx *ctx)
| {
| 	(void)ctx; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata,
|     size_t insize)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)indata; /* UNUSED */
| 	(void)insize; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)md; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| #endif
| 
| /* SHA1 implementations */
| #if defined(ARCHIVE_CRYPTO_SHA1_LIBC)
| 
| static int
| __archive_sha1init(archive_sha1_ctx *ctx)
| {
|   SHA1Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1update(archive_sha1_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA1Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1final(archive_sha1_ctx *ctx, void *md)
| {
|   SHA1Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA1_LIBMD)
| 
| static int
| __archive_sha1init(archive_sha1_ctx *ctx)
| {
|   SHA1_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1update(archive_sha1_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA1_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1final(archive_sha1_ctx *ctx, void *md)
| {
|   SHA1_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA1_LIBSYSTEM)
| 
| static int
| __archive_sha1init(archive_sha1_ctx *ctx)
| {
|   CC_SHA1_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1update(archive_sha1_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   CC_SHA1_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1final(archive_sha1_ctx *ctx, void *md)
| {
|   CC_SHA1_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA1_MBEDTLS)
| 
| static int
| __archive_sha1init(archive_sha1_ctx *ctx)
| {
|   mbedtls_sha1_init(ctx);
|   if (mbedtls_sha1_starts_ret(ctx) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_sha1update(archive_sha1_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   if (mbedtls_sha1_update_ret(ctx, indata, insize) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_sha1final(archive_sha1_ctx *ctx, void *md)
| {
|   if (mbedtls_sha1_finish_ret(ctx, md) == 0) {
|     mbedtls_sha1_free(ctx);
|     return (ARCHIVE_OK);
|   } else {
|     mbedtls_sha1_free(ctx);
|     return (ARCHIVE_FATAL);
|   }
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA1_NETTLE)
| 
| static int
| __archive_sha1init(archive_sha1_ctx *ctx)
| {
|   sha1_init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1update(archive_sha1_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   sha1_update(ctx, insize, indata);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1final(archive_sha1_ctx *ctx, void *md)
| {
|   sha1_digest(ctx, SHA1_DIGEST_SIZE, md);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA1_OPENSSL)
| 
| static int
| __archive_sha1init(archive_sha1_ctx *ctx)
| {
|   if ((*ctx = EVP_MD_CTX_new()) == NULL)
| 	return (ARCHIVE_FAILED);
|   if (!EVP_DigestInit(*ctx, EVP_sha1()))
| 	return (ARCHIVE_FAILED);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1update(archive_sha1_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   EVP_DigestUpdate(*ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1final(archive_sha1_ctx *ctx, void *md)
| {
|   /* HACK: archive_write_set_format_xar.c is finalizing empty contexts, so
|    * this is meant to cope with that. Real fix is probably to fix
|    * archive_write_set_format_xar.c
|    */
|   if (*ctx) {
|     EVP_DigestFinal(*ctx, md, NULL);
|     EVP_MD_CTX_free(*ctx);
|     *ctx = NULL;
|   }
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA1_WIN)
| 
| static int
| __archive_sha1init(archive_sha1_ctx *ctx)
| {
| #if defined(HAVE_BCRYPT_H) && _WIN32_WINNT >= _WIN32_WINNT_VISTA
|   return (win_crypto_init(ctx, BCRYPT_SHA1_ALGORITHM));
| #else
|   return (win_crypto_init(ctx, PROV_RSA_FULL, CALG_SHA1));
| #endif
| }
| 
| static int
| __archive_sha1update(archive_sha1_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   return (win_crypto_Update(ctx, indata, insize));
| }
| 
| static int
| __archive_sha1final(archive_sha1_ctx *ctx, void *md)
| {
|   return (win_crypto_Final(md, 20, ctx));
| }
| 
| #else
| 
| static int
| __archive_sha1init(archive_sha1_ctx *ctx)
| {
| 	(void)ctx; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_sha1update(archive_sha1_ctx *ctx, const void *indata,
|     size_t insize)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)indata; /* UNUSED */
| 	(void)insize; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_sha1final(archive_sha1_ctx *ctx, void *md)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)md; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| #endif
| 
| /* SHA256 implementations */
| #if defined(ARCHIVE_CRYPTO_SHA256_LIBC)
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
|   SHA256_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA256_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
|   SHA256_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA256_LIBC2)
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
|   SHA256Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA256Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
|   SHA256Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA256_LIBC3)
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
|   SHA256Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA256Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
|   SHA256Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA256_LIBMD)
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
|   SHA256_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA256_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
|   SHA256_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA256_LIBSYSTEM)
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
|   CC_SHA256_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   CC_SHA256_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
|   CC_SHA256_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA256_MBEDTLS)
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
|   mbedtls_sha256_init(ctx);
|   if (mbedtls_sha256_starts_ret(ctx, 0) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   if (mbedtls_sha256_update_ret(ctx, indata, insize) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
|   if (mbedtls_sha256_finish_ret(ctx, md) == 0) {
|     mbedtls_sha256_free(ctx);
|     return (ARCHIVE_OK);
|   } else {
|     mbedtls_sha256_free(ctx);
|     return (ARCHIVE_FATAL);
|   }
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA256_NETTLE)
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
|   sha256_init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   sha256_update(ctx, insize, indata);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
|   sha256_digest(ctx, SHA256_DIGEST_SIZE, md);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA256_OPENSSL)
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
|   if ((*ctx = EVP_MD_CTX_new()) == NULL)
| 	return (ARCHIVE_FAILED);
|   if (!EVP_DigestInit(*ctx, EVP_sha256()))
| 	return (ARCHIVE_FAILED);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   EVP_DigestUpdate(*ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
|   if (*ctx) {
|     EVP_DigestFinal(*ctx, md, NULL);
|     EVP_MD_CTX_free(*ctx);
|     *ctx = NULL;
|   }
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA256_WIN)
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
| #if defined(HAVE_BCRYPT_H) && _WIN32_WINNT >= _WIN32_WINNT_VISTA
|   return (win_crypto_init(ctx, BCRYPT_SHA256_ALGORITHM));
| #else
|   return (win_crypto_init(ctx, PROV_RSA_AES, CALG_SHA_256));
| #endif
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   return (win_crypto_Update(ctx, indata, insize));
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
|   return (win_crypto_Final(md, 32, ctx));
| }
| 
| #else
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
| 	(void)ctx; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)indata; /* UNUSED */
| 	(void)insize; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)md; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| #endif
| 
| /* SHA384 implementations */
| #if defined(ARCHIVE_CRYPTO_SHA384_LIBC)
| 
| static int
| __archive_sha384init(archive_sha384_ctx *ctx)
| {
|   SHA384_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384update(archive_sha384_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA384_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384final(archive_sha384_ctx *ctx, void *md)
| {
|   SHA384_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA384_LIBC2)
| 
| static int
| __archive_sha384init(archive_sha384_ctx *ctx)
| {
|   SHA384Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384update(archive_sha384_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA384Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384final(archive_sha384_ctx *ctx, void *md)
| {
|   SHA384Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA384_LIBC3)
| 
| static int
| __archive_sha384init(archive_sha384_ctx *ctx)
| {
|   SHA384Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384update(archive_sha384_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA384Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384final(archive_sha384_ctx *ctx, void *md)
| {
|   SHA384Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA384_LIBSYSTEM)
| 
| static int
| __archive_sha384init(archive_sha384_ctx *ctx)
| {
|   CC_SHA384_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384update(archive_sha384_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   CC_SHA384_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384final(archive_sha384_ctx *ctx, void *md)
| {
|   CC_SHA384_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA384_MBEDTLS)
| 
| static int
| __archive_sha384init(archive_sha384_ctx *ctx)
| {
|   mbedtls_sha512_init(ctx);
|   if (mbedtls_sha512_starts_ret(ctx, 1) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_sha384update(archive_sha384_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   if (mbedtls_sha512_update_ret(ctx, indata, insize) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_sha384final(archive_sha384_ctx *ctx, void *md)
| {
|   if (mbedtls_sha512_finish_ret(ctx, md) == 0) {
|     mbedtls_sha512_free(ctx);
|     return (ARCHIVE_OK);
|   } else {
|     mbedtls_sha512_free(ctx);
|     return (ARCHIVE_FATAL);
|   }
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA384_NETTLE)
| 
| static int
| __archive_sha384init(archive_sha384_ctx *ctx)
| {
|   sha384_init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384update(archive_sha384_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   sha384_update(ctx, insize, indata);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384final(archive_sha384_ctx *ctx, void *md)
| {
|   sha384_digest(ctx, SHA384_DIGEST_SIZE, md);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA384_OPENSSL)
| 
| static int
| __archive_sha384init(archive_sha384_ctx *ctx)
| {
|   if ((*ctx = EVP_MD_CTX_new()) == NULL)
| 	return (ARCHIVE_FAILED);
|   if (!EVP_DigestInit(*ctx, EVP_sha384()))
| 	return (ARCHIVE_FAILED);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384update(archive_sha384_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   EVP_DigestUpdate(*ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384final(archive_sha384_ctx *ctx, void *md)
| {
|   if (*ctx) {
|     EVP_DigestFinal(*ctx, md, NULL);
|     EVP_MD_CTX_free(*ctx);
|     *ctx = NULL;
|   }
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA384_WIN)
| 
| static int
| __archive_sha384init(archive_sha384_ctx *ctx)
| {
| #if defined(HAVE_BCRYPT_H) && _WIN32_WINNT >= _WIN32_WINNT_VISTA
|   return (win_crypto_init(ctx, BCRYPT_SHA384_ALGORITHM));
| #else
|   return (win_crypto_init(ctx, PROV_RSA_AES, CALG_SHA_384));
| #endif
| }
| 
| static int
| __archive_sha384update(archive_sha384_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   return (win_crypto_Update(ctx, indata, insize));
| }
| 
| static int
| __archive_sha384final(archive_sha384_ctx *ctx, void *md)
| {
|   return (win_crypto_Final(md, 48, ctx));
| }
| 
| #else
| 
| static int
| __archive_sha384init(archive_sha384_ctx *ctx)
| {
| 	(void)ctx; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_sha384update(archive_sha384_ctx *ctx, const void *indata,
|     size_t insize)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)indata; /* UNUSED */
| 	(void)insize; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_sha384final(archive_sha384_ctx *ctx, void *md)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)md; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| #endif
| 
| /* SHA512 implementations */
| #if defined(ARCHIVE_CRYPTO_SHA512_LIBC)
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
|   SHA512_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA512_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
|   SHA512_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA512_LIBC2)
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
|   SHA512Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA512Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
|   SHA512Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA512_LIBC3)
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
|   SHA512Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA512Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
|   SHA512Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA512_LIBMD)
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
|   SHA512_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA512_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
|   SHA512_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA512_LIBSYSTEM)
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
|   CC_SHA512_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   CC_SHA512_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
|   CC_SHA512_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA512_MBEDTLS)
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
|   mbedtls_sha512_init(ctx);
|   if (mbedtls_sha512_starts_ret(ctx, 0) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   if (mbedtls_sha512_update_ret(ctx, indata, insize) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
|   if (mbedtls_sha512_finish_ret(ctx, md) == 0) {
|     mbedtls_sha512_free(ctx);
|     return (ARCHIVE_OK);
|   } else {
|     mbedtls_sha512_free(ctx);
|     return (ARCHIVE_FATAL);
|   }
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA512_NETTLE)
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
|   sha512_init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   sha512_update(ctx, insize, indata);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
|   sha512_digest(ctx, SHA512_DIGEST_SIZE, md);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA512_OPENSSL)
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
|   if ((*ctx = EVP_MD_CTX_new()) == NULL)
| 	return (ARCHIVE_FAILED);
|   if (!EVP_DigestInit(*ctx, EVP_sha512()))
| 	return (ARCHIVE_FAILED);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   EVP_DigestUpdate(*ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
|   if (*ctx) {
|     EVP_DigestFinal(*ctx, md, NULL);
|     EVP_MD_CTX_free(*ctx);
|     *ctx = NULL;
|   }
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA512_WIN)
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
| #if defined(HAVE_BCRYPT_H) && _WIN32_WINNT >= _WIN32_WINNT_VISTA
|   return (win_crypto_init(ctx, BCRYPT_SHA512_ALGORITHM));
| #else
|   return (win_crypto_init(ctx, PROV_RSA_AES, CALG_SHA_512));
| #endif
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   return (win_crypto_Update(ctx, indata, insize));
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
|   return (win_crypto_Final(md, 64, ctx));
| }
| 
| #else
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
| 	(void)ctx; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)indata; /* UNUSED */
| 	(void)insize; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)md; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| #endif
| 
| /* NOTE: Message Digest functions are set based on availability and by the
|  * following order of preference.
|  * 1. libc
|  * 2. libc2
|  * 3. libc3
|  * 4. libSystem
|  * 5. Nettle
|  * 6. OpenSSL
|  * 7. libmd
|  * 8. Windows API
|  */
| const struct archive_digest __archive_digest =
| {
| /* MD5 */
|   &__archive_md5init,
|   &__archive_md5update,
|   &__archive_md5final,
| 
| /* RIPEMD160 */
|   &__archive_ripemd160init,
|   &__archive_ripemd160update,
|   &__archive_ripemd160final,
| 
| /* SHA1 */
|   &__archive_sha1init,
|   &__archive_sha1update,
|   &__archive_sha1final,
| 
| /* SHA256 */
|   &__archive_sha256init,
|   &__archive_sha256update,
|   &__archive_sha256final,
| 
| /* SHA384 */
|   &__archive_sha384init,
|   &__archive_sha384update,
|   &__archive_sha384final,
| 
| /* SHA512 */
|   &__archive_sha512init,
|   &__archive_sha512update,
|   &__archive_sha512final
| };
| 
| int
| main(int argc, char **argv)
| {
|   archive_sha384_ctx ctx;
|   archive_sha384_init(&ctx);
|   archive_sha384_update(&ctx, *argv, argc);
|   archive_sha384_final(&ctx, NULL);
|   return 0;
| }
| 
configure:18222: result: no
configure:18236: checking support for ARCHIVE_CRYPTO_SHA384_LIBSYSTEM
configure:18258: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -o conftest -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2  -I. -I. -I./libarchive  conftest.c -lzstd -llz4 -lz  -L/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/lib -lxml2  >&5
In file included from conftest.c:255:
./libarchive/archive_digest_private.h:115:10: fatal error: CommonCrypto/CommonDigest.h: No such file or directory
  115 | #include <CommonCrypto/CommonDigest.h>
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
compilation terminated.
configure:18258: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "libarchive"
| #define PACKAGE_TARNAME "libarchive"
| #define PACKAGE_VERSION "3.7.2"
| #define PACKAGE_STRING "libarchive 3.7.2"
| #define PACKAGE_BUGREPORT "libarchive-discuss@googlegroups.com"
| #define PACKAGE_URL ""
| #define PACKAGE "libarchive"
| #define VERSION "3.7.2"
| #define __LIBARCHIVE_CONFIG_H_INCLUDED 1
| #define LIBARCHIVE_VERSION_STRING "3.7.2"
| #define LIBARCHIVE_VERSION_NUMBER "3007002"
| #define BSDCPIO_VERSION_STRING "3.7.2"
| #define BSDTAR_VERSION_STRING "3.7.2"
| #define BSDCAT_VERSION_STRING "3.7.2"
| #define BSDUNZIP_VERSION_STRING "3.7.2"
| #define HAVE_STDIO_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_SYS_TIME_H 1
| #define STDC_HEADERS 1
| #define _ALL_SOURCE 1
| #define _DARWIN_C_SOURCE 1
| #define _GNU_SOURCE 1
| #define _HPUX_ALT_XOPEN_SOCKET_API 1
| #define _NETBSD_SOURCE 1
| #define _OPENBSD_SOURCE 1
| #define _POSIX_PTHREAD_SEMANTICS 1
| #define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1
| #define __STDC_WANT_IEC_60559_BFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_DFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1
| #define __STDC_WANT_IEC_60559_TYPES_EXT__ 1
| #define __STDC_WANT_LIB_EXT2__ 1
| #define __STDC_WANT_MATH_SPEC_FUNCS__ 1
| #define _TANDEM_SOURCE 1
| #define __EXTENSIONS__ 1
| #define HAVE_DLFCN_H 1
| #define LT_OBJDIR ".libs/"
| #define HAVE_DIRENT_H 1
| #define HAVE_SYS_WAIT_H 1
| #define HAVE_CTYPE_H 1
| #define HAVE_ERRNO_H 1
| #define HAVE_FCNTL_H 1
| #define HAVE_FNMATCH_H 1
| #define HAVE_GRP_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_LANGINFO_H 1
| #define HAVE_LIMITS_H 1
| #define HAVE_LINUX_FIEMAP_H 1
| #define HAVE_LINUX_FS_H 1
| #define HAVE_LINUX_MAGIC_H 1
| #define HAVE_LINUX_TYPES_H 1
| #define HAVE_WORKING_FS_IOC_GETFLAGS 1
| #define HAVE_LOCALE_H 1
| #define HAVE_PATHS_H 1
| #define HAVE_POLL_H 1
| #define HAVE_PTHREAD_H 1
| #define HAVE_PWD_H 1
| #define HAVE_SIGNAL_H 1
| #define HAVE_SPAWN_H 1
| #define HAVE_STDARG_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_SYS_CDEFS_H 1
| #define HAVE_SYS_IOCTL_H 1
| #define HAVE_SYS_MOUNT_H 1
| #define HAVE_SYS_QUEUE_H 1
| #define HAVE_SYS_PARAM_H 1
| #define HAVE_SYS_POLL_H 1
| #define HAVE_SYS_SELECT_H 1
| #define HAVE_SYS_STATFS_H 1
| #define HAVE_SYS_STATVFS_H 1
| #define HAVE_SYS_SYSMACROS_H 1
| #define HAVE_SYS_TIME_H 1
| #define HAVE_SYS_UTSNAME_H 1
| #define HAVE_SYS_VFS_H 1
| #define HAVE_SYS_XATTR_H 1
| #define HAVE_TIME_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_UTIME_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_WCTYPE_H 1
| #define HAVE_ZLIB_H 1
| #define HAVE_LIBZ 1
| #define HAVE_ICONV 1
| #define ICONV_CONST 
| #define HAVE_ICONV_H 1
| #define HAVE_LZ4_H 1
| #define HAVE_LZ4HC_H 1
| #define HAVE_LIBLZ4 1
| #define HAVE_ZSTD_H 1
| #define HAVE_LIBZSTD 1
| #define HAVE_LIBZSTD_COMPRESSOR 1
| #define HAVE_LIBXML_XMLREADER_H 1
| #define HAVE_LIBXML_XMLWRITER_H 1
| #define HAVE_REGEX_H 1
| #define HAVE_STRUCT_TM_TM_GMTOFF 1
| #define HAVE_STRUCT_STAT_ST_MTIM_TV_NSEC 1
| #define HAVE_STRUCT_STAT_ST_BLKSIZE 1
| #define HAVE_UINTMAX_T 1
| #define HAVE_UNSIGNED_LONG_LONG 1
| #define HAVE_UNSIGNED_LONG_LONG_INT 1
| #define HAVE_LONG_LONG_INT 1
| #define HAVE_INTMAX_T 1
| #define HAVE_UINTMAX_T 1
| #define HAVE_DECL_SIZE_MAX 1
| #define HAVE_DECL_INT32_MAX 1
| #define HAVE_DECL_INT32_MIN 1
| #define HAVE_DECL_INT64_MAX 1
| #define HAVE_DECL_INT64_MIN 1
| #define HAVE_DECL_UINT64_MAX 1
| #define HAVE_DECL_UINT32_MAX 1
| #define HAVE_DECL_INTMAX_MAX 1
| #define HAVE_DECL_INTMAX_MIN 1
| #define HAVE_DECL_UINTMAX_MAX 1
| #define HAVE_DECL_SSIZE_MAX 1
| #define HAVE_EILSEQ 1
| #define HAVE_WCHAR_T 1
| #define SIZEOF_WCHAR_T 4
| #define SIZEOF_INT 4
| #define SIZEOF_LONG 4
| #define MAJOR_IN_SYSMACROS 1
| #define HAVE_FSEEKO 1
| #define LSTAT_FOLLOWS_SLASHED_SYMLINK 1
| #define HAVE_LSTAT_EMPTY_STRING_BUG 1
| #define HAVE_STAT_EMPTY_STRING_BUG 1
| #define HAVE_DECL_STRERROR_R 1
| #define HAVE_STRERROR_R 1
| #define STRERROR_R_CHAR_P 1
| #define HAVE_STRFTIME 1
| #define HAVE_VPRINTF 1
| #define HAVE_ARC4RANDOM_BUF 1
| #define HAVE_CHOWN 1
| #define HAVE_CHROOT 1
| #define HAVE_CTIME_R 1
| #define HAVE_FCHDIR 1
| #define HAVE_FCHMOD 1
| #define HAVE_FCHOWN 1
| #define HAVE_FCNTL 1
| #define HAVE_FDOPENDIR 1
| #define HAVE_FNMATCH 1
| #define HAVE_FORK 1
| #define HAVE_FSTAT 1
| #define HAVE_FSTATAT 1
| #define HAVE_FSTATFS 1
| #define HAVE_FSTATVFS 1
| #define HAVE_FTRUNCATE 1
| #define HAVE_FUTIMENS 1
| #define HAVE_FUTIMES 1
| #define HAVE_FUTIMESAT 1
| #define HAVE_GETEUID 1
| #define HAVE_GETLINE 1
| #define HAVE_GETPID 1
| #define HAVE_GETGRGID_R 1
| #define HAVE_GETGRNAM_R 1
| #define HAVE_GETPWNAM_R 1
| #define HAVE_GETPWUID_R 1
| #define HAVE_GMTIME_R 1
| #define HAVE_LCHMOD 1
| #define HAVE_LCHOWN 1
| #define HAVE_LINK 1
| #define HAVE_LINKAT 1
| #define HAVE_LOCALTIME_R 1
| #define HAVE_LSTAT 1
| #define HAVE_LUTIMES 1
| #define HAVE_MBRTOWC 1
| #define HAVE_MEMMOVE 1
| #define HAVE_MEMSET 1
| #define HAVE_MKDIR 1
| #define HAVE_MKFIFO 1
| #define HAVE_MKNOD 1
| #define HAVE_MKSTEMP 1
| #define HAVE_NL_LANGINFO 1
| #define HAVE_OPENAT 1
| #define HAVE_PIPE 1
| #define HAVE_POLL 1
| #define HAVE_POSIX_SPAWNP 1
| #define HAVE_READLINK 1
| #define HAVE_READLINKAT 1
| #define HAVE_SELECT 1
| #define HAVE_SETENV 1
| #define HAVE_SETLOCALE 1
| #define HAVE_SIGACTION 1
| #define HAVE_STATFS 1
| #define HAVE_STATVFS 1
| #define HAVE_STRCHR 1
| #define HAVE_STRDUP 1
| #define HAVE_STRERROR 1
| #define HAVE_STRNLEN 1
| #define HAVE_STRRCHR 1
| #define HAVE_SYMLINK 1
| #define HAVE_TIMEGM 1
| #define HAVE_TZSET 1
| #define HAVE_UNLINKAT 1
| #define HAVE_UNSETENV 1
| #define HAVE_UTIME 1
| #define HAVE_UTIMENSAT 1
| #define HAVE_UTIMES 1
| #define HAVE_VFORK 1
| #define HAVE_WCRTOMB 1
| #define HAVE_WCSCMP 1
| #define HAVE_WCSCPY 1
| #define HAVE_WCSLEN 1
| #define HAVE_WCTOMB 1
| #define HAVE_WMEMCMP 1
| #define HAVE_WMEMCPY 1
| #define HAVE_WMEMMOVE 1
| #define HAVE_READDIR_R 1
| #define HAVE_DIRFD 1
| /* end confdefs.h.  */
| 
| #define ARCHIVE_SHA384_COMPILE_TEST
| #define ARCHIVE_CRYPTO_SHA384_LIBSYSTEM
| #define PLATFORM_CONFIG_H "check_crypto_md.h"
| 
| /*-
| * Copyright (c) 2003-2007 Tim Kientzle
| * Copyright (c) 2011 Andres Mejia
| * Copyright (c) 2011 Michihiro NAKAJIMA
| * All rights reserved.
| *
| * Redistribution and use in source and binary forms, with or without
| * modification, are permitted provided that the following conditions
| * are met:
| * 1. Redistributions of source code must retain the above copyright
| *    notice, this list of conditions and the following disclaimer.
| * 2. Redistributions in binary form must reproduce the above copyright
| *    notice, this list of conditions and the following disclaimer in the
| *    documentation and/or other materials provided with the distribution.
| *
| * THIS SOFTWARE IS PROVIDED BY THE AUTHOR(S) ``AS IS'' AND ANY EXPRESS OR
| * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
| * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
| * IN NO EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY DIRECT, INDIRECT,
| * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
| * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
| * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
| * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
| * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
| * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
| */
| 
| #include "archive_platform.h"
| 
| #include "archive.h"
| #include "archive_digest_private.h"
| 
| /* In particular, force the configure probe to break if it tries
|  * to test a combination of OpenSSL and libmd. */
| #if defined(ARCHIVE_CRYPTO_OPENSSL) && defined(ARCHIVE_CRYPTO_LIBMD)
| #error Cannot use both OpenSSL and libmd.
| #endif
| 
| /* Common in other bcrypt implementations, but missing from VS2008. */
| #ifndef BCRYPT_SUCCESS
| #define BCRYPT_SUCCESS(r) ((NTSTATUS)(r) == STATUS_SUCCESS)
| #endif
| 
| /*
|  * Message digest functions for Windows platform.
|  */
| #if defined(ARCHIVE_CRYPTO_MD5_WIN)    ||\
| 	defined(ARCHIVE_CRYPTO_SHA1_WIN)   ||\
| 	defined(ARCHIVE_CRYPTO_SHA256_WIN) ||\
| 	defined(ARCHIVE_CRYPTO_SHA384_WIN) ||\
| 	defined(ARCHIVE_CRYPTO_SHA512_WIN)
| 
| /*
|  * Initialize a Message digest.
|  */
| #if defined(HAVE_BCRYPT_H) && _WIN32_WINNT >= _WIN32_WINNT_VISTA
| static int
| win_crypto_init(Digest_CTX *ctx, const WCHAR *algo)
| {
| 	NTSTATUS status;
| 	ctx->valid = 0;
| 
| 	status = BCryptOpenAlgorithmProvider(&ctx->hAlg, algo, NULL, 0);
| 	if (!BCRYPT_SUCCESS(status))
| 		return (ARCHIVE_FAILED);
| 	status = BCryptCreateHash(ctx->hAlg, &ctx->hHash, NULL, 0, NULL, 0, 0);
| 	if (!BCRYPT_SUCCESS(status)) {
| 		BCryptCloseAlgorithmProvider(ctx->hAlg, 0);
| 		return (ARCHIVE_FAILED);
| 	}
| 
| 	ctx->valid = 1;
| 	return (ARCHIVE_OK);
| }
| #else
| static int
| win_crypto_init(Digest_CTX *ctx, DWORD prov, ALG_ID algId)
| {
| 
| 	ctx->valid = 0;
| 	if (!CryptAcquireContext(&ctx->cryptProv, NULL, NULL,
| 	    prov, CRYPT_VERIFYCONTEXT)) {
| 		if (GetLastError() != (DWORD)NTE_BAD_KEYSET)
| 			return (ARCHIVE_FAILED);
| 		if (!CryptAcquireContext(&ctx->cryptProv, NULL, NULL,
| 		    prov, CRYPT_NEWKEYSET))
| 			return (ARCHIVE_FAILED);
| 	}
| 
| 	if (!CryptCreateHash(ctx->cryptProv, algId, 0, 0, &ctx->hash)) {
| 		CryptReleaseContext(ctx->cryptProv, 0);
| 		return (ARCHIVE_FAILED);
| 	}
| 
| 	ctx->valid = 1;
| 	return (ARCHIVE_OK);
| }
| #endif
| 
| /*
|  * Update a Message digest.
|  */
| static int
| win_crypto_Update(Digest_CTX *ctx, const unsigned char *buf, size_t len)
| {
| 
| 	if (!ctx->valid)
| 		return (ARCHIVE_FAILED);
| 
| #if defined(HAVE_BCRYPT_H) && _WIN32_WINNT >= _WIN32_WINNT_VISTA
| 	BCryptHashData(ctx->hHash,
| 		      (PUCHAR)(uintptr_t)buf,
| 		      (ULONG)len, 0);
| #else
| 	CryptHashData(ctx->hash,
| 		      (unsigned char *)(uintptr_t)buf,
| 		      (DWORD)len, 0);
| #endif
| 	return (ARCHIVE_OK);
| }
| 
| static int
| win_crypto_Final(unsigned char *buf, size_t bufsize, Digest_CTX *ctx)
| {
| #if !(defined(HAVE_BCRYPT_H) && _WIN32_WINNT >= _WIN32_WINNT_VISTA)
| 	DWORD siglen = (DWORD)bufsize;
| #endif
| 
| 	if (!ctx->valid)
| 		return (ARCHIVE_FAILED);
| 
| #if defined(HAVE_BCRYPT_H) && _WIN32_WINNT >= _WIN32_WINNT_VISTA
| 	BCryptFinishHash(ctx->hHash, buf, (ULONG)bufsize, 0);
| 	BCryptDestroyHash(ctx->hHash);
| 	BCryptCloseAlgorithmProvider(ctx->hAlg, 0);
| #else
| 	CryptGetHashParam(ctx->hash, HP_HASHVAL, buf, &siglen, 0);
| 	CryptDestroyHash(ctx->hash);
| 	CryptReleaseContext(ctx->cryptProv, 0);
| #endif
| 	ctx->valid = 0;
| 	return (ARCHIVE_OK);
| }
| 
| #endif /* defined(ARCHIVE_CRYPTO_*_WIN) */
| 
| 
| /* MD5 implementations */
| #if defined(ARCHIVE_CRYPTO_MD5_LIBC)
| 
| static int
| __archive_md5init(archive_md5_ctx *ctx)
| {
|   MD5Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5update(archive_md5_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   MD5Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5final(archive_md5_ctx *ctx, void *md)
| {
|   MD5Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_MD5_LIBMD)
| 
| static int
| __archive_md5init(archive_md5_ctx *ctx)
| {
|   MD5Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5update(archive_md5_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   MD5Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5final(archive_md5_ctx *ctx, void *md)
| {
|   MD5Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_MD5_LIBSYSTEM)
| 
| static int
| __archive_md5init(archive_md5_ctx *ctx)
| {
|   CC_MD5_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5update(archive_md5_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   CC_MD5_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5final(archive_md5_ctx *ctx, void *md)
| {
|   CC_MD5_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_MD5_MBEDTLS)
| 
| static int
| __archive_md5init(archive_md5_ctx *ctx)
| {
|   mbedtls_md5_init(ctx);
|   if (mbedtls_md5_starts_ret(ctx) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_md5update(archive_md5_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   if (mbedtls_md5_update_ret(ctx, indata, insize) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_md5final(archive_md5_ctx *ctx, void *md)
| {
|   if (mbedtls_md5_finish_ret(ctx, md) == 0) {
|     mbedtls_md5_free(ctx);
|     return (ARCHIVE_OK);
|   } else {
|     mbedtls_md5_free(ctx);
|     return (ARCHIVE_FATAL);
|   }
| }
| 
| #elif defined(ARCHIVE_CRYPTO_MD5_NETTLE)
| 
| static int
| __archive_md5init(archive_md5_ctx *ctx)
| {
|   md5_init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5update(archive_md5_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   md5_update(ctx, insize, indata);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5final(archive_md5_ctx *ctx, void *md)
| {
|   md5_digest(ctx, MD5_DIGEST_SIZE, md);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_MD5_OPENSSL)
| 
| static int
| __archive_md5init(archive_md5_ctx *ctx)
| {
|   if ((*ctx = EVP_MD_CTX_new()) == NULL)
| 	return (ARCHIVE_FAILED);
|   if (!EVP_DigestInit(*ctx, EVP_md5()))
| 	return (ARCHIVE_FAILED);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5update(archive_md5_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   EVP_DigestUpdate(*ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5final(archive_md5_ctx *ctx, void *md)
| {
|   /* HACK: archive_write_set_format_xar.c is finalizing empty contexts, so
|    * this is meant to cope with that. Real fix is probably to fix
|    * archive_write_set_format_xar.c
|    */
|   if (*ctx) {
|     EVP_DigestFinal(*ctx, md, NULL);
|     EVP_MD_CTX_free(*ctx);
|     *ctx = NULL;
|   }
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_MD5_WIN)
| 
| static int
| __archive_md5init(archive_md5_ctx *ctx)
| {
| #if defined(HAVE_BCRYPT_H) && _WIN32_WINNT >= _WIN32_WINNT_VISTA
|   return (win_crypto_init(ctx, BCRYPT_MD5_ALGORITHM));
| #else
|   return (win_crypto_init(ctx, PROV_RSA_FULL, CALG_MD5));
| #endif
| }
| 
| static int
| __archive_md5update(archive_md5_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   return (win_crypto_Update(ctx, indata, insize));
| }
| 
| static int
| __archive_md5final(archive_md5_ctx *ctx, void *md)
| {
|   return (win_crypto_Final(md, 16, ctx));
| }
| 
| #else
| 
| static int
| __archive_md5init(archive_md5_ctx *ctx)
| {
| 	(void)ctx; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_md5update(archive_md5_ctx *ctx, const void *indata,
|     size_t insize)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)indata; /* UNUSED */
| 	(void)insize; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_md5final(archive_md5_ctx *ctx, void *md)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)md; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| #endif
| 
| /* RIPEMD160 implementations */
| #if defined(ARCHIVE_CRYPTO_RMD160_LIBC)
| 
| static int
| __archive_ripemd160init(archive_rmd160_ctx *ctx)
| {
|   RMD160Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   RMD160Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md)
| {
|   RMD160Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_RMD160_LIBMD)
| 
| static int
| __archive_ripemd160init(archive_rmd160_ctx *ctx)
| {
|   RIPEMD160_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   RIPEMD160_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md)
| {
|   RIPEMD160_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_RMD160_MBEDTLS)
| 
| static int
| __archive_ripemd160init(archive_rmd160_ctx *ctx)
| {
|   mbedtls_ripemd160_init(ctx);
|   if (mbedtls_ripemd160_starts_ret(ctx) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   if (mbedtls_ripemd160_update_ret(ctx, indata, insize) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md)
| {
|   if (mbedtls_ripemd160_finish_ret(ctx, md) == 0) {
|     mbedtls_ripemd160_free(ctx);
|     return (ARCHIVE_OK);
|   } else {
|     mbedtls_ripemd160_free(ctx);
|     return (ARCHIVE_FATAL);
|   }
| }
| 
| #elif defined(ARCHIVE_CRYPTO_RMD160_NETTLE)
| 
| static int
| __archive_ripemd160init(archive_rmd160_ctx *ctx)
| {
|   ripemd160_init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   ripemd160_update(ctx, insize, indata);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md)
| {
|   ripemd160_digest(ctx, RIPEMD160_DIGEST_SIZE, md);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_RMD160_OPENSSL)
| 
| static int
| __archive_ripemd160init(archive_rmd160_ctx *ctx)
| {
|   if ((*ctx = EVP_MD_CTX_new()) == NULL)
| 	return (ARCHIVE_FAILED);
|   if (!EVP_DigestInit(*ctx, EVP_ripemd160()))
| 	return (ARCHIVE_FAILED);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   EVP_DigestUpdate(*ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md)
| {
|   if (*ctx) {
|     EVP_DigestFinal(*ctx, md, NULL);
|     EVP_MD_CTX_free(*ctx);
|     *ctx = NULL;
|   }
|   return (ARCHIVE_OK);
| }
| 
| #else
| 
| static int
| __archive_ripemd160init(archive_rmd160_ctx *ctx)
| {
| 	(void)ctx; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata,
|     size_t insize)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)indata; /* UNUSED */
| 	(void)insize; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)md; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| #endif
| 
| /* SHA1 implementations */
| #if defined(ARCHIVE_CRYPTO_SHA1_LIBC)
| 
| static int
| __archive_sha1init(archive_sha1_ctx *ctx)
| {
|   SHA1Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1update(archive_sha1_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA1Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1final(archive_sha1_ctx *ctx, void *md)
| {
|   SHA1Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA1_LIBMD)
| 
| static int
| __archive_sha1init(archive_sha1_ctx *ctx)
| {
|   SHA1_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1update(archive_sha1_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA1_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1final(archive_sha1_ctx *ctx, void *md)
| {
|   SHA1_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA1_LIBSYSTEM)
| 
| static int
| __archive_sha1init(archive_sha1_ctx *ctx)
| {
|   CC_SHA1_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1update(archive_sha1_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   CC_SHA1_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1final(archive_sha1_ctx *ctx, void *md)
| {
|   CC_SHA1_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA1_MBEDTLS)
| 
| static int
| __archive_sha1init(archive_sha1_ctx *ctx)
| {
|   mbedtls_sha1_init(ctx);
|   if (mbedtls_sha1_starts_ret(ctx) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_sha1update(archive_sha1_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   if (mbedtls_sha1_update_ret(ctx, indata, insize) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_sha1final(archive_sha1_ctx *ctx, void *md)
| {
|   if (mbedtls_sha1_finish_ret(ctx, md) == 0) {
|     mbedtls_sha1_free(ctx);
|     return (ARCHIVE_OK);
|   } else {
|     mbedtls_sha1_free(ctx);
|     return (ARCHIVE_FATAL);
|   }
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA1_NETTLE)
| 
| static int
| __archive_sha1init(archive_sha1_ctx *ctx)
| {
|   sha1_init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1update(archive_sha1_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   sha1_update(ctx, insize, indata);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1final(archive_sha1_ctx *ctx, void *md)
| {
|   sha1_digest(ctx, SHA1_DIGEST_SIZE, md);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA1_OPENSSL)
| 
| static int
| __archive_sha1init(archive_sha1_ctx *ctx)
| {
|   if ((*ctx = EVP_MD_CTX_new()) == NULL)
| 	return (ARCHIVE_FAILED);
|   if (!EVP_DigestInit(*ctx, EVP_sha1()))
| 	return (ARCHIVE_FAILED);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1update(archive_sha1_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   EVP_DigestUpdate(*ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1final(archive_sha1_ctx *ctx, void *md)
| {
|   /* HACK: archive_write_set_format_xar.c is finalizing empty contexts, so
|    * this is meant to cope with that. Real fix is probably to fix
|    * archive_write_set_format_xar.c
|    */
|   if (*ctx) {
|     EVP_DigestFinal(*ctx, md, NULL);
|     EVP_MD_CTX_free(*ctx);
|     *ctx = NULL;
|   }
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA1_WIN)
| 
| static int
| __archive_sha1init(archive_sha1_ctx *ctx)
| {
| #if defined(HAVE_BCRYPT_H) && _WIN32_WINNT >= _WIN32_WINNT_VISTA
|   return (win_crypto_init(ctx, BCRYPT_SHA1_ALGORITHM));
| #else
|   return (win_crypto_init(ctx, PROV_RSA_FULL, CALG_SHA1));
| #endif
| }
| 
| static int
| __archive_sha1update(archive_sha1_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   return (win_crypto_Update(ctx, indata, insize));
| }
| 
| static int
| __archive_sha1final(archive_sha1_ctx *ctx, void *md)
| {
|   return (win_crypto_Final(md, 20, ctx));
| }
| 
| #else
| 
| static int
| __archive_sha1init(archive_sha1_ctx *ctx)
| {
| 	(void)ctx; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_sha1update(archive_sha1_ctx *ctx, const void *indata,
|     size_t insize)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)indata; /* UNUSED */
| 	(void)insize; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_sha1final(archive_sha1_ctx *ctx, void *md)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)md; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| #endif
| 
| /* SHA256 implementations */
| #if defined(ARCHIVE_CRYPTO_SHA256_LIBC)
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
|   SHA256_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA256_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
|   SHA256_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA256_LIBC2)
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
|   SHA256Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA256Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
|   SHA256Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA256_LIBC3)
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
|   SHA256Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA256Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
|   SHA256Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA256_LIBMD)
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
|   SHA256_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA256_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
|   SHA256_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA256_LIBSYSTEM)
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
|   CC_SHA256_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   CC_SHA256_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
|   CC_SHA256_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA256_MBEDTLS)
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
|   mbedtls_sha256_init(ctx);
|   if (mbedtls_sha256_starts_ret(ctx, 0) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   if (mbedtls_sha256_update_ret(ctx, indata, insize) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
|   if (mbedtls_sha256_finish_ret(ctx, md) == 0) {
|     mbedtls_sha256_free(ctx);
|     return (ARCHIVE_OK);
|   } else {
|     mbedtls_sha256_free(ctx);
|     return (ARCHIVE_FATAL);
|   }
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA256_NETTLE)
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
|   sha256_init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   sha256_update(ctx, insize, indata);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
|   sha256_digest(ctx, SHA256_DIGEST_SIZE, md);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA256_OPENSSL)
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
|   if ((*ctx = EVP_MD_CTX_new()) == NULL)
| 	return (ARCHIVE_FAILED);
|   if (!EVP_DigestInit(*ctx, EVP_sha256()))
| 	return (ARCHIVE_FAILED);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   EVP_DigestUpdate(*ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
|   if (*ctx) {
|     EVP_DigestFinal(*ctx, md, NULL);
|     EVP_MD_CTX_free(*ctx);
|     *ctx = NULL;
|   }
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA256_WIN)
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
| #if defined(HAVE_BCRYPT_H) && _WIN32_WINNT >= _WIN32_WINNT_VISTA
|   return (win_crypto_init(ctx, BCRYPT_SHA256_ALGORITHM));
| #else
|   return (win_crypto_init(ctx, PROV_RSA_AES, CALG_SHA_256));
| #endif
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   return (win_crypto_Update(ctx, indata, insize));
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
|   return (win_crypto_Final(md, 32, ctx));
| }
| 
| #else
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
| 	(void)ctx; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)indata; /* UNUSED */
| 	(void)insize; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)md; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| #endif
| 
| /* SHA384 implementations */
| #if defined(ARCHIVE_CRYPTO_SHA384_LIBC)
| 
| static int
| __archive_sha384init(archive_sha384_ctx *ctx)
| {
|   SHA384_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384update(archive_sha384_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA384_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384final(archive_sha384_ctx *ctx, void *md)
| {
|   SHA384_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA384_LIBC2)
| 
| static int
| __archive_sha384init(archive_sha384_ctx *ctx)
| {
|   SHA384Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384update(archive_sha384_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA384Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384final(archive_sha384_ctx *ctx, void *md)
| {
|   SHA384Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA384_LIBC3)
| 
| static int
| __archive_sha384init(archive_sha384_ctx *ctx)
| {
|   SHA384Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384update(archive_sha384_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA384Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384final(archive_sha384_ctx *ctx, void *md)
| {
|   SHA384Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA384_LIBSYSTEM)
| 
| static int
| __archive_sha384init(archive_sha384_ctx *ctx)
| {
|   CC_SHA384_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384update(archive_sha384_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   CC_SHA384_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384final(archive_sha384_ctx *ctx, void *md)
| {
|   CC_SHA384_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA384_MBEDTLS)
| 
| static int
| __archive_sha384init(archive_sha384_ctx *ctx)
| {
|   mbedtls_sha512_init(ctx);
|   if (mbedtls_sha512_starts_ret(ctx, 1) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_sha384update(archive_sha384_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   if (mbedtls_sha512_update_ret(ctx, indata, insize) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_sha384final(archive_sha384_ctx *ctx, void *md)
| {
|   if (mbedtls_sha512_finish_ret(ctx, md) == 0) {
|     mbedtls_sha512_free(ctx);
|     return (ARCHIVE_OK);
|   } else {
|     mbedtls_sha512_free(ctx);
|     return (ARCHIVE_FATAL);
|   }
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA384_NETTLE)
| 
| static int
| __archive_sha384init(archive_sha384_ctx *ctx)
| {
|   sha384_init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384update(archive_sha384_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   sha384_update(ctx, insize, indata);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384final(archive_sha384_ctx *ctx, void *md)
| {
|   sha384_digest(ctx, SHA384_DIGEST_SIZE, md);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA384_OPENSSL)
| 
| static int
| __archive_sha384init(archive_sha384_ctx *ctx)
| {
|   if ((*ctx = EVP_MD_CTX_new()) == NULL)
| 	return (ARCHIVE_FAILED);
|   if (!EVP_DigestInit(*ctx, EVP_sha384()))
| 	return (ARCHIVE_FAILED);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384update(archive_sha384_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   EVP_DigestUpdate(*ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384final(archive_sha384_ctx *ctx, void *md)
| {
|   if (*ctx) {
|     EVP_DigestFinal(*ctx, md, NULL);
|     EVP_MD_CTX_free(*ctx);
|     *ctx = NULL;
|   }
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA384_WIN)
| 
| static int
| __archive_sha384init(archive_sha384_ctx *ctx)
| {
| #if defined(HAVE_BCRYPT_H) && _WIN32_WINNT >= _WIN32_WINNT_VISTA
|   return (win_crypto_init(ctx, BCRYPT_SHA384_ALGORITHM));
| #else
|   return (win_crypto_init(ctx, PROV_RSA_AES, CALG_SHA_384));
| #endif
| }
| 
| static int
| __archive_sha384update(archive_sha384_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   return (win_crypto_Update(ctx, indata, insize));
| }
| 
| static int
| __archive_sha384final(archive_sha384_ctx *ctx, void *md)
| {
|   return (win_crypto_Final(md, 48, ctx));
| }
| 
| #else
| 
| static int
| __archive_sha384init(archive_sha384_ctx *ctx)
| {
| 	(void)ctx; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_sha384update(archive_sha384_ctx *ctx, const void *indata,
|     size_t insize)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)indata; /* UNUSED */
| 	(void)insize; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_sha384final(archive_sha384_ctx *ctx, void *md)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)md; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| #endif
| 
| /* SHA512 implementations */
| #if defined(ARCHIVE_CRYPTO_SHA512_LIBC)
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
|   SHA512_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA512_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
|   SHA512_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA512_LIBC2)
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
|   SHA512Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA512Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
|   SHA512Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA512_LIBC3)
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
|   SHA512Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA512Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
|   SHA512Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA512_LIBMD)
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
|   SHA512_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA512_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
|   SHA512_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA512_LIBSYSTEM)
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
|   CC_SHA512_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   CC_SHA512_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
|   CC_SHA512_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA512_MBEDTLS)
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
|   mbedtls_sha512_init(ctx);
|   if (mbedtls_sha512_starts_ret(ctx, 0) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   if (mbedtls_sha512_update_ret(ctx, indata, insize) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
|   if (mbedtls_sha512_finish_ret(ctx, md) == 0) {
|     mbedtls_sha512_free(ctx);
|     return (ARCHIVE_OK);
|   } else {
|     mbedtls_sha512_free(ctx);
|     return (ARCHIVE_FATAL);
|   }
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA512_NETTLE)
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
|   sha512_init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   sha512_update(ctx, insize, indata);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
|   sha512_digest(ctx, SHA512_DIGEST_SIZE, md);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA512_OPENSSL)
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
|   if ((*ctx = EVP_MD_CTX_new()) == NULL)
| 	return (ARCHIVE_FAILED);
|   if (!EVP_DigestInit(*ctx, EVP_sha512()))
| 	return (ARCHIVE_FAILED);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   EVP_DigestUpdate(*ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
|   if (*ctx) {
|     EVP_DigestFinal(*ctx, md, NULL);
|     EVP_MD_CTX_free(*ctx);
|     *ctx = NULL;
|   }
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA512_WIN)
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
| #if defined(HAVE_BCRYPT_H) && _WIN32_WINNT >= _WIN32_WINNT_VISTA
|   return (win_crypto_init(ctx, BCRYPT_SHA512_ALGORITHM));
| #else
|   return (win_crypto_init(ctx, PROV_RSA_AES, CALG_SHA_512));
| #endif
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   return (win_crypto_Update(ctx, indata, insize));
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
|   return (win_crypto_Final(md, 64, ctx));
| }
| 
| #else
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
| 	(void)ctx; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)indata; /* UNUSED */
| 	(void)insize; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)md; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| #endif
| 
| /* NOTE: Message Digest functions are set based on availability and by the
|  * following order of preference.
|  * 1. libc
|  * 2. libc2
|  * 3. libc3
|  * 4. libSystem
|  * 5. Nettle
|  * 6. OpenSSL
|  * 7. libmd
|  * 8. Windows API
|  */
| const struct archive_digest __archive_digest =
| {
| /* MD5 */
|   &__archive_md5init,
|   &__archive_md5update,
|   &__archive_md5final,
| 
| /* RIPEMD160 */
|   &__archive_ripemd160init,
|   &__archive_ripemd160update,
|   &__archive_ripemd160final,
| 
| /* SHA1 */
|   &__archive_sha1init,
|   &__archive_sha1update,
|   &__archive_sha1final,
| 
| /* SHA256 */
|   &__archive_sha256init,
|   &__archive_sha256update,
|   &__archive_sha256final,
| 
| /* SHA384 */
|   &__archive_sha384init,
|   &__archive_sha384update,
|   &__archive_sha384final,
| 
| /* SHA512 */
|   &__archive_sha512init,
|   &__archive_sha512update,
|   &__archive_sha512final
| };
| 
| int
| main(int argc, char **argv)
| {
|   archive_sha384_ctx ctx;
|   archive_sha384_init(&ctx);
|   archive_sha384_update(&ctx, *argv, argc);
|   archive_sha384_final(&ctx, NULL);
|   return 0;
| }
| 
configure:18269: result: no
configure:18283: checking support for ARCHIVE_CRYPTO_SHA512_LIBC
configure:18305: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -o conftest -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2  -I. -I. -I./libarchive  conftest.c -lzstd -llz4 -lz  -L/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/lib -lxml2  >&5
In file included from conftest.c:255:
./libarchive/archive_digest_private.h:81:10: fatal error: sha2.h: No such file or directory
   81 | #include <sha2.h>
      |          ^~~~~~~~
compilation terminated.
configure:18305: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "libarchive"
| #define PACKAGE_TARNAME "libarchive"
| #define PACKAGE_VERSION "3.7.2"
| #define PACKAGE_STRING "libarchive 3.7.2"
| #define PACKAGE_BUGREPORT "libarchive-discuss@googlegroups.com"
| #define PACKAGE_URL ""
| #define PACKAGE "libarchive"
| #define VERSION "3.7.2"
| #define __LIBARCHIVE_CONFIG_H_INCLUDED 1
| #define LIBARCHIVE_VERSION_STRING "3.7.2"
| #define LIBARCHIVE_VERSION_NUMBER "3007002"
| #define BSDCPIO_VERSION_STRING "3.7.2"
| #define BSDTAR_VERSION_STRING "3.7.2"
| #define BSDCAT_VERSION_STRING "3.7.2"
| #define BSDUNZIP_VERSION_STRING "3.7.2"
| #define HAVE_STDIO_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_SYS_TIME_H 1
| #define STDC_HEADERS 1
| #define _ALL_SOURCE 1
| #define _DARWIN_C_SOURCE 1
| #define _GNU_SOURCE 1
| #define _HPUX_ALT_XOPEN_SOCKET_API 1
| #define _NETBSD_SOURCE 1
| #define _OPENBSD_SOURCE 1
| #define _POSIX_PTHREAD_SEMANTICS 1
| #define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1
| #define __STDC_WANT_IEC_60559_BFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_DFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1
| #define __STDC_WANT_IEC_60559_TYPES_EXT__ 1
| #define __STDC_WANT_LIB_EXT2__ 1
| #define __STDC_WANT_MATH_SPEC_FUNCS__ 1
| #define _TANDEM_SOURCE 1
| #define __EXTENSIONS__ 1
| #define HAVE_DLFCN_H 1
| #define LT_OBJDIR ".libs/"
| #define HAVE_DIRENT_H 1
| #define HAVE_SYS_WAIT_H 1
| #define HAVE_CTYPE_H 1
| #define HAVE_ERRNO_H 1
| #define HAVE_FCNTL_H 1
| #define HAVE_FNMATCH_H 1
| #define HAVE_GRP_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_LANGINFO_H 1
| #define HAVE_LIMITS_H 1
| #define HAVE_LINUX_FIEMAP_H 1
| #define HAVE_LINUX_FS_H 1
| #define HAVE_LINUX_MAGIC_H 1
| #define HAVE_LINUX_TYPES_H 1
| #define HAVE_WORKING_FS_IOC_GETFLAGS 1
| #define HAVE_LOCALE_H 1
| #define HAVE_PATHS_H 1
| #define HAVE_POLL_H 1
| #define HAVE_PTHREAD_H 1
| #define HAVE_PWD_H 1
| #define HAVE_SIGNAL_H 1
| #define HAVE_SPAWN_H 1
| #define HAVE_STDARG_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_SYS_CDEFS_H 1
| #define HAVE_SYS_IOCTL_H 1
| #define HAVE_SYS_MOUNT_H 1
| #define HAVE_SYS_QUEUE_H 1
| #define HAVE_SYS_PARAM_H 1
| #define HAVE_SYS_POLL_H 1
| #define HAVE_SYS_SELECT_H 1
| #define HAVE_SYS_STATFS_H 1
| #define HAVE_SYS_STATVFS_H 1
| #define HAVE_SYS_SYSMACROS_H 1
| #define HAVE_SYS_TIME_H 1
| #define HAVE_SYS_UTSNAME_H 1
| #define HAVE_SYS_VFS_H 1
| #define HAVE_SYS_XATTR_H 1
| #define HAVE_TIME_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_UTIME_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_WCTYPE_H 1
| #define HAVE_ZLIB_H 1
| #define HAVE_LIBZ 1
| #define HAVE_ICONV 1
| #define ICONV_CONST 
| #define HAVE_ICONV_H 1
| #define HAVE_LZ4_H 1
| #define HAVE_LZ4HC_H 1
| #define HAVE_LIBLZ4 1
| #define HAVE_ZSTD_H 1
| #define HAVE_LIBZSTD 1
| #define HAVE_LIBZSTD_COMPRESSOR 1
| #define HAVE_LIBXML_XMLREADER_H 1
| #define HAVE_LIBXML_XMLWRITER_H 1
| #define HAVE_REGEX_H 1
| #define HAVE_STRUCT_TM_TM_GMTOFF 1
| #define HAVE_STRUCT_STAT_ST_MTIM_TV_NSEC 1
| #define HAVE_STRUCT_STAT_ST_BLKSIZE 1
| #define HAVE_UINTMAX_T 1
| #define HAVE_UNSIGNED_LONG_LONG 1
| #define HAVE_UNSIGNED_LONG_LONG_INT 1
| #define HAVE_LONG_LONG_INT 1
| #define HAVE_INTMAX_T 1
| #define HAVE_UINTMAX_T 1
| #define HAVE_DECL_SIZE_MAX 1
| #define HAVE_DECL_INT32_MAX 1
| #define HAVE_DECL_INT32_MIN 1
| #define HAVE_DECL_INT64_MAX 1
| #define HAVE_DECL_INT64_MIN 1
| #define HAVE_DECL_UINT64_MAX 1
| #define HAVE_DECL_UINT32_MAX 1
| #define HAVE_DECL_INTMAX_MAX 1
| #define HAVE_DECL_INTMAX_MIN 1
| #define HAVE_DECL_UINTMAX_MAX 1
| #define HAVE_DECL_SSIZE_MAX 1
| #define HAVE_EILSEQ 1
| #define HAVE_WCHAR_T 1
| #define SIZEOF_WCHAR_T 4
| #define SIZEOF_INT 4
| #define SIZEOF_LONG 4
| #define MAJOR_IN_SYSMACROS 1
| #define HAVE_FSEEKO 1
| #define LSTAT_FOLLOWS_SLASHED_SYMLINK 1
| #define HAVE_LSTAT_EMPTY_STRING_BUG 1
| #define HAVE_STAT_EMPTY_STRING_BUG 1
| #define HAVE_DECL_STRERROR_R 1
| #define HAVE_STRERROR_R 1
| #define STRERROR_R_CHAR_P 1
| #define HAVE_STRFTIME 1
| #define HAVE_VPRINTF 1
| #define HAVE_ARC4RANDOM_BUF 1
| #define HAVE_CHOWN 1
| #define HAVE_CHROOT 1
| #define HAVE_CTIME_R 1
| #define HAVE_FCHDIR 1
| #define HAVE_FCHMOD 1
| #define HAVE_FCHOWN 1
| #define HAVE_FCNTL 1
| #define HAVE_FDOPENDIR 1
| #define HAVE_FNMATCH 1
| #define HAVE_FORK 1
| #define HAVE_FSTAT 1
| #define HAVE_FSTATAT 1
| #define HAVE_FSTATFS 1
| #define HAVE_FSTATVFS 1
| #define HAVE_FTRUNCATE 1
| #define HAVE_FUTIMENS 1
| #define HAVE_FUTIMES 1
| #define HAVE_FUTIMESAT 1
| #define HAVE_GETEUID 1
| #define HAVE_GETLINE 1
| #define HAVE_GETPID 1
| #define HAVE_GETGRGID_R 1
| #define HAVE_GETGRNAM_R 1
| #define HAVE_GETPWNAM_R 1
| #define HAVE_GETPWUID_R 1
| #define HAVE_GMTIME_R 1
| #define HAVE_LCHMOD 1
| #define HAVE_LCHOWN 1
| #define HAVE_LINK 1
| #define HAVE_LINKAT 1
| #define HAVE_LOCALTIME_R 1
| #define HAVE_LSTAT 1
| #define HAVE_LUTIMES 1
| #define HAVE_MBRTOWC 1
| #define HAVE_MEMMOVE 1
| #define HAVE_MEMSET 1
| #define HAVE_MKDIR 1
| #define HAVE_MKFIFO 1
| #define HAVE_MKNOD 1
| #define HAVE_MKSTEMP 1
| #define HAVE_NL_LANGINFO 1
| #define HAVE_OPENAT 1
| #define HAVE_PIPE 1
| #define HAVE_POLL 1
| #define HAVE_POSIX_SPAWNP 1
| #define HAVE_READLINK 1
| #define HAVE_READLINKAT 1
| #define HAVE_SELECT 1
| #define HAVE_SETENV 1
| #define HAVE_SETLOCALE 1
| #define HAVE_SIGACTION 1
| #define HAVE_STATFS 1
| #define HAVE_STATVFS 1
| #define HAVE_STRCHR 1
| #define HAVE_STRDUP 1
| #define HAVE_STRERROR 1
| #define HAVE_STRNLEN 1
| #define HAVE_STRRCHR 1
| #define HAVE_SYMLINK 1
| #define HAVE_TIMEGM 1
| #define HAVE_TZSET 1
| #define HAVE_UNLINKAT 1
| #define HAVE_UNSETENV 1
| #define HAVE_UTIME 1
| #define HAVE_UTIMENSAT 1
| #define HAVE_UTIMES 1
| #define HAVE_VFORK 1
| #define HAVE_WCRTOMB 1
| #define HAVE_WCSCMP 1
| #define HAVE_WCSCPY 1
| #define HAVE_WCSLEN 1
| #define HAVE_WCTOMB 1
| #define HAVE_WMEMCMP 1
| #define HAVE_WMEMCPY 1
| #define HAVE_WMEMMOVE 1
| #define HAVE_READDIR_R 1
| #define HAVE_DIRFD 1
| /* end confdefs.h.  */
| 
| #define ARCHIVE_SHA512_COMPILE_TEST
| #define ARCHIVE_CRYPTO_SHA512_LIBC
| #define PLATFORM_CONFIG_H "check_crypto_md.h"
| 
| /*-
| * Copyright (c) 2003-2007 Tim Kientzle
| * Copyright (c) 2011 Andres Mejia
| * Copyright (c) 2011 Michihiro NAKAJIMA
| * All rights reserved.
| *
| * Redistribution and use in source and binary forms, with or without
| * modification, are permitted provided that the following conditions
| * are met:
| * 1. Redistributions of source code must retain the above copyright
| *    notice, this list of conditions and the following disclaimer.
| * 2. Redistributions in binary form must reproduce the above copyright
| *    notice, this list of conditions and the following disclaimer in the
| *    documentation and/or other materials provided with the distribution.
| *
| * THIS SOFTWARE IS PROVIDED BY THE AUTHOR(S) ``AS IS'' AND ANY EXPRESS OR
| * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
| * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
| * IN NO EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY DIRECT, INDIRECT,
| * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
| * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
| * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
| * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
| * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
| * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
| */
| 
| #include "archive_platform.h"
| 
| #include "archive.h"
| #include "archive_digest_private.h"
| 
| /* In particular, force the configure probe to break if it tries
|  * to test a combination of OpenSSL and libmd. */
| #if defined(ARCHIVE_CRYPTO_OPENSSL) && defined(ARCHIVE_CRYPTO_LIBMD)
| #error Cannot use both OpenSSL and libmd.
| #endif
| 
| /* Common in other bcrypt implementations, but missing from VS2008. */
| #ifndef BCRYPT_SUCCESS
| #define BCRYPT_SUCCESS(r) ((NTSTATUS)(r) == STATUS_SUCCESS)
| #endif
| 
| /*
|  * Message digest functions for Windows platform.
|  */
| #if defined(ARCHIVE_CRYPTO_MD5_WIN)    ||\
| 	defined(ARCHIVE_CRYPTO_SHA1_WIN)   ||\
| 	defined(ARCHIVE_CRYPTO_SHA256_WIN) ||\
| 	defined(ARCHIVE_CRYPTO_SHA384_WIN) ||\
| 	defined(ARCHIVE_CRYPTO_SHA512_WIN)
| 
| /*
|  * Initialize a Message digest.
|  */
| #if defined(HAVE_BCRYPT_H) && _WIN32_WINNT >= _WIN32_WINNT_VISTA
| static int
| win_crypto_init(Digest_CTX *ctx, const WCHAR *algo)
| {
| 	NTSTATUS status;
| 	ctx->valid = 0;
| 
| 	status = BCryptOpenAlgorithmProvider(&ctx->hAlg, algo, NULL, 0);
| 	if (!BCRYPT_SUCCESS(status))
| 		return (ARCHIVE_FAILED);
| 	status = BCryptCreateHash(ctx->hAlg, &ctx->hHash, NULL, 0, NULL, 0, 0);
| 	if (!BCRYPT_SUCCESS(status)) {
| 		BCryptCloseAlgorithmProvider(ctx->hAlg, 0);
| 		return (ARCHIVE_FAILED);
| 	}
| 
| 	ctx->valid = 1;
| 	return (ARCHIVE_OK);
| }
| #else
| static int
| win_crypto_init(Digest_CTX *ctx, DWORD prov, ALG_ID algId)
| {
| 
| 	ctx->valid = 0;
| 	if (!CryptAcquireContext(&ctx->cryptProv, NULL, NULL,
| 	    prov, CRYPT_VERIFYCONTEXT)) {
| 		if (GetLastError() != (DWORD)NTE_BAD_KEYSET)
| 			return (ARCHIVE_FAILED);
| 		if (!CryptAcquireContext(&ctx->cryptProv, NULL, NULL,
| 		    prov, CRYPT_NEWKEYSET))
| 			return (ARCHIVE_FAILED);
| 	}
| 
| 	if (!CryptCreateHash(ctx->cryptProv, algId, 0, 0, &ctx->hash)) {
| 		CryptReleaseContext(ctx->cryptProv, 0);
| 		return (ARCHIVE_FAILED);
| 	}
| 
| 	ctx->valid = 1;
| 	return (ARCHIVE_OK);
| }
| #endif
| 
| /*
|  * Update a Message digest.
|  */
| static int
| win_crypto_Update(Digest_CTX *ctx, const unsigned char *buf, size_t len)
| {
| 
| 	if (!ctx->valid)
| 		return (ARCHIVE_FAILED);
| 
| #if defined(HAVE_BCRYPT_H) && _WIN32_WINNT >= _WIN32_WINNT_VISTA
| 	BCryptHashData(ctx->hHash,
| 		      (PUCHAR)(uintptr_t)buf,
| 		      (ULONG)len, 0);
| #else
| 	CryptHashData(ctx->hash,
| 		      (unsigned char *)(uintptr_t)buf,
| 		      (DWORD)len, 0);
| #endif
| 	return (ARCHIVE_OK);
| }
| 
| static int
| win_crypto_Final(unsigned char *buf, size_t bufsize, Digest_CTX *ctx)
| {
| #if !(defined(HAVE_BCRYPT_H) && _WIN32_WINNT >= _WIN32_WINNT_VISTA)
| 	DWORD siglen = (DWORD)bufsize;
| #endif
| 
| 	if (!ctx->valid)
| 		return (ARCHIVE_FAILED);
| 
| #if defined(HAVE_BCRYPT_H) && _WIN32_WINNT >= _WIN32_WINNT_VISTA
| 	BCryptFinishHash(ctx->hHash, buf, (ULONG)bufsize, 0);
| 	BCryptDestroyHash(ctx->hHash);
| 	BCryptCloseAlgorithmProvider(ctx->hAlg, 0);
| #else
| 	CryptGetHashParam(ctx->hash, HP_HASHVAL, buf, &siglen, 0);
| 	CryptDestroyHash(ctx->hash);
| 	CryptReleaseContext(ctx->cryptProv, 0);
| #endif
| 	ctx->valid = 0;
| 	return (ARCHIVE_OK);
| }
| 
| #endif /* defined(ARCHIVE_CRYPTO_*_WIN) */
| 
| 
| /* MD5 implementations */
| #if defined(ARCHIVE_CRYPTO_MD5_LIBC)
| 
| static int
| __archive_md5init(archive_md5_ctx *ctx)
| {
|   MD5Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5update(archive_md5_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   MD5Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5final(archive_md5_ctx *ctx, void *md)
| {
|   MD5Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_MD5_LIBMD)
| 
| static int
| __archive_md5init(archive_md5_ctx *ctx)
| {
|   MD5Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5update(archive_md5_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   MD5Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5final(archive_md5_ctx *ctx, void *md)
| {
|   MD5Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_MD5_LIBSYSTEM)
| 
| static int
| __archive_md5init(archive_md5_ctx *ctx)
| {
|   CC_MD5_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5update(archive_md5_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   CC_MD5_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5final(archive_md5_ctx *ctx, void *md)
| {
|   CC_MD5_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_MD5_MBEDTLS)
| 
| static int
| __archive_md5init(archive_md5_ctx *ctx)
| {
|   mbedtls_md5_init(ctx);
|   if (mbedtls_md5_starts_ret(ctx) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_md5update(archive_md5_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   if (mbedtls_md5_update_ret(ctx, indata, insize) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_md5final(archive_md5_ctx *ctx, void *md)
| {
|   if (mbedtls_md5_finish_ret(ctx, md) == 0) {
|     mbedtls_md5_free(ctx);
|     return (ARCHIVE_OK);
|   } else {
|     mbedtls_md5_free(ctx);
|     return (ARCHIVE_FATAL);
|   }
| }
| 
| #elif defined(ARCHIVE_CRYPTO_MD5_NETTLE)
| 
| static int
| __archive_md5init(archive_md5_ctx *ctx)
| {
|   md5_init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5update(archive_md5_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   md5_update(ctx, insize, indata);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5final(archive_md5_ctx *ctx, void *md)
| {
|   md5_digest(ctx, MD5_DIGEST_SIZE, md);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_MD5_OPENSSL)
| 
| static int
| __archive_md5init(archive_md5_ctx *ctx)
| {
|   if ((*ctx = EVP_MD_CTX_new()) == NULL)
| 	return (ARCHIVE_FAILED);
|   if (!EVP_DigestInit(*ctx, EVP_md5()))
| 	return (ARCHIVE_FAILED);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5update(archive_md5_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   EVP_DigestUpdate(*ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5final(archive_md5_ctx *ctx, void *md)
| {
|   /* HACK: archive_write_set_format_xar.c is finalizing empty contexts, so
|    * this is meant to cope with that. Real fix is probably to fix
|    * archive_write_set_format_xar.c
|    */
|   if (*ctx) {
|     EVP_DigestFinal(*ctx, md, NULL);
|     EVP_MD_CTX_free(*ctx);
|     *ctx = NULL;
|   }
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_MD5_WIN)
| 
| static int
| __archive_md5init(archive_md5_ctx *ctx)
| {
| #if defined(HAVE_BCRYPT_H) && _WIN32_WINNT >= _WIN32_WINNT_VISTA
|   return (win_crypto_init(ctx, BCRYPT_MD5_ALGORITHM));
| #else
|   return (win_crypto_init(ctx, PROV_RSA_FULL, CALG_MD5));
| #endif
| }
| 
| static int
| __archive_md5update(archive_md5_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   return (win_crypto_Update(ctx, indata, insize));
| }
| 
| static int
| __archive_md5final(archive_md5_ctx *ctx, void *md)
| {
|   return (win_crypto_Final(md, 16, ctx));
| }
| 
| #else
| 
| static int
| __archive_md5init(archive_md5_ctx *ctx)
| {
| 	(void)ctx; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_md5update(archive_md5_ctx *ctx, const void *indata,
|     size_t insize)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)indata; /* UNUSED */
| 	(void)insize; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_md5final(archive_md5_ctx *ctx, void *md)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)md; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| #endif
| 
| /* RIPEMD160 implementations */
| #if defined(ARCHIVE_CRYPTO_RMD160_LIBC)
| 
| static int
| __archive_ripemd160init(archive_rmd160_ctx *ctx)
| {
|   RMD160Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   RMD160Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md)
| {
|   RMD160Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_RMD160_LIBMD)
| 
| static int
| __archive_ripemd160init(archive_rmd160_ctx *ctx)
| {
|   RIPEMD160_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   RIPEMD160_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md)
| {
|   RIPEMD160_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_RMD160_MBEDTLS)
| 
| static int
| __archive_ripemd160init(archive_rmd160_ctx *ctx)
| {
|   mbedtls_ripemd160_init(ctx);
|   if (mbedtls_ripemd160_starts_ret(ctx) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   if (mbedtls_ripemd160_update_ret(ctx, indata, insize) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md)
| {
|   if (mbedtls_ripemd160_finish_ret(ctx, md) == 0) {
|     mbedtls_ripemd160_free(ctx);
|     return (ARCHIVE_OK);
|   } else {
|     mbedtls_ripemd160_free(ctx);
|     return (ARCHIVE_FATAL);
|   }
| }
| 
| #elif defined(ARCHIVE_CRYPTO_RMD160_NETTLE)
| 
| static int
| __archive_ripemd160init(archive_rmd160_ctx *ctx)
| {
|   ripemd160_init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   ripemd160_update(ctx, insize, indata);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md)
| {
|   ripemd160_digest(ctx, RIPEMD160_DIGEST_SIZE, md);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_RMD160_OPENSSL)
| 
| static int
| __archive_ripemd160init(archive_rmd160_ctx *ctx)
| {
|   if ((*ctx = EVP_MD_CTX_new()) == NULL)
| 	return (ARCHIVE_FAILED);
|   if (!EVP_DigestInit(*ctx, EVP_ripemd160()))
| 	return (ARCHIVE_FAILED);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   EVP_DigestUpdate(*ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md)
| {
|   if (*ctx) {
|     EVP_DigestFinal(*ctx, md, NULL);
|     EVP_MD_CTX_free(*ctx);
|     *ctx = NULL;
|   }
|   return (ARCHIVE_OK);
| }
| 
| #else
| 
| static int
| __archive_ripemd160init(archive_rmd160_ctx *ctx)
| {
| 	(void)ctx; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata,
|     size_t insize)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)indata; /* UNUSED */
| 	(void)insize; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)md; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| #endif
| 
| /* SHA1 implementations */
| #if defined(ARCHIVE_CRYPTO_SHA1_LIBC)
| 
| static int
| __archive_sha1init(archive_sha1_ctx *ctx)
| {
|   SHA1Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1update(archive_sha1_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA1Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1final(archive_sha1_ctx *ctx, void *md)
| {
|   SHA1Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA1_LIBMD)
| 
| static int
| __archive_sha1init(archive_sha1_ctx *ctx)
| {
|   SHA1_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1update(archive_sha1_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA1_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1final(archive_sha1_ctx *ctx, void *md)
| {
|   SHA1_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA1_LIBSYSTEM)
| 
| static int
| __archive_sha1init(archive_sha1_ctx *ctx)
| {
|   CC_SHA1_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1update(archive_sha1_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   CC_SHA1_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1final(archive_sha1_ctx *ctx, void *md)
| {
|   CC_SHA1_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA1_MBEDTLS)
| 
| static int
| __archive_sha1init(archive_sha1_ctx *ctx)
| {
|   mbedtls_sha1_init(ctx);
|   if (mbedtls_sha1_starts_ret(ctx) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_sha1update(archive_sha1_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   if (mbedtls_sha1_update_ret(ctx, indata, insize) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_sha1final(archive_sha1_ctx *ctx, void *md)
| {
|   if (mbedtls_sha1_finish_ret(ctx, md) == 0) {
|     mbedtls_sha1_free(ctx);
|     return (ARCHIVE_OK);
|   } else {
|     mbedtls_sha1_free(ctx);
|     return (ARCHIVE_FATAL);
|   }
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA1_NETTLE)
| 
| static int
| __archive_sha1init(archive_sha1_ctx *ctx)
| {
|   sha1_init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1update(archive_sha1_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   sha1_update(ctx, insize, indata);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1final(archive_sha1_ctx *ctx, void *md)
| {
|   sha1_digest(ctx, SHA1_DIGEST_SIZE, md);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA1_OPENSSL)
| 
| static int
| __archive_sha1init(archive_sha1_ctx *ctx)
| {
|   if ((*ctx = EVP_MD_CTX_new()) == NULL)
| 	return (ARCHIVE_FAILED);
|   if (!EVP_DigestInit(*ctx, EVP_sha1()))
| 	return (ARCHIVE_FAILED);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1update(archive_sha1_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   EVP_DigestUpdate(*ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1final(archive_sha1_ctx *ctx, void *md)
| {
|   /* HACK: archive_write_set_format_xar.c is finalizing empty contexts, so
|    * this is meant to cope with that. Real fix is probably to fix
|    * archive_write_set_format_xar.c
|    */
|   if (*ctx) {
|     EVP_DigestFinal(*ctx, md, NULL);
|     EVP_MD_CTX_free(*ctx);
|     *ctx = NULL;
|   }
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA1_WIN)
| 
| static int
| __archive_sha1init(archive_sha1_ctx *ctx)
| {
| #if defined(HAVE_BCRYPT_H) && _WIN32_WINNT >= _WIN32_WINNT_VISTA
|   return (win_crypto_init(ctx, BCRYPT_SHA1_ALGORITHM));
| #else
|   return (win_crypto_init(ctx, PROV_RSA_FULL, CALG_SHA1));
| #endif
| }
| 
| static int
| __archive_sha1update(archive_sha1_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   return (win_crypto_Update(ctx, indata, insize));
| }
| 
| static int
| __archive_sha1final(archive_sha1_ctx *ctx, void *md)
| {
|   return (win_crypto_Final(md, 20, ctx));
| }
| 
| #else
| 
| static int
| __archive_sha1init(archive_sha1_ctx *ctx)
| {
| 	(void)ctx; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_sha1update(archive_sha1_ctx *ctx, const void *indata,
|     size_t insize)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)indata; /* UNUSED */
| 	(void)insize; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_sha1final(archive_sha1_ctx *ctx, void *md)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)md; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| #endif
| 
| /* SHA256 implementations */
| #if defined(ARCHIVE_CRYPTO_SHA256_LIBC)
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
|   SHA256_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA256_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
|   SHA256_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA256_LIBC2)
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
|   SHA256Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA256Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
|   SHA256Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA256_LIBC3)
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
|   SHA256Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA256Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
|   SHA256Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA256_LIBMD)
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
|   SHA256_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA256_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
|   SHA256_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA256_LIBSYSTEM)
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
|   CC_SHA256_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   CC_SHA256_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
|   CC_SHA256_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA256_MBEDTLS)
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
|   mbedtls_sha256_init(ctx);
|   if (mbedtls_sha256_starts_ret(ctx, 0) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   if (mbedtls_sha256_update_ret(ctx, indata, insize) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
|   if (mbedtls_sha256_finish_ret(ctx, md) == 0) {
|     mbedtls_sha256_free(ctx);
|     return (ARCHIVE_OK);
|   } else {
|     mbedtls_sha256_free(ctx);
|     return (ARCHIVE_FATAL);
|   }
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA256_NETTLE)
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
|   sha256_init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   sha256_update(ctx, insize, indata);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
|   sha256_digest(ctx, SHA256_DIGEST_SIZE, md);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA256_OPENSSL)
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
|   if ((*ctx = EVP_MD_CTX_new()) == NULL)
| 	return (ARCHIVE_FAILED);
|   if (!EVP_DigestInit(*ctx, EVP_sha256()))
| 	return (ARCHIVE_FAILED);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   EVP_DigestUpdate(*ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
|   if (*ctx) {
|     EVP_DigestFinal(*ctx, md, NULL);
|     EVP_MD_CTX_free(*ctx);
|     *ctx = NULL;
|   }
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA256_WIN)
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
| #if defined(HAVE_BCRYPT_H) && _WIN32_WINNT >= _WIN32_WINNT_VISTA
|   return (win_crypto_init(ctx, BCRYPT_SHA256_ALGORITHM));
| #else
|   return (win_crypto_init(ctx, PROV_RSA_AES, CALG_SHA_256));
| #endif
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   return (win_crypto_Update(ctx, indata, insize));
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
|   return (win_crypto_Final(md, 32, ctx));
| }
| 
| #else
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
| 	(void)ctx; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)indata; /* UNUSED */
| 	(void)insize; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)md; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| #endif
| 
| /* SHA384 implementations */
| #if defined(ARCHIVE_CRYPTO_SHA384_LIBC)
| 
| static int
| __archive_sha384init(archive_sha384_ctx *ctx)
| {
|   SHA384_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384update(archive_sha384_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA384_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384final(archive_sha384_ctx *ctx, void *md)
| {
|   SHA384_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA384_LIBC2)
| 
| static int
| __archive_sha384init(archive_sha384_ctx *ctx)
| {
|   SHA384Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384update(archive_sha384_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA384Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384final(archive_sha384_ctx *ctx, void *md)
| {
|   SHA384Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA384_LIBC3)
| 
| static int
| __archive_sha384init(archive_sha384_ctx *ctx)
| {
|   SHA384Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384update(archive_sha384_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA384Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384final(archive_sha384_ctx *ctx, void *md)
| {
|   SHA384Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA384_LIBSYSTEM)
| 
| static int
| __archive_sha384init(archive_sha384_ctx *ctx)
| {
|   CC_SHA384_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384update(archive_sha384_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   CC_SHA384_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384final(archive_sha384_ctx *ctx, void *md)
| {
|   CC_SHA384_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA384_MBEDTLS)
| 
| static int
| __archive_sha384init(archive_sha384_ctx *ctx)
| {
|   mbedtls_sha512_init(ctx);
|   if (mbedtls_sha512_starts_ret(ctx, 1) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_sha384update(archive_sha384_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   if (mbedtls_sha512_update_ret(ctx, indata, insize) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_sha384final(archive_sha384_ctx *ctx, void *md)
| {
|   if (mbedtls_sha512_finish_ret(ctx, md) == 0) {
|     mbedtls_sha512_free(ctx);
|     return (ARCHIVE_OK);
|   } else {
|     mbedtls_sha512_free(ctx);
|     return (ARCHIVE_FATAL);
|   }
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA384_NETTLE)
| 
| static int
| __archive_sha384init(archive_sha384_ctx *ctx)
| {
|   sha384_init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384update(archive_sha384_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   sha384_update(ctx, insize, indata);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384final(archive_sha384_ctx *ctx, void *md)
| {
|   sha384_digest(ctx, SHA384_DIGEST_SIZE, md);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA384_OPENSSL)
| 
| static int
| __archive_sha384init(archive_sha384_ctx *ctx)
| {
|   if ((*ctx = EVP_MD_CTX_new()) == NULL)
| 	return (ARCHIVE_FAILED);
|   if (!EVP_DigestInit(*ctx, EVP_sha384()))
| 	return (ARCHIVE_FAILED);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384update(archive_sha384_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   EVP_DigestUpdate(*ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384final(archive_sha384_ctx *ctx, void *md)
| {
|   if (*ctx) {
|     EVP_DigestFinal(*ctx, md, NULL);
|     EVP_MD_CTX_free(*ctx);
|     *ctx = NULL;
|   }
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA384_WIN)
| 
| static int
| __archive_sha384init(archive_sha384_ctx *ctx)
| {
| #if defined(HAVE_BCRYPT_H) && _WIN32_WINNT >= _WIN32_WINNT_VISTA
|   return (win_crypto_init(ctx, BCRYPT_SHA384_ALGORITHM));
| #else
|   return (win_crypto_init(ctx, PROV_RSA_AES, CALG_SHA_384));
| #endif
| }
| 
| static int
| __archive_sha384update(archive_sha384_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   return (win_crypto_Update(ctx, indata, insize));
| }
| 
| static int
| __archive_sha384final(archive_sha384_ctx *ctx, void *md)
| {
|   return (win_crypto_Final(md, 48, ctx));
| }
| 
| #else
| 
| static int
| __archive_sha384init(archive_sha384_ctx *ctx)
| {
| 	(void)ctx; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_sha384update(archive_sha384_ctx *ctx, const void *indata,
|     size_t insize)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)indata; /* UNUSED */
| 	(void)insize; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_sha384final(archive_sha384_ctx *ctx, void *md)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)md; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| #endif
| 
| /* SHA512 implementations */
| #if defined(ARCHIVE_CRYPTO_SHA512_LIBC)
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
|   SHA512_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA512_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
|   SHA512_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA512_LIBC2)
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
|   SHA512Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA512Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
|   SHA512Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA512_LIBC3)
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
|   SHA512Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA512Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
|   SHA512Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA512_LIBMD)
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
|   SHA512_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA512_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
|   SHA512_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA512_LIBSYSTEM)
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
|   CC_SHA512_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   CC_SHA512_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
|   CC_SHA512_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA512_MBEDTLS)
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
|   mbedtls_sha512_init(ctx);
|   if (mbedtls_sha512_starts_ret(ctx, 0) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   if (mbedtls_sha512_update_ret(ctx, indata, insize) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
|   if (mbedtls_sha512_finish_ret(ctx, md) == 0) {
|     mbedtls_sha512_free(ctx);
|     return (ARCHIVE_OK);
|   } else {
|     mbedtls_sha512_free(ctx);
|     return (ARCHIVE_FATAL);
|   }
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA512_NETTLE)
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
|   sha512_init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   sha512_update(ctx, insize, indata);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
|   sha512_digest(ctx, SHA512_DIGEST_SIZE, md);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA512_OPENSSL)
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
|   if ((*ctx = EVP_MD_CTX_new()) == NULL)
| 	return (ARCHIVE_FAILED);
|   if (!EVP_DigestInit(*ctx, EVP_sha512()))
| 	return (ARCHIVE_FAILED);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   EVP_DigestUpdate(*ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
|   if (*ctx) {
|     EVP_DigestFinal(*ctx, md, NULL);
|     EVP_MD_CTX_free(*ctx);
|     *ctx = NULL;
|   }
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA512_WIN)
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
| #if defined(HAVE_BCRYPT_H) && _WIN32_WINNT >= _WIN32_WINNT_VISTA
|   return (win_crypto_init(ctx, BCRYPT_SHA512_ALGORITHM));
| #else
|   return (win_crypto_init(ctx, PROV_RSA_AES, CALG_SHA_512));
| #endif
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   return (win_crypto_Update(ctx, indata, insize));
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
|   return (win_crypto_Final(md, 64, ctx));
| }
| 
| #else
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
| 	(void)ctx; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)indata; /* UNUSED */
| 	(void)insize; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)md; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| #endif
| 
| /* NOTE: Message Digest functions are set based on availability and by the
|  * following order of preference.
|  * 1. libc
|  * 2. libc2
|  * 3. libc3
|  * 4. libSystem
|  * 5. Nettle
|  * 6. OpenSSL
|  * 7. libmd
|  * 8. Windows API
|  */
| const struct archive_digest __archive_digest =
| {
| /* MD5 */
|   &__archive_md5init,
|   &__archive_md5update,
|   &__archive_md5final,
| 
| /* RIPEMD160 */
|   &__archive_ripemd160init,
|   &__archive_ripemd160update,
|   &__archive_ripemd160final,
| 
| /* SHA1 */
|   &__archive_sha1init,
|   &__archive_sha1update,
|   &__archive_sha1final,
| 
| /* SHA256 */
|   &__archive_sha256init,
|   &__archive_sha256update,
|   &__archive_sha256final,
| 
| /* SHA384 */
|   &__archive_sha384init,
|   &__archive_sha384update,
|   &__archive_sha384final,
| 
| /* SHA512 */
|   &__archive_sha512init,
|   &__archive_sha512update,
|   &__archive_sha512final
| };
| 
| int
| main(int argc, char **argv)
| {
|   archive_sha512_ctx ctx;
|   archive_sha512_init(&ctx);
|   archive_sha512_update(&ctx, *argv, argc);
|   archive_sha512_final(&ctx, NULL);
|   return 0;
| }
| 
configure:18316: result: no
configure:18330: checking support for ARCHIVE_CRYPTO_SHA512_LIBC2
configure:18352: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -o conftest -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2  -I. -I. -I./libarchive  conftest.c -lzstd -llz4 -lz  -L/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/lib -lxml2  >&5
In file included from conftest.c:255:
./libarchive/archive_digest_private.h:81:10: fatal error: sha2.h: No such file or directory
   81 | #include <sha2.h>
      |          ^~~~~~~~
compilation terminated.
configure:18352: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "libarchive"
| #define PACKAGE_TARNAME "libarchive"
| #define PACKAGE_VERSION "3.7.2"
| #define PACKAGE_STRING "libarchive 3.7.2"
| #define PACKAGE_BUGREPORT "libarchive-discuss@googlegroups.com"
| #define PACKAGE_URL ""
| #define PACKAGE "libarchive"
| #define VERSION "3.7.2"
| #define __LIBARCHIVE_CONFIG_H_INCLUDED 1
| #define LIBARCHIVE_VERSION_STRING "3.7.2"
| #define LIBARCHIVE_VERSION_NUMBER "3007002"
| #define BSDCPIO_VERSION_STRING "3.7.2"
| #define BSDTAR_VERSION_STRING "3.7.2"
| #define BSDCAT_VERSION_STRING "3.7.2"
| #define BSDUNZIP_VERSION_STRING "3.7.2"
| #define HAVE_STDIO_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_SYS_TIME_H 1
| #define STDC_HEADERS 1
| #define _ALL_SOURCE 1
| #define _DARWIN_C_SOURCE 1
| #define _GNU_SOURCE 1
| #define _HPUX_ALT_XOPEN_SOCKET_API 1
| #define _NETBSD_SOURCE 1
| #define _OPENBSD_SOURCE 1
| #define _POSIX_PTHREAD_SEMANTICS 1
| #define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1
| #define __STDC_WANT_IEC_60559_BFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_DFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1
| #define __STDC_WANT_IEC_60559_TYPES_EXT__ 1
| #define __STDC_WANT_LIB_EXT2__ 1
| #define __STDC_WANT_MATH_SPEC_FUNCS__ 1
| #define _TANDEM_SOURCE 1
| #define __EXTENSIONS__ 1
| #define HAVE_DLFCN_H 1
| #define LT_OBJDIR ".libs/"
| #define HAVE_DIRENT_H 1
| #define HAVE_SYS_WAIT_H 1
| #define HAVE_CTYPE_H 1
| #define HAVE_ERRNO_H 1
| #define HAVE_FCNTL_H 1
| #define HAVE_FNMATCH_H 1
| #define HAVE_GRP_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_LANGINFO_H 1
| #define HAVE_LIMITS_H 1
| #define HAVE_LINUX_FIEMAP_H 1
| #define HAVE_LINUX_FS_H 1
| #define HAVE_LINUX_MAGIC_H 1
| #define HAVE_LINUX_TYPES_H 1
| #define HAVE_WORKING_FS_IOC_GETFLAGS 1
| #define HAVE_LOCALE_H 1
| #define HAVE_PATHS_H 1
| #define HAVE_POLL_H 1
| #define HAVE_PTHREAD_H 1
| #define HAVE_PWD_H 1
| #define HAVE_SIGNAL_H 1
| #define HAVE_SPAWN_H 1
| #define HAVE_STDARG_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_SYS_CDEFS_H 1
| #define HAVE_SYS_IOCTL_H 1
| #define HAVE_SYS_MOUNT_H 1
| #define HAVE_SYS_QUEUE_H 1
| #define HAVE_SYS_PARAM_H 1
| #define HAVE_SYS_POLL_H 1
| #define HAVE_SYS_SELECT_H 1
| #define HAVE_SYS_STATFS_H 1
| #define HAVE_SYS_STATVFS_H 1
| #define HAVE_SYS_SYSMACROS_H 1
| #define HAVE_SYS_TIME_H 1
| #define HAVE_SYS_UTSNAME_H 1
| #define HAVE_SYS_VFS_H 1
| #define HAVE_SYS_XATTR_H 1
| #define HAVE_TIME_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_UTIME_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_WCTYPE_H 1
| #define HAVE_ZLIB_H 1
| #define HAVE_LIBZ 1
| #define HAVE_ICONV 1
| #define ICONV_CONST 
| #define HAVE_ICONV_H 1
| #define HAVE_LZ4_H 1
| #define HAVE_LZ4HC_H 1
| #define HAVE_LIBLZ4 1
| #define HAVE_ZSTD_H 1
| #define HAVE_LIBZSTD 1
| #define HAVE_LIBZSTD_COMPRESSOR 1
| #define HAVE_LIBXML_XMLREADER_H 1
| #define HAVE_LIBXML_XMLWRITER_H 1
| #define HAVE_REGEX_H 1
| #define HAVE_STRUCT_TM_TM_GMTOFF 1
| #define HAVE_STRUCT_STAT_ST_MTIM_TV_NSEC 1
| #define HAVE_STRUCT_STAT_ST_BLKSIZE 1
| #define HAVE_UINTMAX_T 1
| #define HAVE_UNSIGNED_LONG_LONG 1
| #define HAVE_UNSIGNED_LONG_LONG_INT 1
| #define HAVE_LONG_LONG_INT 1
| #define HAVE_INTMAX_T 1
| #define HAVE_UINTMAX_T 1
| #define HAVE_DECL_SIZE_MAX 1
| #define HAVE_DECL_INT32_MAX 1
| #define HAVE_DECL_INT32_MIN 1
| #define HAVE_DECL_INT64_MAX 1
| #define HAVE_DECL_INT64_MIN 1
| #define HAVE_DECL_UINT64_MAX 1
| #define HAVE_DECL_UINT32_MAX 1
| #define HAVE_DECL_INTMAX_MAX 1
| #define HAVE_DECL_INTMAX_MIN 1
| #define HAVE_DECL_UINTMAX_MAX 1
| #define HAVE_DECL_SSIZE_MAX 1
| #define HAVE_EILSEQ 1
| #define HAVE_WCHAR_T 1
| #define SIZEOF_WCHAR_T 4
| #define SIZEOF_INT 4
| #define SIZEOF_LONG 4
| #define MAJOR_IN_SYSMACROS 1
| #define HAVE_FSEEKO 1
| #define LSTAT_FOLLOWS_SLASHED_SYMLINK 1
| #define HAVE_LSTAT_EMPTY_STRING_BUG 1
| #define HAVE_STAT_EMPTY_STRING_BUG 1
| #define HAVE_DECL_STRERROR_R 1
| #define HAVE_STRERROR_R 1
| #define STRERROR_R_CHAR_P 1
| #define HAVE_STRFTIME 1
| #define HAVE_VPRINTF 1
| #define HAVE_ARC4RANDOM_BUF 1
| #define HAVE_CHOWN 1
| #define HAVE_CHROOT 1
| #define HAVE_CTIME_R 1
| #define HAVE_FCHDIR 1
| #define HAVE_FCHMOD 1
| #define HAVE_FCHOWN 1
| #define HAVE_FCNTL 1
| #define HAVE_FDOPENDIR 1
| #define HAVE_FNMATCH 1
| #define HAVE_FORK 1
| #define HAVE_FSTAT 1
| #define HAVE_FSTATAT 1
| #define HAVE_FSTATFS 1
| #define HAVE_FSTATVFS 1
| #define HAVE_FTRUNCATE 1
| #define HAVE_FUTIMENS 1
| #define HAVE_FUTIMES 1
| #define HAVE_FUTIMESAT 1
| #define HAVE_GETEUID 1
| #define HAVE_GETLINE 1
| #define HAVE_GETPID 1
| #define HAVE_GETGRGID_R 1
| #define HAVE_GETGRNAM_R 1
| #define HAVE_GETPWNAM_R 1
| #define HAVE_GETPWUID_R 1
| #define HAVE_GMTIME_R 1
| #define HAVE_LCHMOD 1
| #define HAVE_LCHOWN 1
| #define HAVE_LINK 1
| #define HAVE_LINKAT 1
| #define HAVE_LOCALTIME_R 1
| #define HAVE_LSTAT 1
| #define HAVE_LUTIMES 1
| #define HAVE_MBRTOWC 1
| #define HAVE_MEMMOVE 1
| #define HAVE_MEMSET 1
| #define HAVE_MKDIR 1
| #define HAVE_MKFIFO 1
| #define HAVE_MKNOD 1
| #define HAVE_MKSTEMP 1
| #define HAVE_NL_LANGINFO 1
| #define HAVE_OPENAT 1
| #define HAVE_PIPE 1
| #define HAVE_POLL 1
| #define HAVE_POSIX_SPAWNP 1
| #define HAVE_READLINK 1
| #define HAVE_READLINKAT 1
| #define HAVE_SELECT 1
| #define HAVE_SETENV 1
| #define HAVE_SETLOCALE 1
| #define HAVE_SIGACTION 1
| #define HAVE_STATFS 1
| #define HAVE_STATVFS 1
| #define HAVE_STRCHR 1
| #define HAVE_STRDUP 1
| #define HAVE_STRERROR 1
| #define HAVE_STRNLEN 1
| #define HAVE_STRRCHR 1
| #define HAVE_SYMLINK 1
| #define HAVE_TIMEGM 1
| #define HAVE_TZSET 1
| #define HAVE_UNLINKAT 1
| #define HAVE_UNSETENV 1
| #define HAVE_UTIME 1
| #define HAVE_UTIMENSAT 1
| #define HAVE_UTIMES 1
| #define HAVE_VFORK 1
| #define HAVE_WCRTOMB 1
| #define HAVE_WCSCMP 1
| #define HAVE_WCSCPY 1
| #define HAVE_WCSLEN 1
| #define HAVE_WCTOMB 1
| #define HAVE_WMEMCMP 1
| #define HAVE_WMEMCPY 1
| #define HAVE_WMEMMOVE 1
| #define HAVE_READDIR_R 1
| #define HAVE_DIRFD 1
| /* end confdefs.h.  */
| 
| #define ARCHIVE_SHA512_COMPILE_TEST
| #define ARCHIVE_CRYPTO_SHA512_LIBC2
| #define PLATFORM_CONFIG_H "check_crypto_md.h"
| 
| /*-
| * Copyright (c) 2003-2007 Tim Kientzle
| * Copyright (c) 2011 Andres Mejia
| * Copyright (c) 2011 Michihiro NAKAJIMA
| * All rights reserved.
| *
| * Redistribution and use in source and binary forms, with or without
| * modification, are permitted provided that the following conditions
| * are met:
| * 1. Redistributions of source code must retain the above copyright
| *    notice, this list of conditions and the following disclaimer.
| * 2. Redistributions in binary form must reproduce the above copyright
| *    notice, this list of conditions and the following disclaimer in the
| *    documentation and/or other materials provided with the distribution.
| *
| * THIS SOFTWARE IS PROVIDED BY THE AUTHOR(S) ``AS IS'' AND ANY EXPRESS OR
| * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
| * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
| * IN NO EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY DIRECT, INDIRECT,
| * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
| * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
| * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
| * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
| * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
| * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
| */
| 
| #include "archive_platform.h"
| 
| #include "archive.h"
| #include "archive_digest_private.h"
| 
| /* In particular, force the configure probe to break if it tries
|  * to test a combination of OpenSSL and libmd. */
| #if defined(ARCHIVE_CRYPTO_OPENSSL) && defined(ARCHIVE_CRYPTO_LIBMD)
| #error Cannot use both OpenSSL and libmd.
| #endif
| 
| /* Common in other bcrypt implementations, but missing from VS2008. */
| #ifndef BCRYPT_SUCCESS
| #define BCRYPT_SUCCESS(r) ((NTSTATUS)(r) == STATUS_SUCCESS)
| #endif
| 
| /*
|  * Message digest functions for Windows platform.
|  */
| #if defined(ARCHIVE_CRYPTO_MD5_WIN)    ||\
| 	defined(ARCHIVE_CRYPTO_SHA1_WIN)   ||\
| 	defined(ARCHIVE_CRYPTO_SHA256_WIN) ||\
| 	defined(ARCHIVE_CRYPTO_SHA384_WIN) ||\
| 	defined(ARCHIVE_CRYPTO_SHA512_WIN)
| 
| /*
|  * Initialize a Message digest.
|  */
| #if defined(HAVE_BCRYPT_H) && _WIN32_WINNT >= _WIN32_WINNT_VISTA
| static int
| win_crypto_init(Digest_CTX *ctx, const WCHAR *algo)
| {
| 	NTSTATUS status;
| 	ctx->valid = 0;
| 
| 	status = BCryptOpenAlgorithmProvider(&ctx->hAlg, algo, NULL, 0);
| 	if (!BCRYPT_SUCCESS(status))
| 		return (ARCHIVE_FAILED);
| 	status = BCryptCreateHash(ctx->hAlg, &ctx->hHash, NULL, 0, NULL, 0, 0);
| 	if (!BCRYPT_SUCCESS(status)) {
| 		BCryptCloseAlgorithmProvider(ctx->hAlg, 0);
| 		return (ARCHIVE_FAILED);
| 	}
| 
| 	ctx->valid = 1;
| 	return (ARCHIVE_OK);
| }
| #else
| static int
| win_crypto_init(Digest_CTX *ctx, DWORD prov, ALG_ID algId)
| {
| 
| 	ctx->valid = 0;
| 	if (!CryptAcquireContext(&ctx->cryptProv, NULL, NULL,
| 	    prov, CRYPT_VERIFYCONTEXT)) {
| 		if (GetLastError() != (DWORD)NTE_BAD_KEYSET)
| 			return (ARCHIVE_FAILED);
| 		if (!CryptAcquireContext(&ctx->cryptProv, NULL, NULL,
| 		    prov, CRYPT_NEWKEYSET))
| 			return (ARCHIVE_FAILED);
| 	}
| 
| 	if (!CryptCreateHash(ctx->cryptProv, algId, 0, 0, &ctx->hash)) {
| 		CryptReleaseContext(ctx->cryptProv, 0);
| 		return (ARCHIVE_FAILED);
| 	}
| 
| 	ctx->valid = 1;
| 	return (ARCHIVE_OK);
| }
| #endif
| 
| /*
|  * Update a Message digest.
|  */
| static int
| win_crypto_Update(Digest_CTX *ctx, const unsigned char *buf, size_t len)
| {
| 
| 	if (!ctx->valid)
| 		return (ARCHIVE_FAILED);
| 
| #if defined(HAVE_BCRYPT_H) && _WIN32_WINNT >= _WIN32_WINNT_VISTA
| 	BCryptHashData(ctx->hHash,
| 		      (PUCHAR)(uintptr_t)buf,
| 		      (ULONG)len, 0);
| #else
| 	CryptHashData(ctx->hash,
| 		      (unsigned char *)(uintptr_t)buf,
| 		      (DWORD)len, 0);
| #endif
| 	return (ARCHIVE_OK);
| }
| 
| static int
| win_crypto_Final(unsigned char *buf, size_t bufsize, Digest_CTX *ctx)
| {
| #if !(defined(HAVE_BCRYPT_H) && _WIN32_WINNT >= _WIN32_WINNT_VISTA)
| 	DWORD siglen = (DWORD)bufsize;
| #endif
| 
| 	if (!ctx->valid)
| 		return (ARCHIVE_FAILED);
| 
| #if defined(HAVE_BCRYPT_H) && _WIN32_WINNT >= _WIN32_WINNT_VISTA
| 	BCryptFinishHash(ctx->hHash, buf, (ULONG)bufsize, 0);
| 	BCryptDestroyHash(ctx->hHash);
| 	BCryptCloseAlgorithmProvider(ctx->hAlg, 0);
| #else
| 	CryptGetHashParam(ctx->hash, HP_HASHVAL, buf, &siglen, 0);
| 	CryptDestroyHash(ctx->hash);
| 	CryptReleaseContext(ctx->cryptProv, 0);
| #endif
| 	ctx->valid = 0;
| 	return (ARCHIVE_OK);
| }
| 
| #endif /* defined(ARCHIVE_CRYPTO_*_WIN) */
| 
| 
| /* MD5 implementations */
| #if defined(ARCHIVE_CRYPTO_MD5_LIBC)
| 
| static int
| __archive_md5init(archive_md5_ctx *ctx)
| {
|   MD5Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5update(archive_md5_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   MD5Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5final(archive_md5_ctx *ctx, void *md)
| {
|   MD5Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_MD5_LIBMD)
| 
| static int
| __archive_md5init(archive_md5_ctx *ctx)
| {
|   MD5Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5update(archive_md5_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   MD5Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5final(archive_md5_ctx *ctx, void *md)
| {
|   MD5Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_MD5_LIBSYSTEM)
| 
| static int
| __archive_md5init(archive_md5_ctx *ctx)
| {
|   CC_MD5_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5update(archive_md5_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   CC_MD5_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5final(archive_md5_ctx *ctx, void *md)
| {
|   CC_MD5_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_MD5_MBEDTLS)
| 
| static int
| __archive_md5init(archive_md5_ctx *ctx)
| {
|   mbedtls_md5_init(ctx);
|   if (mbedtls_md5_starts_ret(ctx) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_md5update(archive_md5_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   if (mbedtls_md5_update_ret(ctx, indata, insize) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_md5final(archive_md5_ctx *ctx, void *md)
| {
|   if (mbedtls_md5_finish_ret(ctx, md) == 0) {
|     mbedtls_md5_free(ctx);
|     return (ARCHIVE_OK);
|   } else {
|     mbedtls_md5_free(ctx);
|     return (ARCHIVE_FATAL);
|   }
| }
| 
| #elif defined(ARCHIVE_CRYPTO_MD5_NETTLE)
| 
| static int
| __archive_md5init(archive_md5_ctx *ctx)
| {
|   md5_init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5update(archive_md5_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   md5_update(ctx, insize, indata);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5final(archive_md5_ctx *ctx, void *md)
| {
|   md5_digest(ctx, MD5_DIGEST_SIZE, md);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_MD5_OPENSSL)
| 
| static int
| __archive_md5init(archive_md5_ctx *ctx)
| {
|   if ((*ctx = EVP_MD_CTX_new()) == NULL)
| 	return (ARCHIVE_FAILED);
|   if (!EVP_DigestInit(*ctx, EVP_md5()))
| 	return (ARCHIVE_FAILED);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5update(archive_md5_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   EVP_DigestUpdate(*ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5final(archive_md5_ctx *ctx, void *md)
| {
|   /* HACK: archive_write_set_format_xar.c is finalizing empty contexts, so
|    * this is meant to cope with that. Real fix is probably to fix
|    * archive_write_set_format_xar.c
|    */
|   if (*ctx) {
|     EVP_DigestFinal(*ctx, md, NULL);
|     EVP_MD_CTX_free(*ctx);
|     *ctx = NULL;
|   }
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_MD5_WIN)
| 
| static int
| __archive_md5init(archive_md5_ctx *ctx)
| {
| #if defined(HAVE_BCRYPT_H) && _WIN32_WINNT >= _WIN32_WINNT_VISTA
|   return (win_crypto_init(ctx, BCRYPT_MD5_ALGORITHM));
| #else
|   return (win_crypto_init(ctx, PROV_RSA_FULL, CALG_MD5));
| #endif
| }
| 
| static int
| __archive_md5update(archive_md5_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   return (win_crypto_Update(ctx, indata, insize));
| }
| 
| static int
| __archive_md5final(archive_md5_ctx *ctx, void *md)
| {
|   return (win_crypto_Final(md, 16, ctx));
| }
| 
| #else
| 
| static int
| __archive_md5init(archive_md5_ctx *ctx)
| {
| 	(void)ctx; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_md5update(archive_md5_ctx *ctx, const void *indata,
|     size_t insize)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)indata; /* UNUSED */
| 	(void)insize; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_md5final(archive_md5_ctx *ctx, void *md)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)md; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| #endif
| 
| /* RIPEMD160 implementations */
| #if defined(ARCHIVE_CRYPTO_RMD160_LIBC)
| 
| static int
| __archive_ripemd160init(archive_rmd160_ctx *ctx)
| {
|   RMD160Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   RMD160Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md)
| {
|   RMD160Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_RMD160_LIBMD)
| 
| static int
| __archive_ripemd160init(archive_rmd160_ctx *ctx)
| {
|   RIPEMD160_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   RIPEMD160_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md)
| {
|   RIPEMD160_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_RMD160_MBEDTLS)
| 
| static int
| __archive_ripemd160init(archive_rmd160_ctx *ctx)
| {
|   mbedtls_ripemd160_init(ctx);
|   if (mbedtls_ripemd160_starts_ret(ctx) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   if (mbedtls_ripemd160_update_ret(ctx, indata, insize) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md)
| {
|   if (mbedtls_ripemd160_finish_ret(ctx, md) == 0) {
|     mbedtls_ripemd160_free(ctx);
|     return (ARCHIVE_OK);
|   } else {
|     mbedtls_ripemd160_free(ctx);
|     return (ARCHIVE_FATAL);
|   }
| }
| 
| #elif defined(ARCHIVE_CRYPTO_RMD160_NETTLE)
| 
| static int
| __archive_ripemd160init(archive_rmd160_ctx *ctx)
| {
|   ripemd160_init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   ripemd160_update(ctx, insize, indata);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md)
| {
|   ripemd160_digest(ctx, RIPEMD160_DIGEST_SIZE, md);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_RMD160_OPENSSL)
| 
| static int
| __archive_ripemd160init(archive_rmd160_ctx *ctx)
| {
|   if ((*ctx = EVP_MD_CTX_new()) == NULL)
| 	return (ARCHIVE_FAILED);
|   if (!EVP_DigestInit(*ctx, EVP_ripemd160()))
| 	return (ARCHIVE_FAILED);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   EVP_DigestUpdate(*ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md)
| {
|   if (*ctx) {
|     EVP_DigestFinal(*ctx, md, NULL);
|     EVP_MD_CTX_free(*ctx);
|     *ctx = NULL;
|   }
|   return (ARCHIVE_OK);
| }
| 
| #else
| 
| static int
| __archive_ripemd160init(archive_rmd160_ctx *ctx)
| {
| 	(void)ctx; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata,
|     size_t insize)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)indata; /* UNUSED */
| 	(void)insize; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)md; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| #endif
| 
| /* SHA1 implementations */
| #if defined(ARCHIVE_CRYPTO_SHA1_LIBC)
| 
| static int
| __archive_sha1init(archive_sha1_ctx *ctx)
| {
|   SHA1Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1update(archive_sha1_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA1Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1final(archive_sha1_ctx *ctx, void *md)
| {
|   SHA1Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA1_LIBMD)
| 
| static int
| __archive_sha1init(archive_sha1_ctx *ctx)
| {
|   SHA1_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1update(archive_sha1_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA1_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1final(archive_sha1_ctx *ctx, void *md)
| {
|   SHA1_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA1_LIBSYSTEM)
| 
| static int
| __archive_sha1init(archive_sha1_ctx *ctx)
| {
|   CC_SHA1_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1update(archive_sha1_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   CC_SHA1_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1final(archive_sha1_ctx *ctx, void *md)
| {
|   CC_SHA1_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA1_MBEDTLS)
| 
| static int
| __archive_sha1init(archive_sha1_ctx *ctx)
| {
|   mbedtls_sha1_init(ctx);
|   if (mbedtls_sha1_starts_ret(ctx) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_sha1update(archive_sha1_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   if (mbedtls_sha1_update_ret(ctx, indata, insize) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_sha1final(archive_sha1_ctx *ctx, void *md)
| {
|   if (mbedtls_sha1_finish_ret(ctx, md) == 0) {
|     mbedtls_sha1_free(ctx);
|     return (ARCHIVE_OK);
|   } else {
|     mbedtls_sha1_free(ctx);
|     return (ARCHIVE_FATAL);
|   }
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA1_NETTLE)
| 
| static int
| __archive_sha1init(archive_sha1_ctx *ctx)
| {
|   sha1_init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1update(archive_sha1_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   sha1_update(ctx, insize, indata);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1final(archive_sha1_ctx *ctx, void *md)
| {
|   sha1_digest(ctx, SHA1_DIGEST_SIZE, md);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA1_OPENSSL)
| 
| static int
| __archive_sha1init(archive_sha1_ctx *ctx)
| {
|   if ((*ctx = EVP_MD_CTX_new()) == NULL)
| 	return (ARCHIVE_FAILED);
|   if (!EVP_DigestInit(*ctx, EVP_sha1()))
| 	return (ARCHIVE_FAILED);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1update(archive_sha1_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   EVP_DigestUpdate(*ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1final(archive_sha1_ctx *ctx, void *md)
| {
|   /* HACK: archive_write_set_format_xar.c is finalizing empty contexts, so
|    * this is meant to cope with that. Real fix is probably to fix
|    * archive_write_set_format_xar.c
|    */
|   if (*ctx) {
|     EVP_DigestFinal(*ctx, md, NULL);
|     EVP_MD_CTX_free(*ctx);
|     *ctx = NULL;
|   }
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA1_WIN)
| 
| static int
| __archive_sha1init(archive_sha1_ctx *ctx)
| {
| #if defined(HAVE_BCRYPT_H) && _WIN32_WINNT >= _WIN32_WINNT_VISTA
|   return (win_crypto_init(ctx, BCRYPT_SHA1_ALGORITHM));
| #else
|   return (win_crypto_init(ctx, PROV_RSA_FULL, CALG_SHA1));
| #endif
| }
| 
| static int
| __archive_sha1update(archive_sha1_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   return (win_crypto_Update(ctx, indata, insize));
| }
| 
| static int
| __archive_sha1final(archive_sha1_ctx *ctx, void *md)
| {
|   return (win_crypto_Final(md, 20, ctx));
| }
| 
| #else
| 
| static int
| __archive_sha1init(archive_sha1_ctx *ctx)
| {
| 	(void)ctx; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_sha1update(archive_sha1_ctx *ctx, const void *indata,
|     size_t insize)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)indata; /* UNUSED */
| 	(void)insize; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_sha1final(archive_sha1_ctx *ctx, void *md)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)md; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| #endif
| 
| /* SHA256 implementations */
| #if defined(ARCHIVE_CRYPTO_SHA256_LIBC)
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
|   SHA256_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA256_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
|   SHA256_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA256_LIBC2)
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
|   SHA256Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA256Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
|   SHA256Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA256_LIBC3)
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
|   SHA256Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA256Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
|   SHA256Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA256_LIBMD)
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
|   SHA256_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA256_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
|   SHA256_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA256_LIBSYSTEM)
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
|   CC_SHA256_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   CC_SHA256_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
|   CC_SHA256_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA256_MBEDTLS)
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
|   mbedtls_sha256_init(ctx);
|   if (mbedtls_sha256_starts_ret(ctx, 0) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   if (mbedtls_sha256_update_ret(ctx, indata, insize) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
|   if (mbedtls_sha256_finish_ret(ctx, md) == 0) {
|     mbedtls_sha256_free(ctx);
|     return (ARCHIVE_OK);
|   } else {
|     mbedtls_sha256_free(ctx);
|     return (ARCHIVE_FATAL);
|   }
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA256_NETTLE)
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
|   sha256_init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   sha256_update(ctx, insize, indata);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
|   sha256_digest(ctx, SHA256_DIGEST_SIZE, md);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA256_OPENSSL)
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
|   if ((*ctx = EVP_MD_CTX_new()) == NULL)
| 	return (ARCHIVE_FAILED);
|   if (!EVP_DigestInit(*ctx, EVP_sha256()))
| 	return (ARCHIVE_FAILED);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   EVP_DigestUpdate(*ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
|   if (*ctx) {
|     EVP_DigestFinal(*ctx, md, NULL);
|     EVP_MD_CTX_free(*ctx);
|     *ctx = NULL;
|   }
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA256_WIN)
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
| #if defined(HAVE_BCRYPT_H) && _WIN32_WINNT >= _WIN32_WINNT_VISTA
|   return (win_crypto_init(ctx, BCRYPT_SHA256_ALGORITHM));
| #else
|   return (win_crypto_init(ctx, PROV_RSA_AES, CALG_SHA_256));
| #endif
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   return (win_crypto_Update(ctx, indata, insize));
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
|   return (win_crypto_Final(md, 32, ctx));
| }
| 
| #else
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
| 	(void)ctx; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)indata; /* UNUSED */
| 	(void)insize; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)md; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| #endif
| 
| /* SHA384 implementations */
| #if defined(ARCHIVE_CRYPTO_SHA384_LIBC)
| 
| static int
| __archive_sha384init(archive_sha384_ctx *ctx)
| {
|   SHA384_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384update(archive_sha384_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA384_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384final(archive_sha384_ctx *ctx, void *md)
| {
|   SHA384_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA384_LIBC2)
| 
| static int
| __archive_sha384init(archive_sha384_ctx *ctx)
| {
|   SHA384Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384update(archive_sha384_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA384Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384final(archive_sha384_ctx *ctx, void *md)
| {
|   SHA384Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA384_LIBC3)
| 
| static int
| __archive_sha384init(archive_sha384_ctx *ctx)
| {
|   SHA384Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384update(archive_sha384_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA384Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384final(archive_sha384_ctx *ctx, void *md)
| {
|   SHA384Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA384_LIBSYSTEM)
| 
| static int
| __archive_sha384init(archive_sha384_ctx *ctx)
| {
|   CC_SHA384_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384update(archive_sha384_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   CC_SHA384_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384final(archive_sha384_ctx *ctx, void *md)
| {
|   CC_SHA384_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA384_MBEDTLS)
| 
| static int
| __archive_sha384init(archive_sha384_ctx *ctx)
| {
|   mbedtls_sha512_init(ctx);
|   if (mbedtls_sha512_starts_ret(ctx, 1) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_sha384update(archive_sha384_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   if (mbedtls_sha512_update_ret(ctx, indata, insize) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_sha384final(archive_sha384_ctx *ctx, void *md)
| {
|   if (mbedtls_sha512_finish_ret(ctx, md) == 0) {
|     mbedtls_sha512_free(ctx);
|     return (ARCHIVE_OK);
|   } else {
|     mbedtls_sha512_free(ctx);
|     return (ARCHIVE_FATAL);
|   }
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA384_NETTLE)
| 
| static int
| __archive_sha384init(archive_sha384_ctx *ctx)
| {
|   sha384_init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384update(archive_sha384_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   sha384_update(ctx, insize, indata);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384final(archive_sha384_ctx *ctx, void *md)
| {
|   sha384_digest(ctx, SHA384_DIGEST_SIZE, md);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA384_OPENSSL)
| 
| static int
| __archive_sha384init(archive_sha384_ctx *ctx)
| {
|   if ((*ctx = EVP_MD_CTX_new()) == NULL)
| 	return (ARCHIVE_FAILED);
|   if (!EVP_DigestInit(*ctx, EVP_sha384()))
| 	return (ARCHIVE_FAILED);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384update(archive_sha384_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   EVP_DigestUpdate(*ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384final(archive_sha384_ctx *ctx, void *md)
| {
|   if (*ctx) {
|     EVP_DigestFinal(*ctx, md, NULL);
|     EVP_MD_CTX_free(*ctx);
|     *ctx = NULL;
|   }
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA384_WIN)
| 
| static int
| __archive_sha384init(archive_sha384_ctx *ctx)
| {
| #if defined(HAVE_BCRYPT_H) && _WIN32_WINNT >= _WIN32_WINNT_VISTA
|   return (win_crypto_init(ctx, BCRYPT_SHA384_ALGORITHM));
| #else
|   return (win_crypto_init(ctx, PROV_RSA_AES, CALG_SHA_384));
| #endif
| }
| 
| static int
| __archive_sha384update(archive_sha384_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   return (win_crypto_Update(ctx, indata, insize));
| }
| 
| static int
| __archive_sha384final(archive_sha384_ctx *ctx, void *md)
| {
|   return (win_crypto_Final(md, 48, ctx));
| }
| 
| #else
| 
| static int
| __archive_sha384init(archive_sha384_ctx *ctx)
| {
| 	(void)ctx; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_sha384update(archive_sha384_ctx *ctx, const void *indata,
|     size_t insize)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)indata; /* UNUSED */
| 	(void)insize; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_sha384final(archive_sha384_ctx *ctx, void *md)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)md; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| #endif
| 
| /* SHA512 implementations */
| #if defined(ARCHIVE_CRYPTO_SHA512_LIBC)
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
|   SHA512_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA512_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
|   SHA512_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA512_LIBC2)
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
|   SHA512Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA512Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
|   SHA512Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA512_LIBC3)
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
|   SHA512Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA512Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
|   SHA512Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA512_LIBMD)
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
|   SHA512_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA512_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
|   SHA512_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA512_LIBSYSTEM)
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
|   CC_SHA512_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   CC_SHA512_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
|   CC_SHA512_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA512_MBEDTLS)
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
|   mbedtls_sha512_init(ctx);
|   if (mbedtls_sha512_starts_ret(ctx, 0) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   if (mbedtls_sha512_update_ret(ctx, indata, insize) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
|   if (mbedtls_sha512_finish_ret(ctx, md) == 0) {
|     mbedtls_sha512_free(ctx);
|     return (ARCHIVE_OK);
|   } else {
|     mbedtls_sha512_free(ctx);
|     return (ARCHIVE_FATAL);
|   }
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA512_NETTLE)
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
|   sha512_init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   sha512_update(ctx, insize, indata);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
|   sha512_digest(ctx, SHA512_DIGEST_SIZE, md);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA512_OPENSSL)
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
|   if ((*ctx = EVP_MD_CTX_new()) == NULL)
| 	return (ARCHIVE_FAILED);
|   if (!EVP_DigestInit(*ctx, EVP_sha512()))
| 	return (ARCHIVE_FAILED);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   EVP_DigestUpdate(*ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
|   if (*ctx) {
|     EVP_DigestFinal(*ctx, md, NULL);
|     EVP_MD_CTX_free(*ctx);
|     *ctx = NULL;
|   }
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA512_WIN)
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
| #if defined(HAVE_BCRYPT_H) && _WIN32_WINNT >= _WIN32_WINNT_VISTA
|   return (win_crypto_init(ctx, BCRYPT_SHA512_ALGORITHM));
| #else
|   return (win_crypto_init(ctx, PROV_RSA_AES, CALG_SHA_512));
| #endif
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   return (win_crypto_Update(ctx, indata, insize));
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
|   return (win_crypto_Final(md, 64, ctx));
| }
| 
| #else
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
| 	(void)ctx; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)indata; /* UNUSED */
| 	(void)insize; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)md; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| #endif
| 
| /* NOTE: Message Digest functions are set based on availability and by the
|  * following order of preference.
|  * 1. libc
|  * 2. libc2
|  * 3. libc3
|  * 4. libSystem
|  * 5. Nettle
|  * 6. OpenSSL
|  * 7. libmd
|  * 8. Windows API
|  */
| const struct archive_digest __archive_digest =
| {
| /* MD5 */
|   &__archive_md5init,
|   &__archive_md5update,
|   &__archive_md5final,
| 
| /* RIPEMD160 */
|   &__archive_ripemd160init,
|   &__archive_ripemd160update,
|   &__archive_ripemd160final,
| 
| /* SHA1 */
|   &__archive_sha1init,
|   &__archive_sha1update,
|   &__archive_sha1final,
| 
| /* SHA256 */
|   &__archive_sha256init,
|   &__archive_sha256update,
|   &__archive_sha256final,
| 
| /* SHA384 */
|   &__archive_sha384init,
|   &__archive_sha384update,
|   &__archive_sha384final,
| 
| /* SHA512 */
|   &__archive_sha512init,
|   &__archive_sha512update,
|   &__archive_sha512final
| };
| 
| int
| main(int argc, char **argv)
| {
|   archive_sha512_ctx ctx;
|   archive_sha512_init(&ctx);
|   archive_sha512_update(&ctx, *argv, argc);
|   archive_sha512_final(&ctx, NULL);
|   return 0;
| }
| 
configure:18363: result: no
configure:18377: checking support for ARCHIVE_CRYPTO_SHA512_LIBC3
configure:18399: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -o conftest -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2  -I. -I. -I./libarchive  conftest.c -lzstd -llz4 -lz  -L/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/lib -lxml2  >&5
In file included from conftest.c:255:
./libarchive/archive_digest_private.h:81:10: fatal error: sha2.h: No such file or directory
   81 | #include <sha2.h>
      |          ^~~~~~~~
compilation terminated.
configure:18399: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "libarchive"
| #define PACKAGE_TARNAME "libarchive"
| #define PACKAGE_VERSION "3.7.2"
| #define PACKAGE_STRING "libarchive 3.7.2"
| #define PACKAGE_BUGREPORT "libarchive-discuss@googlegroups.com"
| #define PACKAGE_URL ""
| #define PACKAGE "libarchive"
| #define VERSION "3.7.2"
| #define __LIBARCHIVE_CONFIG_H_INCLUDED 1
| #define LIBARCHIVE_VERSION_STRING "3.7.2"
| #define LIBARCHIVE_VERSION_NUMBER "3007002"
| #define BSDCPIO_VERSION_STRING "3.7.2"
| #define BSDTAR_VERSION_STRING "3.7.2"
| #define BSDCAT_VERSION_STRING "3.7.2"
| #define BSDUNZIP_VERSION_STRING "3.7.2"
| #define HAVE_STDIO_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_SYS_TIME_H 1
| #define STDC_HEADERS 1
| #define _ALL_SOURCE 1
| #define _DARWIN_C_SOURCE 1
| #define _GNU_SOURCE 1
| #define _HPUX_ALT_XOPEN_SOCKET_API 1
| #define _NETBSD_SOURCE 1
| #define _OPENBSD_SOURCE 1
| #define _POSIX_PTHREAD_SEMANTICS 1
| #define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1
| #define __STDC_WANT_IEC_60559_BFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_DFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1
| #define __STDC_WANT_IEC_60559_TYPES_EXT__ 1
| #define __STDC_WANT_LIB_EXT2__ 1
| #define __STDC_WANT_MATH_SPEC_FUNCS__ 1
| #define _TANDEM_SOURCE 1
| #define __EXTENSIONS__ 1
| #define HAVE_DLFCN_H 1
| #define LT_OBJDIR ".libs/"
| #define HAVE_DIRENT_H 1
| #define HAVE_SYS_WAIT_H 1
| #define HAVE_CTYPE_H 1
| #define HAVE_ERRNO_H 1
| #define HAVE_FCNTL_H 1
| #define HAVE_FNMATCH_H 1
| #define HAVE_GRP_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_LANGINFO_H 1
| #define HAVE_LIMITS_H 1
| #define HAVE_LINUX_FIEMAP_H 1
| #define HAVE_LINUX_FS_H 1
| #define HAVE_LINUX_MAGIC_H 1
| #define HAVE_LINUX_TYPES_H 1
| #define HAVE_WORKING_FS_IOC_GETFLAGS 1
| #define HAVE_LOCALE_H 1
| #define HAVE_PATHS_H 1
| #define HAVE_POLL_H 1
| #define HAVE_PTHREAD_H 1
| #define HAVE_PWD_H 1
| #define HAVE_SIGNAL_H 1
| #define HAVE_SPAWN_H 1
| #define HAVE_STDARG_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_SYS_CDEFS_H 1
| #define HAVE_SYS_IOCTL_H 1
| #define HAVE_SYS_MOUNT_H 1
| #define HAVE_SYS_QUEUE_H 1
| #define HAVE_SYS_PARAM_H 1
| #define HAVE_SYS_POLL_H 1
| #define HAVE_SYS_SELECT_H 1
| #define HAVE_SYS_STATFS_H 1
| #define HAVE_SYS_STATVFS_H 1
| #define HAVE_SYS_SYSMACROS_H 1
| #define HAVE_SYS_TIME_H 1
| #define HAVE_SYS_UTSNAME_H 1
| #define HAVE_SYS_VFS_H 1
| #define HAVE_SYS_XATTR_H 1
| #define HAVE_TIME_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_UTIME_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_WCTYPE_H 1
| #define HAVE_ZLIB_H 1
| #define HAVE_LIBZ 1
| #define HAVE_ICONV 1
| #define ICONV_CONST 
| #define HAVE_ICONV_H 1
| #define HAVE_LZ4_H 1
| #define HAVE_LZ4HC_H 1
| #define HAVE_LIBLZ4 1
| #define HAVE_ZSTD_H 1
| #define HAVE_LIBZSTD 1
| #define HAVE_LIBZSTD_COMPRESSOR 1
| #define HAVE_LIBXML_XMLREADER_H 1
| #define HAVE_LIBXML_XMLWRITER_H 1
| #define HAVE_REGEX_H 1
| #define HAVE_STRUCT_TM_TM_GMTOFF 1
| #define HAVE_STRUCT_STAT_ST_MTIM_TV_NSEC 1
| #define HAVE_STRUCT_STAT_ST_BLKSIZE 1
| #define HAVE_UINTMAX_T 1
| #define HAVE_UNSIGNED_LONG_LONG 1
| #define HAVE_UNSIGNED_LONG_LONG_INT 1
| #define HAVE_LONG_LONG_INT 1
| #define HAVE_INTMAX_T 1
| #define HAVE_UINTMAX_T 1
| #define HAVE_DECL_SIZE_MAX 1
| #define HAVE_DECL_INT32_MAX 1
| #define HAVE_DECL_INT32_MIN 1
| #define HAVE_DECL_INT64_MAX 1
| #define HAVE_DECL_INT64_MIN 1
| #define HAVE_DECL_UINT64_MAX 1
| #define HAVE_DECL_UINT32_MAX 1
| #define HAVE_DECL_INTMAX_MAX 1
| #define HAVE_DECL_INTMAX_MIN 1
| #define HAVE_DECL_UINTMAX_MAX 1
| #define HAVE_DECL_SSIZE_MAX 1
| #define HAVE_EILSEQ 1
| #define HAVE_WCHAR_T 1
| #define SIZEOF_WCHAR_T 4
| #define SIZEOF_INT 4
| #define SIZEOF_LONG 4
| #define MAJOR_IN_SYSMACROS 1
| #define HAVE_FSEEKO 1
| #define LSTAT_FOLLOWS_SLASHED_SYMLINK 1
| #define HAVE_LSTAT_EMPTY_STRING_BUG 1
| #define HAVE_STAT_EMPTY_STRING_BUG 1
| #define HAVE_DECL_STRERROR_R 1
| #define HAVE_STRERROR_R 1
| #define STRERROR_R_CHAR_P 1
| #define HAVE_STRFTIME 1
| #define HAVE_VPRINTF 1
| #define HAVE_ARC4RANDOM_BUF 1
| #define HAVE_CHOWN 1
| #define HAVE_CHROOT 1
| #define HAVE_CTIME_R 1
| #define HAVE_FCHDIR 1
| #define HAVE_FCHMOD 1
| #define HAVE_FCHOWN 1
| #define HAVE_FCNTL 1
| #define HAVE_FDOPENDIR 1
| #define HAVE_FNMATCH 1
| #define HAVE_FORK 1
| #define HAVE_FSTAT 1
| #define HAVE_FSTATAT 1
| #define HAVE_FSTATFS 1
| #define HAVE_FSTATVFS 1
| #define HAVE_FTRUNCATE 1
| #define HAVE_FUTIMENS 1
| #define HAVE_FUTIMES 1
| #define HAVE_FUTIMESAT 1
| #define HAVE_GETEUID 1
| #define HAVE_GETLINE 1
| #define HAVE_GETPID 1
| #define HAVE_GETGRGID_R 1
| #define HAVE_GETGRNAM_R 1
| #define HAVE_GETPWNAM_R 1
| #define HAVE_GETPWUID_R 1
| #define HAVE_GMTIME_R 1
| #define HAVE_LCHMOD 1
| #define HAVE_LCHOWN 1
| #define HAVE_LINK 1
| #define HAVE_LINKAT 1
| #define HAVE_LOCALTIME_R 1
| #define HAVE_LSTAT 1
| #define HAVE_LUTIMES 1
| #define HAVE_MBRTOWC 1
| #define HAVE_MEMMOVE 1
| #define HAVE_MEMSET 1
| #define HAVE_MKDIR 1
| #define HAVE_MKFIFO 1
| #define HAVE_MKNOD 1
| #define HAVE_MKSTEMP 1
| #define HAVE_NL_LANGINFO 1
| #define HAVE_OPENAT 1
| #define HAVE_PIPE 1
| #define HAVE_POLL 1
| #define HAVE_POSIX_SPAWNP 1
| #define HAVE_READLINK 1
| #define HAVE_READLINKAT 1
| #define HAVE_SELECT 1
| #define HAVE_SETENV 1
| #define HAVE_SETLOCALE 1
| #define HAVE_SIGACTION 1
| #define HAVE_STATFS 1
| #define HAVE_STATVFS 1
| #define HAVE_STRCHR 1
| #define HAVE_STRDUP 1
| #define HAVE_STRERROR 1
| #define HAVE_STRNLEN 1
| #define HAVE_STRRCHR 1
| #define HAVE_SYMLINK 1
| #define HAVE_TIMEGM 1
| #define HAVE_TZSET 1
| #define HAVE_UNLINKAT 1
| #define HAVE_UNSETENV 1
| #define HAVE_UTIME 1
| #define HAVE_UTIMENSAT 1
| #define HAVE_UTIMES 1
| #define HAVE_VFORK 1
| #define HAVE_WCRTOMB 1
| #define HAVE_WCSCMP 1
| #define HAVE_WCSCPY 1
| #define HAVE_WCSLEN 1
| #define HAVE_WCTOMB 1
| #define HAVE_WMEMCMP 1
| #define HAVE_WMEMCPY 1
| #define HAVE_WMEMMOVE 1
| #define HAVE_READDIR_R 1
| #define HAVE_DIRFD 1
| /* end confdefs.h.  */
| 
| #define ARCHIVE_SHA512_COMPILE_TEST
| #define ARCHIVE_CRYPTO_SHA512_LIBC3
| #define PLATFORM_CONFIG_H "check_crypto_md.h"
| 
| /*-
| * Copyright (c) 2003-2007 Tim Kientzle
| * Copyright (c) 2011 Andres Mejia
| * Copyright (c) 2011 Michihiro NAKAJIMA
| * All rights reserved.
| *
| * Redistribution and use in source and binary forms, with or without
| * modification, are permitted provided that the following conditions
| * are met:
| * 1. Redistributions of source code must retain the above copyright
| *    notice, this list of conditions and the following disclaimer.
| * 2. Redistributions in binary form must reproduce the above copyright
| *    notice, this list of conditions and the following disclaimer in the
| *    documentation and/or other materials provided with the distribution.
| *
| * THIS SOFTWARE IS PROVIDED BY THE AUTHOR(S) ``AS IS'' AND ANY EXPRESS OR
| * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
| * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
| * IN NO EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY DIRECT, INDIRECT,
| * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
| * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
| * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
| * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
| * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
| * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
| */
| 
| #include "archive_platform.h"
| 
| #include "archive.h"
| #include "archive_digest_private.h"
| 
| /* In particular, force the configure probe to break if it tries
|  * to test a combination of OpenSSL and libmd. */
| #if defined(ARCHIVE_CRYPTO_OPENSSL) && defined(ARCHIVE_CRYPTO_LIBMD)
| #error Cannot use both OpenSSL and libmd.
| #endif
| 
| /* Common in other bcrypt implementations, but missing from VS2008. */
| #ifndef BCRYPT_SUCCESS
| #define BCRYPT_SUCCESS(r) ((NTSTATUS)(r) == STATUS_SUCCESS)
| #endif
| 
| /*
|  * Message digest functions for Windows platform.
|  */
| #if defined(ARCHIVE_CRYPTO_MD5_WIN)    ||\
| 	defined(ARCHIVE_CRYPTO_SHA1_WIN)   ||\
| 	defined(ARCHIVE_CRYPTO_SHA256_WIN) ||\
| 	defined(ARCHIVE_CRYPTO_SHA384_WIN) ||\
| 	defined(ARCHIVE_CRYPTO_SHA512_WIN)
| 
| /*
|  * Initialize a Message digest.
|  */
| #if defined(HAVE_BCRYPT_H) && _WIN32_WINNT >= _WIN32_WINNT_VISTA
| static int
| win_crypto_init(Digest_CTX *ctx, const WCHAR *algo)
| {
| 	NTSTATUS status;
| 	ctx->valid = 0;
| 
| 	status = BCryptOpenAlgorithmProvider(&ctx->hAlg, algo, NULL, 0);
| 	if (!BCRYPT_SUCCESS(status))
| 		return (ARCHIVE_FAILED);
| 	status = BCryptCreateHash(ctx->hAlg, &ctx->hHash, NULL, 0, NULL, 0, 0);
| 	if (!BCRYPT_SUCCESS(status)) {
| 		BCryptCloseAlgorithmProvider(ctx->hAlg, 0);
| 		return (ARCHIVE_FAILED);
| 	}
| 
| 	ctx->valid = 1;
| 	return (ARCHIVE_OK);
| }
| #else
| static int
| win_crypto_init(Digest_CTX *ctx, DWORD prov, ALG_ID algId)
| {
| 
| 	ctx->valid = 0;
| 	if (!CryptAcquireContext(&ctx->cryptProv, NULL, NULL,
| 	    prov, CRYPT_VERIFYCONTEXT)) {
| 		if (GetLastError() != (DWORD)NTE_BAD_KEYSET)
| 			return (ARCHIVE_FAILED);
| 		if (!CryptAcquireContext(&ctx->cryptProv, NULL, NULL,
| 		    prov, CRYPT_NEWKEYSET))
| 			return (ARCHIVE_FAILED);
| 	}
| 
| 	if (!CryptCreateHash(ctx->cryptProv, algId, 0, 0, &ctx->hash)) {
| 		CryptReleaseContext(ctx->cryptProv, 0);
| 		return (ARCHIVE_FAILED);
| 	}
| 
| 	ctx->valid = 1;
| 	return (ARCHIVE_OK);
| }
| #endif
| 
| /*
|  * Update a Message digest.
|  */
| static int
| win_crypto_Update(Digest_CTX *ctx, const unsigned char *buf, size_t len)
| {
| 
| 	if (!ctx->valid)
| 		return (ARCHIVE_FAILED);
| 
| #if defined(HAVE_BCRYPT_H) && _WIN32_WINNT >= _WIN32_WINNT_VISTA
| 	BCryptHashData(ctx->hHash,
| 		      (PUCHAR)(uintptr_t)buf,
| 		      (ULONG)len, 0);
| #else
| 	CryptHashData(ctx->hash,
| 		      (unsigned char *)(uintptr_t)buf,
| 		      (DWORD)len, 0);
| #endif
| 	return (ARCHIVE_OK);
| }
| 
| static int
| win_crypto_Final(unsigned char *buf, size_t bufsize, Digest_CTX *ctx)
| {
| #if !(defined(HAVE_BCRYPT_H) && _WIN32_WINNT >= _WIN32_WINNT_VISTA)
| 	DWORD siglen = (DWORD)bufsize;
| #endif
| 
| 	if (!ctx->valid)
| 		return (ARCHIVE_FAILED);
| 
| #if defined(HAVE_BCRYPT_H) && _WIN32_WINNT >= _WIN32_WINNT_VISTA
| 	BCryptFinishHash(ctx->hHash, buf, (ULONG)bufsize, 0);
| 	BCryptDestroyHash(ctx->hHash);
| 	BCryptCloseAlgorithmProvider(ctx->hAlg, 0);
| #else
| 	CryptGetHashParam(ctx->hash, HP_HASHVAL, buf, &siglen, 0);
| 	CryptDestroyHash(ctx->hash);
| 	CryptReleaseContext(ctx->cryptProv, 0);
| #endif
| 	ctx->valid = 0;
| 	return (ARCHIVE_OK);
| }
| 
| #endif /* defined(ARCHIVE_CRYPTO_*_WIN) */
| 
| 
| /* MD5 implementations */
| #if defined(ARCHIVE_CRYPTO_MD5_LIBC)
| 
| static int
| __archive_md5init(archive_md5_ctx *ctx)
| {
|   MD5Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5update(archive_md5_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   MD5Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5final(archive_md5_ctx *ctx, void *md)
| {
|   MD5Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_MD5_LIBMD)
| 
| static int
| __archive_md5init(archive_md5_ctx *ctx)
| {
|   MD5Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5update(archive_md5_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   MD5Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5final(archive_md5_ctx *ctx, void *md)
| {
|   MD5Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_MD5_LIBSYSTEM)
| 
| static int
| __archive_md5init(archive_md5_ctx *ctx)
| {
|   CC_MD5_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5update(archive_md5_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   CC_MD5_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5final(archive_md5_ctx *ctx, void *md)
| {
|   CC_MD5_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_MD5_MBEDTLS)
| 
| static int
| __archive_md5init(archive_md5_ctx *ctx)
| {
|   mbedtls_md5_init(ctx);
|   if (mbedtls_md5_starts_ret(ctx) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_md5update(archive_md5_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   if (mbedtls_md5_update_ret(ctx, indata, insize) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_md5final(archive_md5_ctx *ctx, void *md)
| {
|   if (mbedtls_md5_finish_ret(ctx, md) == 0) {
|     mbedtls_md5_free(ctx);
|     return (ARCHIVE_OK);
|   } else {
|     mbedtls_md5_free(ctx);
|     return (ARCHIVE_FATAL);
|   }
| }
| 
| #elif defined(ARCHIVE_CRYPTO_MD5_NETTLE)
| 
| static int
| __archive_md5init(archive_md5_ctx *ctx)
| {
|   md5_init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5update(archive_md5_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   md5_update(ctx, insize, indata);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5final(archive_md5_ctx *ctx, void *md)
| {
|   md5_digest(ctx, MD5_DIGEST_SIZE, md);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_MD5_OPENSSL)
| 
| static int
| __archive_md5init(archive_md5_ctx *ctx)
| {
|   if ((*ctx = EVP_MD_CTX_new()) == NULL)
| 	return (ARCHIVE_FAILED);
|   if (!EVP_DigestInit(*ctx, EVP_md5()))
| 	return (ARCHIVE_FAILED);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5update(archive_md5_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   EVP_DigestUpdate(*ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5final(archive_md5_ctx *ctx, void *md)
| {
|   /* HACK: archive_write_set_format_xar.c is finalizing empty contexts, so
|    * this is meant to cope with that. Real fix is probably to fix
|    * archive_write_set_format_xar.c
|    */
|   if (*ctx) {
|     EVP_DigestFinal(*ctx, md, NULL);
|     EVP_MD_CTX_free(*ctx);
|     *ctx = NULL;
|   }
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_MD5_WIN)
| 
| static int
| __archive_md5init(archive_md5_ctx *ctx)
| {
| #if defined(HAVE_BCRYPT_H) && _WIN32_WINNT >= _WIN32_WINNT_VISTA
|   return (win_crypto_init(ctx, BCRYPT_MD5_ALGORITHM));
| #else
|   return (win_crypto_init(ctx, PROV_RSA_FULL, CALG_MD5));
| #endif
| }
| 
| static int
| __archive_md5update(archive_md5_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   return (win_crypto_Update(ctx, indata, insize));
| }
| 
| static int
| __archive_md5final(archive_md5_ctx *ctx, void *md)
| {
|   return (win_crypto_Final(md, 16, ctx));
| }
| 
| #else
| 
| static int
| __archive_md5init(archive_md5_ctx *ctx)
| {
| 	(void)ctx; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_md5update(archive_md5_ctx *ctx, const void *indata,
|     size_t insize)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)indata; /* UNUSED */
| 	(void)insize; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_md5final(archive_md5_ctx *ctx, void *md)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)md; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| #endif
| 
| /* RIPEMD160 implementations */
| #if defined(ARCHIVE_CRYPTO_RMD160_LIBC)
| 
| static int
| __archive_ripemd160init(archive_rmd160_ctx *ctx)
| {
|   RMD160Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   RMD160Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md)
| {
|   RMD160Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_RMD160_LIBMD)
| 
| static int
| __archive_ripemd160init(archive_rmd160_ctx *ctx)
| {
|   RIPEMD160_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   RIPEMD160_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md)
| {
|   RIPEMD160_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_RMD160_MBEDTLS)
| 
| static int
| __archive_ripemd160init(archive_rmd160_ctx *ctx)
| {
|   mbedtls_ripemd160_init(ctx);
|   if (mbedtls_ripemd160_starts_ret(ctx) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   if (mbedtls_ripemd160_update_ret(ctx, indata, insize) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md)
| {
|   if (mbedtls_ripemd160_finish_ret(ctx, md) == 0) {
|     mbedtls_ripemd160_free(ctx);
|     return (ARCHIVE_OK);
|   } else {
|     mbedtls_ripemd160_free(ctx);
|     return (ARCHIVE_FATAL);
|   }
| }
| 
| #elif defined(ARCHIVE_CRYPTO_RMD160_NETTLE)
| 
| static int
| __archive_ripemd160init(archive_rmd160_ctx *ctx)
| {
|   ripemd160_init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   ripemd160_update(ctx, insize, indata);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md)
| {
|   ripemd160_digest(ctx, RIPEMD160_DIGEST_SIZE, md);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_RMD160_OPENSSL)
| 
| static int
| __archive_ripemd160init(archive_rmd160_ctx *ctx)
| {
|   if ((*ctx = EVP_MD_CTX_new()) == NULL)
| 	return (ARCHIVE_FAILED);
|   if (!EVP_DigestInit(*ctx, EVP_ripemd160()))
| 	return (ARCHIVE_FAILED);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   EVP_DigestUpdate(*ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md)
| {
|   if (*ctx) {
|     EVP_DigestFinal(*ctx, md, NULL);
|     EVP_MD_CTX_free(*ctx);
|     *ctx = NULL;
|   }
|   return (ARCHIVE_OK);
| }
| 
| #else
| 
| static int
| __archive_ripemd160init(archive_rmd160_ctx *ctx)
| {
| 	(void)ctx; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata,
|     size_t insize)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)indata; /* UNUSED */
| 	(void)insize; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)md; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| #endif
| 
| /* SHA1 implementations */
| #if defined(ARCHIVE_CRYPTO_SHA1_LIBC)
| 
| static int
| __archive_sha1init(archive_sha1_ctx *ctx)
| {
|   SHA1Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1update(archive_sha1_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA1Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1final(archive_sha1_ctx *ctx, void *md)
| {
|   SHA1Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA1_LIBMD)
| 
| static int
| __archive_sha1init(archive_sha1_ctx *ctx)
| {
|   SHA1_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1update(archive_sha1_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA1_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1final(archive_sha1_ctx *ctx, void *md)
| {
|   SHA1_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA1_LIBSYSTEM)
| 
| static int
| __archive_sha1init(archive_sha1_ctx *ctx)
| {
|   CC_SHA1_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1update(archive_sha1_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   CC_SHA1_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1final(archive_sha1_ctx *ctx, void *md)
| {
|   CC_SHA1_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA1_MBEDTLS)
| 
| static int
| __archive_sha1init(archive_sha1_ctx *ctx)
| {
|   mbedtls_sha1_init(ctx);
|   if (mbedtls_sha1_starts_ret(ctx) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_sha1update(archive_sha1_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   if (mbedtls_sha1_update_ret(ctx, indata, insize) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_sha1final(archive_sha1_ctx *ctx, void *md)
| {
|   if (mbedtls_sha1_finish_ret(ctx, md) == 0) {
|     mbedtls_sha1_free(ctx);
|     return (ARCHIVE_OK);
|   } else {
|     mbedtls_sha1_free(ctx);
|     return (ARCHIVE_FATAL);
|   }
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA1_NETTLE)
| 
| static int
| __archive_sha1init(archive_sha1_ctx *ctx)
| {
|   sha1_init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1update(archive_sha1_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   sha1_update(ctx, insize, indata);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1final(archive_sha1_ctx *ctx, void *md)
| {
|   sha1_digest(ctx, SHA1_DIGEST_SIZE, md);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA1_OPENSSL)
| 
| static int
| __archive_sha1init(archive_sha1_ctx *ctx)
| {
|   if ((*ctx = EVP_MD_CTX_new()) == NULL)
| 	return (ARCHIVE_FAILED);
|   if (!EVP_DigestInit(*ctx, EVP_sha1()))
| 	return (ARCHIVE_FAILED);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1update(archive_sha1_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   EVP_DigestUpdate(*ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1final(archive_sha1_ctx *ctx, void *md)
| {
|   /* HACK: archive_write_set_format_xar.c is finalizing empty contexts, so
|    * this is meant to cope with that. Real fix is probably to fix
|    * archive_write_set_format_xar.c
|    */
|   if (*ctx) {
|     EVP_DigestFinal(*ctx, md, NULL);
|     EVP_MD_CTX_free(*ctx);
|     *ctx = NULL;
|   }
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA1_WIN)
| 
| static int
| __archive_sha1init(archive_sha1_ctx *ctx)
| {
| #if defined(HAVE_BCRYPT_H) && _WIN32_WINNT >= _WIN32_WINNT_VISTA
|   return (win_crypto_init(ctx, BCRYPT_SHA1_ALGORITHM));
| #else
|   return (win_crypto_init(ctx, PROV_RSA_FULL, CALG_SHA1));
| #endif
| }
| 
| static int
| __archive_sha1update(archive_sha1_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   return (win_crypto_Update(ctx, indata, insize));
| }
| 
| static int
| __archive_sha1final(archive_sha1_ctx *ctx, void *md)
| {
|   return (win_crypto_Final(md, 20, ctx));
| }
| 
| #else
| 
| static int
| __archive_sha1init(archive_sha1_ctx *ctx)
| {
| 	(void)ctx; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_sha1update(archive_sha1_ctx *ctx, const void *indata,
|     size_t insize)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)indata; /* UNUSED */
| 	(void)insize; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_sha1final(archive_sha1_ctx *ctx, void *md)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)md; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| #endif
| 
| /* SHA256 implementations */
| #if defined(ARCHIVE_CRYPTO_SHA256_LIBC)
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
|   SHA256_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA256_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
|   SHA256_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA256_LIBC2)
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
|   SHA256Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA256Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
|   SHA256Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA256_LIBC3)
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
|   SHA256Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA256Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
|   SHA256Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA256_LIBMD)
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
|   SHA256_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA256_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
|   SHA256_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA256_LIBSYSTEM)
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
|   CC_SHA256_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   CC_SHA256_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
|   CC_SHA256_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA256_MBEDTLS)
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
|   mbedtls_sha256_init(ctx);
|   if (mbedtls_sha256_starts_ret(ctx, 0) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   if (mbedtls_sha256_update_ret(ctx, indata, insize) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
|   if (mbedtls_sha256_finish_ret(ctx, md) == 0) {
|     mbedtls_sha256_free(ctx);
|     return (ARCHIVE_OK);
|   } else {
|     mbedtls_sha256_free(ctx);
|     return (ARCHIVE_FATAL);
|   }
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA256_NETTLE)
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
|   sha256_init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   sha256_update(ctx, insize, indata);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
|   sha256_digest(ctx, SHA256_DIGEST_SIZE, md);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA256_OPENSSL)
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
|   if ((*ctx = EVP_MD_CTX_new()) == NULL)
| 	return (ARCHIVE_FAILED);
|   if (!EVP_DigestInit(*ctx, EVP_sha256()))
| 	return (ARCHIVE_FAILED);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   EVP_DigestUpdate(*ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
|   if (*ctx) {
|     EVP_DigestFinal(*ctx, md, NULL);
|     EVP_MD_CTX_free(*ctx);
|     *ctx = NULL;
|   }
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA256_WIN)
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
| #if defined(HAVE_BCRYPT_H) && _WIN32_WINNT >= _WIN32_WINNT_VISTA
|   return (win_crypto_init(ctx, BCRYPT_SHA256_ALGORITHM));
| #else
|   return (win_crypto_init(ctx, PROV_RSA_AES, CALG_SHA_256));
| #endif
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   return (win_crypto_Update(ctx, indata, insize));
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
|   return (win_crypto_Final(md, 32, ctx));
| }
| 
| #else
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
| 	(void)ctx; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)indata; /* UNUSED */
| 	(void)insize; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)md; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| #endif
| 
| /* SHA384 implementations */
| #if defined(ARCHIVE_CRYPTO_SHA384_LIBC)
| 
| static int
| __archive_sha384init(archive_sha384_ctx *ctx)
| {
|   SHA384_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384update(archive_sha384_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA384_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384final(archive_sha384_ctx *ctx, void *md)
| {
|   SHA384_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA384_LIBC2)
| 
| static int
| __archive_sha384init(archive_sha384_ctx *ctx)
| {
|   SHA384Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384update(archive_sha384_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA384Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384final(archive_sha384_ctx *ctx, void *md)
| {
|   SHA384Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA384_LIBC3)
| 
| static int
| __archive_sha384init(archive_sha384_ctx *ctx)
| {
|   SHA384Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384update(archive_sha384_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA384Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384final(archive_sha384_ctx *ctx, void *md)
| {
|   SHA384Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA384_LIBSYSTEM)
| 
| static int
| __archive_sha384init(archive_sha384_ctx *ctx)
| {
|   CC_SHA384_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384update(archive_sha384_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   CC_SHA384_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384final(archive_sha384_ctx *ctx, void *md)
| {
|   CC_SHA384_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA384_MBEDTLS)
| 
| static int
| __archive_sha384init(archive_sha384_ctx *ctx)
| {
|   mbedtls_sha512_init(ctx);
|   if (mbedtls_sha512_starts_ret(ctx, 1) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_sha384update(archive_sha384_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   if (mbedtls_sha512_update_ret(ctx, indata, insize) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_sha384final(archive_sha384_ctx *ctx, void *md)
| {
|   if (mbedtls_sha512_finish_ret(ctx, md) == 0) {
|     mbedtls_sha512_free(ctx);
|     return (ARCHIVE_OK);
|   } else {
|     mbedtls_sha512_free(ctx);
|     return (ARCHIVE_FATAL);
|   }
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA384_NETTLE)
| 
| static int
| __archive_sha384init(archive_sha384_ctx *ctx)
| {
|   sha384_init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384update(archive_sha384_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   sha384_update(ctx, insize, indata);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384final(archive_sha384_ctx *ctx, void *md)
| {
|   sha384_digest(ctx, SHA384_DIGEST_SIZE, md);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA384_OPENSSL)
| 
| static int
| __archive_sha384init(archive_sha384_ctx *ctx)
| {
|   if ((*ctx = EVP_MD_CTX_new()) == NULL)
| 	return (ARCHIVE_FAILED);
|   if (!EVP_DigestInit(*ctx, EVP_sha384()))
| 	return (ARCHIVE_FAILED);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384update(archive_sha384_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   EVP_DigestUpdate(*ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384final(archive_sha384_ctx *ctx, void *md)
| {
|   if (*ctx) {
|     EVP_DigestFinal(*ctx, md, NULL);
|     EVP_MD_CTX_free(*ctx);
|     *ctx = NULL;
|   }
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA384_WIN)
| 
| static int
| __archive_sha384init(archive_sha384_ctx *ctx)
| {
| #if defined(HAVE_BCRYPT_H) && _WIN32_WINNT >= _WIN32_WINNT_VISTA
|   return (win_crypto_init(ctx, BCRYPT_SHA384_ALGORITHM));
| #else
|   return (win_crypto_init(ctx, PROV_RSA_AES, CALG_SHA_384));
| #endif
| }
| 
| static int
| __archive_sha384update(archive_sha384_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   return (win_crypto_Update(ctx, indata, insize));
| }
| 
| static int
| __archive_sha384final(archive_sha384_ctx *ctx, void *md)
| {
|   return (win_crypto_Final(md, 48, ctx));
| }
| 
| #else
| 
| static int
| __archive_sha384init(archive_sha384_ctx *ctx)
| {
| 	(void)ctx; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_sha384update(archive_sha384_ctx *ctx, const void *indata,
|     size_t insize)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)indata; /* UNUSED */
| 	(void)insize; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_sha384final(archive_sha384_ctx *ctx, void *md)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)md; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| #endif
| 
| /* SHA512 implementations */
| #if defined(ARCHIVE_CRYPTO_SHA512_LIBC)
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
|   SHA512_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA512_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
|   SHA512_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA512_LIBC2)
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
|   SHA512Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA512Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
|   SHA512Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA512_LIBC3)
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
|   SHA512Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA512Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
|   SHA512Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA512_LIBMD)
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
|   SHA512_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA512_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
|   SHA512_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA512_LIBSYSTEM)
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
|   CC_SHA512_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   CC_SHA512_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
|   CC_SHA512_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA512_MBEDTLS)
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
|   mbedtls_sha512_init(ctx);
|   if (mbedtls_sha512_starts_ret(ctx, 0) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   if (mbedtls_sha512_update_ret(ctx, indata, insize) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
|   if (mbedtls_sha512_finish_ret(ctx, md) == 0) {
|     mbedtls_sha512_free(ctx);
|     return (ARCHIVE_OK);
|   } else {
|     mbedtls_sha512_free(ctx);
|     return (ARCHIVE_FATAL);
|   }
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA512_NETTLE)
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
|   sha512_init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   sha512_update(ctx, insize, indata);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
|   sha512_digest(ctx, SHA512_DIGEST_SIZE, md);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA512_OPENSSL)
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
|   if ((*ctx = EVP_MD_CTX_new()) == NULL)
| 	return (ARCHIVE_FAILED);
|   if (!EVP_DigestInit(*ctx, EVP_sha512()))
| 	return (ARCHIVE_FAILED);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   EVP_DigestUpdate(*ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
|   if (*ctx) {
|     EVP_DigestFinal(*ctx, md, NULL);
|     EVP_MD_CTX_free(*ctx);
|     *ctx = NULL;
|   }
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA512_WIN)
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
| #if defined(HAVE_BCRYPT_H) && _WIN32_WINNT >= _WIN32_WINNT_VISTA
|   return (win_crypto_init(ctx, BCRYPT_SHA512_ALGORITHM));
| #else
|   return (win_crypto_init(ctx, PROV_RSA_AES, CALG_SHA_512));
| #endif
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   return (win_crypto_Update(ctx, indata, insize));
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
|   return (win_crypto_Final(md, 64, ctx));
| }
| 
| #else
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
| 	(void)ctx; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)indata; /* UNUSED */
| 	(void)insize; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)md; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| #endif
| 
| /* NOTE: Message Digest functions are set based on availability and by the
|  * following order of preference.
|  * 1. libc
|  * 2. libc2
|  * 3. libc3
|  * 4. libSystem
|  * 5. Nettle
|  * 6. OpenSSL
|  * 7. libmd
|  * 8. Windows API
|  */
| const struct archive_digest __archive_digest =
| {
| /* MD5 */
|   &__archive_md5init,
|   &__archive_md5update,
|   &__archive_md5final,
| 
| /* RIPEMD160 */
|   &__archive_ripemd160init,
|   &__archive_ripemd160update,
|   &__archive_ripemd160final,
| 
| /* SHA1 */
|   &__archive_sha1init,
|   &__archive_sha1update,
|   &__archive_sha1final,
| 
| /* SHA256 */
|   &__archive_sha256init,
|   &__archive_sha256update,
|   &__archive_sha256final,
| 
| /* SHA384 */
|   &__archive_sha384init,
|   &__archive_sha384update,
|   &__archive_sha384final,
| 
| /* SHA512 */
|   &__archive_sha512init,
|   &__archive_sha512update,
|   &__archive_sha512final
| };
| 
| int
| main(int argc, char **argv)
| {
|   archive_sha512_ctx ctx;
|   archive_sha512_init(&ctx);
|   archive_sha512_update(&ctx, *argv, argc);
|   archive_sha512_final(&ctx, NULL);
|   return 0;
| }
| 
configure:18410: result: no
configure:18424: checking support for ARCHIVE_CRYPTO_SHA512_LIBSYSTEM
configure:18446: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -o conftest -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2  -I. -I. -I./libarchive  conftest.c -lzstd -llz4 -lz  -L/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/lib -lxml2  >&5
In file included from conftest.c:255:
./libarchive/archive_digest_private.h:115:10: fatal error: CommonCrypto/CommonDigest.h: No such file or directory
  115 | #include <CommonCrypto/CommonDigest.h>
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
compilation terminated.
configure:18446: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "libarchive"
| #define PACKAGE_TARNAME "libarchive"
| #define PACKAGE_VERSION "3.7.2"
| #define PACKAGE_STRING "libarchive 3.7.2"
| #define PACKAGE_BUGREPORT "libarchive-discuss@googlegroups.com"
| #define PACKAGE_URL ""
| #define PACKAGE "libarchive"
| #define VERSION "3.7.2"
| #define __LIBARCHIVE_CONFIG_H_INCLUDED 1
| #define LIBARCHIVE_VERSION_STRING "3.7.2"
| #define LIBARCHIVE_VERSION_NUMBER "3007002"
| #define BSDCPIO_VERSION_STRING "3.7.2"
| #define BSDTAR_VERSION_STRING "3.7.2"
| #define BSDCAT_VERSION_STRING "3.7.2"
| #define BSDUNZIP_VERSION_STRING "3.7.2"
| #define HAVE_STDIO_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_SYS_TIME_H 1
| #define STDC_HEADERS 1
| #define _ALL_SOURCE 1
| #define _DARWIN_C_SOURCE 1
| #define _GNU_SOURCE 1
| #define _HPUX_ALT_XOPEN_SOCKET_API 1
| #define _NETBSD_SOURCE 1
| #define _OPENBSD_SOURCE 1
| #define _POSIX_PTHREAD_SEMANTICS 1
| #define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1
| #define __STDC_WANT_IEC_60559_BFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_DFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1
| #define __STDC_WANT_IEC_60559_TYPES_EXT__ 1
| #define __STDC_WANT_LIB_EXT2__ 1
| #define __STDC_WANT_MATH_SPEC_FUNCS__ 1
| #define _TANDEM_SOURCE 1
| #define __EXTENSIONS__ 1
| #define HAVE_DLFCN_H 1
| #define LT_OBJDIR ".libs/"
| #define HAVE_DIRENT_H 1
| #define HAVE_SYS_WAIT_H 1
| #define HAVE_CTYPE_H 1
| #define HAVE_ERRNO_H 1
| #define HAVE_FCNTL_H 1
| #define HAVE_FNMATCH_H 1
| #define HAVE_GRP_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_LANGINFO_H 1
| #define HAVE_LIMITS_H 1
| #define HAVE_LINUX_FIEMAP_H 1
| #define HAVE_LINUX_FS_H 1
| #define HAVE_LINUX_MAGIC_H 1
| #define HAVE_LINUX_TYPES_H 1
| #define HAVE_WORKING_FS_IOC_GETFLAGS 1
| #define HAVE_LOCALE_H 1
| #define HAVE_PATHS_H 1
| #define HAVE_POLL_H 1
| #define HAVE_PTHREAD_H 1
| #define HAVE_PWD_H 1
| #define HAVE_SIGNAL_H 1
| #define HAVE_SPAWN_H 1
| #define HAVE_STDARG_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_SYS_CDEFS_H 1
| #define HAVE_SYS_IOCTL_H 1
| #define HAVE_SYS_MOUNT_H 1
| #define HAVE_SYS_QUEUE_H 1
| #define HAVE_SYS_PARAM_H 1
| #define HAVE_SYS_POLL_H 1
| #define HAVE_SYS_SELECT_H 1
| #define HAVE_SYS_STATFS_H 1
| #define HAVE_SYS_STATVFS_H 1
| #define HAVE_SYS_SYSMACROS_H 1
| #define HAVE_SYS_TIME_H 1
| #define HAVE_SYS_UTSNAME_H 1
| #define HAVE_SYS_VFS_H 1
| #define HAVE_SYS_XATTR_H 1
| #define HAVE_TIME_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_UTIME_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_WCTYPE_H 1
| #define HAVE_ZLIB_H 1
| #define HAVE_LIBZ 1
| #define HAVE_ICONV 1
| #define ICONV_CONST 
| #define HAVE_ICONV_H 1
| #define HAVE_LZ4_H 1
| #define HAVE_LZ4HC_H 1
| #define HAVE_LIBLZ4 1
| #define HAVE_ZSTD_H 1
| #define HAVE_LIBZSTD 1
| #define HAVE_LIBZSTD_COMPRESSOR 1
| #define HAVE_LIBXML_XMLREADER_H 1
| #define HAVE_LIBXML_XMLWRITER_H 1
| #define HAVE_REGEX_H 1
| #define HAVE_STRUCT_TM_TM_GMTOFF 1
| #define HAVE_STRUCT_STAT_ST_MTIM_TV_NSEC 1
| #define HAVE_STRUCT_STAT_ST_BLKSIZE 1
| #define HAVE_UINTMAX_T 1
| #define HAVE_UNSIGNED_LONG_LONG 1
| #define HAVE_UNSIGNED_LONG_LONG_INT 1
| #define HAVE_LONG_LONG_INT 1
| #define HAVE_INTMAX_T 1
| #define HAVE_UINTMAX_T 1
| #define HAVE_DECL_SIZE_MAX 1
| #define HAVE_DECL_INT32_MAX 1
| #define HAVE_DECL_INT32_MIN 1
| #define HAVE_DECL_INT64_MAX 1
| #define HAVE_DECL_INT64_MIN 1
| #define HAVE_DECL_UINT64_MAX 1
| #define HAVE_DECL_UINT32_MAX 1
| #define HAVE_DECL_INTMAX_MAX 1
| #define HAVE_DECL_INTMAX_MIN 1
| #define HAVE_DECL_UINTMAX_MAX 1
| #define HAVE_DECL_SSIZE_MAX 1
| #define HAVE_EILSEQ 1
| #define HAVE_WCHAR_T 1
| #define SIZEOF_WCHAR_T 4
| #define SIZEOF_INT 4
| #define SIZEOF_LONG 4
| #define MAJOR_IN_SYSMACROS 1
| #define HAVE_FSEEKO 1
| #define LSTAT_FOLLOWS_SLASHED_SYMLINK 1
| #define HAVE_LSTAT_EMPTY_STRING_BUG 1
| #define HAVE_STAT_EMPTY_STRING_BUG 1
| #define HAVE_DECL_STRERROR_R 1
| #define HAVE_STRERROR_R 1
| #define STRERROR_R_CHAR_P 1
| #define HAVE_STRFTIME 1
| #define HAVE_VPRINTF 1
| #define HAVE_ARC4RANDOM_BUF 1
| #define HAVE_CHOWN 1
| #define HAVE_CHROOT 1
| #define HAVE_CTIME_R 1
| #define HAVE_FCHDIR 1
| #define HAVE_FCHMOD 1
| #define HAVE_FCHOWN 1
| #define HAVE_FCNTL 1
| #define HAVE_FDOPENDIR 1
| #define HAVE_FNMATCH 1
| #define HAVE_FORK 1
| #define HAVE_FSTAT 1
| #define HAVE_FSTATAT 1
| #define HAVE_FSTATFS 1
| #define HAVE_FSTATVFS 1
| #define HAVE_FTRUNCATE 1
| #define HAVE_FUTIMENS 1
| #define HAVE_FUTIMES 1
| #define HAVE_FUTIMESAT 1
| #define HAVE_GETEUID 1
| #define HAVE_GETLINE 1
| #define HAVE_GETPID 1
| #define HAVE_GETGRGID_R 1
| #define HAVE_GETGRNAM_R 1
| #define HAVE_GETPWNAM_R 1
| #define HAVE_GETPWUID_R 1
| #define HAVE_GMTIME_R 1
| #define HAVE_LCHMOD 1
| #define HAVE_LCHOWN 1
| #define HAVE_LINK 1
| #define HAVE_LINKAT 1
| #define HAVE_LOCALTIME_R 1
| #define HAVE_LSTAT 1
| #define HAVE_LUTIMES 1
| #define HAVE_MBRTOWC 1
| #define HAVE_MEMMOVE 1
| #define HAVE_MEMSET 1
| #define HAVE_MKDIR 1
| #define HAVE_MKFIFO 1
| #define HAVE_MKNOD 1
| #define HAVE_MKSTEMP 1
| #define HAVE_NL_LANGINFO 1
| #define HAVE_OPENAT 1
| #define HAVE_PIPE 1
| #define HAVE_POLL 1
| #define HAVE_POSIX_SPAWNP 1
| #define HAVE_READLINK 1
| #define HAVE_READLINKAT 1
| #define HAVE_SELECT 1
| #define HAVE_SETENV 1
| #define HAVE_SETLOCALE 1
| #define HAVE_SIGACTION 1
| #define HAVE_STATFS 1
| #define HAVE_STATVFS 1
| #define HAVE_STRCHR 1
| #define HAVE_STRDUP 1
| #define HAVE_STRERROR 1
| #define HAVE_STRNLEN 1
| #define HAVE_STRRCHR 1
| #define HAVE_SYMLINK 1
| #define HAVE_TIMEGM 1
| #define HAVE_TZSET 1
| #define HAVE_UNLINKAT 1
| #define HAVE_UNSETENV 1
| #define HAVE_UTIME 1
| #define HAVE_UTIMENSAT 1
| #define HAVE_UTIMES 1
| #define HAVE_VFORK 1
| #define HAVE_WCRTOMB 1
| #define HAVE_WCSCMP 1
| #define HAVE_WCSCPY 1
| #define HAVE_WCSLEN 1
| #define HAVE_WCTOMB 1
| #define HAVE_WMEMCMP 1
| #define HAVE_WMEMCPY 1
| #define HAVE_WMEMMOVE 1
| #define HAVE_READDIR_R 1
| #define HAVE_DIRFD 1
| /* end confdefs.h.  */
| 
| #define ARCHIVE_SHA512_COMPILE_TEST
| #define ARCHIVE_CRYPTO_SHA512_LIBSYSTEM
| #define PLATFORM_CONFIG_H "check_crypto_md.h"
| 
| /*-
| * Copyright (c) 2003-2007 Tim Kientzle
| * Copyright (c) 2011 Andres Mejia
| * Copyright (c) 2011 Michihiro NAKAJIMA
| * All rights reserved.
| *
| * Redistribution and use in source and binary forms, with or without
| * modification, are permitted provided that the following conditions
| * are met:
| * 1. Redistributions of source code must retain the above copyright
| *    notice, this list of conditions and the following disclaimer.
| * 2. Redistributions in binary form must reproduce the above copyright
| *    notice, this list of conditions and the following disclaimer in the
| *    documentation and/or other materials provided with the distribution.
| *
| * THIS SOFTWARE IS PROVIDED BY THE AUTHOR(S) ``AS IS'' AND ANY EXPRESS OR
| * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
| * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
| * IN NO EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY DIRECT, INDIRECT,
| * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
| * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
| * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
| * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
| * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
| * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
| */
| 
| #include "archive_platform.h"
| 
| #include "archive.h"
| #include "archive_digest_private.h"
| 
| /* In particular, force the configure probe to break if it tries
|  * to test a combination of OpenSSL and libmd. */
| #if defined(ARCHIVE_CRYPTO_OPENSSL) && defined(ARCHIVE_CRYPTO_LIBMD)
| #error Cannot use both OpenSSL and libmd.
| #endif
| 
| /* Common in other bcrypt implementations, but missing from VS2008. */
| #ifndef BCRYPT_SUCCESS
| #define BCRYPT_SUCCESS(r) ((NTSTATUS)(r) == STATUS_SUCCESS)
| #endif
| 
| /*
|  * Message digest functions for Windows platform.
|  */
| #if defined(ARCHIVE_CRYPTO_MD5_WIN)    ||\
| 	defined(ARCHIVE_CRYPTO_SHA1_WIN)   ||\
| 	defined(ARCHIVE_CRYPTO_SHA256_WIN) ||\
| 	defined(ARCHIVE_CRYPTO_SHA384_WIN) ||\
| 	defined(ARCHIVE_CRYPTO_SHA512_WIN)
| 
| /*
|  * Initialize a Message digest.
|  */
| #if defined(HAVE_BCRYPT_H) && _WIN32_WINNT >= _WIN32_WINNT_VISTA
| static int
| win_crypto_init(Digest_CTX *ctx, const WCHAR *algo)
| {
| 	NTSTATUS status;
| 	ctx->valid = 0;
| 
| 	status = BCryptOpenAlgorithmProvider(&ctx->hAlg, algo, NULL, 0);
| 	if (!BCRYPT_SUCCESS(status))
| 		return (ARCHIVE_FAILED);
| 	status = BCryptCreateHash(ctx->hAlg, &ctx->hHash, NULL, 0, NULL, 0, 0);
| 	if (!BCRYPT_SUCCESS(status)) {
| 		BCryptCloseAlgorithmProvider(ctx->hAlg, 0);
| 		return (ARCHIVE_FAILED);
| 	}
| 
| 	ctx->valid = 1;
| 	return (ARCHIVE_OK);
| }
| #else
| static int
| win_crypto_init(Digest_CTX *ctx, DWORD prov, ALG_ID algId)
| {
| 
| 	ctx->valid = 0;
| 	if (!CryptAcquireContext(&ctx->cryptProv, NULL, NULL,
| 	    prov, CRYPT_VERIFYCONTEXT)) {
| 		if (GetLastError() != (DWORD)NTE_BAD_KEYSET)
| 			return (ARCHIVE_FAILED);
| 		if (!CryptAcquireContext(&ctx->cryptProv, NULL, NULL,
| 		    prov, CRYPT_NEWKEYSET))
| 			return (ARCHIVE_FAILED);
| 	}
| 
| 	if (!CryptCreateHash(ctx->cryptProv, algId, 0, 0, &ctx->hash)) {
| 		CryptReleaseContext(ctx->cryptProv, 0);
| 		return (ARCHIVE_FAILED);
| 	}
| 
| 	ctx->valid = 1;
| 	return (ARCHIVE_OK);
| }
| #endif
| 
| /*
|  * Update a Message digest.
|  */
| static int
| win_crypto_Update(Digest_CTX *ctx, const unsigned char *buf, size_t len)
| {
| 
| 	if (!ctx->valid)
| 		return (ARCHIVE_FAILED);
| 
| #if defined(HAVE_BCRYPT_H) && _WIN32_WINNT >= _WIN32_WINNT_VISTA
| 	BCryptHashData(ctx->hHash,
| 		      (PUCHAR)(uintptr_t)buf,
| 		      (ULONG)len, 0);
| #else
| 	CryptHashData(ctx->hash,
| 		      (unsigned char *)(uintptr_t)buf,
| 		      (DWORD)len, 0);
| #endif
| 	return (ARCHIVE_OK);
| }
| 
| static int
| win_crypto_Final(unsigned char *buf, size_t bufsize, Digest_CTX *ctx)
| {
| #if !(defined(HAVE_BCRYPT_H) && _WIN32_WINNT >= _WIN32_WINNT_VISTA)
| 	DWORD siglen = (DWORD)bufsize;
| #endif
| 
| 	if (!ctx->valid)
| 		return (ARCHIVE_FAILED);
| 
| #if defined(HAVE_BCRYPT_H) && _WIN32_WINNT >= _WIN32_WINNT_VISTA
| 	BCryptFinishHash(ctx->hHash, buf, (ULONG)bufsize, 0);
| 	BCryptDestroyHash(ctx->hHash);
| 	BCryptCloseAlgorithmProvider(ctx->hAlg, 0);
| #else
| 	CryptGetHashParam(ctx->hash, HP_HASHVAL, buf, &siglen, 0);
| 	CryptDestroyHash(ctx->hash);
| 	CryptReleaseContext(ctx->cryptProv, 0);
| #endif
| 	ctx->valid = 0;
| 	return (ARCHIVE_OK);
| }
| 
| #endif /* defined(ARCHIVE_CRYPTO_*_WIN) */
| 
| 
| /* MD5 implementations */
| #if defined(ARCHIVE_CRYPTO_MD5_LIBC)
| 
| static int
| __archive_md5init(archive_md5_ctx *ctx)
| {
|   MD5Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5update(archive_md5_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   MD5Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5final(archive_md5_ctx *ctx, void *md)
| {
|   MD5Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_MD5_LIBMD)
| 
| static int
| __archive_md5init(archive_md5_ctx *ctx)
| {
|   MD5Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5update(archive_md5_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   MD5Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5final(archive_md5_ctx *ctx, void *md)
| {
|   MD5Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_MD5_LIBSYSTEM)
| 
| static int
| __archive_md5init(archive_md5_ctx *ctx)
| {
|   CC_MD5_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5update(archive_md5_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   CC_MD5_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5final(archive_md5_ctx *ctx, void *md)
| {
|   CC_MD5_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_MD5_MBEDTLS)
| 
| static int
| __archive_md5init(archive_md5_ctx *ctx)
| {
|   mbedtls_md5_init(ctx);
|   if (mbedtls_md5_starts_ret(ctx) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_md5update(archive_md5_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   if (mbedtls_md5_update_ret(ctx, indata, insize) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_md5final(archive_md5_ctx *ctx, void *md)
| {
|   if (mbedtls_md5_finish_ret(ctx, md) == 0) {
|     mbedtls_md5_free(ctx);
|     return (ARCHIVE_OK);
|   } else {
|     mbedtls_md5_free(ctx);
|     return (ARCHIVE_FATAL);
|   }
| }
| 
| #elif defined(ARCHIVE_CRYPTO_MD5_NETTLE)
| 
| static int
| __archive_md5init(archive_md5_ctx *ctx)
| {
|   md5_init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5update(archive_md5_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   md5_update(ctx, insize, indata);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5final(archive_md5_ctx *ctx, void *md)
| {
|   md5_digest(ctx, MD5_DIGEST_SIZE, md);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_MD5_OPENSSL)
| 
| static int
| __archive_md5init(archive_md5_ctx *ctx)
| {
|   if ((*ctx = EVP_MD_CTX_new()) == NULL)
| 	return (ARCHIVE_FAILED);
|   if (!EVP_DigestInit(*ctx, EVP_md5()))
| 	return (ARCHIVE_FAILED);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5update(archive_md5_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   EVP_DigestUpdate(*ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_md5final(archive_md5_ctx *ctx, void *md)
| {
|   /* HACK: archive_write_set_format_xar.c is finalizing empty contexts, so
|    * this is meant to cope with that. Real fix is probably to fix
|    * archive_write_set_format_xar.c
|    */
|   if (*ctx) {
|     EVP_DigestFinal(*ctx, md, NULL);
|     EVP_MD_CTX_free(*ctx);
|     *ctx = NULL;
|   }
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_MD5_WIN)
| 
| static int
| __archive_md5init(archive_md5_ctx *ctx)
| {
| #if defined(HAVE_BCRYPT_H) && _WIN32_WINNT >= _WIN32_WINNT_VISTA
|   return (win_crypto_init(ctx, BCRYPT_MD5_ALGORITHM));
| #else
|   return (win_crypto_init(ctx, PROV_RSA_FULL, CALG_MD5));
| #endif
| }
| 
| static int
| __archive_md5update(archive_md5_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   return (win_crypto_Update(ctx, indata, insize));
| }
| 
| static int
| __archive_md5final(archive_md5_ctx *ctx, void *md)
| {
|   return (win_crypto_Final(md, 16, ctx));
| }
| 
| #else
| 
| static int
| __archive_md5init(archive_md5_ctx *ctx)
| {
| 	(void)ctx; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_md5update(archive_md5_ctx *ctx, const void *indata,
|     size_t insize)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)indata; /* UNUSED */
| 	(void)insize; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_md5final(archive_md5_ctx *ctx, void *md)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)md; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| #endif
| 
| /* RIPEMD160 implementations */
| #if defined(ARCHIVE_CRYPTO_RMD160_LIBC)
| 
| static int
| __archive_ripemd160init(archive_rmd160_ctx *ctx)
| {
|   RMD160Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   RMD160Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md)
| {
|   RMD160Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_RMD160_LIBMD)
| 
| static int
| __archive_ripemd160init(archive_rmd160_ctx *ctx)
| {
|   RIPEMD160_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   RIPEMD160_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md)
| {
|   RIPEMD160_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_RMD160_MBEDTLS)
| 
| static int
| __archive_ripemd160init(archive_rmd160_ctx *ctx)
| {
|   mbedtls_ripemd160_init(ctx);
|   if (mbedtls_ripemd160_starts_ret(ctx) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   if (mbedtls_ripemd160_update_ret(ctx, indata, insize) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md)
| {
|   if (mbedtls_ripemd160_finish_ret(ctx, md) == 0) {
|     mbedtls_ripemd160_free(ctx);
|     return (ARCHIVE_OK);
|   } else {
|     mbedtls_ripemd160_free(ctx);
|     return (ARCHIVE_FATAL);
|   }
| }
| 
| #elif defined(ARCHIVE_CRYPTO_RMD160_NETTLE)
| 
| static int
| __archive_ripemd160init(archive_rmd160_ctx *ctx)
| {
|   ripemd160_init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   ripemd160_update(ctx, insize, indata);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md)
| {
|   ripemd160_digest(ctx, RIPEMD160_DIGEST_SIZE, md);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_RMD160_OPENSSL)
| 
| static int
| __archive_ripemd160init(archive_rmd160_ctx *ctx)
| {
|   if ((*ctx = EVP_MD_CTX_new()) == NULL)
| 	return (ARCHIVE_FAILED);
|   if (!EVP_DigestInit(*ctx, EVP_ripemd160()))
| 	return (ARCHIVE_FAILED);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   EVP_DigestUpdate(*ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md)
| {
|   if (*ctx) {
|     EVP_DigestFinal(*ctx, md, NULL);
|     EVP_MD_CTX_free(*ctx);
|     *ctx = NULL;
|   }
|   return (ARCHIVE_OK);
| }
| 
| #else
| 
| static int
| __archive_ripemd160init(archive_rmd160_ctx *ctx)
| {
| 	(void)ctx; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata,
|     size_t insize)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)indata; /* UNUSED */
| 	(void)insize; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)md; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| #endif
| 
| /* SHA1 implementations */
| #if defined(ARCHIVE_CRYPTO_SHA1_LIBC)
| 
| static int
| __archive_sha1init(archive_sha1_ctx *ctx)
| {
|   SHA1Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1update(archive_sha1_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA1Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1final(archive_sha1_ctx *ctx, void *md)
| {
|   SHA1Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA1_LIBMD)
| 
| static int
| __archive_sha1init(archive_sha1_ctx *ctx)
| {
|   SHA1_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1update(archive_sha1_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA1_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1final(archive_sha1_ctx *ctx, void *md)
| {
|   SHA1_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA1_LIBSYSTEM)
| 
| static int
| __archive_sha1init(archive_sha1_ctx *ctx)
| {
|   CC_SHA1_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1update(archive_sha1_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   CC_SHA1_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1final(archive_sha1_ctx *ctx, void *md)
| {
|   CC_SHA1_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA1_MBEDTLS)
| 
| static int
| __archive_sha1init(archive_sha1_ctx *ctx)
| {
|   mbedtls_sha1_init(ctx);
|   if (mbedtls_sha1_starts_ret(ctx) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_sha1update(archive_sha1_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   if (mbedtls_sha1_update_ret(ctx, indata, insize) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_sha1final(archive_sha1_ctx *ctx, void *md)
| {
|   if (mbedtls_sha1_finish_ret(ctx, md) == 0) {
|     mbedtls_sha1_free(ctx);
|     return (ARCHIVE_OK);
|   } else {
|     mbedtls_sha1_free(ctx);
|     return (ARCHIVE_FATAL);
|   }
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA1_NETTLE)
| 
| static int
| __archive_sha1init(archive_sha1_ctx *ctx)
| {
|   sha1_init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1update(archive_sha1_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   sha1_update(ctx, insize, indata);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1final(archive_sha1_ctx *ctx, void *md)
| {
|   sha1_digest(ctx, SHA1_DIGEST_SIZE, md);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA1_OPENSSL)
| 
| static int
| __archive_sha1init(archive_sha1_ctx *ctx)
| {
|   if ((*ctx = EVP_MD_CTX_new()) == NULL)
| 	return (ARCHIVE_FAILED);
|   if (!EVP_DigestInit(*ctx, EVP_sha1()))
| 	return (ARCHIVE_FAILED);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1update(archive_sha1_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   EVP_DigestUpdate(*ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha1final(archive_sha1_ctx *ctx, void *md)
| {
|   /* HACK: archive_write_set_format_xar.c is finalizing empty contexts, so
|    * this is meant to cope with that. Real fix is probably to fix
|    * archive_write_set_format_xar.c
|    */
|   if (*ctx) {
|     EVP_DigestFinal(*ctx, md, NULL);
|     EVP_MD_CTX_free(*ctx);
|     *ctx = NULL;
|   }
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA1_WIN)
| 
| static int
| __archive_sha1init(archive_sha1_ctx *ctx)
| {
| #if defined(HAVE_BCRYPT_H) && _WIN32_WINNT >= _WIN32_WINNT_VISTA
|   return (win_crypto_init(ctx, BCRYPT_SHA1_ALGORITHM));
| #else
|   return (win_crypto_init(ctx, PROV_RSA_FULL, CALG_SHA1));
| #endif
| }
| 
| static int
| __archive_sha1update(archive_sha1_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   return (win_crypto_Update(ctx, indata, insize));
| }
| 
| static int
| __archive_sha1final(archive_sha1_ctx *ctx, void *md)
| {
|   return (win_crypto_Final(md, 20, ctx));
| }
| 
| #else
| 
| static int
| __archive_sha1init(archive_sha1_ctx *ctx)
| {
| 	(void)ctx; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_sha1update(archive_sha1_ctx *ctx, const void *indata,
|     size_t insize)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)indata; /* UNUSED */
| 	(void)insize; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_sha1final(archive_sha1_ctx *ctx, void *md)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)md; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| #endif
| 
| /* SHA256 implementations */
| #if defined(ARCHIVE_CRYPTO_SHA256_LIBC)
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
|   SHA256_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA256_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
|   SHA256_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA256_LIBC2)
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
|   SHA256Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA256Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
|   SHA256Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA256_LIBC3)
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
|   SHA256Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA256Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
|   SHA256Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA256_LIBMD)
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
|   SHA256_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA256_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
|   SHA256_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA256_LIBSYSTEM)
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
|   CC_SHA256_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   CC_SHA256_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
|   CC_SHA256_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA256_MBEDTLS)
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
|   mbedtls_sha256_init(ctx);
|   if (mbedtls_sha256_starts_ret(ctx, 0) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   if (mbedtls_sha256_update_ret(ctx, indata, insize) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
|   if (mbedtls_sha256_finish_ret(ctx, md) == 0) {
|     mbedtls_sha256_free(ctx);
|     return (ARCHIVE_OK);
|   } else {
|     mbedtls_sha256_free(ctx);
|     return (ARCHIVE_FATAL);
|   }
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA256_NETTLE)
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
|   sha256_init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   sha256_update(ctx, insize, indata);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
|   sha256_digest(ctx, SHA256_DIGEST_SIZE, md);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA256_OPENSSL)
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
|   if ((*ctx = EVP_MD_CTX_new()) == NULL)
| 	return (ARCHIVE_FAILED);
|   if (!EVP_DigestInit(*ctx, EVP_sha256()))
| 	return (ARCHIVE_FAILED);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   EVP_DigestUpdate(*ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
|   if (*ctx) {
|     EVP_DigestFinal(*ctx, md, NULL);
|     EVP_MD_CTX_free(*ctx);
|     *ctx = NULL;
|   }
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA256_WIN)
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
| #if defined(HAVE_BCRYPT_H) && _WIN32_WINNT >= _WIN32_WINNT_VISTA
|   return (win_crypto_init(ctx, BCRYPT_SHA256_ALGORITHM));
| #else
|   return (win_crypto_init(ctx, PROV_RSA_AES, CALG_SHA_256));
| #endif
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   return (win_crypto_Update(ctx, indata, insize));
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
|   return (win_crypto_Final(md, 32, ctx));
| }
| 
| #else
| 
| static int
| __archive_sha256init(archive_sha256_ctx *ctx)
| {
| 	(void)ctx; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_sha256update(archive_sha256_ctx *ctx, const void *indata,
|     size_t insize)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)indata; /* UNUSED */
| 	(void)insize; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_sha256final(archive_sha256_ctx *ctx, void *md)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)md; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| #endif
| 
| /* SHA384 implementations */
| #if defined(ARCHIVE_CRYPTO_SHA384_LIBC)
| 
| static int
| __archive_sha384init(archive_sha384_ctx *ctx)
| {
|   SHA384_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384update(archive_sha384_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA384_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384final(archive_sha384_ctx *ctx, void *md)
| {
|   SHA384_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA384_LIBC2)
| 
| static int
| __archive_sha384init(archive_sha384_ctx *ctx)
| {
|   SHA384Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384update(archive_sha384_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA384Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384final(archive_sha384_ctx *ctx, void *md)
| {
|   SHA384Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA384_LIBC3)
| 
| static int
| __archive_sha384init(archive_sha384_ctx *ctx)
| {
|   SHA384Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384update(archive_sha384_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA384Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384final(archive_sha384_ctx *ctx, void *md)
| {
|   SHA384Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA384_LIBSYSTEM)
| 
| static int
| __archive_sha384init(archive_sha384_ctx *ctx)
| {
|   CC_SHA384_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384update(archive_sha384_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   CC_SHA384_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384final(archive_sha384_ctx *ctx, void *md)
| {
|   CC_SHA384_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA384_MBEDTLS)
| 
| static int
| __archive_sha384init(archive_sha384_ctx *ctx)
| {
|   mbedtls_sha512_init(ctx);
|   if (mbedtls_sha512_starts_ret(ctx, 1) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_sha384update(archive_sha384_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   if (mbedtls_sha512_update_ret(ctx, indata, insize) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_sha384final(archive_sha384_ctx *ctx, void *md)
| {
|   if (mbedtls_sha512_finish_ret(ctx, md) == 0) {
|     mbedtls_sha512_free(ctx);
|     return (ARCHIVE_OK);
|   } else {
|     mbedtls_sha512_free(ctx);
|     return (ARCHIVE_FATAL);
|   }
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA384_NETTLE)
| 
| static int
| __archive_sha384init(archive_sha384_ctx *ctx)
| {
|   sha384_init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384update(archive_sha384_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   sha384_update(ctx, insize, indata);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384final(archive_sha384_ctx *ctx, void *md)
| {
|   sha384_digest(ctx, SHA384_DIGEST_SIZE, md);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA384_OPENSSL)
| 
| static int
| __archive_sha384init(archive_sha384_ctx *ctx)
| {
|   if ((*ctx = EVP_MD_CTX_new()) == NULL)
| 	return (ARCHIVE_FAILED);
|   if (!EVP_DigestInit(*ctx, EVP_sha384()))
| 	return (ARCHIVE_FAILED);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384update(archive_sha384_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   EVP_DigestUpdate(*ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha384final(archive_sha384_ctx *ctx, void *md)
| {
|   if (*ctx) {
|     EVP_DigestFinal(*ctx, md, NULL);
|     EVP_MD_CTX_free(*ctx);
|     *ctx = NULL;
|   }
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA384_WIN)
| 
| static int
| __archive_sha384init(archive_sha384_ctx *ctx)
| {
| #if defined(HAVE_BCRYPT_H) && _WIN32_WINNT >= _WIN32_WINNT_VISTA
|   return (win_crypto_init(ctx, BCRYPT_SHA384_ALGORITHM));
| #else
|   return (win_crypto_init(ctx, PROV_RSA_AES, CALG_SHA_384));
| #endif
| }
| 
| static int
| __archive_sha384update(archive_sha384_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   return (win_crypto_Update(ctx, indata, insize));
| }
| 
| static int
| __archive_sha384final(archive_sha384_ctx *ctx, void *md)
| {
|   return (win_crypto_Final(md, 48, ctx));
| }
| 
| #else
| 
| static int
| __archive_sha384init(archive_sha384_ctx *ctx)
| {
| 	(void)ctx; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_sha384update(archive_sha384_ctx *ctx, const void *indata,
|     size_t insize)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)indata; /* UNUSED */
| 	(void)insize; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_sha384final(archive_sha384_ctx *ctx, void *md)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)md; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| #endif
| 
| /* SHA512 implementations */
| #if defined(ARCHIVE_CRYPTO_SHA512_LIBC)
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
|   SHA512_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA512_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
|   SHA512_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA512_LIBC2)
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
|   SHA512Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA512Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
|   SHA512Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA512_LIBC3)
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
|   SHA512Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA512Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
|   SHA512Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA512_LIBMD)
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
|   SHA512_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   SHA512_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
|   SHA512_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA512_LIBSYSTEM)
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
|   CC_SHA512_Init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   CC_SHA512_Update(ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
|   CC_SHA512_Final(md, ctx);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA512_MBEDTLS)
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
|   mbedtls_sha512_init(ctx);
|   if (mbedtls_sha512_starts_ret(ctx, 0) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   if (mbedtls_sha512_update_ret(ctx, indata, insize) == 0)
|     return (ARCHIVE_OK);
|   else
|     return (ARCHIVE_FATAL);
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
|   if (mbedtls_sha512_finish_ret(ctx, md) == 0) {
|     mbedtls_sha512_free(ctx);
|     return (ARCHIVE_OK);
|   } else {
|     mbedtls_sha512_free(ctx);
|     return (ARCHIVE_FATAL);
|   }
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA512_NETTLE)
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
|   sha512_init(ctx);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   sha512_update(ctx, insize, indata);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
|   sha512_digest(ctx, SHA512_DIGEST_SIZE, md);
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA512_OPENSSL)
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
|   if ((*ctx = EVP_MD_CTX_new()) == NULL)
| 	return (ARCHIVE_FAILED);
|   if (!EVP_DigestInit(*ctx, EVP_sha512()))
| 	return (ARCHIVE_FAILED);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   EVP_DigestUpdate(*ctx, indata, insize);
|   return (ARCHIVE_OK);
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
|   if (*ctx) {
|     EVP_DigestFinal(*ctx, md, NULL);
|     EVP_MD_CTX_free(*ctx);
|     *ctx = NULL;
|   }
|   return (ARCHIVE_OK);
| }
| 
| #elif defined(ARCHIVE_CRYPTO_SHA512_WIN)
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
| #if defined(HAVE_BCRYPT_H) && _WIN32_WINNT >= _WIN32_WINNT_VISTA
|   return (win_crypto_init(ctx, BCRYPT_SHA512_ALGORITHM));
| #else
|   return (win_crypto_init(ctx, PROV_RSA_AES, CALG_SHA_512));
| #endif
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
|   return (win_crypto_Update(ctx, indata, insize));
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
|   return (win_crypto_Final(md, 64, ctx));
| }
| 
| #else
| 
| static int
| __archive_sha512init(archive_sha512_ctx *ctx)
| {
| 	(void)ctx; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_sha512update(archive_sha512_ctx *ctx, const void *indata,
|     size_t insize)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)indata; /* UNUSED */
| 	(void)insize; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| static int
| __archive_sha512final(archive_sha512_ctx *ctx, void *md)
| {
| 	(void)ctx; /* UNUSED */
| 	(void)md; /* UNUSED */
| 	return (ARCHIVE_FAILED);
| }
| 
| #endif
| 
| /* NOTE: Message Digest functions are set based on availability and by the
|  * following order of preference.
|  * 1. libc
|  * 2. libc2
|  * 3. libc3
|  * 4. libSystem
|  * 5. Nettle
|  * 6. OpenSSL
|  * 7. libmd
|  * 8. Windows API
|  */
| const struct archive_digest __archive_digest =
| {
| /* MD5 */
|   &__archive_md5init,
|   &__archive_md5update,
|   &__archive_md5final,
| 
| /* RIPEMD160 */
|   &__archive_ripemd160init,
|   &__archive_ripemd160update,
|   &__archive_ripemd160final,
| 
| /* SHA1 */
|   &__archive_sha1init,
|   &__archive_sha1update,
|   &__archive_sha1final,
| 
| /* SHA256 */
|   &__archive_sha256init,
|   &__archive_sha256update,
|   &__archive_sha256final,
| 
| /* SHA384 */
|   &__archive_sha384init,
|   &__archive_sha384update,
|   &__archive_sha384final,
| 
| /* SHA512 */
|   &__archive_sha512init,
|   &__archive_sha512update,
|   &__archive_sha512final
| };
| 
| int
| main(int argc, char **argv)
| {
|   archive_sha512_ctx ctx;
|   archive_sha512_init(&ctx);
|   archive_sha512_update(&ctx, *argv, argc);
|   archive_sha512_final(&ctx, NULL);
|   return 0;
| }
| 
configure:18457: result: no
configure:18472: checking for bcrypt.h
configure:18472: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2  conftest.c >&5
conftest.c:225:10: fatal error: bcrypt.h: No such file or directory
  225 | #include <bcrypt.h>
      |          ^~~~~~~~~~
compilation terminated.
configure:18472: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "libarchive"
| #define PACKAGE_TARNAME "libarchive"
| #define PACKAGE_VERSION "3.7.2"
| #define PACKAGE_STRING "libarchive 3.7.2"
| #define PACKAGE_BUGREPORT "libarchive-discuss@googlegroups.com"
| #define PACKAGE_URL ""
| #define PACKAGE "libarchive"
| #define VERSION "3.7.2"
| #define __LIBARCHIVE_CONFIG_H_INCLUDED 1
| #define LIBARCHIVE_VERSION_STRING "3.7.2"
| #define LIBARCHIVE_VERSION_NUMBER "3007002"
| #define BSDCPIO_VERSION_STRING "3.7.2"
| #define BSDTAR_VERSION_STRING "3.7.2"
| #define BSDCAT_VERSION_STRING "3.7.2"
| #define BSDUNZIP_VERSION_STRING "3.7.2"
| #define HAVE_STDIO_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_SYS_TIME_H 1
| #define STDC_HEADERS 1
| #define _ALL_SOURCE 1
| #define _DARWIN_C_SOURCE 1
| #define _GNU_SOURCE 1
| #define _HPUX_ALT_XOPEN_SOCKET_API 1
| #define _NETBSD_SOURCE 1
| #define _OPENBSD_SOURCE 1
| #define _POSIX_PTHREAD_SEMANTICS 1
| #define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1
| #define __STDC_WANT_IEC_60559_BFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_DFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1
| #define __STDC_WANT_IEC_60559_TYPES_EXT__ 1
| #define __STDC_WANT_LIB_EXT2__ 1
| #define __STDC_WANT_MATH_SPEC_FUNCS__ 1
| #define _TANDEM_SOURCE 1
| #define __EXTENSIONS__ 1
| #define HAVE_DLFCN_H 1
| #define LT_OBJDIR ".libs/"
| #define HAVE_DIRENT_H 1
| #define HAVE_SYS_WAIT_H 1
| #define HAVE_CTYPE_H 1
| #define HAVE_ERRNO_H 1
| #define HAVE_FCNTL_H 1
| #define HAVE_FNMATCH_H 1
| #define HAVE_GRP_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_LANGINFO_H 1
| #define HAVE_LIMITS_H 1
| #define HAVE_LINUX_FIEMAP_H 1
| #define HAVE_LINUX_FS_H 1
| #define HAVE_LINUX_MAGIC_H 1
| #define HAVE_LINUX_TYPES_H 1
| #define HAVE_WORKING_FS_IOC_GETFLAGS 1
| #define HAVE_LOCALE_H 1
| #define HAVE_PATHS_H 1
| #define HAVE_POLL_H 1
| #define HAVE_PTHREAD_H 1
| #define HAVE_PWD_H 1
| #define HAVE_SIGNAL_H 1
| #define HAVE_SPAWN_H 1
| #define HAVE_STDARG_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_SYS_CDEFS_H 1
| #define HAVE_SYS_IOCTL_H 1
| #define HAVE_SYS_MOUNT_H 1
| #define HAVE_SYS_QUEUE_H 1
| #define HAVE_SYS_PARAM_H 1
| #define HAVE_SYS_POLL_H 1
| #define HAVE_SYS_SELECT_H 1
| #define HAVE_SYS_STATFS_H 1
| #define HAVE_SYS_STATVFS_H 1
| #define HAVE_SYS_SYSMACROS_H 1
| #define HAVE_SYS_TIME_H 1
| #define HAVE_SYS_UTSNAME_H 1
| #define HAVE_SYS_VFS_H 1
| #define HAVE_SYS_XATTR_H 1
| #define HAVE_TIME_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_UTIME_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_WCTYPE_H 1
| #define HAVE_ZLIB_H 1
| #define HAVE_LIBZ 1
| #define HAVE_ICONV 1
| #define ICONV_CONST 
| #define HAVE_ICONV_H 1
| #define HAVE_LZ4_H 1
| #define HAVE_LZ4HC_H 1
| #define HAVE_LIBLZ4 1
| #define HAVE_ZSTD_H 1
| #define HAVE_LIBZSTD 1
| #define HAVE_LIBZSTD_COMPRESSOR 1
| #define HAVE_LIBXML_XMLREADER_H 1
| #define HAVE_LIBXML_XMLWRITER_H 1
| #define HAVE_REGEX_H 1
| #define HAVE_STRUCT_TM_TM_GMTOFF 1
| #define HAVE_STRUCT_STAT_ST_MTIM_TV_NSEC 1
| #define HAVE_STRUCT_STAT_ST_BLKSIZE 1
| #define HAVE_UINTMAX_T 1
| #define HAVE_UNSIGNED_LONG_LONG 1
| #define HAVE_UNSIGNED_LONG_LONG_INT 1
| #define HAVE_LONG_LONG_INT 1
| #define HAVE_INTMAX_T 1
| #define HAVE_UINTMAX_T 1
| #define HAVE_DECL_SIZE_MAX 1
| #define HAVE_DECL_INT32_MAX 1
| #define HAVE_DECL_INT32_MIN 1
| #define HAVE_DECL_INT64_MAX 1
| #define HAVE_DECL_INT64_MIN 1
| #define HAVE_DECL_UINT64_MAX 1
| #define HAVE_DECL_UINT32_MAX 1
| #define HAVE_DECL_INTMAX_MAX 1
| #define HAVE_DECL_INTMAX_MIN 1
| #define HAVE_DECL_UINTMAX_MAX 1
| #define HAVE_DECL_SSIZE_MAX 1
| #define HAVE_EILSEQ 1
| #define HAVE_WCHAR_T 1
| #define SIZEOF_WCHAR_T 4
| #define SIZEOF_INT 4
| #define SIZEOF_LONG 4
| #define MAJOR_IN_SYSMACROS 1
| #define HAVE_FSEEKO 1
| #define LSTAT_FOLLOWS_SLASHED_SYMLINK 1
| #define HAVE_LSTAT_EMPTY_STRING_BUG 1
| #define HAVE_STAT_EMPTY_STRING_BUG 1
| #define HAVE_DECL_STRERROR_R 1
| #define HAVE_STRERROR_R 1
| #define STRERROR_R_CHAR_P 1
| #define HAVE_STRFTIME 1
| #define HAVE_VPRINTF 1
| #define HAVE_ARC4RANDOM_BUF 1
| #define HAVE_CHOWN 1
| #define HAVE_CHROOT 1
| #define HAVE_CTIME_R 1
| #define HAVE_FCHDIR 1
| #define HAVE_FCHMOD 1
| #define HAVE_FCHOWN 1
| #define HAVE_FCNTL 1
| #define HAVE_FDOPENDIR 1
| #define HAVE_FNMATCH 1
| #define HAVE_FORK 1
| #define HAVE_FSTAT 1
| #define HAVE_FSTATAT 1
| #define HAVE_FSTATFS 1
| #define HAVE_FSTATVFS 1
| #define HAVE_FTRUNCATE 1
| #define HAVE_FUTIMENS 1
| #define HAVE_FUTIMES 1
| #define HAVE_FUTIMESAT 1
| #define HAVE_GETEUID 1
| #define HAVE_GETLINE 1
| #define HAVE_GETPID 1
| #define HAVE_GETGRGID_R 1
| #define HAVE_GETGRNAM_R 1
| #define HAVE_GETPWNAM_R 1
| #define HAVE_GETPWUID_R 1
| #define HAVE_GMTIME_R 1
| #define HAVE_LCHMOD 1
| #define HAVE_LCHOWN 1
| #define HAVE_LINK 1
| #define HAVE_LINKAT 1
| #define HAVE_LOCALTIME_R 1
| #define HAVE_LSTAT 1
| #define HAVE_LUTIMES 1
| #define HAVE_MBRTOWC 1
| #define HAVE_MEMMOVE 1
| #define HAVE_MEMSET 1
| #define HAVE_MKDIR 1
| #define HAVE_MKFIFO 1
| #define HAVE_MKNOD 1
| #define HAVE_MKSTEMP 1
| #define HAVE_NL_LANGINFO 1
| #define HAVE_OPENAT 1
| #define HAVE_PIPE 1
| #define HAVE_POLL 1
| #define HAVE_POSIX_SPAWNP 1
| #define HAVE_READLINK 1
| #define HAVE_READLINKAT 1
| #define HAVE_SELECT 1
| #define HAVE_SETENV 1
| #define HAVE_SETLOCALE 1
| #define HAVE_SIGACTION 1
| #define HAVE_STATFS 1
| #define HAVE_STATVFS 1
| #define HAVE_STRCHR 1
| #define HAVE_STRDUP 1
| #define HAVE_STRERROR 1
| #define HAVE_STRNLEN 1
| #define HAVE_STRRCHR 1
| #define HAVE_SYMLINK 1
| #define HAVE_TIMEGM 1
| #define HAVE_TZSET 1
| #define HAVE_UNLINKAT 1
| #define HAVE_UNSETENV 1
| #define HAVE_UTIME 1
| #define HAVE_UTIMENSAT 1
| #define HAVE_UTIMES 1
| #define HAVE_VFORK 1
| #define HAVE_WCRTOMB 1
| #define HAVE_WCSCMP 1
| #define HAVE_WCSCPY 1
| #define HAVE_WCSLEN 1
| #define HAVE_WCTOMB 1
| #define HAVE_WMEMCMP 1
| #define HAVE_WMEMCPY 1
| #define HAVE_WMEMMOVE 1
| #define HAVE_READDIR_R 1
| #define HAVE_DIRFD 1
| /* end confdefs.h.  */
| #ifdef HAVE_WINDOWS_H
|     # include <windows.h>
|     #endif
| 
| 
| #include <bcrypt.h>
configure:18472: result: no
configure:19210: checking for openssl/evp.h
configure:19210: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2  conftest.c >&5
configure:19210: $? = 0
configure:19210: result: yes
configure:19219: checking for OPENSSL_config in -lcrypto
configure:19242: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -o conftest -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2   conftest.c -lcrypto  -lzstd -llz4 -lz  -L/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/lib -lxml2  >&5
configure:19242: $? = 0
configure:19252: result: yes
configure:19267: checking support for ARCHIVE_CRYPTO_MD5_OPENSSL
configure:19289: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -o conftest -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2  -I. -I. -I./libarchive  conftest.c -lcrypto -lzstd -llz4 -lz  -L/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/lib -lxml2  >&5
configure:19289: $? = 0
configure:19291: result: yes
configure:19314: checking support for ARCHIVE_CRYPTO_RMD160_OPENSSL
configure:19336: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -o conftest -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2  -I. -I. -I./libarchive  conftest.c -lcrypto -lzstd -llz4 -lz  -L/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/lib -lxml2  >&5
configure:19336: $? = 0
configure:19338: result: yes
configure:19361: checking support for ARCHIVE_CRYPTO_SHA1_OPENSSL
configure:19383: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -o conftest -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2  -I. -I. -I./libarchive  conftest.c -lcrypto -lzstd -llz4 -lz  -L/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/lib -lxml2  >&5
configure:19383: $? = 0
configure:19385: result: yes
configure:19408: checking support for ARCHIVE_CRYPTO_SHA256_OPENSSL
configure:19430: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -o conftest -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2  -I. -I. -I./libarchive  conftest.c -lcrypto -lzstd -llz4 -lz  -L/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/lib -lxml2  >&5
configure:19430: $? = 0
configure:19432: result: yes
configure:19455: checking support for ARCHIVE_CRYPTO_SHA384_OPENSSL
configure:19477: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -o conftest -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2  -I. -I. -I./libarchive  conftest.c -lcrypto -lzstd -llz4 -lz  -L/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/lib -lxml2  >&5
configure:19477: $? = 0
configure:19479: result: yes
configure:19502: checking support for ARCHIVE_CRYPTO_SHA512_OPENSSL
configure:19524: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -o conftest -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2  -I. -I. -I./libarchive  conftest.c -lcrypto -lzstd -llz4 -lz  -L/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/lib -lxml2  >&5
configure:19524: $? = 0
configure:19526: result: yes
configure:19544: checking for PKCS5_PBKDF2_HMAC_SHA1
configure:19544: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -o conftest -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2   conftest.c -lcrypto -lzstd -llz4 -lz  -L/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/lib -lxml2  >&5
configure:19544: $? = 0
configure:19544: result: yes
configure:19557: checking for md5.h
configure:19557: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2  conftest.c >&5
conftest.c:257:10: fatal error: md5.h: No such file or directory
  257 | #include <md5.h>
      |          ^~~~~~~
compilation terminated.
configure:19557: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "libarchive"
| #define PACKAGE_TARNAME "libarchive"
| #define PACKAGE_VERSION "3.7.2"
| #define PACKAGE_STRING "libarchive 3.7.2"
| #define PACKAGE_BUGREPORT "libarchive-discuss@googlegroups.com"
| #define PACKAGE_URL ""
| #define PACKAGE "libarchive"
| #define VERSION "3.7.2"
| #define __LIBARCHIVE_CONFIG_H_INCLUDED 1
| #define LIBARCHIVE_VERSION_STRING "3.7.2"
| #define LIBARCHIVE_VERSION_NUMBER "3007002"
| #define BSDCPIO_VERSION_STRING "3.7.2"
| #define BSDTAR_VERSION_STRING "3.7.2"
| #define BSDCAT_VERSION_STRING "3.7.2"
| #define BSDUNZIP_VERSION_STRING "3.7.2"
| #define HAVE_STDIO_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_SYS_TIME_H 1
| #define STDC_HEADERS 1
| #define _ALL_SOURCE 1
| #define _DARWIN_C_SOURCE 1
| #define _GNU_SOURCE 1
| #define _HPUX_ALT_XOPEN_SOCKET_API 1
| #define _NETBSD_SOURCE 1
| #define _OPENBSD_SOURCE 1
| #define _POSIX_PTHREAD_SEMANTICS 1
| #define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1
| #define __STDC_WANT_IEC_60559_BFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_DFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1
| #define __STDC_WANT_IEC_60559_TYPES_EXT__ 1
| #define __STDC_WANT_LIB_EXT2__ 1
| #define __STDC_WANT_MATH_SPEC_FUNCS__ 1
| #define _TANDEM_SOURCE 1
| #define __EXTENSIONS__ 1
| #define HAVE_DLFCN_H 1
| #define LT_OBJDIR ".libs/"
| #define HAVE_DIRENT_H 1
| #define HAVE_SYS_WAIT_H 1
| #define HAVE_CTYPE_H 1
| #define HAVE_ERRNO_H 1
| #define HAVE_FCNTL_H 1
| #define HAVE_FNMATCH_H 1
| #define HAVE_GRP_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_LANGINFO_H 1
| #define HAVE_LIMITS_H 1
| #define HAVE_LINUX_FIEMAP_H 1
| #define HAVE_LINUX_FS_H 1
| #define HAVE_LINUX_MAGIC_H 1
| #define HAVE_LINUX_TYPES_H 1
| #define HAVE_WORKING_FS_IOC_GETFLAGS 1
| #define HAVE_LOCALE_H 1
| #define HAVE_PATHS_H 1
| #define HAVE_POLL_H 1
| #define HAVE_PTHREAD_H 1
| #define HAVE_PWD_H 1
| #define HAVE_SIGNAL_H 1
| #define HAVE_SPAWN_H 1
| #define HAVE_STDARG_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_SYS_CDEFS_H 1
| #define HAVE_SYS_IOCTL_H 1
| #define HAVE_SYS_MOUNT_H 1
| #define HAVE_SYS_QUEUE_H 1
| #define HAVE_SYS_PARAM_H 1
| #define HAVE_SYS_POLL_H 1
| #define HAVE_SYS_SELECT_H 1
| #define HAVE_SYS_STATFS_H 1
| #define HAVE_SYS_STATVFS_H 1
| #define HAVE_SYS_SYSMACROS_H 1
| #define HAVE_SYS_TIME_H 1
| #define HAVE_SYS_UTSNAME_H 1
| #define HAVE_SYS_VFS_H 1
| #define HAVE_SYS_XATTR_H 1
| #define HAVE_TIME_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_UTIME_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_WCTYPE_H 1
| #define HAVE_ZLIB_H 1
| #define HAVE_LIBZ 1
| #define HAVE_ICONV 1
| #define ICONV_CONST 
| #define HAVE_ICONV_H 1
| #define HAVE_LZ4_H 1
| #define HAVE_LZ4HC_H 1
| #define HAVE_LIBLZ4 1
| #define HAVE_ZSTD_H 1
| #define HAVE_LIBZSTD 1
| #define HAVE_LIBZSTD_COMPRESSOR 1
| #define HAVE_LIBXML_XMLREADER_H 1
| #define HAVE_LIBXML_XMLWRITER_H 1
| #define HAVE_REGEX_H 1
| #define HAVE_STRUCT_TM_TM_GMTOFF 1
| #define HAVE_STRUCT_STAT_ST_MTIM_TV_NSEC 1
| #define HAVE_STRUCT_STAT_ST_BLKSIZE 1
| #define HAVE_UINTMAX_T 1
| #define HAVE_UNSIGNED_LONG_LONG 1
| #define HAVE_UNSIGNED_LONG_LONG_INT 1
| #define HAVE_LONG_LONG_INT 1
| #define HAVE_INTMAX_T 1
| #define HAVE_UINTMAX_T 1
| #define HAVE_DECL_SIZE_MAX 1
| #define HAVE_DECL_INT32_MAX 1
| #define HAVE_DECL_INT32_MIN 1
| #define HAVE_DECL_INT64_MAX 1
| #define HAVE_DECL_INT64_MIN 1
| #define HAVE_DECL_UINT64_MAX 1
| #define HAVE_DECL_UINT32_MAX 1
| #define HAVE_DECL_INTMAX_MAX 1
| #define HAVE_DECL_INTMAX_MIN 1
| #define HAVE_DECL_UINTMAX_MAX 1
| #define HAVE_DECL_SSIZE_MAX 1
| #define HAVE_EILSEQ 1
| #define HAVE_WCHAR_T 1
| #define SIZEOF_WCHAR_T 4
| #define SIZEOF_INT 4
| #define SIZEOF_LONG 4
| #define MAJOR_IN_SYSMACROS 1
| #define HAVE_FSEEKO 1
| #define LSTAT_FOLLOWS_SLASHED_SYMLINK 1
| #define HAVE_LSTAT_EMPTY_STRING_BUG 1
| #define HAVE_STAT_EMPTY_STRING_BUG 1
| #define HAVE_DECL_STRERROR_R 1
| #define HAVE_STRERROR_R 1
| #define STRERROR_R_CHAR_P 1
| #define HAVE_STRFTIME 1
| #define HAVE_VPRINTF 1
| #define HAVE_ARC4RANDOM_BUF 1
| #define HAVE_CHOWN 1
| #define HAVE_CHROOT 1
| #define HAVE_CTIME_R 1
| #define HAVE_FCHDIR 1
| #define HAVE_FCHMOD 1
| #define HAVE_FCHOWN 1
| #define HAVE_FCNTL 1
| #define HAVE_FDOPENDIR 1
| #define HAVE_FNMATCH 1
| #define HAVE_FORK 1
| #define HAVE_FSTAT 1
| #define HAVE_FSTATAT 1
| #define HAVE_FSTATFS 1
| #define HAVE_FSTATVFS 1
| #define HAVE_FTRUNCATE 1
| #define HAVE_FUTIMENS 1
| #define HAVE_FUTIMES 1
| #define HAVE_FUTIMESAT 1
| #define HAVE_GETEUID 1
| #define HAVE_GETLINE 1
| #define HAVE_GETPID 1
| #define HAVE_GETGRGID_R 1
| #define HAVE_GETGRNAM_R 1
| #define HAVE_GETPWNAM_R 1
| #define HAVE_GETPWUID_R 1
| #define HAVE_GMTIME_R 1
| #define HAVE_LCHMOD 1
| #define HAVE_LCHOWN 1
| #define HAVE_LINK 1
| #define HAVE_LINKAT 1
| #define HAVE_LOCALTIME_R 1
| #define HAVE_LSTAT 1
| #define HAVE_LUTIMES 1
| #define HAVE_MBRTOWC 1
| #define HAVE_MEMMOVE 1
| #define HAVE_MEMSET 1
| #define HAVE_MKDIR 1
| #define HAVE_MKFIFO 1
| #define HAVE_MKNOD 1
| #define HAVE_MKSTEMP 1
| #define HAVE_NL_LANGINFO 1
| #define HAVE_OPENAT 1
| #define HAVE_PIPE 1
| #define HAVE_POLL 1
| #define HAVE_POSIX_SPAWNP 1
| #define HAVE_READLINK 1
| #define HAVE_READLINKAT 1
| #define HAVE_SELECT 1
| #define HAVE_SETENV 1
| #define HAVE_SETLOCALE 1
| #define HAVE_SIGACTION 1
| #define HAVE_STATFS 1
| #define HAVE_STATVFS 1
| #define HAVE_STRCHR 1
| #define HAVE_STRDUP 1
| #define HAVE_STRERROR 1
| #define HAVE_STRNLEN 1
| #define HAVE_STRRCHR 1
| #define HAVE_SYMLINK 1
| #define HAVE_TIMEGM 1
| #define HAVE_TZSET 1
| #define HAVE_UNLINKAT 1
| #define HAVE_UNSETENV 1
| #define HAVE_UTIME 1
| #define HAVE_UTIMENSAT 1
| #define HAVE_UTIMES 1
| #define HAVE_VFORK 1
| #define HAVE_WCRTOMB 1
| #define HAVE_WCSCMP 1
| #define HAVE_WCSCPY 1
| #define HAVE_WCSLEN 1
| #define HAVE_WCTOMB 1
| #define HAVE_WMEMCMP 1
| #define HAVE_WMEMCPY 1
| #define HAVE_WMEMMOVE 1
| #define HAVE_READDIR_R 1
| #define HAVE_DIRFD 1
| #define HAVE_OPENSSL_EVP_H 1
| #define HAVE_LIBCRYPTO 1
| #define ARCHIVE_CRYPTO_MD5_OPENSSL 1
| #define ARCHIVE_CRYPTO_RMD160_OPENSSL 1
| #define ARCHIVE_CRYPTO_SHA1_OPENSSL 1
| #define ARCHIVE_CRYPTO_SHA256_OPENSSL 1
| #define ARCHIVE_CRYPTO_SHA384_OPENSSL 1
| #define ARCHIVE_CRYPTO_SHA512_OPENSSL 1
| #define HAVE_PKCS5_PBKDF2_HMAC_SHA1 1
| /* end confdefs.h.  */
| #include <stddef.h>
| #ifdef HAVE_STDIO_H
| # include <stdio.h>
| #endif
| #ifdef HAVE_STDLIB_H
| # include <stdlib.h>
| #endif
| #ifdef HAVE_STRING_H
| # include <string.h>
| #endif
| #ifdef HAVE_INTTYPES_H
| # include <inttypes.h>
| #endif
| #ifdef HAVE_STDINT_H
| # include <stdint.h>
| #endif
| #ifdef HAVE_STRINGS_H
| # include <strings.h>
| #endif
| #ifdef HAVE_SYS_TYPES_H
| # include <sys/types.h>
| #endif
| #ifdef HAVE_SYS_STAT_H
| # include <sys/stat.h>
| #endif
| #ifdef HAVE_UNISTD_H
| # include <unistd.h>
| #endif
| #include <md5.h>
configure:19557: result: no
configure:19563: checking for ripemd.h
configure:19563: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2  conftest.c >&5
conftest.c:257:10: fatal error: ripemd.h: No such file or directory
  257 | #include <ripemd.h>
      |          ^~~~~~~~~~
compilation terminated.
configure:19563: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "libarchive"
| #define PACKAGE_TARNAME "libarchive"
| #define PACKAGE_VERSION "3.7.2"
| #define PACKAGE_STRING "libarchive 3.7.2"
| #define PACKAGE_BUGREPORT "libarchive-discuss@googlegroups.com"
| #define PACKAGE_URL ""
| #define PACKAGE "libarchive"
| #define VERSION "3.7.2"
| #define __LIBARCHIVE_CONFIG_H_INCLUDED 1
| #define LIBARCHIVE_VERSION_STRING "3.7.2"
| #define LIBARCHIVE_VERSION_NUMBER "3007002"
| #define BSDCPIO_VERSION_STRING "3.7.2"
| #define BSDTAR_VERSION_STRING "3.7.2"
| #define BSDCAT_VERSION_STRING "3.7.2"
| #define BSDUNZIP_VERSION_STRING "3.7.2"
| #define HAVE_STDIO_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_SYS_TIME_H 1
| #define STDC_HEADERS 1
| #define _ALL_SOURCE 1
| #define _DARWIN_C_SOURCE 1
| #define _GNU_SOURCE 1
| #define _HPUX_ALT_XOPEN_SOCKET_API 1
| #define _NETBSD_SOURCE 1
| #define _OPENBSD_SOURCE 1
| #define _POSIX_PTHREAD_SEMANTICS 1
| #define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1
| #define __STDC_WANT_IEC_60559_BFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_DFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1
| #define __STDC_WANT_IEC_60559_TYPES_EXT__ 1
| #define __STDC_WANT_LIB_EXT2__ 1
| #define __STDC_WANT_MATH_SPEC_FUNCS__ 1
| #define _TANDEM_SOURCE 1
| #define __EXTENSIONS__ 1
| #define HAVE_DLFCN_H 1
| #define LT_OBJDIR ".libs/"
| #define HAVE_DIRENT_H 1
| #define HAVE_SYS_WAIT_H 1
| #define HAVE_CTYPE_H 1
| #define HAVE_ERRNO_H 1
| #define HAVE_FCNTL_H 1
| #define HAVE_FNMATCH_H 1
| #define HAVE_GRP_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_LANGINFO_H 1
| #define HAVE_LIMITS_H 1
| #define HAVE_LINUX_FIEMAP_H 1
| #define HAVE_LINUX_FS_H 1
| #define HAVE_LINUX_MAGIC_H 1
| #define HAVE_LINUX_TYPES_H 1
| #define HAVE_WORKING_FS_IOC_GETFLAGS 1
| #define HAVE_LOCALE_H 1
| #define HAVE_PATHS_H 1
| #define HAVE_POLL_H 1
| #define HAVE_PTHREAD_H 1
| #define HAVE_PWD_H 1
| #define HAVE_SIGNAL_H 1
| #define HAVE_SPAWN_H 1
| #define HAVE_STDARG_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_SYS_CDEFS_H 1
| #define HAVE_SYS_IOCTL_H 1
| #define HAVE_SYS_MOUNT_H 1
| #define HAVE_SYS_QUEUE_H 1
| #define HAVE_SYS_PARAM_H 1
| #define HAVE_SYS_POLL_H 1
| #define HAVE_SYS_SELECT_H 1
| #define HAVE_SYS_STATFS_H 1
| #define HAVE_SYS_STATVFS_H 1
| #define HAVE_SYS_SYSMACROS_H 1
| #define HAVE_SYS_TIME_H 1
| #define HAVE_SYS_UTSNAME_H 1
| #define HAVE_SYS_VFS_H 1
| #define HAVE_SYS_XATTR_H 1
| #define HAVE_TIME_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_UTIME_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_WCTYPE_H 1
| #define HAVE_ZLIB_H 1
| #define HAVE_LIBZ 1
| #define HAVE_ICONV 1
| #define ICONV_CONST 
| #define HAVE_ICONV_H 1
| #define HAVE_LZ4_H 1
| #define HAVE_LZ4HC_H 1
| #define HAVE_LIBLZ4 1
| #define HAVE_ZSTD_H 1
| #define HAVE_LIBZSTD 1
| #define HAVE_LIBZSTD_COMPRESSOR 1
| #define HAVE_LIBXML_XMLREADER_H 1
| #define HAVE_LIBXML_XMLWRITER_H 1
| #define HAVE_REGEX_H 1
| #define HAVE_STRUCT_TM_TM_GMTOFF 1
| #define HAVE_STRUCT_STAT_ST_MTIM_TV_NSEC 1
| #define HAVE_STRUCT_STAT_ST_BLKSIZE 1
| #define HAVE_UINTMAX_T 1
| #define HAVE_UNSIGNED_LONG_LONG 1
| #define HAVE_UNSIGNED_LONG_LONG_INT 1
| #define HAVE_LONG_LONG_INT 1
| #define HAVE_INTMAX_T 1
| #define HAVE_UINTMAX_T 1
| #define HAVE_DECL_SIZE_MAX 1
| #define HAVE_DECL_INT32_MAX 1
| #define HAVE_DECL_INT32_MIN 1
| #define HAVE_DECL_INT64_MAX 1
| #define HAVE_DECL_INT64_MIN 1
| #define HAVE_DECL_UINT64_MAX 1
| #define HAVE_DECL_UINT32_MAX 1
| #define HAVE_DECL_INTMAX_MAX 1
| #define HAVE_DECL_INTMAX_MIN 1
| #define HAVE_DECL_UINTMAX_MAX 1
| #define HAVE_DECL_SSIZE_MAX 1
| #define HAVE_EILSEQ 1
| #define HAVE_WCHAR_T 1
| #define SIZEOF_WCHAR_T 4
| #define SIZEOF_INT 4
| #define SIZEOF_LONG 4
| #define MAJOR_IN_SYSMACROS 1
| #define HAVE_FSEEKO 1
| #define LSTAT_FOLLOWS_SLASHED_SYMLINK 1
| #define HAVE_LSTAT_EMPTY_STRING_BUG 1
| #define HAVE_STAT_EMPTY_STRING_BUG 1
| #define HAVE_DECL_STRERROR_R 1
| #define HAVE_STRERROR_R 1
| #define STRERROR_R_CHAR_P 1
| #define HAVE_STRFTIME 1
| #define HAVE_VPRINTF 1
| #define HAVE_ARC4RANDOM_BUF 1
| #define HAVE_CHOWN 1
| #define HAVE_CHROOT 1
| #define HAVE_CTIME_R 1
| #define HAVE_FCHDIR 1
| #define HAVE_FCHMOD 1
| #define HAVE_FCHOWN 1
| #define HAVE_FCNTL 1
| #define HAVE_FDOPENDIR 1
| #define HAVE_FNMATCH 1
| #define HAVE_FORK 1
| #define HAVE_FSTAT 1
| #define HAVE_FSTATAT 1
| #define HAVE_FSTATFS 1
| #define HAVE_FSTATVFS 1
| #define HAVE_FTRUNCATE 1
| #define HAVE_FUTIMENS 1
| #define HAVE_FUTIMES 1
| #define HAVE_FUTIMESAT 1
| #define HAVE_GETEUID 1
| #define HAVE_GETLINE 1
| #define HAVE_GETPID 1
| #define HAVE_GETGRGID_R 1
| #define HAVE_GETGRNAM_R 1
| #define HAVE_GETPWNAM_R 1
| #define HAVE_GETPWUID_R 1
| #define HAVE_GMTIME_R 1
| #define HAVE_LCHMOD 1
| #define HAVE_LCHOWN 1
| #define HAVE_LINK 1
| #define HAVE_LINKAT 1
| #define HAVE_LOCALTIME_R 1
| #define HAVE_LSTAT 1
| #define HAVE_LUTIMES 1
| #define HAVE_MBRTOWC 1
| #define HAVE_MEMMOVE 1
| #define HAVE_MEMSET 1
| #define HAVE_MKDIR 1
| #define HAVE_MKFIFO 1
| #define HAVE_MKNOD 1
| #define HAVE_MKSTEMP 1
| #define HAVE_NL_LANGINFO 1
| #define HAVE_OPENAT 1
| #define HAVE_PIPE 1
| #define HAVE_POLL 1
| #define HAVE_POSIX_SPAWNP 1
| #define HAVE_READLINK 1
| #define HAVE_READLINKAT 1
| #define HAVE_SELECT 1
| #define HAVE_SETENV 1
| #define HAVE_SETLOCALE 1
| #define HAVE_SIGACTION 1
| #define HAVE_STATFS 1
| #define HAVE_STATVFS 1
| #define HAVE_STRCHR 1
| #define HAVE_STRDUP 1
| #define HAVE_STRERROR 1
| #define HAVE_STRNLEN 1
| #define HAVE_STRRCHR 1
| #define HAVE_SYMLINK 1
| #define HAVE_TIMEGM 1
| #define HAVE_TZSET 1
| #define HAVE_UNLINKAT 1
| #define HAVE_UNSETENV 1
| #define HAVE_UTIME 1
| #define HAVE_UTIMENSAT 1
| #define HAVE_UTIMES 1
| #define HAVE_VFORK 1
| #define HAVE_WCRTOMB 1
| #define HAVE_WCSCMP 1
| #define HAVE_WCSCPY 1
| #define HAVE_WCSLEN 1
| #define HAVE_WCTOMB 1
| #define HAVE_WMEMCMP 1
| #define HAVE_WMEMCPY 1
| #define HAVE_WMEMMOVE 1
| #define HAVE_READDIR_R 1
| #define HAVE_DIRFD 1
| #define HAVE_OPENSSL_EVP_H 1
| #define HAVE_LIBCRYPTO 1
| #define ARCHIVE_CRYPTO_MD5_OPENSSL 1
| #define ARCHIVE_CRYPTO_RMD160_OPENSSL 1
| #define ARCHIVE_CRYPTO_SHA1_OPENSSL 1
| #define ARCHIVE_CRYPTO_SHA256_OPENSSL 1
| #define ARCHIVE_CRYPTO_SHA384_OPENSSL 1
| #define ARCHIVE_CRYPTO_SHA512_OPENSSL 1
| #define HAVE_PKCS5_PBKDF2_HMAC_SHA1 1
| /* end confdefs.h.  */
| #include <stddef.h>
| #ifdef HAVE_STDIO_H
| # include <stdio.h>
| #endif
| #ifdef HAVE_STDLIB_H
| # include <stdlib.h>
| #endif
| #ifdef HAVE_STRING_H
| # include <string.h>
| #endif
| #ifdef HAVE_INTTYPES_H
| # include <inttypes.h>
| #endif
| #ifdef HAVE_STDINT_H
| # include <stdint.h>
| #endif
| #ifdef HAVE_STRINGS_H
| # include <strings.h>
| #endif
| #ifdef HAVE_SYS_TYPES_H
| # include <sys/types.h>
| #endif
| #ifdef HAVE_SYS_STAT_H
| # include <sys/stat.h>
| #endif
| #ifdef HAVE_UNISTD_H
| # include <unistd.h>
| #endif
| #include <ripemd.h>
configure:19563: result: no
configure:19569: checking for sha.h
configure:19569: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2  conftest.c >&5
conftest.c:257:10: fatal error: sha.h: No such file or directory
  257 | #include <sha.h>
      |          ^~~~~~~
compilation terminated.
configure:19569: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "libarchive"
| #define PACKAGE_TARNAME "libarchive"
| #define PACKAGE_VERSION "3.7.2"
| #define PACKAGE_STRING "libarchive 3.7.2"
| #define PACKAGE_BUGREPORT "libarchive-discuss@googlegroups.com"
| #define PACKAGE_URL ""
| #define PACKAGE "libarchive"
| #define VERSION "3.7.2"
| #define __LIBARCHIVE_CONFIG_H_INCLUDED 1
| #define LIBARCHIVE_VERSION_STRING "3.7.2"
| #define LIBARCHIVE_VERSION_NUMBER "3007002"
| #define BSDCPIO_VERSION_STRING "3.7.2"
| #define BSDTAR_VERSION_STRING "3.7.2"
| #define BSDCAT_VERSION_STRING "3.7.2"
| #define BSDUNZIP_VERSION_STRING "3.7.2"
| #define HAVE_STDIO_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_SYS_TIME_H 1
| #define STDC_HEADERS 1
| #define _ALL_SOURCE 1
| #define _DARWIN_C_SOURCE 1
| #define _GNU_SOURCE 1
| #define _HPUX_ALT_XOPEN_SOCKET_API 1
| #define _NETBSD_SOURCE 1
| #define _OPENBSD_SOURCE 1
| #define _POSIX_PTHREAD_SEMANTICS 1
| #define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1
| #define __STDC_WANT_IEC_60559_BFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_DFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1
| #define __STDC_WANT_IEC_60559_TYPES_EXT__ 1
| #define __STDC_WANT_LIB_EXT2__ 1
| #define __STDC_WANT_MATH_SPEC_FUNCS__ 1
| #define _TANDEM_SOURCE 1
| #define __EXTENSIONS__ 1
| #define HAVE_DLFCN_H 1
| #define LT_OBJDIR ".libs/"
| #define HAVE_DIRENT_H 1
| #define HAVE_SYS_WAIT_H 1
| #define HAVE_CTYPE_H 1
| #define HAVE_ERRNO_H 1
| #define HAVE_FCNTL_H 1
| #define HAVE_FNMATCH_H 1
| #define HAVE_GRP_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_LANGINFO_H 1
| #define HAVE_LIMITS_H 1
| #define HAVE_LINUX_FIEMAP_H 1
| #define HAVE_LINUX_FS_H 1
| #define HAVE_LINUX_MAGIC_H 1
| #define HAVE_LINUX_TYPES_H 1
| #define HAVE_WORKING_FS_IOC_GETFLAGS 1
| #define HAVE_LOCALE_H 1
| #define HAVE_PATHS_H 1
| #define HAVE_POLL_H 1
| #define HAVE_PTHREAD_H 1
| #define HAVE_PWD_H 1
| #define HAVE_SIGNAL_H 1
| #define HAVE_SPAWN_H 1
| #define HAVE_STDARG_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_SYS_CDEFS_H 1
| #define HAVE_SYS_IOCTL_H 1
| #define HAVE_SYS_MOUNT_H 1
| #define HAVE_SYS_QUEUE_H 1
| #define HAVE_SYS_PARAM_H 1
| #define HAVE_SYS_POLL_H 1
| #define HAVE_SYS_SELECT_H 1
| #define HAVE_SYS_STATFS_H 1
| #define HAVE_SYS_STATVFS_H 1
| #define HAVE_SYS_SYSMACROS_H 1
| #define HAVE_SYS_TIME_H 1
| #define HAVE_SYS_UTSNAME_H 1
| #define HAVE_SYS_VFS_H 1
| #define HAVE_SYS_XATTR_H 1
| #define HAVE_TIME_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_UTIME_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_WCTYPE_H 1
| #define HAVE_ZLIB_H 1
| #define HAVE_LIBZ 1
| #define HAVE_ICONV 1
| #define ICONV_CONST 
| #define HAVE_ICONV_H 1
| #define HAVE_LZ4_H 1
| #define HAVE_LZ4HC_H 1
| #define HAVE_LIBLZ4 1
| #define HAVE_ZSTD_H 1
| #define HAVE_LIBZSTD 1
| #define HAVE_LIBZSTD_COMPRESSOR 1
| #define HAVE_LIBXML_XMLREADER_H 1
| #define HAVE_LIBXML_XMLWRITER_H 1
| #define HAVE_REGEX_H 1
| #define HAVE_STRUCT_TM_TM_GMTOFF 1
| #define HAVE_STRUCT_STAT_ST_MTIM_TV_NSEC 1
| #define HAVE_STRUCT_STAT_ST_BLKSIZE 1
| #define HAVE_UINTMAX_T 1
| #define HAVE_UNSIGNED_LONG_LONG 1
| #define HAVE_UNSIGNED_LONG_LONG_INT 1
| #define HAVE_LONG_LONG_INT 1
| #define HAVE_INTMAX_T 1
| #define HAVE_UINTMAX_T 1
| #define HAVE_DECL_SIZE_MAX 1
| #define HAVE_DECL_INT32_MAX 1
| #define HAVE_DECL_INT32_MIN 1
| #define HAVE_DECL_INT64_MAX 1
| #define HAVE_DECL_INT64_MIN 1
| #define HAVE_DECL_UINT64_MAX 1
| #define HAVE_DECL_UINT32_MAX 1
| #define HAVE_DECL_INTMAX_MAX 1
| #define HAVE_DECL_INTMAX_MIN 1
| #define HAVE_DECL_UINTMAX_MAX 1
| #define HAVE_DECL_SSIZE_MAX 1
| #define HAVE_EILSEQ 1
| #define HAVE_WCHAR_T 1
| #define SIZEOF_WCHAR_T 4
| #define SIZEOF_INT 4
| #define SIZEOF_LONG 4
| #define MAJOR_IN_SYSMACROS 1
| #define HAVE_FSEEKO 1
| #define LSTAT_FOLLOWS_SLASHED_SYMLINK 1
| #define HAVE_LSTAT_EMPTY_STRING_BUG 1
| #define HAVE_STAT_EMPTY_STRING_BUG 1
| #define HAVE_DECL_STRERROR_R 1
| #define HAVE_STRERROR_R 1
| #define STRERROR_R_CHAR_P 1
| #define HAVE_STRFTIME 1
| #define HAVE_VPRINTF 1
| #define HAVE_ARC4RANDOM_BUF 1
| #define HAVE_CHOWN 1
| #define HAVE_CHROOT 1
| #define HAVE_CTIME_R 1
| #define HAVE_FCHDIR 1
| #define HAVE_FCHMOD 1
| #define HAVE_FCHOWN 1
| #define HAVE_FCNTL 1
| #define HAVE_FDOPENDIR 1
| #define HAVE_FNMATCH 1
| #define HAVE_FORK 1
| #define HAVE_FSTAT 1
| #define HAVE_FSTATAT 1
| #define HAVE_FSTATFS 1
| #define HAVE_FSTATVFS 1
| #define HAVE_FTRUNCATE 1
| #define HAVE_FUTIMENS 1
| #define HAVE_FUTIMES 1
| #define HAVE_FUTIMESAT 1
| #define HAVE_GETEUID 1
| #define HAVE_GETLINE 1
| #define HAVE_GETPID 1
| #define HAVE_GETGRGID_R 1
| #define HAVE_GETGRNAM_R 1
| #define HAVE_GETPWNAM_R 1
| #define HAVE_GETPWUID_R 1
| #define HAVE_GMTIME_R 1
| #define HAVE_LCHMOD 1
| #define HAVE_LCHOWN 1
| #define HAVE_LINK 1
| #define HAVE_LINKAT 1
| #define HAVE_LOCALTIME_R 1
| #define HAVE_LSTAT 1
| #define HAVE_LUTIMES 1
| #define HAVE_MBRTOWC 1
| #define HAVE_MEMMOVE 1
| #define HAVE_MEMSET 1
| #define HAVE_MKDIR 1
| #define HAVE_MKFIFO 1
| #define HAVE_MKNOD 1
| #define HAVE_MKSTEMP 1
| #define HAVE_NL_LANGINFO 1
| #define HAVE_OPENAT 1
| #define HAVE_PIPE 1
| #define HAVE_POLL 1
| #define HAVE_POSIX_SPAWNP 1
| #define HAVE_READLINK 1
| #define HAVE_READLINKAT 1
| #define HAVE_SELECT 1
| #define HAVE_SETENV 1
| #define HAVE_SETLOCALE 1
| #define HAVE_SIGACTION 1
| #define HAVE_STATFS 1
| #define HAVE_STATVFS 1
| #define HAVE_STRCHR 1
| #define HAVE_STRDUP 1
| #define HAVE_STRERROR 1
| #define HAVE_STRNLEN 1
| #define HAVE_STRRCHR 1
| #define HAVE_SYMLINK 1
| #define HAVE_TIMEGM 1
| #define HAVE_TZSET 1
| #define HAVE_UNLINKAT 1
| #define HAVE_UNSETENV 1
| #define HAVE_UTIME 1
| #define HAVE_UTIMENSAT 1
| #define HAVE_UTIMES 1
| #define HAVE_VFORK 1
| #define HAVE_WCRTOMB 1
| #define HAVE_WCSCMP 1
| #define HAVE_WCSCPY 1
| #define HAVE_WCSLEN 1
| #define HAVE_WCTOMB 1
| #define HAVE_WMEMCMP 1
| #define HAVE_WMEMCPY 1
| #define HAVE_WMEMMOVE 1
| #define HAVE_READDIR_R 1
| #define HAVE_DIRFD 1
| #define HAVE_OPENSSL_EVP_H 1
| #define HAVE_LIBCRYPTO 1
| #define ARCHIVE_CRYPTO_MD5_OPENSSL 1
| #define ARCHIVE_CRYPTO_RMD160_OPENSSL 1
| #define ARCHIVE_CRYPTO_SHA1_OPENSSL 1
| #define ARCHIVE_CRYPTO_SHA256_OPENSSL 1
| #define ARCHIVE_CRYPTO_SHA384_OPENSSL 1
| #define ARCHIVE_CRYPTO_SHA512_OPENSSL 1
| #define HAVE_PKCS5_PBKDF2_HMAC_SHA1 1
| /* end confdefs.h.  */
| #include <stddef.h>
| #ifdef HAVE_STDIO_H
| # include <stdio.h>
| #endif
| #ifdef HAVE_STDLIB_H
| # include <stdlib.h>
| #endif
| #ifdef HAVE_STRING_H
| # include <string.h>
| #endif
| #ifdef HAVE_INTTYPES_H
| # include <inttypes.h>
| #endif
| #ifdef HAVE_STDINT_H
| # include <stdint.h>
| #endif
| #ifdef HAVE_STRINGS_H
| # include <strings.h>
| #endif
| #ifdef HAVE_SYS_TYPES_H
| # include <sys/types.h>
| #endif
| #ifdef HAVE_SYS_STAT_H
| # include <sys/stat.h>
| #endif
| #ifdef HAVE_UNISTD_H
| # include <unistd.h>
| #endif
| #include <sha.h>
configure:19569: result: no
configure:19575: checking for sha256.h
configure:19575: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2  conftest.c >&5
conftest.c:257:10: fatal error: sha256.h: No such file or directory
  257 | #include <sha256.h>
      |          ^~~~~~~~~~
compilation terminated.
configure:19575: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "libarchive"
| #define PACKAGE_TARNAME "libarchive"
| #define PACKAGE_VERSION "3.7.2"
| #define PACKAGE_STRING "libarchive 3.7.2"
| #define PACKAGE_BUGREPORT "libarchive-discuss@googlegroups.com"
| #define PACKAGE_URL ""
| #define PACKAGE "libarchive"
| #define VERSION "3.7.2"
| #define __LIBARCHIVE_CONFIG_H_INCLUDED 1
| #define LIBARCHIVE_VERSION_STRING "3.7.2"
| #define LIBARCHIVE_VERSION_NUMBER "3007002"
| #define BSDCPIO_VERSION_STRING "3.7.2"
| #define BSDTAR_VERSION_STRING "3.7.2"
| #define BSDCAT_VERSION_STRING "3.7.2"
| #define BSDUNZIP_VERSION_STRING "3.7.2"
| #define HAVE_STDIO_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_SYS_TIME_H 1
| #define STDC_HEADERS 1
| #define _ALL_SOURCE 1
| #define _DARWIN_C_SOURCE 1
| #define _GNU_SOURCE 1
| #define _HPUX_ALT_XOPEN_SOCKET_API 1
| #define _NETBSD_SOURCE 1
| #define _OPENBSD_SOURCE 1
| #define _POSIX_PTHREAD_SEMANTICS 1
| #define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1
| #define __STDC_WANT_IEC_60559_BFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_DFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1
| #define __STDC_WANT_IEC_60559_TYPES_EXT__ 1
| #define __STDC_WANT_LIB_EXT2__ 1
| #define __STDC_WANT_MATH_SPEC_FUNCS__ 1
| #define _TANDEM_SOURCE 1
| #define __EXTENSIONS__ 1
| #define HAVE_DLFCN_H 1
| #define LT_OBJDIR ".libs/"
| #define HAVE_DIRENT_H 1
| #define HAVE_SYS_WAIT_H 1
| #define HAVE_CTYPE_H 1
| #define HAVE_ERRNO_H 1
| #define HAVE_FCNTL_H 1
| #define HAVE_FNMATCH_H 1
| #define HAVE_GRP_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_LANGINFO_H 1
| #define HAVE_LIMITS_H 1
| #define HAVE_LINUX_FIEMAP_H 1
| #define HAVE_LINUX_FS_H 1
| #define HAVE_LINUX_MAGIC_H 1
| #define HAVE_LINUX_TYPES_H 1
| #define HAVE_WORKING_FS_IOC_GETFLAGS 1
| #define HAVE_LOCALE_H 1
| #define HAVE_PATHS_H 1
| #define HAVE_POLL_H 1
| #define HAVE_PTHREAD_H 1
| #define HAVE_PWD_H 1
| #define HAVE_SIGNAL_H 1
| #define HAVE_SPAWN_H 1
| #define HAVE_STDARG_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_SYS_CDEFS_H 1
| #define HAVE_SYS_IOCTL_H 1
| #define HAVE_SYS_MOUNT_H 1
| #define HAVE_SYS_QUEUE_H 1
| #define HAVE_SYS_PARAM_H 1
| #define HAVE_SYS_POLL_H 1
| #define HAVE_SYS_SELECT_H 1
| #define HAVE_SYS_STATFS_H 1
| #define HAVE_SYS_STATVFS_H 1
| #define HAVE_SYS_SYSMACROS_H 1
| #define HAVE_SYS_TIME_H 1
| #define HAVE_SYS_UTSNAME_H 1
| #define HAVE_SYS_VFS_H 1
| #define HAVE_SYS_XATTR_H 1
| #define HAVE_TIME_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_UTIME_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_WCTYPE_H 1
| #define HAVE_ZLIB_H 1
| #define HAVE_LIBZ 1
| #define HAVE_ICONV 1
| #define ICONV_CONST 
| #define HAVE_ICONV_H 1
| #define HAVE_LZ4_H 1
| #define HAVE_LZ4HC_H 1
| #define HAVE_LIBLZ4 1
| #define HAVE_ZSTD_H 1
| #define HAVE_LIBZSTD 1
| #define HAVE_LIBZSTD_COMPRESSOR 1
| #define HAVE_LIBXML_XMLREADER_H 1
| #define HAVE_LIBXML_XMLWRITER_H 1
| #define HAVE_REGEX_H 1
| #define HAVE_STRUCT_TM_TM_GMTOFF 1
| #define HAVE_STRUCT_STAT_ST_MTIM_TV_NSEC 1
| #define HAVE_STRUCT_STAT_ST_BLKSIZE 1
| #define HAVE_UINTMAX_T 1
| #define HAVE_UNSIGNED_LONG_LONG 1
| #define HAVE_UNSIGNED_LONG_LONG_INT 1
| #define HAVE_LONG_LONG_INT 1
| #define HAVE_INTMAX_T 1
| #define HAVE_UINTMAX_T 1
| #define HAVE_DECL_SIZE_MAX 1
| #define HAVE_DECL_INT32_MAX 1
| #define HAVE_DECL_INT32_MIN 1
| #define HAVE_DECL_INT64_MAX 1
| #define HAVE_DECL_INT64_MIN 1
| #define HAVE_DECL_UINT64_MAX 1
| #define HAVE_DECL_UINT32_MAX 1
| #define HAVE_DECL_INTMAX_MAX 1
| #define HAVE_DECL_INTMAX_MIN 1
| #define HAVE_DECL_UINTMAX_MAX 1
| #define HAVE_DECL_SSIZE_MAX 1
| #define HAVE_EILSEQ 1
| #define HAVE_WCHAR_T 1
| #define SIZEOF_WCHAR_T 4
| #define SIZEOF_INT 4
| #define SIZEOF_LONG 4
| #define MAJOR_IN_SYSMACROS 1
| #define HAVE_FSEEKO 1
| #define LSTAT_FOLLOWS_SLASHED_SYMLINK 1
| #define HAVE_LSTAT_EMPTY_STRING_BUG 1
| #define HAVE_STAT_EMPTY_STRING_BUG 1
| #define HAVE_DECL_STRERROR_R 1
| #define HAVE_STRERROR_R 1
| #define STRERROR_R_CHAR_P 1
| #define HAVE_STRFTIME 1
| #define HAVE_VPRINTF 1
| #define HAVE_ARC4RANDOM_BUF 1
| #define HAVE_CHOWN 1
| #define HAVE_CHROOT 1
| #define HAVE_CTIME_R 1
| #define HAVE_FCHDIR 1
| #define HAVE_FCHMOD 1
| #define HAVE_FCHOWN 1
| #define HAVE_FCNTL 1
| #define HAVE_FDOPENDIR 1
| #define HAVE_FNMATCH 1
| #define HAVE_FORK 1
| #define HAVE_FSTAT 1
| #define HAVE_FSTATAT 1
| #define HAVE_FSTATFS 1
| #define HAVE_FSTATVFS 1
| #define HAVE_FTRUNCATE 1
| #define HAVE_FUTIMENS 1
| #define HAVE_FUTIMES 1
| #define HAVE_FUTIMESAT 1
| #define HAVE_GETEUID 1
| #define HAVE_GETLINE 1
| #define HAVE_GETPID 1
| #define HAVE_GETGRGID_R 1
| #define HAVE_GETGRNAM_R 1
| #define HAVE_GETPWNAM_R 1
| #define HAVE_GETPWUID_R 1
| #define HAVE_GMTIME_R 1
| #define HAVE_LCHMOD 1
| #define HAVE_LCHOWN 1
| #define HAVE_LINK 1
| #define HAVE_LINKAT 1
| #define HAVE_LOCALTIME_R 1
| #define HAVE_LSTAT 1
| #define HAVE_LUTIMES 1
| #define HAVE_MBRTOWC 1
| #define HAVE_MEMMOVE 1
| #define HAVE_MEMSET 1
| #define HAVE_MKDIR 1
| #define HAVE_MKFIFO 1
| #define HAVE_MKNOD 1
| #define HAVE_MKSTEMP 1
| #define HAVE_NL_LANGINFO 1
| #define HAVE_OPENAT 1
| #define HAVE_PIPE 1
| #define HAVE_POLL 1
| #define HAVE_POSIX_SPAWNP 1
| #define HAVE_READLINK 1
| #define HAVE_READLINKAT 1
| #define HAVE_SELECT 1
| #define HAVE_SETENV 1
| #define HAVE_SETLOCALE 1
| #define HAVE_SIGACTION 1
| #define HAVE_STATFS 1
| #define HAVE_STATVFS 1
| #define HAVE_STRCHR 1
| #define HAVE_STRDUP 1
| #define HAVE_STRERROR 1
| #define HAVE_STRNLEN 1
| #define HAVE_STRRCHR 1
| #define HAVE_SYMLINK 1
| #define HAVE_TIMEGM 1
| #define HAVE_TZSET 1
| #define HAVE_UNLINKAT 1
| #define HAVE_UNSETENV 1
| #define HAVE_UTIME 1
| #define HAVE_UTIMENSAT 1
| #define HAVE_UTIMES 1
| #define HAVE_VFORK 1
| #define HAVE_WCRTOMB 1
| #define HAVE_WCSCMP 1
| #define HAVE_WCSCPY 1
| #define HAVE_WCSLEN 1
| #define HAVE_WCTOMB 1
| #define HAVE_WMEMCMP 1
| #define HAVE_WMEMCPY 1
| #define HAVE_WMEMMOVE 1
| #define HAVE_READDIR_R 1
| #define HAVE_DIRFD 1
| #define HAVE_OPENSSL_EVP_H 1
| #define HAVE_LIBCRYPTO 1
| #define ARCHIVE_CRYPTO_MD5_OPENSSL 1
| #define ARCHIVE_CRYPTO_RMD160_OPENSSL 1
| #define ARCHIVE_CRYPTO_SHA1_OPENSSL 1
| #define ARCHIVE_CRYPTO_SHA256_OPENSSL 1
| #define ARCHIVE_CRYPTO_SHA384_OPENSSL 1
| #define ARCHIVE_CRYPTO_SHA512_OPENSSL 1
| #define HAVE_PKCS5_PBKDF2_HMAC_SHA1 1
| /* end confdefs.h.  */
| #include <stddef.h>
| #ifdef HAVE_STDIO_H
| # include <stdio.h>
| #endif
| #ifdef HAVE_STDLIB_H
| # include <stdlib.h>
| #endif
| #ifdef HAVE_STRING_H
| # include <string.h>
| #endif
| #ifdef HAVE_INTTYPES_H
| # include <inttypes.h>
| #endif
| #ifdef HAVE_STDINT_H
| # include <stdint.h>
| #endif
| #ifdef HAVE_STRINGS_H
| # include <strings.h>
| #endif
| #ifdef HAVE_SYS_TYPES_H
| # include <sys/types.h>
| #endif
| #ifdef HAVE_SYS_STAT_H
| # include <sys/stat.h>
| #endif
| #ifdef HAVE_UNISTD_H
| # include <unistd.h>
| #endif
| #include <sha256.h>
configure:19575: result: no
configure:19581: checking for sha512.h
configure:19581: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2  conftest.c >&5
conftest.c:257:10: fatal error: sha512.h: No such file or directory
  257 | #include <sha512.h>
      |          ^~~~~~~~~~
compilation terminated.
configure:19581: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "libarchive"
| #define PACKAGE_TARNAME "libarchive"
| #define PACKAGE_VERSION "3.7.2"
| #define PACKAGE_STRING "libarchive 3.7.2"
| #define PACKAGE_BUGREPORT "libarchive-discuss@googlegroups.com"
| #define PACKAGE_URL ""
| #define PACKAGE "libarchive"
| #define VERSION "3.7.2"
| #define __LIBARCHIVE_CONFIG_H_INCLUDED 1
| #define LIBARCHIVE_VERSION_STRING "3.7.2"
| #define LIBARCHIVE_VERSION_NUMBER "3007002"
| #define BSDCPIO_VERSION_STRING "3.7.2"
| #define BSDTAR_VERSION_STRING "3.7.2"
| #define BSDCAT_VERSION_STRING "3.7.2"
| #define BSDUNZIP_VERSION_STRING "3.7.2"
| #define HAVE_STDIO_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_SYS_TIME_H 1
| #define STDC_HEADERS 1
| #define _ALL_SOURCE 1
| #define _DARWIN_C_SOURCE 1
| #define _GNU_SOURCE 1
| #define _HPUX_ALT_XOPEN_SOCKET_API 1
| #define _NETBSD_SOURCE 1
| #define _OPENBSD_SOURCE 1
| #define _POSIX_PTHREAD_SEMANTICS 1
| #define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1
| #define __STDC_WANT_IEC_60559_BFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_DFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1
| #define __STDC_WANT_IEC_60559_TYPES_EXT__ 1
| #define __STDC_WANT_LIB_EXT2__ 1
| #define __STDC_WANT_MATH_SPEC_FUNCS__ 1
| #define _TANDEM_SOURCE 1
| #define __EXTENSIONS__ 1
| #define HAVE_DLFCN_H 1
| #define LT_OBJDIR ".libs/"
| #define HAVE_DIRENT_H 1
| #define HAVE_SYS_WAIT_H 1
| #define HAVE_CTYPE_H 1
| #define HAVE_ERRNO_H 1
| #define HAVE_FCNTL_H 1
| #define HAVE_FNMATCH_H 1
| #define HAVE_GRP_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_LANGINFO_H 1
| #define HAVE_LIMITS_H 1
| #define HAVE_LINUX_FIEMAP_H 1
| #define HAVE_LINUX_FS_H 1
| #define HAVE_LINUX_MAGIC_H 1
| #define HAVE_LINUX_TYPES_H 1
| #define HAVE_WORKING_FS_IOC_GETFLAGS 1
| #define HAVE_LOCALE_H 1
| #define HAVE_PATHS_H 1
| #define HAVE_POLL_H 1
| #define HAVE_PTHREAD_H 1
| #define HAVE_PWD_H 1
| #define HAVE_SIGNAL_H 1
| #define HAVE_SPAWN_H 1
| #define HAVE_STDARG_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_SYS_CDEFS_H 1
| #define HAVE_SYS_IOCTL_H 1
| #define HAVE_SYS_MOUNT_H 1
| #define HAVE_SYS_QUEUE_H 1
| #define HAVE_SYS_PARAM_H 1
| #define HAVE_SYS_POLL_H 1
| #define HAVE_SYS_SELECT_H 1
| #define HAVE_SYS_STATFS_H 1
| #define HAVE_SYS_STATVFS_H 1
| #define HAVE_SYS_SYSMACROS_H 1
| #define HAVE_SYS_TIME_H 1
| #define HAVE_SYS_UTSNAME_H 1
| #define HAVE_SYS_VFS_H 1
| #define HAVE_SYS_XATTR_H 1
| #define HAVE_TIME_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_UTIME_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_WCTYPE_H 1
| #define HAVE_ZLIB_H 1
| #define HAVE_LIBZ 1
| #define HAVE_ICONV 1
| #define ICONV_CONST 
| #define HAVE_ICONV_H 1
| #define HAVE_LZ4_H 1
| #define HAVE_LZ4HC_H 1
| #define HAVE_LIBLZ4 1
| #define HAVE_ZSTD_H 1
| #define HAVE_LIBZSTD 1
| #define HAVE_LIBZSTD_COMPRESSOR 1
| #define HAVE_LIBXML_XMLREADER_H 1
| #define HAVE_LIBXML_XMLWRITER_H 1
| #define HAVE_REGEX_H 1
| #define HAVE_STRUCT_TM_TM_GMTOFF 1
| #define HAVE_STRUCT_STAT_ST_MTIM_TV_NSEC 1
| #define HAVE_STRUCT_STAT_ST_BLKSIZE 1
| #define HAVE_UINTMAX_T 1
| #define HAVE_UNSIGNED_LONG_LONG 1
| #define HAVE_UNSIGNED_LONG_LONG_INT 1
| #define HAVE_LONG_LONG_INT 1
| #define HAVE_INTMAX_T 1
| #define HAVE_UINTMAX_T 1
| #define HAVE_DECL_SIZE_MAX 1
| #define HAVE_DECL_INT32_MAX 1
| #define HAVE_DECL_INT32_MIN 1
| #define HAVE_DECL_INT64_MAX 1
| #define HAVE_DECL_INT64_MIN 1
| #define HAVE_DECL_UINT64_MAX 1
| #define HAVE_DECL_UINT32_MAX 1
| #define HAVE_DECL_INTMAX_MAX 1
| #define HAVE_DECL_INTMAX_MIN 1
| #define HAVE_DECL_UINTMAX_MAX 1
| #define HAVE_DECL_SSIZE_MAX 1
| #define HAVE_EILSEQ 1
| #define HAVE_WCHAR_T 1
| #define SIZEOF_WCHAR_T 4
| #define SIZEOF_INT 4
| #define SIZEOF_LONG 4
| #define MAJOR_IN_SYSMACROS 1
| #define HAVE_FSEEKO 1
| #define LSTAT_FOLLOWS_SLASHED_SYMLINK 1
| #define HAVE_LSTAT_EMPTY_STRING_BUG 1
| #define HAVE_STAT_EMPTY_STRING_BUG 1
| #define HAVE_DECL_STRERROR_R 1
| #define HAVE_STRERROR_R 1
| #define STRERROR_R_CHAR_P 1
| #define HAVE_STRFTIME 1
| #define HAVE_VPRINTF 1
| #define HAVE_ARC4RANDOM_BUF 1
| #define HAVE_CHOWN 1
| #define HAVE_CHROOT 1
| #define HAVE_CTIME_R 1
| #define HAVE_FCHDIR 1
| #define HAVE_FCHMOD 1
| #define HAVE_FCHOWN 1
| #define HAVE_FCNTL 1
| #define HAVE_FDOPENDIR 1
| #define HAVE_FNMATCH 1
| #define HAVE_FORK 1
| #define HAVE_FSTAT 1
| #define HAVE_FSTATAT 1
| #define HAVE_FSTATFS 1
| #define HAVE_FSTATVFS 1
| #define HAVE_FTRUNCATE 1
| #define HAVE_FUTIMENS 1
| #define HAVE_FUTIMES 1
| #define HAVE_FUTIMESAT 1
| #define HAVE_GETEUID 1
| #define HAVE_GETLINE 1
| #define HAVE_GETPID 1
| #define HAVE_GETGRGID_R 1
| #define HAVE_GETGRNAM_R 1
| #define HAVE_GETPWNAM_R 1
| #define HAVE_GETPWUID_R 1
| #define HAVE_GMTIME_R 1
| #define HAVE_LCHMOD 1
| #define HAVE_LCHOWN 1
| #define HAVE_LINK 1
| #define HAVE_LINKAT 1
| #define HAVE_LOCALTIME_R 1
| #define HAVE_LSTAT 1
| #define HAVE_LUTIMES 1
| #define HAVE_MBRTOWC 1
| #define HAVE_MEMMOVE 1
| #define HAVE_MEMSET 1
| #define HAVE_MKDIR 1
| #define HAVE_MKFIFO 1
| #define HAVE_MKNOD 1
| #define HAVE_MKSTEMP 1
| #define HAVE_NL_LANGINFO 1
| #define HAVE_OPENAT 1
| #define HAVE_PIPE 1
| #define HAVE_POLL 1
| #define HAVE_POSIX_SPAWNP 1
| #define HAVE_READLINK 1
| #define HAVE_READLINKAT 1
| #define HAVE_SELECT 1
| #define HAVE_SETENV 1
| #define HAVE_SETLOCALE 1
| #define HAVE_SIGACTION 1
| #define HAVE_STATFS 1
| #define HAVE_STATVFS 1
| #define HAVE_STRCHR 1
| #define HAVE_STRDUP 1
| #define HAVE_STRERROR 1
| #define HAVE_STRNLEN 1
| #define HAVE_STRRCHR 1
| #define HAVE_SYMLINK 1
| #define HAVE_TIMEGM 1
| #define HAVE_TZSET 1
| #define HAVE_UNLINKAT 1
| #define HAVE_UNSETENV 1
| #define HAVE_UTIME 1
| #define HAVE_UTIMENSAT 1
| #define HAVE_UTIMES 1
| #define HAVE_VFORK 1
| #define HAVE_WCRTOMB 1
| #define HAVE_WCSCMP 1
| #define HAVE_WCSCPY 1
| #define HAVE_WCSLEN 1
| #define HAVE_WCTOMB 1
| #define HAVE_WMEMCMP 1
| #define HAVE_WMEMCPY 1
| #define HAVE_WMEMMOVE 1
| #define HAVE_READDIR_R 1
| #define HAVE_DIRFD 1
| #define HAVE_OPENSSL_EVP_H 1
| #define HAVE_LIBCRYPTO 1
| #define ARCHIVE_CRYPTO_MD5_OPENSSL 1
| #define ARCHIVE_CRYPTO_RMD160_OPENSSL 1
| #define ARCHIVE_CRYPTO_SHA1_OPENSSL 1
| #define ARCHIVE_CRYPTO_SHA256_OPENSSL 1
| #define ARCHIVE_CRYPTO_SHA384_OPENSSL 1
| #define ARCHIVE_CRYPTO_SHA512_OPENSSL 1
| #define HAVE_PKCS5_PBKDF2_HMAC_SHA1 1
| /* end confdefs.h.  */
| #include <stddef.h>
| #ifdef HAVE_STDIO_H
| # include <stdio.h>
| #endif
| #ifdef HAVE_STDLIB_H
| # include <stdlib.h>
| #endif
| #ifdef HAVE_STRING_H
| # include <string.h>
| #endif
| #ifdef HAVE_INTTYPES_H
| # include <inttypes.h>
| #endif
| #ifdef HAVE_STDINT_H
| # include <stdint.h>
| #endif
| #ifdef HAVE_STRINGS_H
| # include <strings.h>
| #endif
| #ifdef HAVE_SYS_TYPES_H
| # include <sys/types.h>
| #endif
| #ifdef HAVE_SYS_STAT_H
| # include <sys/stat.h>
| #endif
| #ifdef HAVE_UNISTD_H
| # include <unistd.h>
| #endif
| #include <sha512.h>
configure:19581: result: no
configure:19589: checking for MD5Init in -lmd
configure:19612: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -o conftest -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2   conftest.c -lmd  -lcrypto -lzstd -llz4 -lz  -L/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/lib -lxml2  >&5
/home/thomas/autobuild/instance-1/output-1/host/lib/gcc/nios2-buildroot-linux-gnu/13.2.0/../../../../nios2-buildroot-linux-gnu/bin/ld: cannot find -lmd: No such file or directory
collect2: error: ld returned 1 exit status
configure:19612: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "libarchive"
| #define PACKAGE_TARNAME "libarchive"
| #define PACKAGE_VERSION "3.7.2"
| #define PACKAGE_STRING "libarchive 3.7.2"
| #define PACKAGE_BUGREPORT "libarchive-discuss@googlegroups.com"
| #define PACKAGE_URL ""
| #define PACKAGE "libarchive"
| #define VERSION "3.7.2"
| #define __LIBARCHIVE_CONFIG_H_INCLUDED 1
| #define LIBARCHIVE_VERSION_STRING "3.7.2"
| #define LIBARCHIVE_VERSION_NUMBER "3007002"
| #define BSDCPIO_VERSION_STRING "3.7.2"
| #define BSDTAR_VERSION_STRING "3.7.2"
| #define BSDCAT_VERSION_STRING "3.7.2"
| #define BSDUNZIP_VERSION_STRING "3.7.2"
| #define HAVE_STDIO_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_SYS_TIME_H 1
| #define STDC_HEADERS 1
| #define _ALL_SOURCE 1
| #define _DARWIN_C_SOURCE 1
| #define _GNU_SOURCE 1
| #define _HPUX_ALT_XOPEN_SOCKET_API 1
| #define _NETBSD_SOURCE 1
| #define _OPENBSD_SOURCE 1
| #define _POSIX_PTHREAD_SEMANTICS 1
| #define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1
| #define __STDC_WANT_IEC_60559_BFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_DFP_EXT__ 1
| #define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1
| #define __STDC_WANT_IEC_60559_TYPES_EXT__ 1
| #define __STDC_WANT_LIB_EXT2__ 1
| #define __STDC_WANT_MATH_SPEC_FUNCS__ 1
| #define _TANDEM_SOURCE 1
| #define __EXTENSIONS__ 1
| #define HAVE_DLFCN_H 1
| #define LT_OBJDIR ".libs/"
| #define HAVE_DIRENT_H 1
| #define HAVE_SYS_WAIT_H 1
| #define HAVE_CTYPE_H 1
| #define HAVE_ERRNO_H 1
| #define HAVE_FCNTL_H 1
| #define HAVE_FNMATCH_H 1
| #define HAVE_GRP_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_LANGINFO_H 1
| #define HAVE_LIMITS_H 1
| #define HAVE_LINUX_FIEMAP_H 1
| #define HAVE_LINUX_FS_H 1
| #define HAVE_LINUX_MAGIC_H 1
| #define HAVE_LINUX_TYPES_H 1
| #define HAVE_WORKING_FS_IOC_GETFLAGS 1
| #define HAVE_LOCALE_H 1
| #define HAVE_PATHS_H 1
| #define HAVE_POLL_H 1
| #define HAVE_PTHREAD_H 1
| #define HAVE_PWD_H 1
| #define HAVE_SIGNAL_H 1
| #define HAVE_SPAWN_H 1
| #define HAVE_STDARG_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_SYS_CDEFS_H 1
| #define HAVE_SYS_IOCTL_H 1
| #define HAVE_SYS_MOUNT_H 1
| #define HAVE_SYS_QUEUE_H 1
| #define HAVE_SYS_PARAM_H 1
| #define HAVE_SYS_POLL_H 1
| #define HAVE_SYS_SELECT_H 1
| #define HAVE_SYS_STATFS_H 1
| #define HAVE_SYS_STATVFS_H 1
| #define HAVE_SYS_SYSMACROS_H 1
| #define HAVE_SYS_TIME_H 1
| #define HAVE_SYS_UTSNAME_H 1
| #define HAVE_SYS_VFS_H 1
| #define HAVE_SYS_XATTR_H 1
| #define HAVE_TIME_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_UTIME_H 1
| #define HAVE_WCHAR_H 1
| #define HAVE_WCTYPE_H 1
| #define HAVE_ZLIB_H 1
| #define HAVE_LIBZ 1
| #define HAVE_ICONV 1
| #define ICONV_CONST 
| #define HAVE_ICONV_H 1
| #define HAVE_LZ4_H 1
| #define HAVE_LZ4HC_H 1
| #define HAVE_LIBLZ4 1
| #define HAVE_ZSTD_H 1
| #define HAVE_LIBZSTD 1
| #define HAVE_LIBZSTD_COMPRESSOR 1
| #define HAVE_LIBXML_XMLREADER_H 1
| #define HAVE_LIBXML_XMLWRITER_H 1
| #define HAVE_REGEX_H 1
| #define HAVE_STRUCT_TM_TM_GMTOFF 1
| #define HAVE_STRUCT_STAT_ST_MTIM_TV_NSEC 1
| #define HAVE_STRUCT_STAT_ST_BLKSIZE 1
| #define HAVE_UINTMAX_T 1
| #define HAVE_UNSIGNED_LONG_LONG 1
| #define HAVE_UNSIGNED_LONG_LONG_INT 1
| #define HAVE_LONG_LONG_INT 1
| #define HAVE_INTMAX_T 1
| #define HAVE_UINTMAX_T 1
| #define HAVE_DECL_SIZE_MAX 1
| #define HAVE_DECL_INT32_MAX 1
| #define HAVE_DECL_INT32_MIN 1
| #define HAVE_DECL_INT64_MAX 1
| #define HAVE_DECL_INT64_MIN 1
| #define HAVE_DECL_UINT64_MAX 1
| #define HAVE_DECL_UINT32_MAX 1
| #define HAVE_DECL_INTMAX_MAX 1
| #define HAVE_DECL_INTMAX_MIN 1
| #define HAVE_DECL_UINTMAX_MAX 1
| #define HAVE_DECL_SSIZE_MAX 1
| #define HAVE_EILSEQ 1
| #define HAVE_WCHAR_T 1
| #define SIZEOF_WCHAR_T 4
| #define SIZEOF_INT 4
| #define SIZEOF_LONG 4
| #define MAJOR_IN_SYSMACROS 1
| #define HAVE_FSEEKO 1
| #define LSTAT_FOLLOWS_SLASHED_SYMLINK 1
| #define HAVE_LSTAT_EMPTY_STRING_BUG 1
| #define HAVE_STAT_EMPTY_STRING_BUG 1
| #define HAVE_DECL_STRERROR_R 1
| #define HAVE_STRERROR_R 1
| #define STRERROR_R_CHAR_P 1
| #define HAVE_STRFTIME 1
| #define HAVE_VPRINTF 1
| #define HAVE_ARC4RANDOM_BUF 1
| #define HAVE_CHOWN 1
| #define HAVE_CHROOT 1
| #define HAVE_CTIME_R 1
| #define HAVE_FCHDIR 1
| #define HAVE_FCHMOD 1
| #define HAVE_FCHOWN 1
| #define HAVE_FCNTL 1
| #define HAVE_FDOPENDIR 1
| #define HAVE_FNMATCH 1
| #define HAVE_FORK 1
| #define HAVE_FSTAT 1
| #define HAVE_FSTATAT 1
| #define HAVE_FSTATFS 1
| #define HAVE_FSTATVFS 1
| #define HAVE_FTRUNCATE 1
| #define HAVE_FUTIMENS 1
| #define HAVE_FUTIMES 1
| #define HAVE_FUTIMESAT 1
| #define HAVE_GETEUID 1
| #define HAVE_GETLINE 1
| #define HAVE_GETPID 1
| #define HAVE_GETGRGID_R 1
| #define HAVE_GETGRNAM_R 1
| #define HAVE_GETPWNAM_R 1
| #define HAVE_GETPWUID_R 1
| #define HAVE_GMTIME_R 1
| #define HAVE_LCHMOD 1
| #define HAVE_LCHOWN 1
| #define HAVE_LINK 1
| #define HAVE_LINKAT 1
| #define HAVE_LOCALTIME_R 1
| #define HAVE_LSTAT 1
| #define HAVE_LUTIMES 1
| #define HAVE_MBRTOWC 1
| #define HAVE_MEMMOVE 1
| #define HAVE_MEMSET 1
| #define HAVE_MKDIR 1
| #define HAVE_MKFIFO 1
| #define HAVE_MKNOD 1
| #define HAVE_MKSTEMP 1
| #define HAVE_NL_LANGINFO 1
| #define HAVE_OPENAT 1
| #define HAVE_PIPE 1
| #define HAVE_POLL 1
| #define HAVE_POSIX_SPAWNP 1
| #define HAVE_READLINK 1
| #define HAVE_READLINKAT 1
| #define HAVE_SELECT 1
| #define HAVE_SETENV 1
| #define HAVE_SETLOCALE 1
| #define HAVE_SIGACTION 1
| #define HAVE_STATFS 1
| #define HAVE_STATVFS 1
| #define HAVE_STRCHR 1
| #define HAVE_STRDUP 1
| #define HAVE_STRERROR 1
| #define HAVE_STRNLEN 1
| #define HAVE_STRRCHR 1
| #define HAVE_SYMLINK 1
| #define HAVE_TIMEGM 1
| #define HAVE_TZSET 1
| #define HAVE_UNLINKAT 1
| #define HAVE_UNSETENV 1
| #define HAVE_UTIME 1
| #define HAVE_UTIMENSAT 1
| #define HAVE_UTIMES 1
| #define HAVE_VFORK 1
| #define HAVE_WCRTOMB 1
| #define HAVE_WCSCMP 1
| #define HAVE_WCSCPY 1
| #define HAVE_WCSLEN 1
| #define HAVE_WCTOMB 1
| #define HAVE_WMEMCMP 1
| #define HAVE_WMEMCPY 1
| #define HAVE_WMEMMOVE 1
| #define HAVE_READDIR_R 1
| #define HAVE_DIRFD 1
| #define HAVE_OPENSSL_EVP_H 1
| #define HAVE_LIBCRYPTO 1
| #define ARCHIVE_CRYPTO_MD5_OPENSSL 1
| #define ARCHIVE_CRYPTO_RMD160_OPENSSL 1
| #define ARCHIVE_CRYPTO_SHA1_OPENSSL 1
| #define ARCHIVE_CRYPTO_SHA256_OPENSSL 1
| #define ARCHIVE_CRYPTO_SHA384_OPENSSL 1
| #define ARCHIVE_CRYPTO_SHA512_OPENSSL 1
| #define HAVE_PKCS5_PBKDF2_HMAC_SHA1 1
| /* end confdefs.h.  */
| 
| /* Override any GCC internal prototype to avoid an error.
|    Use char because int might match the return type of a GCC
|    builtin and then its argument prototype would still apply.  */
| char MD5Init ();
| int
| main (void)
| {
| return MD5Init ();
|   ;
|   return 0;
| }
configure:19622: result: no
configure:20073: checking whether compiler supports visibility annotations
configure:20088: /home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc -o conftest -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -fvisibility=hidden -Werror -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2   conftest.c -lcrypto -lzstd -llz4 -lz  -L/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/lib -lxml2  >&5
configure:20088: $? = 0
configure:20091: result: yes
configure:20206: checking that generated files are newer than configure
configure:20212: result: done
configure:20299: creating ./config.status

## ---------------------- ##
## Running config.status. ##
## ---------------------- ##

This file was extended by libarchive config.status 3.7.2, which was
generated by GNU Autoconf 2.71.  Invocation command line was

  CONFIG_FILES    = 
  CONFIG_HEADERS  = 
  CONFIG_LINKS    = 
  CONFIG_COMMANDS = 
  $ ./config.status 

on build3.bootlin.com

config.status:1338: creating Makefile
config.status:1338: creating build/pkgconfig/libarchive.pc
config.status:1338: creating config.h
config.status:1567: executing depfiles commands
config.status:1567: executing libtool commands
config.status:1567: executing mkdirs commands
configure:22444: WARNING: unrecognized options: --disable-gtk-doc, --disable-gtk-doc-html, --disable-doc, --disable-docs, --disable-documentation, --with-xmlto, --with-fop, --enable-ipv6, --disable-nls

## ---------------- ##
## Cache variables. ##
## ---------------- ##

ac_cv_build=x86_64-pc-linux-gnu
ac_cv_c_bigendian=no
ac_cv_c_compiler_gnu=yes
ac_cv_c_const=yes
ac_cv_c_int16_t=yes
ac_cv_c_int32_t=yes
ac_cv_c_int64_t=yes
ac_cv_c_uint16_t=yes
ac_cv_c_uint32_t=yes
ac_cv_c_uint64_t=yes
ac_cv_c_uint8_t=yes
ac_cv_c_undeclared_builtin_options='none needed'
ac_cv_env_CC_set=set
ac_cv_env_CC_value=/home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc
ac_cv_env_CFLAGS_set=set
ac_cv_env_CFLAGS_value='-D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3'
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/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-cpp
ac_cv_env_LDFLAGS_set=set
ac_cv_env_LDFLAGS_value=
ac_cv_env_LIBS_set=
ac_cv_env_LIBS_value=
ac_cv_env_LIBXML2_PC_CFLAGS_set=
ac_cv_env_LIBXML2_PC_CFLAGS_value=
ac_cv_env_LIBXML2_PC_LIBS_set=
ac_cv_env_LIBXML2_PC_LIBS_value=
ac_cv_env_LT_SYS_LIBRARY_PATH_set=
ac_cv_env_LT_SYS_LIBRARY_PATH_value=
ac_cv_env_PKG_CONFIG_LIBDIR_set=
ac_cv_env_PKG_CONFIG_LIBDIR_value=
ac_cv_env_PKG_CONFIG_PATH_set=
ac_cv_env_PKG_CONFIG_PATH_value=
ac_cv_env_PKG_CONFIG_set=set
ac_cv_env_PKG_CONFIG_value=/home/thomas/autobuild/instance-1/output-1/host/bin/pkg-config
ac_cv_env_build_alias_set=set
ac_cv_env_build_alias_value=x86_64-pc-linux-gnu
ac_cv_env_host_alias_set=set
ac_cv_env_host_alias_value=nios2-buildroot-linux-gnu
ac_cv_env_target_alias_set=set
ac_cv_env_target_alias_value=nios2-buildroot-linux-gnu
ac_cv_func_CreateHardLinkA=no
ac_cv_func_PKCS5_PBKDF2_HMAC_SHA1=yes
ac_cv_func__fseeki64=no
ac_cv_func__get_timezone=no
ac_cv_func_arc4random_buf=yes
ac_cv_func_calloc_0_nonnull=yes
ac_cv_func_chflags=no
ac_cv_func_chown=yes
ac_cv_func_chroot=yes
ac_cv_func_ctime_r=yes
ac_cv_func_cygwin_conv_path=no
ac_cv_func_fchdir=yes
ac_cv_func_fchflags=no
ac_cv_func_fchmod=yes
ac_cv_func_fchown=yes
ac_cv_func_fcntl=yes
ac_cv_func_fdopendir=yes
ac_cv_func_fnmatch=yes
ac_cv_func_fork=yes
ac_cv_func_fstat=yes
ac_cv_func_fstatat=yes
ac_cv_func_fstatfs=yes
ac_cv_func_fstatvfs=yes
ac_cv_func_ftruncate=yes
ac_cv_func_futimens=yes
ac_cv_func_futimes=yes
ac_cv_func_futimesat=yes
ac_cv_func_geteuid=yes
ac_cv_func_getgrgid_r=yes
ac_cv_func_getgrnam_r=yes
ac_cv_func_getline=yes
ac_cv_func_getpid=yes
ac_cv_func_getpwnam_r=yes
ac_cv_func_getpwuid_r=yes
ac_cv_func_getvfsbyname=no
ac_cv_func_gmtime_r=yes
ac_cv_func_lchflags=no
ac_cv_func_lchmod=yes
ac_cv_func_lchown=yes
ac_cv_func_link=yes
ac_cv_func_linkat=yes
ac_cv_func_locale_charset=no
ac_cv_func_localtime_r=yes
ac_cv_func_lstat=yes
ac_cv_func_lstat_dereferences_slashed_symlink=yes
ac_cv_func_lstat_empty_string_bug=yes
ac_cv_func_lutimes=yes
ac_cv_func_malloc_0_nonnull=yes
ac_cv_func_mbrtowc=yes
ac_cv_func_memcmp_working=yes
ac_cv_func_memmove=yes
ac_cv_func_memset=yes
ac_cv_func_mkdir=yes
ac_cv_func_mkfifo=yes
ac_cv_func_mknod=yes
ac_cv_func_mkstemp=yes
ac_cv_func_mmap_fixed_mapped=yes
ac_cv_func_nl_langinfo=yes
ac_cv_func_openat=yes
ac_cv_func_pipe=yes
ac_cv_func_poll=yes
ac_cv_func_posix_spawnp=yes
ac_cv_func_readlink=yes
ac_cv_func_readlinkat=yes
ac_cv_func_readpassphrase=no
ac_cv_func_realloc_0_nonnull=yes
ac_cv_func_regcomp=yes
ac_cv_func_select=yes
ac_cv_func_setenv=yes
ac_cv_func_setlocale=yes
ac_cv_func_sigaction=yes
ac_cv_func_stat_empty_string_bug=yes
ac_cv_func_statfs=yes
ac_cv_func_statvfs=yes
ac_cv_func_strchr=yes
ac_cv_func_strdup=yes
ac_cv_func_strerror=yes
ac_cv_func_strerror_r_char_p=yes
ac_cv_func_strftime=yes
ac_cv_func_strncpy_s=no
ac_cv_func_strnlen=yes
ac_cv_func_strrchr=yes
ac_cv_func_symlink=yes
ac_cv_func_timegm=yes
ac_cv_func_tzset=yes
ac_cv_func_unlinkat=yes
ac_cv_func_unsetenv=yes
ac_cv_func_utime=yes
ac_cv_func_utimensat=yes
ac_cv_func_utimes=yes
ac_cv_func_vfork=yes
ac_cv_func_vprintf=yes
ac_cv_func_wcrtomb=yes
ac_cv_func_wcscmp=yes
ac_cv_func_wcscpy=yes
ac_cv_func_wcslen=yes
ac_cv_func_wctomb=yes
ac_cv_func_wmemcmp=yes
ac_cv_func_wmemcpy=yes
ac_cv_func_wmemmove=yes
ac_cv_have_decl_D_MD_ORDER=no
ac_cv_have_decl_EFTYPE=no
ac_cv_have_decl_EILSEQ=yes
ac_cv_have_decl_EXT2_IOC_GETFLAGS=no
ac_cv_have_decl_FS_IOC_GETFLAGS=yes
ac_cv_have_decl_INT32_MAX=yes
ac_cv_have_decl_INT32_MIN=yes
ac_cv_have_decl_INT64_MAX=yes
ac_cv_have_decl_INT64_MIN=yes
ac_cv_have_decl_INTMAX_MAX=yes
ac_cv_have_decl_INTMAX_MIN=yes
ac_cv_have_decl_SIZE_MAX=yes
ac_cv_have_decl_SSIZE_MAX=yes
ac_cv_have_decl_UINT32_MAX=yes
ac_cv_have_decl_UINT64_MAX=yes
ac_cv_have_decl_UINTMAX_MAX=yes
ac_cv_have_decl__mkgmtime=no
ac_cv_have_decl_cmtime_s=no
ac_cv_have_decl_gmtime_s=no
ac_cv_have_decl_malloc=yes
ac_cv_have_decl_strerror_r=yes
ac_cv_header_acl_libacl_h=no
ac_cv_header_attr_xattr_h=no
ac_cv_header_bcrypt_h=no
ac_cv_header_blake2_h=no
ac_cv_header_copyfile_h=no
ac_cv_header_ctype_h=yes
ac_cv_header_dirent_dirent_h=yes
ac_cv_header_dlfcn_h=yes
ac_cv_header_errno_h=yes
ac_cv_header_ext2fs_ext2_fs_h=no
ac_cv_header_fcntl_h=yes
ac_cv_header_fnmatch_h=yes
ac_cv_header_grp_h=yes
ac_cv_header_iconv_h=yes
ac_cv_header_inttypes_h=yes
ac_cv_header_io_h=no
ac_cv_header_langinfo_h=yes
ac_cv_header_libxml_xmlreader_h=yes
ac_cv_header_libxml_xmlwriter_h=yes
ac_cv_header_limits_h=yes
ac_cv_header_linux_fiemap_h=yes
ac_cv_header_linux_fs_h=yes
ac_cv_header_linux_magic_h=yes
ac_cv_header_linux_types_h=yes
ac_cv_header_localcharset_h=no
ac_cv_header_locale_h=yes
ac_cv_header_lz4_h=yes
ac_cv_header_lz4hc_h=yes
ac_cv_header_md5_h=no
ac_cv_header_membership_h=no
ac_cv_header_minix_config_h=no
ac_cv_header_openssl_evp_h=yes
ac_cv_header_paths_h=yes
ac_cv_header_poll_h=yes
ac_cv_header_pthread_h=yes
ac_cv_header_pwd_h=yes
ac_cv_header_readpassphrase_h=no
ac_cv_header_regex_h=yes
ac_cv_header_ripemd_h=no
ac_cv_header_sha256_h=no
ac_cv_header_sha512_h=no
ac_cv_header_sha_h=no
ac_cv_header_signal_h=yes
ac_cv_header_spawn_h=yes
ac_cv_header_stdarg_h=yes
ac_cv_header_stdint_h=yes
ac_cv_header_stdio_h=yes
ac_cv_header_stdlib_h=yes
ac_cv_header_string_h=yes
ac_cv_header_strings_h=yes
ac_cv_header_sys_acl_h=no
ac_cv_header_sys_cdefs_h=yes
ac_cv_header_sys_ea_h=no
ac_cv_header_sys_extattr_h=no
ac_cv_header_sys_ioctl_h=yes
ac_cv_header_sys_mkdev_h=no
ac_cv_header_sys_mount_h=yes
ac_cv_header_sys_param_h=yes
ac_cv_header_sys_poll_h=yes
ac_cv_header_sys_queue_h=yes
ac_cv_header_sys_richacl_h=no
ac_cv_header_sys_select_h=yes
ac_cv_header_sys_stat_h=yes
ac_cv_header_sys_statfs_h=yes
ac_cv_header_sys_statvfs_h=yes
ac_cv_header_sys_sysmacros_h=yes
ac_cv_header_sys_time_h=yes
ac_cv_header_sys_types_h=yes
ac_cv_header_sys_utime_h=no
ac_cv_header_sys_utsname_h=yes
ac_cv_header_sys_vfs_h=yes
ac_cv_header_sys_wait_h=yes
ac_cv_header_sys_xattr_h=yes
ac_cv_header_time_h=yes
ac_cv_header_unistd_h=yes
ac_cv_header_utime_h=yes
ac_cv_header_wchar_h=yes
ac_cv_header_wctype_h=yes
ac_cv_header_wincrypt_h=no
ac_cv_header_windows_h=no
ac_cv_header_winioctl_h=no
ac_cv_header_zlib_h=yes
ac_cv_header_zstd_h=yes
ac_cv_host=nios2-buildroot-linux-gnu
ac_cv_lbl_unaligned_fail=yes
ac_cv_lib_b2_blake2sp_init=no
ac_cv_lib_charset_locale_charset=no
ac_cv_lib_crypto_OPENSSL_config=yes
ac_cv_lib_lz4_LZ4_decompress_safe=yes
ac_cv_lib_md_MD5Init=no
ac_cv_lib_xml2_xmlInitParser=yes
ac_cv_lib_z_inflate=yes
ac_cv_lib_zstd_ZSTD_compressStream=yes
ac_cv_lib_zstd_ZSTD_decompressStream=yes
ac_cv_member_struct_dirent_d_namlen=no
ac_cv_member_struct_stat_st_birthtime=no
ac_cv_member_struct_stat_st_birthtimespec_tv_nsec=no
ac_cv_member_struct_stat_st_blksize=yes
ac_cv_member_struct_stat_st_flags=no
ac_cv_member_struct_stat_st_mtim_tv_nsec=yes
ac_cv_member_struct_stat_st_mtime_n=no
ac_cv_member_struct_stat_st_mtime_usec=no
ac_cv_member_struct_stat_st_mtimespec_tv_nsec=no
ac_cv_member_struct_stat_st_umtime=no
ac_cv_member_struct_statfs_f_iosize=no
ac_cv_member_struct_statfs_f_namemax=no
ac_cv_member_struct_statvfs_f_iosize=no
ac_cv_member_struct_tm___tm_gmtoff=no
ac_cv_member_struct_tm_tm_gmtoff=yes
ac_cv_objext=o
ac_cv_path_EGREP='/usr/bin/grep -E'
ac_cv_path_FGREP='/usr/bin/grep -F'
ac_cv_path_GREP=/usr/bin/grep
ac_cv_path_SED=/usr/bin/sed
ac_cv_path_install='/usr/bin/install -c'
ac_cv_path_lt_DD=/usr/bin/dd
ac_cv_path_mkdir=/usr/bin/mkdir
ac_cv_prog_AR=/home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc-ar
ac_cv_prog_AWK=gawk
ac_cv_prog_CC=/home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc
ac_cv_prog_CPP=/home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-cpp
ac_cv_prog_DLLTOOL=dlltool
ac_cv_prog_OBJDUMP=/home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-objdump
ac_cv_prog_RANLIB=/home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc-ranlib
ac_cv_prog_STRIP=/home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-strip
ac_cv_prog_ac_ct_MANIFEST_TOOL=mt
ac_cv_prog_cc_c11=
ac_cv_prog_cc_g=yes
ac_cv_prog_cc_stdc=
ac_cv_prog_gcc_traditional=no
ac_cv_prog_make_make_set=yes
ac_cv_safe_to_define___extensions__=yes
ac_cv_search_opendir='none required'
ac_cv_should_define__xopen_source=no
ac_cv_sizeof_int=4
ac_cv_sizeof_long=4
ac_cv_sizeof_wchar_t=4
ac_cv_sys_file_offset_bits=no
ac_cv_sys_largefile_CC=no
ac_cv_sys_largefile_source=no
ac_cv_type_id_t=yes
ac_cv_type_intmax_t=yes
ac_cv_type_localtime_s=no
ac_cv_type_long_long_int=yes
ac_cv_type_mode_t=yes
ac_cv_type_off_t=yes
ac_cv_type_size_t=yes
ac_cv_type_struct_statfs=no
ac_cv_type_struct_vfsconf=no
ac_cv_type_struct_xvfsconf=no
ac_cv_type_uintmax_t=yes
ac_cv_type_uintptr_t=yes
ac_cv_type_unsigned_long_long=yes
ac_cv_type_unsigned_long_long_int=yes
ac_cv_type_wchar_t=yes
acl_cv_hardcode_direct=no
acl_cv_hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
acl_cv_hardcode_libdir_separator=
acl_cv_hardcode_minus_L=no
acl_cv_libext=a
acl_cv_libname_spec='lib$name'
acl_cv_library_names_spec='$libname$shrext'
acl_cv_path_LD=/home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-ld
acl_cv_prog_gnu_ld=yes
acl_cv_rpath=done
acl_cv_shlibext=so
acl_cv_wl=-Wl,
am_cv_CC_dependencies_compiler_type=none
am_cv_func_iconv=yes
am_cv_func_iconv_works='guessing yes'
am_cv_lib_iconv=no
am_cv_make_support_nested_variables=yes
am_cv_prog_cc_c_o=yes
am_cv_proto_iconv='extern size_t iconv (iconv_t cd, char * *inbuf, size_t *inbytesleft, char * *outbuf, size_t *outbytesleft);'
am_cv_proto_iconv_arg1=
ax_cv_check_cflags___Wall=yes
ax_cv_check_cflags___Wformat=yes
ax_cv_check_cflags___Wformat_security=yes
ax_cv_check_cflags___fdata_sections=yes
ax_cv_check_cflags___ffunction_sections=yes
gl_cv_func_malloc_0_nonnull=yes
la_cv_type_uid_t=yes
lt_cv_ar_at_file=@
lt_cv_archive_cmds_need_lc=no
lt_cv_deplibs_check_method=pass_all
lt_cv_file_magic_cmd='$MAGIC_CMD'
lt_cv_file_magic_test_file=
lt_cv_ld_reload_flag=-r
lt_cv_nm_interface='BSD nm'
lt_cv_objdir=.libs
lt_cv_path_LD=/home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-ld
lt_cv_path_NM=/home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc-nm
lt_cv_path_mainfest_tool=no
lt_cv_prog_compiler_c_o=yes
lt_cv_prog_compiler_pic='-fPIC -DPIC'
lt_cv_prog_compiler_pic_works=yes
lt_cv_prog_compiler_rtti_exceptions=no
lt_cv_prog_compiler_static_works=yes
lt_cv_prog_gnu_ld=yes
lt_cv_sharedlib_from_linklib_cmd='printf %s\n'
lt_cv_shlibpath_overrides_runpath=no
lt_cv_sys_global_symbol_pipe='sed -n -e '\''s/^.*[	 ]\([ABCDGIRSTW][ABCDGIRSTW]*\)[	 ][	 ]*\([_A-Za-z][_A-Za-z0-9]*\)$/\1 \2 \2/p'\'' | sed '\''/ __gnu_lto/d'\'''
lt_cv_sys_global_symbol_to_c_name_address='sed -n -e '\''s/^: \(.*\) .*$/  {"\1", (void *) 0},/p'\'' -e '\''s/^[ABCDGIRSTW][ABCDGIRSTW]* .* \(.*\)$/  {"\1", (void *) \&\1},/p'\'''
lt_cv_sys_global_symbol_to_c_name_address_lib_prefix='sed -n -e '\''s/^: \(.*\) .*$/  {"\1", (void *) 0},/p'\'' -e '\''s/^[ABCDGIRSTW][ABCDGIRSTW]* .* \(lib.*\)$/  {"\1", (void *) \&\1},/p'\'' -e '\''s/^[ABCDGIRSTW][ABCDGIRSTW]* .* \(.*\)$/  {"lib\1", (void *) \&\1},/p'\'''
lt_cv_sys_global_symbol_to_cdecl='sed -n -e '\''s/^T .* \(.*\)$/extern int \1();/p'\'' -e '\''s/^[ABCDGIRSTW][ABCDGIRSTW]* .* \(.*\)$/extern char \1;/p'\'''
lt_cv_sys_global_symbol_to_import=
lt_cv_sys_lib_search_path_spec=
lt_cv_sys_max_cmd_len=1572864
lt_cv_to_host_file_cmd=func_convert_file_noop
lt_cv_to_tool_file_cmd=func_convert_file_noop
lt_cv_truncate_bin='/usr/bin/dd bs=4096 count=1'
pkg_cv_LIBXML2_PC_CFLAGS='-I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2 '
pkg_cv_LIBXML2_PC_LIBS='-L/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/lib -lxml2 '

## ----------------- ##
## Output variables. ##
## ----------------- ##

ACLOCAL='${SHELL} '\''/home/thomas/autobuild/instance-1/output-1/build/libarchive-3.7.2/build/autoconf/missing'\'' aclocal-1.16'
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/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc-ar'
ARCHIVE_LIBTOOL_VERSION='20:2:7'
AS='/home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-as'
AUTOCONF='${SHELL} '\''/home/thomas/autobuild/instance-1/output-1/build/libarchive-3.7.2/build/autoconf/missing'\'' autoconf'
AUTOHEADER='${SHELL} '\''/home/thomas/autobuild/instance-1/output-1/build/libarchive-3.7.2/build/autoconf/missing'\'' autoheader'
AUTOMAKE='${SHELL} '\''/home/thomas/autobuild/instance-1/output-1/build/libarchive-3.7.2/build/autoconf/missing'\'' automake-1.16'
AWK='gawk'
BSDCAT_VERSION_STRING='3.7.2'
BSDCPIO_VERSION_STRING='3.7.2'
BSDTAR_VERSION_STRING='3.7.2'
BSDUNZIP_VERSION_STRING='3.7.2'
BUILD_BSDCAT_FALSE=''
BUILD_BSDCAT_TRUE='#'
BUILD_BSDCPIO_FALSE=''
BUILD_BSDCPIO_TRUE='#'
BUILD_BSDTAR_FALSE=''
BUILD_BSDTAR_TRUE='#'
BUILD_BSDUNZIP_FALSE='#'
BUILD_BSDUNZIP_TRUE=''
CC='/home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc'
CCDEPMODE='depmode=none'
CFLAGS='-D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2 -g0 -D_FORTIFY_SOURCE=3 -Wall -Wformat -Wformat-security -ffunction-sections -fdata-sections -fvisibility=hidden -D__LIBARCHIVE_ENABLE_VISIBILITY'
CPP='/home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-cpp'
CPPFLAGS='-D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2 '
CSCOPE='cscope'
CTAGS='ctags'
CYGPATH_W='echo'
DEFS='-DHAVE_CONFIG_H'
DEPDIR='.deps'
DLLTOOL='dlltool'
DSYMUTIL=''
DUMPBIN=''
ECHO_C=''
ECHO_N='-n'
ECHO_T=''
EGREP='/usr/bin/grep -E'
ETAGS='etags'
EXEEXT=''
FGREP='/usr/bin/grep -F'
GC_SECTIONS='-Wl,--gc-sections'
GREP='/usr/bin/grep'
INC_BLAKE2_FALSE='#'
INC_BLAKE2_TRUE=''
INC_CYGWIN_FILES_FALSE=''
INC_CYGWIN_FILES_TRUE='#'
INC_DARWIN_ACL_FALSE=''
INC_DARWIN_ACL_TRUE='#'
INC_FREEBSD_ACL_FALSE=''
INC_FREEBSD_ACL_TRUE='#'
INC_LINUX_ACL_FALSE=''
INC_LINUX_ACL_TRUE='#'
INC_SUNOS_ACL_FALSE=''
INC_SUNOS_ACL_TRUE='#'
INC_WINDOWS_FILES_FALSE=''
INC_WINDOWS_FILES_TRUE='#'
INSTALL_DATA='${INSTALL} -m 644'
INSTALL_PROGRAM='${INSTALL}'
INSTALL_SCRIPT='${INSTALL}'
INSTALL_STRIP_PROGRAM='$(install_sh) -c -s'
LD='/home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-ld'
LDFLAGS=''
LIBARCHIVE_VERSION_NUMBER='3007002'
LIBARCHIVE_VERSION_STRING='3.7.2'
LIBICONV=''
LIBOBJS=' ${LIBOBJDIR}lstat$U.o ${LIBOBJDIR}stat$U.o'
LIBS='-lcrypto -lzstd -llz4 -lz  -L/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/lib -lxml2 '
LIBSREQUIRED='libcrypto'
LIBTOOL='$(SHELL) $(top_builddir)/libtool'
LIBXML2_PC_CFLAGS='-I/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/include/libxml2 '
LIBXML2_PC_LIBS='-L/home/thomas/autobuild/instance-1/output-1/host/bin/../nios2-buildroot-linux-gnu/sysroot/usr/lib -lxml2 '
LIPO=''
LN_S='ln -s'
LTLIBICONV=''
LTLIBOBJS=' ${LIBOBJDIR}lstat$U.lo ${LIBOBJDIR}stat$U.lo'
LT_SYS_LIBRARY_PATH=''
MAINT=''
MAINTAINER_MODE_FALSE='#'
MAINTAINER_MODE_TRUE=''
MAKEINFO='${SHELL} '\''/home/thomas/autobuild/instance-1/output-1/build/libarchive-3.7.2/build/autoconf/missing'\'' makeinfo'
MANIFEST_TOOL=':'
MKDIR_P='/usr/bin/mkdir -p'
NM='/home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc-nm'
NMEDIT=''
OBJDUMP='/home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-objdump'
OBJEXT='o'
OTOOL64=''
OTOOL=''
PACKAGE='libarchive'
PACKAGE_BUGREPORT='libarchive-discuss@googlegroups.com'
PACKAGE_NAME='libarchive'
PACKAGE_STRING='libarchive 3.7.2'
PACKAGE_TARNAME='libarchive'
PACKAGE_URL=''
PACKAGE_VERSION='3.7.2'
PATH_SEPARATOR=':'
PKG_CONFIG='/home/thomas/autobuild/instance-1/output-1/host/bin/pkg-config'
PKG_CONFIG_LIBDIR=''
PKG_CONFIG_PATH=''
PLATFORMCPPFLAGS=''
RANLIB='/home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-gcc-ranlib'
SED='/usr/bin/sed'
SET_MAKE=''
SHELL='/bin/bash'
STATIC_BSDCAT_FALSE=''
STATIC_BSDCAT_TRUE='#'
STATIC_BSDCPIO_FALSE=''
STATIC_BSDCPIO_TRUE='#'
STATIC_BSDTAR_FALSE=''
STATIC_BSDTAR_TRUE='#'
STATIC_BSDUNZIP_FALSE='#'
STATIC_BSDUNZIP_TRUE=''
STRIP='/home/thomas/autobuild/instance-1/output-1/host/bin/nios2-buildroot-linux-gnu-strip'
VERSION='3.7.2'
ac_ct_AR=''
ac_ct_CC=''
ac_ct_DUMPBIN=''
am__EXEEXT_FALSE=''
am__EXEEXT_TRUE='#'
am__fastdepCC_FALSE=''
am__fastdepCC_TRUE='#'
am__include='include'
am__isrc=''
am__leading_dot='.'
am__nodep=''
am__quote=''
am__tar='$${TAR-tar} chof - "$$tardir"'
am__untar='$${TAR-tar} xf -'
bindir='${exec_prefix}/bin'
build='x86_64-pc-linux-gnu'
build_alias='x86_64-pc-linux-gnu'
build_cpu='x86_64'
build_os='linux-gnu'
build_vendor='pc'
datadir='${datarootdir}'
datarootdir='${prefix}/share'
docdir='${datarootdir}/doc/${PACKAGE_TARNAME}'
dvidir='${docdir}'
exec_prefix='/usr'
host='nios2-buildroot-linux-gnu'
host_alias='nios2-buildroot-linux-gnu'
host_cpu='nios2'
host_os='linux-gnu'
host_vendor='buildroot'
htmldir='${docdir}'
includedir='${prefix}/include'
infodir='${datarootdir}/info'
install_sh='${SHELL} /home/thomas/autobuild/instance-1/output-1/build/libarchive-3.7.2/build/autoconf/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}'
prefix='/usr'
program_transform_name='s&^&&'
psdir='${docdir}'
runstatedir='${localstatedir}/run'
sbindir='${exec_prefix}/sbin'
sharedstatedir='${prefix}/com'
sysconfdir='/etc'
target_alias='nios2-buildroot-linux-gnu'

## ----------- ##
## confdefs.h. ##
## ----------- ##

/* confdefs.h */
#define PACKAGE_NAME "libarchive"
#define PACKAGE_TARNAME "libarchive"
#define PACKAGE_VERSION "3.7.2"
#define PACKAGE_STRING "libarchive 3.7.2"
#define PACKAGE_BUGREPORT "libarchive-discuss@googlegroups.com"
#define PACKAGE_URL ""
#define PACKAGE "libarchive"
#define VERSION "3.7.2"
#define __LIBARCHIVE_CONFIG_H_INCLUDED 1
#define LIBARCHIVE_VERSION_STRING "3.7.2"
#define LIBARCHIVE_VERSION_NUMBER "3007002"
#define BSDCPIO_VERSION_STRING "3.7.2"
#define BSDTAR_VERSION_STRING "3.7.2"
#define BSDCAT_VERSION_STRING "3.7.2"
#define BSDUNZIP_VERSION_STRING "3.7.2"
#define HAVE_STDIO_H 1
#define HAVE_STDLIB_H 1
#define HAVE_STRING_H 1
#define HAVE_INTTYPES_H 1
#define HAVE_STDINT_H 1
#define HAVE_STRINGS_H 1
#define HAVE_SYS_STAT_H 1
#define HAVE_SYS_TYPES_H 1
#define HAVE_UNISTD_H 1
#define HAVE_WCHAR_H 1
#define HAVE_SYS_TIME_H 1
#define STDC_HEADERS 1
#define _ALL_SOURCE 1
#define _DARWIN_C_SOURCE 1
#define _GNU_SOURCE 1
#define _HPUX_ALT_XOPEN_SOCKET_API 1
#define _NETBSD_SOURCE 1
#define _OPENBSD_SOURCE 1
#define _POSIX_PTHREAD_SEMANTICS 1
#define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1
#define __STDC_WANT_IEC_60559_BFP_EXT__ 1
#define __STDC_WANT_IEC_60559_DFP_EXT__ 1
#define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1
#define __STDC_WANT_IEC_60559_TYPES_EXT__ 1
#define __STDC_WANT_LIB_EXT2__ 1
#define __STDC_WANT_MATH_SPEC_FUNCS__ 1
#define _TANDEM_SOURCE 1
#define __EXTENSIONS__ 1
#define HAVE_DLFCN_H 1
#define LT_OBJDIR ".libs/"
#define HAVE_DIRENT_H 1
#define HAVE_SYS_WAIT_H 1
#define HAVE_CTYPE_H 1
#define HAVE_ERRNO_H 1
#define HAVE_FCNTL_H 1
#define HAVE_FNMATCH_H 1
#define HAVE_GRP_H 1
#define HAVE_INTTYPES_H 1
#define HAVE_LANGINFO_H 1
#define HAVE_LIMITS_H 1
#define HAVE_LINUX_FIEMAP_H 1
#define HAVE_LINUX_FS_H 1
#define HAVE_LINUX_MAGIC_H 1
#define HAVE_LINUX_TYPES_H 1
#define HAVE_WORKING_FS_IOC_GETFLAGS 1
#define HAVE_LOCALE_H 1
#define HAVE_PATHS_H 1
#define HAVE_POLL_H 1
#define HAVE_PTHREAD_H 1
#define HAVE_PWD_H 1
#define HAVE_SIGNAL_H 1
#define HAVE_SPAWN_H 1
#define HAVE_STDARG_H 1
#define HAVE_STDINT_H 1
#define HAVE_STDLIB_H 1
#define HAVE_STRING_H 1
#define HAVE_SYS_CDEFS_H 1
#define HAVE_SYS_IOCTL_H 1
#define HAVE_SYS_MOUNT_H 1
#define HAVE_SYS_QUEUE_H 1
#define HAVE_SYS_PARAM_H 1
#define HAVE_SYS_POLL_H 1
#define HAVE_SYS_SELECT_H 1
#define HAVE_SYS_STATFS_H 1
#define HAVE_SYS_STATVFS_H 1
#define HAVE_SYS_SYSMACROS_H 1
#define HAVE_SYS_TIME_H 1
#define HAVE_SYS_UTSNAME_H 1
#define HAVE_SYS_VFS_H 1
#define HAVE_SYS_XATTR_H 1
#define HAVE_TIME_H 1
#define HAVE_UNISTD_H 1
#define HAVE_UTIME_H 1
#define HAVE_WCHAR_H 1
#define HAVE_WCTYPE_H 1
#define HAVE_ZLIB_H 1
#define HAVE_LIBZ 1
#define HAVE_ICONV 1
#define ICONV_CONST 
#define HAVE_ICONV_H 1
#define HAVE_LZ4_H 1
#define HAVE_LZ4HC_H 1
#define HAVE_LIBLZ4 1
#define HAVE_ZSTD_H 1
#define HAVE_LIBZSTD 1
#define HAVE_LIBZSTD_COMPRESSOR 1
#define HAVE_LIBXML_XMLREADER_H 1
#define HAVE_LIBXML_XMLWRITER_H 1
#define HAVE_REGEX_H 1
#define HAVE_STRUCT_TM_TM_GMTOFF 1
#define HAVE_STRUCT_STAT_ST_MTIM_TV_NSEC 1
#define HAVE_STRUCT_STAT_ST_BLKSIZE 1
#define HAVE_UINTMAX_T 1
#define HAVE_UNSIGNED_LONG_LONG 1
#define HAVE_UNSIGNED_LONG_LONG_INT 1
#define HAVE_LONG_LONG_INT 1
#define HAVE_INTMAX_T 1
#define HAVE_UINTMAX_T 1
#define HAVE_DECL_SIZE_MAX 1
#define HAVE_DECL_INT32_MAX 1
#define HAVE_DECL_INT32_MIN 1
#define HAVE_DECL_INT64_MAX 1
#define HAVE_DECL_INT64_MIN 1
#define HAVE_DECL_UINT64_MAX 1
#define HAVE_DECL_UINT32_MAX 1
#define HAVE_DECL_INTMAX_MAX 1
#define HAVE_DECL_INTMAX_MIN 1
#define HAVE_DECL_UINTMAX_MAX 1
#define HAVE_DECL_SSIZE_MAX 1
#define HAVE_EILSEQ 1
#define HAVE_WCHAR_T 1
#define SIZEOF_WCHAR_T 4
#define SIZEOF_INT 4
#define SIZEOF_LONG 4
#define MAJOR_IN_SYSMACROS 1
#define HAVE_FSEEKO 1
#define LSTAT_FOLLOWS_SLASHED_SYMLINK 1
#define HAVE_LSTAT_EMPTY_STRING_BUG 1
#define HAVE_STAT_EMPTY_STRING_BUG 1
#define HAVE_DECL_STRERROR_R 1
#define HAVE_STRERROR_R 1
#define STRERROR_R_CHAR_P 1
#define HAVE_STRFTIME 1
#define HAVE_VPRINTF 1
#define HAVE_ARC4RANDOM_BUF 1
#define HAVE_CHOWN 1
#define HAVE_CHROOT 1
#define HAVE_CTIME_R 1
#define HAVE_FCHDIR 1
#define HAVE_FCHMOD 1
#define HAVE_FCHOWN 1
#define HAVE_FCNTL 1
#define HAVE_FDOPENDIR 1
#define HAVE_FNMATCH 1
#define HAVE_FORK 1
#define HAVE_FSTAT 1
#define HAVE_FSTATAT 1
#define HAVE_FSTATFS 1
#define HAVE_FSTATVFS 1
#define HAVE_FTRUNCATE 1
#define HAVE_FUTIMENS 1
#define HAVE_FUTIMES 1
#define HAVE_FUTIMESAT 1
#define HAVE_GETEUID 1
#define HAVE_GETLINE 1
#define HAVE_GETPID 1
#define HAVE_GETGRGID_R 1
#define HAVE_GETGRNAM_R 1
#define HAVE_GETPWNAM_R 1
#define HAVE_GETPWUID_R 1
#define HAVE_GMTIME_R 1
#define HAVE_LCHMOD 1
#define HAVE_LCHOWN 1
#define HAVE_LINK 1
#define HAVE_LINKAT 1
#define HAVE_LOCALTIME_R 1
#define HAVE_LSTAT 1
#define HAVE_LUTIMES 1
#define HAVE_MBRTOWC 1
#define HAVE_MEMMOVE 1
#define HAVE_MEMSET 1
#define HAVE_MKDIR 1
#define HAVE_MKFIFO 1
#define HAVE_MKNOD 1
#define HAVE_MKSTEMP 1
#define HAVE_NL_LANGINFO 1
#define HAVE_OPENAT 1
#define HAVE_PIPE 1
#define HAVE_POLL 1
#define HAVE_POSIX_SPAWNP 1
#define HAVE_READLINK 1
#define HAVE_READLINKAT 1
#define HAVE_SELECT 1
#define HAVE_SETENV 1
#define HAVE_SETLOCALE 1
#define HAVE_SIGACTION 1
#define HAVE_STATFS 1
#define HAVE_STATVFS 1
#define HAVE_STRCHR 1
#define HAVE_STRDUP 1
#define HAVE_STRERROR 1
#define HAVE_STRNLEN 1
#define HAVE_STRRCHR 1
#define HAVE_SYMLINK 1
#define HAVE_TIMEGM 1
#define HAVE_TZSET 1
#define HAVE_UNLINKAT 1
#define HAVE_UNSETENV 1
#define HAVE_UTIME 1
#define HAVE_UTIMENSAT 1
#define HAVE_UTIMES 1
#define HAVE_VFORK 1
#define HAVE_WCRTOMB 1
#define HAVE_WCSCMP 1
#define HAVE_WCSCPY 1
#define HAVE_WCSLEN 1
#define HAVE_WCTOMB 1
#define HAVE_WMEMCMP 1
#define HAVE_WMEMCPY 1
#define HAVE_WMEMMOVE 1
#define HAVE_READDIR_R 1
#define HAVE_DIRFD 1
#define HAVE_OPENSSL_EVP_H 1
#define HAVE_LIBCRYPTO 1
#define ARCHIVE_CRYPTO_MD5_OPENSSL 1
#define ARCHIVE_CRYPTO_RMD160_OPENSSL 1
#define ARCHIVE_CRYPTO_SHA1_OPENSSL 1
#define ARCHIVE_CRYPTO_SHA256_OPENSSL 1
#define ARCHIVE_CRYPTO_SHA384_OPENSSL 1
#define ARCHIVE_CRYPTO_SHA512_OPENSSL 1
#define HAVE_PKCS5_PBKDF2_HMAC_SHA1 1

configure: exit 0