Hello community,

here is the log from the commit of package xinit for openSUSE:Factory checked 
in at 2013-09-13 14:47:18
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/xinit (Old)
 and      /work/SRC/openSUSE:Factory/.xinit.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "xinit"

Changes:
--------
--- /work/SRC/openSUSE:Factory/xinit/xinit.changes      2012-12-07 
14:52:54.000000000 +0100
+++ /work/SRC/openSUSE:Factory/.xinit.new/xinit.changes 2013-09-13 
14:47:18.000000000 +0200
@@ -1,0 +2,31 @@
+Thu Sep 12 19:53:48 UTC 2013 - zai...@opensuse.org
+
+- Update to version 1.3.3:
+  + Add Apple copyright/license notice from launchd files to
+    COPYING.
+  + Use pid_t instead of int for type of pids.
+  + Check for openssl as mkcookie fallback on all platforms, not
+    just OpenBSD.
+  + Declare processTimeout() as taking a const string arg.
+  + If we have to forcibly kill the Xserver on Solaris, reset
+    kbd_mode.
+  + Add printf attributes suggested by gcc.
+  + install: Use sysconfdir instead of libdir for config files.
+  + man: Set correct config file location in man page.
+  + privileged_startx: use root:wheel instead of 0:0.
+  + XQuartz: Fix an issue where -dpi was not being passed to the
+    server despite being set.
+  + Annotate Fatal and Fatalx as _X_NORETURN.
+  + darwin: Silence a syslog message from defaults.
+  + laucnhd:
+    - Silence some syslog spam.
+    - Fix the destination of moved-aside directories in
+      privileged_startx.
+    - Load privileged_startx properly on Tiger.
+    - Provide more verbose error reporting for launchd checkin
+      failures.
+    - Don't provide the LaunchAgent on Tiger.
+  + launchd/privileged_startx: Improved error resolution.
+- Add pkgconfig(xproto) BuildRequires, new dependency.
+
+-------------------------------------------------------------------

Old:
----
  xinit-1.3.2.tar.bz2

New:
----
  xinit-1.3.3.tar.bz2

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ xinit.spec ++++++
--- /var/tmp/diff_new_pack.sQDAlz/_old  2013-09-13 14:47:19.000000000 +0200
+++ /var/tmp/diff_new_pack.sQDAlz/_new  2013-09-13 14:47:19.000000000 +0200
@@ -1,7 +1,7 @@
 #
 # spec file for package xinit
 #
-# Copyright (c) 2012 SUSE LINUX Products GmbH, Nuernberg, Germany.
+# Copyright (c) 2013 SUSE LINUX Products GmbH, Nuernberg, Germany.
 #
 # All modifications and additions to the file contributed by third parties
 # remain the property of their copyright owners, unless otherwise agreed
@@ -17,7 +17,7 @@
 
 
 Name:           xinit
-Version:        1.3.2
+Version:        1.3.3
 Release:        0
 Summary:        X Window System initializer
 License:        MIT
@@ -36,6 +36,7 @@
 BuildRequires:  pkg-config
 BuildRequires:  pkgconfig(x11)
 BuildRequires:  pkgconfig(xorg-macros) >= 1.8
+BuildRequires:  pkgconfig(xproto) >= 7.0.17
 Requires:       setxkbmap
 Requires:       xauth
 Requires:       xmodmap

++++++ xinit-1.3.2.tar.bz2 -> xinit-1.3.3.tar.bz2 ++++++
++++ 28698 lines of diff (skipped)
++++    retrying with extended exclude list
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/xinit-1.3.2/COPYING new/xinit-1.3.3/COPYING
--- old/xinit-1.3.2/COPYING     2011-04-26 07:03:42.000000000 +0200
+++ new/xinit-1.3.3/COPYING     2013-09-08 18:37:33.000000000 +0200
@@ -19,3 +19,30 @@
 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.
