Update xsm to version 1.0.5

Bug fixes and gcc warnings removals.
pull/1/head
matthieu 2022-06-26 10:47:16 +00:00
parent 9640aa6200
commit 649fd50c90
15 changed files with 388 additions and 196 deletions

View File

@ -1,12 +1,21 @@
This is a stub file. This package has not yet had its complete licensing
information compiled. Please see the individual source files for details on
your rights to use and modify this software.
Copyright 1993, 1994, 1998 The Open Group
Please submit updated COPYING files to the Xorg bugzilla:
Permission to use, copy, modify, distribute, and sell this software and its
documentation for any purpose is hereby granted without fee, provided that
the above copyright notice appear in all copies and that both that
copyright notice and this permission notice appear in supporting
documentation.
https://bugs.freedesktop.org/enter_bug.cgi?product=xorg
The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Software.
All licensing questions regarding this software should be directed at the
Xorg mailing list:
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
http://lists.freedesktop.org/mailman/listinfo/xorg
Except as contained in this notice, the name of The Open Group shall not be
used in advertising or otherwise to promote the sale, use or other dealings
in this Software without prior written authorization from The Open Group.

View File

@ -1,3 +1,145 @@
commit 6733ee9baffaef106792c0457c53b5c9452d0021
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date: Sun Apr 3 17:03:13 2022 -0700
xsm 1.0.5
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
commit e552f2d4980d41d7a219dbe0c5dbaf33c4d752f3
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date: Sat Feb 19 10:40:19 2022 -0800
Fill in COPYING file with copyright notices from source code
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
commit c4d20042385ac95023ff5c03f2849655bdfb931b
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date: Sun Jan 9 12:31:56 2022 -0800
Fix spelling/wording issues
Found by using:
codespell --builtin clear,rare,usage,informal,code,names
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
commit 655c8ff920ac3fe8601e449b2ef8247063069bc8
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date: Tue Dec 7 14:21:26 2021 -0800
Build xz tarballs instead of bzip2
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
commit 822be4f28bda6ba1267f4f11d378295e70f4aaba
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date: Tue Dec 7 14:21:21 2021 -0800
gitlab CI: enable Static Application Security Testing (SAST)
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
commit 107fbd198f2d4cec9efb54e89a568a595ac2d1e3
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date: Sun Nov 28 11:02:18 2021 -0800
Add noreturn attributes suggested by gcc
misc.c: In function nomem:
misc.c:106:1: warning: function might be candidate for
attribute noreturn [-Wsuggest-attribute=noreturn]
106 | nomem(void)
| ^~~~~
xsm.c:657:1: warning: function might be candidate for
attribute noreturn [-Wsuggest-attribute=noreturn]
657 | EndSession(int status)
| ^~~~~~~~~~
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
commit 416a3fc806f47b158b489bb44f7709fc44fa4f3e
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date: Sun Nov 28 10:54:06 2021 -0800
WriteSave: allocate enough room for full session_save_file in error
Clears warning from gcc 11.2:
saveutil.c: In function WriteSave:
saveutil.c:315:75: warning: %s directive output may be truncated
writing up to 1023 bytes into a region of size 221 [-Wformat-truncation=]
315 | snprintf (msg, sizeof(msg), "%s: Error creating session save file %s",
| ^~
316 | Argv[0], session_save_file);
| ~~~~~~~~~~~~~~~~~
saveutil.c:315:9: note: snprintf output 36 or more bytes (assuming 1059)
into a destination of size 256
315 | snprintf (msg, sizeof(msg), "%s: Error creating session save file %s",
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
316 | Argv[0], session_save_file);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
commit 6a902614350d46b759fc09a88daf9aff11f79ee8
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date: Sun Nov 28 10:42:03 2021 -0800
Increase size of number buffer to fit all possible values
Clears gcc warning of:
info.c: In function DisplayProps:
info.c:214:44: warning: snprintf output may be truncated before the
last format character [-Wformat-truncation=]
snprintf (number, sizeof(number), "%d", propnum);
^
info.c:214:7: note: snprintf output between 2 and 11 bytes into a
destination of size 10
snprintf (number, sizeof(number), "%d", propnum);
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
commit 4bf092e35a92b4fb613f4fee01d5ab26a612ddb6
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date: Sun Nov 28 10:38:43 2021 -0800
Use _CONST_X_STRING to make libXt declare String as const char *
Clears 5 -Wincompatible-pointer-types warnings
and 18 -Wdiscarded-qualifiers warnings from gcc
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
commit c7a7f81b18f8594aceaa9c32217753ef935dac2d
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date: Sun Nov 28 11:13:24 2021 -0800
gitlab CI: add a basic build test
Based on the config from libX11
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
commit 788c1484c7357ba8a1c69167db2994bb9282d4a6
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date: Wed Nov 21 17:19:25 2018 -0800
Update configure.ac bug URL for gitlab migration
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
commit 536adbdd5b5e44fcfbd5bce287080e678a48b678
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date: Sun Sep 30 17:20:13 2018 -0700
Remove ancient System() replacement for system(3c) on Solaris
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
commit cae8e0a4db186da3556bdab944b61eb540e6685c
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date: Fri Mar 9 20:24:29 2018 -0800
@ -85,7 +227,7 @@ Date: Tue Dec 17 11:08:50 2013 -0500
Signed-off-by: Gaetan Nadon <memsize@videotron.ca>
commit 9f4bee64da58ed95923ceee4abfe56d5125974f6
Author: Stéphane Aulery <lkppo@free.fr>
Author: Stéphane Aulery <lkppo@free.fr>
Date: Thu Jul 4 00:53:43 2013 +0200
Improve help messages & man page
@ -95,7 +237,7 @@ Date: Thu Jul 4 00:53:43 2013 +0200
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
commit 9a7429ed7734531ca313d8c1f724bcb07c33ff54
Author: Stéphane Aulery <lkppo@free.fr>
Author: Stéphane Aulery <lkppo@free.fr>
Date: Sat Jul 6 15:40:56 2013 +0200
Drop CRAY support
@ -692,7 +834,7 @@ Date: Sat Jul 16 21:59:14 2005 +0000
against tempfile race conditions in many places)
commit 2f07c342e877fde5d3f64041ca6ff365a643ddc8
Author: Søren Sandmann Pedersen <sandmann@daimi.au.dk>
Author: Søren Sandmann Pedersen <sandmann@daimi.au.dk>
Date: Fri Jul 1 20:09:07 2005 +0000
xtrap.pc.in: s/Xfixes/XTrap/ xi.pc.in: s/Xt/Xi/ Xv/src/Makefile.am: remove

