mirror of
https://github.com/ThomasDickey/mawk-snapshots.git
synced 2026-01-26 11:04:34 +00:00
snapshot of project "mawk", label t20221229
This commit is contained in:
parent
45ef7e90e6
commit
0b99ef4e59
12
CHANGES
12
CHANGES
@ -1,4 +1,14 @@
|
||||
-- $MawkId: CHANGES,v 1.325 2021/08/24 08:26:02 tom Exp $
|
||||
-- $MawkId: CHANGES,v 1.328 2022/12/29 15:22:41 tom Exp $
|
||||
|
||||
NOTE:
|
||||
The regular expression changes begun in 2020 are incomplete, e.g., do
|
||||
not handle a mixture of grouping and brace expressions. Fixing that
|
||||
issue is needed before a new stable release.
|
||||
|
||||
20221229
|
||||
+ fix shellcheck warnings in test-scripts.
|
||||
+ updated configure macros
|
||||
+ update config.guess, config.sub, and install-sh
|
||||
|
||||
20210824
|
||||
+ updated configure macros
|
||||
|
||||
2
MANIFEST
2
MANIFEST
@ -1,4 +1,4 @@
|
||||
MANIFEST for mawk, version t20210824
|
||||
MANIFEST for mawk, version t20221229
|
||||
--------------------------------------------------------------------------------
|
||||
MANIFEST this file
|
||||
ACKNOWLEDGMENT acknowledgements
|
||||
|
||||
170
aclocal.m4
vendored
170
aclocal.m4
vendored
@ -1,11 +1,11 @@
|
||||
dnl $MawkId: aclocal.m4,v 1.99 2021/06/13 23:45:41 tom Exp $
|
||||
dnl $MawkId: aclocal.m4,v 1.101 2022/12/29 15:11:44 tom Exp $
|
||||
dnl custom mawk macros for autoconf
|
||||
dnl
|
||||
dnl The symbols beginning "CF_MAWK_" were originally written by Mike Brennan,
|
||||
dnl renamed for consistency by Thomas E Dickey.
|
||||
dnl
|
||||
dnl ---------------------------------------------------------------------------
|
||||
dnl Copyright: 2008-2020,2021 by Thomas E. Dickey
|
||||
dnl Copyright: 2008-2021,2022 by Thomas E. Dickey
|
||||
dnl
|
||||
dnl Permission is hereby granted, free of charge, to any person obtaining a
|
||||
dnl copy of this software and associated documentation files (the
|
||||
@ -186,6 +186,25 @@ done
|
||||
ifelse($2,,LIBS,[$2])="$cf_add_libs"
|
||||
])dnl
|
||||
dnl ---------------------------------------------------------------------------
|
||||
dnl CF_APPEND_CFLAGS version: 3 updated: 2021/09/05 17:25:40
|
||||
dnl ----------------
|
||||
dnl Use CF_ADD_CFLAGS after first checking for potential redefinitions.
|
||||
dnl $1 = flags to add
|
||||
dnl $2 = if given makes this macro verbose.
|
||||
define([CF_APPEND_CFLAGS],
|
||||
[
|
||||
for cf_add_cflags in $1
|
||||
do
|
||||
case "x$cf_add_cflags" in
|
||||
(x-[[DU]]*)
|
||||
CF_REMOVE_CFLAGS($cf_add_cflags,CFLAGS,[$2])
|
||||
CF_REMOVE_CFLAGS($cf_add_cflags,CPPFLAGS,[$2])
|
||||
;;
|
||||
esac
|
||||
CF_ADD_CFLAGS([$cf_add_cflags],[$2])
|
||||
done
|
||||
])dnl
|
||||
dnl ---------------------------------------------------------------------------
|
||||
dnl CF_APPEND_TEXT version: 1 updated: 2017/02/25 18:58:55
|
||||
dnl --------------
|
||||
dnl use this macro for appending text without introducing an extra blank at
|
||||
@ -231,7 +250,7 @@ ifelse([$3],,[ :]dnl
|
||||
])dnl
|
||||
])])dnl
|
||||
dnl ---------------------------------------------------------------------------
|
||||
dnl CF_BUILD_CC version: 9 updated: 2021/01/02 09:31:20
|
||||
dnl CF_BUILD_CC version: 11 updated: 2022/12/04 15:40:08
|
||||
dnl -----------
|
||||
dnl If we're cross-compiling, allow the user to override the tools and their
|
||||
dnl options. The configure script is oriented toward identifying the host
|
||||
@ -297,7 +316,32 @@ if test "$cross_compiling" = yes ; then
|
||||
|
||||
: ${BUILD_CC:='${CC}'}
|
||||
|
||||
if { test "$BUILD_CC" = "$CC" || test "$BUILD_CC" = '${CC}'; } ; then
|
||||
AC_MSG_CHECKING(if the build-compiler "$BUILD_CC" works)
|
||||
|
||||
cf_save_crossed=$cross_compiling
|
||||
cf_save_ac_link=$ac_link
|
||||
cross_compiling=no
|
||||
cf_build_cppflags=$BUILD_CPPFLAGS
|
||||
test "$cf_build_cppflags" = "#" && cf_build_cppflags=
|
||||
ac_link='$BUILD_CC -o "conftest$ac_exeext" $BUILD_CFLAGS $cf_build_cppflags $BUILD_LDFLAGS "conftest.$ac_ext" $BUILD_LIBS >&AS_MESSAGE_LOG_FD'
|
||||
|
||||
AC_TRY_RUN([#include <stdio.h>
|
||||
int main(int argc, char *argv[])
|
||||
{
|
||||
${cf_cv_main_return:-return}(argc < 0 || argv == 0 || argv[0] == 0);
|
||||
}
|
||||
],
|
||||
cf_ok_build_cc=yes,
|
||||
cf_ok_build_cc=no,
|
||||
cf_ok_build_cc=unknown)
|
||||
|
||||
cross_compiling=$cf_save_crossed
|
||||
ac_link=$cf_save_ac_link
|
||||
|
||||
AC_MSG_RESULT($cf_ok_build_cc)
|
||||
|
||||
if test "$cf_ok_build_cc" != yes
|
||||
then
|
||||
AC_MSG_ERROR([Cross-build requires two compilers.
|
||||
Use --with-build-cc to specify the native compiler.])
|
||||
fi
|
||||
@ -490,10 +534,10 @@ fi
|
||||
CF_CHECK_EXTERN_DATA($1,ifelse([$2],,int,[$2]))
|
||||
])dnl
|
||||
dnl ---------------------------------------------------------------------------
|
||||
dnl CF_CHECK_EXTERN_DATA version: 4 updated: 2015/04/18 08:56:57
|
||||
dnl CF_CHECK_EXTERN_DATA version: 5 updated: 2021/09/04 06:35:04
|
||||
dnl --------------------
|
||||
dnl Check for existence of external data in the current set of libraries. If
|
||||
dnl we can modify it, it's real enough.
|
||||
dnl we can modify it, it is real enough.
|
||||
dnl $1 = the name to check
|
||||
dnl $2 = its type
|
||||
AC_DEFUN([CF_CHECK_EXTERN_DATA],
|
||||
@ -643,9 +687,9 @@ esac
|
||||
])
|
||||
])dnl
|
||||
dnl ---------------------------------------------------------------------------
|
||||
dnl CF_DISABLE_ECHO version: 13 updated: 2015/04/18 08:56:57
|
||||
dnl CF_DISABLE_ECHO version: 14 updated: 2021/09/04 06:35:04
|
||||
dnl ---------------
|
||||
dnl You can always use "make -n" to see the actual options, but it's hard to
|
||||
dnl You can always use "make -n" to see the actual options, but it is hard to
|
||||
dnl pick out/analyze warning messages when the compile-line is long.
|
||||
dnl
|
||||
dnl Sets:
|
||||
@ -750,7 +794,7 @@ ifelse($2,yes,[CF_GCC_ATTRIBUTES])
|
||||
fi
|
||||
])dnl
|
||||
dnl ---------------------------------------------------------------------------
|
||||
dnl CF_FIX_WARNINGS version: 3 updated: 2020/12/31 18:40:20
|
||||
dnl CF_FIX_WARNINGS version: 4 updated: 2021/12/16 18:22:31
|
||||
dnl ---------------
|
||||
dnl Warning flags do not belong in CFLAGS, CPPFLAGS, etc. Any of gcc's
|
||||
dnl "-Werror" flags can interfere with configure-checks. Those go into
|
||||
@ -762,11 +806,13 @@ if test "$GCC" = yes || test "$GXX" = yes
|
||||
then
|
||||
case [$]$1 in
|
||||
(*-Werror=*)
|
||||
CF_VERBOSE(repairing $1: [$]$1)
|
||||
cf_temp_flags=
|
||||
for cf_temp_scan in [$]$1
|
||||
do
|
||||
case "x$cf_temp_scan" in
|
||||
(x-Werror=format*)
|
||||
CF_APPEND_TEXT(cf_temp_flags,$cf_temp_scan)
|
||||
;;
|
||||
(x-Werror=*)
|
||||
CF_APPEND_TEXT(EXTRA_CFLAGS,$cf_temp_scan)
|
||||
;;
|
||||
@ -775,9 +821,13 @@ then
|
||||
;;
|
||||
esac
|
||||
done
|
||||
$1="$cf_temp_flags"
|
||||
CF_VERBOSE(... fixed [$]$1)
|
||||
CF_VERBOSE(... extra $EXTRA_CFLAGS)
|
||||
if test "x[$]$1" != "x$cf_temp_flags"
|
||||
then
|
||||
CF_VERBOSE(repairing $1: [$]$1)
|
||||
$1="$cf_temp_flags"
|
||||
CF_VERBOSE(... fixed [$]$1)
|
||||
CF_VERBOSE(... extra $EXTRA_CFLAGS)
|
||||
fi
|
||||
;;
|
||||
esac
|
||||
fi
|
||||
@ -814,6 +864,7 @@ then
|
||||
AC_CHECKING([for $CC __attribute__ directives])
|
||||
cat > "conftest.$ac_ext" <<EOF
|
||||
#line __oline__ "${as_me:-configure}"
|
||||
#include <stdio.h>
|
||||
#include "confdefs.h"
|
||||
#include "conftest.h"
|
||||
#include "conftest.i"
|
||||
@ -1251,10 +1302,10 @@ AC_MSG_RESULT($cf_cv_locale)
|
||||
test "$cf_cv_locale" = yes && { ifelse($1,,AC_DEFINE(LOCALE,1,[Define to 1 if we have locale support]),[$1]) }
|
||||
])dnl
|
||||
dnl ---------------------------------------------------------------------------
|
||||
dnl CF_MAKEFLAGS version: 20 updated: 2021/01/03 19:29:49
|
||||
dnl CF_MAKEFLAGS version: 21 updated: 2021/09/04 06:47:34
|
||||
dnl ------------
|
||||
dnl Some 'make' programs support ${MAKEFLAGS}, some ${MFLAGS}, to pass 'make'
|
||||
dnl options to lower-levels. It's very useful for "make -n" -- if we have it.
|
||||
dnl options to lower-levels. It is very useful for "make -n" -- if we have it.
|
||||
dnl (GNU 'make' does both, something POSIX 'make', which happens to make the
|
||||
dnl ${MAKEFLAGS} variable incompatible because it adds the assignments :-)
|
||||
AC_DEFUN([CF_MAKEFLAGS],
|
||||
@ -2020,7 +2071,7 @@ AC_SUBST(GROFF_NOTE)
|
||||
AC_SUBST(NROFF_NOTE)
|
||||
])dnl
|
||||
dnl ---------------------------------------------------------------------------
|
||||
dnl CF_PROG_LINT version: 4 updated: 2019/11/20 18:55:37
|
||||
dnl CF_PROG_LINT version: 5 updated: 2022/08/20 15:44:13
|
||||
dnl ------------
|
||||
AC_DEFUN([CF_PROG_LINT],
|
||||
[
|
||||
@ -2031,6 +2082,7 @@ case "x$LINT" in
|
||||
;;
|
||||
esac
|
||||
AC_SUBST(LINT_OPTS)
|
||||
AC_SUBST(LINT_LIBS)
|
||||
])dnl
|
||||
dnl ---------------------------------------------------------------------------
|
||||
dnl CF_REGEX version: 18 updated: 2021/01/01 16:53:59
|
||||
@ -2129,6 +2181,24 @@ case "$cf_cv_regex_hdrs" in
|
||||
esac
|
||||
])dnl
|
||||
dnl ---------------------------------------------------------------------------
|
||||
dnl CF_REMOVE_CFLAGS version: 3 updated: 2021/09/05 17:25:40
|
||||
dnl ----------------
|
||||
dnl Remove a given option from CFLAGS/CPPFLAGS
|
||||
dnl $1 = option to remove
|
||||
dnl $2 = variable to update
|
||||
dnl $3 = nonempty to allow verbose message
|
||||
define([CF_REMOVE_CFLAGS],
|
||||
[
|
||||
cf_tmp_cflag=`echo "x$1" | sed -e 's/^.//' -e 's/=.*//'`
|
||||
while true
|
||||
do
|
||||
cf_old_cflag=`echo "x[$]$2" | sed -e 's/^.//' -e 's/[[ ]][[ ]]*-/ -/g' -e "s%$cf_tmp_cflag\\(=[[^ ]][[^ ]]*\\)\?%%" -e 's/^[[ ]]*//' -e 's%[[ ]][[ ]]*-D% -D%g' -e 's%[[ ]][[ ]]*-I% -I%g'`
|
||||
test "[$]$2" != "$cf_old_cflag" || break
|
||||
ifelse([$3],,,[CF_VERBOSE(removing old option $1 from $2)])
|
||||
$2="$cf_old_cflag"
|
||||
done
|
||||
])dnl
|
||||
dnl ---------------------------------------------------------------------------
|
||||
dnl CF_REMOVE_DEFINE version: 3 updated: 2010/01/09 11:05:50
|
||||
dnl ----------------
|
||||
dnl Remove all -U and -D options that refer to the given symbol from a list
|
||||
@ -2215,7 +2285,7 @@ then
|
||||
fi
|
||||
])dnl
|
||||
dnl ---------------------------------------------------------------------------
|
||||
dnl CF_SRAND version: 16 updated: 2021/06/08 18:08:14
|
||||
dnl CF_SRAND version: 17 updated: 2022/12/02 19:55:38
|
||||
dnl --------
|
||||
dnl Check for functions similar to srand() and rand(). lrand48() and random()
|
||||
dnl return a 31-bit value, while rand() returns a value less than RAND_MAX
|
||||
@ -2235,9 +2305,7 @@ do
|
||||
CF_SRAND_PARSE($cf_func,cf_srand_func,cf_rand_func)
|
||||
|
||||
AC_TRY_LINK([
|
||||
#ifdef HAVE_STDLIB_H
|
||||
#include <stdlib.h>
|
||||
#endif
|
||||
$ac_includes_default
|
||||
#ifdef HAVE_LIMITS_H
|
||||
#include <limits.h>
|
||||
#endif
|
||||
@ -2333,34 +2401,20 @@ define([CF_SRAND_PARSE],[
|
||||
esac
|
||||
])dnl
|
||||
dnl ---------------------------------------------------------------------------
|
||||
dnl CF_TRY_XOPEN_SOURCE version: 2 updated: 2018/06/20 20:23:13
|
||||
dnl CF_TRY_XOPEN_SOURCE version: 4 updated: 2022/09/10 15:16:16
|
||||
dnl -------------------
|
||||
dnl If _XOPEN_SOURCE is not defined in the compile environment, check if we
|
||||
dnl can define it successfully.
|
||||
AC_DEFUN([CF_TRY_XOPEN_SOURCE],[
|
||||
AC_CACHE_CHECK(if we should define _XOPEN_SOURCE,cf_cv_xopen_source,[
|
||||
AC_TRY_COMPILE([
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
#include <sys/types.h>
|
||||
],[
|
||||
#ifndef _XOPEN_SOURCE
|
||||
make an error
|
||||
#endif],
|
||||
AC_TRY_COMPILE(CF__XOPEN_SOURCE_HEAD,CF__XOPEN_SOURCE_BODY,
|
||||
[cf_cv_xopen_source=no],
|
||||
[cf_save="$CPPFLAGS"
|
||||
CF_APPEND_TEXT(CPPFLAGS,-D_XOPEN_SOURCE=$cf_XOPEN_SOURCE)
|
||||
AC_TRY_COMPILE([
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
#include <sys/types.h>
|
||||
],[
|
||||
#ifdef _XOPEN_SOURCE
|
||||
make an error
|
||||
#endif],
|
||||
[cf_cv_xopen_source=no],
|
||||
[cf_cv_xopen_source=$cf_XOPEN_SOURCE])
|
||||
CPPFLAGS="$cf_save"
|
||||
AC_TRY_COMPILE(CF__XOPEN_SOURCE_HEAD,CF__XOPEN_SOURCE_BODY,
|
||||
[cf_cv_xopen_source=no],
|
||||
[cf_cv_xopen_source=$cf_XOPEN_SOURCE])
|
||||
CPPFLAGS="$cf_save"
|
||||
])
|
||||
])
|
||||
|
||||
@ -2368,7 +2422,7 @@ if test "$cf_cv_xopen_source" != no ; then
|
||||
CF_REMOVE_DEFINE(CFLAGS,$CFLAGS,_XOPEN_SOURCE)
|
||||
CF_REMOVE_DEFINE(CPPFLAGS,$CPPFLAGS,_XOPEN_SOURCE)
|
||||
cf_temp_xopen_source="-D_XOPEN_SOURCE=$cf_cv_xopen_source"
|
||||
CF_ADD_CFLAGS($cf_temp_xopen_source)
|
||||
CF_APPEND_CFLAGS($cf_temp_xopen_source)
|
||||
fi
|
||||
])
|
||||
dnl ---------------------------------------------------------------------------
|
||||
@ -2602,7 +2656,7 @@ CF_NO_LEAKS_OPTION(valgrind,
|
||||
[USE_VALGRIND])
|
||||
])dnl
|
||||
dnl ---------------------------------------------------------------------------
|
||||
dnl CF_XOPEN_SOURCE version: 58 updated: 2021/05/01 17:49:36
|
||||
dnl CF_XOPEN_SOURCE version: 63 updated: 2022/12/29 10:10:26
|
||||
dnl ---------------
|
||||
dnl Try to get _XOPEN_SOURCE defined properly that we can use POSIX functions,
|
||||
dnl or adapt to the vendor's definitions to get equivalent functionality,
|
||||
@ -2653,7 +2707,7 @@ case "$host_os" in
|
||||
cf_xopen_source="-D_SGI_SOURCE"
|
||||
cf_XOPEN_SOURCE=
|
||||
;;
|
||||
(linux*|uclinux*|gnu*|mint*|k*bsd*-gnu|cygwin)
|
||||
(linux*gnu|linux*gnuabi64|linux*gnuabin32|linux*gnueabi|linux*gnueabihf|linux*gnux32|uclinux*|gnu*|mint*|k*bsd*-gnu|cygwin)
|
||||
CF_GNU_SOURCE($cf_XOPEN_SOURCE)
|
||||
;;
|
||||
(minix*)
|
||||
@ -2702,12 +2756,20 @@ case "$host_os" in
|
||||
;;
|
||||
(*)
|
||||
CF_TRY_XOPEN_SOURCE
|
||||
cf_save_xopen_cppflags="$CPPFLAGS"
|
||||
CF_POSIX_C_SOURCE($cf_POSIX_C_SOURCE)
|
||||
# Some of these niche implementations use copy/paste, double-check...
|
||||
if test "$cf_cv_xopen_source" != no ; then
|
||||
CF_VERBOSE(checking if _POSIX_C_SOURCE inteferes)
|
||||
AC_TRY_COMPILE(CF__XOPEN_SOURCE_HEAD,CF__XOPEN_SOURCE_BODY,,[
|
||||
AC_MSG_WARN(_POSIX_C_SOURCE definition is not usable)
|
||||
CPPFLAGS="$cf_save_xopen_cppflags"])
|
||||
fi
|
||||
;;
|
||||
esac
|
||||
|
||||
if test -n "$cf_xopen_source" ; then
|
||||
CF_ADD_CFLAGS($cf_xopen_source,true)
|
||||
CF_APPEND_CFLAGS($cf_xopen_source,true)
|
||||
fi
|
||||
|
||||
dnl In anything but the default case, we may have system-specific setting
|
||||
@ -2740,3 +2802,23 @@ make an error
|
||||
fi
|
||||
fi # cf_cv_posix_visible
|
||||
])
|
||||
dnl ---------------------------------------------------------------------------
|
||||
dnl CF__XOPEN_SOURCE_BODY version: 1 updated: 2022/09/10 15:17:35
|
||||
dnl ---------------------
|
||||
dnl body of test when test-compiling for _XOPEN_SOURCE check
|
||||
define([CF__XOPEN_SOURCE_BODY],
|
||||
[
|
||||
#ifndef _XOPEN_SOURCE
|
||||
make an error
|
||||
#endif
|
||||
])
|
||||
dnl ---------------------------------------------------------------------------
|
||||
dnl CF__XOPEN_SOURCE_HEAD version: 1 updated: 2022/09/10 15:17:03
|
||||
dnl ---------------------
|
||||
dnl headers to include when test-compiling for _XOPEN_SOURCE check
|
||||
define([CF__XOPEN_SOURCE_HEAD],
|
||||
[
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
#include <sys/types.h>
|
||||
])
|
||||
|
||||
50
config.guess
vendored
50
config.guess
vendored
@ -1,14 +1,14 @@
|
||||
#! /bin/sh
|
||||
# Attempt to guess a canonical system name.
|
||||
# Copyright 1992-2021 Free Software Foundation, Inc.
|
||||
# Copyright 1992-2022 Free Software Foundation, Inc.
|
||||
|
||||
# shellcheck disable=SC2006,SC2268 # see below for rationale
|
||||
|
||||
timestamp='2021-06-03'
|
||||
timestamp='2022-08-01'
|
||||
|
||||
# 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
|
||||
@ -60,7 +60,7 @@ version="\
|
||||
GNU config.guess ($timestamp)
|
||||
|
||||
Originally written by Per Bothner.
|
||||
Copyright 1992-2021 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."
|
||||
@ -437,7 +437,7 @@ case $UNAME_MACHINE:$UNAME_SYSTEM:$UNAME_RELEASE:$UNAME_VERSION in
|
||||
# This test works for both compilers.
|
||||
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
|
||||
@ -929,6 +929,9 @@ EOF
|
||||
i*:PW*:*)
|
||||
GUESS=$UNAME_MACHINE-pc-pw32
|
||||
;;
|
||||
*:SerenityOS:*:*)
|
||||
GUESS=$UNAME_MACHINE-pc-serenity
|
||||
;;
|
||||
*:Interix*:*)
|
||||
case $UNAME_MACHINE in
|
||||
x86)
|
||||
@ -1033,7 +1036,7 @@ EOF
|
||||
k1om:Linux:*:*)
|
||||
GUESS=$UNAME_MACHINE-unknown-linux-$LIBC
|
||||
;;
|
||||
loongarch32:Linux:*:* | loongarch64:Linux:*:* | loongarchx32:Linux:*:*)
|
||||
loongarch32:Linux:*:* | loongarch64:Linux:*:*)
|
||||
GUESS=$UNAME_MACHINE-unknown-linux-$LIBC
|
||||
;;
|
||||
m32r*:Linux:*:*)
|
||||
@ -1148,16 +1151,27 @@ EOF
|
||||
;;
|
||||
x86_64:Linux:*:*)
|
||||
set_cc_for_build
|
||||
CPU=$UNAME_MACHINE
|
||||
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
|
||||
ABI=64
|
||||
sed 's/^ //' << EOF > "$dummy.c"
|
||||
#ifdef __i386__
|
||||
ABI=x86
|
||||
#else
|
||||
#ifdef __ILP32__
|
||||
ABI=x32
|
||||
#endif
|
||||
#endif
|
||||
EOF
|
||||
cc_set_abi=`$CC_FOR_BUILD -E "$dummy.c" 2>/dev/null | grep '^ABI' | sed 's, ,,g'`
|
||||
eval "$cc_set_abi"
|
||||
case $ABI in
|
||||
x86) CPU=i686 ;;
|
||||
x32) LIBCABI=${LIBC}x32 ;;
|
||||
esac
|
||||
fi
|
||||
GUESS=$UNAME_MACHINE-pc-linux-$LIBCABI
|
||||
GUESS=$CPU-pc-linux-$LIBCABI
|
||||
;;
|
||||
xtensa*:Linux:*:*)
|
||||
GUESS=$UNAME_MACHINE-unknown-linux-$LIBC
|
||||
@ -1364,8 +1378,11 @@ EOF
|
||||
BePC:Haiku:*:*) # Haiku running on Intel PC compatible.
|
||||
GUESS=i586-pc-haiku
|
||||
;;
|
||||
x86_64:Haiku:*:*)
|
||||
GUESS=x86_64-unknown-haiku
|
||||
ppc:Haiku:*:*) # Haiku running on Apple PowerPC
|
||||
GUESS=powerpc-apple-haiku
|
||||
;;
|
||||
*:Haiku:*:*) # Haiku modern gcc (not bound by BeOS compat)
|
||||
GUESS=$UNAME_MACHINE-unknown-haiku
|
||||
;;
|
||||
SX-4:SUPER-UX:*:*)
|
||||
GUESS=sx4-nec-superux$UNAME_RELEASE
|
||||
@ -1522,6 +1539,9 @@ EOF
|
||||
i*86:rdos:*:*)
|
||||
GUESS=$UNAME_MACHINE-pc-rdos
|
||||
;;
|
||||
i*86:Fiwix:*:*)
|
||||
GUESS=$UNAME_MACHINE-pc-fiwix
|
||||
;;
|
||||
*:AROS:*:*)
|
||||
GUESS=$UNAME_MACHINE-unknown-aros
|
||||
;;
|
||||
|
||||
22
config.sub
vendored
22
config.sub
vendored
@ -1,14 +1,14 @@
|
||||
#! /bin/sh
|
||||
# Configuration validation subroutine script.
|
||||
# Copyright 1992-2021 Free Software Foundation, Inc.
|
||||
# Copyright 1992-2022 Free Software Foundation, Inc.
|
||||
|
||||
# shellcheck disable=SC2006,SC2268 # see below for rationale
|
||||
|
||||
timestamp='2021-08-14'
|
||||
timestamp='2022-08-01'
|
||||
|
||||
# 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
|
||||
@ -76,7 +76,7 @@ Report bugs and patches to <config-patches@gnu.org>."
|
||||
version="\
|
||||
GNU config.sub ($timestamp)
|
||||
|
||||
Copyright 1992-2021 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."
|
||||
@ -1020,6 +1020,11 @@ case $cpu-$vendor in
|
||||
;;
|
||||
|
||||
# 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}
|
||||
;;
|
||||
dpx20-unknown | dpx20-bull)
|
||||
cpu=rs6000
|
||||
vendor=bull
|
||||
@ -1121,7 +1126,7 @@ case $cpu-$vendor in
|
||||
xscale-* | xscalee[bl]-*)
|
||||
cpu=`echo "$cpu" | sed 's/^xscale/arm/'`
|
||||
;;
|
||||
arm64-*)
|
||||
arm64-* | aarch64le-*)
|
||||
cpu=aarch64
|
||||
;;
|
||||
|
||||
@ -1202,7 +1207,7 @@ case $cpu-$vendor in
|
||||
| k1om \
|
||||
| le32 | le64 \
|
||||
| lm32 \
|
||||
| loongarch32 | loongarch64 | loongarchx32 \
|
||||
| loongarch32 | loongarch64 \
|
||||
| m32c | m32r | m32rle \
|
||||
| m5200 | m68000 | m680[012346]0 | m68360 | m683?2 | m68k \
|
||||
| m6811 | m68hc11 | m6812 | m68hc12 | m68hcs12x \
|
||||
@ -1304,7 +1309,7 @@ esac
|
||||
if test x$basic_os != x
|
||||
then
|
||||
|
||||
# First recognize some ad-hoc caes, or perhaps split kernel-os, or else just
|
||||
# First recognize some ad-hoc cases, or perhaps split kernel-os, or else just
|
||||
# set os.
|
||||
case $basic_os in
|
||||
gnu/linux*)
|
||||
@ -1748,7 +1753,8 @@ case $os in
|
||||
| skyos* | haiku* | rdos* | toppers* | drops* | es* \
|
||||
| onefs* | tirtos* | phoenix* | fuchsia* | redox* | bme* \
|
||||
| midnightbsd* | amdhsa* | unleashed* | emscripten* | wasi* \
|
||||
| nsk* | powerunix* | genode* | zvmoe* | qnx* | emx* | zephyr*)
|
||||
| nsk* | powerunix* | genode* | zvmoe* | qnx* | emx* | zephyr* \
|
||||
| fiwix* )
|
||||
;;
|
||||
# This one is extra strict with allowed versions
|
||||
sco3.2v2 | sco3.2v[4-9]* | sco5v6*)
|
||||
|
||||
723
install-sh
723
install-sh
@ -1,7 +1,8 @@
|
||||
#! /bin/sh
|
||||
#
|
||||
#!/bin/sh
|
||||
# install - install a program, script, or datafile
|
||||
#
|
||||
|
||||
scriptversion=2020-11-14.01; # UTC
|
||||
|
||||
# This originates from X11R5 (mit/util/scripts/install.sh), which was
|
||||
# later released in X11R6 (xc/config/util/install.sh) with the
|
||||
# following copyright and license.
|
||||
@ -34,261 +35,507 @@
|
||||
# FSF changes to this file are in the public domain.
|
||||
#
|
||||
# Calling this script install-sh is preferred over install.sh, to prevent
|
||||
# `make' implicit rules from creating a file called install from it
|
||||
# 'make' implicit rules from creating a file called install from it
|
||||
# when there is no Makefile.
|
||||
#
|
||||
# This script is compatible with the BSD install script, but was written
|
||||
# from scratch. It can only install one file at a time, a restriction
|
||||
# shared with many OS's install programs.
|
||||
# from scratch.
|
||||
|
||||
tab=' '
|
||||
nl='
|
||||
'
|
||||
IFS=" $tab$nl"
|
||||
|
||||
# set DOITPROG to echo to test this script
|
||||
# Set DOITPROG to "echo" to test this script.
|
||||
|
||||
# Don't use :- since 4.3BSD and earlier shells don't like it.
|
||||
doit="${DOITPROG-}"
|
||||
doit=${DOITPROG-}
|
||||
doit_exec=${doit:-exec}
|
||||
|
||||
# Put in absolute file names if you don't have them in your path;
|
||||
# or use environment vars.
|
||||
|
||||
# put in absolute paths if you don't have them in your path; or use env. vars.
|
||||
chgrpprog=${CHGRPPROG-chgrp}
|
||||
chmodprog=${CHMODPROG-chmod}
|
||||
chownprog=${CHOWNPROG-chown}
|
||||
cmpprog=${CMPPROG-cmp}
|
||||
cpprog=${CPPROG-cp}
|
||||
mkdirprog=${MKDIRPROG-mkdir}
|
||||
mvprog=${MVPROG-mv}
|
||||
rmprog=${RMPROG-rm}
|
||||
stripprog=${STRIPPROG-strip}
|
||||
|
||||
mvprog="${MVPROG-mv}"
|
||||
cpprog="${CPPROG-cp}"
|
||||
chmodprog="${CHMODPROG-chmod}"
|
||||
chownprog="${CHOWNPROG-chown}"
|
||||
chgrpprog="${CHGRPPROG-chgrp}"
|
||||
stripprog="${STRIPPROG-strip}"
|
||||
rmprog="${RMPROG-rm}"
|
||||
mkdirprog="${MKDIRPROG-mkdir}"
|
||||
posix_mkdir=
|
||||
|
||||
transformbasename=""
|
||||
transform_arg=""
|
||||
instcmd="$mvprog"
|
||||
chmodcmd="$chmodprog 0755"
|
||||
chowncmd=""
|
||||
chgrpcmd=""
|
||||
stripcmd=""
|
||||
# Desired mode of installed file.
|
||||
mode=0755
|
||||
|
||||
# Create dirs (including intermediate dirs) using mode 755.
|
||||
# This is like GNU 'install' as of coreutils 8.32 (2020).
|
||||
mkdir_umask=22
|
||||
|
||||
backupsuffix=
|
||||
chgrpcmd=
|
||||
chmodcmd=$chmodprog
|
||||
chowncmd=
|
||||
mvcmd=$mvprog
|
||||
rmcmd="$rmprog -f"
|
||||
mvcmd="$mvprog"
|
||||
src=""
|
||||
dst=""
|
||||
dir_arg=""
|
||||
stripcmd=
|
||||
|
||||
while [ x"$1" != x ]; do
|
||||
case $1 in
|
||||
-c) instcmd=$cpprog
|
||||
shift
|
||||
continue;;
|
||||
src=
|
||||
dst=
|
||||
dir_arg=
|
||||
dst_arg=
|
||||
|
||||
-d) dir_arg=true
|
||||
shift
|
||||
continue;;
|
||||
copy_on_change=false
|
||||
is_target_a_directory=possibly
|
||||
|
||||
-m) chmodcmd="$chmodprog $2"
|
||||
shift
|
||||
shift
|
||||
continue;;
|
||||
usage="\
|
||||
Usage: $0 [OPTION]... [-T] SRCFILE DSTFILE
|
||||
or: $0 [OPTION]... SRCFILES... DIRECTORY
|
||||
or: $0 [OPTION]... -t DIRECTORY SRCFILES...
|
||||
or: $0 [OPTION]... -d DIRECTORIES...
|
||||
|
||||
-o) chowncmd="$chownprog $2"
|
||||
shift
|
||||
shift
|
||||
continue;;
|
||||
In the 1st form, copy SRCFILE to DSTFILE.
|
||||
In the 2nd and 3rd, copy all SRCFILES to DIRECTORY.
|
||||
In the 4th, create DIRECTORIES.
|
||||
|
||||
-g) chgrpcmd="$chgrpprog $2"
|
||||
shift
|
||||
shift
|
||||
continue;;
|
||||
Options:
|
||||
--help display this help and exit.
|
||||
--version display version info and exit.
|
||||
|
||||
-s) stripcmd=$stripprog
|
||||
shift
|
||||
continue;;
|
||||
-c (ignored)
|
||||
-C install only if different (preserve data modification time)
|
||||
-d create directories instead of installing files.
|
||||
-g GROUP $chgrpprog installed files to GROUP.
|
||||
-m MODE $chmodprog installed files to MODE.
|
||||
-o USER $chownprog installed files to USER.
|
||||
-p pass -p to $cpprog.
|
||||
-s $stripprog installed files.
|
||||
-S SUFFIX attempt to back up existing files, with suffix SUFFIX.
|
||||
-t DIRECTORY install into DIRECTORY.
|
||||
-T report an error if DSTFILE is a directory.
|
||||
|
||||
-t=*) transformarg=`echo $1 | sed 's/-t=//'`
|
||||
shift
|
||||
continue;;
|
||||
Environment variables override the default commands:
|
||||
CHGRPPROG CHMODPROG CHOWNPROG CMPPROG CPPROG MKDIRPROG MVPROG
|
||||
RMPROG STRIPPROG
|
||||
|
||||
-b=*) transformbasename=`echo $1 | sed 's/-b=//'`
|
||||
shift
|
||||
continue;;
|
||||
By default, rm is invoked with -f; when overridden with RMPROG,
|
||||
it's up to you to specify -f if you want it.
|
||||
|
||||
*) if [ x"$src" = x ]
|
||||
then
|
||||
src=$1
|
||||
else
|
||||
# this colon is to work around a 386BSD /bin/sh bug
|
||||
:
|
||||
dst=$1
|
||||
fi
|
||||
shift
|
||||
continue;;
|
||||
If -S is not specified, no backups are attempted.
|
||||
|
||||
Email bug reports to bug-automake@gnu.org.
|
||||
Automake home page: https://www.gnu.org/software/automake/
|
||||
"
|
||||
|
||||
while test $# -ne 0; do
|
||||
case $1 in
|
||||
-c) ;;
|
||||
|
||||
-C) copy_on_change=true;;
|
||||
|
||||
-d) dir_arg=true;;
|
||||
|
||||
-g) chgrpcmd="$chgrpprog $2"
|
||||
shift;;
|
||||
|
||||
--help) echo "$usage"; exit $?;;
|
||||
|
||||
-m) mode=$2
|
||||
case $mode in
|
||||
*' '* | *"$tab"* | *"$nl"* | *'*'* | *'?'* | *'['*)
|
||||
echo "$0: invalid mode: $mode" >&2
|
||||
exit 1;;
|
||||
esac
|
||||
shift;;
|
||||
|
||||
-o) chowncmd="$chownprog $2"
|
||||
shift;;
|
||||
|
||||
-p) cpprog="$cpprog -p";;
|
||||
|
||||
-s) stripcmd=$stripprog;;
|
||||
|
||||
-S) backupsuffix="$2"
|
||||
shift;;
|
||||
|
||||
-t)
|
||||
is_target_a_directory=always
|
||||
dst_arg=$2
|
||||
# Protect names problematic for 'test' and other utilities.
|
||||
case $dst_arg in
|
||||
-* | [=\(\)!]) dst_arg=./$dst_arg;;
|
||||
esac
|
||||
shift;;
|
||||
|
||||
-T) is_target_a_directory=never;;
|
||||
|
||||
--version) echo "$0 $scriptversion"; exit $?;;
|
||||
|
||||
--) shift
|
||||
break;;
|
||||
|
||||
-*) echo "$0: invalid option: $1" >&2
|
||||
exit 1;;
|
||||
|
||||
*) break;;
|
||||
esac
|
||||
shift
|
||||
done
|
||||
|
||||
# We allow the use of options -d and -T together, by making -d
|
||||
# take the precedence; this is for compatibility with GNU install.
|
||||
|
||||
if test -n "$dir_arg"; then
|
||||
if test -n "$dst_arg"; then
|
||||
echo "$0: target directory not allowed when installing a directory." >&2
|
||||
exit 1
|
||||
fi
|
||||
fi
|
||||
|
||||
if test $# -ne 0 && test -z "$dir_arg$dst_arg"; then
|
||||
# When -d is used, all remaining arguments are directories to create.
|
||||
# When -t is used, the destination is already specified.
|
||||
# Otherwise, the last argument is the destination. Remove it from $@.
|
||||
for arg
|
||||
do
|
||||
if test -n "$dst_arg"; then
|
||||
# $@ is not empty: it contains at least $arg.
|
||||
set fnord "$@" "$dst_arg"
|
||||
shift # fnord
|
||||
fi
|
||||
shift # arg
|
||||
dst_arg=$arg
|
||||
# Protect names problematic for 'test' and other utilities.
|
||||
case $dst_arg in
|
||||
-* | [=\(\)!]) dst_arg=./$dst_arg;;
|
||||
esac
|
||||
done
|
||||
fi
|
||||
|
||||
if test $# -eq 0; then
|
||||
if test -z "$dir_arg"; then
|
||||
echo "$0: no input file specified." >&2
|
||||
exit 1
|
||||
fi
|
||||
# It's OK to call 'install-sh -d' without argument.
|
||||
# This can happen when creating conditional directories.
|
||||
exit 0
|
||||
fi
|
||||
|
||||
if test -z "$dir_arg"; then
|
||||
if test $# -gt 1 || test "$is_target_a_directory" = always; then
|
||||
if test ! -d "$dst_arg"; then
|
||||
echo "$0: $dst_arg: Is not a directory." >&2
|
||||
exit 1
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
|
||||
if test -z "$dir_arg"; then
|
||||
do_exit='(exit $ret); exit $ret'
|
||||
trap "ret=129; $do_exit" 1
|
||||
trap "ret=130; $do_exit" 2
|
||||
trap "ret=141; $do_exit" 13
|
||||
trap "ret=143; $do_exit" 15
|
||||
|
||||
# Set umask so as not to create temps with too-generous modes.
|
||||
# However, 'strip' requires both read and write access to temps.
|
||||
case $mode in
|
||||
# Optimize common cases.
|
||||
*644) cp_umask=133;;
|
||||
*755) cp_umask=22;;
|
||||
|
||||
*[0-7])
|
||||
if test -z "$stripcmd"; then
|
||||
u_plus_rw=
|
||||
else
|
||||
u_plus_rw='% 200'
|
||||
fi
|
||||
cp_umask=`expr '(' 777 - $mode % 1000 ')' $u_plus_rw`;;
|
||||
*)
|
||||
if test -z "$stripcmd"; then
|
||||
u_plus_rw=
|
||||
else
|
||||
u_plus_rw=,u+rw
|
||||
fi
|
||||
cp_umask=$mode$u_plus_rw;;
|
||||
esac
|
||||
fi
|
||||
|
||||
for src
|
||||
do
|
||||
# Protect names problematic for 'test' and other utilities.
|
||||
case $src in
|
||||
-* | [=\(\)!]) src=./$src;;
|
||||
esac
|
||||
|
||||
if test -n "$dir_arg"; then
|
||||
dst=$src
|
||||
dstdir=$dst
|
||||
test -d "$dstdir"
|
||||
dstdir_status=$?
|
||||
# Don't chown directories that already exist.
|
||||
if test $dstdir_status = 0; then
|
||||
chowncmd=""
|
||||
fi
|
||||
else
|
||||
|
||||
# Waiting for this to be detected by the "$cpprog $src $dsttmp" command
|
||||
# might cause directories to be created, which would be especially bad
|
||||
# if $src (and thus $dsttmp) contains '*'.
|
||||
if test ! -f "$src" && test ! -d "$src"; then
|
||||
echo "$0: $src does not exist." >&2
|
||||
exit 1
|
||||
fi
|
||||
|
||||
if test -z "$dst_arg"; then
|
||||
echo "$0: no destination specified." >&2
|
||||
exit 1
|
||||
fi
|
||||
dst=$dst_arg
|
||||
|
||||
# If destination is a directory, append the input filename.
|
||||
if test -d "$dst"; then
|
||||
if test "$is_target_a_directory" = never; then
|
||||
echo "$0: $dst_arg: Is a directory" >&2
|
||||
exit 1
|
||||
fi
|
||||
dstdir=$dst
|
||||
dstbase=`basename "$src"`
|
||||
case $dst in
|
||||
*/) dst=$dst$dstbase;;
|
||||
*) dst=$dst/$dstbase;;
|
||||
esac
|
||||
dstdir_status=0
|
||||
else
|
||||
dstdir=`dirname "$dst"`
|
||||
test -d "$dstdir"
|
||||
dstdir_status=$?
|
||||
fi
|
||||
fi
|
||||
|
||||
case $dstdir in
|
||||
*/) dstdirslash=$dstdir;;
|
||||
*) dstdirslash=$dstdir/;;
|
||||
esac
|
||||
|
||||
obsolete_mkdir_used=false
|
||||
|
||||
if test $dstdir_status != 0; then
|
||||
case $posix_mkdir in
|
||||
'')
|
||||
# With -d, create the new directory with the user-specified mode.
|
||||
# Otherwise, rely on $mkdir_umask.
|
||||
if test -n "$dir_arg"; then
|
||||
mkdir_mode=-m$mode
|
||||
else
|
||||
mkdir_mode=
|
||||
fi
|
||||
|
||||
posix_mkdir=false
|
||||
# The $RANDOM variable is not portable (e.g., dash). Use it
|
||||
# here however when possible just to lower collision chance.
|
||||
tmpdir=${TMPDIR-/tmp}/ins$RANDOM-$$
|
||||
|
||||
trap '
|
||||
ret=$?
|
||||
rmdir "$tmpdir/a/b" "$tmpdir/a" "$tmpdir" 2>/dev/null
|
||||
exit $ret
|
||||
' 0
|
||||
|
||||
# Because "mkdir -p" follows existing symlinks and we likely work
|
||||
# directly in world-writeable /tmp, make sure that the '$tmpdir'
|
||||
# directory is successfully created first before we actually test
|
||||
# 'mkdir -p'.
|
||||
if (umask $mkdir_umask &&
|
||||
$mkdirprog $mkdir_mode "$tmpdir" &&
|
||||
exec $mkdirprog $mkdir_mode -p -- "$tmpdir/a/b") >/dev/null 2>&1
|
||||
then
|
||||
if test -z "$dir_arg" || {
|
||||
# Check for POSIX incompatibilities with -m.
|
||||
# HP-UX 11.23 and IRIX 6.5 mkdir -m -p sets group- or
|
||||
# other-writable bit of parent directory when it shouldn't.
|
||||
# FreeBSD 6.1 mkdir -m -p sets mode of existing directory.
|
||||
test_tmpdir="$tmpdir/a"
|
||||
ls_ld_tmpdir=`ls -ld "$test_tmpdir"`
|
||||
case $ls_ld_tmpdir in
|
||||
d????-?r-*) different_mode=700;;
|
||||
d????-?--*) different_mode=755;;
|
||||
*) false;;
|
||||
esac &&
|
||||
$mkdirprog -m$different_mode -p -- "$test_tmpdir" && {
|
||||
ls_ld_tmpdir_1=`ls -ld "$test_tmpdir"`
|
||||
test "$ls_ld_tmpdir" = "$ls_ld_tmpdir_1"
|
||||
}
|
||||
}
|
||||
then posix_mkdir=:
|
||||
fi
|
||||
rmdir "$tmpdir/a/b" "$tmpdir/a" "$tmpdir"
|
||||
else
|
||||
# Remove any dirs left behind by ancient mkdir implementations.
|
||||
rmdir ./$mkdir_mode ./-p ./-- "$tmpdir" 2>/dev/null
|
||||
fi
|
||||
trap '' 0;;
|
||||
esac
|
||||
|
||||
if
|
||||
$posix_mkdir && (
|
||||
umask $mkdir_umask &&
|
||||
$doit_exec $mkdirprog $mkdir_mode -p -- "$dstdir"
|
||||
)
|
||||
then :
|
||||
else
|
||||
|
||||
# mkdir does not conform to POSIX,
|
||||
# or it failed possibly due to a race condition. Create the
|
||||
# directory the slow way, step by step, checking for races as we go.
|
||||
|
||||
case $dstdir in
|
||||
/*) prefix='/';;
|
||||
[-=\(\)!]*) prefix='./';;
|
||||
*) prefix='';;
|
||||
esac
|
||||
|
||||
oIFS=$IFS
|
||||
IFS=/
|
||||
set -f
|
||||
set fnord $dstdir
|
||||
shift
|
||||
set +f
|
||||
IFS=$oIFS
|
||||
|
||||
prefixes=
|
||||
|
||||
for d
|
||||
do
|
||||
test X"$d" = X && continue
|
||||
|
||||
prefix=$prefix$d
|
||||
if test -d "$prefix"; then
|
||||
prefixes=
|
||||
else
|
||||
if $posix_mkdir; then
|
||||
(umask $mkdir_umask &&
|
||||
$doit_exec $mkdirprog $mkdir_mode -p -- "$dstdir") && break
|
||||
# Don't fail if two instances are running concurrently.
|
||||
test -d "$prefix" || exit 1
|
||||
else
|
||||
case $prefix in
|
||||
*\'*) qprefix=`echo "$prefix" | sed "s/'/'\\\\\\\\''/g"`;;
|
||||
*) qprefix=$prefix;;
|
||||
esac
|
||||
prefixes="$prefixes '$qprefix'"
|
||||
fi
|
||||
fi
|
||||
prefix=$prefix/
|
||||
done
|
||||
|
||||
if test -n "$prefixes"; then
|
||||
# Don't fail if two instances are running concurrently.
|
||||
(umask $mkdir_umask &&
|
||||
eval "\$doit_exec \$mkdirprog $prefixes") ||
|
||||
test -d "$dstdir" || exit 1
|
||||
obsolete_mkdir_used=true
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
|
||||
if test -n "$dir_arg"; then
|
||||
{ test -z "$chowncmd" || $doit $chowncmd "$dst"; } &&
|
||||
{ test -z "$chgrpcmd" || $doit $chgrpcmd "$dst"; } &&
|
||||
{ test "$obsolete_mkdir_used$chowncmd$chgrpcmd" = false ||
|
||||
test -z "$chmodcmd" || $doit $chmodcmd $mode "$dst"; } || exit 1
|
||||
else
|
||||
|
||||
# Make a couple of temp file names in the proper directory.
|
||||
dsttmp=${dstdirslash}_inst.$$_
|
||||
rmtmp=${dstdirslash}_rm.$$_
|
||||
|
||||
# Trap to clean up those temp files at exit.
|
||||
trap 'ret=$?; rm -f "$dsttmp" "$rmtmp" && exit $ret' 0
|
||||
|
||||
# Copy the file name to the temp name.
|
||||
(umask $cp_umask &&
|
||||
{ test -z "$stripcmd" || {
|
||||
# Create $dsttmp read-write so that cp doesn't create it read-only,
|
||||
# which would cause strip to fail.
|
||||
if test -z "$doit"; then
|
||||
: >"$dsttmp" # No need to fork-exec 'touch'.
|
||||
else
|
||||
$doit touch "$dsttmp"
|
||||
fi
|
||||
}
|
||||
} &&
|
||||
$doit_exec $cpprog "$src" "$dsttmp") &&
|
||||
|
||||
# and set any options; do chmod last to preserve setuid bits.
|
||||
#
|
||||
# If any of these fail, we abort the whole thing. If we want to
|
||||
# ignore errors from any of these, just make sure not to ignore
|
||||
# errors from the above "$doit $cpprog $src $dsttmp" command.
|
||||
#
|
||||
{ test -z "$chowncmd" || $doit $chowncmd "$dsttmp"; } &&
|
||||
{ test -z "$chgrpcmd" || $doit $chgrpcmd "$dsttmp"; } &&
|
||||
{ test -z "$stripcmd" || $doit $stripcmd "$dsttmp"; } &&
|
||||
{ test -z "$chmodcmd" || $doit $chmodcmd $mode "$dsttmp"; } &&
|
||||
|
||||
# If -C, don't bother to copy if it wouldn't change the file.
|
||||
if $copy_on_change &&
|
||||
old=`LC_ALL=C ls -dlL "$dst" 2>/dev/null` &&
|
||||
new=`LC_ALL=C ls -dlL "$dsttmp" 2>/dev/null` &&
|
||||
set -f &&
|
||||
set X $old && old=:$2:$4:$5:$6 &&
|
||||
set X $new && new=:$2:$4:$5:$6 &&
|
||||
set +f &&
|
||||
test "$old" = "$new" &&
|
||||
$cmpprog "$dst" "$dsttmp" >/dev/null 2>&1
|
||||
then
|
||||
rm -f "$dsttmp"
|
||||
else
|
||||
# If $backupsuffix is set, and the file being installed
|
||||
# already exists, attempt a backup. Don't worry if it fails,
|
||||
# e.g., if mv doesn't support -f.
|
||||
if test -n "$backupsuffix" && test -f "$dst"; then
|
||||
$doit $mvcmd -f "$dst" "$dst$backupsuffix" 2>/dev/null
|
||||
fi
|
||||
|
||||
# Rename the file to the real destination.
|
||||
$doit $mvcmd -f "$dsttmp" "$dst" 2>/dev/null ||
|
||||
|
||||
# The rename failed, perhaps because mv can't rename something else
|
||||
# to itself, or perhaps because mv is so ancient that it does not
|
||||
# support -f.
|
||||
{
|
||||
# Now remove or move aside any old file at destination location.
|
||||
# We try this two ways since rm can't unlink itself on some
|
||||
# systems and the destination file might be busy for other
|
||||
# reasons. In this case, the final cleanup might fail but the new
|
||||
# file should still install successfully.
|
||||
{
|
||||
test ! -f "$dst" ||
|
||||
$doit $rmcmd "$dst" 2>/dev/null ||
|
||||
{ $doit $mvcmd -f "$dst" "$rmtmp" 2>/dev/null &&
|
||||
{ $doit $rmcmd "$rmtmp" 2>/dev/null; :; }
|
||||
} ||
|
||||
{ echo "$0: cannot unlink or rename $dst" >&2
|
||||
(exit 1); exit 1
|
||||
}
|
||||
} &&
|
||||
|
||||
# Now rename the file to the real destination.
|
||||
$doit $mvcmd "$dsttmp" "$dst"
|
||||
}
|
||||
fi || exit 1
|
||||
|
||||
trap '' 0
|
||||
fi
|
||||
done
|
||||
|
||||
if [ x"$src" = x ]
|
||||
then
|
||||
echo "$0: no input file specified" >&2
|
||||
exit 1
|
||||
else
|
||||
:
|
||||
fi
|
||||
|
||||
if [ x"$dir_arg" != x ]; then
|
||||
dst=$src
|
||||
src=""
|
||||
|
||||
if [ -d "$dst" ]; then
|
||||
instcmd=:
|
||||
chmodcmd=""
|
||||
else
|
||||
instcmd=$mkdirprog
|
||||
fi
|
||||
else
|
||||
|
||||
# Waiting for this to be detected by the "$instcmd $src $dsttmp" command
|
||||
# might cause directories to be created, which would be especially bad
|
||||
# if $src (and thus $dsttmp) contains '*'.
|
||||
|
||||
if [ -f "$src" ] || [ -d "$src" ]
|
||||
then
|
||||
:
|
||||
else
|
||||
echo "$0: $src does not exist" >&2
|
||||
exit 1
|
||||
fi
|
||||
|
||||
if [ x"$dst" = x ]
|
||||
then
|
||||
echo "$0: no destination specified" >&2
|
||||
exit 1
|
||||
else
|
||||
:
|
||||
fi
|
||||
|
||||
# If destination is a directory, append the input filename; if your system
|
||||
# does not like double slashes in filenames, you may need to add some logic
|
||||
|
||||
if [ -d "$dst" ]
|
||||
then
|
||||
dst=$dst/`basename "$src"`
|
||||
else
|
||||
:
|
||||
fi
|
||||
fi
|
||||
|
||||
## this sed command emulates the dirname command
|
||||
dstdir=`echo "$dst" | sed -e 's,[^/]*$,,;s,/$,,;s,^$,.,'`
|
||||
|
||||
# Make sure that the destination directory exists.
|
||||
# this part is taken from Noah Friedman's mkinstalldirs script
|
||||
|
||||
# Skip lots of stat calls in the usual case.
|
||||
if [ ! -d "$dstdir" ]; then
|
||||
defaultIFS='
|
||||
'
|
||||
IFS="${IFS-$defaultIFS}"
|
||||
|
||||
oIFS=$IFS
|
||||
# Some sh's can't handle IFS=/ for some reason.
|
||||
IFS='%'
|
||||
set - `echo "$dstdir" | sed -e 's@/@%@g' -e 's@^%@/@'`
|
||||
IFS=$oIFS
|
||||
|
||||
pathcomp=''
|
||||
|
||||
while [ $# -ne 0 ] ; do
|
||||
pathcomp=$pathcomp$1
|
||||
shift
|
||||
|
||||
if [ ! -d "$pathcomp" ] ;
|
||||
then
|
||||
$mkdirprog "$pathcomp"
|
||||
else
|
||||
:
|
||||
fi
|
||||
|
||||
pathcomp=$pathcomp/
|
||||
done
|
||||
fi
|
||||
|
||||
if [ x"$dir_arg" != x ]
|
||||
then
|
||||
$doit $instcmd "$dst" &&
|
||||
|
||||
if [ x"$chowncmd" != x ]; then $doit $chowncmd "$dst"; else : ; fi &&
|
||||
if [ x"$chgrpcmd" != x ]; then $doit $chgrpcmd "$dst"; else : ; fi &&
|
||||
if [ x"$stripcmd" != x ]; then $doit $stripcmd "$dst"; else : ; fi &&
|
||||
if [ x"$chmodcmd" != x ]; then $doit $chmodcmd "$dst"; else : ; fi
|
||||
else
|
||||
|
||||
# If we're going to rename the final executable, determine the name now.
|
||||
|
||||
if [ x"$transformarg" = x ]
|
||||
then
|
||||
dstfile=`basename "$dst"`
|
||||
else
|
||||
dstfile=`basename "$dst" $transformbasename |
|
||||
sed $transformarg`$transformbasename
|
||||
fi
|
||||
|
||||
# don't allow the sed command to completely eliminate the filename
|
||||
|
||||
if [ x"$dstfile" = x ]
|
||||
then
|
||||
dstfile=`basename "$dst"`
|
||||
else
|
||||
:
|
||||
fi
|
||||
|
||||
# Make a couple of temp file names in the proper directory.
|
||||
|
||||
dsttmp=$dstdir/#inst.$$#
|
||||
rmtmp=$dstdir/#rm.$$#
|
||||
|
||||
# Trap to clean up temp files at exit.
|
||||
|
||||
trap 'status=$?; rm -f "$dsttmp" "$rmtmp" && exit $status' 0
|
||||
trap '(exit $?); exit' 1 2 13 15
|
||||
|
||||
# Move or copy the file name to the temp name
|
||||
|
||||
$doit $instcmd "$src" "$dsttmp" &&
|
||||
|
||||
# and set any options; do chmod last to preserve setuid bits
|
||||
|
||||
# If any of these fail, we abort the whole thing. If we want to
|
||||
# ignore errors from any of these, just make sure not to ignore
|
||||
# errors from the above "$doit $instcmd $src $dsttmp" command.
|
||||
|
||||
if [ x"$chowncmd" != x ]; then $doit $chowncmd "$dsttmp"; else :;fi &&
|
||||
if [ x"$chgrpcmd" != x ]; then $doit $chgrpcmd "$dsttmp"; else :;fi &&
|
||||
if [ x"$stripcmd" != x ]; then $doit $stripcmd "$dsttmp"; else :;fi &&
|
||||
if [ x"$chmodcmd" != x ]; then $doit $chmodcmd "$dsttmp"; else :;fi &&
|
||||
|
||||
# Now remove or move aside any old file at destination location. We try this
|
||||
# two ways since rm can't unlink itself on some systems and the destination
|
||||
# file might be busy for other reasons. In this case, the final cleanup
|
||||
# might fail but the new file should still install successfully.
|
||||
|
||||
{
|
||||
if [ -f "$dstdir/$dstfile" ]
|
||||
then
|
||||
$doit $rmcmd -f "$dstdir/$dstfile" 2>/dev/null ||
|
||||
$doit $mvcmd -f "$dstdir/$dstfile" "$rmtmp" 2>/dev/null ||
|
||||
{
|
||||
echo "$0: cannot unlink or rename $dstdir/$dstfile" >&2
|
||||
(exit 1); exit
|
||||
}
|
||||
else
|
||||
:
|
||||
fi
|
||||
} &&
|
||||
|
||||
# Now rename the file to the real destination.
|
||||
|
||||
$doit $mvcmd "$dsttmp" "$dstdir/$dstfile"
|
||||
|
||||
fi &&
|
||||
|
||||
# The final little trick to "correctly" pass the exit status to the exit trap.
|
||||
|
||||
{
|
||||
(exit 0); exit
|
||||
}
|
||||
# Local variables:
|
||||
# eval: (add-hook 'before-save-hook 'time-stamp)
|
||||
# time-stamp-start: "scriptversion="
|
||||
# time-stamp-format: "%:y-%02m-%02d.%02H"
|
||||
# time-stamp-time-zone: "UTC0"
|
||||
# time-stamp-end: "; # UTC"
|
||||
# End:
|
||||
|
||||
@ -1,3 +1,9 @@
|
||||
mawk-cur (1.3.4-20221229) unstable; urgency=low
|
||||
|
||||
* maintenance updates
|
||||
|
||||
-- Thomas E. Dickey <dickey@invisible-island.net> Thu, 29 Dec 2022 09:34:47 -0500
|
||||
|
||||
mawk-cur (1.3.4-20210824) unstable; urgency=low
|
||||
|
||||
* maintenance updates
|
||||
|
||||
@ -1 +1 @@
|
||||
11
|
||||
12
|
||||
|
||||
@ -2,9 +2,9 @@ Source: mawk-cur
|
||||
Maintainer: Thomas E. Dickey <dickey@invisible-island.net>
|
||||
Section: interpreters
|
||||
Priority: optional
|
||||
Standards-Version: 3.8.4
|
||||
Build-Depends: debhelper (>= 5)
|
||||
Homepage: http://invisible-island.net/mawk/
|
||||
Standards-Version: 4.6.0.1
|
||||
Build-Depends: debhelper (>= 12)
|
||||
Homepage: https://invisible-island.net/mawk/
|
||||
|
||||
Package: mawk-cur
|
||||
Architecture: any
|
||||
|
||||
@ -5,7 +5,7 @@ Current maintainer: Thomas Dickey <dickey@invisible-island.net>
|
||||
-------------------------------------------------------------------------------
|
||||
|
||||
mawk 1.3.4 and updates,
|
||||
Copyright: 2008-2020,2021 by Thomas E. Dickey
|
||||
Copyright: 2008-2021,2022 by Thomas E. Dickey
|
||||
mawk 1.3.4 includes substantial work by others:
|
||||
Copyright 2009-2010 by Jonathan Nieder
|
||||
Copyright 2005 by Aleksey Cheusov
|
||||
@ -18,7 +18,7 @@ the GNU General Public License, version 2, 1991.
|
||||
|
||||
Files: aclocal.m4
|
||||
Licence: other-BSD
|
||||
Copyright: 2008-2019,2021 by Thomas E. Dickey
|
||||
Copyright: 2008-2021,2022 by Thomas E. Dickey
|
||||
Permission is hereby granted, free of charge, to any person obtaining a
|
||||
copy of this software and associated documentation files (the
|
||||
"Software"), to deal in the Software without restriction, including
|
||||
@ -79,7 +79,7 @@ Licence: other-BSD
|
||||
shared with many OS's install programs.
|
||||
|
||||
Files: debian/*
|
||||
Copyright: 2012-2019 Thomas E. Dickey
|
||||
Copyright: 2012-2021,2022 Thomas E. Dickey
|
||||
Licence: other-BSD
|
||||
Permission to use, copy, modify, and distribute this software and its
|
||||
documentation for any purpose and without fee is hereby granted,
|
||||
|
||||
@ -1,15 +1,16 @@
|
||||
Summary: mawk - pattern scanning and text processing language
|
||||
%define AppProgram mawk
|
||||
%define AppVersion 1.3.4
|
||||
%define AppRelease 20210824
|
||||
# $MawkId: mawk.spec,v 1.92 2021/08/24 08:26:27 tom Exp $
|
||||
%global AppProgram mawk
|
||||
%global AppVersion 1.3.4
|
||||
%global AppRelease 20221229
|
||||
%global MySite https://invisible-island.net
|
||||
# $MawkId: mawk.spec,v 1.94 2022/12/29 16:15:10 tom Exp $
|
||||
Name: %{AppProgram}
|
||||
Version: %{AppVersion}
|
||||
Release: %{AppRelease}
|
||||
License: GPLv2
|
||||
Group: Applications/Development
|
||||
URL: ftp://ftp.invisible-island.net/%{AppProgram}
|
||||
Source0: %{AppProgram}-%{AppVersion}-%{AppRelease}.tgz
|
||||
URL: %{MySite}/%{AppProgram}
|
||||
Source0: %{MySite}/archives/%{AppProgram}-%{AppVersion}-%{AppRelease}.tgz
|
||||
Packager: Thomas Dickey <dickey@invisible-island.net>
|
||||
|
||||
%description
|
||||
@ -52,6 +53,9 @@ strip $RPM_BUILD_ROOT%{_bindir}/%{AppProgram}
|
||||
%changelog
|
||||
# each patch should add its ChangeLog entries here
|
||||
|
||||
* Thu Dec 29 2022 Thomas Dickey
|
||||
- update URLs
|
||||
|
||||
* Mon Jan 06 2020 Thomas Dickey
|
||||
- use hardening flags
|
||||
|
||||
|
||||
@ -1,6 +1,6 @@
|
||||
/*
|
||||
patchlev.h
|
||||
copyright 2009-2020,2021, Thomas E. Dickey
|
||||
copyright 2009-2021,2022, Thomas E. Dickey
|
||||
copyright 1991-1996,2014, Michael D. Brennan
|
||||
|
||||
This is a source file for mawk, an implementation of
|
||||
@ -11,9 +11,9 @@ the GNU General Public License, version 2, 1991.
|
||||
*/
|
||||
|
||||
/*
|
||||
* $MawkId: patchlev.h,v 1.119 2021/08/24 08:26:27 tom Exp $
|
||||
* $MawkId: patchlev.h,v 1.121 2022/12/29 14:36:57 tom Exp $
|
||||
*/
|
||||
#define PATCH_BASE 1
|
||||
#define PATCH_LEVEL 3
|
||||
#define PATCH_STRING ".4"
|
||||
#define DATE_STRING "20210824"
|
||||
#define DATE_STRING "20221229"
|
||||
|
||||
@ -1,7 +1,7 @@
|
||||
#!/bin/sh
|
||||
# $MawkId: fpe_test,v 1.7 2010/12/10 17:00:00 tom Exp $
|
||||
# $MawkId: fpe_test,v 1.8 2022/12/29 15:20:09 tom Exp $
|
||||
###############################################################################
|
||||
# copyright 2009,2010, Thomas E. Dickey
|
||||
# copyright 2009-2010,2022, Thomas E. Dickey
|
||||
# copyright 2010, Guido Berhoerster
|
||||
# copyright 1994,1995, Michael D. Brennan
|
||||
#
|
||||
@ -25,6 +25,9 @@
|
||||
|
||||
PROG="${MAWK:-../mawk}"
|
||||
|
||||
: "${EGREP:=grep -E}"
|
||||
: "${FGREP:=grep -F}"
|
||||
|
||||
PATH=/bin:/usr/bin
|
||||
export PATH
|
||||
|
||||
@ -46,22 +49,22 @@ test3='BEGIN{ print sqrt(-8) }'
|
||||
|
||||
|
||||
echo "testing division by zero"
|
||||
echo $PROG "$test1"
|
||||
echo "$PROG" "$test1"
|
||||
$PROG "$test1"
|
||||
ret1=$?
|
||||
echo
|
||||
|
||||
echo "testing overflow"
|
||||
echo $PROG "$test2"
|
||||
echo "$PROG" "$test2"
|
||||
$PROG "$test2"
|
||||
ret2=$?
|
||||
echo
|
||||
|
||||
echo "testing domain error"
|
||||
echo $PROG "$test3"
|
||||
$PROG "$test3" > $STDOUT
|
||||
echo "$PROG" "$test3"
|
||||
$PROG "$test3" > "$STDOUT"
|
||||
ret3=$?
|
||||
cat $STDOUT
|
||||
cat "$STDOUT"
|
||||
echo
|
||||
|
||||
|
||||
@ -85,7 +88,7 @@ echo return3 = $ret3
|
||||
[ $ret2 -gt 128 ] && { echo test2 failed ; exception=1 ; }
|
||||
[ $ret3 -gt 128 ] && { echo test3 failed ; exception=1 ; }
|
||||
|
||||
[ "$exception" = 1 ] && { rm -f *core* $STDOUT ; exit 1 ; }
|
||||
[ "$exception" = 1 ] && { rm -f ./*core* "$STDOUT" ; exit 1 ; }
|
||||
|
||||
|
||||
same=0
|
||||
@ -94,37 +97,37 @@ same=0
|
||||
|
||||
|
||||
if [ $same = 1 ]
|
||||
then
|
||||
if [ $ret1 = 0 ]
|
||||
then
|
||||
echo "results consistent: ignoring floating exceptions"
|
||||
# some versions of hpux print NAN as ?
|
||||
if egrep '[nN][aA][nN]|\?' $STDOUT > /dev/null
|
||||
then
|
||||
if [ $ret1 = 0 ]
|
||||
then
|
||||
:
|
||||
# MSYS / MinGW uses a different string...
|
||||
elif fgrep '#IND' $STDOUT > /dev/null
|
||||
then
|
||||
echo "found MinGW hack for NaN..."
|
||||
else
|
||||
echo "but the library is not IEEE754 compatible"
|
||||
echo "test 3 failed"
|
||||
exit 1
|
||||
echo "results consistent: ignoring floating exceptions"
|
||||
# some versions of hpux print NAN as ?
|
||||
if $EGREP '[nN][aA][nN]|\?' "$STDOUT" > /dev/null
|
||||
then
|
||||
:
|
||||
# MSYS / MinGW uses a different string...
|
||||
elif $FGREP '#IND' "$STDOUT" > /dev/null
|
||||
then
|
||||
echo "found MinGW hack for NaN..."
|
||||
else
|
||||
echo "but the library is not IEEE754 compatible"
|
||||
echo "test 3 failed"
|
||||
exit 1
|
||||
fi
|
||||
else echo "results consistent: trapping floating exceptions"
|
||||
fi
|
||||
else echo "results consistent: trapping floating exceptions"
|
||||
fi
|
||||
|
||||
trap 0
|
||||
rm -f $STDOUT
|
||||
exit 0
|
||||
trap 0
|
||||
rm -f "$STDOUT"
|
||||
exit 0
|
||||
|
||||
else
|
||||
cat <<-EOF
|
||||
else
|
||||
cat <<-EOF
|
||||
results are not consistent
|
||||
return values should all be 0 if ignoring FPEs (e.g. with IEEE754)
|
||||
or all 2 if trapping FPEs
|
||||
EOF
|
||||
|
||||
exit 1
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# vile: ts=4 sw=4
|
||||
|
||||
@ -1,7 +1,7 @@
|
||||
#!/bin/sh
|
||||
# $MawkId: mawktest,v 1.44 2020/09/25 23:53:32 tom Exp $
|
||||
# $MawkId: mawktest,v 1.45 2022/12/29 15:22:14 tom Exp $
|
||||
###############################################################################
|
||||
# copyright 2008-2014,2020, Thomas E. Dickey
|
||||
# copyright 2008-2020,2022, Thomas E. Dickey
|
||||
# copyright 2010, Guido Berhoerster
|
||||
# copyright 2010, Jonathan Nieder
|
||||
# copyright 2005, Aleksey Cheusov
|
||||
@ -22,6 +22,8 @@
|
||||
# It needs to be run from mawk/test
|
||||
# and mawk needs to be in mawk/test or in PATH
|
||||
|
||||
: "${FGREP:=grep -F}"
|
||||
|
||||
# POSIX shells have functions...
|
||||
Fail() {
|
||||
echo "?? fail $*"
|
||||
@ -96,7 +98,7 @@ MAWKS=no
|
||||
if $PROG -W version </dev/null
|
||||
then
|
||||
( $PROG -W version </dev/null 2>&1 |head -n 1 |grep mawk >/dev/null ) && MAWKS=yes
|
||||
NULLS=`$PROG -W version 2>&1 </dev/null |fgrep regex |fgrep 'internal' 2>/dev/null`
|
||||
NULLS=`$PROG -W version 2>&1 </dev/null |$FGREP regex |$FGREP 'internal' 2>/dev/null`
|
||||
else
|
||||
NULLS=
|
||||
fi
|
||||
@ -135,7 +137,7 @@ LC_ALL=C $PROG -F '\]' -f wc.awk $dat | cmp -s - "$STDOUT" || Fail "case 7b"
|
||||
|
||||
# check that the regexp [\ does not make mawk segfault
|
||||
if test "$MAWKS" = "yes" ; then
|
||||
LC_ALL=C $PROG -F '[\' 2> "$STDERR" || Fail "case 8"
|
||||
LC_ALL=C $PROG -F "[\\" 2> "$STDERR" || Fail "case 8"
|
||||
fi
|
||||
|
||||
LC_ALL=C $PROG -F '(^)?)' -f wc.awk $dat > "$STDOUT"
|
||||
@ -260,3 +262,4 @@ echo "##################################################"
|
||||
trap 0
|
||||
rm -f "$STDOUT"
|
||||
exit $ERRS
|
||||
# vile: ts=4 sw=4
|
||||
|
||||
@ -1,6 +1,6 @@
|
||||
/********************************************
|
||||
version.c
|
||||
copyright 2008-2020,2021 Thomas E. Dickey
|
||||
copyright 2008-2021,2022 Thomas E. Dickey
|
||||
copyright 1991-1996,2014 Michael D. Brennan
|
||||
|
||||
This is a source file for mawk, an implementation of
|
||||
@ -11,7 +11,7 @@ the GNU General Public License, version 2, 1991.
|
||||
********************************************/
|
||||
|
||||
/*
|
||||
* $MawkId: version.c,v 1.33 2021/05/28 23:30:56 tom Exp $
|
||||
* $MawkId: version.c,v 1.34 2022/12/29 14:37:20 tom Exp $
|
||||
*/
|
||||
|
||||
#include "mawk.h"
|
||||
@ -20,7 +20,7 @@ the GNU General Public License, version 2, 1991.
|
||||
|
||||
#define VERSION_STRING \
|
||||
"mawk %d.%d%s %s\n\
|
||||
Copyright 2008-2020,2021, Thomas E. Dickey\n\
|
||||
Copyright 2008-2021,2022, Thomas E. Dickey\n\
|
||||
Copyright 1991-1996,2014, Michael D. Brennan\n\n"
|
||||
|
||||
#define FMT_N "%-20s%.0f\n"
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user