+
+Copyright (c) 2008-2012 Apple Inc.
+
+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 without limitation the rights to use, copy, modify, merge,
+publish, distribute, sublicense, and/or sell copies of the Software,
+and to permit persons to whom the Software is furnished to do so,
+subject to the following conditions:
+
+The above copyright notice and this permission notice shall be
+included in all copies or substantial portions of the Software.
+
+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 ABOVE LISTED COPYRIGHT
+HOLDER(S) 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.
+
+Except as contained in this notice, the name(s) of the above
+copyright holders shall not be used in advertising or otherwise to
+promote the sale, use or other dealings in this Software without
+prior written authorization.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/xinit-1.3.2/ChangeLog new/xinit-1.3.3/ChangeLog
--- old/xinit-1.3.2/ChangeLog   2012-01-28 08:15:39.000000000 +0100
+++ new/xinit-1.3.3/ChangeLog   2013-09-08 18:37:56.000000000 +0200
@@ -1,3 +1,209 @@
+commit cdc39fd28649ea906dea8f58981d15d4b04a0a47
+Author: Alan Coopersmith <alan.coopersm...@oracle.com>
+Date:   Sun Sep 8 09:35:35 2013 -0700
+
+    xinit 1.3.3
+    
+    Signed-off-by: Alan Coopersmith <alan.coopersm...@oracle.com>
+
+commit 2363f7ed1c7f838107c1209a97d103f72d980f99
+Author: Alan Coopersmith <alan.coopersm...@oracle.com>
+Date:   Sun Sep 8 09:35:27 2013 -0700
+
+    Add Apple copyright/license notice from launchd files to COPYING
+    
+    Signed-off-by: Alan Coopersmith <alan.coopersm...@oracle.com>
+
+commit 5250190bd436b5b762ebb57452d15dff5ae6a24a
+Author: Alan Coopersmith <alan.coopersm...@oracle.com>
+Date:   Sat Aug 24 14:46:33 2013 -0700
+
+    Use pid_t instead of int for type of pids
+    
+    Signed-off-by: Alan Coopersmith <alan.coopersm...@oracle.com>
+
+commit 14ea26b8dc0c601e445331e09a4cc9ca082a1345
+Author: Alan Coopersmith <alan.coopersm...@oracle.com>
+Date:   Sat Aug 3 00:15:34 2013 -0700
+
+    Check for openssl as mkcookie fallback on all platforms, not just OpenBSD
+    
+    Configure will notify the builder which cookie maker it chooses,
+    so that packagers can add a dependency on the program needed.
+    
+    (Matthieu says the -hex flag to the openssl command was originally
+     OpenBSD-specific but has since been added in upstream OpenSSL.)
+    
+    Signed-off-by: Alan Coopersmith <alan.coopersm...@oracle.com>
+    Reviewed-by: Thomas Klausner <w...@netbsd.org>
+    Reviewed-by: Matthieu Herrb <matthieu.he...@laas.fr>
+
+commit 09ab37f816d2fe9482574c825132d9b516b8e0bf
+Author: Alan Coopersmith <alan.coopersm...@oracle.com>
+Date:   Thu Jul 18 22:58:10 2013 -0700
+
+    Declare processTimeout() as taking a const string arg
+    
+    Fixes gcc const warnings on every call to it
+    
+    Signed-off-by: Alan Coopersmith <alan.coopersm...@oracle.com>
+
+commit 1dd71b4eae433896e41f8366f23b8269712b4cf3
+Author: Alan Coopersmith <alan.coopersm...@oracle.com>
+Date:   Thu Jul 18 22:51:56 2013 -0700
+
+    If we have to forcibly kill the Xserver on Solaris, reset kbd_mode
+    
+    If the Xserver hangs when xinit is waiting for it to die, and xinit
+    sends a kill -9 to it, then it will leave the keyboard in a state that
+    can't be used on the text console, so fix it up ourselves.
+    
+    Upstreaming from Solaris, where it was originally implemented to fix
+    Sun bug 4221128 “If Xserver is slow to exit, xinit does "kill -9" and
+    kbd_mode -a is required”
+    
+    Signed-off-by: Alan Coopersmith <alan.coopersm...@oracle.com>
+
+commit 79fd43329e15432bab4f9f8856af385ac2ac0417
+Author: Thomas Klausner <w...@netbsd.org>
+Date:   Thu Apr 4 14:58:30 2013 +0200
+
+    Use xinitrc.d/?*.sh as the matching pattern instead of needing a fragile 
sed substitution XSLASHGLOB to produce xinitrc.d/*.sh. (If that were used 
literally the slash-star would confuse cpp.)
+    
+    Signed-off-by: Alan Coopersmith <alan.coopersm...@oracle.com>
+
+commit ef3d1d64958c51d7716445574bb7e5653aab714d
+Author: Alan Coopersmith <alan.coopersm...@oracle.com>
+Date:   Sat Feb 23 11:23:25 2013 -0800
+
+    Add printf attributes suggested by gcc
+    
+    Also moves existing noreturn attributes up to function prototypes for
+    functions with forward declarations.
+    
+    Signed-off-by: Alan Coopersmith <alan.coopersm...@oracle.com>
+
+commit 4e85bce64acef1fa0ddff04d59737444e942ff12
+Author: Egbert Eich <e...@freedesktop.org>
+Date:   Thu May 19 09:27:13 2011 +0200
+
+    install: Use sysconfdir instead of libdir for config files.
+    
+    Most X packages today install their config files in sysconfigdir,
+    only a few are left which still put their configuration in libdir.
+    
+    Signed-off-by: Egbert Eich <e...@freedesktop.org>
+    Reviewed-by: Alan Coopersmith <alan.coopersm...@oracle.com>
+
+commit 7c2f87264db950dfecb1a5467d06b3d9d621e32c
+Author: Egbert Eich <e...@freedesktop.org>
+Date:   Thu May 19 09:26:24 2011 +0200
+
+    man: Set correct config file location in man page
+    
+    Change the config file location from a hard coded path to what is
+    set during build.
+    
+    Signed-off-by: Egbert Eich <e...@freedesktop.org>
+    Reviewed-by: Alan Coopersmith <alan.coopersm...@oracle.com>
+
+commit fb4d46c9a85755910a222dcc7167df3b5a5c8d94
+Author: Jeremy Huddleston Sequoia <jerem...@apple.com>
+Date:   Thu Sep 20 22:31:44 2012 -0700
+
+    privileged_startx: use root:wheel instead of 0:0
+    
+    http://xquartz.macosforge.org/trac/ticket/637
+    
+    Signed-off-by: Jeremy Huddleston Sequoia <jerem...@apple.com>
+
+commit bfed997da5f083e3ddfbda440e114d1261d18b14
+Author: Jeremy Huddleston <jerem...@apple.com>
+Date:   Tue Jul 24 08:47:29 2012 -0700
+
+    XQuartz: Fix an issue where -dpi was not being passed to the server 
despite being set
+    
+    For some reason 'defaults' sometimes shows dpi in quotes and sometimes
+    doesn't.
+    
+    Regression-from: 335937217a51e5e159a14463e0b1e3aedf35c6be
+    
+    Signed-off-by: Jeremy Huddleston <jerem...@apple.com>
+
+commit 8156aad786754499f4636104aa5bd8a27a281448
+Author: Jeremy Huddleston <jerem...@apple.com>
+Date:   Sat May 19 04:34:32 2012 -0700
+
+    Annotate Fatal and Fatalx as _X_NORETURN
+    
+    Signed-off-by: Jeremy Huddleston <jerem...@apple.com>
+
+commit 641588afe92c803a1231ecf6281115f55b20e62a
+Author: Jeremy Huddleston <jerem...@apple.com>
+Date:   Sat May 19 04:30:49 2012 -0700
+
+    laucnhd: Silence some syslog spam
+    
+    Signed-off-by: Jeremy Huddleston <jerem...@apple.com>
+
+commit 335937217a51e5e159a14463e0b1e3aedf35c6be
+Author: Jeremy Huddleston <jerem...@apple.com>
+Date:   Sat May 19 04:22:14 2012 -0700
+
+    darwin: Silence a syslog message from defaults
+    
+    Unfortunately defaults has no way to check if a preference exists, and it
+    prints a message to syslog if we read one that doesn't exist.  dpi is one
+    that commonly doesn't exist and results in user confusion when they read
+    syslog.
+    
+    Signed-off-by: Jeremy Huddleston <jerem...@apple.com>
+
+commit eda973a32552c916e7e7cce8877674106cbda0cb
+Author: Jeremy Huddleston <jerem...@apple.com>
+Date:   Wed Apr 18 10:02:07 2012 -0700
+
+    launchd: Fix the destination of moved-aside directories in 
privileged_startx
+    
+    Signed-off-by: Jeremy Huddleston <jerem...@apple.com>
+
+commit c781653f956043e0ee476d4e95e0ae93b27aff96
+Author: Jeremy Huddleston <jerem...@apple.com>
+Date:   Wed Apr 18 09:52:18 2012 -0700
+
+    launchd: Load privileged_startx properly on Tiger
+    
+    Signed-off-by: Jeremy Huddleston <jerem...@apple.com>
+
+commit 4cd122efcfa47afbe8c2ebeee6d8fd48914839a7
+Author: Jeremy Huddleston <jerem...@apple.com>
+Date:   Wed Apr 18 09:47:33 2012 -0700
+
+    launchd: Provide more verbose error reporting for launchd checkin failures
+    
+    Signed-off-by: Jeremy Huddleston <jerem...@apple.com>
+
+commit 2d9bdc819adbe45ec3ffdc72429fd92b7f613601
+Author: Jeremy Huddleston <jerem...@apple.com>
+Date:   Wed Apr 18 09:20:37 2012 -0700
+
+    launchd: Don't provide the LaunchAgent on Tiger
+    
+    Tiger's launchd doesn't support all the features we need from it.
+    
+    Signed-off-by: Jeremy Huddleston <jerem...@apple.com>
+
+commit 49cfa8b7253096d24b2ef6a8d0ba32c4bae9ac23
+Author: Jeremy Huddleston <jerem...@apple.com>
+Date:   Fri Feb 17 17:35:26 2012 -0800
+
+    launchd/privileged_startx: Improved error resolution
+    
+    Rather than just failing to do anything when directories aren't what we
+    want them to be, we now try our best to fix the situation.
+    
+    Signed-off-by: Jeremy Huddleston <jerem...@apple.com>
+
 commit f5ef7a3f8c1e8ac3f715e4059bf3b9a03aafd5a7
 Author: Jeremy Huddleston <jerem...@apple.com>
 Date:   Fri Jan 27 23:13:48 2012 -0800
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/xinit-1.3.2/compile new/xinit-1.3.3/compile
--- old/xinit-1.3.2/compile     1970-01-01 01:00:00.000000000 +0100
+++ new/xinit-1.3.3/compile     2013-09-08 18:37:40.000000000 +0200
@@ -0,0 +1,347 @@
+#! /bin/sh
+# Wrapper for compilers which do not understand '-c -o'.
+
+scriptversion=2012-10-14.11; # UTC
+
+# Copyright (C) 1999-2013 Free Software Foundation, Inc.
+# Written by Tom Tromey <tro...@cygnus.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, or (at your option)
+# any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program.  If not, see <http://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
+# configuration script generated by Autoconf, you may include it under
+# the same distribution terms that you use for the rest of that program.
+
+# This file is maintained in Automake, please report
+# bugs to <bug-autom...@gnu.org> or send patches to
+# <automake-patc...@gnu.org>.
+
+nl='
+'
+
+# We need space, tab and new line, in precisely that order.  Quoting is
+# there to prevent tools from complaining about whitespace usage.
+IFS=" ""       $nl"
+
+file_conv=
+
+# func_file_conv build_file lazy
+# Convert a $build file to $host form and store it in $file
+# Currently only supports Windows hosts. If the determined conversion
+# type is listed in (the comma separated) LAZY, no conversion will
+# take place.
+func_file_conv ()
+{
+  file=$1
+  case $file in
+    / | /[!/]*) # absolute file, and not a UNC file
+      if test -z "$file_conv"; then
+       # lazily determine how to convert abs files
+       case `uname -s` in
+         MINGW*)
+           file_conv=mingw
+           ;;
+         CYGWIN*)
+           file_conv=cygwin
+           ;;
+         *)
+           file_conv=wine
+           ;;
+       esac
+      fi
+      case $file_conv/,$2, in
+       *,$file_conv,*)
+         ;;
+       mingw/*)
+         file=`cmd //C echo "$file " | sed -e 's/"\(.*\) " *$/\1/'`
+         ;;
+       cygwin/*)
+         file=`cygpath -m "$file" || echo "$file"`
+         ;;
+       wine/*)
+         file=`winepath -w "$file" || echo "$file"`
+         ;;
+      esac
+      ;;
+  esac
+}
+
+# func_cl_dashL linkdir
+# Make cl look for libraries in LINKDIR
+func_cl_dashL ()
+{
+  func_file_conv "$1"
+  if test -z "$lib_path"; then
+    lib_path=$file
+  else
+    lib_path="$lib_path;$file"
+  fi
+  linker_opts="$linker_opts -LIBPATH:$file"
+}
+
+# func_cl_dashl library
+# Do a library search-path lookup for cl
+func_cl_dashl ()
+{
+  lib=$1
+  found=no
+  save_IFS=$IFS
+  IFS=';'
+  for dir in $lib_path $LIB
+  do
+    IFS=$save_IFS
+    if $shared && test -f "$dir/$lib.dll.lib"; then
+      found=yes
+      lib=$dir/$lib.dll.lib
+      break
+    fi
+    if test -f "$dir/$lib.lib"; then
+      found=yes
+      lib=$dir/$lib.lib
+      break
+    fi
+    if test -f "$dir/lib$lib.a"; then
+      found=yes
+      lib=$dir/lib$lib.a
+      break
+    fi
+  done
+  IFS=$save_IFS
+
+  if test "$found" != yes; then
+    lib=$lib.lib
+  fi
+}
+
+# func_cl_wrapper cl arg...
+# Adjust compile command to suit cl
+func_cl_wrapper ()
+{
+  # Assume a capable shell
+  lib_path=
+  shared=:
+  linker_opts=
+  for arg
+  do
+    if test -n "$eat"; then
+      eat=
+    else
+      case $1 in
+       -o)
+         # configure might choose to run compile as 'compile cc -o foo foo.c'.
+         eat=1
+         case $2 in
+           *.o | *.[oO][bB][jJ])
+             func_file_conv "$2"
+             set x "$@" -Fo"$file"
+             shift
+             ;;
+           *)
+             func_file_conv "$2"
+             set x "$@" -Fe"$file"
+             shift
+             ;;
+         esac
+         ;;
+       -I)
+         eat=1
+         func_file_conv "$2" mingw
+         set x "$@" -I"$file"
+         shift
+         ;;
+       -I*)
+         func_file_conv "${1#-I}" mingw
+         set x "$@" -I"$file"
+         shift
+         ;;
+       -l)
+         eat=1
+         func_cl_dashl "$2"
+         set x "$@" "$lib"
+         shift
+         ;;
+       -l*)
+         func_cl_dashl "${1#-l}"
+         set x "$@" "$lib"
+         shift
+         ;;
+       -L)
+         eat=1
+         func_cl_dashL "$2"
+         ;;
+       -L*)
+         func_cl_dashL "${1#-L}"
+         ;;
+       -static)
+         shared=false
+         ;;
+       -Wl,*)
+         arg=${1#-Wl,}
+         save_ifs="$IFS"; IFS=','
+         for flag in $arg; do
+           IFS="$save_ifs"
+           linker_opts="$linker_opts $flag"
+         done
+         IFS="$save_ifs"
+         ;;
+       -Xlinker)
+         eat=1
+         linker_opts="$linker_opts $2"
+         ;;
+       -*)
+         set x "$@" "$1"
+         shift
+         ;;
+       *.cc | *.CC | *.cxx | *.CXX | *.[cC]++)
+         func_file_conv "$1"
+         set x "$@" -Tp"$file"
+         shift
+         ;;
+       *.c | *.cpp | *.CPP | *.lib | *.LIB | *.Lib | *.OBJ | *.obj | *.[oO])
+         func_file_conv "$1" mingw
+         set x "$@" "$file"
+         shift
+         ;;
+       *)
+         set x "$@" "$1"
+         shift
+         ;;
+      esac
+    fi
+    shift
+  done
+  if test -n "$linker_opts"; then
+    linker_opts="-link$linker_opts"
+  fi
+  exec "$@" $linker_opts
+  exit 1
+}
+
+eat=
+
+case $1 in
+  '')
+     echo "$0: No command.  Try '$0 --help' for more information." 1>&2
+     exit 1;
+     ;;
+  -h | --h*)
+    cat <<\EOF
+Usage: compile [--help] [--version] PROGRAM [ARGS]
+
+Wrapper for compilers which do not understand '-c -o'.
+Remove '-o dest.o' from ARGS, run PROGRAM with the remaining
+arguments, and rename the output as expected.
+
+If you are trying to build a whole package this is not the
+right script to run: please start by reading the file 'INSTALL'.
+
+Report bugs to <bug-autom...@gnu.org>.
+EOF
+    exit $?
+    ;;
+  -v | --v*)
+    echo "compile $scriptversion"
+    exit $?
+    ;;
+  cl | *[/\\]cl | cl.exe | *[/\\]cl.exe )
+    func_cl_wrapper "$@"      # Doesn't return...
+    ;;
+esac
+
+ofile=
+cfile=
+
+for arg
+do
+  if test -n "$eat"; then
+    eat=
+  else
+    case $1 in
+      -o)
+       # configure might choose to run compile as 'compile cc -o foo foo.c'.
+       # So we strip '-o arg' only if arg is an object.
+       eat=1
+       case $2 in
+         *.o | *.obj)
+           ofile=$2
+           ;;
+         *)
+           set x "$@" -o "$2"
+           shift
+           ;;
+       esac
+       ;;
+      *.c)
+       cfile=$1
+       set x "$@" "$1"
+       shift
+       ;;
+      *)
+       set x "$@" "$1"
+       shift
+       ;;
+    esac
+  fi
+  shift
+done
+
+if test -z "$ofile" || test -z "$cfile"; then
+  # If no '-o' option was seen then we might have been invoked from a
+  # pattern rule where we don't need one.  That is ok -- this is a
+  # normal compilation that the losing compiler can handle.  If no
+  # '.c' file was seen then we are probably linking.  That is also
+  # ok.
+  exec "$@"
+fi
+
+# Name of file we expect compiler to create.
+cofile=`echo "$cfile" | sed 's|^.*[\\/]||; s|^[a-zA-Z]:||; s/\.c$/.o/'`
+
+# Create the lock directory.
+# Note: use '[/\\:.-]' here to ensure that we don't use the same name
+# that we are using for the .o file.  Also, base the name on the expected
+# object file name, since that is what matters with a parallel build.
+lockdir=`echo "$cofile" | sed -e 's|[/\\:.-]|_|g'`.d
+while true; do
+  if mkdir "$lockdir" >/dev/null 2>&1; then
+    break
+  fi
+  sleep 1
+done
+# FIXME: race condition here if user kills between mkdir and trap.
+trap "rmdir '$lockdir'; exit 1" 1 2 15
+
+# Run the compile.
+"$@"
+ret=$?
+
+if test -f "$cofile"; then
+  test "$cofile" = "$ofile" || mv "$cofile" "$ofile"
+elif test -f "${cofile}bj"; then
+  test "${cofile}bj" = "$ofile" || mv "${cofile}bj" "$ofile"
+fi
+
+rmdir "$lockdir"
+exit $ret
+
+# Local Variables:
+# mode: shell-script
+# sh-indentation: 2
+# eval: (add-hook 'write-file-hooks 'time-stamp)
+# time-stamp-start: "scriptversion="
+# time-stamp-format: "%:y-%02m-%02d.%02H"
+# time-stamp-time-zone: "UTC"
+# time-stamp-end: "; # UTC"
+# End:
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/xinit-1.3.2/config.h.in new/xinit-1.3.3/config.h.in
--- old/xinit-1.3.2/config.h.in 2012-01-28 08:14:06.000000000 +0100
+++ new/xinit-1.3.3/config.h.in 2013-09-08 18:37:40.000000000 +0200
@@ -51,6 +51,9 @@
 /* Define to the one symbol short name of this package. */
 #undef PACKAGE_TARNAME
 