View File

@ -215,9 +215,9 @@ am__relativize = \
dir1=`echo "$$dir1" | sed -e "$$sed_rest"`; \
done; \
reldir="$$dir2"
DIST_ARCHIVES = $(distdir).tar.gz $(distdir).tar.bz2
DIST_ARCHIVES = $(distdir).tar.gz $(distdir).tar.xz
GZIP_ENV = --best
DIST_TARGETS = dist-bzip2 dist-gzip
DIST_TARGETS = dist-xz dist-gzip
distuninstallcheck_listfiles = find . -type f -print
am__distuninstallcheck_listfiles = $(distuninstallcheck_listfiles) \
| sed 's|^\./|$(prefix)/|' | grep -v '$(infodir)/dir$$'
@ -337,6 +337,7 @@ pdfdir = @pdfdir@
prefix = @prefix@
program_transform_name = @program_transform_name@
psdir = @psdir@
runstatedir = @runstatedir@
sbindir = @sbindir@
sharedstatedir = @sharedstatedir@
srcdir = @srcdir@
@ -784,6 +785,7 @@ distdir: $(DISTFILES)
dist-gzip: distdir
tardir=$(distdir) && $(am__tar) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz
$(am__post_remove_distdir)
dist-bzip2: distdir
tardir=$(distdir) && $(am__tar) | BZIP2=$${BZIP2--9} bzip2 -c >$(distdir).tar.bz2
$(am__post_remove_distdir)
@ -791,7 +793,6 @@ dist-bzip2: distdir
dist-lzip: distdir
tardir=$(distdir) && $(am__tar) | lzip -c $${LZIP_OPT--9} >$(distdir).tar.lz
$(am__post_remove_distdir)
dist-xz: distdir
tardir=$(distdir) && $(am__tar) | XZ_OPT=$${XZ_OPT--e} xz -c >$(distdir).tar.xz
$(am__post_remove_distdir)

222
app/xsm/aclocal.m4 vendored
View File

