Projects
openEuler:Mainline
libksba
Sign Up
Log In
Username
Password
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
Expand all
Collapse all
Changes of Revision 2
View file
_service:tar_scm:libksba.spec
Changed
@@ -1,5 +1,5 @@ Name: libksba -Version: 1.6.0 +Version: 1.6.3 Release: 1 Summary: A library for X.509 and CMS License: (LGPL-3.0+ or GPL-2.0+) and GPL-3.0+ and MIT @@ -65,6 +65,30 @@ %{_datadir}/info/ksba.info.gz %changelog +* Tue Jan 17 2023 yixiangzhike <yixiangzhike007@163.com> - 1.6.3-1 +- Type:enhancement +- ID:NA +- SUG:NA +- DESC:update version to 1.6.3 + +* Thu Dec 22 2022 yixiangzhike <yixiangzhike007@163.com> - 1.6.2-2 +- Type:cve +- ID:CVE-2022-47629 +- SUG:NA +- DESC:fix CVE-2022-47629 + +* Tue Nov 15 2022 yixiangzhike <yixiangzhike007@163.com> - 1.6.2-1 +- Type:enhancement +- ID:NA +- SUG:NA +- DESC:update version to 1.6.2 + +* Wed Oct 19 2022 yixiangzhike <yixiangzhike007@163.com> - 1.6.0-2 +- Type:cve +- ID:CVE-2022-3515 +- SUG:NA +- DESC:fix CVE-2022-3515 + * Thu Dec 30 2021 yixiangzhike <yixiangzhike007@163.com> - 1.6.0-1 - Type:enhancement - ID:NA
View file
_service
Changed
@@ -2,7 +2,7 @@ <service name="tar_scm"> <param name="scm">git</param> <param name="url">git@gitee.com:src-openeuler/libksba.git</param> - <param name="revision">14a9978ef1c52debaac402bd0b446c033f7b84f1</param> + <param name="revision">master</param> <param name="exclude">*</param> <param name="extract">*</param> </service>
View file
_service:tar_scm:libksba-1.6.0.tar.bz2.sig -> _service:tar_scm:libksba-1.6.3.tar.bz2.sig
Changed
View file
_service:tar_scm:libksba-1.6.0.tar.bz2/ChangeLog -> _service:tar_scm:libksba-1.6.3.tar.bz2/ChangeLog
Changed
@@ -1,3 +1,157 @@ +2022-12-06 Werner Koch <wk@gnupg.org> + + Release 1.6.3. + + commit bffa9b346071725363a483db547e7dced9721cb5 + + +2022-11-23 Werner Koch <wk@gnupg.org> + + Fix an integer overflow in the CRL signature parser. + + commit f61a5ea4e0f6a80fd4b28ef0174bee77793cf070 + * src/crl.c (parse_signature): N+N2 now checked for overflow. + + * src/ocsp.c (parse_response_extensions): Do not accept too large + values. + (parse_single_extensions): Ditto. + +2022-11-02 NIIBE Yutaka <gniibe@fsij.org> + + build: Update m4/libgcrypt.m4. + + commit 4076b60f7cef4fddc3d30f6e6d4078081dbc7167 + * m4/libgcrypt.m4: Update from libgcrypt master. + +2022-11-01 NIIBE Yutaka <gniibe@fsij.org> + + build: Prefer gpgrt-config when available. + + commit 13307b22882a220d206341e1196e74fd37418c2f + * src/ksba.m4: Overriding the decision by --with-libksba-prefix, use + gpgrt-config ksba when gpgrt-config is available. + +2022-10-24 NIIBE Yutaka <gniibe@fsij.org> + + build: Update gpg-error.m4. + + commit c3c1627f34234e3d54fe1f3411ac499dd7e3b3b0 + * m4/gpg-error.m4: Update from libgpg-error 1.46. + +2022-10-07 Werner Koch <wk@gnupg.org> + + Release 1.6.2. + + commit 29814959fe2b65c6d4ac35dea261006a8cad3661 + + +2022-10-05 Werner Koch <wk@gnupg.org> + + Detect a possible overflow directly in the TLV parser. + + commit 4b7d9cd4a018898d7714ce06f3faf2626c14582b + * src/ber-help.c (_ksba_ber_read_tl): Check for overflow of a commonly + used sum. + +2022-09-16 Werner Koch <wk@gnupg.org> + + Release 1.6.1. + + commit d3c1e063d708a46ef39152256f8b1ea466b61be0 + + +2022-07-19 NIIBE Yutaka <gniibe@fsij.org> + + build: Update config.guess and config.sub. + + commit 466837db84fb318eaaee1aba6cc3939c16a3e2ba + * build-aux/config.guess: Update from upstream. + * build-aux/config.sub: Ditto. + + build: Support cross compile. + + commit ca9a04569020c51719ab45ebd35a3cbb1f35c6aa + * configure.ac (AX_CC_FOR_BUILD): New. + * m4/ax_cc_for_build.m4: New. + * src/Makefile.am: Use EXEEXT_FOR_BUILD. + +2022-06-28 NIIBE Yutaka <gniibe@fsij.org> + + build: Update gpg-error.m4. + + commit e51d5c7ce81fe3f90039ad970fbb82f751a645fc + * m4/gpg-error.m4: Update from libgpg-error. + +2022-03-31 NIIBE Yutaka <gniibe@fsij.org> + + build: When no gpg-error-config, not install ksba-config. + + commit 41000330cdba87afdf9ea0b481e0260dab262a54 + * configure.ac (USE_GPGRT_CONFIG): New. + * src/Makefile.am USE_GPGRT_CONFIG: Conditionalize the install + of ksba-config. + +2022-03-22 NIIBE Yutaka <gniibe@fsij.org> + + Fix test of t-cms-parser. + + commit e751d1fa01bd3e593eeccbeffb729176a59ca28c + * tests/t-cms-parser.c (one_file): Open the file with binary flag. + +2022-02-26 Werner Koch <wk@gnupg.org> + + ocsp: Accept a server not responding with a nonce. + + commit 24992a4a7a61d93759e1dbd104b845903d4589bf + * src/ocsp.h (struct ksba_ocsp_s): Remove good_nonce. + * src/ocsp.c (parse_response_extensions): No not set good_nonce. + (ksba_ocsp_parse_response): Simplify the check. + + ocsp: Fix detecting the right response item. + + commit c9cde18bc84a1b3bb7de22ca80264c418ffd0fee + * src/ocsp.c (ksba_ocsp_prepare_request): Store the value of the + integer. + +2021-12-22 NIIBE Yutaka <gniibe@fsij.org> + + build: Update for newer autoconf. + + commit 51b565054096926dc97fc2ebb72c7de05a127dff + * configure.ac (AC_PREREQ): Require >= 2.69. + (AC_HEADER_STDC): Remove. + +2021-11-29 NIIBE Yutaka <gniibe@fsij.org> + + Silence warning for ksba_isotime_t. + + commit 64ef3144abee7afbc93a87e960b9a79c7b43cfca + * src/time.c (_ksba_current_time): Let it return the result. + + Fix ksba.pc to use HTTPS for the URL. + + commit 4898212c705a49da0384ac8f1b44f2d6592a990e + * src/ksba.pc.in: Use https. + +2021-11-10 NIIBE Yutaka <gniibe@fsij.org> + + libtool: Link without -flat_namespace for macOS. + + commit 0d7a62c355ea18031daf00490da9f7c9f33683c3 + * m4/libtool.m4: Not setting 10.0 to MACOSX_DEPLOYMENT_TARGET when not + defined. Only specify -flat_namespace to linker for specific + (older) versions and hosts. + +2021-10-13 NIIBE Yutaka <gniibe@fsij.org> + + ASN.1 parser: Provide token table (no more %token-table). + + commit f3b7dd4167779f2694e932ad7c2adba98ff9a21d + * src/asn1-parse.y (%token-table): Remove. + (token_table): New. + (yylex): Use token_table. + +2021-09-22 Andreas Metzler <ametzler@bebt.de> + + build: Use automake primitives to install libksba.def. + + commit ce1de8cb2bcd712381f77519de4da87af42879a4 + * src/Makekefile.am: Do not use explicit $INSTALL to install + libksba.def, fixes windows parallel build error. + +2021-08-18 Werner Koch <wk@gnupg.org> + + Avoid warnings about NULL ptr deref in ASN.1 helpers. + + commit c242f31b6d520a7f87bf36782e4b5c8da7dc045d + * src/asn1-func.c (_ksba_asn_set_value): Add extra asserts. Fix the + VALTYPE_BOOL case, which is actually not in Libksba. + +2021-08-05 NIIBE Yutaka <gniibe@fsij.org> + + build: Simplify configure.ac. + + commit 379e787a965148fa5613ccd4e2b8c3c00feb45d9 + * configure.ac (AC_CHECK_HEADERS): Remove string.h. + (AC_CHECK_FUNCS): Remove memmove, strchr, strtol and strtoul. + 2021-06-10 Werner Koch <wk@gnupg.org> Release 1.6.0.
View file
_service:tar_scm:libksba-1.6.0.tar.bz2/Makefile.am -> _service:tar_scm:libksba-1.6.3.tar.bz2/Makefile.am
Changed
@@ -133,7 +133,7 @@ sign-release: +(set -e; \ - cd dist; \ + test $$(pwd | sed 's,.*/,,') = dist || cd dist; \ x=$$(grep '^RELEASE_ARCHIVE=' $$HOME/.gnupg-autogen.rc|cut -d= -f2);\ if -z "$$x" ; then \ echo "error: RELEASE_ARCHIVE missing in ~/.gnupg-autogen.rc">&2; \
View file
_service:tar_scm:libksba-1.6.0.tar.bz2/Makefile.in -> _service:tar_scm:libksba-1.6.3.tar.bz2/Makefile.in
Changed
@@ -111,6 +111,7 @@ $(top_srcdir)/gl/m4/gnulib.m4 \ $(top_srcdir)/gl/m4/valgrind-tests.m4 \ $(top_srcdir)/m4/autobuild.m4 \ + $(top_srcdir)/m4/ax_cc_for_build.m4 \ $(top_srcdir)/m4/ax_prog_bison.m4 $(top_srcdir)/m4/gcov.m4 \ $(top_srcdir)/m4/gpg-error.m4 $(top_srcdir)/m4/libtool.m4 \ $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \ @@ -272,6 +273,7 @@ ECHO_T = @ECHO_T@ EGREP = @EGREP@ EXEEXT = @EXEEXT@ +EXEEXT_FOR_BUILD = @EXEEXT_FOR_BUILD@ FGREP = @FGREP@ GCOV = @GCOV@ GENHTML = @GENHTML@ @@ -979,7 +981,7 @@ sign-release: +(set -e; \ - cd dist; \ + test $$(pwd | sed 's,.*/,,') = dist || cd dist; \ x=$$(grep '^RELEASE_ARCHIVE=' $$HOME/.gnupg-autogen.rc|cut -d= -f2);\ if -z "$$x" ; then \ echo "error: RELEASE_ARCHIVE missing in ~/.gnupg-autogen.rc">&2; \
View file
_service:tar_scm:libksba-1.6.0.tar.bz2/NEWS -> _service:tar_scm:libksba-1.6.3.tar.bz2/NEWS
Changed
@@ -1,3 +1,27 @@ +Noteworthy changes in version 1.6.3 (2022-12-06) C22/A14/R3 +------------------------------------------------ + + * Fix another integer overflow in the CRL parser. T6284 + + Release-info: https://dev.gnupg.org/T6304 + + +Noteworthy changes in version 1.6.2 (2022-10-07) C22/A14/R2 +------------------------------------------------ + + * Fix integer overflow in the CRL parser. rK4b7d9cd4a0 + + Release-info: https://dev.gnupg.org/T6230 + + +Noteworthy changes in version 1.6.1 (2022-09-16) C22/A14/R1 +------------------------------------------------ + + * Allow an OCSP server not to return the sent nonce. rK24992a4a7a + + Release-info: https://dev.gnupg.org/T6210 + + Noteworthy changes in version 1.6.0 (2021-06-10) C22/A14/R0 ------------------------------------------------
View file
_service:tar_scm:libksba-1.6.0.tar.bz2/aclocal.m4 -> _service:tar_scm:libksba-1.6.3.tar.bz2/aclocal.m4
Changed
@@ -1170,6 +1170,7 @@ m4_include(gl/m4/gnulib.m4) m4_include(gl/m4/valgrind-tests.m4) m4_include(m4/autobuild.m4) +m4_include(m4/ax_cc_for_build.m4) m4_include(m4/ax_prog_bison.m4) m4_include(m4/gcov.m4) m4_include(m4/gpg-error.m4)
View file
_service:tar_scm:libksba-1.6.0.tar.bz2/build-aux/config.guess -> _service:tar_scm:libksba-1.6.3.tar.bz2/build-aux/config.guess
Changed
@@ -1,12 +1,14 @@ #! /bin/sh # Attempt to guess a canonical system name. -# Copyright 1992-2016 Free Software Foundation, Inc. +# Copyright 1992-2022 Free Software Foundation, Inc. -timestamp='2016-05-15' +# shellcheck disable=SC2006,SC2268 # see below for rationale + +timestamp='2022-01-09' # This file is free software; you can redistribute it and/or modify it # under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 3 of the License, or +# the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, but @@ -15,7 +17,7 @@ # General Public License for more details. # # You should have received a copy of the GNU General Public License -# along with this program; if not, see <http://www.gnu.org/licenses/>. +# along with this program; if not, see <https://www.gnu.org/licenses/>. # # As a special exception to the GNU General Public License, if you # distribute this file as part of a program that contains a @@ -27,11 +29,19 @@ # Originally written by Per Bothner; maintained since 2000 by Ben Elliston. # # You can get the latest version of this script from: -# http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess +# https://git.savannah.gnu.org/cgit/config.git/plain/config.guess # # Please send patches to <config-patches@gnu.org>. +# The "shellcheck disable" line above the timestamp inhibits complaints +# about features and limitations of the classic Bourne shell that were +# superseded or lifted in POSIX. However, this script identifies a wide +# variety of pre-POSIX systems that do not have POSIX shells at all, and +# even some reasonably current systems (Solaris 10 as case-in-point) still +# have a pre-POSIX /bin/sh. + + me=`echo "$0" | sed -e 's,.*/,,'` usage="\ @@ -39,7 +49,7 @@ Output the configuration name of the system \`$me' is run on. -Operation modes: +Options: -h, --help print this help, then exit -t, --time-stamp print date of last modification, then exit -v, --version print version number, then exit @@ -50,7 +60,7 @@ GNU config.guess ($timestamp) Originally written by Per Bothner. -Copyright 1992-2016 Free Software Foundation, Inc. +Copyright 1992-2022 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." @@ -84,7 +94,8 @@ exit 1 fi -trap 'exit 1' 1 2 15 +# Just in case it came from the environment. +GUESS= # CC_FOR_BUILD -- compiler used by this script. Note that the use of a # compiler to aid in system detection is discouraged as it requires @@ -96,66 +107,90 @@ # Portable tmp directory creation inspired by the Autoconf team. -set_cc_for_build=' -trap "exitcode=\$?; (rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null) && exit \$exitcode" 0 ; -trap "rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null; exit 1" 1 2 13 15 ; -: ${TMPDIR=/tmp} ; - { tmp=`(umask 077 && mktemp -d "$TMPDIR/cgXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" ; } || - { test -n "$RANDOM" && tmp=$TMPDIR/cg$$-$RANDOM && (umask 077 && mkdir $tmp) ; } || - { tmp=$TMPDIR/cg-$$ && (umask 077 && mkdir $tmp) && echo "Warning: creating insecure temp directory" >&2 ; } || - { echo "$me: cannot create a temporary directory in $TMPDIR" >&2 ; exit 1 ; } ; -dummy=$tmp/dummy ; -tmpfiles="$dummy.c $dummy.o $dummy.rel $dummy" ; -case $CC_FOR_BUILD,$HOST_CC,$CC in - ,,) echo "int x;" > $dummy.c ; - for c in cc gcc c89 c99 ; do - if ($c -c -o $dummy.o $dummy.c) >/dev/null 2>&1 ; then - CC_FOR_BUILD="$c"; break ; - fi ; - done ; - if test x"$CC_FOR_BUILD" = x ; then - CC_FOR_BUILD=no_compiler_found ; - fi - ;; - ,,*) CC_FOR_BUILD=$CC ;; - ,*,*) CC_FOR_BUILD=$HOST_CC ;; -esac ; set_cc_for_build= ;' +tmp= +# shellcheck disable=SC2172 +trap 'test -z "$tmp" || rm -fr "$tmp"' 0 1 2 13 15 + +set_cc_for_build() { + # prevent multiple calls if $tmp is already set + test "$tmp" && return 0 + : "${TMPDIR=/tmp}" + # shellcheck disable=SC2039,SC3028 + { tmp=`(umask 077 && mktemp -d "$TMPDIR/cgXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" ; } || + { test -n "$RANDOM" && tmp=$TMPDIR/cg$$-$RANDOM && (umask 077 && mkdir "$tmp" 2>/dev/null) ; } || + { tmp=$TMPDIR/cg-$$ && (umask 077 && mkdir "$tmp" 2>/dev/null) && echo "Warning: creating insecure temp directory" >&2 ; } || + { echo "$me: cannot create a temporary directory in $TMPDIR" >&2 ; exit 1 ; } + dummy=$tmp/dummy + case ${CC_FOR_BUILD-},${HOST_CC-},${CC-} in + ,,) echo "int x;" > "$dummy.c" + for driver in cc gcc c89 c99 ; do + if ($driver -c -o "$dummy.o" "$dummy.c") >/dev/null 2>&1 ; then + CC_FOR_BUILD=$driver + break + fi + done + if test x"$CC_FOR_BUILD" = x ; then + CC_FOR_BUILD=no_compiler_found + fi + ;; + ,,*) CC_FOR_BUILD=$CC ;; + ,*,*) CC_FOR_BUILD=$HOST_CC ;; + esac +} # This is needed to find uname on a Pyramid OSx when run in the BSD universe. # (ghazi@noc.rutgers.edu 1994-08-24) -if (test -f /.attbin/uname) >/dev/null 2>&1 ; then +if test -f /.attbin/uname ; then PATH=$PATH:/.attbin ; export PATH fi UNAME_MACHINE=`(uname -m) 2>/dev/null` || UNAME_MACHINE=unknown UNAME_RELEASE=`(uname -r) 2>/dev/null` || UNAME_RELEASE=unknown -UNAME_SYSTEM=`(uname -s) 2>/dev/null` || UNAME_SYSTEM=unknown +UNAME_SYSTEM=`(uname -s) 2>/dev/null` || UNAME_SYSTEM=unknown UNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown -case "${UNAME_SYSTEM}" in +case $UNAME_SYSTEM in Linux|GNU|GNU/*) - # If the system lacks a compiler, then just pick glibc. - # We could probably try harder. - LIBC=gnu + LIBC=unknown - eval $set_cc_for_build - cat <<-EOF > $dummy.c + set_cc_for_build + cat <<-EOF > "$dummy.c" #include <features.h> #if defined(__UCLIBC__) LIBC=uclibc #elif defined(__dietlibc__) LIBC=dietlibc - #else + #elif defined(__GLIBC__) LIBC=gnu + #else + #include <stdarg.h> + /* First heuristic to detect musl libc. */ + #ifdef __DEFINED_va_list + LIBC=musl + #endif #endif EOF - eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^LIBC' | sed 's, ,,g'` + cc_set_libc=`$CC_FOR_BUILD -E "$dummy.c" 2>/dev/null | grep '^LIBC' | sed 's, ,,g'` + eval "$cc_set_libc" + + # Second heuristic to detect musl libc. + if "$LIBC" = unknown && + command -v ldd >/dev/null && + ldd --version 2>&1 | grep -q ^musl; then + LIBC=musl + fi + + # If the system lacks a compiler, then just pick glibc. + # We could probably try harder. + if "$LIBC" = unknown ; then + LIBC=gnu + fi ;; esac # Note: order is significant - the case branches are not exclusive. -case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in +case $UNAME_MACHINE:$UNAME_SYSTEM:$UNAME_RELEASE:$UNAME_VERSION in *:NetBSD:*:*) # NetBSD (nbsd) targets should (where applicable) match one or # more of the tuples: *-*-netbsdelf*, *-*-netbsdaout*, @@ -167,32 +202,32 @@ # # Note: NetBSD doesn't particularly care about the vendor # portion of the name. We always set it to "unknown". - sysctl="sysctl -n hw.machine_arch" UNAME_MACHINE_ARCH=`(uname -p 2>/dev/null || \ - /sbin/$sysctl 2>/dev/null || \ - /usr/sbin/$sysctl 2>/dev/null || \ + /sbin/sysctl -n hw.machine_arch 2>/dev/null || \ + /usr/sbin/sysctl -n hw.machine_arch 2>/dev/null || \ echo unknown)` - case "${UNAME_MACHINE_ARCH}" in + case $UNAME_MACHINE_ARCH in + aarch64eb) machine=aarch64_be-unknown ;; armeb) machine=armeb-unknown ;; arm*) machine=arm-unknown ;; sh3el) machine=shl-unknown ;; sh3eb) machine=sh-unknown ;; sh5el) machine=sh5le-unknown ;; earmv*) - arch=`echo ${UNAME_MACHINE_ARCH} | sed -e 's,^e\(armv0-9\).*$,\1,'` - endian=`echo ${UNAME_MACHINE_ARCH} | sed -ne 's,^.*\(eb\)$,\1,p'` + arch=`echo "$UNAME_MACHINE_ARCH" | sed -e 's,^e\(armv0-9\).*$,\1,'` + endian=`echo "$UNAME_MACHINE_ARCH" | sed -ne 's,^.*\(eb\)$,\1,p'` machine=${arch}${endian}-unknown ;; - *) machine=${UNAME_MACHINE_ARCH}-unknown ;; + *) machine=$UNAME_MACHINE_ARCH-unknown ;; esac # The Operating System including object format, if it has switched # to ELF recently (or will in the future) and ABI. - case "${UNAME_MACHINE_ARCH}" in + case $UNAME_MACHINE_ARCH in earm*) os=netbsdelf ;; arm*|i386|m68k|ns32k|sh3*|sparc|vax) - eval $set_cc_for_build + set_cc_for_build if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \ | grep -q __ELF__ then @@ -208,10 +243,10 @@ ;; esac # Determine ABI tags. - case "${UNAME_MACHINE_ARCH}" in + case $UNAME_MACHINE_ARCH in earm*) expr='s/^earmv0-9/-eabi/;s/eb$//' - abi=`echo ${UNAME_MACHINE_ARCH} | sed -e "$expr"` + abi=`echo "$UNAME_MACHINE_ARCH" | sed -e "$expr"` ;; esac # The OS release @@ -219,47 +254,68 @@ # thus, need a distinct triplet. However, they do not need # kernel version information, so it can be replaced with a # suitable tag, in the style of linux-gnu. - case "${UNAME_VERSION}" in + case $UNAME_VERSION in Debian*) release='-gnu' ;; *) - release=`echo ${UNAME_RELEASE} | sed -e 's/-_.*//' | cut -d. -f1,2` + release=`echo "$UNAME_RELEASE" | sed -e 's/-_.*//' | cut -d. -f1,2` ;; esac # Since CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM: # contains redundant information, the shorter form: # CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used. - echo "${machine}-${os}${release}${abi}" - exit ;; + GUESS=$machine-${os}${release}${abi-} + ;; *:Bitrig:*:*) UNAME_MACHINE_ARCH=`arch | sed 's/Bitrig.//'` - echo ${UNAME_MACHINE_ARCH}-unknown-bitrig${UNAME_RELEASE} - exit ;; + GUESS=$UNAME_MACHINE_ARCH-unknown-bitrig$UNAME_RELEASE + ;; *:OpenBSD:*:*) UNAME_MACHINE_ARCH=`arch | sed 's/OpenBSD.//'` - echo ${UNAME_MACHINE_ARCH}-unknown-openbsd${UNAME_RELEASE} - exit ;; + GUESS=$UNAME_MACHINE_ARCH-unknown-openbsd$UNAME_RELEASE + ;; + *:SecBSD:*:*) + UNAME_MACHINE_ARCH=`arch | sed 's/SecBSD.//'` + GUESS=$UNAME_MACHINE_ARCH-unknown-secbsd$UNAME_RELEASE + ;; *:LibertyBSD:*:*) UNAME_MACHINE_ARCH=`arch | sed 's/^.*BSD\.//'` - echo ${UNAME_MACHINE_ARCH}-unknown-libertybsd${UNAME_RELEASE} - exit ;; + GUESS=$UNAME_MACHINE_ARCH-unknown-libertybsd$UNAME_RELEASE + ;; + *:MidnightBSD:*:*) + GUESS=$UNAME_MACHINE-unknown-midnightbsd$UNAME_RELEASE + ;; *:ekkoBSD:*:*) - echo ${UNAME_MACHINE}-unknown-ekkobsd${UNAME_RELEASE} - exit ;; + GUESS=$UNAME_MACHINE-unknown-ekkobsd$UNAME_RELEASE + ;; *:SolidBSD:*:*) - echo ${UNAME_MACHINE}-unknown-solidbsd${UNAME_RELEASE} - exit ;; + GUESS=$UNAME_MACHINE-unknown-solidbsd$UNAME_RELEASE + ;; + *:OS108:*:*) + GUESS=$UNAME_MACHINE-unknown-os108_$UNAME_RELEASE + ;; macppc:MirBSD:*:*) - echo powerpc-unknown-mirbsd${UNAME_RELEASE} - exit ;; + GUESS=powerpc-unknown-mirbsd$UNAME_RELEASE + ;; *:MirBSD:*:*) - echo ${UNAME_MACHINE}-unknown-mirbsd${UNAME_RELEASE} - exit ;; + GUESS=$UNAME_MACHINE-unknown-mirbsd$UNAME_RELEASE + ;; *:Sortix:*:*) - echo ${UNAME_MACHINE}-unknown-sortix - exit ;; + GUESS=$UNAME_MACHINE-unknown-sortix + ;; + *:Twizzler:*:*) + GUESS=$UNAME_MACHINE-unknown-twizzler + ;; + *:Redox:*:*) + GUESS=$UNAME_MACHINE-unknown-redox + ;; + mips:OSF1:*.*) + GUESS=mips-dec-osf1 + ;; alpha:OSF1:*:*) + # Reset EXIT trap before exiting to avoid spurious non-zero exit code. + trap '' 0 case $UNAME_RELEASE in *4.0) UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'` @@ -273,7 +329,7 @@ # covers most systems running today. This code pipes the CPU # types through head -n 1, so we only detect the type of CPU 0. ALPHA_CPU_TYPE=`/usr/sbin/psrinfo -v | sed -n -e 's/^ The alpha \(.*\) processor.*$/\1/p' | head -n 1` - case "$ALPHA_CPU_TYPE" in + case $ALPHA_CPU_TYPE in "EV4 (21064)") UNAME_MACHINE=alpha ;; "EV4.5 (21064)") @@ -310,126 +366,121 @@ # A Tn.n version is a released field test version. # A Xn.n version is an unreleased experimental baselevel. # 1.2 uses "1.2" for uname -r. - echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^PVTX//' | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz` - # Reset EXIT trap before exiting to avoid spurious non-zero exit code. - exitcode=$? - trap '' 0 - exit $exitcode ;; - Alpha\ *:Windows_NT*:*) - # How do we know it's Interix rather than the generic POSIX subsystem? - # Should we change UNAME_MACHINE based on the output of uname instead - # of the specific Alpha model? - echo alpha-pc-interix - exit ;; - 21064:Windows_NT:50:3) - echo alpha-dec-winnt3.5 - exit ;; + OSF_REL=`echo "$UNAME_RELEASE" | sed -e 's/^PVTX//' | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz` + GUESS=$UNAME_MACHINE-dec-osf$OSF_REL + ;; Amiga*:UNIX_System_V:4.0:*) - echo m68k-unknown-sysv4 - exit ;; + GUESS=m68k-unknown-sysv4 + ;; *:AamigaOoSs:*:*) - echo ${UNAME_MACHINE}-unknown-amigaos - exit ;; + GUESS=$UNAME_MACHINE-unknown-amigaos + ;; *:MmorphOoSs:*:*) - echo ${UNAME_MACHINE}-unknown-morphos - exit ;; + GUESS=$UNAME_MACHINE-unknown-morphos + ;; *:OS/390:*:*) - echo i370-ibm-openedition - exit ;; + GUESS=i370-ibm-openedition + ;; *:z/VM:*:*) - echo s390-ibm-zvmoe - exit ;; + GUESS=s390-ibm-zvmoe + ;; *:OS400:*:*) - echo powerpc-ibm-os400 - exit ;; + GUESS=powerpc-ibm-os400 + ;; arm:RISC*:1.012*:*|arm:riscix:1.012*:*) - echo arm-acorn-riscix${UNAME_RELEASE} - exit ;; + GUESS=arm-acorn-riscix$UNAME_RELEASE + ;; arm*:riscos:*:*|arm*:RISCOS:*:*) - echo arm-unknown-riscos - exit ;; + GUESS=arm-unknown-riscos + ;; SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*) - echo hppa1.1-hitachi-hiuxmpp - exit ;; + GUESS=hppa1.1-hitachi-hiuxmpp + ;; Pyramid*:OSx*:*:* | MIS*:OSx*:*:* | MIS*:SMP_DC-OSx*:*:*) # akee@wpdis03.wpafb.af.mil (Earle F. Ake) contributed MIS and NILE. - if test "`(/bin/universe) 2>/dev/null`" = att ; then - echo pyramid-pyramid-sysv3 - else - echo pyramid-pyramid-bsd - fi - exit ;; + case `(/bin/universe) 2>/dev/null` in + att) GUESS=pyramid-pyramid-sysv3 ;; + *) GUESS=pyramid-pyramid-bsd ;; + esac + ;; NILE*:*:*:dcosx) - echo pyramid-pyramid-svr4 - exit ;; + GUESS=pyramid-pyramid-svr4 + ;; DRS?6000:unix:4.0:6*) - echo sparc-icl-nx6 - exit ;; + GUESS=sparc-icl-nx6 + ;; DRS?6000:UNIX_SV:4.2*:7* | DRS?6000:isis:4.2*:7*) case `/usr/bin/uname -p` in - sparc) echo sparc-icl-nx7; exit ;; - esac ;; + sparc) GUESS=sparc-icl-nx7 ;; + esac + ;; s390x:SunOS:*:*) - echo ${UNAME_MACHINE}-ibm-solaris2`echo ${UNAME_RELEASE}|sed -e 's/^.*//'` - exit ;; + SUN_REL=`echo "$UNAME_RELEASE" | sed -e 's/^.*//'` + GUESS=$UNAME_MACHINE-ibm-solaris2$SUN_REL + ;; sun4H:SunOS:5.*:*) - echo sparc-hal-solaris2`echo ${UNAME_RELEASE}|sed -e 's/^.*//'` - exit ;; + SUN_REL=`echo "$UNAME_RELEASE" | sed -e 's/^.*//'` + GUESS=sparc-hal-solaris2$SUN_REL + ;; sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*) - echo sparc-sun-solaris2`echo ${UNAME_RELEASE}|sed -e 's/^.*//'` - exit ;; + SUN_REL=`echo "$UNAME_RELEASE" | sed -e 's/^.*//'` + GUESS=sparc-sun-solaris2$SUN_REL + ;; i86pc:AuroraUX:5.*:* | i86xen:AuroraUX:5.*:*) - echo i386-pc-auroraux${UNAME_RELEASE} - exit ;; + GUESS=i386-pc-auroraux$UNAME_RELEASE + ;; i86pc:SunOS:5.*:* | i86xen:SunOS:5.*:*) - eval $set_cc_for_build + set_cc_for_build SUN_ARCH=i386 # If there is a compiler, see if it is configured for 64-bit objects. # Note that the Sun cc does not turn __LP64__ into 1 like gcc does. # This test works for both compilers. - if "$CC_FOR_BUILD" != no_compiler_found ; then + if test "$CC_FOR_BUILD" != no_compiler_found; then if (echo '#ifdef __amd64'; echo IS_64BIT_ARCH; echo '#endif') | \ - (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | \ + (CCOPTS="" $CC_FOR_BUILD -m64 -E - 2>/dev/null) | \ grep IS_64BIT_ARCH >/dev/null then SUN_ARCH=x86_64 fi fi - echo ${SUN_ARCH}-pc-solaris2`echo ${UNAME_RELEASE}|sed -e 's/^.*//'` - exit ;; + SUN_REL=`echo "$UNAME_RELEASE" | sed -e 's/^.*//'` + GUESS=$SUN_ARCH-pc-solaris2$SUN_REL + ;; sun4*:SunOS:6*:*) # According to config.sub, this is the proper way to canonicalize # SunOS6. Hard to guess exactly what SunOS6 will be like, but # it's likely to be more like Solaris than SunOS4. - echo sparc-sun-solaris3`echo ${UNAME_RELEASE}|sed -e 's/^.*//'` - exit ;; + SUN_REL=`echo "$UNAME_RELEASE" | sed -e 's/^.*//'` + GUESS=sparc-sun-solaris3$SUN_REL + ;; sun4*:SunOS:*:*) - case "`/usr/bin/arch -k`" in + case `/usr/bin/arch -k` in Series*|S4*) UNAME_RELEASE=`uname -v` ;; esac # Japanese Language versions have a version number like `4.1.3-JL'. - echo sparc-sun-sunos`echo ${UNAME_RELEASE}|sed -e 's/-/_/'` - exit ;; + SUN_REL=`echo "$UNAME_RELEASE" | sed -e 's/-/_/'` + GUESS=sparc-sun-sunos$SUN_REL + ;; sun3*:SunOS:*:*) - echo m68k-sun-sunos${UNAME_RELEASE} - exit ;; + GUESS=m68k-sun-sunos$UNAME_RELEASE + ;; sun*:*:4.2BSD:*) UNAME_RELEASE=`(sed 1q /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null` - test "x${UNAME_RELEASE}" = x && UNAME_RELEASE=3 - case "`/bin/arch`" in + test "x$UNAME_RELEASE" = x && UNAME_RELEASE=3 + case `/bin/arch` in sun3) - echo m68k-sun-sunos${UNAME_RELEASE} + GUESS=m68k-sun-sunos$UNAME_RELEASE ;; sun4) - echo sparc-sun-sunos${UNAME_RELEASE} + GUESS=sparc-sun-sunos$UNAME_RELEASE ;; esac - exit ;; + ;; aushp:SunOS:*:*) - echo sparc-auspex-sunos${UNAME_RELEASE} - exit ;; + GUESS=sparc-auspex-sunos$UNAME_RELEASE + ;; # The situation for MiNT is a little confusing. The machine name # can be virtually everything (everything which is not # "atarist" or "atariste" at least should have a processor @@ -439,44 +490,44 @@ # MiNT. But MiNT is downward compatible to TOS, so this should # be no problem. atariste:*MiNT:*:* | atariste:*mint:*:* | atariste:*TOS:*:*) - echo m68k-atari-mint${UNAME_RELEASE} - exit ;; + GUESS=m68k-atari-mint$UNAME_RELEASE + ;; atari*:*MiNT:*:* | atari*:*mint:*:* | atariste:*TOS:*:*) - echo m68k-atari-mint${UNAME_RELEASE} - exit ;; + GUESS=m68k-atari-mint$UNAME_RELEASE + ;; *falcon*:*MiNT:*:* | *falcon*:*mint:*:* | *falcon*:*TOS:*:*) - echo m68k-atari-mint${UNAME_RELEASE} - exit ;; + GUESS=m68k-atari-mint$UNAME_RELEASE + ;; milan*:*MiNT:*:* | milan*:*mint:*:* | *milan*:*TOS:*:*) - echo m68k-milan-mint${UNAME_RELEASE} - exit ;; + GUESS=m68k-milan-mint$UNAME_RELEASE + ;; hades*:*MiNT:*:* | hades*:*mint:*:* | *hades*:*TOS:*:*) - echo m68k-hades-mint${UNAME_RELEASE} - exit ;; + GUESS=m68k-hades-mint$UNAME_RELEASE + ;; *:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*) - echo m68k-unknown-mint${UNAME_RELEASE} - exit ;; + GUESS=m68k-unknown-mint$UNAME_RELEASE + ;; m68k:machten:*:*) - echo m68k-apple-machten${UNAME_RELEASE} - exit ;; + GUESS=m68k-apple-machten$UNAME_RELEASE + ;; powerpc:machten:*:*) - echo powerpc-apple-machten${UNAME_RELEASE} - exit ;; + GUESS=powerpc-apple-machten$UNAME_RELEASE + ;; RISC*:Mach:*:*) - echo mips-dec-mach_bsd4.3 - exit ;; + GUESS=mips-dec-mach_bsd4.3 + ;; RISC*:ULTRIX:*:*) - echo mips-dec-ultrix${UNAME_RELEASE} - exit ;; + GUESS=mips-dec-ultrix$UNAME_RELEASE + ;; VAX*:ULTRIX*:*:*) - echo vax-dec-ultrix${UNAME_RELEASE} - exit ;; + GUESS=vax-dec-ultrix$UNAME_RELEASE + ;; 2020:CLIX:*:* | 2430:CLIX:*:*) - echo clipper-intergraph-clix${UNAME_RELEASE} - exit ;; + GUESS=clipper-intergraph-clix$UNAME_RELEASE + ;; mips:*:*:UMIPS | mips:*:*:RISCos) - eval $set_cc_for_build - sed 's/^ //' << EOF >$dummy.c + set_cc_for_build + sed 's/^ //' << EOF > "$dummy.c" #ifdef __cplusplus #include <stdio.h> /* for printf() prototype */ int main (int argc, char *argv) { @@ -485,95 +536,96 @@ #endif #if defined (host_mips) && defined (MIPSEB) #if defined (SYSTYPE_SYSV) - printf ("mips-mips-riscos%ssysv\n", argv1); exit (0); + printf ("mips-mips-riscos%ssysv\\n", argv1); exit (0); #endif #if defined (SYSTYPE_SVR4) - printf ("mips-mips-riscos%ssvr4\n", argv1); exit (0); + printf ("mips-mips-riscos%ssvr4\\n", argv1); exit (0); #endif #if defined (SYSTYPE_BSD43) || defined(SYSTYPE_BSD) - printf ("mips-mips-riscos%sbsd\n", argv1); exit (0); + printf ("mips-mips-riscos%sbsd\\n", argv1); exit (0); #endif #endif exit (-1); } EOF - $CC_FOR_BUILD -o $dummy $dummy.c && - dummyarg=`echo "${UNAME_RELEASE}" | sed -n 's/\(0-9*\).*/\1/p'` && - SYSTEM_NAME=`$dummy $dummyarg` && + $CC_FOR_BUILD -o "$dummy" "$dummy.c" && + dummyarg=`echo "$UNAME_RELEASE" | sed -n 's/\(0-9*\).*/\1/p'` && + SYSTEM_NAME=`"$dummy" "$dummyarg"` && { echo "$SYSTEM_NAME"; exit; } - echo mips-mips-riscos${UNAME_RELEASE} - exit ;; + GUESS=mips-mips-riscos$UNAME_RELEASE + ;; Motorola:PowerMAX_OS:*:*) - echo powerpc-motorola-powermax - exit ;; + GUESS=powerpc-motorola-powermax + ;; Motorola:*:4.3:PL8-*) - echo powerpc-harris-powermax - exit ;; + GUESS=powerpc-harris-powermax + ;; Night_Hawk:*:*:PowerMAX_OS | Synergy:PowerMAX_OS:*:*) - echo powerpc-harris-powermax - exit ;; + GUESS=powerpc-harris-powermax + ;; Night_Hawk:Power_UNIX:*:*) - echo powerpc-harris-powerunix - exit ;; + GUESS=powerpc-harris-powerunix + ;; m88k:CX/UX:7*:*) - echo m88k-harris-cxux7 - exit ;; + GUESS=m88k-harris-cxux7 + ;; m88k:*:4*:R4*) - echo m88k-motorola-sysv4 - exit ;; + GUESS=m88k-motorola-sysv4 + ;; m88k:*:3*:R3*) - echo m88k-motorola-sysv3 - exit ;; + GUESS=m88k-motorola-sysv3 + ;; AViiON:dgux:*:*) # DG/UX returns AViiON for all architectures UNAME_PROCESSOR=`/usr/bin/uname -p` - if $UNAME_PROCESSOR = mc88100 || $UNAME_PROCESSOR = mc88110 + if test "$UNAME_PROCESSOR" = mc88100 || test "$UNAME_PROCESSOR" = mc88110 then - if ${TARGET_BINARY_INTERFACE}x = m88kdguxelfx || \ - ${TARGET_BINARY_INTERFACE}x = x + if test "$TARGET_BINARY_INTERFACE"x = m88kdguxelfx || \ + test "$TARGET_BINARY_INTERFACE"x = x then - echo m88k-dg-dgux${UNAME_RELEASE} + GUESS=m88k-dg-dgux$UNAME_RELEASE else - echo m88k-dg-dguxbcs${UNAME_RELEASE} + GUESS=m88k-dg-dguxbcs$UNAME_RELEASE fi else - echo i586-dg-dgux${UNAME_RELEASE} + GUESS=i586-dg-dgux$UNAME_RELEASE fi - exit ;; + ;; M88*:DolphinOS:*:*) # DolphinOS (SVR3) - echo m88k-dolphin-sysv3 - exit ;; + GUESS=m88k-dolphin-sysv3 + ;; M88*:*:R3*:*) # Delta 88k system running SVR3 - echo m88k-motorola-sysv3 - exit ;; + GUESS=m88k-motorola-sysv3 + ;; XD88*:*:*:*) # Tektronix XD88 system running UTekV (SVR3) - echo m88k-tektronix-sysv3 - exit ;; + GUESS=m88k-tektronix-sysv3 + ;; Tek430-90-9:UTek:*:*) # Tektronix 4300 system running UTek (BSD) - echo m68k-tektronix-bsd - exit ;; + GUESS=m68k-tektronix-bsd + ;; *:IRIX*:*:*) - echo mips-sgi-irix`echo ${UNAME_RELEASE}|sed -e 's/-/_/g'` - exit ;; + IRIX_REL=`echo "$UNAME_RELEASE" | sed -e 's/-/_/g'` + GUESS=mips-sgi-irix$IRIX_REL + ;; ????????:AIX?:12.1:2) # AIX 2.2.1 or AIX 2.1.1 is RT/PC AIX. - echo romp-ibm-aix # uname -m gives an 8 hex-code CPU id - exit ;; # Note that: echo "'`uname -s`'" gives 'AIX ' + GUESS=romp-ibm-aix # uname -m gives an 8 hex-code CPU id + ;; # Note that: echo "'`uname -s`'" gives 'AIX ' i*86:AIX:*:*) - echo i386-ibm-aix - exit ;; + GUESS=i386-ibm-aix + ;; ia64:AIX:*:*) - if -x /usr/bin/oslevel ; then + if test -x /usr/bin/oslevel ; then IBM_REV=`/usr/bin/oslevel` else - IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE} + IBM_REV=$UNAME_VERSION.$UNAME_RELEASE fi - echo ${UNAME_MACHINE}-ibm-aix${IBM_REV} - exit ;; + GUESS=$UNAME_MACHINE-ibm-aix$IBM_REV + ;; *:AIX:2:3) if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then - eval $set_cc_for_build - sed 's/^ //' << EOF >$dummy.c + set_cc_for_build + sed 's/^ //' << EOF > "$dummy.c" #include <sys/systemcfg.h> main() @@ -584,77 +636,77 @@ exit(0); } EOF - if $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy` + if $CC_FOR_BUILD -o "$dummy" "$dummy.c" && SYSTEM_NAME=`"$dummy"` then - echo "$SYSTEM_NAME" + GUESS=$SYSTEM_NAME else - echo rs6000-ibm-aix3.2.5 + GUESS=rs6000-ibm-aix3.2.5 fi elif grep bos324 /usr/include/stdio.h >/dev/null 2>&1; then - echo rs6000-ibm-aix3.2.4 + GUESS=rs6000-ibm-aix3.2.4 else - echo rs6000-ibm-aix3.2 + GUESS=rs6000-ibm-aix3.2 fi - exit ;; + ;; *:AIX:*:4567) IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | sed 1q | awk '{ print $1 }'` - if /usr/sbin/lsattr -El ${IBM_CPU_ID} | grep ' POWER' >/dev/null 2>&1; then + if /usr/sbin/lsattr -El "$IBM_CPU_ID" | grep ' POWER' >/dev/null 2>&1; then IBM_ARCH=rs6000 else IBM_ARCH=powerpc fi - if -x /usr/bin/lslpp ; then - IBM_REV=`/usr/bin/lslpp -Lqc bos.rte.libc | + if test -x /usr/bin/lslpp ; then + IBM_REV=`/usr/bin/lslpp -Lqc bos.rte.libc | \ awk -F: '{ print $3 }' | sed s/0-9*$/0/` else - IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE} + IBM_REV=$UNAME_VERSION.$UNAME_RELEASE fi - echo ${IBM_ARCH}-ibm-aix${IBM_REV} - exit ;; + GUESS=$IBM_ARCH-ibm-aix$IBM_REV + ;; *:AIX:*:*) - echo rs6000-ibm-aix - exit ;; - ibmrt:4.4BSD:*|romp-ibm:BSD:*) - echo romp-ibm-bsd4.4 - exit ;; + GUESS=rs6000-ibm-aix + ;; + ibmrt:4.4BSD:*|romp-ibm:4.4BSD:*) + GUESS=romp-ibm-bsd4.4 + ;; ibmrt:*BSD:*|romp-ibm:BSD:*) # covers RT/PC BSD and - echo romp-ibm-bsd${UNAME_RELEASE} # 4.3 with uname added to - exit ;; # report: romp-ibm BSD 4.3 + GUESS=romp-ibm-bsd$UNAME_RELEASE # 4.3 with uname added to + ;; # report: romp-ibm BSD 4.3 *:BOSX:*:*) - echo rs6000-bull-bosx - exit ;; + GUESS=rs6000-bull-bosx + ;; DPX/2?00:B.O.S.:*:*) - echo m68k-bull-sysv3 - exit ;; + GUESS=m68k-bull-sysv3 + ;; 9000/34??:4.3bsd:1.*:*) - echo m68k-hp-bsd - exit ;; + GUESS=m68k-hp-bsd + ;; hp300:4.4BSD:*:* | 9000/34??:4.3bsd:2.*:*) - echo m68k-hp-bsd4.4 - exit ;; + GUESS=m68k-hp-bsd4.4 + ;; 9000/34678??:HP-UX:*:*) - HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/^.*.0B*//'` - case "${UNAME_MACHINE}" in - 9000/31? ) HP_ARCH=m68000 ;; - 9000/34?? ) HP_ARCH=m68k ;; + HPUX_REV=`echo "$UNAME_RELEASE" | sed -e 's/^.*.0B*//'` + case $UNAME_MACHINE in + 9000/31?) HP_ARCH=m68000 ;; + 9000/34??) HP_ARCH=m68k ;; 9000/6780-90-9) - if -x /usr/bin/getconf ; then + if test -x /usr/bin/getconf; then sc_cpu_version=`/usr/bin/getconf SC_CPU_VERSION 2>/dev/null` sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null` - case "${sc_cpu_version}" in + case $sc_cpu_version in 523) HP_ARCH=hppa1.0 ;; # CPU_PA_RISC1_0 528) HP_ARCH=hppa1.1 ;; # CPU_PA_RISC1_1 532) # CPU_PA_RISC2_0 - case "${sc_kernel_bits}" in + case $sc_kernel_bits in 32) HP_ARCH=hppa2.0n ;; 64) HP_ARCH=hppa2.0w ;; '') HP_ARCH=hppa2.0 ;; # HP-UX 10.20 esac ;; esac fi - if "${HP_ARCH}" = "" ; then - eval $set_cc_for_build - sed 's/^ //' << EOF >$dummy.c + if test "$HP_ARCH" = ""; then + set_cc_for_build + sed 's/^ //' << EOF > "$dummy.c" #define _HPUX_SOURCE #include <stdlib.h> @@ -687,13 +739,13 @@ exit (0); } EOF - (CCOPTS="" $CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null) && HP_ARCH=`$dummy` + (CCOPTS="" $CC_FOR_BUILD -o "$dummy" "$dummy.c" 2>/dev/null) && HP_ARCH=`"$dummy"` test -z "$HP_ARCH" && HP_ARCH=hppa fi ;; esac - if ${HP_ARCH} = hppa2.0w + if test "$HP_ARCH" = hppa2.0w then - eval $set_cc_for_build + set_cc_for_build # hppa2.0w-hp-hpux* has a 64-bit kernel and a compiler generating # 32-bit code. hppa64-hp-hpux* has the same kernel and a compiler @@ -712,15 +764,15 @@ HP_ARCH=hppa64 fi fi - echo ${HP_ARCH}-hp-hpux${HPUX_REV} - exit ;; + GUESS=$HP_ARCH-hp-hpux$HPUX_REV + ;; ia64:HP-UX:*:*) - HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/^.*.0B*//'` - echo ia64-hp-hpux${HPUX_REV} - exit ;; + HPUX_REV=`echo "$UNAME_RELEASE" | sed -e 's/^.*.0B*//'` + GUESS=ia64-hp-hpux$HPUX_REV + ;; 3050*:HI-UX:*:*) - eval $set_cc_for_build - sed 's/^ //' << EOF >$dummy.c + set_cc_for_build + sed 's/^ //' << EOF > "$dummy.c" #include <unistd.h> int main () @@ -745,38 +797,38 @@ exit (0); } EOF - $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy` && + $CC_FOR_BUILD -o "$dummy" "$dummy.c" && SYSTEM_NAME=`"$dummy"` && { echo "$SYSTEM_NAME"; exit; } - echo unknown-hitachi-hiuxwe2 - exit ;; - 9000/7??:4.3bsd:*:* | 9000/8?79:4.3bsd:*:* ) - echo hppa1.1-hp-bsd - exit ;; + GUESS=unknown-hitachi-hiuxwe2 + ;; + 9000/7??:4.3bsd:*:* | 9000/8?79:4.3bsd:*:*) + GUESS=hppa1.1-hp-bsd + ;; 9000/8??:4.3bsd:*:*) - echo hppa1.0-hp-bsd - exit ;; + GUESS=hppa1.0-hp-bsd + ;; *9??*:MPE/iX:*:* | *3000*:MPE/iX:*:*) - echo hppa1.0-hp-mpeix - exit ;; - hp7??:OSF1:*:* | hp8?79:OSF1:*:* ) - echo hppa1.1-hp-osf - exit ;; + GUESS=hppa1.0-hp-mpeix + ;; + hp7??:OSF1:*:* | hp8?79:OSF1:*:*) + GUESS=hppa1.1-hp-osf + ;; hp8??:OSF1:*:*) - echo hppa1.0-hp-osf - exit ;; + GUESS=hppa1.0-hp-osf + ;; i*86:OSF1:*:*) - if -x /usr/sbin/sysversion ; then - echo ${UNAME_MACHINE}-unknown-osf1mk + if test -x /usr/sbin/sysversion ; then + GUESS=$UNAME_MACHINE-unknown-osf1mk else - echo ${UNAME_MACHINE}-unknown-osf1 + GUESS=$UNAME_MACHINE-unknown-osf1 fi - exit ;; + ;; parisc*:Lites*:*:*) - echo hppa1.1-hp-lites - exit ;; + GUESS=hppa1.1-hp-lites + ;; C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*) - echo c1-convex-bsd - exit ;; + GUESS=c1-convex-bsd + ;; C2*:ConvexOS:*:* | convex:ConvexOS:C2*:*) if getsysinfo -f scalar_acc then echo c32-convex-bsd @@ -784,139 +836,148 @@ fi exit ;; C34*:ConvexOS:*:* | convex:ConvexOS:C34*:*) - echo c34-convex-bsd - exit ;; + GUESS=c34-convex-bsd + ;; C38*:ConvexOS:*:* | convex:ConvexOS:C38*:*) - echo c38-convex-bsd - exit ;; + GUESS=c38-convex-bsd + ;; C4*:ConvexOS:*:* | convex:ConvexOS:C4*:*) - echo c4-convex-bsd - exit ;; + GUESS=c4-convex-bsd + ;; CRAY*Y-MP:*:*:*) - echo ymp-cray-unicos${UNAME_RELEASE} | sed -e 's/\.^.*$/.X/' - exit ;; + CRAY_REL=`echo "$UNAME_RELEASE" | sed -e 's/\.^.*$/.X/'` + GUESS=ymp-cray-unicos$CRAY_REL + ;; CRAY*A-Z90:*:*:*) - echo ${UNAME_MACHINE}-cray-unicos${UNAME_RELEASE} \ + echo "$UNAME_MACHINE"-cray-unicos"$UNAME_RELEASE" \ | sed -e 's/CRAY.*\(A-Z90\)/\1/' \ -e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/ \ -e 's/\.^.*$/.X/' exit ;; CRAY*TS:*:*:*) - echo t90-cray-unicos${UNAME_RELEASE} | sed -e 's/\.^.*$/.X/' - exit ;; + CRAY_REL=`echo "$UNAME_RELEASE" | sed -e 's/\.^.*$/.X/'` + GUESS=t90-cray-unicos$CRAY_REL + ;; CRAY*T3E:*:*:*) - echo alphaev5-cray-unicosmk${UNAME_RELEASE} | sed -e 's/\.^.*$/.X/' - exit ;; + CRAY_REL=`echo "$UNAME_RELEASE" | sed -e 's/\.^.*$/.X/'` + GUESS=alphaev5-cray-unicosmk$CRAY_REL + ;; CRAY*SV1:*:*:*) - echo sv1-cray-unicos${UNAME_RELEASE} | sed -e 's/\.^.*$/.X/' - exit ;; + CRAY_REL=`echo "$UNAME_RELEASE" | sed -e 's/\.^.*$/.X/'` + GUESS=sv1-cray-unicos$CRAY_REL + ;; *:UNICOS/mp:*:*) - echo craynv-cray-unicosmp${UNAME_RELEASE} | sed -e 's/\.^.*$/.X/' - exit ;; + CRAY_REL=`echo "$UNAME_RELEASE" | sed -e 's/\.^.*$/.X/'` + GUESS=craynv-cray-unicosmp$CRAY_REL + ;; F3001:UNIX_System_V:*:* | F700:UNIX_System_V:*:*) FUJITSU_PROC=`uname -m | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz` FUJITSU_SYS=`uname -p | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz | sed -e 's/\///'` - FUJITSU_REL=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'` - echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}" - exit ;; + FUJITSU_REL=`echo "$UNAME_RELEASE" | sed -e 's/ /_/'` + GUESS=${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL} + ;; 5000:UNIX_System_V:4.*:*) FUJITSU_SYS=`uname -p | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz | sed -e 's/\///'` - FUJITSU_REL=`echo ${UNAME_RELEASE} | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz | sed -e 's/ /_/'` - echo "sparc-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}" - exit ;; + FUJITSU_REL=`echo "$UNAME_RELEASE" | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz | sed -e 's/ /_/'` + GUESS=sparc-fujitsu-${FUJITSU_SYS}${FUJITSU_REL} + ;; i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*) - echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE} - exit ;; + GUESS=$UNAME_MACHINE-pc-bsdi$UNAME_RELEASE + ;; sparc*:BSD/OS:*:*) - echo sparc-unknown-bsdi${UNAME_RELEASE} - exit ;; + GUESS=sparc-unknown-bsdi$UNAME_RELEASE + ;; *:BSD/OS:*:*) - echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE} - exit ;; + GUESS=$UNAME_MACHINE-unknown-bsdi$UNAME_RELEASE + ;; + arm:FreeBSD:*:*) + UNAME_PROCESSOR=`uname -p` + set_cc_for_build + if echo __ARM_PCS_VFP | $CC_FOR_BUILD -E - 2>/dev/null \ + | grep -q __ARM_PCS_VFP + then + FREEBSD_REL=`echo "$UNAME_RELEASE" | sed -e 's/-(.*//'` + GUESS=$UNAME_PROCESSOR-unknown-freebsd$FREEBSD_REL-gnueabi + else + FREEBSD_REL=`echo "$UNAME_RELEASE" | sed -e 's/-(.*//'` + GUESS=$UNAME_PROCESSOR-unknown-freebsd$FREEBSD_REL-gnueabihf + fi + ;; *:FreeBSD:*:*) UNAME_PROCESSOR=`/usr/bin/uname -p` - case ${UNAME_PROCESSOR} in + case $UNAME_PROCESSOR in amd64) - echo x86_64-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/-(.*//'` ;; - *) - echo ${UNAME_PROCESSOR}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/-(.*//'` ;; + UNAME_PROCESSOR=x86_64 ;; + i386) + UNAME_PROCESSOR=i586 ;; esac - exit ;; + FREEBSD_REL=`echo "$UNAME_RELEASE" | sed -e 's/-(.*//'` + GUESS=$UNAME_PROCESSOR-unknown-freebsd$FREEBSD_REL + ;; i*:CYGWIN*:*) - echo ${UNAME_MACHINE}-pc-cygwin - exit ;; + GUESS=$UNAME_MACHINE-pc-cygwin + ;; *:MINGW64*:*) - echo ${UNAME_MACHINE}-pc-mingw64 - exit ;; + GUESS=$UNAME_MACHINE-pc-mingw64 + ;; *:MINGW*:*) - echo ${UNAME_MACHINE}-pc-mingw32 - exit ;; + GUESS=$UNAME_MACHINE-pc-mingw32 + ;; *:MSYS*:*) - echo ${UNAME_MACHINE}-pc-msys - exit ;; - i*:windows32*:*) - # uname -m includes "-pc" on this system. - echo ${UNAME_MACHINE}-mingw32 - exit ;; + GUESS=$UNAME_MACHINE-pc-msys + ;; i*:PW*:*) - echo ${UNAME_MACHINE}-pc-pw32 - exit ;; + GUESS=$UNAME_MACHINE-pc-pw32 + ;; + *:SerenityOS:*:*) + GUESS=$UNAME_MACHINE-pc-serenity + ;; *:Interix*:*) - case ${UNAME_MACHINE} in + case $UNAME_MACHINE in x86) - echo i586-pc-interix${UNAME_RELEASE} - exit ;; + GUESS=i586-pc-interix$UNAME_RELEASE + ;; authenticamd | genuineintel | EM64T) - echo x86_64-unknown-interix${UNAME_RELEASE} - exit ;; + GUESS=x86_64-unknown-interix$UNAME_RELEASE + ;; IA64) - echo ia64-unknown-interix${UNAME_RELEASE} - exit ;; + GUESS=ia64-unknown-interix$UNAME_RELEASE + ;; esac ;; - 34586:Windows_95:* | 34586:Windows_98:* | 34586:Windows_NT:*) - echo i${UNAME_MACHINE}-pc-mks - exit ;; - 8664:Windows_NT:*) - echo x86_64-pc-mks - exit ;; - i*:Windows_NT*:* | Pentium*:Windows_NT*:*) - # How do we know it's Interix rather than the generic POSIX subsystem? - # It also conflicts with pre-2.0 versions of AT&T UWIN. Should we - # UNAME_MACHINE based on the output of uname instead of i386? - echo i586-pc-interix - exit ;; i*:UWIN*:*) - echo ${UNAME_MACHINE}-pc-uwin - exit ;; + GUESS=$UNAME_MACHINE-pc-uwin + ;; amd64:CYGWIN*:*:* | x86_64:CYGWIN*:*:*) - echo x86_64-unknown-cygwin - exit ;; - p*:CYGWIN*:*) - echo powerpcle-unknown-cygwin - exit ;; + GUESS=x86_64-pc-cygwin + ;; prep*:SunOS:5.*:*) - echo powerpcle-unknown-solaris2`echo ${UNAME_RELEASE}|sed -e 's/^.*//'` - exit ;; + SUN_REL=`echo "$UNAME_RELEASE" | sed -e 's/^.*//'` + GUESS=powerpcle-unknown-solaris2$SUN_REL + ;; *:GNU:*:*) # the GNU system - echo `echo ${UNAME_MACHINE}|sed -e 's,-/.*$,,'`-unknown-${LIBC}`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'` - exit ;; + GNU_ARCH=`echo "$UNAME_MACHINE" | sed -e 's,-/.*$,,'` + GNU_REL=`echo "$UNAME_RELEASE" | sed -e 's,/.*$,,'` + GUESS=$GNU_ARCH-unknown-$LIBC$GNU_REL + ;; *:GNU/*:*:*) # other systems with GNU libc and userland - echo ${UNAME_MACHINE}-unknown-`echo ${UNAME_SYSTEM} | sed 's,^^/*/,,' | tr ":upper:" ":lower:"``echo ${UNAME_RELEASE}|sed -e 's/-(.*//'`-${LIBC} - exit ;; - i*86:Minix:*:*) - echo ${UNAME_MACHINE}-pc-minix - exit ;; + GNU_SYS=`echo "$UNAME_SYSTEM" | sed 's,^^/*/,,' | tr ":upper:" ":lower:"` + GNU_REL=`echo "$UNAME_RELEASE" | sed -e 's/-(.*//'` + GUESS=$UNAME_MACHINE-unknown-$GNU_SYS$GNU_REL-$LIBC + ;; + *:Minix:*:*) + GUESS=$UNAME_MACHINE-unknown-minix + ;; aarch64:Linux:*:*) - echo ${UNAME_MACHINE}-unknown-linux-${LIBC} - exit ;; + GUESS=$UNAME_MACHINE-unknown-linux-$LIBC + ;; aarch64_be:Linux:*:*) UNAME_MACHINE=aarch64_be - echo ${UNAME_MACHINE}-unknown-linux-${LIBC} - exit ;; + GUESS=$UNAME_MACHINE-unknown-linux-$LIBC + ;; alpha:Linux:*:*) - case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in + case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' /proc/cpuinfo 2>/dev/null` in EV5) UNAME_MACHINE=alphaev5 ;; EV56) UNAME_MACHINE=alphaev56 ;; PCA56) UNAME_MACHINE=alphapca56 ;; @@ -927,177 +988,225 @@ esac objdump --private-headers /bin/sh | grep -q ld.so.1 if test "$?" = 0 ; then LIBC=gnulibc1 ; fi - echo ${UNAME_MACHINE}-unknown-linux-${LIBC} - exit ;; - arc:Linux:*:* | arceb:Linux:*:*) - echo ${UNAME_MACHINE}-unknown-linux-${LIBC} - exit ;; + GUESS=$UNAME_MACHINE-unknown-linux-$LIBC + ;; + arc:Linux:*:* | arceb:Linux:*:* | arc32:Linux:*:* | arc64:Linux:*:*) + GUESS=$UNAME_MACHINE-unknown-linux-$LIBC + ;; arm*:Linux:*:*) - eval $set_cc_for_build + set_cc_for_build if echo __ARM_EABI__ | $CC_FOR_BUILD -E - 2>/dev/null \ | grep -q __ARM_EABI__ then - echo ${UNAME_MACHINE}-unknown-linux-${LIBC} + GUESS=$UNAME_MACHINE-unknown-linux-$LIBC else if echo __ARM_PCS_VFP | $CC_FOR_BUILD -E - 2>/dev/null \ | grep -q __ARM_PCS_VFP then - echo ${UNAME_MACHINE}-unknown-linux-${LIBC}eabi + GUESS=$UNAME_MACHINE-unknown-linux-${LIBC}eabi else - echo ${UNAME_MACHINE}-unknown-linux-${LIBC}eabihf + GUESS=$UNAME_MACHINE-unknown-linux-${LIBC}eabihf fi fi - exit ;; + ;; avr32*:Linux:*:*) - echo ${UNAME_MACHINE}-unknown-linux-${LIBC} - exit ;; + GUESS=$UNAME_MACHINE-unknown-linux-$LIBC + ;; cris:Linux:*:*) - echo ${UNAME_MACHINE}-axis-linux-${LIBC} - exit ;; + GUESS=$UNAME_MACHINE-axis-linux-$LIBC + ;; crisv32:Linux:*:*) - echo ${UNAME_MACHINE}-axis-linux-${LIBC} - exit ;; + GUESS=$UNAME_MACHINE-axis-linux-$LIBC + ;; e2k:Linux:*:*) - echo ${UNAME_MACHINE}-unknown-linux-${LIBC} - exit ;; + GUESS=$UNAME_MACHINE-unknown-linux-$LIBC + ;; frv:Linux:*:*) - echo ${UNAME_MACHINE}-unknown-linux-${LIBC} - exit ;; + GUESS=$UNAME_MACHINE-unknown-linux-$LIBC + ;; hexagon:Linux:*:*) - echo ${UNAME_MACHINE}-unknown-linux-${LIBC} - exit ;; + GUESS=$UNAME_MACHINE-unknown-linux-$LIBC + ;; i*86:Linux:*:*) - echo ${UNAME_MACHINE}-pc-linux-${LIBC} - exit ;; + GUESS=$UNAME_MACHINE-pc-linux-$LIBC + ;; ia64:Linux:*:*) - echo ${UNAME_MACHINE}-unknown-linux-${LIBC} - exit ;; + GUESS=$UNAME_MACHINE-unknown-linux-$LIBC + ;; k1om:Linux:*:*) - echo ${UNAME_MACHINE}-unknown-linux-${LIBC} - exit ;; + GUESS=$UNAME_MACHINE-unknown-linux-$LIBC + ;; + loongarch32:Linux:*:* | loongarch64:Linux:*:* | loongarchx32:Linux:*:*) + GUESS=$UNAME_MACHINE-unknown-linux-$LIBC + ;; m32r*:Linux:*:*) - echo ${UNAME_MACHINE}-unknown-linux-${LIBC} - exit ;; + GUESS=$UNAME_MACHINE-unknown-linux-$LIBC + ;; m68*:Linux:*:*) - echo ${UNAME_MACHINE}-unknown-linux-${LIBC} - exit ;; + GUESS=$UNAME_MACHINE-unknown-linux-$LIBC + ;; mips:Linux:*:* | mips64:Linux:*:*) - eval $set_cc_for_build - sed 's/^ //' << EOF >$dummy.c + set_cc_for_build + IS_GLIBC=0 + test x"${LIBC}" = xgnu && IS_GLIBC=1 + sed 's/^ //' << EOF > "$dummy.c" #undef CPU - #undef ${UNAME_MACHINE} - #undef ${UNAME_MACHINE}el + #undef mips + #undef mipsel + #undef mips64 + #undef mips64el + #if ${IS_GLIBC} && defined(_ABI64) + LIBCABI=gnuabi64 + #else + #if ${IS_GLIBC} && defined(_ABIN32) + LIBCABI=gnuabin32 + #else + LIBCABI=${LIBC} + #endif + #endif + + #if ${IS_GLIBC} && defined(__mips64) && defined(__mips_isa_rev) && __mips_isa_rev>=6 + CPU=mipsisa64r6 + #else + #if ${IS_GLIBC} && !defined(__mips64) && defined(__mips_isa_rev) && __mips_isa_rev>=6 + CPU=mipsisa32r6 + #else + #if defined(__mips64) + CPU=mips64 + #else + CPU=mips + #endif + #endif + #endif + #if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL) - CPU=${UNAME_MACHINE}el + MIPS_ENDIAN=el #else #if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB) - CPU=${UNAME_MACHINE} + MIPS_ENDIAN= #else - CPU= + MIPS_ENDIAN= #endif #endif EOF - eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^CPU'` - test x"${CPU}" != x && { echo "${CPU}-unknown-linux-${LIBC}"; exit; } + cc_set_vars=`$CC_FOR_BUILD -E "$dummy.c" 2>/dev/null | grep '^CPU\|^MIPS_ENDIAN\|^LIBCABI'` + eval "$cc_set_vars" + test "x$CPU" != x && { echo "$CPU${MIPS_ENDIAN}-unknown-linux-$LIBCABI"; exit; } + ;; + mips64el:Linux:*:*) + GUESS=$UNAME_MACHINE-unknown-linux-$LIBC ;; openrisc*:Linux:*:*) - echo or1k-unknown-linux-${LIBC} - exit ;; + GUESS=or1k-unknown-linux-$LIBC + ;; or32:Linux:*:* | or1k*:Linux:*:*) - echo ${UNAME_MACHINE}-unknown-linux-${LIBC} - exit ;; + GUESS=$UNAME_MACHINE-unknown-linux-$LIBC + ;; padre:Linux:*:*) - echo sparc-unknown-linux-${LIBC} - exit ;; + GUESS=sparc-unknown-linux-$LIBC + ;; parisc64:Linux:*:* | hppa64:Linux:*:*) - echo hppa64-unknown-linux-${LIBC} - exit ;; + GUESS=hppa64-unknown-linux-$LIBC + ;; parisc:Linux:*:* | hppa:Linux:*:*) # Look for CPU level case `grep '^cpu^a-z*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in - PA7*) echo hppa1.1-unknown-linux-${LIBC} ;; - PA8*) echo hppa2.0-unknown-linux-${LIBC} ;; - *) echo hppa-unknown-linux-${LIBC} ;; + PA7*) GUESS=hppa1.1-unknown-linux-$LIBC ;; + PA8*) GUESS=hppa2.0-unknown-linux-$LIBC ;; + *) GUESS=hppa-unknown-linux-$LIBC ;; esac - exit ;; + ;; ppc64:Linux:*:*) - echo powerpc64-unknown-linux-${LIBC} - exit ;; + GUESS=powerpc64-unknown-linux-$LIBC + ;; ppc:Linux:*:*) - echo powerpc-unknown-linux-${LIBC} - exit ;; + GUESS=powerpc-unknown-linux-$LIBC + ;; ppc64le:Linux:*:*) - echo powerpc64le-unknown-linux-${LIBC} - exit ;; + GUESS=powerpc64le-unknown-linux-$LIBC + ;; ppcle:Linux:*:*) - echo powerpcle-unknown-linux-${LIBC} - exit ;; + GUESS=powerpcle-unknown-linux-$LIBC + ;; + riscv32:Linux:*:* | riscv32be:Linux:*:* | riscv64:Linux:*:* | riscv64be:Linux:*:*) + GUESS=$UNAME_MACHINE-unknown-linux-$LIBC + ;; s390:Linux:*:* | s390x:Linux:*:*) - echo ${UNAME_MACHINE}-ibm-linux-${LIBC} - exit ;; + GUESS=$UNAME_MACHINE-ibm-linux-$LIBC + ;; sh64*:Linux:*:*) - echo ${UNAME_MACHINE}-unknown-linux-${LIBC} - exit ;; + GUESS=$UNAME_MACHINE-unknown-linux-$LIBC + ;; sh*:Linux:*:*) - echo ${UNAME_MACHINE}-unknown-linux-${LIBC} - exit ;; + GUESS=$UNAME_MACHINE-unknown-linux-$LIBC + ;; sparc:Linux:*:* | sparc64:Linux:*:*) - echo ${UNAME_MACHINE}-unknown-linux-${LIBC} - exit ;; + GUESS=$UNAME_MACHINE-unknown-linux-$LIBC + ;; tile*:Linux:*:*) - echo ${UNAME_MACHINE}-unknown-linux-${LIBC} - exit ;; + GUESS=$UNAME_MACHINE-unknown-linux-$LIBC + ;; vax:Linux:*:*) - echo ${UNAME_MACHINE}-dec-linux-${LIBC} - exit ;; + GUESS=$UNAME_MACHINE-dec-linux-$LIBC + ;; x86_64:Linux:*:*) - echo ${UNAME_MACHINE}-pc-linux-${LIBC} - exit ;; + set_cc_for_build + LIBCABI=$LIBC + if test "$CC_FOR_BUILD" != no_compiler_found; then + if (echo '#ifdef __ILP32__'; echo IS_X32; echo '#endif') | \ + (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | \ + grep IS_X32 >/dev/null + then + LIBCABI=${LIBC}x32 + fi + fi + GUESS=$UNAME_MACHINE-pc-linux-$LIBCABI + ;; xtensa*:Linux:*:*) - echo ${UNAME_MACHINE}-unknown-linux-${LIBC} - exit ;; + GUESS=$UNAME_MACHINE-unknown-linux-$LIBC + ;; i*86:DYNIX/ptx:4*:*) # ptx 4.0 does uname -s correctly, with DYNIX/ptx in there. # earlier versions are messed up and put the nodename in both # sysname and nodename. - echo i386-sequent-sysv4 - exit ;; + GUESS=i386-sequent-sysv4 + ;; i*86:UNIX_SV:4.2MP:2.*) # Unixware is an offshoot of SVR4, but it has its own version # number series starting with 2... # I am not positive that other SVR4 systems won't match this, # I just have to hope. -- rms. # Use sysv4.2uw... so that sysv4* matches it. - echo ${UNAME_MACHINE}-pc-sysv4.2uw${UNAME_VERSION} - exit ;; + GUESS=$UNAME_MACHINE-pc-sysv4.2uw$UNAME_VERSION + ;; i*86:OS/2:*:*) # If we were able to find `uname', then EMX Unix compatibility # is probably installed. - echo ${UNAME_MACHINE}-pc-os2-emx - exit ;; + GUESS=$UNAME_MACHINE-pc-os2-emx + ;; i*86:XTS-300:*:STOP) - echo ${UNAME_MACHINE}-unknown-stop - exit ;; + GUESS=$UNAME_MACHINE-unknown-stop + ;; i*86:atheos:*:*) - echo ${UNAME_MACHINE}-unknown-atheos - exit ;; + GUESS=$UNAME_MACHINE-unknown-atheos + ;; i*86:syllable:*:*) - echo ${UNAME_MACHINE}-pc-syllable - exit ;; + GUESS=$UNAME_MACHINE-pc-syllable + ;; i*86:LynxOS:2.*:* | i*86:LynxOS:3.01*:* | i*86:LynxOS:4.02*:*) - echo i386-unknown-lynxos${UNAME_RELEASE} - exit ;; + GUESS=i386-unknown-lynxos$UNAME_RELEASE + ;; i*86:*DOS:*:*) - echo ${UNAME_MACHINE}-pc-msdosdjgpp - exit ;; - i*86:*:4.*:* | i*86:SYSTEM_V:4.*:*) - UNAME_REL=`echo ${UNAME_RELEASE} | sed 's/\/MP$//'` + GUESS=$UNAME_MACHINE-pc-msdosdjgpp + ;; + i*86:*:4.*:*) + UNAME_REL=`echo "$UNAME_RELEASE" | sed 's/\/MP$//'` if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then - echo ${UNAME_MACHINE}-univel-sysv${UNAME_REL} + GUESS=$UNAME_MACHINE-univel-sysv$UNAME_REL else - echo ${UNAME_MACHINE}-pc-sysv${UNAME_REL} + GUESS=$UNAME_MACHINE-pc-sysv$UNAME_REL fi - exit ;; + ;; i*86:*:5:678*) # UnixWare 7.x, OpenUNIX and OpenServer 6. case `/bin/uname -X | grep "^Machine"` in @@ -1105,12 +1214,12 @@ *Pentium) UNAME_MACHINE=i586 ;; *Pent*|*Celeron) UNAME_MACHINE=i686 ;; esac - echo ${UNAME_MACHINE}-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}${UNAME_VERSION} - exit ;; + GUESS=$UNAME_MACHINE-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}${UNAME_VERSION} + ;; i*86:*:3.2:*) if test -f /usr/options/cb.name; then UNAME_REL=`sed -n 's/.*Version //p' </usr/options/cb.name` - echo ${UNAME_MACHINE}-pc-isc$UNAME_REL + GUESS=$UNAME_MACHINE-pc-isc$UNAME_REL elif /bin/uname -X 2>/dev/null >/dev/null ; then UNAME_REL=`(/bin/uname -X|grep Release|sed -e 's/.*= //')` (/bin/uname -X|grep i80486 >/dev/null) && UNAME_MACHINE=i486 @@ -1120,11 +1229,11 @@ && UNAME_MACHINE=i686 (/bin/uname -X|grep '^Machine.*Pentium Pro' >/dev/null) \ && UNAME_MACHINE=i686 - echo ${UNAME_MACHINE}-pc-sco$UNAME_REL + GUESS=$UNAME_MACHINE-pc-sco$UNAME_REL else - echo ${UNAME_MACHINE}-pc-sysv32 + GUESS=$UNAME_MACHINE-pc-sysv32 fi - exit ;; + ;; pc:*:*:*) # Left here for compatibility: # uname -m prints for DJGPP always 'pc', but it prints nothing about @@ -1132,31 +1241,31 @@ # Note: whatever this is, it MUST be the same as what config.sub # prints for the "djgpp" host, or else GDB configure will decide that # this is a cross-build. - echo i586-pc-msdosdjgpp - exit ;; + GUESS=i586-pc-msdosdjgpp + ;; Intel:Mach:3*:*) - echo i386-pc-mach3 - exit ;; + GUESS=i386-pc-mach3 + ;; paragon:*:*:*) - echo i860-intel-osf1 - exit ;; + GUESS=i860-intel-osf1 + ;; i860:*:4.*:*) # i860-SVR4 if grep Stardent /usr/include/sys/uadmin.h >/dev/null 2>&1 ; then - echo i860-stardent-sysv${UNAME_RELEASE} # Stardent Vistra i860-SVR4 + GUESS=i860-stardent-sysv$UNAME_RELEASE # Stardent Vistra i860-SVR4 else # Add other i860-SVR4 vendors below as they are discovered. - echo i860-unknown-sysv${UNAME_RELEASE} # Unknown i860-SVR4 + GUESS=i860-unknown-sysv$UNAME_RELEASE # Unknown i860-SVR4 fi - exit ;; + ;; mini*:CTIX:SYS*5:*) # "miniframe" - echo m68010-convergent-sysv - exit ;; + GUESS=m68010-convergent-sysv + ;; mc68k:UNIX:SYSTEM5:3.51m) - echo m68k-convergent-sysv - exit ;; + GUESS=m68k-convergent-sysv + ;; M680?0:D-NIX:5.3:*) - echo m68k-diab-dnix - exit ;; + GUESS=m68k-diab-dnix + ;; M68*:*:R3V5678*:*) test -r /sysV68 && { echo 'm68k-motorola-sysv'; exit; } ;; 3345??:*:4.0:3.0 | 334??A:*:4.0:3.0 | 334??,*:*:4.0:3.0 | 334??/*:*:4.0:3.0 | 4400:*:4.0:3.0 | 4850:*:4.0:3.0 | SKA40:*:4.0:3.0 | SDS2:*:4.0:3.0 | SHG2:*:4.0:3.0 | S7501*:*:4.0:3.0) @@ -1164,9 +1273,9 @@ test -r /etc/.relid \ && OS_REL=.`sed -n 's/^ * ^ * \(0-90-9\).*/\1/p' < /etc/.relid` /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ - && { echo i486-ncr-sysv4.3${OS_REL}; exit; } + && { echo i486-ncr-sysv4.3"$OS_REL"; exit; } /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \ - && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;; + && { echo i586-ncr-sysv4.3"$OS_REL"; exit; } ;; 334??:*:4.0:* | 334??,*:*:4.0:*) /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ && { echo i486-ncr-sysv4; exit; } ;; @@ -1175,249 +1284,437 @@ test -r /etc/.relid \ && OS_REL=.`sed -n 's/^ * ^ * \(0-90-9\).*/\1/p' < /etc/.relid` /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ - && { echo i486-ncr-sysv4.3${OS_REL}; exit; } + && { echo i486-ncr-sysv4.3"$OS_REL"; exit; } /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \ - && { echo i586-ncr-sysv4.3${OS_REL}; exit; } + && { echo i586-ncr-sysv4.3"$OS_REL"; exit; } /bin/uname -p 2>/dev/null | /bin/grep pteron >/dev/null \ - && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;; + && { echo i586-ncr-sysv4.3"$OS_REL"; exit; } ;; m68*:LynxOS:2.*:* | m68*:LynxOS:3.0*:*) - echo m68k-unknown-lynxos${UNAME_RELEASE} - exit ;; + GUESS=m68k-unknown-lynxos$UNAME_RELEASE + ;; mc68030:UNIX_System_V:4.*:*) - echo m68k-atari-sysv4 - exit ;; + GUESS=m68k-atari-sysv4 + ;; TSUNAMI:LynxOS:2.*:*) - echo sparc-unknown-lynxos${UNAME_RELEASE} - exit ;; + GUESS=sparc-unknown-lynxos$UNAME_RELEASE + ;; rs6000:LynxOS:2.*:*) - echo rs6000-unknown-lynxos${UNAME_RELEASE} - exit ;; + GUESS=rs6000-unknown-lynxos$UNAME_RELEASE + ;; PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.01*:* | PowerPC:LynxOS:4.02*:*) - echo powerpc-unknown-lynxos${UNAME_RELEASE} - exit ;; + GUESS=powerpc-unknown-lynxos$UNAME_RELEASE + ;; SMBES:UNIX_SV:*:*) - echo mips-dde-sysv${UNAME_RELEASE} - exit ;; + GUESS=mips-dde-sysv$UNAME_RELEASE + ;; RM*:ReliantUNIX-*:*:*) - echo mips-sni-sysv4 - exit ;; + GUESS=mips-sni-sysv4 + ;; RM*:SINIX-*:*:*) - echo mips-sni-sysv4 - exit ;; + GUESS=mips-sni-sysv4 + ;; *:SINIX-*:*:*) if uname -p 2>/dev/null >/dev/null ; then UNAME_MACHINE=`(uname -p) 2>/dev/null` - echo ${UNAME_MACHINE}-sni-sysv4 + GUESS=$UNAME_MACHINE-sni-sysv4 else - echo ns32k-sni-sysv + GUESS=ns32k-sni-sysv fi - exit ;; + ;; PENTIUM:*:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort # says <Richard.M.Bartel@ccMail.Census.GOV> - echo i586-unisys-sysv4 - exit ;; + GUESS=i586-unisys-sysv4 + ;; *:UNIX_System_V:4*:FTX*) # From Gerald Hewes <hewes@openmarket.com>. # How about differentiating between stratus architectures? -djm - echo hppa1.1-stratus-sysv4 - exit ;; + GUESS=hppa1.1-stratus-sysv4 + ;; *:*:*:FTX*) # From seanf@swdc.stratus.com. - echo i860-stratus-sysv4 - exit ;; + GUESS=i860-stratus-sysv4 + ;; i*86:VOS:*:*) # From Paul.Green@stratus.com. - echo ${UNAME_MACHINE}-stratus-vos - exit ;; + GUESS=$UNAME_MACHINE-stratus-vos + ;; *:VOS:*:*) # From Paul.Green@stratus.com. - echo hppa1.1-stratus-vos - exit ;; + GUESS=hppa1.1-stratus-vos + ;; mc68*:A/UX:*:*) - echo m68k-apple-aux${UNAME_RELEASE} - exit ;; + GUESS=m68k-apple-aux$UNAME_RELEASE + ;; news*:NEWS-OS:6*:*) - echo mips-sony-newsos6 - exit ;; + GUESS=mips-sony-newsos6 + ;; R34000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*) - if -d /usr/nec ; then - echo mips-nec-sysv${UNAME_RELEASE} + if test -d /usr/nec; then + GUESS=mips-nec-sysv$UNAME_RELEASE else - echo mips-unknown-sysv${UNAME_RELEASE} + GUESS=mips-unknown-sysv$UNAME_RELEASE fi - exit ;; + ;; BeBox:BeOS:*:*) # BeOS running on hardware made by Be, PPC only. - echo powerpc-be-beos - exit ;; + GUESS=powerpc-be-beos + ;; BeMac:BeOS:*:*) # BeOS running on Mac or Mac clone, PPC only. - echo powerpc-apple-beos - exit ;; + GUESS=powerpc-apple-beos + ;; BePC:BeOS:*:*) # BeOS running on Intel PC compatible. - echo i586-pc-beos - exit ;; + GUESS=i586-pc-beos + ;; BePC:Haiku:*:*) # Haiku running on Intel PC compatible. - echo i586-pc-haiku - exit ;; + GUESS=i586-pc-haiku + ;; x86_64:Haiku:*:*) - echo x86_64-unknown-haiku - exit ;; + GUESS=x86_64-unknown-haiku + ;; SX-4:SUPER-UX:*:*) - echo sx4-nec-superux${UNAME_RELEASE} - exit ;; + GUESS=sx4-nec-superux$UNAME_RELEASE + ;; SX-5:SUPER-UX:*:*) - echo sx5-nec-superux${UNAME_RELEASE} - exit ;; + GUESS=sx5-nec-superux$UNAME_RELEASE + ;; SX-6:SUPER-UX:*:*) - echo sx6-nec-superux${UNAME_RELEASE} - exit ;; + GUESS=sx6-nec-superux$UNAME_RELEASE + ;; SX-7:SUPER-UX:*:*) - echo sx7-nec-superux${UNAME_RELEASE} - exit ;; + GUESS=sx7-nec-superux$UNAME_RELEASE + ;; SX-8:SUPER-UX:*:*) - echo sx8-nec-superux${UNAME_RELEASE} - exit ;; + GUESS=sx8-nec-superux$UNAME_RELEASE + ;; SX-8R:SUPER-UX:*:*) - echo sx8r-nec-superux${UNAME_RELEASE} - exit ;; + GUESS=sx8r-nec-superux$UNAME_RELEASE + ;; SX-ACE:SUPER-UX:*:*) - echo sxace-nec-superux${UNAME_RELEASE} - exit ;; + GUESS=sxace-nec-superux$UNAME_RELEASE + ;; Power*:Rhapsody:*:*) - echo powerpc-apple-rhapsody${UNAME_RELEASE} - exit ;; + GUESS=powerpc-apple-rhapsody$UNAME_RELEASE + ;; *:Rhapsody:*:*) - echo ${UNAME_MACHINE}-apple-rhapsody${UNAME_RELEASE} - exit ;; + GUESS=$UNAME_MACHINE-apple-rhapsody$UNAME_RELEASE + ;; + arm64:Darwin:*:*) + GUESS=aarch64-apple-darwin$UNAME_RELEASE + ;; *:Darwin:*:*) - UNAME_PROCESSOR=`uname -p` || UNAME_PROCESSOR=unknown - eval $set_cc_for_build - if test "$UNAME_PROCESSOR" = unknown ; then - UNAME_PROCESSOR=powerpc + UNAME_PROCESSOR=`uname -p` + case $UNAME_PROCESSOR in + unknown) UNAME_PROCESSOR=powerpc ;; + esac + if command -v xcode-select > /dev/null 2> /dev/null && \ + ! xcode-select --print-path > /dev/null 2> /dev/null ; then + # Avoid executing cc if there is no toolchain installed as + # cc will be a stub that puts up a graphical alert + # prompting the user to install developer tools. + CC_FOR_BUILD=no_compiler_found + else + set_cc_for_build fi - if test `echo "$UNAME_RELEASE" | sed -e 's/\..*//'` -le 10 ; then - if "$CC_FOR_BUILD" != no_compiler_found ; then - if (echo '#ifdef __LP64__'; echo IS_64BIT_ARCH; echo '#endif') | \ - (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | \ - grep IS_64BIT_ARCH >/dev/null - then - case $UNAME_PROCESSOR in - i386) UNAME_PROCESSOR=x86_64 ;; - powerpc) UNAME_PROCESSOR=powerpc64 ;; - esac - fi + if test "$CC_FOR_BUILD" != no_compiler_found; then + if (echo '#ifdef __LP64__'; echo IS_64BIT_ARCH; echo '#endif') | \ + (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | \ + grep IS_64BIT_ARCH >/dev/null + then + case $UNAME_PROCESSOR in + i386) UNAME_PROCESSOR=x86_64 ;; + powerpc) UNAME_PROCESSOR=powerpc64 ;; + esac + fi + # On 10.4-10.6 one might compile for PowerPC via gcc -arch ppc + if (echo '#ifdef __POWERPC__'; echo IS_PPC; echo '#endif') | \ + (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | \ + grep IS_PPC >/dev/null + then + UNAME_PROCESSOR=powerpc fi elif test "$UNAME_PROCESSOR" = i386 ; then - # Avoid executing cc on OS X 10.9, as it ships with a stub - # that puts up a graphical alert prompting to install - # developer tools. Any system running Mac OS X 10.7 or - # later (Darwin 11 and later) is required to have a 64-bit - # processor. This is not true of the ARM version of Darwin - # that Apple uses in portable devices. - UNAME_PROCESSOR=x86_64 + # uname -m returns i386 or x86_64 + UNAME_PROCESSOR=$UNAME_MACHINE fi - echo ${UNAME_PROCESSOR}-apple-darwin${UNAME_RELEASE} - exit ;; + GUESS=$UNAME_PROCESSOR-apple-darwin$UNAME_RELEASE + ;; *:procnto*:*:* | *:QNX:0123456789*:*) UNAME_PROCESSOR=`uname -p` if test "$UNAME_PROCESSOR" = x86; then UNAME_PROCESSOR=i386 UNAME_MACHINE=pc fi - echo ${UNAME_PROCESSOR}-${UNAME_MACHINE}-nto-qnx${UNAME_RELEASE} - exit ;; + GUESS=$UNAME_PROCESSOR-$UNAME_MACHINE-nto-qnx$UNAME_RELEASE + ;; *:QNX:*:4*) - echo i386-pc-qnx - exit ;; - NEO-?:NONSTOP_KERNEL:*:*) - echo neo-tandem-nsk${UNAME_RELEASE} - exit ;; + GUESS=i386-pc-qnx + ;; + NEO-*:NONSTOP_KERNEL:*:*) + GUESS=neo-tandem-nsk$UNAME_RELEASE + ;; NSE-*:NONSTOP_KERNEL:*:*) - echo nse-tandem-nsk${UNAME_RELEASE} - exit ;; - NSR-?:NONSTOP_KERNEL:*:*) - echo nsr-tandem-nsk${UNAME_RELEASE} - exit ;; + GUESS=nse-tandem-nsk$UNAME_RELEASE + ;; + NSR-*:NONSTOP_KERNEL:*:*) + GUESS=nsr-tandem-nsk$UNAME_RELEASE + ;; + NSV-*:NONSTOP_KERNEL:*:*) + GUESS=nsv-tandem-nsk$UNAME_RELEASE + ;; + NSX-*:NONSTOP_KERNEL:*:*) + GUESS=nsx-tandem-nsk$UNAME_RELEASE + ;; *:NonStop-UX:*:*) - echo mips-compaq-nonstopux - exit ;; + GUESS=mips-compaq-nonstopux + ;; BS2000:POSIX*:*:*) - echo bs2000-siemens-sysv - exit ;; + GUESS=bs2000-siemens-sysv + ;; DS/*:UNIX_System_V:*:*) - echo ${UNAME_MACHINE}-${UNAME_SYSTEM}-${UNAME_RELEASE} - exit ;; + GUESS=$UNAME_MACHINE-$UNAME_SYSTEM-$UNAME_RELEASE + ;; *:Plan9:*:*) # "uname -m" is not consistent, so use $cputype instead. 386 # is converted to i386 for consistency with other x86 # operating systems. - if test "$cputype" = 386; then + if test "${cputype-}" = 386; then UNAME_MACHINE=i386 - else - UNAME_MACHINE="$cputype" + elif test "x${cputype-}" != x; then + UNAME_MACHINE=$cputype fi - echo ${UNAME_MACHINE}-unknown-plan9 - exit ;; + GUESS=$UNAME_MACHINE-unknown-plan9 + ;; *:TOPS-10:*:*) - echo pdp10-unknown-tops10 - exit ;; + GUESS=pdp10-unknown-tops10 + ;; *:TENEX:*:*) - echo pdp10-unknown-tenex - exit ;; + GUESS=pdp10-unknown-tenex + ;; KS10:TOPS-20:*:* | KL10:TOPS-20:*:* | TYPE4:TOPS-20:*:*) - echo pdp10-dec-tops20 - exit ;; + GUESS=pdp10-dec-tops20 + ;; XKL-1:TOPS-20:*:* | TYPE5:TOPS-20:*:*) - echo pdp10-xkl-tops20 - exit ;; + GUESS=pdp10-xkl-tops20 + ;; *:TOPS-20:*:*) - echo pdp10-unknown-tops20 - exit ;; + GUESS=pdp10-unknown-tops20 + ;; *:ITS:*:*) - echo pdp10-unknown-its - exit ;; + GUESS=pdp10-unknown-its + ;; SEI:*:*:SEIUX) - echo mips-sei-seiux${UNAME_RELEASE} - exit ;; + GUESS=mips-sei-seiux$UNAME_RELEASE + ;; *:DragonFly:*:*) - echo ${UNAME_MACHINE}-unknown-dragonfly`echo ${UNAME_RELEASE}|sed -e 's/-(.*//'` - exit ;; + DRAGONFLY_REL=`echo "$UNAME_RELEASE" | sed -e 's/-(.*//'` + GUESS=$UNAME_MACHINE-unknown-dragonfly$DRAGONFLY_REL + ;; *:*VMS:*:*) UNAME_MACHINE=`(uname -p) 2>/dev/null` - case "${UNAME_MACHINE}" in - A*) echo alpha-dec-vms ; exit ;; - I*) echo ia64-dec-vms ; exit ;; - V*) echo vax-dec-vms ; exit ;; + case $UNAME_MACHINE in + A*) GUESS=alpha-dec-vms ;; + I*) GUESS=ia64-dec-vms ;; + V*) GUESS=vax-dec-vms ;; esac ;; *:XENIX:*:SysV) - echo i386-pc-xenix - exit ;; + GUESS=i386-pc-xenix + ;; i*86:skyos:*:*) - echo ${UNAME_MACHINE}-pc-skyos`echo ${UNAME_RELEASE} | sed -e 's/ .*$//'` - exit ;; + SKYOS_REL=`echo "$UNAME_RELEASE" | sed -e 's/ .*$//'` + GUESS=$UNAME_MACHINE-pc-skyos$SKYOS_REL + ;; i*86:rdos:*:*) - echo ${UNAME_MACHINE}-pc-rdos - exit ;; - i*86:AROS:*:*) - echo ${UNAME_MACHINE}-pc-aros - exit ;; + GUESS=$UNAME_MACHINE-pc-rdos + ;; + i*86:Fiwix:*:*) + GUESS=$UNAME_MACHINE-pc-fiwix + ;; + *:AROS:*:*) + GUESS=$UNAME_MACHINE-unknown-aros + ;; x86_64:VMkernel:*:*) - echo ${UNAME_MACHINE}-unknown-esx - exit ;; + GUESS=$UNAME_MACHINE-unknown-esx + ;; amd64:Isilon\ OneFS:*:*) - echo x86_64-unknown-onefs - exit ;; + GUESS=x86_64-unknown-onefs + ;; + *:Unleashed:*:*) + GUESS=$UNAME_MACHINE-unknown-unleashed$UNAME_RELEASE + ;; +esac + +# Do we have a guess based on uname results? +if test "x$GUESS" != x; then + echo "$GUESS" + exit +fi + +# No uname command or uname output not recognized. +set_cc_for_build +cat > "$dummy.c" <<EOF +#ifdef _SEQUENT_ +#include <sys/types.h> +#include <sys/utsname.h> +#endif +#if defined(ultrix) || defined(_ultrix) || defined(__ultrix) || defined(__ultrix__) +#if defined (vax) || defined (__vax) || defined (__vax__) || defined(mips) || defined(__mips) || defined(__mips__) || defined(MIPS) || defined(__MIPS__) +#include <signal.h> +#if defined(_SIZE_T_) || defined(SIGLOST) +#include <sys/utsname.h> +#endif +#endif +#endif +main () +{ +#if defined (sony) +#if defined (MIPSEB) + /* BFD wants "bsd" instead of "newsos". Perhaps BFD should be changed, + I don't know.... */ + printf ("mips-sony-bsd\n"); exit (0); +#else +#include <sys/param.h> + printf ("m68k-sony-newsos%s\n", +#ifdef NEWSOS4 + "4" +#else + "" +#endif + ); exit (0); +#endif +#endif + +#if defined (NeXT) +#if !defined (__ARCHITECTURE__) +#define __ARCHITECTURE__ "m68k" +#endif + int version; + version=`(hostinfo | sed -n 's/.*NeXT Mach \(0-9*\).*/\1/p') 2>/dev/null`; + if (version < 4) + printf ("%s-next-nextstep%d\n", __ARCHITECTURE__, version); + else + printf ("%s-next-openstep%d\n", __ARCHITECTURE__, version); + exit (0); +#endif + +#if defined (MULTIMAX) || defined (n16) +#if defined (UMAXV) + printf ("ns32k-encore-sysv\n"); exit (0); +#else +#if defined (CMU) + printf ("ns32k-encore-mach\n"); exit (0); +#else + printf ("ns32k-encore-bsd\n"); exit (0); +#endif +#endif +#endif + +#if defined (__386BSD__) + printf ("i386-pc-bsd\n"); exit (0); +#endif + +#if defined (sequent) +#if defined (i386) + printf ("i386-sequent-dynix\n"); exit (0); +#endif +#if defined (ns32000) + printf ("ns32k-sequent-dynix\n"); exit (0); +#endif +#endif + +#if defined (_SEQUENT_) + struct utsname un; + + uname(&un); + if (strncmp(un.version, "V2", 2) == 0) { + printf ("i386-sequent-ptx2\n"); exit (0); + } + if (strncmp(un.version, "V1", 2) == 0) { /* XXX is V1 correct? */ + printf ("i386-sequent-ptx1\n"); exit (0); + } + printf ("i386-sequent-ptx\n"); exit (0); +#endif + +#if defined (vax) +#if !defined (ultrix) +#include <sys/param.h> +#if defined (BSD) +#if BSD == 43 + printf ("vax-dec-bsd4.3\n"); exit (0); +#else +#if BSD == 199006 + printf ("vax-dec-bsd4.3reno\n"); exit (0); +#else + printf ("vax-dec-bsd\n"); exit (0); +#endif +#endif +#else + printf ("vax-dec-bsd\n"); exit (0); +#endif +#else +#if defined(_SIZE_T_) || defined(SIGLOST) + struct utsname un; + uname (&un); + printf ("vax-dec-ultrix%s\n", un.release); exit (0); +#else + printf ("vax-dec-ultrix\n"); exit (0); +#endif +#endif +#endif +#if defined(ultrix) || defined(_ultrix) || defined(__ultrix) || defined(__ultrix__) +#if defined(mips) || defined(__mips) || defined(__mips__) || defined(MIPS) || defined(__MIPS__) +#if defined(_SIZE_T_) || defined(SIGLOST) + struct utsname *un; + uname (&un); + printf ("mips-dec-ultrix%s\n", un.release); exit (0); +#else + printf ("mips-dec-ultrix\n"); exit (0); +#endif +#endif +#endif + +#if defined (alliant) && defined (i860) + printf ("i860-alliant-bsd\n"); exit (0); +#endif + + exit (1); +} +EOF + +$CC_FOR_BUILD -o "$dummy" "$dummy.c" 2>/dev/null && SYSTEM_NAME=`"$dummy"` && + { echo "$SYSTEM_NAME"; exit; } + +# Apollos put the system type in the environment. +test -d /usr/apollo && { echo "$ISP-apollo-$SYSTYPE"; exit; } + +echo "$0: unable to guess system type" >&2 + +case $UNAME_MACHINE:$UNAME_SYSTEM in + mips:Linux | mips64:Linux) + # If we got here on MIPS GNU/Linux, output extra information. + cat >&2 <<EOF + +NOTE: MIPS GNU/Linux systems require a C compiler to fully recognize +the system type. Please install a C compiler and try again. +EOF + ;; esac cat >&2 <<EOF -$0: unable to guess system type This script (version $timestamp), has failed to recognize the -operating system you are using. If your script is old, overwrite -config.guess and config.sub with the latest versions from: +operating system you are using. If your script is old, overwrite *all* +copies of config.guess and config.sub with the latest versions from: - http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess + https://git.savannah.gnu.org/cgit/config.git/plain/config.guess and - http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub + https://git.savannah.gnu.org/cgit/config.git/plain/config.sub +EOF + +our_year=`echo $timestamp | sed 's,-.*,,'` +thisyear=`date +%Y` +# shellcheck disable=SC2003 +script_age=`expr "$thisyear" - "$our_year"` +if test "$script_age" -lt 3 ; then + cat >&2 <<EOF If $0 has already been updated, send the following data and any information you think might be pertinent to config-patches@gnu.org to @@ -1440,16 +1737,17 @@ /usr/bin/oslevel = `(/usr/bin/oslevel) 2>/dev/null` /usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null` -UNAME_MACHINE = ${UNAME_MACHINE} -UNAME_RELEASE = ${UNAME_RELEASE} -UNAME_SYSTEM = ${UNAME_SYSTEM} -UNAME_VERSION = ${UNAME_VERSION} +UNAME_MACHINE = "$UNAME_MACHINE" +UNAME_RELEASE = "$UNAME_RELEASE" +UNAME_SYSTEM = "$UNAME_SYSTEM" +UNAME_VERSION = "$UNAME_VERSION" EOF +fi exit 1 # Local variables: -# eval: (add-hook 'write-file-hooks 'time-stamp) +# eval: (add-hook 'before-save-hook 'time-stamp) # time-stamp-start: "timestamp='" # time-stamp-format: "%:y-%02m-%02d" # time-stamp-end: "'"
View file
_service:tar_scm:libksba-1.6.0.tar.bz2/build-aux/config.sub -> _service:tar_scm:libksba-1.6.3.tar.bz2/build-aux/config.sub
Changed
@@ -1,12 +1,14 @@ #! /bin/sh # Configuration validation subroutine script. -# Copyright 1992-2016 Free Software Foundation, Inc. +# Copyright 1992-2022 Free Software Foundation, Inc. -timestamp='2016-06-20' +# shellcheck disable=SC2006,SC2268 # see below for rationale + +timestamp='2022-01-03' # This file is free software; you can redistribute it and/or modify it # under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 3 of the License, or +# the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, but @@ -15,7 +17,7 @@ # General Public License for more details. # # You should have received a copy of the GNU General Public License -# along with this program; if not, see <http://www.gnu.org/licenses/>. +# along with this program; if not, see <https://www.gnu.org/licenses/>. # # As a special exception to the GNU General Public License, if you # distribute this file as part of a program that contains a @@ -33,7 +35,7 @@ # Otherwise, we print the canonical config type on stdout and succeed. # You can get the latest version of this script from: -# http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub +# https://git.savannah.gnu.org/cgit/config.git/plain/config.sub # This file is supposed to be the same for all GNU packages # and recognize all the CPU types, system types and aliases @@ -50,6 +52,13 @@ # CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM # It is wrong to echo any other type of specification. +# The "shellcheck disable" line above the timestamp inhibits complaints +# about features and limitations of the classic Bourne shell that were +# superseded or lifted in POSIX. However, this script identifies a wide +# variety of pre-POSIX systems that do not have POSIX shells at all, and +# even some reasonably current systems (Solaris 10 as case-in-point) still +# have a pre-POSIX /bin/sh. + me=`echo "$0" | sed -e 's,.*/,,'` usage="\ @@ -57,7 +66,7 @@ Canonicalize a configuration name. -Operation modes: +Options: -h, --help print this help, then exit -t, --time-stamp print date of last modification, then exit -v, --version print version number, then exit @@ -67,7 +76,7 @@ version="\ GNU config.sub ($timestamp) -Copyright 1992-2016 Free Software Foundation, Inc. +Copyright 1992-2022 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." @@ -89,12 +98,12 @@ - ) # Use stdin as input. break ;; -* ) - echo "$me: invalid option $1$help" + echo "$me: invalid option $1$help" >&2 exit 1 ;; *local*) # First pass through any local machine types. - echo $1 + echo "$1" exit ;; * ) @@ -110,1242 +119,1186 @@ exit 1;; esac -# Separate what the user gave into CPU-COMPANY and OS or KERNEL-OS (if any). -# Here we must recognize all the valid KERNEL-OS combinations. -maybe_os=`echo $1 | sed 's/^\(.*\)-\(^-*-^-*\)$/\2/'` -case $maybe_os in - nto-qnx* | linux-gnu* | linux-android* | linux-dietlibc | linux-newlib* | \ - linux-musl* | linux-uclibc* | uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | \ - knetbsd*-gnu* | netbsd*-gnu* | netbsd*-eabi* | \ - kopensolaris*-gnu* | \ - storm-chaos* | os2-emx* | rtmk-nova*) - os=-$maybe_os - basic_machine=`echo $1 | sed 's/^\(.*\)-\(^-*-^-*\)$/\1/'` - ;; - android-linux) - os=-linux-android - basic_machine=`echo $1 | sed 's/^\(.*\)-\(^-*-^-*\)$/\1/'`-unknown - ;; - *) - basic_machine=`echo $1 | sed 's/-^-*$//'` - if $basic_machine != $1 - then os=`echo $1 | sed 's/.*-/-/'` - else os=; fi - ;; -esac +# Split fields of configuration type +# shellcheck disable=SC2162 +saved_IFS=$IFS +IFS="-" read field1 field2 field3 field4 <<EOF +$1 +EOF +IFS=$saved_IFS -### Let's recognize common machines as not being operating systems so -### that things like config.sub decstation-3100 work. We also -### recognize some manufacturers as not being operating systems, so we -### can provide default operating systems below. -case $os in - -sun*os*) - # Prevent following clause from handling this invalid input. - ;; - -dec* | -mips* | -sequent* | -encore* | -pc532* | -sgi* | -sony* | \ - -att* | -7300* | -3300* | -delta* | -motorola* | -sun234* | \ - -unicom* | -ibm* | -next | -hp | -isi* | -apollo | -altos* | \ - -convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\ - -c123* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \ - -harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \ - -apple | -axis | -knuth | -cray | -microblaze*) - os= - basic_machine=$1 - ;; - -bluegene*) - os=-cnk - ;; - -sim | -cisco | -oki | -wec | -winbond) - os= - basic_machine=$1 - ;; - -scout) - ;; - -wrs) - os=-vxworks - basic_machine=$1 - ;; - -chorusos*) - os=-chorusos - basic_machine=$1 - ;; - -chorusrdb) - os=-chorusrdb - basic_machine=$1 - ;; - -hiux*) - os=-hiuxwe2 - ;; - -sco6) - os=-sco5v6 - basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` - ;; - -sco5) - os=-sco3.2v5 - basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` - ;; - -sco4) - os=-sco3.2v4 - basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` - ;; - -sco3.2.4-9*) - os=`echo $os | sed -e 's/sco3.2./sco3.2v/'` - basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` - ;; - -sco3.2v4-9*) - # Don't forget version if it is 3.2v4 or newer. - basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` - ;; - -sco5v6*) - # Don't forget version if it is 3.2v4 or newer. - basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` - ;; - -sco*) - os=-sco3.2v2 - basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` - ;; - -udk*) - basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` - ;; - -isc) - os=-isc2.2 - basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` - ;; - -clix*) - basic_machine=clipper-intergraph - ;; - -isc*) - basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` - ;; - -lynx*178) - os=-lynxos178 - ;; - -lynx*5) - os=-lynxos5 - ;; - -lynx*) - os=-lynxos +# Separate into logical components for further validation +case $1 in + *-*-*-*-*) + echo Invalid configuration \`"$1"\': more than four components >&2 + exit 1 ;; - -ptx*) - basic_machine=`echo $1 | sed -e 's/86-.*/86-sequent/'` + *-*-*-*) + basic_machine=$field1-$field2 + basic_os=$field3-$field4 ;; - -windowsnt*) - os=`echo $os | sed -e 's/windowsnt/winnt/'` + *-*-*) + # Ambiguous whether COMPANY is present, or skipped and KERNEL-OS is two + # parts + maybe_os=$field2-$field3 + case $maybe_os in + nto-qnx* | linux-* | uclinux-uclibc* \ + | uclinux-gnu* | kfreebsd*-gnu* | knetbsd*-gnu* | netbsd*-gnu* \ + | netbsd*-eabi* | kopensolaris*-gnu* | cloudabi*-eabi* \ + | storm-chaos* | os2-emx* | rtmk-nova*) + basic_machine=$field1 + basic_os=$maybe_os + ;; + android-linux) + basic_machine=$field1-unknown + basic_os=linux-android + ;; + *) + basic_machine=$field1-$field2 + basic_os=$field3 + ;; + esac ;; - -psos*) - os=-psos + *-*) + # A lone config we happen to match not fitting any pattern + case $field1-$field2 in + decstation-3100) + basic_machine=mips-dec + basic_os= + ;; + *-*) + # Second component is usually, but not always the OS + case $field2 in + # Prevent following clause from handling this valid os + sun*os*) + basic_machine=$field1 + basic_os=$field2 + ;; + zephyr*) + basic_machine=$field1-unknown + basic_os=$field2 + ;; + # Manufacturers + dec* | mips* | sequent* | encore* | pc533* | sgi* | sony* \ + | att* | 7300* | 3300* | delta* | motorola* | sun234* \ + | unicom* | ibm* | next | hp | isi* | apollo | altos* \ + | convergent* | ncr* | news | 32* | 3600* | 3100* \ + | hitachi* | c123* | convex* | sun | crds | omron* | dg \ + | ultra | tti* | harris | dolphin | highlevel | gould \ + | cbm | ns | masscomp | apple | axis | knuth | cray \ + | microblaze* | sim | cisco \ + | oki | wec | wrs | winbond) + basic_machine=$field1-$field2 + basic_os= + ;; + *) + basic_machine=$field1 + basic_os=$field2 + ;; + esac + ;; + esac ;; - -mint | -mint0-9*) - basic_machine=m68k-atari - os=-mint + *) + # Convert single-component short-hands not valid as part of + # multi-component configurations. + case $field1 in + 386bsd) + basic_machine=i386-pc + basic_os=bsd + ;; + a29khif) + basic_machine=a29k-amd + basic_os=udi + ;; + adobe68k) + basic_machine=m68010-adobe + basic_os=scout + ;; + alliant) + basic_machine=fx80-alliant + basic_os= + ;; + altos | altos3068) + basic_machine=m68k-altos + basic_os= + ;; + am29k) + basic_machine=a29k-none + basic_os=bsd + ;; + amdahl) + basic_machine=580-amdahl + basic_os=sysv + ;; + amiga) + basic_machine=m68k-unknown + basic_os= + ;; + amigaos | amigados) + basic_machine=m68k-unknown + basic_os=amigaos + ;; + amigaunix | amix) + basic_machine=m68k-unknown + basic_os=sysv4 + ;; + apollo68) + basic_machine=m68k-apollo + basic_os=sysv + ;; + apollo68bsd) + basic_machine=m68k-apollo + basic_os=bsd + ;; + aros) + basic_machine=i386-pc + basic_os=aros + ;; + aux) + basic_machine=m68k-apple + basic_os=aux + ;; + balance) + basic_machine=ns32k-sequent + basic_os=dynix + ;; + blackfin) + basic_machine=bfin-unknown + basic_os=linux + ;; + cegcc) + basic_machine=arm-unknown + basic_os=cegcc + ;; + convex-c1) + basic_machine=c1-convex + basic_os=bsd + ;; + convex-c2) + basic_machine=c2-convex + basic_os=bsd + ;; + convex-c32) + basic_machine=c32-convex + basic_os=bsd + ;; + convex-c34) + basic_machine=c34-convex + basic_os=bsd + ;; + convex-c38) + basic_machine=c38-convex + basic_os=bsd + ;; + cray) + basic_machine=j90-cray + basic_os=unicos + ;; + crds | unos) + basic_machine=m68k-crds + basic_os= + ;; + da30) + basic_machine=m68k-da30 + basic_os= + ;; + decstation | pmax | pmin | dec3100 | decstatn) + basic_machine=mips-dec + basic_os= + ;; + delta88) + basic_machine=m88k-motorola + basic_os=sysv3 + ;; + dicos) + basic_machine=i686-pc + basic_os=dicos + ;; + djgpp) + basic_machine=i586-pc + basic_os=msdosdjgpp + ;; + ebmon29k) + basic_machine=a29k-amd + basic_os=ebmon + ;; + es1800 | OSE68k | ose68k | ose | OSE) + basic_machine=m68k-ericsson + basic_os=ose + ;; + gmicro) + basic_machine=tron-gmicro + basic_os=sysv + ;; + go32) + basic_machine=i386-pc + basic_os=go32 + ;; + h8300hms) + basic_machine=h8300-hitachi + basic_os=hms + ;; + h8300xray) + basic_machine=h8300-hitachi + basic_os=xray + ;; + h8500hms) + basic_machine=h8500-hitachi + basic_os=hms + ;; + harris) + basic_machine=m88k-harris + basic_os=sysv3 + ;; + hp300 | hp300hpux) + basic_machine=m68k-hp + basic_os=hpux + ;; + hp300bsd) + basic_machine=m68k-hp + basic_os=bsd + ;; + hppaosf) + basic_machine=hppa1.1-hp + basic_os=osf + ;; + hppro) + basic_machine=hppa1.1-hp + basic_os=proelf + ;; + i386mach) + basic_machine=i386-mach + basic_os=mach + ;; + isi68 | isi) + basic_machine=m68k-isi + basic_os=sysv + ;; + m68knommu) + basic_machine=m68k-unknown + basic_os=linux + ;; + magnum | m3230) + basic_machine=mips-mips + basic_os=sysv + ;; + merlin) + basic_machine=ns32k-utek + basic_os=sysv + ;; + mingw64) + basic_machine=x86_64-pc + basic_os=mingw64 + ;; + mingw32) + basic_machine=i686-pc + basic_os=mingw32 + ;; + mingw32ce) + basic_machine=arm-unknown + basic_os=mingw32ce + ;; + monitor) + basic_machine=m68k-rom68k + basic_os=coff + ;; + morphos) + basic_machine=powerpc-unknown + basic_os=morphos + ;; + moxiebox) + basic_machine=moxie-unknown + basic_os=moxiebox + ;; + msdos) + basic_machine=i386-pc + basic_os=msdos + ;; + msys) + basic_machine=i686-pc + basic_os=msys + ;; + mvs) + basic_machine=i370-ibm + basic_os=mvs + ;; + nacl) + basic_machine=le32-unknown + basic_os=nacl + ;; + ncr3000) + basic_machine=i486-ncr + basic_os=sysv4 + ;; + netbsd386) + basic_machine=i386-pc + basic_os=netbsd + ;; + netwinder) + basic_machine=armv4l-rebel + basic_os=linux + ;; + news | news700 | news800 | news900) + basic_machine=m68k-sony + basic_os=newsos + ;; + news1000) + basic_machine=m68030-sony + basic_os=newsos + ;; + necv70) + basic_machine=v70-nec + basic_os=sysv + ;; + nh3000) + basic_machine=m68k-harris + basic_os=cxux + ;; + nh45000) + basic_machine=m88k-harris + basic_os=cxux + ;; + nindy960) + basic_machine=i960-intel + basic_os=nindy + ;; + mon960) + basic_machine=i960-intel + basic_os=mon960 + ;; + nonstopux) + basic_machine=mips-compaq + basic_os=nonstopux + ;; + os400) + basic_machine=powerpc-ibm + basic_os=os400 + ;; + OSE68000 | ose68000) + basic_machine=m68000-ericsson + basic_os=ose + ;; + os68k) + basic_machine=m68k-none + basic_os=os68k + ;; + paragon) + basic_machine=i860-intel + basic_os=osf + ;; + parisc) + basic_machine=hppa-unknown + basic_os=linux + ;; + psp) + basic_machine=mipsallegrexel-sony + basic_os=psp + ;; + pw32) + basic_machine=i586-unknown + basic_os=pw32 + ;; + rdos | rdos64) + basic_machine=x86_64-pc + basic_os=rdos + ;; + rdos32) + basic_machine=i386-pc + basic_os=rdos + ;; + rom68k) + basic_machine=m68k-rom68k + basic_os=coff + ;; + sa29200) + basic_machine=a29k-amd + basic_os=udi + ;; + sei) + basic_machine=mips-sei + basic_os=seiux + ;; + sequent) + basic_machine=i386-sequent + basic_os= + ;; + sps7) + basic_machine=m68k-bull + basic_os=sysv2 + ;; + st2000) + basic_machine=m68k-tandem + basic_os= + ;; + stratus) + basic_machine=i860-stratus + basic_os=sysv4 + ;; + sun2) + basic_machine=m68000-sun + basic_os= + ;; + sun2os3) + basic_machine=m68000-sun + basic_os=sunos3 + ;; + sun2os4) + basic_machine=m68000-sun + basic_os=sunos4 + ;; + sun3) + basic_machine=m68k-sun + basic_os= + ;; + sun3os3) + basic_machine=m68k-sun + basic_os=sunos3 + ;; + sun3os4) + basic_machine=m68k-sun + basic_os=sunos4 + ;; + sun4) + basic_machine=sparc-sun + basic_os= + ;; + sun4os3) + basic_machine=sparc-sun + basic_os=sunos3 + ;; + sun4os4) + basic_machine=sparc-sun + basic_os=sunos4 + ;; + sun4sol2) + basic_machine=sparc-sun + basic_os=solaris2 + ;; + sun386 | sun386i | roadrunner) + basic_machine=i386-sun + basic_os= + ;; + sv1) + basic_machine=sv1-cray + basic_os=unicos + ;; + symmetry) + basic_machine=i386-sequent + basic_os=dynix + ;; + t3e) + basic_machine=alphaev5-cray + basic_os=unicos + ;; + t90) + basic_machine=t90-cray + basic_os=unicos + ;; + toad1) + basic_machine=pdp10-xkl + basic_os=tops20 + ;; + tpf) + basic_machine=s390x-ibm + basic_os=tpf + ;; + udi29k) + basic_machine=a29k-amd + basic_os=udi + ;; + ultra3) + basic_machine=a29k-nyu + basic_os=sym1 + ;; + v810 | necv810) + basic_machine=v810-nec + basic_os=none + ;; + vaxv) + basic_machine=vax-dec + basic_os=sysv + ;; + vms) + basic_machine=vax-dec + basic_os=vms + ;; + vsta) + basic_machine=i386-pc + basic_os=vsta + ;; + vxworks960) + basic_machine=i960-wrs + basic_os=vxworks + ;; + vxworks68) + basic_machine=m68k-wrs + basic_os=vxworks + ;; + vxworks29k) + basic_machine=a29k-wrs + basic_os=vxworks + ;; + xbox) + basic_machine=i686-pc + basic_os=mingw32 + ;; + ymp) + basic_machine=ymp-cray + basic_os=unicos + ;; + *) + basic_machine=$1 + basic_os= + ;; + esac ;; esac -# Decode aliases for certain CPU-COMPANY combinations. +# Decode 1-component or ad-hoc basic machines case $basic_machine in - # Recognize the basic CPU types without company name. - # Some are omitted here because they have special meanings below. - 1750a | 580 \ - | a29k \ - | aarch64 | aarch64_be \ - | alpha | alphaev4-8 | alphaev56 | alphaev678 | alphapca567 \ - | alpha64 | alpha64ev4-8 | alpha64ev56 | alpha64ev678 | alpha64pca567 \ - | am33_2.0 \ - | arc | arceb \ - | arm | armble | armelb | armv2-8 | armv3-8lb | armv7arm \ - | avr | avr32 \ - | ba \ - | be32 | be64 \ - | bfin \ - | c4x | c8051 | clipper \ - | d10v | d30v | dlx | dsp16xx \ - | e2k | epiphany \ - | fido | fr30 | frv | ft32 \ - | h8300 | h8500 | hppa | hppa1.01 | hppa2.0 | hppa2.0nw | hppa64 \ - | hexagon \ - | i370 | i860 | i960 | ia64 \ - | ip2k | iq2000 \ - | k1om \ - | le32 | le64 \ - | lm32 \ - | m32c | m32r | m32rle | m68000 | m68k | m88k \ - | maxq | mb | microblaze | microblazeel | mcore | mep | metag \ - | mips | mipsbe | mipseb | mipsel | mipsle \ - | mips16 \ - | mips64 | mips64el \ - | mips64octeon | mips64octeonel \ - | mips64orion | mips64orionel \ - | mips64r5900 | mips64r5900el \ - | mips64vr | mips64vrel \ - | mips64vr4100 | mips64vr4100el \ - | mips64vr4300 | mips64vr4300el \ - | mips64vr5000 | mips64vr5000el \ - | mips64vr5900 | mips64vr5900el \ - | mipsisa32 | mipsisa32el \ - | mipsisa32r2 | mipsisa32r2el \ - | mipsisa32r6 | mipsisa32r6el \ - | mipsisa64 | mipsisa64el \ - | mipsisa64r2 | mipsisa64r2el \ - | mipsisa64r6 | mipsisa64r6el \ - | mipsisa64sb1 | mipsisa64sb1el \ - | mipsisa64sr71k | mipsisa64sr71kel \ - | mipsr5900 | mipsr5900el \ - | mipstx39 | mipstx39el \ - | mn10200 | mn10300 \ - | moxie \ - | mt \ - | msp430 \ - | nds32 | nds32le | nds32be \ - | nios | nios2 | nios2eb | nios2el \ - | ns16k | ns32k \ - | open8 | or1k | or1knd | or32 \ - | pdp10 | pdp11 | pj | pjl \ - | powerpc | powerpc64 | powerpc64le | powerpcle \ - | pyramid \ - | riscv32 | riscv64 \ - | rl78 | rx \ - | score \ - | sh | sh1234 | sh24a | sh24aeb | sh23e | sh234eb | sheb | shbe | shle | sh1234le | sh3ele \ - | sh64 | sh64le \ - | sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet | sparclite \ - | sparcv8 | sparcv9 | sparcv9b | sparcv9v \ - | spu \ - | tahoe | tic4x | tic54x | tic55x | tic6x | tic80 | tron \ - | ubicom32 \ - | v850 | v850e | v850e1 | v850e2 | v850es | v850e2v3 \ - | visium \ - | we32k \ - | x86 | xc16x | xstormy16 | xtensa \ - | z8k | z80) - basic_machine=$basic_machine-unknown - ;; - c54x) - basic_machine=tic54x-unknown - ;; - c55x) - basic_machine=tic55x-unknown - ;; - c6x) - basic_machine=tic6x-unknown - ;; - leon|leon3-9) - basic_machine=sparc-$basic_machine - ;; - m6811 | m68hc11 | m6812 | m68hc12 | m68hcs12x | nvptx | picochip) - basic_machine=$basic_machine-unknown - os=-none + # Here we handle the default manufacturer of certain CPU types. It is in + # some cases the only manufacturer, in others, it is the most popular. + w89k) + cpu=hppa1.1 + vendor=winbond ;; - m88110 | m680123460 | m683?2 | m68360 | m5200 | v70 | w65 | z8k) + op50n) + cpu=hppa1.1 + vendor=oki ;; - ms1) - basic_machine=mt-unknown + op60c) + cpu=hppa1.1 + vendor=oki ;; - - strongarm | thumb | xscale) - basic_machine=arm-unknown + ibm*) + cpu=i370 + vendor=ibm ;; - xgate) - basic_machine=$basic_machine-unknown - os=-none + orion105) + cpu=clipper + vendor=highlevel ;; - xscaleeb) - basic_machine=armeb-unknown + mac | mpw | mac-mpw) + cpu=m68k + vendor=apple ;; - - xscaleel) - basic_machine=armel-unknown + pmac | pmac-mpw) + cpu=powerpc + vendor=apple ;; - # We use `pc' rather than `unknown' - # because (1) that's what they normally are, and - # (2) the word "unknown" tends to confuse beginning users. - i*86 | x86_64) - basic_machine=$basic_machine-pc - ;; - # Object if more than one company name word. - *-*-*) - echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2 - exit 1 - ;; - # Recognize the basic CPU types with company name. - 580-* \ - | a29k-* \ - | aarch64-* | aarch64_be-* \ - | alpha-* | alphaev4-8-* | alphaev56-* | alphaev678-* \ - | alpha64-* | alpha64ev4-8-* | alpha64ev56-* | alpha64ev678-* \ - | alphapca567-* | alpha64pca567-* | arc-* | arceb-* \ - | arm-* | armbe-* | armle-* | armeb-* | armv*-* \ - | avr-* | avr32-* \ - | ba-* \ - | be32-* | be64-* \ - | bfin-* | bs2000-* \ - | c123* | c30-* | cjt90-* | c4x-* \ - | c8051-* | clipper-* | craynv-* | cydra-* \ - | d10v-* | d30v-* | dlx-* \ - | e2k-* | elxsi-* \ - | f3001-* | f700-* | fido-* | fr30-* | frv-* | fx80-* \ - | h8300-* | h8500-* \ - | hppa-* | hppa1.01-* | hppa2.0-* | hppa2.0nw-* | hppa64-* \ - | hexagon-* \ - | i*86-* | i860-* | i960-* | ia64-* \ - | ip2k-* | iq2000-* \ - | k1om-* \ - | le32-* | le64-* \ - | lm32-* \ - | m32c-* | m32r-* | m32rle-* \ - | m68000-* | m6800123460-* | m68360-* | m683?2-* | m68k-* \ - | m88110-* | m88k-* | maxq-* | mcore-* | metag-* \ - | microblaze-* | microblazeel-* \ - | mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \ - | mips16-* \ - | mips64-* | mips64el-* \ - | mips64octeon-* | mips64octeonel-* \ - | mips64orion-* | mips64orionel-* \ - | mips64r5900-* | mips64r5900el-* \ - | mips64vr-* | mips64vrel-* \ - | mips64vr4100-* | mips64vr4100el-* \ - | mips64vr4300-* | mips64vr4300el-* \ - | mips64vr5000-* | mips64vr5000el-* \ - | mips64vr5900-* | mips64vr5900el-* \ - | mipsisa32-* | mipsisa32el-* \ - | mipsisa32r2-* | mipsisa32r2el-* \ - | mipsisa32r6-* | mipsisa32r6el-* \ - | mipsisa64-* | mipsisa64el-* \ - | mipsisa64r2-* | mipsisa64r2el-* \ - | mipsisa64r6-* | mipsisa64r6el-* \ - | mipsisa64sb1-* | mipsisa64sb1el-* \ - | mipsisa64sr71k-* | mipsisa64sr71kel-* \ - | mipsr5900-* | mipsr5900el-* \ - | mipstx39-* | mipstx39el-* \ - | mmix-* \ - | mt-* \ - | msp430-* \ - | nds32-* | nds32le-* | nds32be-* \ - | nios-* | nios2-* | nios2eb-* | nios2el-* \ - | none-* | np1-* | ns16k-* | ns32k-* \ - | open8-* \ - | or1k*-* \ - | orion-* \ - | pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \ - | powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* \ - | pyramid-* \ - | riscv32-* | riscv64-* \ - | rl78-* | romp-* | rs6000-* | rx-* \ - | sh-* | sh1234-* | sh24a-* | sh24aeb-* | sh23e-* | sh34eb-* | sheb-* | shbe-* \ - | shle-* | sh1234le-* | sh3ele-* | sh64-* | sh64le-* \ - | sparc-* | sparc64-* | sparc64b-* | sparc64v-* | sparc86x-* | sparclet-* \ - | sparclite-* \ - | sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | sv1-* | sx*-* \ - | tahoe-* \ - | tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* \ - | tile*-* \ - | tron-* \ - | ubicom32-* \ - | v850-* | v850e-* | v850e1-* | v850es-* | v850e2-* | v850e2v3-* \ - | vax-* \ - | visium-* \ - | we32k-* \ - | x86-* | x86_64-* | xc16x-* | xps100-* \ - | xstormy16-* | xtensa*-* \ - | ymp-* \ - | z8k-* | z80-*) - ;; - # Recognize the basic CPU types without company name, with glob match. - xtensa*) - basic_machine=$basic_machine-unknown - ;; # Recognize the various machine names and aliases which stand # for a CPU type and a company and sometimes even an OS. - 386bsd) - basic_machine=i386-unknown - os=-bsd - ;; 3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc) - basic_machine=m68000-att + cpu=m68000 + vendor=att ;; 3b*) - basic_machine=we32k-att - ;; - a29khif) - basic_machine=a29k-amd - os=-udi - ;; - abacus) - basic_machine=abacus-unknown - ;; - adobe68k) - basic_machine=m68010-adobe - os=-scout - ;; - alliant | fx80) - basic_machine=fx80-alliant - ;; - altos | altos3068) - basic_machine=m68k-altos - ;; - am29k) - basic_machine=a29k-none - os=-bsd - ;; - amd64) - basic_machine=x86_64-pc - ;; - amd64-*) - basic_machine=x86_64-`echo $basic_machine | sed 's/^^-*-//'` - ;; - amdahl) - basic_machine=580-amdahl - os=-sysv - ;; - amiga | amiga-*) - basic_machine=m68k-unknown - ;; - amigaos | amigados) - basic_machine=m68k-unknown - os=-amigaos - ;; - amigaunix | amix) - basic_machine=m68k-unknown - os=-sysv4 - ;; - apollo68) - basic_machine=m68k-apollo - os=-sysv - ;; - apollo68bsd) - basic_machine=m68k-apollo - os=-bsd - ;; - aros) - basic_machine=i386-pc - os=-aros - ;; - asmjs) - basic_machine=asmjs-unknown - ;; - aux) - basic_machine=m68k-apple - os=-aux - ;; - balance) - basic_machine=ns32k-sequent - os=-dynix - ;; - blackfin) - basic_machine=bfin-unknown - os=-linux - ;; - blackfin-*) - basic_machine=bfin-`echo $basic_machine | sed 's/^^-*-//'` - os=-linux + cpu=we32k + vendor=att ;; bluegene*) - basic_machine=powerpc-ibm - os=-cnk - ;; - c54x-*) - basic_machine=tic54x-`echo $basic_machine | sed 's/^^-*-//'` - ;; - c55x-*) - basic_machine=tic55x-`echo $basic_machine | sed 's/^^-*-//'` - ;; - c6x-*) - basic_machine=tic6x-`echo $basic_machine | sed 's/^^-*-//'` - ;; - c90) - basic_machine=c90-cray - os=-unicos - ;; - cegcc) - basic_machine=arm-unknown - os=-cegcc - ;; - convex-c1) - basic_machine=c1-convex - os=-bsd - ;; - convex-c2) - basic_machine=c2-convex - os=-bsd - ;; - convex-c32) - basic_machine=c32-convex - os=-bsd - ;; - convex-c34) - basic_machine=c34-convex - os=-bsd - ;; - convex-c38) - basic_machine=c38-convex - os=-bsd - ;; - cray | j90) - basic_machine=j90-cray - os=-unicos - ;; - craynv) - basic_machine=craynv-cray - os=-unicosmp - ;; - cr16 | cr16-*) - basic_machine=cr16-unknown - os=-elf - ;; - crds | unos) - basic_machine=m68k-crds - ;; - crisv32 | crisv32-* | etraxfs*) - basic_machine=crisv32-axis - ;; - cris | cris-* | etrax*) - basic_machine=cris-axis - ;; - crx) - basic_machine=crx-unknown - os=-elf - ;; - da30 | da30-*) - basic_machine=m68k-da30 - ;; - decstation | decstation-3100 | pmax | pmax-* | pmin | dec3100 | decstatn) - basic_machine=mips-dec + cpu=powerpc + vendor=ibm + basic_os=cnk ;; decsystem10* | dec10*) - basic_machine=pdp10-dec - os=-tops10 + cpu=pdp10 + vendor=dec + basic_os=tops10 ;; decsystem20* | dec20*) - basic_machine=pdp10-dec - os=-tops20 + cpu=pdp10 + vendor=dec + basic_os=tops20 ;; delta | 3300 | motorola-3300 | motorola-delta \ | 3300-motorola | delta-motorola) - basic_machine=m68k-motorola - ;; - delta88) - basic_machine=m88k-motorola - os=-sysv3 - ;; - dicos) - basic_machine=i686-pc - os=-dicos + cpu=m68k + vendor=motorola ;; - djgpp) - basic_machine=i586-pc - os=-msdosdjgpp - ;; - dpx20 | dpx20-*) - basic_machine=rs6000-bull - os=-bosx - ;; - dpx2* | dpx2*-bull) - basic_machine=m68k-bull - os=-sysv3 - ;; - e500v12) - basic_machine=powerpc-unknown - os=$os"spe" - ;; - e500v12-*) - basic_machine=powerpc-`echo $basic_machine | sed 's/^^-*-//'` - os=$os"spe" - ;; - ebmon29k) - basic_machine=a29k-amd - os=-ebmon - ;; - elxsi) - basic_machine=elxsi-elxsi - os=-bsd + dpx2*) + cpu=m68k + vendor=bull + basic_os=sysv3 ;; encore | umax | mmax) - basic_machine=ns32k-encore + cpu=ns32k + vendor=encore ;; - es1800 | OSE68k | ose68k | ose | OSE) - basic_machine=m68k-ericsson - os=-ose + elxsi) + cpu=elxsi + vendor=elxsi + basic_os=${basic_os:-bsd} ;; fx2800) - basic_machine=i860-alliant + cpu=i860 + vendor=alliant ;; genix) - basic_machine=ns32k-ns - ;; - gmicro) - basic_machine=tron-gmicro - os=-sysv - ;; - go32) - basic_machine=i386-pc - os=-go32 + cpu=ns32k + vendor=ns ;; h3050r* | hiux*) - basic_machine=hppa1.1-hitachi - os=-hiuxwe2 - ;; - h8300hms) - basic_machine=h8300-hitachi - os=-hms - ;; - h8300xray) - basic_machine=h8300-hitachi - os=-xray - ;; - h8500hms) - basic_machine=h8500-hitachi - os=-hms - ;; - harris) - basic_machine=m88k-harris - os=-sysv3 - ;; - hp300-*) - basic_machine=m68k-hp - ;; - hp300bsd) - basic_machine=m68k-hp - os=-bsd - ;; - hp300hpux) - basic_machine=m68k-hp - os=-hpux + cpu=hppa1.1 + vendor=hitachi + basic_os=hiuxwe2 ;; hp3k90-90-9 | hp90-90-9) - basic_machine=hppa1.0-hp + cpu=hppa1.0 + vendor=hp ;; hp9k20-90-9 | hp9k310-9) - basic_machine=m68000-hp + cpu=m68000 + vendor=hp ;; hp9k32-90-9) - basic_machine=m68k-hp + cpu=m68k + vendor=hp ;; hp9k60-90-9 | hp60-90-9) - basic_machine=hppa1.0-hp + cpu=hppa1.0 + vendor=hp ;; hp9k70-790-9 | hp70-790-9) - basic_machine=hppa1.1-hp + cpu=hppa1.1 + vendor=hp ;; hp9k780-9 | hp780-9) # FIXME: really hppa2.0-hp - basic_machine=hppa1.1-hp + cpu=hppa1.1 + vendor=hp ;; hp9k8671 | hp8671 | hp9k8024 | hp8024 | hp9k8789 | hp8789 | hp9k893 | hp893) # FIXME: really hppa2.0-hp - basic_machine=hppa1.1-hp + cpu=hppa1.1 + vendor=hp ;; hp9k80-913679 | hp80-913679) - basic_machine=hppa1.1-hp + cpu=hppa1.1 + vendor=hp ;; hp9k80-90-9 | hp80-90-9) - basic_machine=hppa1.0-hp - ;; - hppa-next) - os=-nextstep3 - ;; - hppaosf) - basic_machine=hppa1.1-hp - os=-osf - ;; - hppro) - basic_machine=hppa1.1-hp - os=-proelf - ;; - i370-ibm* | ibm*) - basic_machine=i370-ibm + cpu=hppa1.0 + vendor=hp ;; i*86v32) - basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` - os=-sysv32 + cpu=`echo "$1" | sed -e 's/86.*/86/'` + vendor=pc + basic_os=sysv32 ;; i*86v4*) - basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` - os=-sysv4 + cpu=`echo "$1" | sed -e 's/86.*/86/'` + vendor=pc + basic_os=sysv4 ;; i*86v) - basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` - os=-sysv + cpu=`echo "$1" | sed -e 's/86.*/86/'` + vendor=pc + basic_os=sysv ;; i*86sol2) - basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` - os=-solaris2 + cpu=`echo "$1" | sed -e 's/86.*/86/'` + vendor=pc + basic_os=solaris2 ;; - i386mach) - basic_machine=i386-mach - os=-mach - ;; - i386-vsta | vsta) - basic_machine=i386-unknown - os=-vsta + j90 | j90-cray) + cpu=j90 + vendor=cray + basic_os=${basic_os:-unicos} ;; iris | iris4d) - basic_machine=mips-sgi - case $os in - -irix*) + cpu=mips + vendor=sgi + case $basic_os in + irix*) ;; *) - os=-irix4 + basic_os=irix4 ;; esac ;; - isi68 | isi) - basic_machine=m68k-isi - os=-sysv - ;; - leon-*|leon3-9-*) - basic_machine=sparc-`echo $basic_machine | sed 's/-.*//'` - ;; - m68knommu) - basic_machine=m68k-unknown - os=-linux - ;; - m68knommu-*) - basic_machine=m68k-`echo $basic_machine | sed 's/^^-*-//'` - os=-linux - ;; - m88k-omron*) - basic_machine=m88k-omron - ;; - magnum | m3230) - basic_machine=mips-mips - os=-sysv - ;; - merlin) - basic_machine=ns32k-utek - os=-sysv - ;; - microblaze*) - basic_machine=microblaze-xilinx - ;; - mingw64) - basic_machine=x86_64-pc - os=-mingw64 - ;; - mingw32) - basic_machine=i686-pc - os=-mingw32 - ;; - mingw32ce) - basic_machine=arm-unknown - os=-mingw32ce - ;; miniframe) - basic_machine=m68000-convergent - ;; - *mint | -mint0-9* | *MiNT | *MiNT0-9*) - basic_machine=m68k-atari - os=-mint - ;; - mips3*-*) - basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'` - ;; - mips3*) - basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`-unknown - ;; - monitor) - basic_machine=m68k-rom68k - os=-coff - ;; - morphos) - basic_machine=powerpc-unknown - os=-morphos - ;; - moxiebox) - basic_machine=moxie-unknown - os=-moxiebox - ;; - msdos) - basic_machine=i386-pc - os=-msdos - ;; - ms1-*) - basic_machine=`echo $basic_machine | sed -e 's/ms1-/mt-/'` - ;; - msys) - basic_machine=i686-pc - os=-msys - ;; - mvs) - basic_machine=i370-ibm - os=-mvs - ;; - nacl) - basic_machine=le32-unknown - os=-nacl + cpu=m68000 + vendor=convergent ;; - ncr3000) - basic_machine=i486-ncr - os=-sysv4 - ;; - netbsd386) - basic_machine=i386-unknown - os=-netbsd - ;; - netwinder) - basic_machine=armv4l-rebel - os=-linux - ;; - news | news700 | news800 | news900) - basic_machine=m68k-sony - os=-newsos - ;; - news1000) - basic_machine=m68030-sony - os=-newsos + *mint | mint0-9* | *MiNT | *MiNT0-9*) + cpu=m68k + vendor=atari + basic_os=mint ;; news-3600 | risc-news) - basic_machine=mips-sony - os=-newsos - ;; - necv70) - basic_machine=v70-nec - os=-sysv - ;; - next | m*-next ) - basic_machine=m68k-next - case $os in - -nextstep* ) + cpu=mips + vendor=sony + basic_os=newsos + ;; + next | m*-next) + cpu=m68k + vendor=next + case $basic_os in + openstep*) + ;; + nextstep*) ;; - -ns2*) - os=-nextstep2 + ns2*) + basic_os=nextstep2 ;; *) - os=-nextstep3 + basic_os=nextstep3 ;; esac ;; - nh3000) - basic_machine=m68k-harris - os=-cxux - ;; - nh45000) - basic_machine=m88k-harris - os=-cxux - ;; - nindy960) - basic_machine=i960-intel - os=-nindy - ;; - mon960) - basic_machine=i960-intel - os=-mon960 - ;; - nonstopux) - basic_machine=mips-compaq - os=-nonstopux - ;; np1) - basic_machine=np1-gould - ;; - neo-tandem) - basic_machine=neo-tandem - ;; - nse-tandem) - basic_machine=nse-tandem - ;; - nsr-tandem) - basic_machine=nsr-tandem + cpu=np1 + vendor=gould ;; op50n-* | op60c-*) - basic_machine=hppa1.1-oki - os=-proelf - ;; - openrisc | openrisc-*) - basic_machine=or32-unknown - ;; - os400) - basic_machine=powerpc-ibm - os=-os400 - ;; - OSE68000 | ose68000) - basic_machine=m68000-ericsson - os=-ose - ;; - os68k) - basic_machine=m68k-none - os=-os68k + cpu=hppa1.1 + vendor=oki + basic_os=proelf ;; pa-hitachi) - basic_machine=hppa1.1-hitachi - os=-hiuxwe2 - ;; - paragon) - basic_machine=i860-intel - os=-osf - ;; - parisc) - basic_machine=hppa-unknown - os=-linux - ;; - parisc-*) - basic_machine=hppa-`echo $basic_machine | sed 's/^^-*-//'` - os=-linux + cpu=hppa1.1 + vendor=hitachi + basic_os=hiuxwe2 ;; pbd) - basic_machine=sparc-tti + cpu=sparc + vendor=tti ;; pbb) - basic_machine=m68k-tti - ;; - pc532 | pc532-*) - basic_machine=ns32k-pc532 - ;; - pc98) - basic_machine=i386-pc + cpu=m68k + vendor=tti ;; - pc98-*) - basic_machine=i386-`echo $basic_machine | sed 's/^^-*-//'` - ;; - pentium | p5 | k5 | k6 | nexgen | viac3) - basic_machine=i586-pc - ;; - pentiumpro | p6 | 6x86 | athlon | athlon_*) - basic_machine=i686-pc - ;; - pentiumii | pentium2 | pentiumiii | pentium3) - basic_machine=i686-pc - ;; - pentium4) - basic_machine=i786-pc - ;; - pentium-* | p5-* | k5-* | k6-* | nexgen-* | viac3-*) - basic_machine=i586-`echo $basic_machine | sed 's/^^-*-//'` - ;; - pentiumpro-* | p6-* | 6x86-* | athlon-*) - basic_machine=i686-`echo $basic_machine | sed 's/^^-*-//'` - ;; - pentiumii-* | pentium2-* | pentiumiii-* | pentium3-*) - basic_machine=i686-`echo $basic_machine | sed 's/^^-*-//'` - ;; - pentium4-*) - basic_machine=i786-`echo $basic_machine | sed 's/^^-*-//'` + pc532) + cpu=ns32k + vendor=pc532 ;; pn) - basic_machine=pn-gould - ;; - power) basic_machine=power-ibm - ;; - ppc | ppcbe) basic_machine=powerpc-unknown + cpu=pn + vendor=gould ;; - ppc-* | ppcbe-*) - basic_machine=powerpc-`echo $basic_machine | sed 's/^^-*-//'` - ;; - ppcle | powerpclittle | ppc-le | powerpc-little) - basic_machine=powerpcle-unknown - ;; - ppcle-* | powerpclittle-*) - basic_machine=powerpcle-`echo $basic_machine | sed 's/^^-*-//'` - ;; - ppc64) basic_machine=powerpc64-unknown - ;; - ppc64-*) basic_machine=powerpc64-`echo $basic_machine | sed 's/^^-*-//'` - ;; - ppc64le | powerpc64little | ppc64-le | powerpc64-little) - basic_machine=powerpc64le-unknown - ;; - ppc64le-* | powerpc64little-*) - basic_machine=powerpc64le-`echo $basic_machine | sed 's/^^-*-//'` + power) + cpu=power + vendor=ibm ;; ps2) - basic_machine=i386-ibm - ;; - pw32) - basic_machine=i586-unknown - os=-pw32 - ;; - rdos | rdos64) - basic_machine=x86_64-pc - os=-rdos - ;; - rdos32) - basic_machine=i386-pc - os=-rdos - ;; - rom68k) - basic_machine=m68k-rom68k - os=-coff + cpu=i386 + vendor=ibm ;; rm4600) - basic_machine=mips-siemens + cpu=mips + vendor=siemens ;; rtpc | rtpc-*) - basic_machine=romp-ibm - ;; - s390 | s390-*) - basic_machine=s390-ibm + cpu=romp + vendor=ibm ;; - s390x | s390x-*) - basic_machine=s390x-ibm - ;; - sa29200) - basic_machine=a29k-amd - os=-udi + sde) + cpu=mipsisa32 + vendor=sde + basic_os=${basic_os:-elf} ;; - sb1) - basic_machine=mipsisa64sb1-unknown + simso-wrs) + cpu=sparclite + vendor=wrs + basic_os=vxworks ;; - sb1el) - basic_machine=mipsisa64sb1el-unknown + tower | tower-32) + cpu=m68k + vendor=ncr ;; - sde) - basic_machine=mipsisa32-sde - os=-elf + vpp*|vx|vx-*) + cpu=f301 + vendor=fujitsu ;; - sei) - basic_machine=mips-sei - os=-seiux + w65) + cpu=w65 + vendor=wdc ;; - sequent) - basic_machine=i386-sequent + w89k-*) + cpu=hppa1.1 + vendor=winbond + basic_os=proelf ;; - sh) - basic_machine=sh-hitachi - os=-hms + none) + cpu=none + vendor=none ;; - sh5el) - basic_machine=sh5le-unknown + leon|leon3-9) + cpu=sparc + vendor=$basic_machine ;; - sh64) - basic_machine=sh64-unknown + leon-*|leon3-9-*) + cpu=sparc + vendor=`echo "$basic_machine" | sed 's/-.*//'` ;; - sparclite-wrs | simso-wrs) - basic_machine=sparclite-wrs - os=-vxworks + + *-*) + # shellcheck disable=SC2162 + saved_IFS=$IFS + IFS="-" read cpu vendor <<EOF +$basic_machine +EOF + IFS=$saved_IFS ;; - sps7) - basic_machine=m68k-bull - os=-sysv2 + # We use `pc' rather than `unknown' + # because (1) that's what they normally are, and + # (2) the word "unknown" tends to confuse beginning users. + i*86 | x86_64) + cpu=$basic_machine + vendor=pc ;; - spur) - basic_machine=spur-unknown + # These rules are duplicated from below for sake of the special case above; + # i.e. things that normalized to x86 arches should also default to "pc" + pc98) + cpu=i386 + vendor=pc ;; - st2000) - basic_machine=m68k-tandem + x64 | amd64) + cpu=x86_64 + vendor=pc ;; - stratus) - basic_machine=i860-stratus - os=-sysv4 + # Recognize the basic CPU types without company name. + *) + cpu=$basic_machine + vendor=unknown ;; - strongarm-* | thumb-*) - basic_machine=arm-`echo $basic_machine | sed 's/^^-*-//'` +esac + +unset -v basic_machine + +# Decode basic machines in the full and proper CPU-Company form. +case $cpu-$vendor in + # Here we handle the default manufacturer of certain CPU types in canonical form. It is in + # some cases the only manufacturer, in others, it is the most popular. + craynv-unknown) + vendor=cray + basic_os=${basic_os:-unicosmp} ;; - sun2) - basic_machine=m68000-sun + c90-unknown | c90-cray) + vendor=cray + basic_os=${Basic_os:-unicos} ;; - sun2os3) - basic_machine=m68000-sun - os=-sunos3 + fx80-unknown) + vendor=alliant ;; - sun2os4) - basic_machine=m68000-sun - os=-sunos4 + romp-unknown) + vendor=ibm ;; - sun3os3) - basic_machine=m68k-sun - os=-sunos3 + mmix-unknown) + vendor=knuth ;; - sun3os4) - basic_machine=m68k-sun - os=-sunos4 + microblaze-unknown | microblazeel-unknown) + vendor=xilinx ;; - sun4os3) - basic_machine=sparc-sun - os=-sunos3 + rs6000-unknown) + vendor=ibm ;; - sun4os4) - basic_machine=sparc-sun - os=-sunos4 + vax-unknown) + vendor=dec ;; - sun4sol2) - basic_machine=sparc-sun - os=-solaris2 + pdp11-unknown) + vendor=dec ;; - sun3 | sun3-*) - basic_machine=m68k-sun + we32k-unknown) + vendor=att ;; - sun4) - basic_machine=sparc-sun + cydra-unknown) + vendor=cydrome ;; - sun386 | sun386i | roadrunner) - basic_machine=i386-sun + i370-ibm*) + vendor=ibm ;; - sv1) - basic_machine=sv1-cray - os=-unicos + orion-unknown) + vendor=highlevel ;; - symmetry) - basic_machine=i386-sequent - os=-dynix + xps-unknown | xps100-unknown) + cpu=xps100 + vendor=honeywell ;; - t3e) - basic_machine=alphaev5-cray - os=-unicos + + # Here we normalize CPU types with a missing or matching vendor + armh-unknown | armh-alt) + cpu=armv7l + vendor=alt + basic_os=${basic_os:-linux-gnueabihf} ;; - t90) - basic_machine=t90-cray - os=-unicos + dpx20-unknown | dpx20-bull) + cpu=rs6000 + vendor=bull + basic_os=${basic_os:-bosx} ;; - tile*) - basic_machine=$basic_machine-unknown - os=-linux-gnu + + # Here we normalize CPU types irrespective of the vendor + amd64-*) + cpu=x86_64 ;; - tx39) - basic_machine=mipstx39-unknown + blackfin-*) + cpu=bfin + basic_os=linux ;; - tx39el) - basic_machine=mipstx39el-unknown + c54x-*) + cpu=tic54x ;; - toad1) - basic_machine=pdp10-xkl - os=-tops20 + c55x-*) + cpu=tic55x ;; - tower | tower-32) - basic_machine=m68k-ncr + c6x-*) + cpu=tic6x ;; - tpf) - basic_machine=s390x-ibm - os=-tpf + e500v12-*) + cpu=powerpc + basic_os=${basic_os}"spe" ;; - udi29k) - basic_machine=a29k-amd - os=-udi + mips3*-*) + cpu=mips64 ;; - ultra3) - basic_machine=a29k-nyu - os=-sym1 + ms1-*) + cpu=mt ;; - v810 | necv810) - basic_machine=v810-nec - os=-none + m68knommu-*) + cpu=m68k + basic_os=linux ;; - vaxv) - basic_machine=vax-dec - os=-sysv + m9s12z-* | m68hcs12z-* | hcs12z-* | s12z-*) + cpu=s12z ;; - vms) - basic_machine=vax-dec - os=-vms + openrisc-*) + cpu=or32 ;; - vpp*|vx|vx-*) - basic_machine=f301-fujitsu + parisc-*) + cpu=hppa + basic_os=linux ;; - vxworks960) - basic_machine=i960-wrs - os=-vxworks + pentium-* | p5-* | k5-* | k6-* | nexgen-* | viac3-*) + cpu=i586 ;; - vxworks68) - basic_machine=m68k-wrs - os=-vxworks + pentiumpro-* | p6-* | 6x86-* | athlon-* | athalon_*-*) + cpu=i686 ;; - vxworks29k) - basic_machine=a29k-wrs - os=-vxworks + pentiumii-* | pentium2-* | pentiumiii-* | pentium3-*) + cpu=i686 ;; - w65*) - basic_machine=w65-wdc - os=-none + pentium4-*) + cpu=i786 ;; - w89k-*) - basic_machine=hppa1.1-winbond - os=-proelf + pc98-*) + cpu=i386 ;; - xbox) - basic_machine=i686-pc - os=-mingw32 + ppc-* | ppcbe-*) + cpu=powerpc ;; - xps | xps100) - basic_machine=xps100-honeywell + ppcle-* | powerpclittle-*) + cpu=powerpcle ;; - xscale-* | xscaleebl-*) - basic_machine=`echo $basic_machine | sed 's/^xscale/arm/'` + ppc64-*) + cpu=powerpc64 ;; - ymp) - basic_machine=ymp-cray - os=-unicos + ppc64le-* | powerpc64little-*) + cpu=powerpc64le ;; - z8k-*-coff) - basic_machine=z8k-unknown - os=-sim + sb1-*) + cpu=mipsisa64sb1 ;; - z80-*-coff) - basic_machine=z80-unknown - os=-sim + sb1el-*) + cpu=mipsisa64sb1el ;; - none) - basic_machine=none-none - os=-none + sh5elb-*) + cpu=`echo "$cpu" | sed 's/^\(sh.\)e\(.\)$/\1\2e/'` ;; - -# Here we handle the default manufacturer of certain CPU types. It is in -# some cases the only manufacturer, in others, it is the most popular. - w89k) - basic_machine=hppa1.1-winbond + spur-*) + cpu=spur ;; - op50n) - basic_machine=hppa1.1-oki + strongarm-* | thumb-*) + cpu=arm ;; - op60c) - basic_machine=hppa1.1-oki + tx39-*) + cpu=mipstx39 ;; - romp) - basic_machine=romp-ibm + tx39el-*) + cpu=mipstx39el ;; - mmix) - basic_machine=mmix-knuth + x64-*) + cpu=x86_64 ;; - rs6000) - basic_machine=rs6000-ibm + xscale-* | xscaleebl-*) + cpu=`echo "$cpu" | sed 's/^xscale/arm/'` ;; - vax) - basic_machine=vax-dec + arm64-* | aarch64le-*) + cpu=aarch64 ;; - pdp10) - # there are many clones, so DEC is not a safe bet - basic_machine=pdp10-unknown + + # Recognize the canonical CPU Types that limit and/or modify the + # company names they are paired with. + cr16-*) + basic_os=${basic_os:-elf} ;; - pdp11) - basic_machine=pdp11-dec + crisv32-* | etraxfs*-*) + cpu=crisv32 + vendor=axis ;; - we32k) - basic_machine=we32k-att + cris-* | etrax*-*) + cpu=cris + vendor=axis ;; - sh1234 | sh24a | sh24aeb | sh34eb | sh1234le | sh23ele) - basic_machine=sh-unknown + crx-*) + basic_os=${basic_os:-elf} ;; - sparc | sparcv8 | sparcv9 | sparcv9b | sparcv9v) - basic_machine=sparc-sun + neo-tandem) + cpu=neo + vendor=tandem ;; - cydra) - basic_machine=cydra-cydrome + nse-tandem) + cpu=nse + vendor=tandem ;; - orion) - basic_machine=orion-highlevel + nsr-tandem) + cpu=nsr + vendor=tandem ;; - orion105) - basic_machine=clipper-highlevel + nsv-tandem) + cpu=nsv + vendor=tandem ;; - mac | mpw | mac-mpw) - basic_machine=m68k-apple + nsx-tandem) + cpu=nsx + vendor=tandem ;; - pmac | pmac-mpw) - basic_machine=powerpc-apple + mipsallegrexel-sony) + cpu=mipsallegrexel + vendor=sony ;; - *-unknown) - # Make sure to match an already-canonicalized machine name. + tile*-*) + basic_os=${basic_os:-linux-gnu} ;; + *) - echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2 - exit 1 + # Recognize the canonical CPU types that are allowed with any + # company name. + case $cpu in + 1750a | 580 \ + | a29k \ + | aarch64 | aarch64_be \ + | abacus \ + | alpha | alphaev4-8 | alphaev56 | alphaev678 \ + | alpha64 | alpha64ev4-8 | alpha64ev56 | alpha64ev678 \ + | alphapca567 | alpha64pca567 \ + | am33_2.0 \ + | amdgcn \ + | arc | arceb | arc32 | arc64 \ + | arm | armlbe | armelb | armv* \ + | avr | avr32 \ + | asmjs \ + | ba \ + | be32 | be64 \ + | bfin | bpf | bs2000 \ + | c123* | c30 | cjt90 | c4x \ + | c8051 | clipper | craynv | csky | cydra \ + | d10v | d30v | dlx | dsp16xx \ + | e2k | elxsi | epiphany \ + | f3001 | f700 | fido | fr30 | frv | ft32 | fx80 \ + | h8300 | h8500 \ + | hppa | hppa1.01 | hppa2.0 | hppa2.0nw | hppa64 \ + | hexagon \ + | i370 | i*86 | i860 | i960 | ia16 | ia64 \ + | ip2k | iq2000 \ + | k1om \ + | le32 | le64 \ + | lm32 \ + | loongarch32 | loongarch64 | loongarchx32 \ + | m32c | m32r | m32rle \ + | m5200 | m68000 | m6800123460 | m68360 | m683?2 | m68k \ + | m6811 | m68hc11 | m6812 | m68hc12 | m68hcs12x \ + | m88110 | m88k | maxq | mb | mcore | mep | metag \ + | microblaze | microblazeel \ + | mips | mipsbe | mipseb | mipsel | mipsle \ + | mips16 \ + | mips64 | mips64eb | mips64el \ + | mips64octeon | mips64octeonel \ + | mips64orion | mips64orionel \ + | mips64r5900 | mips64r5900el \ + | mips64vr | mips64vrel \ + | mips64vr4100 | mips64vr4100el \ + | mips64vr4300 | mips64vr4300el \ + | mips64vr5000 | mips64vr5000el \ + | mips64vr5900 | mips64vr5900el \ + | mipsisa32 | mipsisa32el \ + | mipsisa32r2 | mipsisa32r2el \ + | mipsisa32r3 | mipsisa32r3el \ + | mipsisa32r5 | mipsisa32r5el \ + | mipsisa32r6 | mipsisa32r6el \ + | mipsisa64 | mipsisa64el \ + | mipsisa64r2 | mipsisa64r2el \ + | mipsisa64r3 | mipsisa64r3el \ + | mipsisa64r5 | mipsisa64r5el \ + | mipsisa64r6 | mipsisa64r6el \ + | mipsisa64sb1 | mipsisa64sb1el \ + | mipsisa64sr71k | mipsisa64sr71kel \ + | mipsr5900 | mipsr5900el \ + | mipstx39 | mipstx39el \ + | mmix \ + | mn10200 | mn10300 \ + | moxie \ + | mt \ + | msp430 \ + | nds32 | nds32le | nds32be \ + | nfp \ + | nios | nios2 | nios2eb | nios2el \ + | none | np1 | ns16k | ns32k | nvptx \ + | open8 \ + | or1k* \ + | or32 \ + | orion \ + | picochip \ + | pdp10 | pdp11 | pj | pjl | pn | power \ + | powerpc | powerpc64 | powerpc64le | powerpcle | powerpcspe \ + | pru \ + | pyramid \ + | riscv | riscv32 | riscv32be | riscv64 | riscv64be \ + | rl78 | romp | rs6000 | rx \ + | s390 | s390x \ + | score \ + | sh | shl \ + | sh1234 | sh24a | sh24aelb | sh23e | shelb | shlbe \ + | sh1234elb | sh12345lbe | sh23ele | sh64 | sh64le \ + | sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet \ + | sparclite \ + | sparcv8 | sparcv9 | sparcv9b | sparcv9v | sv1 | sx* \ + | spu \ + | tahoe \ + | thumbv7* \ + | tic30 | tic4x | tic54x | tic55x | tic6x | tic80 \ + | tron \ + | ubicom32 \ + | v70 | v850 | v850e | v850e1 | v850es | v850e2 | v850e2v3 \ + | vax \ + | visium \ + | w65 \ + | wasm32 | wasm64 \ + | we32k \ + | x86 | x86_64 | xc16x | xgate | xps100 \ + | xstormy16 | xtensa* \ + | ymp \ + | z8k | z80) + ;; + + *) + echo Invalid configuration \`"$1"\': machine \`"$cpu-$vendor"\' not recognized 1>&2 + exit 1 + ;; + esac ;; esac # Here we canonicalize certain aliases for manufacturers. -case $basic_machine in - *-digital*) - basic_machine=`echo $basic_machine | sed 's/digital.*/dec/'` +case $vendor in + digital*) + vendor=dec ;; - *-commodore*) - basic_machine=`echo $basic_machine | sed 's/commodore.*/cbm/'` + commodore*) + vendor=cbm ;; *) ;; @@ -1353,203 +1306,215 @@ # Decode manufacturer-specific aliases for certain operating systems. -if x"$os" != x"" +if test x$basic_os != x then -case $os in - # First match some system type aliases - # that might get confused with valid system types. - # -solaris* is a basic system type, with this one exception. - -auroraux) - os=-auroraux + +# First recognize some ad-hoc cases, or perhaps split kernel-os, or else just +# set os. +case $basic_os in + gnu/linux*) + kernel=linux + os=`echo "$basic_os" | sed -e 's|gnu/linux|gnu|'` + ;; + os2-emx) + kernel=os2 + os=`echo "$basic_os" | sed -e 's|os2-emx|emx|'` + ;; + nto-qnx*) + kernel=nto + os=`echo "$basic_os" | sed -e 's|nto-qnx|qnx|'` + ;; + *-*) + # shellcheck disable=SC2162 + saved_IFS=$IFS + IFS="-" read kernel os <<EOF +$basic_os +EOF + IFS=$saved_IFS + ;; + # Default OS when just kernel was specified + nto*) + kernel=nto + os=`echo "$basic_os" | sed -e 's|nto|qnx|'` + ;; + linux*) + kernel=linux + os=`echo "$basic_os" | sed -e 's|linux|gnu|'` ;; - -solaris1 | -solaris1.*) - os=`echo $os | sed -e 's|solaris1|sunos4|'` + *) + kernel= + os=$basic_os + ;; +esac + +# Now, normalize the OS (knowing we just have one component, it's not a kernel, +# etc.) +case $os in + # First match some system type aliases that might get confused + # with valid system types. + # solaris* is a basic system type, with this one exception. + auroraux) + os=auroraux ;; - -solaris) - os=-solaris2 + bluegene*) + os=cnk ;; - -svr4*) - os=-sysv4 + solaris1 | solaris1.*) + os=`echo "$os" | sed -e 's|solaris1|sunos4|'` ;; - -unixware*) - os=-sysv4.2uw + solaris) + os=solaris2 ;; - -gnu/linux*) - os=`echo $os | sed -e 's|gnu/linux|linux-gnu|'` + unixware*) + os=sysv4.2uw ;; - # First accept the basic system types. - # The portable systems comes first. - # Each alternative MUST END IN A *, to match a version number. - # -sysv* is not here because it comes later, after sysvr4. - -gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \ - | -*vms* | -sco* | -esix* | -isc* | -aix* | -cnk* | -sunos | -sunos34*\ - | -hpux* | -unos* | -osf* | -luna* | -dgux* | -auroraux* | -solaris* \ - | -sym* | -kopensolaris* | -plan9* \ - | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \ - | -aos* | -aros* | -cloudabi* | -sortix* \ - | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \ - | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \ - | -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* \ - | -bitrig* | -openbsd* | -solidbsd* | -libertybsd* \ - | -ekkobsd* | -kfreebsd* | -freebsd* | -riscix* | -lynxos* \ - | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \ - | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \ - | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \ - | -chorusos* | -chorusrdb* | -cegcc* \ - | -cygwin* | -msys* | -pe* | -psos* | -moss* | -proelf* | -rtems* \ - | -midipix* | -mingw32* | -mingw64* | -linux-gnu* | -linux-android* \ - | -linux-newlib* | -linux-musl* | -linux-uclibc* \ - | -uxpv* | -beos* | -mpeix* | -udk* | -moxiebox* \ - | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \ - | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \ - | -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \ - | -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \ - | -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \ - | -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* \ - | -skyos* | -haiku* | -rdos* | -toppers* | -drops* | -es* \ - | -onefs* | -tirtos* | -phoenix*) - # Remember, each alternative MUST END IN *, to match a version number. - ;; - -qnx*) - case $basic_machine in - x86-* | i*86-*) - ;; - *) - os=-nto$os - ;; - esac + # es1800 is here to avoid being matched by es* (a different OS) + es1800*) + os=ose ;; - -nto-qnx*) + # Some version numbers need modification + chorusos*) + os=chorusos ;; - -nto*) - os=`echo $os | sed -e 's|nto|nto-qnx|'` + isc) + os=isc2.2 ;; - -sim | -es1800* | -hms* | -xray | -os68k* | -none* | -v88r* \ - | -windows* | -osx | -abug | -netware* | -os9* | -beos* | -haiku* \ - | -macos* | -mpw* | -magic* | -mmixware* | -mon960* | -lnews*) + sco6) + os=sco5v6 ;; - -mac*) - os=`echo $os | sed -e 's|mac|macos|'` + sco5) + os=sco3.2v5 ;; - -linux-dietlibc) - os=-linux-dietlibc + sco4) + os=sco3.2v4 ;; - -linux*) - os=`echo $os | sed -e 's|linux|linux-gnu|'` + sco3.2.4-9*) + os=`echo "$os" | sed -e 's/sco3.2./sco3.2v/'` ;; - -sunos5*) - os=`echo $os | sed -e 's|sunos5|solaris2|'` + sco*v* | scout) + # Don't match below ;; - -sunos6*) - os=`echo $os | sed -e 's|sunos6|solaris3|'` + sco*) + os=sco3.2v2 ;; - -opened*) - os=-openedition + psos*) + os=psos ;; - -os400*) - os=-os400 + qnx*) + os=qnx ;; - -wince*) - os=-wince + hiux*) + os=hiuxwe2 ;; - -osfrose*) - os=-osfrose + lynx*178) + os=lynxos178 ;; - -osf*) - os=-osf + lynx*5) + os=lynxos5 ;; - -utek*) - os=-bsd + lynxos*) + # don't get caught up in next wildcard ;; - -dynix*) - os=-bsd + lynx*) + os=lynxos ;; - -acis*) - os=-aos + mac0-9*) + os=`echo "$os" | sed -e 's|mac|macos|'` ;; - -atheos*) - os=-atheos + opened*) + os=openedition ;; - -syllable*) - os=-syllable + os400*) + os=os400 ;; - -386bsd) - os=-bsd + sunos5*) + os=`echo "$os" | sed -e 's|sunos5|solaris2|'` ;; - -ctix* | -uts*) - os=-sysv + sunos6*) + os=`echo "$os" | sed -e 's|sunos6|solaris3|'` ;; - -nova*) - os=-rtmk-nova + wince*) + os=wince ;; - -ns2 ) - os=-nextstep2 + utek*) + os=bsd ;; - -nsk*) - os=-nsk + dynix*) + os=bsd ;; - # Preserve the version number of sinix5. - -sinix5.*) - os=`echo $os | sed -e 's|sinix|sysv|'` + acis*) + os=aos ;; - -sinix*) - os=-sysv4 + atheos*) + os=atheos ;; - -tpf*) - os=-tpf + syllable*) + os=syllable ;; - -triton*) - os=-sysv3 + 386bsd) + os=bsd ;; - -oss*) - os=-sysv3 + ctix* | uts*) + os=sysv ;; - -svr4) - os=-sysv4 + nova*) + os=rtmk-nova ;; - -svr3) - os=-sysv3 + ns2) + os=nextstep2 ;; - -sysvr4) - os=-sysv4 + # Preserve the version number of sinix5. + sinix5.*) + os=`echo "$os" | sed -e 's|sinix|sysv|'` ;; - # This must come after -sysvr4. - -sysv*) + sinix*) + os=sysv4 ;; - -ose*) - os=-ose + tpf*) + os=tpf ;; - -es1800*) - os=-ose + triton*) + os=sysv3 ;; - -xenix) - os=-xenix + oss*) + os=sysv3 ;; - -*mint | -mint0-9* | -*MiNT | -MiNT0-9*) - os=-mint + svr4*) + os=sysv4 ;; - -aros*) - os=-aros + svr3) + os=sysv3 ;; - -zvmoe) - os=-zvmoe + sysvr4) + os=sysv4 ;; - -dicos*) - os=-dicos + ose*) + os=ose ;; - -nacl*) + *mint | mint0-9* | *MiNT | MiNT0-9*) + os=mint ;; - -ios) + dicos*) + os=dicos ;; - -none) + pikeos*) + # Until real need of OS specific support for + # particular features comes up, bare metal + # configurations are quite functional. + case $cpu in + arm*) + os=eabi + ;; + *) + os=elf + ;; + esac ;; *) - # Get rid of the `-' at the beginning of $os. - os=`echo $os | sed 's/^-*-//'` - echo Invalid configuration \`$1\': system \`$os\' not recognized 1>&2 - exit 1 + # No normalization, but not necessarily accepted, that comes below. ;; esac + else # Here we handle the default operating systems that come with various machines. @@ -1562,261 +1527,363 @@ # will signal an error saying that MANUFACTURER isn't an operating # system, and we'll never get to this point. -case $basic_machine in +kernel= +case $cpu-$vendor in score-*) - os=-elf + os=elf ;; spu-*) - os=-elf + os=elf ;; *-acorn) - os=-riscix1.2 + os=riscix1.2 ;; arm*-rebel) - os=-linux + kernel=linux + os=gnu ;; arm*-semi) - os=-aout + os=aout ;; c4x-* | tic4x-*) - os=-coff + os=coff ;; c8051-*) - os=-elf + os=elf + ;; + clipper-intergraph) + os=clix ;; hexagon-*) - os=-elf + os=elf ;; tic54x-*) - os=-coff + os=coff ;; tic55x-*) - os=-coff + os=coff ;; tic6x-*) - os=-coff + os=coff ;; # This must come before the *-dec entry. pdp10-*) - os=-tops20 + os=tops20 ;; pdp11-*) - os=-none + os=none ;; *-dec | vax-*) - os=-ultrix4.2 + os=ultrix4.2 ;; m68*-apollo) - os=-domain + os=domain ;; i386-sun) - os=-sunos4.0.2 + os=sunos4.0.2 ;; m68000-sun) - os=-sunos3 + os=sunos3 ;; m68*-cisco) - os=-aout + os=aout ;; mep-*) - os=-elf + os=elf ;; mips*-cisco) - os=-elf + os=elf ;; mips*-*) - os=-elf + os=elf ;; or32-*) - os=-coff + os=coff ;; *-tti) # must be before sparc entry or we get the wrong os. - os=-sysv3 + os=sysv3 ;; sparc-* | *-sun) - os=-sunos4.1.1 + os=sunos4.1.1 ;; - *-be) - os=-beos + pru-*) + os=elf ;; - *-haiku) - os=-haiku + *-be) + os=beos ;; *-ibm) - os=-aix + os=aix ;; *-knuth) - os=-mmixware + os=mmixware ;; *-wec) - os=-proelf + os=proelf ;; *-winbond) - os=-proelf + os=proelf ;; *-oki) - os=-proelf + os=proelf ;; *-hp) - os=-hpux + os=hpux ;; *-hitachi) - os=-hiux + os=hiux ;; i860-* | *-att | *-ncr | *-altos | *-motorola | *-convergent) - os=-sysv + os=sysv ;; *-cbm) - os=-amigaos + os=amigaos ;; *-dg) - os=-dgux + os=dgux ;; *-dolphin) - os=-sysv3 + os=sysv3 ;; m68k-ccur) - os=-rtu + os=rtu ;; m88k-omron*) - os=-luna + os=luna ;; - *-next ) - os=-nextstep + *-next) + os=nextstep ;; *-sequent) - os=-ptx + os=ptx ;; *-crds) - os=-unos + os=unos ;; *-ns) - os=-genix + os=genix ;; i370-*) - os=-mvs - ;; - *-next) - os=-nextstep3 + os=mvs ;; *-gould) - os=-sysv + os=sysv ;; *-highlevel) - os=-bsd + os=bsd ;; *-encore) - os=-bsd + os=bsd ;; *-sgi) - os=-irix + os=irix ;; *-siemens) - os=-sysv4 + os=sysv4 ;; *-masscomp) - os=-rtu + os=rtu ;; f3001-fujitsu | f700-fujitsu) - os=-uxpv + os=uxpv ;; *-rom68k) - os=-coff + os=coff ;; *-*bug) - os=-coff + os=coff ;; *-apple) - os=-macos + os=macos ;; *-atari*) - os=-mint + os=mint + ;; + *-wrs) + os=vxworks ;; *) - os=-none + os=none ;; esac + fi +# Now, validate our (potentially fixed-up) OS. +case $os in + # Sometimes we do "kernel-libc", so those need to count as OSes. + musl* | newlib* | relibc* | uclibc*) + ;; + # Likewise for "kernel-abi" + eabi* | gnueabi*) + ;; + # VxWorks passes extra cpu info in the 4th filed. + simlinux | simwindows | spe) + ;; + # Now accept the basic system types. + # The portable systems comes first. + # Each alternative MUST end in a * to match a version number. + gnu* | android* | bsd* | mach* | minix* | genix* | ultrix* | irix* \ + | *vms* | esix* | aix* | cnk* | sunos | sunos34* \ + | hpux* | unos* | osf* | luna* | dgux* | auroraux* | solaris* \ + | sym* | plan9* | psp* | sim* | xray* | os68k* | v88r* \ + | hiux* | abug | nacl* | netware* | windows* \ + | os9* | macos* | osx* | ios* \ + | mpw* | magic* | mmixware* | mon960* | lnews* \ + | amigaos* | amigados* | msdos* | newsos* | unicos* | aof* \ + | aos* | aros* | cloudabi* | sortix* | twizzler* \ + | nindy* | vxsim* | vxworks* | ebmon* | hms* | mvs* \ + | clix* | riscos* | uniplus* | iris* | isc* | rtu* | xenix* \ + | mirbsd* | netbsd* | dicos* | openedition* | ose* \ + | bitrig* | openbsd* | secbsd* | solidbsd* | libertybsd* | os108* \ + | ekkobsd* | freebsd* | riscix* | lynxos* | os400* \ + | bosx* | nextstep* | cxux* | aout* | elf* | oabi* \ + | ptx* | coff* | ecoff* | winnt* | domain* | vsta* \ + | udi* | lites* | ieee* | go32* | aux* | hcos* \ + | chorusrdb* | cegcc* | glidix* | serenity* \ + | cygwin* | msys* | pe* | moss* | proelf* | rtems* \ + | midipix* | mingw32* | mingw64* | mint* \ + | uxpv* | beos* | mpeix* | udk* | moxiebox* \ + | interix* | uwin* | mks* | rhapsody* | darwin* \ + | openstep* | oskit* | conix* | pw32* | nonstopux* \ + | storm-chaos* | tops10* | tenex* | tops20* | its* \ + | os2* | vos* | palmos* | uclinux* | nucleus* | morphos* \ + | scout* | superux* | sysv* | rtmk* | tpf* | windiss* \ + | powermax* | dnix* | nx6 | nx7 | sei* | dragonfly* \ + | skyos* | haiku* | rdos* | toppers* | drops* | es* \ + | onefs* | tirtos* | phoenix* | fuchsia* | redox* | bme* \ + | midnightbsd* | amdhsa* | unleashed* | emscripten* | wasi* \ + | nsk* | powerunix* | genode* | zvmoe* | qnx* | emx* | zephyr* \ + | fiwix* ) + ;; + # This one is extra strict with allowed versions + sco3.2v2 | sco3.2v4-9* | sco5v6*) + # Don't forget version if it is 3.2v4 or newer. + ;; + none) + ;; + *) + echo Invalid configuration \`"$1"\': OS \`"$os"\' not recognized 1>&2 + exit 1 + ;; +esac + +# As a final step for OS-related things, validate the OS-kernel combination +# (given a valid OS), if there is a kernel. +case $kernel-$os in + linux-gnu* | linux-dietlibc* | linux-android* | linux-newlib* \ + | linux-musl* | linux-relibc* | linux-uclibc* ) + ;; + uclinux-uclibc* ) + ;; + -dietlibc* | -newlib* | -musl* | -relibc* | -uclibc* ) + # These are just libc implementations, not actual OSes, and thus + # require a kernel. + echo "Invalid configuration \`$1': libc \`$os' needs explicit kernel." 1>&2 + exit 1 + ;; + kfreebsd*-gnu* | kopensolaris*-gnu*) + ;; + vxworks-simlinux | vxworks-simwindows | vxworks-spe) + ;; + nto-qnx*) + ;; + os2-emx) + ;; + *-eabi* | *-gnueabi*) + ;; + -*) + # Blank kernel with real OS is always fine. + ;; + *-*) + echo "Invalid configuration \`$1': Kernel \`$kernel' not known to work with OS \`$os'." 1>&2 + exit 1 + ;; +esac + # Here we handle the case where we know the os, and the CPU type, but not the # manufacturer. We pick the logical manufacturer. -vendor=unknown -case $basic_machine in - *-unknown) - case $os in - -riscix*) +case $vendor in + unknown) + case $cpu-$os in + *-riscix*) vendor=acorn ;; - -sunos*) + *-sunos*) vendor=sun ;; - -cnk*|-aix*) + *-cnk* | *-aix*) vendor=ibm ;; - -beos*) + *-beos*) vendor=be ;; - -hpux*) + *-hpux*) vendor=hp ;; - -mpeix*) + *-mpeix*) vendor=hp ;; - -hiux*) + *-hiux*) vendor=hitachi ;; - -unos*) + *-unos*) vendor=crds ;; - -dgux*) + *-dgux*) vendor=dg ;; - -luna*) + *-luna*) vendor=omron ;; - -genix*) + *-genix*) vendor=ns ;; - -mvs* | -opened*) + *-clix*) + vendor=intergraph + ;; + *-mvs* | *-opened*) + vendor=ibm + ;; + *-os400*) vendor=ibm ;; - -os400*) + s390-* | s390x-*) vendor=ibm ;; - -ptx*) + *-ptx*) vendor=sequent ;; - -tpf*) + *-tpf*) vendor=ibm ;; - -vxsim* | -vxworks* | -windiss*) + *-vxsim* | *-vxworks* | *-windiss*) vendor=wrs ;; - -aux*) + *-aux*) vendor=apple ;; - -hms*) + *-hms*) vendor=hitachi ;; - -mpw* | -macos*) + *-mpw* | *-macos*) vendor=apple ;; - -*mint | -mint0-9* | -*MiNT | -MiNT0-9*) + *-*mint | *-mint0-9* | *-*MiNT | *-MiNT0-9*) vendor=atari ;; - -vos*) + *-vos*) vendor=stratus ;; esac - basic_machine=`echo $basic_machine | sed "s/unknown/$vendor/"` ;; esac -echo $basic_machine$os +echo "$cpu-$vendor-${kernel:+$kernel-}$os" exit # Local variables: -# eval: (add-hook 'write-file-hooks 'time-stamp) +# eval: (add-hook 'before-save-hook 'time-stamp) # time-stamp-start: "timestamp='" # time-stamp-format: "%:y-%02m-%02d" # time-stamp-end: "'"
View file
_service:tar_scm:libksba-1.6.0.tar.bz2/config.h.in -> _service:tar_scm:libksba-1.6.3.tar.bz2/config.h.in
Changed
@@ -48,9 +48,6 @@ /* Define to 1 if you have the <inttypes.h> header file. */ #undef HAVE_INTTYPES_H -/* Define to 1 if you have the `memmove' function. */ -#undef HAVE_MEMMOVE - /* Define to 1 if you have the <memory.h> header file. */ #undef HAVE_MEMORY_H @@ -63,21 +60,12 @@ /* Define to 1 if you have the `stpcpy' function. */ #undef HAVE_STPCPY -/* Define to 1 if you have the `strchr' function. */ -#undef HAVE_STRCHR - /* Define to 1 if you have the <strings.h> header file. */ #undef HAVE_STRINGS_H /* Define to 1 if you have the <string.h> header file. */ #undef HAVE_STRING_H -/* Define to 1 if you have the `strtol' function. */ -#undef HAVE_STRTOL - -/* Define to 1 if you have the `strtoul' function. */ -#undef HAVE_STRTOUL - /* Define to 1 if you have the <sys/stat.h> header file. */ #undef HAVE_SYS_STAT_H
View file
_service:tar_scm:libksba-1.6.0.tar.bz2/configure -> _service:tar_scm:libksba-1.6.3.tar.bz2/configure
Changed
@@ -1,6 +1,6 @@ #! /bin/sh # Guess values for system-dependent variables and create Makefiles. -# Generated by GNU Autoconf 2.69 for libksba 1.6.0. +# Generated by GNU Autoconf 2.69 for libksba 1.6.3. # # Report bugs to <https://bugs.gnupg.org>. # @@ -590,8 +590,8 @@ # Identity of this package. PACKAGE_NAME='libksba' PACKAGE_TARNAME='libksba' -PACKAGE_VERSION='1.6.0' -PACKAGE_STRING='libksba 1.6.0' +PACKAGE_VERSION='1.6.3' +PACKAGE_STRING='libksba 1.6.3' PACKAGE_BUGREPORT='https://bugs.gnupg.org' PACKAGE_URL='' @@ -651,6 +651,8 @@ ALLOCA_H ALLOCA LTALLOCA +USE_GPGRT_CONFIG_FALSE +USE_GPGRT_CONFIG_TRUE GPG_ERROR_MT_LIBS GPG_ERROR_MT_CFLAGS GPG_ERROR_LIBS @@ -663,7 +665,6 @@ HAVE_W32CE_SYSTEM_TRUE HAVE_W32_SYSTEM_FALSE HAVE_W32_SYSTEM_TRUE -CC_FOR_BUILD COVERAGE_LDFLAGS COVERAGE_CFLAGS GENHTML @@ -678,6 +679,8 @@ LIBKSBA_LT_REVISION LIBKSBA_LT_AGE LIBKSBA_LT_CURRENT +EXEEXT_FOR_BUILD +CC_FOR_BUILD MAINT MAINTAINER_MODE_FALSE MAINTAINER_MODE_TRUE @@ -1381,7 +1384,7 @@ # Omit some internal or obsolete options to make the list less imposing. # This message is too long to be a string in the A/UX 3.1 sh. cat <<_ACEOF -\`configure' configures libksba 1.6.0 to adapt to many kinds of systems. +\`configure' configures libksba 1.6.3 to adapt to many kinds of systems. Usage: $0 OPTION... VAR=VALUE... @@ -1452,7 +1455,7 @@ if test -n "$ac_init_help"; then case $ac_init_help in - short | recursive ) echo "Configuration of libksba 1.6.0:";; + short | recursive ) echo "Configuration of libksba 1.6.3:";; esac cat <<\_ACEOF @@ -1581,7 +1584,7 @@ test -n "$ac_init_help" && exit $ac_status if $ac_init_version; then cat <<\_ACEOF -libksba configure 1.6.0 +libksba configure 1.6.3 generated by GNU Autoconf 2.69 Copyright (C) 2012 Free Software Foundation, Inc. @@ -2187,7 +2190,7 @@ This file contains any messages produced by compilers while running configure, to aid debugging if configure makes a mistake. -It was created by libksba $as_me 1.6.0, which was +It was created by libksba $as_me 1.6.3, which was generated by GNU Autoconf 2.69. Invocation command line was $ $0 $@ @@ -2543,7 +2546,7 @@ # Please remember to document interface changes in the NEWS file. LIBKSBA_LT_CURRENT=22 LIBKSBA_LT_AGE=14 -LIBKSBA_LT_REVISION=0 +LIBKSBA_LT_REVISION=3 #------------------- # If the API is changed in an incompatible way: increment the next counter. KSBA_CONFIG_API_VERSION=1 @@ -3063,7 +3066,7 @@ # Define the identity of the package. PACKAGE='libksba' - VERSION='1.6.0' + VERSION='1.6.3' cat >>confdefs.h <<_ACEOF @@ -7848,16 +7851,11 @@ _lt_dar_allow_undefined='${wl}-undefined ${wl}suppress' ;; darwin1.*) _lt_dar_allow_undefined='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' ;; - darwin*) # darwin 5.x on - # if running on 10.5 or later, the deployment target defaults - # to the OS version, if on x86, and 10.4, the deployment - # target defaults to 10.4. Don't you love it? - case ${MACOSX_DEPLOYMENT_TARGET-10.0},$host in - 10.0,*86*-darwin8*|10.0,*-darwin91*) - _lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;; - 10.012*) + darwin*) + case ${MACOSX_DEPLOYMENT_TARGET},$host in + 10.012*,*|,*powerpc*) _lt_dar_allow_undefined='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' ;; - 10.*) + *) _lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;; esac ;; @@ -12434,12 +12432,50 @@ +# We need to compile and run a program on the build machine. +# Put a plausible default for CC_FOR_BUILD in Makefile. +if test -z "$CC_FOR_BUILD"; then + if test "x$cross_compiling" = "xno"; then + CC_FOR_BUILD='$(CC)' + else + CC_FOR_BUILD=gcc + fi +fi + +# Also set EXEEXT_FOR_BUILD. +if test "x$cross_compiling" = "xno"; then + EXEEXT_FOR_BUILD='$(EXEEXT)' +else + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for build system executable suffix" >&5 +$as_echo_n "checking for build system executable suffix... " >&6; } +if ${bfd_cv_build_exeext+:} false; then : + $as_echo_n "(cached) " >&6 +else + rm -f conftest* + echo 'int main () { return 0; }' > conftest.c + bfd_cv_build_exeext= + ${CC_FOR_BUILD} -o conftest conftest.c 1>&5 2>&5 + for file in conftest.*; do + case $file in + *.c | *.o | *.obj | *.ilk | *.pdb) ;; + *) bfd_cv_build_exeext=`echo $file | sed -e s/conftest//` ;; + esac + done + rm -f conftest* + test x"${bfd_cv_build_exeext}" = x && bfd_cv_build_exeext=no +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bfd_cv_build_exeext" >&5 +$as_echo "$bfd_cv_build_exeext" >&6; } + EXEEXT_FOR_BUILD="" + test x"${bfd_cv_build_exeext}" != xno && EXEEXT_FOR_BUILD=${bfd_cv_build_exeext} +fi + -VERSION_NUMBER=0x010600 +VERSION_NUMBER=0x010603 @@ -14362,6 +14398,10 @@ fi if test -n "$gpgrt_libdir"; then break; fi done + if test -z "$libdir_candidates"; then + # No valid pkgconfig dir in any of the system directories, fallback + gpgrt_libdir=${possible_libdir1} + fi else # When we cannot determine system libdir-format, use this: gpgrt_libdir=${possible_libdir1} @@ -14382,6 +14422,7 @@ fi elif test "$GPG_ERROR_CONFIG" != "no"; then gpg_error_config_version=`$GPG_ERROR_CONFIG --version` + unset GPGRT_CONFIG fi if test "$GPG_ERROR_CONFIG" != "no"; then req_major=`echo $min_gpg_error_version | \ @@ -14468,132 +14509,17 @@ $as_echo "#define GPG_ERR_SOURCE_DEFAULT GPG_ERR_SOURCE_KSBA" >>confdefs.h - -# Checks for header files. -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for ANSI C header files" >&5 -$as_echo_n "checking for ANSI C header files... " >&6; } -if ${ac_cv_header_stdc+:} false; then : - $as_echo_n "(cached) " >&6 + if test -n "$GPGRT_CONFIG" \ + -a "$ac_cv_path_GPG_ERROR_CONFIG" = no; then + USE_GPGRT_CONFIG_TRUE= + USE_GPGRT_CONFIG_FALSE='#' else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include <stdlib.h> -#include <stdarg.h> -#include <string.h> -#include <float.h> - -int -main () -{ - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - ac_cv_header_stdc=yes -else - ac_cv_header_stdc=no + USE_GPGRT_CONFIG_TRUE='#' + USE_GPGRT_CONFIG_FALSE= fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -if test $ac_cv_header_stdc = yes; then - # SunOS 4.x string.h does not declare mem*, contrary to ANSI. - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include <string.h> - -_ACEOF -if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "memchr" >/dev/null 2>&1; then : - -else - ac_cv_header_stdc=no -fi -rm -f conftest* - -fi - -if test $ac_cv_header_stdc = yes; then - # ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI. - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include <stdlib.h> - -_ACEOF -if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "free" >/dev/null 2>&1; then : - -else - ac_cv_header_stdc=no -fi -rm -f conftest* - -fi - -if test $ac_cv_header_stdc = yes; then - # /bin/cc in Irix-4.0.5 gets non-ANSI ctype macros unless using -ansi. - if test "$cross_compiling" = yes; then : - : -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include <ctype.h> -#include <stdlib.h> -#if ((' ' & 0x0FF) == 0x020) -# define ISLOWER(c) ('a' <= (c) && (c) <= 'z') -# define TOUPPER(c) (ISLOWER(c) ? 'A' + ((c) - 'a') : (c)) -#else -# define ISLOWER(c) \ - (('a' <= (c) && (c) <= 'i') \ - || ('j' <= (c) && (c) <= 'r') \ - || ('s' <= (c) && (c) <= 'z')) -# define TOUPPER(c) (ISLOWER(c) ? ((c) | 0x40) : (c)) -#endif - -#define XOR(e, f) (((e) && !(f)) || (!(e) && (f))) -int -main () -{ - int i; - for (i = 0; i < 256; i++) - if (XOR (islower (i), ISLOWER (i)) - || toupper (i) != TOUPPER (i)) - return 2; - return 0; -} -_ACEOF -if ac_fn_c_try_run "$LINENO"; then : - -else - ac_cv_header_stdc=no -fi -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext -fi - -fi -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_header_stdc" >&5 -$as_echo "$ac_cv_header_stdc" >&6; } -if test $ac_cv_header_stdc = yes; then - -$as_echo "#define STDC_HEADERS 1" >>confdefs.h - -fi - -for ac_header in string.h -do : - ac_fn_c_check_header_mongrel "$LINENO" "string.h" "ac_cv_header_string_h" "$ac_includes_default" -if test "x$ac_cv_header_string_h" = xyes; then : - cat >>confdefs.h <<_ACEOF -#define HAVE_STRING_H 1 -_ACEOF - -fi - -done +# Checks for header files. # Checks for typedefs, structures, and compiler characteristics. { $as_echo "$as_me:${as_lineno-$LINENO}: checking for an ANSI C-conforming const" >&5 @@ -14982,7 +14908,7 @@ # Checks for library functions. -for ac_func in memmove strchr strtol strtoul stpcpy gmtime_r getenv +for ac_func in stpcpy gmtime_r getenv do : as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh` ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var" @@ -15335,11 +15261,11 @@ # Generate extended version information for W32. if test "$have_w32_system" = yes; then BUILD_FILEVERSION=`echo "$VERSION" | sed 's/\(0-9.*\).*/\1./;s/\./,/g'` - BUILD_FILEVERSION="${BUILD_FILEVERSION}27445" + BUILD_FILEVERSION="${BUILD_FILEVERSION}49146" fi -BUILD_REVISION="6b3573a" +BUILD_REVISION="bffa9b3" cat >>confdefs.h <<_ACEOF @@ -15546,6 +15472,10 @@ as_fn_error $? "conditional \"HAVE_LD_VERSION_SCRIPT\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi +if test -z "${USE_GPGRT_CONFIG_TRUE}" && test -z "${USE_GPGRT_CONFIG_FALSE}"; then + as_fn_error $? "conditional \"USE_GPGRT_CONFIG\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi if test -z "${CROSS_COMPILING_TRUE}" && test -z "${CROSS_COMPILING_FALSE}"; then as_fn_error $? "conditional \"CROSS_COMPILING\" was never defined. @@ -15952,7 +15882,7 @@ # report actual input values of CONFIG_FILES etc. instead of their # values after options handling. ac_log=" -This file was extended by libksba $as_me 1.6.0, which was +This file was extended by libksba $as_me 1.6.3, which was generated by GNU Autoconf 2.69. Invocation command line was CONFIG_FILES = $CONFIG_FILES @@ -16018,7 +15948,7 @@ cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/\\""\`\$/\\\\&/g'`" ac_cs_version="\\ -libksba config.status 1.6.0 +libksba config.status 1.6.3 configured by $0, generated by GNU Autoconf 2.69, with options \\"\$ac_cs_config\\" @@ -18031,7 +17961,7 @@ echo " Libksba v${VERSION} has been configured as follows: - Revision: 6b3573a (27445) + Revision: bffa9b3 (49146) Platform: $host "
View file
_service:tar_scm:libksba-1.6.0.tar.bz2/configure.ac -> _service:tar_scm:libksba-1.6.3.tar.bz2/configure.ac
Changed
@@ -18,7 +18,7 @@ # along with this program; if not, see <http://www.gnu.org/licenses/>. # Process this file with autoconf to produce a configure script. -AC_PREREQ(2.61) +AC_PREREQ(2.69) min_automake_version="1.14" @@ -30,7 +30,7 @@ m4_define(mym4_package,libksba) m4_define(mym4_major, 1) m4_define(mym4_minor, 6) -m4_define(mym4_micro, 0) +m4_define(mym4_micro, 3) # Below is m4 magic to extract and compute the git revision number, # the decimalized short revision number, a beta version string and a @@ -52,7 +52,7 @@ # Please remember to document interface changes in the NEWS file. LIBKSBA_LT_CURRENT=22 LIBKSBA_LT_AGE=14 -LIBKSBA_LT_REVISION=0 +LIBKSBA_LT_REVISION=3 #------------------- # If the API is changed in an incompatible way: increment the next counter. KSBA_CONFIG_API_VERSION=1 @@ -112,6 +112,8 @@ AM_MAINTAINER_MODE +# We need to compile and run a program on the build machine. +AX_CC_FOR_BUILD AC_SUBST(LIBKSBA_LT_CURRENT) AC_SUBST(LIBKSBA_LT_AGE) @@ -389,10 +391,10 @@ AC_DEFINE(GPG_ERR_SOURCE_DEFAULT, GPG_ERR_SOURCE_KSBA, The default error source for libksba.) +AM_CONDITIONAL(USE_GPGRT_CONFIG, test -n "$GPGRT_CONFIG" \ + -a "$ac_cv_path_GPG_ERROR_CONFIG" = no) # Checks for header files. -AC_HEADER_STDC -AC_CHECK_HEADERS(string.h) # Checks for typedefs, structures, and compiler characteristics. AC_C_CONST @@ -405,7 +407,7 @@ # Checks for library functions. -AC_CHECK_FUNCS(memmove strchr strtol strtoul stpcpy gmtime_r getenv) +AC_CHECK_FUNCS(stpcpy gmtime_r getenv) # GNUlib checks
View file
_service:tar_scm:libksba-1.6.0.tar.bz2/doc/Makefile.in -> _service:tar_scm:libksba-1.6.3.tar.bz2/doc/Makefile.in
Changed
@@ -111,6 +111,7 @@ $(top_srcdir)/gl/m4/gnulib.m4 \ $(top_srcdir)/gl/m4/valgrind-tests.m4 \ $(top_srcdir)/m4/autobuild.m4 \ + $(top_srcdir)/m4/ax_cc_for_build.m4 \ $(top_srcdir)/m4/ax_prog_bison.m4 $(top_srcdir)/m4/gcov.m4 \ $(top_srcdir)/m4/gpg-error.m4 $(top_srcdir)/m4/libtool.m4 \ $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \ @@ -250,6 +251,7 @@ ECHO_T = @ECHO_T@ EGREP = @EGREP@ EXEEXT = @EXEEXT@ +EXEEXT_FOR_BUILD = @EXEEXT_FOR_BUILD@ FGREP = @FGREP@ GCOV = @GCOV@ GENHTML = @GENHTML@
View file
_service:tar_scm:libksba-1.6.0.tar.bz2/doc/ksba.info -> _service:tar_scm:libksba-1.6.3.tar.bz2/doc/ksba.info
Changed
@@ -8,8 +8,8 @@ This file documents the KSBA library to access X.509 and CMS data structures. - This is edition 1.6.0, last updated 12 May 2020, of 'The KSBA -Reference Manual', for Version 1.6.0. + This is edition 1.6.3, last updated 22 November 2022, of 'The KSBA +Reference Manual', for Version 1.6.3. Copyright (C) 2002, 2003, 2004 g10 Code GmbH @@ -25,8 +25,8 @@ Main Menu ********* -This is edition 1.6.0, last updated 12 May 2020, of 'The KSBA Reference -Manual', for Version 1.6.0 of the KSBA library. +This is edition 1.6.3, last updated 22 November 2022, of 'The KSBA +Reference Manual', for Version 1.6.3 of the KSBA library. Copyright (C) 2002, 2003, 2004 g10 Code GmbH @@ -228,33 +228,34 @@ path (via the '-I' option). However, the path to the include file is determined at the time the -source is configured. To solve this problem, 'KSBA' ships with a small -helper program 'ksba-config' that knows about the path to the include -file and other configuration options. The options that need to be added -to the compiler invocation at compile time are output by the '--cflags' -option of 'ksba-config'. The following example shows how it can be used -at the command line: - - gcc -c foo.c `ksba-config --cflags` - - Adding the output of 'ksba-config --cflags' to the compiler's command -line will ensure that the compiler can find the 'ksba.h' header file. +source is configured. To solve this problem, 'KSBA' ships with +'ksba.pc' file, that knows about the path to the include file and other +configuration options. The options that need to be added to the +compiler invocation at compile time are output by the '--cflags' option +of 'pkg-config ksba'. The following example shows how it can be used at +the command line: + + gcc -c foo.c `pkg-config --cflags ksba` + + Adding the output of 'pkg-config --cflags ksba' to the compiler's +command line will ensure that the compiler can find the 'ksba.h' header +file. A similar problem occurs when linking the program with the library. Again, the compiler has to find the library files. For this to work, the path to the library files has to be added to the library search path -(via the '-L' option). For this, the option '--libs' of 'ksba-config' -can be used. For convenience, this option also outputs all other +(via the '-L' option). For this, the option '--libs' of 'pkg-config +ksba' can be used. For convenience, this option also outputs all other options that are required to link the program with the 'KSBA' libraries (in particular, the '-lksba' option). The example shows how to link 'foo.o' with the 'KSBA' libraries to a program 'foo'. - gcc -o foo foo.o `ksba-config --libs` + gcc -o foo foo.o `pkg-config --libs ksba` Of course you can also combine both examples to a single command by -specifying both options to 'ksba-config': +specifying both options to 'pkg-config ksba': - gcc -o foo foo.c `ksba-config --cflags --libs` + gcc -o foo foo.c `pkg-config --cflags --libs ksba`  File: ksba.info, Node: Certificate Handling, Next: CMS, Prev: Preparation, Up: Top @@ -1870,33 +1871,33 @@  Tag Table: -Node: Top738 -Node: Introduction2768 -Node: Getting Started3046 -Node: Features3912 -Node: Overview5003 -Node: Preparation5252 -Node: Header5735 -Node: Version Check6331 -Node: Building the source7423 -Node: Certificate Handling9267 -Node: Creating certificates10248 -Node: Retrieving attributes12709 -Node: Setting attributes26927 -Node: User data27192 -Node: CMS29112 -Node: CMS Basics29571 -Node: CMS Parser31634 -Node: CRLs35612 -Node: PKCS1035895 -Node: Utilities36156 -Node: Names36560 -Node: OIDs38872 -Node: DNs39076 -Node: Error Handling40207 -Node: Component Labels41562 -Node: Copying43125 -Node: Concept Index80652 -Node: Function and Data Index80780 +Node: Top743 +Node: Introduction2778 +Node: Getting Started3056 +Node: Features3922 +Node: Overview5013 +Node: Preparation5262 +Node: Header5745 +Node: Version Check6341 +Node: Building the source7433 +Node: Certificate Handling9284 +Node: Creating certificates10265 +Node: Retrieving attributes12726 +Node: Setting attributes26944 +Node: User data27209 +Node: CMS29129 +Node: CMS Basics29588 +Node: CMS Parser31651 +Node: CRLs35629 +Node: PKCS1035912 +Node: Utilities36173 +Node: Names36577 +Node: OIDs38889 +Node: DNs39093 +Node: Error Handling40224 +Node: Component Labels41579 +Node: Copying43142 +Node: Concept Index80669 +Node: Function and Data Index80797  End Tag Table
View file
_service:tar_scm:libksba-1.6.0.tar.bz2/doc/ksba.texi -> _service:tar_scm:libksba-1.6.3.tar.bz2/doc/ksba.texi
Changed
@@ -259,18 +259,18 @@ path (via the @option{-I} option). However, the path to the include file is determined at the time the -source is configured. To solve this problem, `KSBA' ships with a small -helper program @command{ksba-config} that knows about the path to the -include file and other configuration options. The options that need to -be added to the compiler invocation at compile time are output by the -@option{--cflags} option of @command{ksba-config}. The following +source is configured. To solve this problem, `KSBA' ships with +@code{ksba.pc} file, that knows about the path to the include file and +other configuration options. The options that need to be added to the +compiler invocation at compile time are output by the +@option{--cflags} option of @command{pkg-config ksba}. The following example shows how it can be used at the command line: @example -gcc -c foo.c `ksba-config --cflags` +gcc -c foo.c `pkg-config --cflags ksba` @end example -Adding the output of @samp{ksba-config --cflags} to the compiler's +Adding the output of @samp{pkg-config --cflags ksba} to the compiler's command line will ensure that the compiler can find the @file{ksba.h} header file. @@ -278,21 +278,21 @@ Again, the compiler has to find the library files. For this to work, the path to the library files has to be added to the library search path (via the @option{-L} option). For this, the option @option{--libs} of -@command{ksba-config} can be used. For convenience, this option also +@command{pkg-config ksba} can be used. For convenience, this option also outputs all other options that are required to link the program with the `KSBA' libraries (in particular, the @samp{-lksba} option). The example shows how to link @file{foo.o} with the `KSBA' libraries to a program @command{foo}. @example -gcc -o foo foo.o `ksba-config --libs` +gcc -o foo foo.o `pkg-config --libs ksba` @end example Of course you can also combine both examples to a single command by -specifying both options to @command{ksba-config}: +specifying both options to @command{pkg-config ksba}: @example -gcc -o foo foo.c `ksba-config --cflags --libs` +gcc -o foo foo.c `pkg-config --cflags --libs ksba` @end example
View file
_service:tar_scm:libksba-1.6.0.tar.bz2/doc/stamp-vti -> _service:tar_scm:libksba-1.6.3.tar.bz2/doc/stamp-vti
Changed
@@ -1,4 +1,4 @@ -@set UPDATED 12 May 2020 -@set UPDATED-MONTH May 2020 -@set EDITION 1.6.0 -@set VERSION 1.6.0 +@set UPDATED 22 November 2022 +@set UPDATED-MONTH November 2022 +@set EDITION 1.6.3 +@set VERSION 1.6.3
View file
_service:tar_scm:libksba-1.6.0.tar.bz2/doc/version.texi -> _service:tar_scm:libksba-1.6.3.tar.bz2/doc/version.texi
Changed
@@ -1,4 +1,4 @@ -@set UPDATED 12 May 2020 -@set UPDATED-MONTH May 2020 -@set EDITION 1.6.0 -@set VERSION 1.6.0 +@set UPDATED 22 November 2022 +@set UPDATED-MONTH November 2022 +@set EDITION 1.6.3 +@set VERSION 1.6.3
View file
_service:tar_scm:libksba-1.6.0.tar.bz2/gl/Makefile.in -> _service:tar_scm:libksba-1.6.3.tar.bz2/gl/Makefile.in
Changed
@@ -106,6 +106,7 @@ $(top_srcdir)/gl/m4/gnulib.m4 \ $(top_srcdir)/gl/m4/valgrind-tests.m4 \ $(top_srcdir)/m4/autobuild.m4 \ + $(top_srcdir)/m4/ax_cc_for_build.m4 \ $(top_srcdir)/m4/ax_prog_bison.m4 $(top_srcdir)/m4/gcov.m4 \ $(top_srcdir)/m4/gpg-error.m4 $(top_srcdir)/m4/libtool.m4 \ $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \ @@ -220,6 +221,7 @@ ECHO_T = @ECHO_T@ EGREP = @EGREP@ EXEEXT = @EXEEXT@ +EXEEXT_FOR_BUILD = @EXEEXT_FOR_BUILD@ FGREP = @FGREP@ GCOV = @GCOV@ GENHTML = @GENHTML@
View file
_service:tar_scm:libksba-1.6.0.tar.bz2/m4/Makefile.in -> _service:tar_scm:libksba-1.6.3.tar.bz2/m4/Makefile.in
Changed
@@ -93,6 +93,7 @@ $(top_srcdir)/gl/m4/gnulib.m4 \ $(top_srcdir)/gl/m4/valgrind-tests.m4 \ $(top_srcdir)/m4/autobuild.m4 \ + $(top_srcdir)/m4/ax_cc_for_build.m4 \ $(top_srcdir)/m4/ax_prog_bison.m4 $(top_srcdir)/m4/gcov.m4 \ $(top_srcdir)/m4/gpg-error.m4 $(top_srcdir)/m4/libtool.m4 \ $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \ @@ -160,6 +161,7 @@ ECHO_T = @ECHO_T@ EGREP = @EGREP@ EXEEXT = @EXEEXT@ +EXEEXT_FOR_BUILD = @EXEEXT_FOR_BUILD@ FGREP = @FGREP@ GCOV = @GCOV@ GENHTML = @GENHTML@
View file
_service:tar_scm:libksba-1.6.3.tar.bz2/m4/ax_cc_for_build.m4
Added
@@ -0,0 +1,77 @@ +# =========================================================================== +# https://www.gnu.org/software/autoconf-archive/ax_cc_for_build.html +# =========================================================================== +# +# SYNOPSIS +# +# AX_CC_FOR_BUILD +# +# DESCRIPTION +# +# Find a build-time compiler. Sets CC_FOR_BUILD and EXEEXT_FOR_BUILD. +# +# LICENSE +# +# Copyright (c) 2010 Reuben Thomas <rrt@sc3d.org> +# Copyright (c) 1999 Richard Henderson <rth@redhat.com> +# +# This program is free software: you can redistribute it and/or modify it +# under the terms of the GNU General Public License as published by the +# Free Software Foundation, either version 3 of the License, or (at your +# option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General +# Public License for more details. +# +# You should have received a copy of the GNU General Public License along +# with this program. If not, see <https://www.gnu.org/licenses/>. +# +# As a special exception, the respective Autoconf Macro's copyright owner +# gives unlimited permission to copy, distribute and modify the configure +# scripts that are the output of Autoconf when processing the Macro. You +# need not follow the terms of the GNU General Public License when using +# or distributing such scripts, even though portions of the text of the +# Macro appear in them. The GNU General Public License (GPL) does govern +# all other use of the material that constitutes the Autoconf Macro. +# +# This special exception to the GPL applies to versions of the Autoconf +# Macro released by the Autoconf Archive. When you make and distribute a +# modified version of the Autoconf Macro, you may extend this special +# exception to the GPL to apply to your modified version as well. + +#serial 3 + +dnl Get a default for CC_FOR_BUILD to put into Makefile. +AC_DEFUN(AX_CC_FOR_BUILD, +# Put a plausible default for CC_FOR_BUILD in Makefile. +if test -z "$CC_FOR_BUILD"; then + if test "x$cross_compiling" = "xno"; then + CC_FOR_BUILD='$(CC)' + else + CC_FOR_BUILD=gcc + fi +fi +AC_SUBST(CC_FOR_BUILD) +# Also set EXEEXT_FOR_BUILD. +if test "x$cross_compiling" = "xno"; then + EXEEXT_FOR_BUILD='$(EXEEXT)' +else + AC_CACHE_CHECK(for build system executable suffix, bfd_cv_build_exeext, + rm -f conftest* + echo 'int main () { return 0; }' > conftest.c + bfd_cv_build_exeext= + ${CC_FOR_BUILD} -o conftest conftest.c 1>&5 2>&5 + for file in conftest.*; do + case $file in + *.c | *.o | *.obj | *.ilk | *.pdb) ;; + *) bfd_cv_build_exeext=`echo $file | sed -e s/conftest//` ;; + esac + done + rm -f conftest* + test x"${bfd_cv_build_exeext}" = x && bfd_cv_build_exeext=no) + EXEEXT_FOR_BUILD="" + test x"${bfd_cv_build_exeext}" != xno && EXEEXT_FOR_BUILD=${bfd_cv_build_exeext} +fi +AC_SUBST(EXEEXT_FOR_BUILD))dnl
View file
_service:tar_scm:libksba-1.6.0.tar.bz2/m4/gpg-error.m4 -> _service:tar_scm:libksba-1.6.3.tar.bz2/m4/gpg-error.m4
Changed
@@ -10,7 +10,7 @@ # WITHOUT ANY WARRANTY, to the extent permitted by law; without even the # implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. # -# Last-changed: 2021-03-31 +# Last-changed: 2022-09-21 dnl AM_PATH_GPG_ERROR(MINIMUM-VERSION, @@ -120,6 +120,10 @@ fi if test -n "$gpgrt_libdir"; then break; fi done + if test -z "$libdir_candidates"; then + # No valid pkgconfig dir in any of the system directories, fallback + gpgrt_libdir=${possible_libdir1} + fi else # When we cannot determine system libdir-format, use this: gpgrt_libdir=${possible_libdir1} @@ -139,6 +143,7 @@ fi elif test "$GPG_ERROR_CONFIG" != "no"; then gpg_error_config_version=`$GPG_ERROR_CONFIG --version` + unset GPGRT_CONFIG fi if test "$GPG_ERROR_CONFIG" != "no"; then req_major=`echo $min_gpg_error_version | \
View file
_service:tar_scm:libksba-1.6.0.tar.bz2/m4/libgcrypt.m4 -> _service:tar_scm:libksba-1.6.3.tar.bz2/m4/libgcrypt.m4
Changed
@@ -9,7 +9,7 @@ # WITHOUT ANY WARRANTY, to the extent permitted by law; without even the # implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. # -# Last-changed: 2020-09-27 +# Last-changed: 2022-11-01 dnl AM_PATH_LIBGCRYPT(MINIMUM-VERSION, @@ -40,7 +40,7 @@ fi use_gpgrt_config="" - if test x"${LIBGCRYPT_CONFIG}" = x -a x"$GPGRT_CONFIG" != x -a "$GPGRT_CONFIG" != "no"; then + if test x"$GPGRT_CONFIG" != x -a "$GPGRT_CONFIG" != "no"; then if $GPGRT_CONFIG libgcrypt --exists; then LIBGCRYPT_CONFIG="$GPGRT_CONFIG libgcrypt" AC_MSG_NOTICE(Use gpgrt-config as libgcrypt-config)
View file
_service:tar_scm:libksba-1.6.0.tar.bz2/m4/libtool.m4 -> _service:tar_scm:libksba-1.6.3.tar.bz2/m4/libtool.m4
Changed
@@ -1045,16 +1045,11 @@ _lt_dar_allow_undefined='${wl}-undefined ${wl}suppress' ;; darwin1.*) _lt_dar_allow_undefined='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' ;; - darwin*) # darwin 5.x on - # if running on 10.5 or later, the deployment target defaults - # to the OS version, if on x86, and 10.4, the deployment - # target defaults to 10.4. Don't you love it? - case ${MACOSX_DEPLOYMENT_TARGET-10.0},$host in - 10.0,*86*-darwin8*|10.0,*-darwin91*) - _lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;; - 10.012*) + darwin*) + case ${MACOSX_DEPLOYMENT_TARGET},$host in + 10.012*,*|,*powerpc*) _lt_dar_allow_undefined='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' ;; - 10.*) + *) _lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;; esac ;;
View file
_service:tar_scm:libksba-1.6.0.tar.bz2/src/Makefile.am -> _service:tar_scm:libksba-1.6.3.tar.bz2/src/Makefile.am
Changed
@@ -28,7 +28,11 @@ libksba.vers libksba.def \ asn1-parse.c asn1-tables.c $(buildtool_src) ksba.pc.in BUILT_SOURCES = asn1-parse.c asn1-tables.c +if USE_GPGRT_CONFIG +noinst_SCRIPTS = ksba-config +else bin_SCRIPTS = ksba-config +endif nodist_include_HEADERS = ksba.h lib_LTLIBRARIES = libksba.la noinst_PROGRAMS = ber-dump @@ -65,13 +69,12 @@ export_symbols = -export-symbols $(srcdir)/libksba.def extra_ltoptions = -XCClinker -static-libgcc -install-def-file: - $(INSTALL) $(srcdir)/libksba.def $(DESTDIR)$(libdir)/libksba.def - uninstall-def-file: -rm $(DESTDIR)$(libdir)/libksba.def ksba_deps = $(ksba_res) libksba.def +ksbadefdir = $(libdir) +ksbadef_DATA = libksba.def else !HAVE_W32_SYSTEM ksba_res = @@ -79,7 +82,6 @@ export_symbols = extra_ltoptions = ksba_deps = -install-def-file: uninstall-def-file: endif !HAVE_W32_SYSTEM @@ -123,7 +125,8 @@ asn1-parse.c : asn1-func.h gen-help.h -asn1-gentables: asn1-gentables.c asn1-parse.c asn1-func.c gen-help.c gen-help.h +asn1-gentables$(EXEEXT_FOR_BUILD): asn1-gentables.c asn1-parse.c asn1-func.c \ + gen-help.c gen-help.h $(CC_FOR_BUILD) $(CFLAGS_FOR_BUILD) $(LDFLAGS_FOR_BUILD) \ $(CPPFLAGS_FOR_BUILD) -I$(srcdir) -DBUILD_GENTOOLS -o $@ \ $(srcdir)/asn1-gentables.c \ @@ -131,12 +134,10 @@ $(srcdir)/asn1-func.c \ $(srcdir)/gen-help.c -asn1-tables.c : $(asn1_modules) asn1-gentables +asn1-tables.c : $(asn1_modules) asn1-gentables$(EXEEXT_FOR_BUILD) @set -e; list=""; \ for file in $(asn1_modules); do list="$$list $(srcdir)/$$file";done;\ - ./asn1-gentables $$list > asn1-tables.c - + ./asn1-gentables$(EXEEXT_FOR_BUILD) $$list > asn1-tables.c -install-data-local: install-def-file uninstall-local: uninstall-def-file
View file
_service:tar_scm:libksba-1.6.0.tar.bz2/src/Makefile.in -> _service:tar_scm:libksba-1.6.3.tar.bz2/src/Makefile.in
Changed
@@ -117,6 +117,7 @@ $(top_srcdir)/gl/m4/gnulib.m4 \ $(top_srcdir)/gl/m4/valgrind-tests.m4 \ $(top_srcdir)/m4/autobuild.m4 \ + $(top_srcdir)/m4/ax_cc_for_build.m4 \ $(top_srcdir)/m4/ax_prog_bison.m4 $(top_srcdir)/m4/gcov.m4 \ $(top_srcdir)/m4/gpg-error.m4 $(top_srcdir)/m4/libtool.m4 \ $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \ @@ -158,8 +159,8 @@ $(am__cd) "$$dir" && rm -f $$files; }; \ } am__installdirs = "$(DESTDIR)$(libdir)" "$(DESTDIR)$(bindir)" \ - "$(DESTDIR)$(m4datadir)" "$(DESTDIR)$(pkgconfigdir)" \ - "$(DESTDIR)$(includedir)" + "$(DESTDIR)$(ksbadefdir)" "$(DESTDIR)$(m4datadir)" \ + "$(DESTDIR)$(pkgconfigdir)" "$(DESTDIR)$(includedir)" LTLIBRARIES = $(lib_LTLIBRARIES) @HAVE_W32_SYSTEM_TRUE@am__DEPENDENCIES_1 = versioninfo.lo am_libksba_la_OBJECTS = visibility.lo reader.lo writer.lo \ @@ -187,7 +188,7 @@ ber_dump_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \ $(LIBTOOLFLAGS) --mode=link $(CCLD) $(ber_dump_CFLAGS) \ $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@ -SCRIPTS = $(bin_SCRIPTS) +SCRIPTS = $(bin_SCRIPTS) $(noinst_SCRIPTS) AM_V_P = $(am__v_P_@AM_V@) am__v_P_ = $(am__v_P_@AM_DEFAULT_V@) am__v_P_0 = false @@ -259,7 +260,7 @@ n|no|NO) false;; \ *) (install-info --version) >/dev/null 2>&1;; \ esac -DATA = $(m4data_DATA) $(pkgconfig_DATA) +DATA = $(ksbadef_DATA) $(m4data_DATA) $(pkgconfig_DATA) HEADERS = $(nodist_include_HEADERS) am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP) # Read a list of newline-separated strings from the standard input, @@ -318,6 +319,7 @@ ECHO_T = @ECHO_T@ EGREP = @EGREP@ EXEEXT = @EXEEXT@ +EXEEXT_FOR_BUILD = @EXEEXT_FOR_BUILD@ FGREP = @FGREP@ GCOV = @GCOV@ GENHTML = @GENHTML@ @@ -443,7 +445,8 @@ asn1-parse.c asn1-tables.c $(buildtool_src) ksba.pc.in BUILT_SOURCES = asn1-parse.c asn1-tables.c -bin_SCRIPTS = ksba-config +@USE_GPGRT_CONFIG_TRUE@noinst_SCRIPTS = ksba-config +@USE_GPGRT_CONFIG_FALSE@bin_SCRIPTS = ksba-config nodist_include_HEADERS = ksba.h lib_LTLIBRARIES = libksba.la m4datadir = $(datadir)/aclocal @@ -469,6 +472,8 @@ @HAVE_W32_SYSTEM_TRUE@extra_ltoptions = -XCClinker -static-libgcc @HAVE_W32_SYSTEM_FALSE@ksba_deps = @HAVE_W32_SYSTEM_TRUE@ksba_deps = $(ksba_res) libksba.def +@HAVE_W32_SYSTEM_TRUE@ksbadefdir = $(libdir) +@HAVE_W32_SYSTEM_TRUE@ksbadef_DATA = libksba.def libksba_la_LDFLAGS = $(no_undefined) $(export_symbols) $(extra_ltoptions) \ $(libksba_version_script_cmd) -version-info \ @LIBKSBA_LT_CURRENT@:@LIBKSBA_LT_REVISION@:@LIBKSBA_LT_AGE@ \ @@ -850,6 +855,27 @@ clean-libtool: -rm -rf .libs _libs +install-ksbadefDATA: $(ksbadef_DATA) + @$(NORMAL_INSTALL) + @list='$(ksbadef_DATA)'; test -n "$(ksbadefdir)" || list=; \ + if test -n "$$list"; then \ + echo " $(MKDIR_P) '$(DESTDIR)$(ksbadefdir)'"; \ + $(MKDIR_P) "$(DESTDIR)$(ksbadefdir)" || exit 1; \ + fi; \ + for p in $$list; do \ + if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ + echo "$$d$$p"; \ + done | $(am__base_list) | \ + while read files; do \ + echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(ksbadefdir)'"; \ + $(INSTALL_DATA) $$files "$(DESTDIR)$(ksbadefdir)" || exit $$?; \ + done + +uninstall-ksbadefDATA: + @$(NORMAL_UNINSTALL) + @list='$(ksbadef_DATA)'; test -n "$(ksbadefdir)" || list=; \ + files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ + dir='$(DESTDIR)$(ksbadefdir)'; $(am__uninstall_files_from_dir) install-m4dataDATA: $(m4data_DATA) @$(NORMAL_INSTALL) @list='$(m4data_DATA)'; test -n "$(m4datadir)" || list=; \ @@ -1005,7 +1031,7 @@ all-am: Makefile $(PROGRAMS) $(LTLIBRARIES) $(SCRIPTS) $(DATA) \ $(HEADERS) installdirs: - for dir in "$(DESTDIR)$(libdir)" "$(DESTDIR)$(bindir)" "$(DESTDIR)$(m4datadir)" "$(DESTDIR)$(pkgconfigdir)" "$(DESTDIR)$(includedir)"; do \ + for dir in "$(DESTDIR)$(libdir)" "$(DESTDIR)$(bindir)" "$(DESTDIR)$(ksbadefdir)" "$(DESTDIR)$(m4datadir)" "$(DESTDIR)$(pkgconfigdir)" "$(DESTDIR)$(includedir)"; do \ test -z "$$dir" || $(MKDIR_P) "$$dir"; \ done install: $(BUILT_SOURCES) @@ -1100,7 +1126,7 @@ info-am: -install-data-am: install-data-local install-m4dataDATA \ +install-data-am: install-ksbadefDATA install-m4dataDATA \ install-nodist_includeHEADERS install-pkgconfigDATA install-dvi: install-dvi-am @@ -1180,8 +1206,8 @@ ps-am: -uninstall-am: uninstall-binSCRIPTS uninstall-libLTLIBRARIES \ - uninstall-local uninstall-m4dataDATA \ +uninstall-am: uninstall-binSCRIPTS uninstall-ksbadefDATA \ + uninstall-libLTLIBRARIES uninstall-local uninstall-m4dataDATA \ uninstall-nodist_includeHEADERS uninstall-pkgconfigDATA .MAKE: all check install install-am install-exec install-strip @@ -1192,17 +1218,17 @@ distclean-compile distclean-generic distclean-libtool \ distclean-tags distdir dvi dvi-am html html-am info info-am \ install install-am install-binSCRIPTS install-data \ - install-data-am install-data-local install-dvi install-dvi-am \ - install-exec install-exec-am install-html install-html-am \ - install-info install-info-am install-libLTLIBRARIES \ + install-data-am install-dvi install-dvi-am install-exec \ + install-exec-am install-html install-html-am install-info \ + install-info-am install-ksbadefDATA install-libLTLIBRARIES \ install-m4dataDATA install-man install-nodist_includeHEADERS \ install-pdf install-pdf-am install-pkgconfigDATA install-ps \ install-ps-am install-strip installcheck installcheck-am \ installdirs maintainer-clean maintainer-clean-generic \ mostlyclean mostlyclean-compile mostlyclean-generic \ mostlyclean-libtool pdf pdf-am ps ps-am tags tags-am uninstall \ - uninstall-am uninstall-binSCRIPTS uninstall-libLTLIBRARIES \ - uninstall-local uninstall-m4dataDATA \ + uninstall-am uninstall-binSCRIPTS uninstall-ksbadefDATA \ + uninstall-libLTLIBRARIES uninstall-local uninstall-m4dataDATA \ uninstall-nodist_includeHEADERS uninstall-pkgconfigDATA .PRECIOUS: Makefile @@ -1211,17 +1237,14 @@ @HAVE_W32_SYSTEM_TRUE@.rc.lo: @HAVE_W32_SYSTEM_TRUE@ $(LTRCCOMPILE) -i "$<" -o "$@" -@HAVE_W32_SYSTEM_TRUE@install-def-file: -@HAVE_W32_SYSTEM_TRUE@ $(INSTALL) $(srcdir)/libksba.def $(DESTDIR)$(libdir)/libksba.def - @HAVE_W32_SYSTEM_TRUE@uninstall-def-file: @HAVE_W32_SYSTEM_TRUE@ -rm $(DESTDIR)$(libdir)/libksba.def -@HAVE_W32_SYSTEM_FALSE@install-def-file: @HAVE_W32_SYSTEM_FALSE@uninstall-def-file: asn1-parse.c : asn1-func.h gen-help.h -asn1-gentables: asn1-gentables.c asn1-parse.c asn1-func.c gen-help.c gen-help.h +asn1-gentables$(EXEEXT_FOR_BUILD): asn1-gentables.c asn1-parse.c asn1-func.c \ + gen-help.c gen-help.h $(CC_FOR_BUILD) $(CFLAGS_FOR_BUILD) $(LDFLAGS_FOR_BUILD) \ $(CPPFLAGS_FOR_BUILD) -I$(srcdir) -DBUILD_GENTOOLS -o $@ \ $(srcdir)/asn1-gentables.c \ @@ -1229,12 +1252,10 @@ $(srcdir)/asn1-func.c \ $(srcdir)/gen-help.c -asn1-tables.c : $(asn1_modules) asn1-gentables +asn1-tables.c : $(asn1_modules) asn1-gentables$(EXEEXT_FOR_BUILD) @set -e; list=""; \ for file in $(asn1_modules); do list="$$list $(srcdir)/$$file";done;\ - ./asn1-gentables $$list > asn1-tables.c - -install-data-local: install-def-file + ./asn1-gentables$(EXEEXT_FOR_BUILD) $$list > asn1-tables.c uninstall-local: uninstall-def-file
View file
_service:tar_scm:libksba-1.6.0.tar.bz2/src/asn1-func.c -> _service:tar_scm:libksba-1.6.3.tar.bz2/src/asn1-func.c
Changed
@@ -121,8 +121,8 @@ /* Change the value field of the node to the content of buffer value - of size LEN. With VALUE of NULL or LEN of 0 the value field is - deleted */ + of size LEN. With VALUE of NULL or LEN of 0 and a VTYPE of + VALTYPE_NULL the value field is deleted */ void _ksba_asn_set_value (AsnNode node, enum asn_value_type vtype, const void *value, size_t len) @@ -143,15 +143,16 @@ case VALTYPE_NULL: break; case VALTYPE_BOOL: - return_if_fail (len); - node->value.v_bool = !!(const unsigned *)value; + return_if_fail (len && value); + node->value.v_bool = !!*(const unsigned *)value; break; case VALTYPE_CSTR: + return_if_fail (value); node->value.v_cstr = xstrdup (value); break; case VALTYPE_MEM: node->value.v_mem.len = len; - if (len) + if (len && value) { node->value.v_mem.buf = xmalloc (len); memcpy (node->value.v_mem.buf, value, len); @@ -160,12 +161,12 @@ node->value.v_mem.buf = NULL; break; case VALTYPE_LONG: - return_if_fail (sizeof (long) == len); + return_if_fail (sizeof (long) == len && value); node->value.v_long = *(long *)value; break; case VALTYPE_ULONG: - return_if_fail (sizeof (unsigned long) == len); + return_if_fail (sizeof (unsigned long) == len && value); node->value.v_ulong = *(unsigned long *)value; break;
View file
_service:tar_scm:libksba-1.6.0.tar.bz2/src/asn1-parse.c -> _service:tar_scm:libksba-1.6.3.tar.bz2/src/asn1-parse.c
Changed
@@ -94,9 +94,6 @@ /* #define YYDEBUG 1 */ #define MAX_STRING_LENGTH 129 -/* Dummy print so that yytoknum will be defined. */ -#define YYPRINT(F, N, L) do { } while (0); - /* constants used in the grammar */ enum { @@ -115,7 +112,7 @@ #define PARSECTL ((struct parser_control_s *)parm) -#line 119 "asn1-parse.c" /* yacc.c:337 */ +#line 116 "asn1-parse.c" /* yacc.c:337 */ # ifndef YY_NULLPTR # if defined __cplusplus # if 201103L <= __cplusplus @@ -202,13 +199,13 @@ union YYSTYPE { -#line 97 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:352 */ +#line 94 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:352 */ unsigned int constant; char strMAX_STRING_LENGTH; AsnNode node; -#line 212 "asn1-parse.c" /* yacc.c:352 */ +#line 209 "asn1-parse.c" /* yacc.c:352 */ }; typedef union YYSTYPE YYSTYPE; @@ -223,7 +220,7 @@ /* Second part of user prologue. */ -#line 103 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:354 */ +#line 100 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:354 */ static AsnNode new_node (struct parser_control_s *parsectl, node_type_t type); #define NEW_NODE(a) (new_node (PARSECTL, (a))) @@ -238,7 +235,7 @@ static int yylex (YYSTYPE *lvalp, void *parm); static void yyerror (void *parm, const char *s); -#line 242 "asn1-parse.c" /* yacc.c:354 */ +#line 239 "asn1-parse.c" /* yacc.c:354 */ #ifdef short # undef short @@ -531,18 +528,18 @@ /* YYRLINEYYN -- Source line where rule number YYN was defined. */ static const yytype_uint16 yyrline = { - 0, 184, 184, 185, 188, 189, 192, 199, 200, 203, - 204, 207, 208, 211, 216, 224, 225, 250, 255, 263, - 265, 272, 273, 274, 277, 283, 291, 293, 298, 305, - 310, 315, 322, 326, 332, 343, 349, 353, 359, 365, - 374, 378, 384, 388, 396, 397, 404, 405, 412, 414, - 421, 423, 430, 431, 438, 440, 447, 448, 457, 458, - 459, 460, 461, 462, 463, 469, 477, 481, 488, 492, - 500, 508, 514, 519, 526, 527, 528, 529, 530, 531, - 532, 533, 534, 535, 536, 537, 538, 544, 548, 559, - 563, 570, 577, 584, 586, 593, 598, 603, 612, 617, - 622, 631, 638, 642, 654, 661, 668, 677, 686, 687, - 690, 692, 699, 708, 724, 725, 728 + 0, 179, 179, 180, 183, 184, 187, 194, 195, 198, + 199, 202, 203, 206, 211, 219, 220, 245, 250, 258, + 260, 267, 268, 269, 272, 278, 286, 288, 293, 300, + 305, 310, 317, 321, 327, 338, 344, 348, 354, 360, + 369, 373, 379, 383, 391, 392, 399, 400, 407, 409, + 416, 418, 425, 426, 433, 435, 442, 443, 452, 453, + 454, 455, 456, 457, 458, 464, 472, 476, 483, 487, + 495, 503, 509, 514, 521, 522, 523, 524, 525, 526, + 527, 528, 529, 530, 531, 532, 533, 539, 543, 554, + 558, 565, 572, 579, 581, 588, 593, 598, 607, 612, + 617, 626, 633, 637, 649, 656, 663, 672, 681, 682, + 685, 687, 694, 703, 719, 720, 723 }; #endif @@ -1480,239 +1477,239 @@ switch (yyn) { case 4: -#line 188 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ +#line 183 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ { strcpy((yyval.str),(yyvsp0.str)); } -#line 1486 "asn1-parse.c" /* yacc.c:1652 */ +#line 1483 "asn1-parse.c" /* yacc.c:1652 */ break; case 5: -#line 189 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ +#line 184 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ { strcpy((yyval.str),(yyvsp0.str)); } -#line 1492 "asn1-parse.c" /* yacc.c:1652 */ +#line 1489 "asn1-parse.c" /* yacc.c:1652 */ break; case 6: -#line 193 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ +#line 188 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ { strcpy((yyval.str),"-"); strcat((yyval.str),(yyvsp0.str)); } -#line 1501 "asn1-parse.c" /* yacc.c:1652 */ +#line 1498 "asn1-parse.c" /* yacc.c:1652 */ break; case 7: -#line 199 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ +#line 194 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ { strcpy((yyval.str),(yyvsp0.str)); } -#line 1507 "asn1-parse.c" /* yacc.c:1652 */ +#line 1504 "asn1-parse.c" /* yacc.c:1652 */ break; case 8: -#line 200 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ +#line 195 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ { strcpy((yyval.str),(yyvsp0.str)); } -#line 1513 "asn1-parse.c" /* yacc.c:1652 */ +#line 1510 "asn1-parse.c" /* yacc.c:1652 */ break; case 9: -#line 203 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ +#line 198 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ {strcpy((yyval.str),(yyvsp0.str));} -#line 1519 "asn1-parse.c" /* yacc.c:1652 */ +#line 1516 "asn1-parse.c" /* yacc.c:1652 */ break; case 10: -#line 204 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ +#line 199 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ {strcpy((yyval.str),(yyvsp0.str));} -#line 1525 "asn1-parse.c" /* yacc.c:1652 */ +#line 1522 "asn1-parse.c" /* yacc.c:1652 */ break; case 11: -#line 207 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ +#line 202 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ {strcpy((yyval.str),(yyvsp0.str));} -#line 1531 "asn1-parse.c" /* yacc.c:1652 */ +#line 1528 "asn1-parse.c" /* yacc.c:1652 */ break; case 12: -#line 208 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ +#line 203 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ {strcpy((yyval.str),(yyvsp0.str));} -#line 1537 "asn1-parse.c" /* yacc.c:1652 */ +#line 1534 "asn1-parse.c" /* yacc.c:1652 */ break; case 13: -#line 212 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ +#line 207 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ { (yyval.node) = NEW_NODE (TYPE_CONSTANT); set_str_value ((yyval.node), (yyvsp-1.str)); } -#line 1546 "asn1-parse.c" /* yacc.c:1652 */ +#line 1543 "asn1-parse.c" /* yacc.c:1652 */ break; case 14: -#line 217 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ +#line 212 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ { (yyval.node) = NEW_NODE (TYPE_CONSTANT); set_name ((yyval.node), (yyvsp-3.str)); set_str_value ((yyval.node), (yyvsp-1.str)); } -#line 1556 "asn1-parse.c" /* yacc.c:1652 */ +#line 1553 "asn1-parse.c" /* yacc.c:1652 */ break; case 15: -#line 224 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ +#line 219 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ { (yyval.node)=(yyvsp0.node); } -#line 1562 "asn1-parse.c" /* yacc.c:1652 */ +#line 1559 "asn1-parse.c" /* yacc.c:1652 */ break; case 16: -#line 226 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ +#line 221 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ { (yyval.node) = (yyvsp-2.node); append_right ((yyvsp-2.node), (yyvsp0.node)); } -#line 1571 "asn1-parse.c" /* yacc.c:1652 */ +#line 1568 "asn1-parse.c" /* yacc.c:1652 */ break; case 17: -#line 251 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ +#line 246 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ { (yyval.node) = NEW_NODE (TYPE_CONSTANT); set_str_value ((yyval.node), (yyvsp0.str)); } -#line 1580 "asn1-parse.c" /* yacc.c:1652 */ +#line 1577 "asn1-parse.c" /* yacc.c:1652 */ break; case 18: -#line 256 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ +#line 251 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ { (yyval.node) = NEW_NODE (TYPE_CONSTANT); set_name ((yyval.node), (yyvsp-3.str)); set_str_value ((yyval.node), (yyvsp-1.str)); } -#line 1590 "asn1-parse.c" /* yacc.c:1652 */ +#line 1587 "asn1-parse.c" /* yacc.c:1652 */ break; case 19: -#line 264 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ +#line 259 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ { (yyval.node)=(yyvsp0.node);} -#line 1596 "asn1-parse.c" /* yacc.c:1652 */ +#line 1593 "asn1-parse.c" /* yacc.c:1652 */ break; case 20: -#line 266 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ +#line 261 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ { (yyval.node)=(yyvsp-1.node); append_right ((yyval.node), (yyvsp0.node)); } -#line 1605 "asn1-parse.c" /* yacc.c:1652 */ +#line 1602 "asn1-parse.c" /* yacc.c:1652 */ break; case 21: -#line 272 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ +#line 267 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ { (yyval.constant) = CLASS_UNIVERSAL; } -#line 1611 "asn1-parse.c" /* yacc.c:1652 */ +#line 1608 "asn1-parse.c" /* yacc.c:1652 */ break; case 22: -#line 273 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ +#line 268 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ { (yyval.constant) = CLASS_PRIVATE; } -#line 1617 "asn1-parse.c" /* yacc.c:1652 */ +#line 1614 "asn1-parse.c" /* yacc.c:1652 */ break; case 23: -#line 274 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ +#line 269 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ { (yyval.constant) = CLASS_APPLICATION; } -#line 1623 "asn1-parse.c" /* yacc.c:1652 */ +#line 1620 "asn1-parse.c" /* yacc.c:1652 */ break; case 24: -#line 278 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ +#line 273 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ { (yyval.node) = NEW_NODE (TYPE_TAG); (yyval.node)->flags.class = CLASS_CONTEXT; set_ulong_value ((yyval.node), (yyvsp-1.str)); } -#line 1633 "asn1-parse.c" /* yacc.c:1652 */ +#line 1630 "asn1-parse.c" /* yacc.c:1652 */ break; case 25: -#line 284 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ +#line 279 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ { (yyval.node) = NEW_NODE (TYPE_TAG); (yyval.node)->flags.class = (yyvsp-2.constant); set_ulong_value ((yyval.node), (yyvsp-1.str)); } -#line 1643 "asn1-parse.c" /* yacc.c:1652 */ +#line 1640 "asn1-parse.c" /* yacc.c:1652 */ break; case 26: -#line 292 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ +#line 287 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ { (yyval.node) = (yyvsp0.node); } -#line 1649 "asn1-parse.c" /* yacc.c:1652 */ +#line 1646 "asn1-parse.c" /* yacc.c:1652 */ break; case 27: -#line 294 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ +#line 289 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ { (yyval.node) = (yyvsp-1.node); (yyval.node)->flags.explicit = 1; } -#line 1658 "asn1-parse.c" /* yacc.c:1652 */ +#line 1655 "asn1-parse.c" /* yacc.c:1652 */ break; case 28: -#line 299 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ +#line 294 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ { (yyval.node) = (yyvsp-1.node); (yyval.node)->flags.implicit = 1; } -#line 1667 "asn1-parse.c" /* yacc.c:1652 */ +#line 1664 "asn1-parse.c" /* yacc.c:1652 */ break; case 29: -#line 306 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ +#line 301 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ { (yyval.node) = NEW_NODE (TYPE_DEFAULT); set_str_value ((yyval.node), (yyvsp0.str)); } -#line 1676 "asn1-parse.c" /* yacc.c:1652 */ +#line 1673 "asn1-parse.c" /* yacc.c:1652 */ break; case 30: -#line 311 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ +#line 306 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ { (yyval.node) = NEW_NODE (TYPE_DEFAULT); (yyval.node)->flags.is_true = 1; } -#line 1685 "asn1-parse.c" /* yacc.c:1652 */ +#line 1682 "asn1-parse.c" /* yacc.c:1652 */ break; case 31: -#line 316 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ +#line 311 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ { (yyval.node) = NEW_NODE (TYPE_DEFAULT); (yyval.node)->flags.is_false = 1; } -#line 1694 "asn1-parse.c" /* yacc.c:1652 */ +#line 1691 "asn1-parse.c" /* yacc.c:1652 */ break; case 32: -#line 323 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ +#line 318 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ { (yyval.node) = NEW_NODE (TYPE_INTEGER); } -#line 1702 "asn1-parse.c" /* yacc.c:1652 */ +#line 1699 "asn1-parse.c" /* yacc.c:1652 */ break; case 33: -#line 327 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ +#line 322 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ { (yyval.node) = NEW_NODE (TYPE_INTEGER); (yyval.node)->flags.has_list = 1; set_down ((yyval.node), (yyvsp-1.node)); } -#line 1712 "asn1-parse.c" /* yacc.c:1652 */ +#line 1709 "asn1-parse.c" /* yacc.c:1652 */ break; case 34: -#line 333 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ +#line 328 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ { (yyval.node) = NEW_NODE (TYPE_INTEGER); (yyval.node)->flags.has_min_max = 1; @@ -1721,367 +1718,367 @@ set_str_value ((yyval.node)->down, (yyvsp-1.str)); set_name ((yyval.node)->down, (yyvsp-4.str)); } -#line 1725 "asn1-parse.c" /* yacc.c:1652 */ +#line 1722 "asn1-parse.c" /* yacc.c:1652 */ break; case 35: -#line 344 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ +#line 339 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ { (yyval.node) = NEW_NODE (TYPE_BOOLEAN); } -#line 1733 "asn1-parse.c" /* yacc.c:1652 */ +#line 1730 "asn1-parse.c" /* yacc.c:1652 */ break; case 36: -#line 350 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ +#line 345 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ { (yyval.node) = NEW_NODE (TYPE_UTC_TIME); } -#line 1741 "asn1-parse.c" /* yacc.c:1652 */ +#line 1738 "asn1-parse.c" /* yacc.c:1652 */ break; case 37: -#line 354 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ +#line 349 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ { (yyval.node) = NEW_NODE (TYPE_GENERALIZED_TIME); } -#line 1749 "asn1-parse.c" /* yacc.c:1652 */ +#line 1746 "asn1-parse.c" /* yacc.c:1652 */ break; case 38: -#line 360 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ +#line 355 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ { (yyval.node) = NEW_NODE (TYPE_SIZE); (yyval.node)->flags.one_param = 1; set_str_value ((yyval.node), (yyvsp-1.str)); } -#line 1759 "asn1-parse.c" /* yacc.c:1652 */ +#line 1756 "asn1-parse.c" /* yacc.c:1652 */ break; case 39: -#line 366 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ +#line 361 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ { (yyval.node) = NEW_NODE (TYPE_SIZE); (yyval.node)->flags.has_min_max = 1; set_str_value ((yyval.node), (yyvsp-4.str)); set_name ((yyval.node), (yyvsp-1.str)); } -#line 1770 "asn1-parse.c" /* yacc.c:1652 */ +#line 1767 "asn1-parse.c" /* yacc.c:1652 */ break; case 40: -#line 375 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ +#line 370 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ { (yyval.node)=(yyvsp0.node); } -#line 1778 "asn1-parse.c" /* yacc.c:1652 */ +#line 1775 "asn1-parse.c" /* yacc.c:1652 */ break; case 41: -#line 379 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ +#line 374 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ { (yyval.node)=(yyvsp-1.node); } -#line 1786 "asn1-parse.c" /* yacc.c:1652 */ +#line 1783 "asn1-parse.c" /* yacc.c:1652 */ break; case 42: -#line 385 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ +#line 380 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ { (yyval.node) = NEW_NODE (TYPE_OCTET_STRING); } -#line 1794 "asn1-parse.c" /* yacc.c:1652 */ +#line 1791 "asn1-parse.c" /* yacc.c:1652 */ break; case 43: -#line 389 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ +#line 384 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ { (yyval.node) = NEW_NODE (TYPE_OCTET_STRING); (yyval.node)->flags.has_size = 1; set_down ((yyval.node),(yyvsp0.node)); } -#line 1804 "asn1-parse.c" /* yacc.c:1652 */ +#line 1801 "asn1-parse.c" /* yacc.c:1652 */ break; case 44: -#line 396 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ +#line 391 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ { (yyval.node) = NEW_NODE (TYPE_UTF8_STRING); } -#line 1810 "asn1-parse.c" /* yacc.c:1652 */ +#line 1807 "asn1-parse.c" /* yacc.c:1652 */ break; case 45: -#line 398 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ +#line 393 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ { (yyval.node) = NEW_NODE (TYPE_UTF8_STRING); (yyval.node)->flags.has_size = 1; set_down ((yyval.node),(yyvsp0.node)); } -#line 1820 "asn1-parse.c" /* yacc.c:1652 */ +#line 1817 "asn1-parse.c" /* yacc.c:1652 */ break; case 46: -#line 404 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ +#line 399 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ { (yyval.node) = NEW_NODE (TYPE_NUMERIC_STRING); } -#line 1826 "asn1-parse.c" /* yacc.c:1652 */ +#line 1823 "asn1-parse.c" /* yacc.c:1652 */ break; case 47: -#line 406 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ +#line 401 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ { (yyval.node) = NEW_NODE (TYPE_NUMERIC_STRING); (yyval.node)->flags.has_size = 1; set_down ((yyval.node),(yyvsp0.node)); } -#line 1836 "asn1-parse.c" /* yacc.c:1652 */ +#line 1833 "asn1-parse.c" /* yacc.c:1652 */ break; case 48: -#line 413 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ +#line 408 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ { (yyval.node) = NEW_NODE (TYPE_PRINTABLE_STRING); } -#line 1842 "asn1-parse.c" /* yacc.c:1652 */ +#line 1839 "asn1-parse.c" /* yacc.c:1652 */ break; case 49: -#line 415 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ +#line 410 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ { (yyval.node) = NEW_NODE (TYPE_PRINTABLE_STRING); (yyval.node)->flags.has_size = 1; set_down ((yyval.node),(yyvsp0.node)); } -#line 1852 "asn1-parse.c" /* yacc.c:1652 */ +#line 1849 "asn1-parse.c" /* yacc.c:1652 */ break; case 50: -#line 422 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ +#line 417 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ { (yyval.node) = NEW_NODE (TYPE_TELETEX_STRING); } -#line 1858 "asn1-parse.c" /* yacc.c:1652 */ +#line 1855 "asn1-parse.c" /* yacc.c:1652 */ break; case 51: -#line 424 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ +#line 419 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ { (yyval.node) = NEW_NODE (TYPE_TELETEX_STRING); (yyval.node)->flags.has_size = 1; set_down ((yyval.node),(yyvsp0.node)); } -#line 1868 "asn1-parse.c" /* yacc.c:1652 */ +#line 1865 "asn1-parse.c" /* yacc.c:1652 */ break; case 52: -#line 430 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ +#line 425 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ { (yyval.node) = NEW_NODE (TYPE_IA5_STRING); } -#line 1874 "asn1-parse.c" /* yacc.c:1652 */ +#line 1871 "asn1-parse.c" /* yacc.c:1652 */ break; case 53: -#line 432 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ +#line 427 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ { (yyval.node) = NEW_NODE (TYPE_IA5_STRING); (yyval.node)->flags.has_size = 1; set_down ((yyval.node),(yyvsp0.node)); } -#line 1884 "asn1-parse.c" /* yacc.c:1652 */ +#line 1881 "asn1-parse.c" /* yacc.c:1652 */ break; case 54: -#line 439 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ +#line 434 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ { (yyval.node) = NEW_NODE (TYPE_UNIVERSAL_STRING); } -#line 1890 "asn1-parse.c" /* yacc.c:1652 */ +#line 1887 "asn1-parse.c" /* yacc.c:1652 */ break; case 55: -#line 441 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ +#line 436 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ { (yyval.node) = NEW_NODE (TYPE_UNIVERSAL_STRING); (yyval.node)->flags.has_size = 1; set_down ((yyval.node),(yyvsp0.node)); } -#line 1900 "asn1-parse.c" /* yacc.c:1652 */ +#line 1897 "asn1-parse.c" /* yacc.c:1652 */ break; case 56: -#line 447 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ +#line 442 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ { (yyval.node) = NEW_NODE (TYPE_BMP_STRING); } -#line 1906 "asn1-parse.c" /* yacc.c:1652 */ +#line 1903 "asn1-parse.c" /* yacc.c:1652 */ break; case 57: -#line 449 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ +#line 444 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ { (yyval.node) = NEW_NODE (TYPE_BMP_STRING); (yyval.node)->flags.has_size = 1; set_down ((yyval.node),(yyvsp0.node)); } -#line 1916 "asn1-parse.c" /* yacc.c:1652 */ +#line 1913 "asn1-parse.c" /* yacc.c:1652 */ break; case 65: -#line 470 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ +#line 465 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ { (yyval.node) = NEW_NODE (TYPE_CONSTANT); set_name ((yyval.node), (yyvsp-3.str)); set_str_value ((yyval.node), (yyvsp-1.str)); } -#line 1926 "asn1-parse.c" /* yacc.c:1652 */ +#line 1923 "asn1-parse.c" /* yacc.c:1652 */ break; case 66: -#line 478 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ +#line 473 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ { (yyval.node)=(yyvsp0.node); } -#line 1934 "asn1-parse.c" /* yacc.c:1652 */ +#line 1931 "asn1-parse.c" /* yacc.c:1652 */ break; case 67: -#line 482 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ +#line 477 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ { (yyval.node)=(yyvsp-2.node); append_right ((yyval.node), (yyvsp0.node)); } -#line 1943 "asn1-parse.c" /* yacc.c:1652 */ +#line 1940 "asn1-parse.c" /* yacc.c:1652 */ break; case 68: -#line 489 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ +#line 484 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ { (yyval.node) = NEW_NODE (TYPE_BIT_STRING); } -#line 1951 "asn1-parse.c" /* yacc.c:1652 */ +#line 1948 "asn1-parse.c" /* yacc.c:1652 */ break; case 69: -#line 493 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ +#line 488 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ { (yyval.node) = NEW_NODE (TYPE_BIT_STRING); (yyval.node)->flags.has_list = 1; set_down ((yyval.node), (yyvsp-1.node)); } -#line 1961 "asn1-parse.c" /* yacc.c:1652 */ +#line 1958 "asn1-parse.c" /* yacc.c:1652 */ break; case 70: -#line 501 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ +#line 496 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ { (yyval.node) = NEW_NODE (TYPE_ENUMERATED); (yyval.node)->flags.has_list = 1; set_down ((yyval.node), (yyvsp-1.node)); } -#line 1971 "asn1-parse.c" /* yacc.c:1652 */ +#line 1968 "asn1-parse.c" /* yacc.c:1652 */ break; case 71: -#line 509 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ +#line 504 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ { (yyval.node) = NEW_NODE (TYPE_OBJECT_ID); } -#line 1979 "asn1-parse.c" /* yacc.c:1652 */ +#line 1976 "asn1-parse.c" /* yacc.c:1652 */ break; case 72: -#line 515 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ +#line 510 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ { (yyval.node) = NEW_NODE (TYPE_IDENTIFIER); set_str_value ((yyval.node), (yyvsp0.str)); } -#line 1988 "asn1-parse.c" /* yacc.c:1652 */ +#line 1985 "asn1-parse.c" /* yacc.c:1652 */ break; case 73: -#line 520 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ +#line 515 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ { (yyval.node) = NEW_NODE (TYPE_IDENTIFIER); (yyval.node)->flags.has_size = 1; set_str_value ((yyval.node), (yyvsp-1.str)); set_down ((yyval.node), (yyvsp0.node)); } -#line 1999 "asn1-parse.c" /* yacc.c:1652 */ +#line 1996 "asn1-parse.c" /* yacc.c:1652 */ break; case 74: -#line 526 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ +#line 521 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ {(yyval.node)=(yyvsp0.node);} -#line 2005 "asn1-parse.c" /* yacc.c:1652 */ +#line 2002 "asn1-parse.c" /* yacc.c:1652 */ break; case 75: -#line 527 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ +#line 522 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ {(yyval.node)=(yyvsp0.node);} -#line 2011 "asn1-parse.c" /* yacc.c:1652 */ +#line 2008 "asn1-parse.c" /* yacc.c:1652 */ break; case 76: -#line 528 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ +#line 523 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ {(yyval.node)=(yyvsp0.node);} -#line 2017 "asn1-parse.c" /* yacc.c:1652 */ +#line 2014 "asn1-parse.c" /* yacc.c:1652 */ break; case 77: -#line 529 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ +#line 524 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ {(yyval.node)=(yyvsp0.node);} -#line 2023 "asn1-parse.c" /* yacc.c:1652 */ +#line 2020 "asn1-parse.c" /* yacc.c:1652 */ break; case 79: -#line 531 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ +#line 526 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ {(yyval.node)=(yyvsp0.node);} -#line 2029 "asn1-parse.c" /* yacc.c:1652 */ +#line 2026 "asn1-parse.c" /* yacc.c:1652 */ break; case 80: -#line 532 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ +#line 527 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ {(yyval.node)=(yyvsp0.node);} -#line 2035 "asn1-parse.c" /* yacc.c:1652 */ +#line 2032 "asn1-parse.c" /* yacc.c:1652 */ break; case 81: -#line 533 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ +#line 528 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ {(yyval.node)=(yyvsp0.node);} -#line 2041 "asn1-parse.c" /* yacc.c:1652 */ +#line 2038 "asn1-parse.c" /* yacc.c:1652 */ break; case 82: -#line 534 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ +#line 529 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ {(yyval.node)=(yyvsp0.node);} -#line 2047 "asn1-parse.c" /* yacc.c:1652 */ +#line 2044 "asn1-parse.c" /* yacc.c:1652 */ break; case 83: -#line 535 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ +#line 530 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ {(yyval.node)=(yyvsp0.node);} -#line 2053 "asn1-parse.c" /* yacc.c:1652 */ +#line 2050 "asn1-parse.c" /* yacc.c:1652 */ break; case 84: -#line 536 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ +#line 531 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ {(yyval.node)=(yyvsp0.node);} -#line 2059 "asn1-parse.c" /* yacc.c:1652 */ +#line 2056 "asn1-parse.c" /* yacc.c:1652 */ break; case 85: -#line 537 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ +#line 532 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ {(yyval.node)=(yyvsp0.node);} -#line 2065 "asn1-parse.c" /* yacc.c:1652 */ +#line 2062 "asn1-parse.c" /* yacc.c:1652 */ break; case 86: -#line 539 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ +#line 534 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ { (yyval.node) = NEW_NODE(TYPE_NULL); } -#line 2073 "asn1-parse.c" /* yacc.c:1652 */ +#line 2070 "asn1-parse.c" /* yacc.c:1652 */ break; case 87: -#line 545 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ +#line 540 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ { (yyval.node) = (yyvsp0.node); } -#line 2081 "asn1-parse.c" /* yacc.c:1652 */ +#line 2078 "asn1-parse.c" /* yacc.c:1652 */ break; case 88: -#line 549 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ +#line 544 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ { /* $2->flags.has_tag = 1; */ /* $$ = $2; */ @@ -2090,138 +2087,138 @@ (yyval.node) = (yyvsp-1.node); set_down ((yyval.node), (yyvsp0.node)); } -#line 2094 "asn1-parse.c" /* yacc.c:1652 */ +#line 2091 "asn1-parse.c" /* yacc.c:1652 */ break; case 89: -#line 560 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ +#line 555 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ { (yyval.node) = (yyvsp0.node); } -#line 2102 "asn1-parse.c" /* yacc.c:1652 */ +#line 2099 "asn1-parse.c" /* yacc.c:1652 */ break; case 90: -#line 564 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ +#line 559 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ { (yyvsp-1.node)->flags.has_default = 1; (yyval.node) = (yyvsp-1.node); set_right ((yyvsp0.node), (yyval.node)->down); set_down ((yyval.node), (yyvsp0.node)); } -#line 2113 "asn1-parse.c" /* yacc.c:1652 */ +#line 2110 "asn1-parse.c" /* yacc.c:1652 */ break; case 91: -#line 571 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ +#line 566 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ { (yyvsp-1.node)->flags.is_optional = 1; (yyval.node) = (yyvsp-1.node); } -#line 2122 "asn1-parse.c" /* yacc.c:1652 */ +#line 2119 "asn1-parse.c" /* yacc.c:1652 */ break; case 92: -#line 578 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ +#line 573 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ { set_name ((yyvsp0.node), (yyvsp-1.str)); (yyval.node) = (yyvsp0.node); } -#line 2131 "asn1-parse.c" /* yacc.c:1652 */ +#line 2128 "asn1-parse.c" /* yacc.c:1652 */ break; case 93: -#line 585 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ +#line 580 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ { (yyval.node)=(yyvsp0.node); } -#line 2137 "asn1-parse.c" /* yacc.c:1652 */ +#line 2134 "asn1-parse.c" /* yacc.c:1652 */ break; case 94: -#line 587 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ +#line 582 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ { (yyval.node)=(yyvsp-2.node); append_right ((yyval.node), (yyvsp0.node)); } -#line 2146 "asn1-parse.c" /* yacc.c:1652 */ +#line 2143 "asn1-parse.c" /* yacc.c:1652 */ break; case 95: -#line 594 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ +#line 589 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ { (yyval.node) = NEW_NODE (TYPE_SEQUENCE); set_down ((yyval.node), (yyvsp-1.node)); } -#line 2155 "asn1-parse.c" /* yacc.c:1652 */ +#line 2152 "asn1-parse.c" /* yacc.c:1652 */ break; case 96: -#line 599 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ +#line 594 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ { (yyval.node) = NEW_NODE (TYPE_SEQUENCE_OF); set_down ((yyval.node), (yyvsp0.node)); } -#line 2164 "asn1-parse.c" /* yacc.c:1652 */ +#line 2161 "asn1-parse.c" /* yacc.c:1652 */ break; case 97: -#line 604 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ +#line 599 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ { (yyval.node) = NEW_NODE (TYPE_SEQUENCE_OF); (yyval.node)->flags.has_size = 1; set_right ((yyvsp-2.node),(yyvsp0.node)); set_down ((yyval.node),(yyvsp-2.node)); } -#line 2175 "asn1-parse.c" /* yacc.c:1652 */ +#line 2172 "asn1-parse.c" /* yacc.c:1652 */ break; case 98: -#line 613 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ +#line 608 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ { (yyval.node) = NEW_NODE (TYPE_SET); set_down ((yyval.node), (yyvsp-1.node)); } -#line 2184 "asn1-parse.c" /* yacc.c:1652 */ +#line 2181 "asn1-parse.c" /* yacc.c:1652 */ break; case 99: -#line 618 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ +#line 613 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ { (yyval.node) = NEW_NODE (TYPE_SET_OF); set_down ((yyval.node), (yyvsp0.node)); } -#line 2193 "asn1-parse.c" /* yacc.c:1652 */ +#line 2190 "asn1-parse.c" /* yacc.c:1652 */ break; case 100: -#line 623 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ +#line 618 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ { (yyval.node) = NEW_NODE (TYPE_SET_OF); (yyval.node)->flags.has_size = 1; set_right ((yyvsp-2.node), (yyvsp0.node)); set_down ((yyval.node), (yyvsp-2.node)); } -#line 2204 "asn1-parse.c" /* yacc.c:1652 */ +#line 2201 "asn1-parse.c" /* yacc.c:1652 */ break; case 101: -#line 632 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ +#line 627 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ { (yyval.node) = NEW_NODE (TYPE_CHOICE); set_down ((yyval.node), (yyvsp-1.node)); } -#line 2213 "asn1-parse.c" /* yacc.c:1652 */ +#line 2210 "asn1-parse.c" /* yacc.c:1652 */ break; case 102: -#line 639 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ +#line 634 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ { (yyval.node) = NEW_NODE (TYPE_ANY); } -#line 2221 "asn1-parse.c" /* yacc.c:1652 */ +#line 2218 "asn1-parse.c" /* yacc.c:1652 */ break; case 103: -#line 643 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ +#line 638 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ { AsnNode node; @@ -2231,31 +2228,31 @@ set_name (node, (yyvsp0.str)); set_down((yyval.node), node); } -#line 2235 "asn1-parse.c" /* yacc.c:1652 */ +#line 2232 "asn1-parse.c" /* yacc.c:1652 */ break; case 104: -#line 655 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ +#line 650 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ { set_name ((yyvsp0.node), (yyvsp-2.str)); (yyval.node) = (yyvsp0.node); } -#line 2244 "asn1-parse.c" /* yacc.c:1652 */ +#line 2241 "asn1-parse.c" /* yacc.c:1652 */ break; case 105: -#line 662 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ +#line 657 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ { (yyval.node) = NEW_NODE (TYPE_OBJECT_ID); (yyval.node)->flags.assignment = 1; set_name ((yyval.node), (yyvsp-6.str)); set_down ((yyval.node), (yyvsp-1.node)); } -#line 2255 "asn1-parse.c" /* yacc.c:1652 */ +#line 2252 "asn1-parse.c" /* yacc.c:1652 */ break; case 106: -#line 669 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ +#line 664 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ { (yyval.node) = NEW_NODE (TYPE_OBJECT_ID); (yyval.node)->flags.assignment = 1; @@ -2264,77 +2261,77 @@ set_str_value ((yyval.node), (yyvsp-4.str)); set_down ((yyval.node), (yyvsp-1.node)); } -#line 2268 "asn1-parse.c" /* yacc.c:1652 */ +#line 2265 "asn1-parse.c" /* yacc.c:1652 */ break; case 107: -#line 678 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ +#line 673 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ { (yyval.node) = NEW_NODE (TYPE_INTEGER); (yyval.node)->flags.assignment = 1; set_name ((yyval.node), (yyvsp-3.str)); set_str_value ((yyval.node), (yyvsp0.str)); } -#line 2279 "asn1-parse.c" /* yacc.c:1652 */ +#line 2276 "asn1-parse.c" /* yacc.c:1652 */ break; case 108: -#line 686 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ +#line 681 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ { (yyval.node) = (yyvsp0.node); } -#line 2285 "asn1-parse.c" /* yacc.c:1652 */ +#line 2282 "asn1-parse.c" /* yacc.c:1652 */ break; case 109: -#line 687 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ +#line 682 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ { (yyval.node) = (yyvsp0.node); } -#line 2291 "asn1-parse.c" /* yacc.c:1652 */ +#line 2288 "asn1-parse.c" /* yacc.c:1652 */ break; case 110: -#line 691 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ +#line 686 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ { (yyval.node) = (yyvsp0.node); } -#line 2297 "asn1-parse.c" /* yacc.c:1652 */ +#line 2294 "asn1-parse.c" /* yacc.c:1652 */ break; case 111: -#line 693 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ +#line 688 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ { (yyval.node) = (yyvsp-1.node); append_right ((yyval.node), (yyvsp0.node)); } -#line 2306 "asn1-parse.c" /* yacc.c:1652 */ +#line 2303 "asn1-parse.c" /* yacc.c:1652 */ break; case 112: -#line 700 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ +#line 695 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ { (yyval.node) = NEW_NODE (TYPE_OBJECT_ID); set_down ((yyval.node), (yyvsp-1.node)); set_name ((yyval.node), (yyvsp-3.str)); } -#line 2316 "asn1-parse.c" /* yacc.c:1652 */ +#line 2313 "asn1-parse.c" /* yacc.c:1652 */ break; case 113: -#line 708 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ +#line 703 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ { (yyval.node)=NULL;} -#line 2322 "asn1-parse.c" /* yacc.c:1652 */ +#line 2319 "asn1-parse.c" /* yacc.c:1652 */ break; case 114: -#line 724 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ +#line 719 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ { (yyval.constant) = CONST_EXPLICIT; } -#line 2328 "asn1-parse.c" /* yacc.c:1652 */ +#line 2325 "asn1-parse.c" /* yacc.c:1652 */ break; case 115: -#line 725 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ +#line 720 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ { (yyval.constant) = CONST_IMPLICIT; } -#line 2334 "asn1-parse.c" /* yacc.c:1652 */ +#line 2331 "asn1-parse.c" /* yacc.c:1652 */ break; case 116: -#line 731 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ +#line 726 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1652 */ { AsnNode node; @@ -2366,11 +2363,11 @@ PARSECTL->result_parse = _ksba_asn_check_identifier((yyval.node)); PARSECTL->parse_tree=(yyval.node); } -#line 2370 "asn1-parse.c" /* yacc.c:1652 */ +#line 2367 "asn1-parse.c" /* yacc.c:1652 */ break; -#line 2374 "asn1-parse.c" /* yacc.c:1652 */ +#line 2371 "asn1-parse.c" /* yacc.c:1652 */ default: break; } /* User semantic actions sometimes alter yychar, and that requires @@ -2601,10 +2598,60 @@ #endif return yyresult; } -#line 764 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1918 */ +#line 759 "/home/wk/s/libksba/src/asn1-parse.y" /* yacc.c:1918 */  +struct token_table_s { + const char *word; + int token; +}; + +static struct token_table_s token_table = { + { "::=", ASSIG }, + { "ANY", ANY }, + { "APPLICATION", APPLICATION }, + { "BEGIN", ksba_BEGIN }, + { "BIT", BIT }, + { "BMPString", BMPSTRING }, + { "BOOLEAN", ksba_BOOLEAN }, + { "BY", BY }, + { "CHOICE", CHOICE }, + { "DEFAULT", DEFAULT }, + { "DEFINED", DEFINED }, + { "DEFINITIONS", DEFINITIONS }, + { "END", ksba_END }, + { "ENUMERATED", ENUMERATED }, + { "EXPLICIT", EXPLICIT }, + { "FALSE", ksba_FALSE }, + { "FROM", FROM }, + { "GeneralizedTime", GeneralizedTime }, + { "IA5String", IA5STRING }, + { "IDENTIFIER", STR_IDENTIFIER }, + { "IMPLICIT", IMPLICIT }, + { "IMPORTS", IMPORTS }, + { "INTEGER", INTEGER }, + { "NULL", TOKEN_NULL }, + { "NumericString", NUMERICSTRING }, + { "OBJECT", OBJECT }, + { "OCTET", OCTET }, + { "OF", OF }, + { "OPTIONAL", OPTIONAL }, + { "PRIVATE", PRIVATE }, + { "PrintableString", PRINTABLESTRING }, + { "SEQUENCE", SEQUENCE }, + { "SET", SET }, + { "SIZE", SIZE }, + { "STRING", STRING }, + { "TAGS", TAGS }, + { "TRUE", ksba_TRUE }, + { "TeletexString", TELETEXSTRING }, + { "UNIVERSAL", UNIVERSAL }, + { "UTCTime", UTCTime }, + { "UTF8String", UTF8STRING }, + { "UniversalString", UNIVERSALSTRING }, +}; + /*************************************************************/ /* Function: yylex */ /* Description: looks for tokens in file_asn1 pointer file. */ @@ -2616,7 +2663,6 @@ { int c,counter=0,k; char stringMAX_STRING_LENGTH; - size_t len; FILE *fp = PARSECTL->fp; if (!PARSECTL->lineno) @@ -2693,13 +2739,10 @@ } /* Is STRING a keyword? */ - len = strlen (string); - for (k = 0; k < YYNTOKENS; k++) + for (k = 0; k < DIM (token_table); k++) { - if (yytnamek && yytnamek0 == '\"' - && !strncmp (yytnamek + 1, string, len) - && yytnameklen + 1 == '\"' && !yytnameklen + 2) - return yytoknumk; + if (!strcmp (token_tablek.word, string)) + return token_tablek.token; } /* STRING is an IDENTIFIER */
View file
_service:tar_scm:libksba-1.6.0.tar.bz2/src/asn1-parse.y -> _service:tar_scm:libksba-1.6.3.tar.bz2/src/asn1-parse.y
Changed
@@ -66,9 +66,6 @@ /* #define YYDEBUG 1 */ #define MAX_STRING_LENGTH 129 -/* Dummy print so that yytoknum will be defined. */ -#define YYPRINT(F, N, L) do { } while (0); - /* constants used in the grammar */ enum { @@ -115,8 +112,6 @@ static void yyerror (void *parm, const char *s); %} -%token-table - %token ASSIG "::=" %token <str> NUM %token <str> IDENTIFIER @@ -764,6 +759,56 @@ %%  +struct token_table_s { + const char *word; + int token; +}; + +static struct token_table_s token_table = { + { "::=", ASSIG }, + { "ANY", ANY }, + { "APPLICATION", APPLICATION }, + { "BEGIN", ksba_BEGIN }, + { "BIT", BIT }, + { "BMPString", BMPSTRING }, + { "BOOLEAN", ksba_BOOLEAN }, + { "BY", BY }, + { "CHOICE", CHOICE }, + { "DEFAULT", DEFAULT }, + { "DEFINED", DEFINED }, + { "DEFINITIONS", DEFINITIONS }, + { "END", ksba_END }, + { "ENUMERATED", ENUMERATED }, + { "EXPLICIT", EXPLICIT }, + { "FALSE", ksba_FALSE }, + { "FROM", FROM }, + { "GeneralizedTime", GeneralizedTime }, + { "IA5String", IA5STRING }, + { "IDENTIFIER", STR_IDENTIFIER }, + { "IMPLICIT", IMPLICIT }, + { "IMPORTS", IMPORTS }, + { "INTEGER", INTEGER }, + { "NULL", TOKEN_NULL }, + { "NumericString", NUMERICSTRING }, + { "OBJECT", OBJECT }, + { "OCTET", OCTET }, + { "OF", OF }, + { "OPTIONAL", OPTIONAL }, + { "PRIVATE", PRIVATE }, + { "PrintableString", PRINTABLESTRING }, + { "SEQUENCE", SEQUENCE }, + { "SET", SET }, + { "SIZE", SIZE }, + { "STRING", STRING }, + { "TAGS", TAGS }, + { "TRUE", ksba_TRUE }, + { "TeletexString", TELETEXSTRING }, + { "UNIVERSAL", UNIVERSAL }, + { "UTCTime", UTCTime }, + { "UTF8String", UTF8STRING }, + { "UniversalString", UNIVERSALSTRING }, +}; + /*************************************************************/ /* Function: yylex */ /* Description: looks for tokens in file_asn1 pointer file. */ @@ -775,7 +820,6 @@ { int c,counter=0,k; char stringMAX_STRING_LENGTH; - size_t len; FILE *fp = PARSECTL->fp; if (!PARSECTL->lineno) @@ -852,13 +896,10 @@ } /* Is STRING a keyword? */ - len = strlen (string); - for (k = 0; k < YYNTOKENS; k++) + for (k = 0; k < DIM (token_table); k++) { - if (yytnamek && yytnamek0 == '\"' - && !strncmp (yytnamek + 1, string, len) - && yytnameklen + 1 == '\"' && !yytnameklen + 2) - return yytoknumk; + if (!strcmp (token_tablek.word, string)) + return token_tablek.token; } /* STRING is an IDENTIFIER */
View file
_service:tar_scm:libksba-1.6.0.tar.bz2/src/ber-help.c -> _service:tar_scm:libksba-1.6.3.tar.bz2/src/ber-help.c
Changed
@@ -182,6 +182,12 @@ ti->length = len; } + if (ti->length > ti->nhdr && (ti->nhdr + ti->length) < ti->length) + { + ti->err_string = "header+length would overflow"; + return gpg_error (GPG_ERR_EOVERFLOW); + } + /* Without this kludge some example certs can't be parsed */ if (ti->class == CLASS_UNIVERSAL && !ti->tag) ti->length = 0;
View file
_service:tar_scm:libksba-1.6.0.tar.bz2/src/convert.h -> _service:tar_scm:libksba-1.6.3.tar.bz2/src/convert.h
Changed
@@ -39,7 +39,7 @@ gpg_error_t _ksba_assert_time_format (const ksba_isotime_t atime); void _ksba_copy_time (ksba_isotime_t d, const ksba_isotime_t s); int _ksba_cmp_time (const ksba_isotime_t a, const ksba_isotime_t b); -void _ksba_current_time (ksba_isotime_t timebuf); +int _ksba_current_time (ksba_isotime_t timebuf); /*-- dn.c --*/
View file
_service:tar_scm:libksba-1.6.0.tar.bz2/src/crl.c -> _service:tar_scm:libksba-1.6.3.tar.bz2/src/crl.c
Changed
@@ -1349,7 +1349,7 @@ && !ti.is_constructed) ) return gpg_error (GPG_ERR_INV_CRL_OBJ); n2 = ti.nhdr + ti.length; - if (n + n2 >= DIM(tmpbuf)) + if (n + n2 >= DIM(tmpbuf) || (n + n2) < n) return gpg_error (GPG_ERR_TOO_LARGE); memcpy (tmpbuf+n, ti.buf, ti.nhdr); err = read_buffer (crl->reader, tmpbuf+n+ti.nhdr, ti.length);
View file
_service:tar_scm:libksba-1.6.0.tar.bz2/src/ksba.h -> _service:tar_scm:libksba-1.6.3.tar.bz2/src/ksba.h
Changed
@@ -46,11 +46,11 @@ /* The version of this header should match the one of the library. Do * not use this symbol in your application; use assuan_check_version * instead. */ -#define KSBA_VERSION "1.6.0" +#define KSBA_VERSION "1.6.3" /* The version number of this header. It may be used to handle minor * API incompatibilities. */ -#define KSBA_VERSION_NUMBER 0x010600 +#define KSBA_VERSION_NUMBER 0x010603
View file
_service:tar_scm:libksba-1.6.0.tar.bz2/src/ksba.m4 -> _service:tar_scm:libksba-1.6.3.tar.bz2/src/ksba.m4
Changed
@@ -9,7 +9,7 @@ # WITHOUT ANY WARRANTY, to the extent permitted by law; without even the # implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. # -# Last-changed: 2020-11-18 +# Last-changed: 2022-11-01 dnl AM_PATH_KSBA(MINIMUM-VERSION, dnl ACTION-IF-FOUND , ACTION-IF-NOT-FOUND ) @@ -44,7 +44,7 @@ fi use_gpgrt_config="" - if test x"$KSBA_CONFIG" = x -a x"$GPGRT_CONFIG" != x -a "$GPGRT_CONFIG" != "no"; then + if test x"$GPGRT_CONFIG" != x -a "$GPGRT_CONFIG" != "no"; then if $GPGRT_CONFIG ksba --exists; then KSBA_CONFIG="$GPGRT_CONFIG ksba" AC_MSG_NOTICE(Use gpgrt-config as ksba-config)
View file
_service:tar_scm:libksba-1.6.0.tar.bz2/src/ksba.pc.in -> _service:tar_scm:libksba-1.6.3.tar.bz2/src/ksba.pc.in
Changed
@@ -11,4 +11,4 @@ Version: @PACKAGE_VERSION@ Cflags: -I${includedir} @KSBA_CONFIG_CFLAGS@ Libs: -L${libdir} @KSBA_CONFIG_LIBS@ -URL: http://www.gnupg.org/related_software/libksba/ +URL: https://www.gnupg.org/related_software/libksba/
View file
_service:tar_scm:libksba-1.6.0.tar.bz2/src/ocsp.c -> _service:tar_scm:libksba-1.6.3.tar.bz2/src/ocsp.c
Changed
@@ -278,7 +278,7 @@ if (err) goto leave; - /* Write OID and and nonce. */ + /* Write OID and nonce. */ err = ksba_oid_from_str (oidstr_ocsp_nonce, &buf, &buflen); if (err) goto leave; @@ -358,6 +358,7 @@ unsigned char *p; const unsigned char *der; size_t derlen; + struct tag_info ti; ksba_writer_t w1 = NULL; ksba_writer_t w2 = NULL; ksba_writer_t w3 = NULL; @@ -423,16 +424,24 @@ err = ksba_writer_write (w1, der, derlen); if (err) goto leave; - xfree (ri->serialno); - ri->serialno = xtrymalloc (derlen); - if (!ri->serialno) - { - err = gpg_error_from_syserror (); - goto leave; - } - memcpy (ri->serialno, der, derlen); - ri->serialnolen = derlen; + /* Store the integer value. */ + { + const unsigned char *tmpder = der; + size_t tmpderlen = derlen; + err = parse_integer (&tmpder, &tmpderlen, &ti); + if (err) + goto leave; + xfree (ri->serialno); + ri->serialno = xtrymalloc (tmpderlen); + if (!ri->serialno) + { + err = gpg_error_from_syserror (); + goto leave; + } + memcpy (ri->serialno, tmpder, tmpderlen); + ri->serialnolen = tmpderlen; + } /* Now write it out as a sequence to the outer certID object. */ p = ksba_writer_snatch_mem (w1, &derlen); @@ -711,8 +720,12 @@ if (ocsp->noncelen != ti.length || memcmp (ocsp->nonce, data, ti.length)) ocsp->bad_nonce = 1; - else - ocsp->good_nonce = 1; + } + if (ti.length > (1<<24)) + { + /* Bail out on much too large objects. */ + err = gpg_error (GPG_ERR_BAD_BER); + goto leave; } ex = xtrymalloc (sizeof *ex + strlen (oid) + ti.length); if (!ex) @@ -781,6 +794,12 @@ err = parse_octet_string (&data, &datalen, &ti); if (err) goto leave; + if (ti.length > (1<<24)) + { + /* Bail out on much too large objects. */ + err = gpg_error (GPG_ERR_BAD_BER); + goto leave; + } ex = xtrymalloc (sizeof *ex + strlen (oid) + ti.length); if (!ex) { @@ -953,7 +972,7 @@ assert (n <= *datalen); *data += n; *datalen -= n; - /* fprintf (stderr, "algorithmIdentifier is `%s'\n", oid); */ + /* gpgrt_log_debug ("algorithmIdentifier is `%s'\n", oid); */ look_for_request = !strcmp (oid, oidstr_sha1); xfree (oid); @@ -994,10 +1013,10 @@ for (request_item = ocsp->requestlist; request_item; request_item = request_item->next) if (!memcmp (request_item->issuer_name_hash, name_hash, 20) - && !memcmp (request_item->issuer_key_hash, key_hash, 20) - && request_item->serialnolen == serialnolen + && !memcmp (request_item->issuer_key_hash, key_hash, 20) + && request_item->serialnolen == serialnolen && !memcmp (request_item->serialno, serialno, serialnolen)) - break; /* Got it. */ + break; /* Got it. */ } @@ -1103,9 +1122,8 @@ err = parse_asntime_into_isotime (data, datalen, this_update); if (err) return err; -/* fprintf (stderr, "thisUpdate=%s\n", this_update); */ if (request_item) - _ksba_copy_time (request_item->this_update, this_update); + _ksba_copy_time (request_item->this_update, this_update); /* nextUpdate is optional. */ if (*data >= endptr) @@ -1121,7 +1139,6 @@ err = parse_asntime_into_isotime (data, datalen, next_update); if (err) return err; -/* fprintf (stderr, "nextUpdate=%s\n", next_update); */ if (request_item) _ksba_copy_time (request_item->next_update, next_update); } @@ -1434,7 +1451,6 @@ ocsp->received_certs = NULL; ocsp->hash_length = 0; ocsp->bad_nonce = 0; - ocsp->good_nonce = 0; xfree (ocsp->responder_id.name); ocsp->responder_id.name = NULL; xfree (ocsp->responder_id.keyid); @@ -1456,9 +1472,12 @@ /* FIXME: find duplicates in the request list and set them to the same status. */ - if (*response_status == KSBA_OCSP_RSPSTATUS_SUCCESS) - if (ocsp->bad_nonce || (ocsp->noncelen && !ocsp->good_nonce)) - *response_status = KSBA_OCSP_RSPSTATUS_REPLAYED; + /* We used to assume that the server needs to return a nonce, but + * that is not true (see for example RFC-8954). Thus we do not + * check the former good_nonce flag anymore. */ + if (*response_status == KSBA_OCSP_RSPSTATUS_SUCCESS + && ocsp->bad_nonce) + *response_status = KSBA_OCSP_RSPSTATUS_REPLAYED; return err; }
View file
_service:tar_scm:libksba-1.6.0.tar.bz2/src/ocsp.h -> _service:tar_scm:libksba-1.6.3.tar.bz2/src/ocsp.h
Changed
@@ -102,7 +102,6 @@ the response. */ struct ocsp_extension_s *response_extensions; /* List of extensions. */ int bad_nonce; /* The nonce does not match the request. */ - int good_nonce; /* The nonce does match the request. */ struct { char *name; /* Allocated DN. */ char *keyid; /* Allocated key ID. */
View file
_service:tar_scm:libksba-1.6.0.tar.bz2/src/time.c -> _service:tar_scm:libksba-1.6.3.tar.bz2/src/time.c
Changed
@@ -148,7 +148,7 @@ } /* Fill the TIMEBUF with the current time (UTC of course). */ -void +int _ksba_current_time (ksba_isotime_t timebuf) { time_t epoch = time (NULL); @@ -160,7 +160,8 @@ #else tp = gmtime ( &epoch ); #endif - snprintf (timebuf, sizeof (ksba_isotime_t), "%04d%02d%02dT%02d%02d%02d", - 1900 + tp->tm_year, tp->tm_mon+1, tp->tm_mday, - tp->tm_hour, tp->tm_min, tp->tm_sec); + return snprintf (timebuf, sizeof (ksba_isotime_t), + "%04d%02d%02dT%02d%02d%02d", + 1900 + tp->tm_year, tp->tm_mon+1, tp->tm_mday, + tp->tm_hour, tp->tm_min, tp->tm_sec); }
View file
_service:tar_scm:libksba-1.6.0.tar.bz2/tests/Makefile.in -> _service:tar_scm:libksba-1.6.3.tar.bz2/tests/Makefile.in
Changed
@@ -117,6 +117,7 @@ $(top_srcdir)/gl/m4/gnulib.m4 \ $(top_srcdir)/gl/m4/valgrind-tests.m4 \ $(top_srcdir)/m4/autobuild.m4 \ + $(top_srcdir)/m4/ax_cc_for_build.m4 \ $(top_srcdir)/m4/ax_prog_bison.m4 $(top_srcdir)/m4/gcov.m4 \ $(top_srcdir)/m4/gpg-error.m4 $(top_srcdir)/m4/libtool.m4 \ $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \ @@ -298,6 +299,7 @@ ECHO_T = @ECHO_T@ EGREP = @EGREP@ EXEEXT = @EXEEXT@ +EXEEXT_FOR_BUILD = @EXEEXT_FOR_BUILD@ FGREP = @FGREP@ GCOV = @GCOV@ GENHTML = @GENHTML@
View file
_service:tar_scm:libksba-1.6.0.tar.bz2/tests/t-cms-parser.c -> _service:tar_scm:libksba-1.6.3.tar.bz2/tests/t-cms-parser.c
Changed
@@ -72,7 +72,7 @@ if (!quiet) printf ("*** checking `%s' ***\n", fname); - fp = fopen (fname, "r"); + fp = fopen (fname, "rb"); if (!fp) { fprintf (stderr, "%s:%d: can't open `%s': %s\n",
Locations
Projects
Search
Status Monitor
Help
Open Build Service
OBS Manuals
API Documentation
OBS Portal
Reporting a Bug
Contact
Mailing List
Forums
Chat (IRC)
Twitter
Open Build Service (OBS)
is an
openSUSE project
.
浙ICP备2022010568号-2