+/* Define to the home page for this package. */
+#undef PACKAGE_URL
+
 /* Define to the version of this package. */
 #undef PACKAGE_VERSION
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/xinit-1.3.2/configure.ac new/xinit-1.3.3/configure.ac
--- old/xinit-1.3.2/configure.ac        2012-01-28 08:13:35.000000000 +0100
+++ new/xinit-1.3.3/configure.ac        2013-09-08 18:37:33.000000000 +0200
@@ -22,7 +22,7 @@
 
 # Initialize Autoconf
 AC_PREREQ([2.60])
-AC_INIT([xinit], [1.3.2],
+AC_INIT([xinit], [1.3.3],
         [https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], [xinit])
 AC_CONFIG_SRCDIR([Makefile.am])
 AC_CONFIG_HEADERS([config.h])
@@ -50,7 +50,7 @@
 DEFAULT_XSERVER=${bindir}/X
 DEFAULT_XAUTH=xauth
 DEFAULT_XINIT=xinit
-DEFAULT_XINITDIR=${libdir}/X11/xinit
+DEFAULT_XINITDIR=${sysconfdir}/X11/xinit
 
 AC_ARG_WITH(xrdb,
         AS_HELP_STRING([--with-xrdb=XRDB], [Path to xrdb]),
@@ -141,7 +141,7 @@
 AM_CONDITIONAL(LAUNCHAGENT_XSERVER, [test "x$launchagentxserver" != "xno"])
 
 # Checks for pkg-config packages
-PKG_CHECK_MODULES(XINIT, x11)
+PKG_CHECK_MODULES(XINIT, x11 xproto >= 7.0.17)
 
 case $host_os in
     *bsd*)
@@ -153,17 +153,26 @@
 AC_PATH_PROGS(MCOOKIE, [mcookie], [$MCOOKIE],
   [$PATH:/bin:/usr/bin:/usr/lib:/usr/libexec:/usr/local/bin])
 
-case $host_os in
-       *openbsd*)
-       MCOOKIE='/usr/sbin/openssl rand -hex 16'
-       ;;
-       *solaris*)
-       MCOOKIE="/usr/bin/od -X -A n -N 16 /dev/urandom | /usr/bin/tr -d ' '"
-       ;;
-esac
-
+# If mcookie not found, try openssl, else per-system fallbacks
+if test "x$MCOOKIE" = x ; then
+    AC_PATH_PROGS(OPENSSL, [openssl], [$OPENSSL],
+        [$PATH:/bin:/usr/bin:/usr/sbin:/usr/lib:/usr/libexec:/usr/local/bin])
+    if test "x$OPENSSL" != x ; then
+        MCOOKIE="$OPENSSL rand -hex 16"
+    else
+        case $host_os in
+            *openbsd*)
+                MCOOKIE='/usr/sbin/openssl rand -hex 16'
+                ;;
+            *solaris*)
+                MCOOKIE="/usr/bin/od -X -A n -N 16 /dev/urandom | /usr/bin/tr 
-d ' '"
+                ;;
+        esac
+    fi
+fi
 if test "x$MCOOKIE" != x ; then
        STARTX_COOKIE_FLAGS='-DHAS_COOKIE_MAKER -DMK_COOKIE="$(MCOOKIE)"'