@ -19,32 +19,63 @@ You have another version of autoconf. It may work, but is not guaranteed to.
If you have problems, you may need to regenerate the build system entirely.
To do so, use the procedure documented by the package, typically 'autoreconf'.])])
# pkg.m4 - Macros to locate and utilise pkg-config. -*- Autoconf -*-
# serial 1 (pkg-config-0.24)
#
# Copyright © 2004 Scott James Remnant <scott@netsplit.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 2 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, write to the Free Software
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
#
# As a special exception to the GNU General Public License, if you
# distribute this file as part of a program that contains a
# configuration script generated by Autoconf, you may include it under
# the same distribution terms that you use for the rest of that program.
# pkg.m4 - Macros to locate and utilise pkg-config. -*- Autoconf -*-
# serial 12 (pkg-config-0.29.2)
# PKG_PROG_PKG_CONFIG([MIN-VERSION])
# ----------------------------------
dnl Copyright © 2004 Scott James Remnant <scott@netsplit.com>.
dnl Copyright © 2012-2015 Dan Nicholson <dbn.lists@gmail.com>
dnl
dnl This program is free software; you can redistribute it and/or modify
dnl it under the terms of the GNU General Public License as published by
dnl the Free Software Foundation; either version 2 of the License, or
dnl (at your option) any later version.
dnl
dnl This program is distributed in the hope that it will be useful, but
dnl WITHOUT ANY WARRANTY; without even the implied warranty of
dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
dnl General Public License for more details.
dnl
dnl You should have received a copy of the GNU General Public License
dnl along with this program; if not, write to the Free Software
dnl Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
dnl 02111-1307, USA.
dnl
dnl As a special exception to the GNU General Public License, if you
dnl distribute this file as part of a program that contains a
dnl configuration script generated by Autoconf, you may include it under
dnl the same distribution terms that you use for the rest of that
dnl program.
dnl PKG_PREREQ(MIN-VERSION)
dnl -----------------------
dnl Since: 0.29
dnl
dnl Verify that the version of the pkg-config macros are at least
dnl MIN-VERSION. Unlike PKG_PROG_PKG_CONFIG, which checks the user's
dnl installed version of pkg-config, this checks the developer's version
dnl of pkg.m4 when generating configure.
dnl
dnl To ensure that this macro is defined, also add:
dnl m4_ifndef([PKG_PREREQ],
dnl [m4_fatal([must install pkg-config 0.29 or later before running autoconf/autogen])])
dnl
dnl See the "Since" comment for each macro you use to see what version
dnl of the macros you require.
m4_defun([PKG_PREREQ],
[m4_define([PKG_MACROS_VERSION], [0.29.2])
m4_if(m4_version_compare(PKG_MACROS_VERSION, [$1]), -1,
[m4_fatal([pkg.m4 version $1 or higher is required but ]PKG_MACROS_VERSION[ found])])
])dnl PKG_PREREQ
dnl PKG_PROG_PKG_CONFIG([MIN-VERSION])
dnl ----------------------------------
dnl Since: 0.16
dnl
dnl Search for the pkg-config tool and set the PKG_CONFIG variable to
dnl first found in the path. Checks that the version of pkg-config found
dnl is at least MIN-VERSION. If MIN-VERSION is not specified, 0.9.0 is
dnl used since that's the first version where most current features of
dnl pkg-config existed.
AC_DEFUN([PKG_PROG_PKG_CONFIG],
[m4_pattern_forbid([^_?PKG_[A-Z_]+$])
m4_pattern_allow([^PKG_CONFIG(_(PATH|LIBDIR|SYSROOT_DIR|ALLOW_SYSTEM_(CFLAGS|LIBS)))?$])
@ -66,18 +97,19 @@ if test -n "$PKG_CONFIG"; then
PKG_CONFIG=""
fi
fi[]dnl
])# PKG_PROG_PKG_CONFIG
])dnl PKG_PROG_PKG_CONFIG
# PKG_CHECK_EXISTS(MODULES, [ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND])
#
# Check to see whether a particular set of modules exists. Similar
# to PKG_CHECK_MODULES(), but does not set variables or print errors.
#
# Please remember that m4 expands AC_REQUIRE([PKG_PROG_PKG_CONFIG])
# only at the first occurence in configure.ac, so if the first place
# it's called might be skipped (such as if it is within an "if", you
# have to call PKG_CHECK_EXISTS manually
# --------------------------------------------------------------
dnl PKG_CHECK_EXISTS(MODULES, [ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND])
dnl -------------------------------------------------------------------
dnl Since: 0.18
dnl
dnl Check to see whether a particular set of modules exists. Similar to
dnl PKG_CHECK_MODULES(), but does not set variables or print errors.
dnl
dnl Please remember that m4 expands AC_REQUIRE([PKG_PROG_PKG_CONFIG])
dnl only at the first occurence in configure.ac, so if the first place
dnl it's called might be skipped (such as if it is within an "if", you
dnl have to call PKG_CHECK_EXISTS manually
AC_DEFUN([PKG_CHECK_EXISTS],
[AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl
if test -n "$PKG_CONFIG" && \
@ -87,8 +119,10 @@ m4_ifvaln([$3], [else
$3])dnl
fi])
# _PKG_CONFIG([VARIABLE], [COMMAND], [MODULES])
# ---------------------------------------------
dnl _PKG_CONFIG([VARIABLE], [COMMAND], [MODULES])
dnl ---------------------------------------------
dnl Internal wrapper calling pkg-config via PKG_CONFIG and setting
dnl pkg_failed based on the result.
m4_define([_PKG_CONFIG],
[if test -n "$$1"; then
pkg_cv_[]$1="$$1"
@ -100,10 +134,11 @@ m4_define([_PKG_CONFIG],
else
pkg_failed=untried
fi[]dnl
])# _PKG_CONFIG
])dnl _PKG_CONFIG
# _PKG_SHORT_ERRORS_SUPPORTED
# -----------------------------
dnl _PKG_SHORT_ERRORS_SUPPORTED
dnl ---------------------------
dnl Internal check to see if pkg-config supports short errors.
AC_DEFUN([_PKG_SHORT_ERRORS_SUPPORTED],
[AC_REQUIRE([PKG_PROG_PKG_CONFIG])
if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
@ -111,26 +146,24 @@ if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
else
_pkg_short_errors_supported=no
fi[]dnl
])# _PKG_SHORT_ERRORS_SUPPORTED
])dnl _PKG_SHORT_ERRORS_SUPPORTED
# PKG_CHECK_MODULES(VARIABLE-PREFIX, MODULES, [ACTION-IF-FOUND],
# [ACTION-IF-NOT-FOUND])
#
#
# Note that if there is a possibility the first call to
# PKG_CHECK_MODULES might not happen, you should be sure to include an
# explicit call to PKG_PROG_PKG_CONFIG in your configure.ac
#
#
# --------------------------------------------------------------
dnl PKG_CHECK_MODULES(VARIABLE-PREFIX, MODULES, [ACTION-IF-FOUND],
dnl [ACTION-IF-NOT-FOUND])
dnl --------------------------------------------------------------
dnl Since: 0.4.0
dnl
dnl Note that if there is a possibility the first call to
dnl PKG_CHECK_MODULES might not happen, you should be sure to include an
dnl explicit call to PKG_PROG_PKG_CONFIG in your configure.ac
AC_DEFUN([PKG_CHECK_MODULES],
[AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl
AC_ARG_VAR([$1][_CFLAGS], [C compiler flags for $1, overriding pkg-config])dnl
AC_ARG_VAR([$1][_LIBS], [linker flags for $1, overriding pkg-config])dnl
pkg_failed=no
AC_MSG_CHECKING([for $1])
AC_MSG_CHECKING([for $2])
_PKG_CONFIG([$1][_CFLAGS], [cflags], [$2])
_PKG_CONFIG([$1][_LIBS], [libs], [$2])
@ -140,11 +173,11 @@ and $1[]_LIBS to avoid the need to call pkg-config.
See the pkg-config man page for more details.])
if test $pkg_failed = yes; then
AC_MSG_RESULT([no])
AC_MSG_RESULT([no])
_PKG_SHORT_ERRORS_SUPPORTED
if test $_pkg_short_errors_supported = yes; then
$1[]_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "$2" 2>&1`
else
else
$1[]_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "$2" 2>&1`
fi
# Put the nasty error message in config.log where it belongs
@ -161,7 +194,7 @@ installed software in a non-standard prefix.
_PKG_TEXT])[]dnl
])
elif test $pkg_failed = untried; then
AC_MSG_RESULT([no])
AC_MSG_RESULT([no])
m4_default([$4], [AC_MSG_FAILURE(
[The pkg-config script could not be found or is too old. Make sure it
is in your PATH or set the PKG_CONFIG environment variable to the full
@ -177,16 +210,40 @@ else
AC_MSG_RESULT([yes])
$3
fi[]dnl
])# PKG_CHECK_MODULES
])dnl PKG_CHECK_MODULES
# PKG_INSTALLDIR(DIRECTORY)
# -------------------------
# Substitutes the variable pkgconfigdir as the location where a module
# should install pkg-config .pc files. By default the directory is
# $libdir/pkgconfig, but the default can be changed by passing
# DIRECTORY. The user can override through the --with-pkgconfigdir
# parameter.
dnl PKG_CHECK_MODULES_STATIC(VARIABLE-PREFIX, MODULES, [ACTION-IF-FOUND],
dnl [ACTION-IF-NOT-FOUND])
dnl ---------------------------------------------------------------------
dnl Since: 0.29
dnl
dnl Checks for existence of MODULES and gathers its build flags with
dnl static libraries enabled. Sets VARIABLE-PREFIX_CFLAGS from --cflags
dnl and VARIABLE-PREFIX_LIBS from --libs.
dnl
dnl Note that if there is a possibility the first call to
dnl PKG_CHECK_MODULES_STATIC might not happen, you should be sure to
dnl include an explicit call to PKG_PROG_PKG_CONFIG in your
dnl configure.ac.
AC_DEFUN([PKG_CHECK_MODULES_STATIC],
[AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl
_save_PKG_CONFIG=$PKG_CONFIG
PKG_CONFIG="$PKG_CONFIG --static"
PKG_CHECK_MODULES($@)
PKG_CONFIG=$_save_PKG_CONFIG[]dnl
])dnl PKG_CHECK_MODULES_STATIC
dnl PKG_INSTALLDIR([DIRECTORY])
dnl -------------------------
dnl Since: 0.27
dnl
dnl Substitutes the variable pkgconfigdir as the location where a module
dnl should install pkg-config .pc files. By default the directory is
dnl $libdir/pkgconfig, but the default can be changed by passing
dnl DIRECTORY. The user can override through the --with-pkgconfigdir
dnl parameter.
AC_DEFUN([PKG_INSTALLDIR],
[m4_pushdef([pkg_default], [m4_default([$1], ['${libdir}/pkgconfig'])])
m4_pushdef([pkg_description],
@ -197,16 +254,18 @@ AC_ARG_WITH([pkgconfigdir],
AC_SUBST([pkgconfigdir], [$with_pkgconfigdir])
m4_popdef([pkg_default])
m4_popdef([pkg_description])
]) dnl PKG_INSTALLDIR
])dnl PKG_INSTALLDIR
# PKG_NOARCH_INSTALLDIR(DIRECTORY)
# -------------------------
# Substitutes the variable noarch_pkgconfigdir as the location where a
# module should install arch-independent pkg-config .pc files. By
# default the directory is $datadir/pkgconfig, but the default can be
# changed by passing DIRECTORY. The user can override through the
# --with-noarch-pkgconfigdir parameter.
dnl PKG_NOARCH_INSTALLDIR([DIRECTORY])
dnl --------------------------------
dnl Since: 0.27
dnl
dnl Substitutes the variable noarch_pkgconfigdir as the location where a
dnl module should install arch-independent pkg-config .pc files. By
dnl default the directory is $datadir/pkgconfig, but the default can be
dnl changed by passing DIRECTORY. The user can override through the
dnl --with-noarch-pkgconfigdir parameter.
AC_DEFUN([PKG_NOARCH_INSTALLDIR],
[m4_pushdef([pkg_default], [m4_default([$1], ['${datadir}/pkgconfig'])])
m4_pushdef([pkg_description],
@ -217,7 +276,24 @@ AC_ARG_WITH([noarch-pkgconfigdir],
AC_SUBST([noarch_pkgconfigdir], [$with_noarch_pkgconfigdir])
m4_popdef([pkg_default])
m4_popdef([pkg_description])
]) dnl PKG_NOARCH_INSTALLDIR
])dnl PKG_NOARCH_INSTALLDIR
dnl PKG_CHECK_VAR(VARIABLE, MODULE, CONFIG-VARIABLE,
dnl [ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND])
dnl -------------------------------------------
dnl Since: 0.28
dnl
dnl Retrieves the value of the pkg-config variable for the given module.
AC_DEFUN([PKG_CHECK_VAR],
[AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl
AC_ARG_VAR([$1], [value of $3 for $2, overriding pkg-config])dnl
_PKG_CONFIG([$1], [variable="][$3]["], [$2])
AS_VAR_COPY([$1], [pkg_cv_][$1])
AS_VAR_IF([$1], [""], [$5], [$4])dnl
])dnl PKG_CHECK_VAR
# Copyright (C) 2002-2012 Free Software Foundation, Inc.
#

View File

@ -461,7 +461,7 @@ ChooseSessionDeleteXtProc(Widget w, XtPointer client_data, XtPointer callData)
{
XawListReturnStruct *current;
int longest;
char *name;
String name;
CheckBreakLockCancel ();
@ -555,7 +555,7 @@ ChooseSessionBreakLockXtProc(Widget w, XtPointer client_data,
XtPointer callData)
{
XawListReturnStruct *current;
char *name;
String name;
CheckDeleteCancel ();

View File

@ -1,9 +1,9 @@
#! /bin/sh
# Wrapper for compilers which do not understand '-c -o'.
scriptversion=2012-10-14.11; # UTC
scriptversion=2018-03-07.03; # UTC
# Copyright (C) 1999-2014 Free Software Foundation, Inc.
# Copyright (C) 1999-2021 Free Software Foundation, Inc.
# Written by Tom Tromey <tromey@cygnus.com>.
#
# This program is free software; you can redistribute it and/or modify
@ -17,7 +17,7 @@ scriptversion=2012-10-14.11; # UTC
# 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 <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
@ -53,7 +53,7 @@ func_file_conv ()
MINGW*)
file_conv=mingw
;;
CYGWIN*)
CYGWIN* | MSYS*)
file_conv=cygwin
;;
*)
@ -67,7 +67,7 @@ func_file_conv ()
mingw/*)
file=`cmd //C echo "$file " | sed -e 's/"\(.*\) " *$/\1/'`
;;
cygwin/*)
cygwin/* | msys/*)
file=`cygpath -m "$file" || echo "$file"`
;;
wine/*)
@ -255,7 +255,8 @@ EOF
echo "compile $scriptversion"
exit $?
;;
cl | *[/\\]cl | cl.exe | *[/\\]cl.exe )
cl | *[/\\]cl | cl.exe | *[/\\]cl.exe | \
icl | *[/\\]icl | icl.exe | *[/\\]icl.exe )
func_cl_wrapper "$@" # Doesn't return...
;;
esac
@ -339,9 +340,9 @@ exit $ret
# Local Variables:
# mode: shell-script
# sh-indentation: 2
# eval: (add-hook 'write-file-hooks 'time-stamp)
# eval: (add-hook 'before-save-hook 'time-stamp)
# time-stamp-start: "scriptversion="
# time-stamp-format: "%:y-%02m-%02d.%02H"
# time-stamp-time-zone: "UTC"
# time-stamp-time-zone: "UTC0"
# time-stamp-end: "; # UTC"
# End:

97
app/xsm/configure vendored
View File

@ -1,8 +1,8 @@
#! /bin/sh
# Guess values for system-dependent variables and create Makefiles.
# Generated by GNU Autoconf 2.69 for xsm 1.0.4.
# Generated by GNU Autoconf 2.69 for xsm 1.0.5.
#
# Report bugs to <https://bugs.freedesktop.org/enter_bug.cgi?product=xorg>.
# Report bugs to <https://gitlab.freedesktop.org/xorg/app/xsm/issues>.
#
#
# Copyright (C) 1992-1996, 1998-2012 Free Software Foundation, Inc.
@ -267,7 +267,7 @@ fi
$as_echo "$0: be upgraded to zsh 4.3.4 or later."
else
$as_echo "$0: Please tell bug-autoconf@gnu.org and
$0: https://bugs.freedesktop.org/enter_bug.cgi?product=xorg
$0: https://gitlab.freedesktop.org/xorg/app/xsm/issues
$0: about your system, including any error possibly output
$0: before this message. Then install a modern shell, or
$0: manually run the script under such a shell if you do
@ -581,9 +581,9 @@ MAKEFLAGS=
# Identity of this package.
PACKAGE_NAME='xsm'
PACKAGE_TARNAME='xsm'
PACKAGE_VERSION='1.0.4'
PACKAGE_STRING='xsm 1.0.4'
PACKAGE_BUGREPORT='https://bugs.freedesktop.org/enter_bug.cgi?product=xorg'
PACKAGE_VERSION='1.0.5'
PACKAGE_STRING='xsm 1.0.5'
PACKAGE_BUGREPORT='https://gitlab.freedesktop.org/xorg/app/xsm/issues'
PACKAGE_URL=''
ac_unique_file="Makefile.am"
@ -731,6 +731,7 @@ infodir
docdir
oldincludedir
includedir
runstatedir
localstatedir
sharedstatedir
sysconfdir
@ -813,6 +814,7 @@ datadir='${datarootdir}'
sysconfdir='${prefix}/etc'
sharedstatedir='${prefix}/com'
localstatedir='${prefix}/var'
runstatedir='${localstatedir}/run'
includedir='${prefix}/include'
oldincludedir='/usr/include'
docdir='${datarootdir}/doc/${PACKAGE_TARNAME}'
@ -1065,6 +1067,15 @@ do
| -silent | --silent | --silen | --sile | --sil)
silent=yes ;;
-runstatedir | --runstatedir | --runstatedi | --runstated \
| --runstate | --runstat | --runsta | --runst | --runs \
| --run | --ru | --r)
ac_prev=runstatedir ;;
-runstatedir=* | --runstatedir=* | --runstatedi=* | --runstated=* \
| --runstate=* | --runstat=* | --runsta=* | --runst=* | --runs=* \
| --run=* | --ru=* | --r=*)
runstatedir=$ac_optarg ;;
-sbindir | --sbindir | --sbindi | --sbind | --sbin | --sbi | --sb)
ac_prev=sbindir ;;
-sbindir=* | --sbindir=* | --sbindi=* | --sbind=* | --sbin=* \
@ -1202,7 +1213,7 @@ fi
for ac_var in exec_prefix prefix bindir sbindir libexecdir datarootdir \
datadir sysconfdir sharedstatedir localstatedir includedir \
oldincludedir docdir infodir htmldir dvidir pdfdir psdir \
libdir localedir mandir
libdir localedir mandir runstatedir
do
eval ac_val=\$$ac_var
# Remove trailing slashes.
@ -1315,7 +1326,7 @@ if test "$ac_init_help" = "long"; then
# 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 xsm 1.0.4 to adapt to many kinds of systems.
\`configure' configures xsm 1.0.5 to adapt to many kinds of systems.
Usage: $0 [OPTION]... [VAR=VALUE]...
@ -1355,6 +1366,7 @@ Fine tuning of the installation directories:
--sysconfdir=DIR read-only single-machine data [PREFIX/etc]
--sharedstatedir=DIR modifiable architecture-independent data [PREFIX/com]
--localstatedir=DIR modifiable single-machine data [PREFIX/var]
--runstatedir=DIR modifiable per-process data [LOCALSTATEDIR/run]
--libdir=DIR object code libraries [EPREFIX/lib]
--includedir=DIR C header files [PREFIX/include]
--oldincludedir=DIR C header files for non-gcc [/usr/include]
@ -1385,7 +1397,7 @@ fi
if test -n "$ac_init_help"; then
case $ac_init_help in
short | recursive ) echo "Configuration of xsm 1.0.4:";;
short | recursive ) echo "Configuration of xsm 1.0.5:";;
esac
cat <<\_ACEOF
@ -1437,7 +1449,7 @@ Some influential environment variables:
Use these variables to override the choices made by `configure' or to help
it to find libraries and programs with nonstandard names/locations.
Report bugs to <https://bugs.freedesktop.org/enter_bug.cgi?product=xorg>.
Report bugs to <https://gitlab.freedesktop.org/xorg/app/xsm/issues>.
_ACEOF
ac_status=$?
fi
@ -1500,7 +1512,7 @@ fi
test -n "$ac_init_help" && exit $ac_status
if $ac_init_version; then
cat <<\_ACEOF
xsm configure 1.0.4
xsm configure 1.0.5
generated by GNU Autoconf 2.69
Copyright (C) 2012 Free Software Foundation, Inc.
@ -1824,7 +1836,7 @@ cat >config.log <<_ACEOF
This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.
It was created by xsm $as_me 1.0.4, which was
It was created by xsm $as_me 1.0.5, which was
generated by GNU Autoconf 2.69. Invocation command line was
$ $0 $@
@ -2653,7 +2665,7 @@ fi
# Define the identity of the package.
PACKAGE='xsm'
VERSION='1.0.4'
VERSION='1.0.5'
cat >>confdefs.h <<_ACEOF
@ -2700,29 +2712,6 @@ am__tar='$${TAR-tar} chof - "$$tardir"' am__untar='$${TAR-tar} xf -'
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to enable maintainer-specific portions of Makefiles" >&5
$as_echo_n "checking whether to enable maintainer-specific portions of Makefiles... " >&6; }
# Check whether --enable-maintainer-mode was given.
if test "${enable_maintainer_mode+set}" = set; then :
enableval=$enable_maintainer_mode; USE_MAINTAINER_MODE=$enableval
else
USE_MAINTAINER_MODE=no
fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $USE_MAINTAINER_MODE" >&5
$as_echo "$USE_MAINTAINER_MODE" >&6; }
if test $USE_MAINTAINER_MODE = yes; then
MAINTAINER_MODE_TRUE=
MAINTAINER_MODE_FALSE='#'
else
MAINTAINER_MODE_TRUE='#'
MAINTAINER_MODE_FALSE=
fi
MAINT=$MAINTAINER_MODE_TRUE
# Require X.Org macros 1.8 or later for MAN_SUBSTS set by XORG_MANPAGE_SECTIONS
@ -10525,19 +10514,19 @@ done
# Checks for pkg-config packages
pkg_failed=no
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for XSM" >&5
$as_echo_n "checking for XSM... " >&6; }
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for x11 xt > 1.0.99 ice sm xaw7 xproto >= 7.0.17" >&5
$as_echo_n "checking for x11 xt > 1.0.99 ice sm xaw7 xproto >= 7.0.17... " >&6; }
if test -n "$XSM_CFLAGS"; then
pkg_cv_XSM_CFLAGS="$XSM_CFLAGS"
elif test -n "$PKG_CONFIG"; then
if test -n "$PKG_CONFIG" && \
{ { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"x11 xt > 1.0.99 ice sm xaw7\""; } >&5
($PKG_CONFIG --exists --print-errors "x11 xt > 1.0.99 ice sm xaw7") 2>&5
{ { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"x11 xt > 1.0.99 ice sm xaw7 xproto >= 7.0.17\""; } >&5
($PKG_CONFIG --exists --print-errors "x11 xt > 1.0.99 ice sm xaw7 xproto >= 7.0.17") 2>&5
ac_status=$?
$as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
test $ac_status = 0; }; then
pkg_cv_XSM_CFLAGS=`$PKG_CONFIG --cflags "x11 xt > 1.0.99 ice sm xaw7" 2>/dev/null`
pkg_cv_XSM_CFLAGS=`$PKG_CONFIG --cflags "x11 xt > 1.0.99 ice sm xaw7 xproto >= 7.0.17" 2>/dev/null`
test "x$?" != "x0" && pkg_failed=yes
else
pkg_failed=yes
@ -10549,12 +10538,12 @@ if test -n "$XSM_LIBS"; then
pkg_cv_XSM_LIBS="$XSM_LIBS"
elif test -n "$PKG_CONFIG"; then
if test -n "$PKG_CONFIG" && \
{ { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"x11 xt > 1.0.99 ice sm xaw7\""; } >&5
($PKG_CONFIG --exists --print-errors "x11 xt > 1.0.99 ice sm xaw7") 2>&5
{ { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"x11 xt > 1.0.99 ice sm xaw7 xproto >= 7.0.17\""; } >&5
($PKG_CONFIG --exists --print-errors "x11 xt > 1.0.99 ice sm xaw7 xproto >= 7.0.17") 2>&5
ac_status=$?
$as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
test $ac_status = 0; }; then
pkg_cv_XSM_LIBS=`$PKG_CONFIG --libs "x11 xt > 1.0.99 ice sm xaw7" 2>/dev/null`
pkg_cv_XSM_LIBS=`$PKG_CONFIG --libs "x11 xt > 1.0.99 ice sm xaw7 xproto >= 7.0.17" 2>/dev/null`
test "x$?" != "x0" && pkg_failed=yes
else
pkg_failed=yes
@ -10566,7 +10555,7 @@ fi
if test $pkg_failed = yes; then
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
$as_echo "no" >&6; }
if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
@ -10575,14 +10564,14 @@ else
_pkg_short_errors_supported=no
fi
if test $_pkg_short_errors_supported = yes; then
XSM_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "x11 xt > 1.0.99 ice sm xaw7" 2>&1`
XSM_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "x11 xt > 1.0.99 ice sm xaw7 xproto >= 7.0.17" 2>&1`
else
XSM_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "x11 xt > 1.0.99 ice sm xaw7" 2>&1`
XSM_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "x11 xt > 1.0.99 ice sm xaw7 xproto >= 7.0.17" 2>&1`
fi
# Put the nasty error message in config.log where it belongs
echo "$XSM_PKG_ERRORS" >&5
as_fn_error $? "Package requirements (x11 xt > 1.0.99 ice sm xaw7) were not met:
as_fn_error $? "Package requirements (x11 xt > 1.0.99 ice sm xaw7 xproto >= 7.0.17) were not met:
$XSM_PKG_ERRORS
@ -10593,7 +10582,7 @@ Alternatively, you may set the environment variables XSM_CFLAGS
and XSM_LIBS to avoid the need to call pkg-config.
See the pkg-config man page for more details." "$LINENO" 5
elif test $pkg_failed = untried; then
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
$as_echo "no" >&6; }
{ { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
@ -10754,10 +10743,6 @@ else
am__EXEEXT_FALSE=
fi
if test -z "${MAINTAINER_MODE_TRUE}" && test -z "${MAINTAINER_MODE_FALSE}"; then
as_fn_error $? "conditional \"MAINTAINER_MODE\" was never defined.
Usually this means the macro was only invoked conditionally." "$LINENO" 5
fi
if test -z "${MAINTAINER_MODE_TRUE}" && test -z "${MAINTAINER_MODE_FALSE}"; then
as_fn_error $? "conditional \"MAINTAINER_MODE\" was never defined.
Usually this means the macro was only invoked conditionally." "$LINENO" 5
@ -11167,7 +11152,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
# report actual input values of CONFIG_FILES etc. instead of their
# values after options handling.
ac_log="
This file was extended by xsm $as_me 1.0.4, which was
This file was extended by xsm $as_me 1.0.5, which was
generated by GNU Autoconf 2.69. Invocation command line was
CONFIG_FILES = $CONFIG_FILES
@ -11227,13 +11212,13 @@ $config_headers
Configuration commands:
$config_commands
Report bugs to <https://bugs.freedesktop.org/enter_bug.cgi?product=xorg>."
Report bugs to <https://gitlab.freedesktop.org/xorg/app/xsm/issues>."
_ACEOF
cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"
ac_cs_version="\\
xsm config.status 1.0.4
xsm config.status 1.0.5
configured by $0, generated by GNU Autoconf 2.69,
with options \\"\$ac_cs_config\\"

View File

@ -23,14 +23,13 @@ dnl Process this file with autoconf to create configure.
# Initialize Autoconf
AC_PREREQ([2.60])
AC_INIT([xsm], [1.0.4],
[https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], [xsm])
AC_INIT([xsm], [1.0.5],
[https://gitlab.freedesktop.org/xorg/app/xsm/issues], [xsm])
AC_CONFIG_SRCDIR([Makefile.am])
AC_CONFIG_HEADERS([config.h])
# Initialize Automake
AM_INIT_AUTOMAKE([foreign dist-bzip2])
AM_MAINTAINER_MODE
AM_INIT_AUTOMAKE([foreign dist-xz])
# Require X.Org macros 1.8 or later for MAN_SUBSTS set by XORG_MANPAGE_SECTIONS
m4_ifndef([XORG_MACROS_VERSION],
@ -48,7 +47,7 @@ AC_SUBST(RSH)
AC_CHECK_FUNCS([mkstemp putenv])
# Checks for pkg-config packages
PKG_CHECK_MODULES(XSM, [x11 xt > 1.0.99 ice sm xaw7])
PKG_CHECK_MODULES(XSM, [x11 xt > 1.0.99 ice sm xaw7 xproto >= 7.0.17])
xt_appdefaultdir=`$PKG_CONFIG --variable=appdefaultdir xt`
AC_ARG_WITH(appdefaultdir,

View File

@ -150,7 +150,7 @@ DisplayProps(ClientRec *client)
if (ListCount (client->props) > 0)
{
char number[10];
char number[16];
char *ptr;
AppendStr (&buffer, "*** ID = ");
@ -382,7 +382,7 @@ UpdateClientList(void)
{
ClientRec *client;
char *progName, *hostname, *tmp1, *tmp2;
String clientInfo;
char *clientInfo;
int maxlen1, maxlen2;
char extraBuf1[80], extraBuf2[80];
char *restart_service_prop;
@ -398,7 +398,7 @@ UpdateClientList(void)
*/
for (i = 0; i < numClientListNames; i++)
XtFree (clientListNames[i]);
XtFree ((char *) clientListNames[i]);
XtFree ((char *) clientListNames);