+       AC_MSG_NOTICE([startx will depend on "$MCOOKIE" to generate xauth 
cookies])
 fi
 AC_SUBST(STARTX_COOKIE_FLAGS)
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/xinit-1.3.2/cpprules.in new/xinit-1.3.3/cpprules.in
--- old/xinit-1.3.2/cpprules.in 2011-07-25 02:14:38.000000000 +0200
+++ new/xinit-1.3.3/cpprules.in 2013-09-08 18:37:33.000000000 +0200
@@ -10,7 +10,6 @@
                        -e '/^[         ]*XCOMM$$/s/XCOMM/\#/' \
                        -e '/^[         ]*XCOMM[^a-zA-Z0-9_]/s/XCOMM/\#/' \
                        -e '/^[         ]*XHASH/s/XHASH/\#/' \
-                       -e '/XSLASHGLOB/s/XSLASHGLOB/\/\*/' \
                        -e '/\@\@$$/s/\@\@$$/\\/'
 
 SUFFIXES = .cpp
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/xinit-1.3.2/launchd/Makefile.am new/xinit-1.3.3/launchd/Makefile.am
--- old/xinit-1.3.2/launchd/Makefile.am 2011-05-14 02:14:22.000000000 +0200
+++ new/xinit-1.3.3/launchd/Makefile.am 2013-09-08 18:37:33.000000000 +0200
@@ -1,3 +1,8 @@
-SUBDIRS = privileged_startx user_startx
+DIST_SUBDIRS = privileged_startx user_startx
+SUBDIRS = privileged_startx 
+
+if !TIGER_LAUNCHD
+SUBDIRS += user_startx
+endif
 
 EXTRA_DIST = console_redirect.h
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/xinit-1.3.2/launchd/privileged_startx/10-tmpdirs.cpp 
new/xinit-1.3.3/launchd/privileged_startx/10-tmpdirs.cpp
--- old/xinit-1.3.2/launchd/privileged_startx/10-tmpdirs.cpp    2011-04-28 
03:08:02.000000000 +0200
+++ new/xinit-1.3.3/launchd/privileged_startx/10-tmpdirs.cpp    2013-09-08 
18:37:33.000000000 +0200
@@ -1,5 +1,5 @@
 XCOMM!/bin/sh
-XCOMM Copyright (c) 2008 Apple Inc.
+XCOMM Copyright (c) 2008-2012 Apple Inc.
 XCOMM
 XCOMM Permission is hereby granted, free of charge, to any person
 XCOMM obtaining a copy of this software and associated documentation files
@@ -36,11 +36,33 @@
     MKTEMP=mktemp
 fi
 
+STAT=/usr/bin/stat
+
 for dir in /tmp/.ICE-unix /tmp/.X11-unix /tmp/.font-unix ; do