View File

@ -224,6 +224,7 @@ pdfdir = @pdfdir@
prefix = @prefix@
program_transform_name = @program_transform_name@
psdir = @psdir@
runstatedir = @runstatedir@
sbindir = @sbindir@
sharedstatedir = @sharedstatedir@
srcdir = @srcdir@

View File

@ -101,24 +101,6 @@ strbw(const char *a, const char *b)
}
#if defined(sun) && defined(SVR4)
#include <sys/wait.h>
int
System(char *s)
{
int pid, status;
if ((pid = fork ()) == 0) {
(void) setpgrp();
execl ("/bin/sh", "sh", "-c", s, NULL);
} else
waitpid (pid, &status, 0);
return status;
}
#endif
void
nomem(void)

View File

@ -620,7 +620,7 @@ SaveCancelXtProc(Widget w, XtPointer client_data, XtPointer callData)
*/
static Widget
AddToggle(char *widgetName, Widget parent, int state, Widget radioGroup,
AddToggle(String widgetName, Widget parent, int state, Widget radioGroup,
XtPointer radioData, Widget fromHoriz, Widget fromVert)
{
Widget toggle;
@ -1195,7 +1195,7 @@ PopupBadSave(void)
{
ClientRec *client;
char *progName, *hostname, *tmp1, *tmp2;
String clientInfo;
char *clientInfo;
int maxlen1, maxlen2;
char extraBuf1[80], extraBuf2[80];
char *restart_service_prop;
@ -1211,7 +1211,7 @@ PopupBadSave(void)
*/
for (i = 0; i < numFailedNames; i++)
XtFree (failedNames[i]);
XtFree ((char *) failedNames[i]);
XtFree ((char *) failedNames);

View File

@ -204,7 +204,7 @@ ReadSave(const char *session_name, char **sm_id)
if (state == 5)
{
String strbuf;
char *strbuf;
int bufsize = 0;
getnextline(&buf, &buflen, f);
@ -220,13 +220,12 @@ ReadSave(const char *session_name, char **sm_id)
{
getnextline(&buf, &buflen, f);
if((p = strchr(buf, '\n'))) *p = '\0';
non_session_aware_clients[i] = (char *) malloc (
strlen (buf) + 2);
non_session_aware_clients[i] = malloc (strlen (buf) + 2);
strcpy (non_session_aware_clients[i], buf);
bufsize += (strlen (buf) + 1);
}
strbuf = (String) malloc (bufsize + 1);
strbuf = malloc (bufsize + 1);
strbuf[0] = '\0';
for (i = 0; i < non_session_aware_count; i++)
@ -303,7 +302,7 @@ WriteSave(const char *sm_id)
ClientRec *client;
FILE *f;
List *cl;
String commands;
char *commands;
char *p, *c;
int count;
@ -311,7 +310,7 @@ WriteSave(const char *sm_id)
if (!f)
{
char msg[256];
char msg[36 + sizeof(session_save_file)];
snprintf (msg, sizeof(msg), "%s: Error creating session save file %s",
Argv[0], session_save_file);

View File

@ -293,7 +293,7 @@ main(int argc, char *argv[])
/*
* Initalize all lists
* Initialize all lists
*/
RunningList = ListInit();

View File

@ -33,6 +33,8 @@ in this Software without prior written authorization from The Open Group.
# include "config.h"
#endif
#define _CONST_X_STRING
#include <X11/Xos.h>
#include <X11/Xfuncs.h>
@ -194,7 +196,7 @@ extern XtSignalId sig_term_id, sig_usr1_id;
extern void fprintfhex(FILE *fp, unsigned int len, char *cp);
extern Status StartSession(char *name, Bool use_default);
extern void EndSession(int status);
extern void EndSession(int status) _X_NORETURN;
extern void SetWM_DELETE_WINDOW(Widget widget, const _XtString delAction);
extern void SetAllSensitive(Bool on);
extern void FreeClient(ClientRec *client, Bool freeProps);
@ -203,16 +205,11 @@ extern void CloseDownClient(ClientRec *client);
/* misc.c */
extern int strbw(const char *a, const char *b);
extern void nomem(void);
extern void nomem(void) _X_NORETURN;
#define Strstr strstr
#if defined(sun) && defined(SVR4)
extern int System(char *s);
#define system(s) System(s)
#endif
/* remote.c */
extern void remote_start(const char *restart_protocol,
const char *restart_machine,