-       XCOMM Use mktemp rather than mkdir to avoid possible security issue
-       XCOMM if $dir exists and is a symlink
-       if ${MKTEMP} -d ${dir} >& /dev/null ; then
-               chmod 1777 $dir
-               chown root:wheel $dir
+       success=0
+       for attempt in 1 2 3 4 5 ; do
+               check=`${STAT} -f '%#p %u %g' ${dir} 2> /dev/null`
+               if [ "${check}" = "041777 0 0" ] ; then
+                       success=1
+                       break
+               elif [ -n "${check}" ] ; then
+                       saved=$(${MKTEMP} -d ${dir}-XXXXXXXX)
+                       mv ${dir} ${saved}
+                       echo "${dir} exists but is insecure.  It has been moved 
into ${saved}" >&2
+               fi
+
+               # Use mktemp rather than mkdir to avoid possible security issue
+               # if $dir exists and is a symlink (ie protect against a race
+               # against the above check)
+               if ${MKTEMP} -d ${dir} >& /dev/null ; then
+                       chmod 1777 $dir
+                       chown root:wheel $dir
+                       success=1
+                       break
+               fi
+       done
+
+       if [ "${success}" -eq 0 ] ; then
+               echo "Could not successfully create ${dir}" >&2
        fi
 done
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/xinit-1.3.2/launchd/privileged_startx/privileged_startx.plist.cpp 
new/xinit-1.3.3/launchd/privileged_startx/privileged_startx.plist.cpp
--- old/xinit-1.3.2/launchd/privileged_startx/privileged_startx.plist.cpp       
2011-05-14 02:14:22.000000000 +0200
+++ new/xinit-1.3.3/launchd/privileged_startx/privileged_startx.plist.cpp       
2013-09-08 18:37:33.000000000 +0200
@@ -11,8 +11,12 @@
                        <string>SCRIPTDIR</string>
                </array>
 #ifdef TIGER_LAUNCHD
+       <key>RunAtLoad</key>
+               <true/>
        <key>KeepAlive</key>
                <true/>
+       <key>ServiceIPC</key>
+               <true/>
 #else
        <key>MachServices</key>
                <dict>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/xinit-1.3.2/launchd/privileged_startx/server.c 
new/xinit-1.3.3/launchd/privileged_startx/server.c
--- old/xinit-1.3.2/launchd/privileged_startx/server.c  2011-05-14 
02:14:22.000000000 +0200
+++ new/xinit-1.3.3/launchd/privileged_startx/server.c  2013-09-08 
18:37:33.000000000 +0200
@@ -125,9 +125,19 @@
     aslclient aslc;
 
     checkin = launch_data_new_string(LAUNCH_KEY_CHECKIN);
+    if (!checkin) {
+        asl_log(NULL, NULL, ASL_LEVEL_ERR, "unable to create launchd checkin 
string");
+        exit(EXIT_FAILURE);
+    }
+
     config = launch_msg(checkin);
-    if (!config || launch_data_get_type(config) == LAUNCH_DATA_ERRNO) {
-        asl_log(NULL, NULL, ASL_LEVEL_ERR, "launchd checkin failed");
+    if (!config) {
+        asl_log(NULL, NULL, ASL_LEVEL_ERR, "could not send a message to 
launchd");
+        exit(EXIT_FAILURE);
+    }
+
+    if (launch_data_get_type(config) == LAUNCH_DATA_ERRNO) {
+        asl_log(NULL, NULL, ASL_LEVEL_ERR, "launchd checkin failed eith error: 
%d %s", launch_data_get_errno(config), strerror(launch_data_get_errno(config)));
         exit(EXIT_FAILURE);
     }
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/xinit-1.3.2/launchd/user_startx/launchd_startx.c 
new/xinit-1.3.3/launchd/user_startx/launchd_startx.c
--- old/xinit-1.3.2/launchd/user_startx/launchd_startx.c        2011-10-20 
07:47:36.000000000 +0200
+++ new/xinit-1.3.3/launchd/user_startx/launchd_startx.c        2013-09-08 
18:37:33.000000000 +0200
@@ -1,4 +1,4 @@
-/* Copyright (c) 2011 Apple Inc.
+/* Copyright (c) 2011-2012 Apple Inc.
  *
  * Permission is hereby granted, free of charge, to any person
  * obtaining a copy of this software and associated documentation files
@@ -37,15 +37,7 @@
 #include <sys/wait.h>
 #include <string.h>
 #include <stdlib.h>
-
-/* Using MIN_REQUIRED instead of MAX_ALLOWED logic due to posix_spawn not
- * being marked with availability macros until 10.7
- */
-#if MAC_OS_X_VERSION_MIN_REQUIRED >= 1050
 #include <spawn.h>
-#else
-#include <errno.h>
-#endif
 
 #include "console_redirect.h"
 
@@ -64,20 +56,7 @@
     xi_asl_capture_fd(aslc, NULL, ASL_LEVEL_INFO, STDOUT_FILENO);
     xi_asl_capture_fd(aslc, NULL, ASL_LEVEL_NOTICE, STDERR_FILENO);
 
-#if MAC_OS_X_VERSION_MIN_REQUIRED >= 1050
     assert(posix_spawnp(&child, argv[1], NULL, NULL, &argv[1], envp) == 0);
-#else
-    switch(child = fork()) {
-        case -1:
-            perror("fork");
-            return errno;
-        case 0:
-            return execvp(argv[1], &argv[1]);
-        default:
-            break;
-    }
-#endif
-
     wait4(child, &pstat, 0, (struct rusage *)0);
 
     return pstat;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/xinit-1.3.2/man/Makefile.am new/xinit-1.3.3/man/Makefile.am
--- old/xinit-1.3.2/man/Makefile.am     2011-07-25 02:14:38.000000000 +0200
+++ new/xinit-1.3.3/man/Makefile.am     2013-09-08 18:37:33.000000000 +0200
@@ -13,7 +13,9 @@
                -e 's|__xinitdir__|$(XINITDIR)|g' \
                -e 's|__bindir__|$(bindir)|g' \
                -e 's|__libdir__|$(libdir)|g' \
-               -e 's|__SCOMAN__|$(SCOMAN)|g'
+               -e 's|__SCOMAN__|$(SCOMAN)|g' \
+               -e 's|__configdir__|$(XINITDIR)|g'
+
 
 # String replacements in MAN_SUBSTS now come from xorg-macros.m4 via configure
 .man.$(APP_MAN_SUFFIX):
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/xinit-1.3.2/man/xinit.man new/xinit-1.3.3/man/xinit.man
--- old/xinit-1.3.2/man/xinit.man       2011-07-25 02:14:38.000000000 +0200
+++ new/xinit-1.3.3/man/xinit.man       2013-09-08 18:37:33.000000000 +0200
@@ -109,7 +109,7 @@
 This will start up a server named \fIX\fP and run the user's \fI\.xinitrc\fP,
 if it exists, or else start an \fIxterm\fP.
 .TP 8
-.B "xinit \-\^\- /usr/local/bin/Xvnc  :1"
+.B "xinit \-\^\- __bindir__/Xvnc  :1"
 This is how one could start a specific type of server on an alternate display.
 .TP 8
 .B "xinit \-geometry =80x65+10+10 \-fn 8x13 \-j \-fg white \-bg navy"
@@ -149,7 +149,7 @@
 .in +8
 .nf
 \&#!/bin/sh
-\&. /usr/local/lib/site.xinitrc
+\&. __configdir__/site.xinitrc
 .fi
 .in -8
 .sp
@@ -161,7 +161,7 @@
 .in +8
 .nf
 \&#!/bin/sh
-xinit /usr/local/lib/site.xinitrc \-\^\- __bindir__/X -br
+xinit __configdir__/site.xinitrc \-\^\- __bindir__/X -br
 .fi
 .in -8
 .sp
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/xinit-1.3.2/missing new/xinit-1.3.3/missing
--- old/xinit-1.3.2/missing     2012-01-28 08:14:07.000000000 +0100
+++ new/xinit-1.3.3/missing     2013-09-08 18:37:40.000000000 +0200
@@ -1,11 +1,10 @@
 #! /bin/sh
-# Common stub for a few missing GNU programs while installing.
+# Common wrapper for a few potentially missing GNU programs.
 
-scriptversion=2006-05-10.23
+scriptversion=2012-06-26.16; # UTC
 
-# Copyright (C) 1996, 1997, 1999, 2000, 2002, 2003, 2004, 2005, 2006
-#   Free Software Foundation, Inc.
-# Originally by Fran,cois Pinard <pin...@iro.umontreal.ca>, 1996.
+# Copyright (C) 1996-2013 Free Software Foundation, Inc.
+# Originally written by Fran,cois Pinard <pin...@iro.umontreal.ca>, 1996.
 
 # 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
@@ -18,9 +17,7 @@
 # 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., 51 Franklin Street, Fifth Floor, Boston, MA
-# 02110-1301, USA.
+# along with this program.  If not, see <http://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
@@ -28,66 +25,40 @@
 # the same distribution terms that you use for the rest of that program.
 
 if test $# -eq 0; then
-  echo 1>&2 "Try \`$0 --help' for more information"
+  echo 1>&2 "Try '$0 --help' for more information"
   exit 1
 fi
 
-run=:
-sed_output='s/.* --output[ =]\([^ ]*\).*/\1/p'
-sed_minuso='s/.* -o \([^ ]*\).*/\1/p'
-
-# In the cases where this matters, `missing' is being run in the
-# srcdir already.
-if test -f configure.ac; then
-  configure_ac=configure.ac
-else
-  configure_ac=configure.in
-fi
+case $1 in
 
-msg="missing on your system"
+  --is-lightweight)
+    # Used by our autoconf macros to check whether the available missing
+    # script is modern enough.
+    exit 0
+    ;;
 
-case $1 in
---run)
-  # Try to run requested program, and just exit if it succeeds.
-  run=
-  shift
-  "$@" && exit 0
-  # Exit code 63 means version mismatch.  This often happens
-  # when the user try to use an ancient version of a tool on
-  # a file that requires a minimum version.  In this case we
-  # we should proceed has if the program had been absent, or
-  # if --run hadn't been passed.
-  if test $? = 63; then
-    run=:
-    msg="probably too old"
-  fi
-  ;;
+  --run)
+    # Back-compat with the calling convention used by older automake.
+    shift
+    ;;
 
   -h|--h|--he|--hel|--help)
     echo "\
 $0 [OPTION]... PROGRAM [ARGUMENT]...
 
-Handle \`PROGRAM [ARGUMENT]...' for when PROGRAM is missing, or return an
-error status if there is no known handling for PROGRAM.
+Run 'PROGRAM [ARGUMENT]...', returning a proper advice when this fails due
+to PROGRAM being missing or too old.
 
 Options:
   -h, --help      display this help and exit
   -v, --version   output version information and exit
-  --run           try to run the given command, and emulate it if it fails
 
 Supported PROGRAM values:
-  aclocal      touch file \`aclocal.m4'
-  autoconf     touch file \`configure'
-  autoheader   touch file \`config.h.in'
-  autom4te     touch the output file, or create a stub one
-  automake     touch all \`Makefile.in' files
-  bison        create \`y.tab.[ch]', if possible, from existing .[ch]
-  flex         create \`lex.yy.c', if possible, from existing .c
-  help2man     touch the output file
-  lex          create \`lex.yy.c', if possible, from existing .c
-  makeinfo     touch the output file
-  tar          try tar, gnutar, gtar, then tar without non-portable flags
-  yacc         create \`y.tab.[ch]', if possible, from existing .[ch]
+  aclocal   autoconf  autoheader   autom4te  automake  makeinfo
+  bison     yacc      flex         lex       help2man
+
+Version suffixes to PROGRAM as well as the prefixes 'gnu-', 'gnu', and
+'g' are ignored when checking the name.
 
 Send bug reports to <bug-autom...@gnu.org>."
     exit $?
@@ -99,269 +70,146 @@
     ;;
 
   -*)
-    echo 1>&2 "$0: Unknown \`$1' option"
-    echo 1>&2 "Try \`$0 --help' for more information"
+    echo 1>&2 "$0: unknown '$1' option"
+    echo 1>&2 "Try '$0 --help' for more information"
     exit 1
     ;;
 
 esac
 
-# Now exit if we have it, but it failed.  Also exit now if we
-# don't have it and --version was passed (most likely to detect
-# the program).
-case $1 in
-  lex|yacc)
-    # Not GNU programs, they don't have --version.
-    ;;
-
-  tar)
-    if test -n "$run"; then
-       echo 1>&2 "ERROR: \`tar' requires --run"
-       exit 1
-    elif test "x$2" = "x--version" || test "x$2" = "x--help"; then
-       exit 1
-    fi
-    ;;
-
-  *)
-    if test -z "$run" && ($1 --version) > /dev/null 2>&1; then
-       # We have it, but it failed.
-       exit 1
-    elif test "x$2" = "x--version" || test "x$2" = "x--help"; then
-       # Could not run --version or --help.  This is probably someone
-       # running `$TOOL --version' or `$TOOL --help' to check whether
-       # $TOOL exists and not knowing $TOOL uses missing.
-       exit 1
-    fi
-    ;;
-esac
-
-# If it does not exist, or fails to run (possibly an outdated version),
-# try to emulate it.
-case $1 in
-  aclocal*)
-    echo 1>&2 "\
-WARNING: \`$1' is $msg.  You should only need it if
-         you modified \`acinclude.m4' or \`${configure_ac}'.  You might want
-         to install the \`Automake' and \`Perl' packages.  Grab them from
-         any GNU archive site."
-    touch aclocal.m4
-    ;;
+# Run the given program, remember its exit status.
+"$@"; st=$?
 
-  autoconf)
-    echo 1>&2 "\
-WARNING: \`$1' is $msg.  You should only need it if
-         you modified \`${configure_ac}'.  You might want to install the
-         \`Autoconf' and \`GNU m4' packages.  Grab them from any GNU
-         archive site."
-    touch configure
-    ;;
+# If it succeeded, we are done.
+test $st -eq 0 && exit 0
 
-  autoheader)
-    echo 1>&2 "\
-WARNING: \`$1' is $msg.  You should only need it if
-         you modified \`acconfig.h' or \`${configure_ac}'.  You might want
-         to install the \`Autoconf' and \`GNU m4' packages.  Grab them
-         from any GNU archive site."
-    files=`sed -n 's/^[ ]*A[CM]_CONFIG_HEADER(\([^)]*\)).*/\1/p' 
${configure_ac}`
-    test -z "$files" && files="config.h"
-    touch_files=
-    for f in $files; do
-      case $f in
-      *:*) touch_files="$touch_files "`echo "$f" |
-                                      sed -e 's/^[^:]*://' -e 's/:.*//'`;;
-      *) touch_files="$touch_files $f.in";;
-      esac
-    done
-    touch $touch_files
-    ;;
-
-  automake*)
-    echo 1>&2 "\
-WARNING: \`$1' is $msg.  You should only need it if
-         you modified \`Makefile.am', \`acinclude.m4' or \`${configure_ac}'.
-         You might want to install the \`Automake' and \`Perl' packages.
-         Grab them from any GNU archive site."
-    find . -type f -name Makefile.am -print |
-          sed 's/\.am$/.in/' |
-          while read f; do touch "$f"; done
-    ;;
-
-  autom4te)
-    echo 1>&2 "\
-WARNING: \`$1' is needed, but is $msg.
-         You might have modified some files without having the
-         proper tools for further handling them.
-         You can get \`$1' as part of \`Autoconf' from any GNU
-         archive site."
-
-    file=`echo "$*" | sed -n "$sed_output"`
-    test -z "$file" && file=`echo "$*" | sed -n "$sed_minuso"`
-    if test -f "$file"; then
-       touch $file
-    else
-       test -z "$file" || exec >$file
-       echo "#! /bin/sh"
-       echo "# Created by GNU Automake missing as a replacement of"
-       echo "#  $ $@"
-       echo "exit 0"
-       chmod +x $file
-       exit 1
-    fi
-    ;;
-
-  bison|yacc)
-    echo 1>&2 "\
-WARNING: \`$1' $msg.  You should only need it if
-         you modified a \`.y' file.  You may need the \`Bison' package
-         in order for those modifications to take effect.  You can get
-         \`Bison' from any GNU archive site."
-    rm -f y.tab.c y.tab.h
-    if test $# -ne 1; then
-        eval LASTARG="\${$#}"
-       case $LASTARG in
-       *.y)
-           SRCFILE=`echo "$LASTARG" | sed 's/y$/c/'`
-           if test -f "$SRCFILE"; then
-                cp "$SRCFILE" y.tab.c
-           fi
-           SRCFILE=`echo "$LASTARG" | sed 's/y$/h/'`
-           if test -f "$SRCFILE"; then
-                cp "$SRCFILE" y.tab.h
-           fi
-         ;;
-       esac
-    fi
-    if test ! -f y.tab.h; then
-       echo >y.tab.h
-    fi
-    if test ! -f y.tab.c; then
-       echo 'main() { return 0; }' >y.tab.c
-    fi
-    ;;
-
-  lex|flex)
-    echo 1>&2 "\
-WARNING: \`$1' is $msg.  You should only need it if
-         you modified a \`.l' file.  You may need the \`Flex' package
-         in order for those modifications to take effect.  You can get
-         \`Flex' from any GNU archive site."
-    rm -f lex.yy.c
-    if test $# -ne 1; then
-        eval LASTARG="\${$#}"
-       case $LASTARG in
-       *.l)
-           SRCFILE=`echo "$LASTARG" | sed 's/l$/c/'`
-           if test -f "$SRCFILE"; then
-                cp "$SRCFILE" lex.yy.c
-           fi
-         ;;
-       esac
-    fi
-    if test ! -f lex.yy.c; then
-       echo 'main() { return 0; }' >lex.yy.c
-    fi
-    ;;
-
-  help2man)
-    echo 1>&2 "\
-WARNING: \`$1' is $msg.  You should only need it if
-        you modified a dependency of a manual page.  You may need the
-        \`Help2man' package in order for those modifications to take
-        effect.  You can get \`Help2man' from any GNU archive site."
-
-    file=`echo "$*" | sed -n "$sed_output"`
-    test -z "$file" && file=`echo "$*" | sed -n "$sed_minuso"`
-    if test -f "$file"; then
-       touch $file
-    else
-       test -z "$file" || exec >$file
-       echo ".ab help2man is required to generate this page"
-       exit 1
-    fi
-    ;;
-
-  makeinfo)
-    echo 1>&2 "\
-WARNING: \`$1' is $msg.  You should only need it if
-         you modified a \`.texi' or \`.texinfo' file, or any other file
-         indirectly affecting the aspect of the manual.  The spurious
-         call might also be the consequence of using a buggy \`make' (AIX,
-         DU, IRIX).  You might want to install the \`Texinfo' package or
-         the \`GNU make' package.  Grab either from any GNU archive site."
-    # The file to touch is that specified with -o ...
-    file=`echo "$*" | sed -n "$sed_output"`
-    test -z "$file" && file=`echo "$*" | sed -n "$sed_minuso"`
-    if test -z "$file"; then
-      # ... or it is the one specified with @setfilename ...
-      infile=`echo "$*" | sed 's/.* \([^ ]*\) *$/\1/'`
-      file=`sed -n '
-       /^@setfilename/{
-         s/.* \([^ ]*\) *$/\1/
-         p
-         q
-       }' $infile`
-      # ... or it is derived from the source name (dir/f.texi becomes f.info)
-      test -z "$file" && file=`echo "$infile" | sed 's,.*/,,;s,.[^.]*$,,'`.info
-    fi
-    # If the file does not exist, the user really needs makeinfo;
-    # let's fail without touching anything.
-    test -f $file || exit 1
-    touch $file
-    ;;
-
-  tar)
-    shift
-
-    # We have already tried tar in the generic part.
-    # Look for gnutar/gtar before invocation to avoid ugly error
-    # messages.
-    if (gnutar --version > /dev/null 2>&1); then
-       gnutar "$@" && exit 0
-    fi
-    if (gtar --version > /dev/null 2>&1); then
-       gtar "$@" && exit 0
-    fi
-    firstarg="$1"
-    if shift; then
-       case $firstarg in
-       *o*)
-           firstarg=`echo "$firstarg" | sed s/o//`
-           tar "$firstarg" "$@" && exit 0
-           ;;
-       esac
-       case $firstarg in
-       *h*)
-           firstarg=`echo "$firstarg" | sed s/h//`
-           tar "$firstarg" "$@" && exit 0
-           ;;
-       esac
-    fi
-
-    echo 1>&2 "\
-WARNING: I can't seem to be able to run \`tar' with the given arguments.
-         You may want to install GNU tar or Free paxutils, or check the
-         command line arguments."
-    exit 1
-    ;;
-
-  *)
-    echo 1>&2 "\
-WARNING: \`$1' is needed, and is $msg.
-         You might have modified some files without having the
-         proper tools for further handling them.  Check the \`README' file,
-         it often tells you about the needed prerequisites for installing
-         this package.  You may also peek at any GNU archive site, in case
-         some other package would contain this missing \`$1' program."
-    exit 1
-    ;;
-esac
+# Also exit now if we it failed (or wasn't found), and '--version' was
+# passed; such an option is passed most likely to detect whether the
+# program is present and works.
+case $2 in --version|--help) exit $st;; esac
+
+# Exit code 63 means version mismatch.  This often happens when the user
+# tries to use an ancient version of a tool on a file that requires a
+# minimum version.
+if test $st -eq 63; then
+  msg="probably too old"
+elif test $st -eq 127; then
+  # Program was missing.
+  msg="missing on your system"
+else
+  # Program was found and executed, but failed.  Give up.
+  exit $st
+fi
 
-exit 0
+perl_URL=http://www.perl.org/
+flex_URL=http://flex.sourceforge.net/
+gnu_software_URL=http://www.gnu.org/software
+
+program_details ()
+{
+  case $1 in
+    aclocal|automake)
+      echo "The '$1' program is part of the GNU Automake package:"
+      echo "<$gnu_software_URL/automake>"
+      echo "It also requires GNU Autoconf, GNU m4 and Perl in order to run:"
+      echo "<$gnu_software_URL/autoconf>"
+      echo "<$gnu_software_URL/m4/>"
+      echo "<$perl_URL>"
+      ;;
+    autoconf|autom4te|autoheader)
+      echo "The '$1' program is part of the GNU Autoconf package:"
+      echo "<$gnu_software_URL/autoconf/>"
+      echo "It also requires GNU m4 and Perl in order to run:"
+      echo "<$gnu_software_URL/m4/>"
+      echo "<$perl_URL>"
+      ;;
+  esac
+}
+
+give_advice ()
+{
+  # Normalize program name to check for.
+  normalized_program=`echo "$1" | sed '
+    s/^gnu-//; t
+    s/^gnu//; t
+    s/^g//; t'`
+
+  printf '%s\n' "'$1' is $msg."
+
+  configure_deps="'configure.ac' or m4 files included by 'configure.ac'"
+  case $normalized_program in
+    autoconf*)
+      echo "You should only need it if you modified 'configure.ac',"
+      echo "or m4 files included by it."
+      program_details 'autoconf'
+      ;;
+    autoheader*)
+      echo "You should only need it if you modified 'acconfig.h' or"
+      echo "$configure_deps."
+      program_details 'autoheader'
+      ;;
+    automake*)
+      echo "You should only need it if you modified 'Makefile.am' or"
+      echo "$configure_deps."
+      program_details 'automake'
+      ;;
+    aclocal*)
+      echo "You should only need it if you modified 'acinclude.m4' or"
+      echo "$configure_deps."
+      program_details 'aclocal'
+      ;;
+   autom4te*)
+      echo "You might have modified some maintainer files that require"
+      echo "the 'automa4te' program to be rebuilt."
+      program_details 'autom4te'
+      ;;
+    bison*|yacc*)
+      echo "You should only need it if you modified a '.y' file."
+      echo "You may want to install the GNU Bison package:"
+      echo "<$gnu_software_URL/bison/>"
+      ;;
+    lex*|flex*)
+      echo "You should only need it if you modified a '.l' file."
+      echo "You may want to install the Fast Lexical Analyzer package:"
+      echo "<$flex_URL>"
+      ;;
+    help2man*)
+      echo "You should only need it if you modified a dependency" \
+           "of a man page."
+      echo "You may want to install the GNU Help2man package:"
+      echo "<$gnu_software_URL/help2man/>"
+    ;;
+    makeinfo*)
+      echo "You should only need it if you modified a '.texi' file, or"
+      echo "any other file indirectly affecting the aspect of the manual."
+      echo "You might want to install the Texinfo package:"
+      echo "<$gnu_software_URL/texinfo/>"
+      echo "The spurious makeinfo call might also be the consequence of"
+      echo "using a buggy 'make' (AIX, DU, IRIX), in which case you might"
+      echo "want to install GNU make:"
+      echo "<$gnu_software_URL/make/>"
+      ;;
+    *)
+      echo "You might have modified some files without having the proper"
+      echo "tools for further handling them.  Check the 'README' file, it"
+      echo "often tells you about the needed prerequisites for installing"
+      echo "this package.  You may also peek at any GNU archive site, in"
+      echo "case some other package contains this missing '$1' program."
+      ;;
+  esac
+}
+
+give_advice "$1" | sed -e '1s/^/WARNING: /' \
+                       -e '2,$s/^/         /' >&2
+
+# Propagate the correct exit status (expected to be 127 for a program
+# not found, 63 for a program that failed due to version mismatch).
+exit $st
 
 # Local variables:
 # eval: (add-hook 'write-file-hooks 'time-stamp)
 # time-stamp-start: "scriptversion="
 # time-stamp-format: "%:y-%02m-%02d.%02H"
-# time-stamp-end: "$"
+# time-stamp-time-zone: "UTC"
+# time-stamp-end: "; # UTC"
 # End:
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/xinit-1.3.2/startx.cpp new/xinit-1.3.3/startx.cpp
--- old/xinit-1.3.2/startx.cpp  2012-01-28 08:12:51.000000000 +0100
+++ new/xinit-1.3.3/startx.cpp  2013-09-08 18:37:33.000000000 +0200
@@ -126,7 +126,9 @@
     defaultserverargs="$defaultserverargs -nolisten tcp"
 fi
 
-if defaults read $X11_PREFS_DOMAIN dpi > /dev/null 2>&1 ; then
+XCOMM The second check is the real one.  The first is to hopefully avoid
+XCOMM needless syslog spamming.
+if defaults read $X11_PREFS_DOMAIN 2> /dev/null | grep -q 'dpi' && defaults 
read $X11_PREFS_DOMAIN dpi > /dev/null 2>&1 ; then
     defaultserverargs="$defaultserverargs -dpi `defaults read 
$X11_PREFS_DOMAIN dpi`"
 fi
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/xinit-1.3.2/xinit.c new/xinit-1.3.3/xinit.c
--- old/xinit-1.3.2/xinit.c     2011-10-20 07:47:36.000000000 +0200
+++ new/xinit-1.3.3/xinit.c     2013-09-08 18:37:33.000000000 +0200
@@ -101,23 +101,23 @@
 static char *program = NULL;
 static Display *xd = NULL;            /* server connection */
 int status;
-int serverpid = -1;
-int clientpid = -1;
+pid_t serverpid = -1;
+pid_t clientpid = -1;
 volatile int gotSignal = 0;
 
 static void Execute(char **vec);
 static Bool waitforserver(void);
-static Bool processTimeout(int timeout, char *string);
-static int startServer(char *server[]);
-static int startClient(char *client[]);
+static Bool processTimeout(int timeout, const char *string);
+static pid_t startServer(char *server[]);
+static pid_t startClient(char *client[]);
 static int ignorexio(Display *dpy);
 static void shutdown(void);
 static void set_environment(void);
 
-static void Fatal(const char *fmt, ...);
-static void Error(const char *fmt, ...);
-static void Fatalx(const char *fmt, ...);
-static void Errorx(const char *fmt, ...);
+static void Fatal(const char *fmt, ...) _X_ATTRIBUTE_PRINTF(1,2) _X_NORETURN;
+static void Error(const char *fmt, ...) _X_ATTRIBUTE_PRINTF(1,2);
+static void Fatalx(const char *fmt, ...) _X_ATTRIBUTE_PRINTF(1,2) _X_NORETURN;
+static void Errorx(const char *fmt, ...) _X_ATTRIBUTE_PRINTF(1,2);
 
 static void
 sigCatch(int sig)
@@ -149,7 +149,7 @@
     register char **sptr = server;
     register char **cptr = client;
     register char **ptr;
-    int pid;
+    pid_t pid;
     int client_given = 0, server_given = 0;
     int client_args_given = 0, server_args_given = 0;
     int start_of_client_args, start_of_server_args;
@@ -364,10 +364,11 @@
  * return TRUE if we timeout waiting for pid to exit, FALSE otherwise.
  */
 static Bool
-processTimeout(int timeout, char *string)
+processTimeout(int timeout, const char *string)
 {
-    int    i = 0, pidfound = -1;
-    static char    *laststring;
+    int    i = 0;
+    pid_t  pidfound = -1;
+    static const char    *laststring;
 
     for (;;) {
         if ((pidfound = waitpid(serverpid, &status, WNOHANG)) == serverpid)
@@ -388,7 +389,7 @@
     return (serverpid != pidfound);
 }
 
-static int
+static pid_t
 startServer(char *server[])
 {
     sigset_t mask, old;
@@ -554,7 +555,7 @@
     free(newwindowpath);
 }
 
-static int
+static pid_t
 startClient(char *client[])
 {
     clientpid = fork();
@@ -627,6 +628,26 @@
 
     if (processTimeout(3, "server to die"))
         Fatalx("X server refuses to die");
+#ifdef __sun
+    else {
+        /* Restore keyboard mode. */
+        serverpid = fork();
+        switch (serverpid) {
+        case 0:
+            execlp ("kbd_mode", "kbd_mode", "-a", NULL);
+            Fatal("Unable to run program \"%s\"", "kbd_mode");
+            break;
+
+        case 1:
+            Error("fork failed");
+            break;
+
+        default:
+            fprintf (stderr, "\r\nRestoring keyboard mode\r\n");
+            processTimeout(1, "kbd_mode");
+        }
+    }
+#endif
 }
 
 static void
@@ -636,7 +657,7 @@
         Fatal("unable to set DISPLAY");
 }
 
-static void
+static void _X_ATTRIBUTE_PRINTF(1,0)
 verror(const char *fmt, va_list ap)
 {
     fprintf(stderr, "%s: ", program);
@@ -644,7 +665,7 @@
     fprintf(stderr, ": %s\n", strerror(errno));
 }
 
-static void
+static void _X_ATTRIBUTE_PRINTF(1,0)
 verrorx(const char *fmt, va_list ap)
 {
     fprintf(stderr, "%s: ", program);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/xinit-1.3.2/xinitrc.cpp new/xinit-1.3.3/xinitrc.cpp
--- old/xinit-1.3.2/xinitrc.cpp 2011-04-26 07:03:42.000000000 +0200
+++ new/xinit-1.3.3/xinitrc.cpp 2013-09-08 18:37:33.000000000 +0200
@@ -85,7 +85,7 @@
 #endif /* !defined(__SCO__)  && !defined(__UNIXWARE__) */
 
 if [ -d XINITDIR/xinitrc.d ] ; then
-       for f in XINITDIR/xinitrc.dXSLASHGLOB.sh ; do
+       for f in XINITDIR/xinitrc.d/?*.sh ; do
                [ -x "$f" ] && . "$f"
        done
        unset f

-- 
To unsubscribe, e-mail: opensuse-commit+unsubscr...@opensuse.org
For additional commands, e-mail: opensuse-commit+h...@opensuse.org

Reply via email to