Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package xf86-input-mouse for 
openSUSE:Factory checked in at 2023-05-05 15:59:08
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/xf86-input-mouse (Old)
 and      /work/SRC/openSUSE:Factory/.xf86-input-mouse.new.1533 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "xf86-input-mouse"

Fri May  5 15:59:08 2023 rev:17 rq:1085001 version:1.9.5

Changes:
--------
--- /work/SRC/openSUSE:Factory/xf86-input-mouse/xf86-input-mouse.changes        
2022-11-03 19:13:09.155643443 +0100
+++ 
/work/SRC/openSUSE:Factory/.xf86-input-mouse.new.1533/xf86-input-mouse.changes  
    2023-05-05 15:59:25.080818324 +0200
@@ -1,0 +2,10 @@
+Fri May  5 09:16:20 UTC 2023 - Stefan Dirsch <[email protected]>
+
+- Update to version 1.9.5
+  * sun_mouse: include more required system headers
+  * sun_mouse: Add RelToAbs option to convert relative events to absolute
+  * sun_mouse: remove entry from vuidMouseList in DEVICE_CLOSE
+  * Remove "All rights reserved" from Oracle copyright notices
+  * Rearrange includes to fix build on OmniOS. Include unistd.h for ioctl(2).
+
+-------------------------------------------------------------------

Old:
----
  xf86-input-mouse-1.9.4.tar.xz

New:
----
  xf86-input-mouse-1.9.5.tar.xz

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

Other differences:
------------------
++++++ xf86-input-mouse.spec ++++++
--- /var/tmp/diff_new_pack.71mfVv/_old  2023-05-05 15:59:25.584821211 +0200
+++ /var/tmp/diff_new_pack.71mfVv/_new  2023-05-05 15:59:25.588821234 +0200
@@ -1,7 +1,7 @@
 #
 # spec file for package xf86-input-mouse
 #
-# Copyright (c) 2022 SUSE LLC
+# Copyright (c) 2023 SUSE LLC
 #
 # 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:           xf86-input-mouse
-Version:        1.9.4
+Version:        1.9.5
 Release:        0
 Summary:        Mouse input driver for the Xorg X server
 License:        MIT

++++++ xf86-input-mouse-1.9.4.tar.xz -> xf86-input-mouse-1.9.5.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/xf86-input-mouse-1.9.4/COPYING 
new/xf86-input-mouse-1.9.5/COPYING
--- old/xf86-input-mouse-1.9.4/COPYING  2022-11-02 03:44:34.000000000 +0100
+++ new/xf86-input-mouse-1.9.5/COPYING  2023-05-05 02:25:20.000000000 +0200
@@ -1,5 +1,4 @@
-Copyright (c) 2004-2005, 2008-2010, Oracle and/or its affiliates.
-All rights reserved.
+Copyright (c) 2004, 2022, Oracle and/or its affiliates.
 Copyright 2012 Red Hat, Inc.
 
 Permission is hereby granted, free of charge, to any person obtaining a
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/xf86-input-mouse-1.9.4/ChangeLog 
new/xf86-input-mouse-1.9.5/ChangeLog
--- old/xf86-input-mouse-1.9.4/ChangeLog        2022-11-02 03:44:48.000000000 
+0100
+++ new/xf86-input-mouse-1.9.5/ChangeLog        2023-05-05 02:25:34.000000000 
+0200
@@ -1,3 +1,71 @@
+commit f59e8cb5b47fa989d3c9a0ca104d7261a94324db
+Author: Alan Coopersmith <[email protected]>
+Date:   Thu May 4 17:17:54 2023 -0700
+
+    xf86-input-mouse 1.9.5
+    
+    Signed-off-by: Alan Coopersmith <[email protected]>
+
+commit cad360554cdab324fc828cb5ffa47f610ca796c4
+Author: Alan Coopersmith <[email protected]>
+Date:   Sat Feb 25 09:07:15 2023 -0800
+
+    Remove "All rights reserved" from Oracle copyright notices
+    
+    Oracle no longer includes this term in our copyright & license notices.
+    
+    Signed-off-by: Alan Coopersmith <[email protected]>
+
+commit 52073e2edc29059a5142d4460c5edc8739981e03
+Author: Alan Coopersmith <[email protected]>
+Date:   Wed Nov 9 17:01:47 2022 -0800
+
+    sun_mouse: remove entry from vuidMouseList in DEVICE_CLOSE
+    
+    Originally written by [email protected] to fix Oracle Bug 17429216:
+    "global vuidMouseList should not keep info for removed mouse device"
+    
+    "During the testing for bug#17251473, I often see the mouse hang in X.
+     By debugging, I get that there seems something wrong in mouse_drv.so -
+     when a mouse is disconnected, the global vuidMouseList does not cleanup
+     the mouse's recorded info. So if a newly inserted mouse allocates a
+     input info pInfo which happens to have the same memory address as
+     previous pInfo, the driver would go wrong."
+    
+    Signed-off-by: Alan Coopersmith <[email protected]>
+
+commit cd5b383c3f6c5b7ffa19f8e6ebb7d6551898a98b
+Author: Alan Coopersmith <[email protected]>
+Date:   Wed Nov 9 16:27:42 2022 -0800
+
+    sun_mouse: Add RelToAbs option to convert relative events to absolute
+    
+    Enabled automatically for the Sun ILOM device, to avoid acceleration
+    that causes the Remote KVMS mouse cursor to become unaligned with the
+    X mouse cursor.
+    
+    Code originally written by [email protected] in 2013 to fix
+    Oracle bug 15798251 - SUNBT7177072 "actual mouse pointer is off from
+    the cursor on remote window"
+    
+    Signed-off-by: Alan Coopersmith <[email protected]>
+
+commit 5f63ab04338fd811c610ae7617757ede52471316
+Author: Alan Coopersmith <[email protected]>
+Date:   Wed Nov 2 14:45:25 2022 -0700
+
+    sun_mouse: include more required system headers
+    
+    Signed-off-by: Alan Coopersmith <[email protected]>
+
+commit b99e91aafb66790d3158c068c321e40c19c0571d
+Author: Thomas Klausner <[email protected]>
+Date:   Wed Nov 2 09:11:33 2022 +0100
+
+    Rearrange includes to fix build on OmniOS. Include unistd.h for ioctl(2).
+    
+    Signed-off-by: Thomas Klausner <[email protected]>
+
 commit ecd043f1de248cc03d240f1ae5850ce4f9f159a4
 Author: Alan Coopersmith <[email protected]>
 Date:   Tue Nov 1 19:30:06 2022 -0700
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/xf86-input-mouse-1.9.4/aclocal.m4 
new/xf86-input-mouse-1.9.5/aclocal.m4
--- old/xf86-input-mouse-1.9.4/aclocal.m4       2022-11-02 03:44:37.000000000 
+0100
+++ new/xf86-input-mouse-1.9.5/aclocal.m4       2023-05-05 02:25:23.000000000 
+0200
@@ -1426,7 +1426,7 @@
 
 dnl xorg-macros.m4.  Generated from xorg-macros.m4.in xorgversion.m4 by 
configure.
 dnl
-dnl Copyright (c) 2005, 2015, Oracle and/or its affiliates. All rights 
reserved.
+dnl Copyright (c) 2005, 2023, Oracle and/or its affiliates.
 dnl
 dnl Permission is hereby granted, free of charge, to any person obtaining a
 dnl copy of this software and associated documentation files (the "Software"),
@@ -1463,7 +1463,7 @@
 # See the "minimum version" comment for each macro you use to see what
 # version you require.
 m4_defun([XORG_MACROS_VERSION],[
-m4_define([vers_have], [1.19.3])
+m4_define([vers_have], [1.20.0])
 m4_define([maj_have], m4_substr(vers_have, 0, m4_index(vers_have, [.])))
 m4_define([maj_needed], m4_substr([$1], 0, m4_index([$1], [.])))
 m4_if(m4_cmp(maj_have, maj_needed), 0,,
@@ -1793,7 +1793,7 @@
 # Documentation tools are not always available on all platforms and sometimes
 # not at the appropriate level. This macro enables a module to test for the
 # presence of the tool and obtain it's path in separate variables. Coupled with
-# the --with-xmlto option, it allows maximum flexibilty in making decisions
+# the --with-xmlto option, it allows maximum flexibility in making decisions
 # as whether or not to use the xmlto package. When DEFAULT is not specified,
 # --with-xmlto assumes 'auto'.
 #
@@ -2007,7 +2007,7 @@
 # Documentation tools are not always available on all platforms and sometimes
 # not at the appropriate level. This macro enables a module to test for the
 # presence of the tool and obtain it's path in separate variables. Coupled with
-# the --with-asciidoc option, it allows maximum flexibilty in making decisions
+# the --with-asciidoc option, it allows maximum flexibility in making decisions
 # as whether or not to use the asciidoc package. When DEFAULT is not specified,
 # --with-asciidoc assumes 'auto'.
 #
@@ -2077,7 +2077,7 @@
 # Documentation tools are not always available on all platforms and sometimes
 # not at the appropriate level. This macro enables a module to test for the
 # presence of the tool and obtain it's path in separate variables. Coupled with
-# the --with-doxygen option, it allows maximum flexibilty in making decisions
+# the --with-doxygen option, it allows maximum flexibility in making decisions
 # as whether or not to use the doxygen package. When DEFAULT is not specified,
 # --with-doxygen assumes 'auto'.
 #
@@ -2161,7 +2161,7 @@
 # Documentation tools are not always available on all platforms and sometimes
 # not at the appropriate level. This macro enables a module to test for the
 # presence of the tool and obtain it's path in separate variables. Coupled with
-# the --with-groff option, it allows maximum flexibilty in making decisions
+# the --with-groff option, it allows maximum flexibility in making decisions
 # as whether or not to use the groff package. When DEFAULT is not specified,
 # --with-groff assumes 'auto'.
 #
@@ -2269,7 +2269,7 @@
 # Documentation tools are not always available on all platforms and sometimes
 # not at the appropriate level. This macro enables a module to test for the
 # presence of the tool and obtain it's path in separate variables. Coupled with
-# the --with-fop option, it allows maximum flexibilty in making decisions
+# the --with-fop option, it allows maximum flexibility in making decisions
 # as whether or not to use the fop package. When DEFAULT is not specified,
 # --with-fop assumes 'auto'.
 #
@@ -2363,7 +2363,7 @@
 # Documentation tools are not always available on all platforms and sometimes
 # not at the appropriate level. This macro enables a module to test for the
 # presence of the tool and obtain it's path in separate variables. Coupled with
-# the --with-ps2pdf option, it allows maximum flexibilty in making decisions
+# the --with-ps2pdf option, it allows maximum flexibility in making decisions
 # as whether or not to use the ps2pdf package. When DEFAULT is not specified,
 # --with-ps2pdf assumes 'auto'.
 #
@@ -2418,7 +2418,7 @@
 # not at the appropriate level. This macro enables a builder to skip all
 # documentation targets except traditional man pages.
 # Combined with the specific tool checking macros XORG_WITH_*, it provides
-# maximum flexibilty in controlling documentation building.
+# maximum flexibility in controlling documentation building.
 # Refer to:
 # XORG_WITH_XMLTO         --with-xmlto
 # XORG_WITH_ASCIIDOC      --with-asciidoc
@@ -2451,7 +2451,7 @@
 #
 # This macro enables a builder to skip all developer documentation.
 # Combined with the specific tool checking macros XORG_WITH_*, it provides
-# maximum flexibilty in controlling documentation building.
+# maximum flexibility in controlling documentation building.
 # Refer to:
 # XORG_WITH_XMLTO         --with-xmlto
 # XORG_WITH_ASCIIDOC      --with-asciidoc
@@ -2484,7 +2484,7 @@
 #
 # This macro enables a builder to skip all functional specification targets.
 # Combined with the specific tool checking macros XORG_WITH_*, it provides
-# maximum flexibilty in controlling documentation building.
+# maximum flexibility in controlling documentation building.
 # Refer to:
 # XORG_WITH_XMLTO         --with-xmlto
 # XORG_WITH_ASCIIDOC      --with-asciidoc
@@ -2959,7 +2959,11 @@
 AC_DEFUN([XORG_COMPILER_BRAND], [
 AC_LANG_CASE(
        [C], [
-               AC_REQUIRE([AC_PROG_CC_C99])
+               dnl autoconf-2.70 folded AC_PROG_CC_C99 into AC_PROG_CC
+               dnl and complains that AC_PROG_CC_C99 is obsolete
+               m4_version_prereq([2.70],
+                       [AC_REQUIRE([AC_PROG_CC])],
+                       [AC_REQUIRE([AC_PROG_CC_C99])])
        ],
        [C++], [
                AC_REQUIRE([AC_PROG_CXX])
@@ -2975,7 +2979,7 @@
 # Minimum version: 1.16.0
 #
 # Test if the compiler works when passed the given flag as a command line 
argument.
-# If it succeeds, the flag is appeneded to the given variable.  If not, it 
tries the
+# If it succeeds, the flag is appended to the given variable.  If not, it 
tries the
 # next flag in the list until there are no more options.
 #
 # Note that this does not guarantee that the compiler supports the flag as some
@@ -2991,7 +2995,11 @@
 
 AC_LANG_CASE(
        [C], [
-               AC_REQUIRE([AC_PROG_CC_C99])
+               dnl autoconf-2.70 folded AC_PROG_CC_C99 into AC_PROG_CC
+               dnl and complains that AC_PROG_CC_C99 is obsolete
+               m4_version_prereq([2.70],
+                       [AC_REQUIRE([AC_PROG_CC])],
+                       [AC_REQUIRE([AC_PROG_CC_C99])])
                define([PREFIX], [C])
                define([CACHE_PREFIX], [cc])
                define([COMPILER], [$CC])
@@ -3132,7 +3140,7 @@
 # XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wcast-align])
 # XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wcast-qual])
 
-# Turn some warnings into errors, so we don't accidently get successful builds
+# Turn some warnings into errors, so we don't accidentally get successful 
builds
 # when there are problems that should be fixed.
 
 if test "x$SELECTIVE_WERROR" = "xyes" ; then
@@ -3241,23 +3249,35 @@
 AC_LANG_CASE([C], AC_SUBST([CWARNFLAGS]))
 ]) # XORG_STRICT_OPTION
 
+# XORG_DEFAULT_NOCODE_OPTIONS
+# ---------------------------
+# Minimum version: 1.20.0
+#
+# Defines default options for X.Org modules which don't compile code,
+# such as fonts, bitmaps, cursors, and docs.
+#
+AC_DEFUN([XORG_DEFAULT_NOCODE_OPTIONS], [
+AC_REQUIRE([AC_PROG_INSTALL])
+XORG_RELEASE_VERSION
+XORG_CHANGELOG
+XORG_INSTALL
+XORG_MANPAGE_SECTIONS
+m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])],
+    [AC_SUBST([AM_DEFAULT_VERBOSITY], [1])])
+]) # XORG_DEFAULT_NOCODE_OPTIONS
+
 # XORG_DEFAULT_OPTIONS
 # --------------------
 # Minimum version: 1.3.0
 #
-# Defines default options for X.Org modules.
+# Defines default options for X.Org modules which compile code.
 #
 AC_DEFUN([XORG_DEFAULT_OPTIONS], [
 AC_REQUIRE([AC_PROG_INSTALL])
 XORG_COMPILER_FLAGS
 XORG_CWARNFLAGS
 XORG_STRICT_OPTION
-XORG_RELEASE_VERSION
-XORG_CHANGELOG
-XORG_INSTALL
-XORG_MANPAGE_SECTIONS
-m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])],
-    [AC_SUBST([AM_DEFAULT_VERBOSITY], [1])])
+XORG_DEFAULT_NOCODE_OPTIONS
 ]) # XORG_DEFAULT_OPTIONS
 
 # XORG_INSTALL()
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/xf86-input-mouse-1.9.4/config.guess 
new/xf86-input-mouse-1.9.5/config.guess
--- old/xf86-input-mouse-1.9.4/config.guess     2022-11-02 03:44:41.000000000 
+0100
+++ new/xf86-input-mouse-1.9.5/config.guess     2023-05-05 02:25:27.000000000 
+0200
@@ -1,14 +1,14 @@
 #! /bin/sh
 # Attempt to guess a canonical system name.
-#   Copyright 1992-2021 Free Software Foundation, Inc.
+#   Copyright 1992-2023 Free Software Foundation, Inc.
 
 # shellcheck disable=SC2006,SC2268 # see below for rationale
 
-timestamp='2021-06-03'
+timestamp='2023-01-01'
 
 # This file is free software; you can redistribute it and/or modify it
 # under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 3 of the License, or
+# the Free Software Foundation, either version 3 of the License, or
 # (at your option) any later version.
 #
 # This program is distributed in the hope that it will be useful, but
@@ -60,7 +60,7 @@
 GNU config.guess ($timestamp)
 
 Originally written by Per Bothner.
-Copyright 1992-2021 Free Software Foundation, Inc.
+Copyright 1992-2023 Free Software Foundation, Inc.
 
 This is free software; see the source for copying conditions.  There is NO
 warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
@@ -437,7 +437,7 @@
        # This test works for both compilers.
        if test "$CC_FOR_BUILD" != no_compiler_found; then
            if (echo '#ifdef __amd64'; echo IS_64BIT_ARCH; echo '#endif') | \
-               (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | \
+               (CCOPTS="" $CC_FOR_BUILD -m64 -E - 2>/dev/null) | \
                grep IS_64BIT_ARCH >/dev/null
            then
                SUN_ARCH=x86_64
@@ -929,6 +929,9 @@
     i*:PW*:*)
        GUESS=$UNAME_MACHINE-pc-pw32
        ;;
+    *:SerenityOS:*:*)
+        GUESS=$UNAME_MACHINE-pc-serenity
+        ;;
     *:Interix*:*)
        case $UNAME_MACHINE in
            x86)
@@ -963,6 +966,12 @@
        GNU_REL=`echo "$UNAME_RELEASE" | sed -e 's/[-(].*//'`
        GUESS=$UNAME_MACHINE-unknown-$GNU_SYS$GNU_REL-$LIBC
        ;;
+    x86_64:[Mm]anagarm:*:*|i?86:[Mm]anagarm:*:*)
+       GUESS="$UNAME_MACHINE-pc-managarm-mlibc"
+       ;;
+    *:[Mm]anagarm:*:*)
+       GUESS="$UNAME_MACHINE-unknown-managarm-mlibc"
+       ;;
     *:Minix:*:*)
        GUESS=$UNAME_MACHINE-unknown-minix
        ;;
@@ -1033,7 +1042,7 @@
     k1om:Linux:*:*)
        GUESS=$UNAME_MACHINE-unknown-linux-$LIBC
        ;;
-    loongarch32:Linux:*:* | loongarch64:Linux:*:* | loongarchx32:Linux:*:*)
+    loongarch32:Linux:*:* | loongarch64:Linux:*:*)
        GUESS=$UNAME_MACHINE-unknown-linux-$LIBC
        ;;
     m32r*:Linux:*:*)
@@ -1148,16 +1157,27 @@
        ;;
     x86_64:Linux:*:*)
        set_cc_for_build
+       CPU=$UNAME_MACHINE
        LIBCABI=$LIBC
        if test "$CC_FOR_BUILD" != no_compiler_found; then
-           if (echo '#ifdef __ILP32__'; echo IS_X32; echo '#endif') | \
-               (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | \
-               grep IS_X32 >/dev/null
-           then
-               LIBCABI=${LIBC}x32
-           fi
+           ABI=64
+           sed 's/^        //' << EOF > "$dummy.c"
+           #ifdef __i386__
+           ABI=x86
+           #else
+           #ifdef __ILP32__
+           ABI=x32
+           #endif
+           #endif
+EOF
+           cc_set_abi=`$CC_FOR_BUILD -E "$dummy.c" 2>/dev/null | grep '^ABI' | 
sed 's, ,,g'`
+           eval "$cc_set_abi"
+           case $ABI in
+               x86) CPU=i686 ;;
+               x32) LIBCABI=${LIBC}x32 ;;
+           esac
        fi
-       GUESS=$UNAME_MACHINE-pc-linux-$LIBCABI
+       GUESS=$CPU-pc-linux-$LIBCABI
        ;;
     xtensa*:Linux:*:*)
        GUESS=$UNAME_MACHINE-unknown-linux-$LIBC
@@ -1364,8 +1384,11 @@
     BePC:Haiku:*:*)    # Haiku running on Intel PC compatible.
        GUESS=i586-pc-haiku
        ;;
-    x86_64:Haiku:*:*)
-       GUESS=x86_64-unknown-haiku
+    ppc:Haiku:*:*)     # Haiku running on Apple PowerPC
+       GUESS=powerpc-apple-haiku
+       ;;
+    *:Haiku:*:*)       # Haiku modern gcc (not bound by BeOS compat)
+       GUESS=$UNAME_MACHINE-unknown-haiku
        ;;
     SX-4:SUPER-UX:*:*)
        GUESS=sx4-nec-superux$UNAME_RELEASE
@@ -1522,6 +1545,9 @@
     i*86:rdos:*:*)
        GUESS=$UNAME_MACHINE-pc-rdos
        ;;
+    i*86:Fiwix:*:*)
+       GUESS=$UNAME_MACHINE-pc-fiwix
+       ;;
     *:AROS:*:*)
        GUESS=$UNAME_MACHINE-unknown-aros
        ;;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/xf86-input-mouse-1.9.4/config.sub 
new/xf86-input-mouse-1.9.5/config.sub
--- old/xf86-input-mouse-1.9.4/config.sub       2022-11-02 03:44:41.000000000 
+0100
+++ new/xf86-input-mouse-1.9.5/config.sub       2023-05-05 02:25:27.000000000 
+0200
@@ -1,14 +1,14 @@
 #! /bin/sh
 # Configuration validation subroutine script.
-#   Copyright 1992-2021 Free Software Foundation, Inc.
+#   Copyright 1992-2023 Free Software Foundation, Inc.
 
 # shellcheck disable=SC2006,SC2268 # see below for rationale
 
-timestamp='2021-08-14'
+timestamp='2023-01-21'
 
 # This file is free software; you can redistribute it and/or modify it
 # under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 3 of the License, or
+# the Free Software Foundation, either version 3 of the License, or
 # (at your option) any later version.
 #
 # This program is distributed in the hope that it will be useful, but
@@ -76,7 +76,7 @@
 version="\
 GNU config.sub ($timestamp)
 
-Copyright 1992-2021 Free Software Foundation, Inc.
+Copyright 1992-2023 Free Software Foundation, Inc.
 
 This is free software; see the source for copying conditions.  There is NO
 warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
@@ -145,7 +145,7 @@
                        nto-qnx* | linux-* | uclinux-uclibc* \
                        | uclinux-gnu* | kfreebsd*-gnu* | knetbsd*-gnu* | 
netbsd*-gnu* \
                        | netbsd*-eabi* | kopensolaris*-gnu* | cloudabi*-eabi* \
-                       | storm-chaos* | os2-emx* | rtmk-nova*)
+                       | storm-chaos* | os2-emx* | rtmk-nova* | managarm-*)
                                basic_machine=$field1
                                basic_os=$maybe_os
                                ;;
@@ -1020,6 +1020,11 @@
                ;;
 
        # Here we normalize CPU types with a missing or matching vendor
+       armh-unknown | armh-alt)
+               cpu=armv7l
+               vendor=alt
+               basic_os=${basic_os:-linux-gnueabihf}
+               ;;
        dpx20-unknown | dpx20-bull)
                cpu=rs6000
                vendor=bull
@@ -1070,7 +1075,7 @@
        pentium-* | p5-* | k5-* | k6-* | nexgen-* | viac3-*)
                cpu=i586
                ;;
-       pentiumpro-* | p6-* | 6x86-* | athlon-* | athalon_*-*)
+       pentiumpro-* | p6-* | 6x86-* | athlon-* | athlon_*-*)
                cpu=i686
                ;;
        pentiumii-* | pentium2-* | pentiumiii-* | pentium3-*)
@@ -1121,7 +1126,7 @@
        xscale-* | xscalee[bl]-*)
                cpu=`echo "$cpu" | sed 's/^xscale/arm/'`
                ;;
-       arm64-*)
+       arm64-* | aarch64le-*)
                cpu=aarch64
                ;;
 
@@ -1202,7 +1207,7 @@
                        | k1om \
                        | le32 | le64 \
                        | lm32 \
-                       | loongarch32 | loongarch64 | loongarchx32 \
+                       | loongarch32 | loongarch64 \
                        | m32c | m32r | m32rle \
                        | m5200 | m68000 | m680[012346]0 | m68360 | m683?2 | 
m68k \
                        | m6811 | m68hc11 | m6812 | m68hc12 | m68hcs12x \
@@ -1304,7 +1309,7 @@
 if test x$basic_os != x
 then
 
-# First recognize some ad-hoc caes, or perhaps split kernel-os, or else just
+# First recognize some ad-hoc cases, or perhaps split kernel-os, or else just
 # set os.
 case $basic_os in
        gnu/linux*)
@@ -1336,6 +1341,10 @@
                kernel=linux
                os=`echo "$basic_os" | sed -e 's|linux|gnu|'`
                ;;
+       managarm*)
+               kernel=managarm
+               os=`echo "$basic_os" | sed -e 's|managarm|mlibc|'`
+               ;;
        *)
                kernel=
                os=$basic_os
@@ -1748,7 +1757,8 @@
             | skyos* | haiku* | rdos* | toppers* | drops* | es* \
             | onefs* | tirtos* | phoenix* | fuchsia* | redox* | bme* \
             | midnightbsd* | amdhsa* | unleashed* | emscripten* | wasi* \
-            | nsk* | powerunix* | genode* | zvmoe* | qnx* | emx* | zephyr*)
+            | nsk* | powerunix* | genode* | zvmoe* | qnx* | emx* | zephyr* \
+            | fiwix* | mlibc* )
                ;;
        # This one is extra strict with allowed versions
        sco3.2v2 | sco3.2v[4-9]* | sco5v6*)
@@ -1756,6 +1766,9 @@
                ;;
        none)
                ;;
+       kernel* )
+               # Restricted further below
+               ;;
        *)
                echo Invalid configuration \`"$1"\': OS \`"$os"\' not 
recognized 1>&2
                exit 1
@@ -1766,16 +1779,26 @@
 # (given a valid OS), if there is a kernel.
 case $kernel-$os in
        linux-gnu* | linux-dietlibc* | linux-android* | linux-newlib* \
-                  | linux-musl* | linux-relibc* | linux-uclibc* )
+                  | linux-musl* | linux-relibc* | linux-uclibc* | linux-mlibc* 
)
                ;;
        uclinux-uclibc* )
                ;;
-       -dietlibc* | -newlib* | -musl* | -relibc* | -uclibc* )
+       managarm-mlibc* | managarm-kernel* )
+               ;;
+       -dietlibc* | -newlib* | -musl* | -relibc* | -uclibc* | -mlibc* )
                # These are just libc implementations, not actual OSes, and thus
                # require a kernel.
                echo "Invalid configuration \`$1': libc \`$os' needs explicit 
kernel." 1>&2
                exit 1
                ;;
+       -kernel* )
+               echo "Invalid configuration \`$1': \`$os' needs explicit 
kernel." 1>&2
+               exit 1
+               ;;
+       *-kernel* )
+               echo "Invalid configuration \`$1': \`$kernel' does not support 
\`$os'." 1>&2
+               exit 1
+               ;;
        kfreebsd*-gnu* | kopensolaris*-gnu*)
                ;;
        vxworks-simlinux | vxworks-simwindows | vxworks-spe)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/xf86-input-mouse-1.9.4/configure 
new/xf86-input-mouse-1.9.5/configure
--- old/xf86-input-mouse-1.9.4/configure        2022-11-02 03:44:40.000000000 
+0100
+++ new/xf86-input-mouse-1.9.5/configure        2023-05-05 02:25:26.000000000 
+0200
@@ -1,6 +1,6 @@
 #! /bin/sh
 # Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.71 for xf86-input-mouse 1.9.4.
+# Generated by GNU Autoconf 2.71 for xf86-input-mouse 1.9.5.
 #
 # Report bugs to 
<https://gitlab.freedesktop.org/xorg/driver/xf86-input-mouse/-/issues>.
 #
@@ -622,8 +622,8 @@
 # Identity of this package.
 PACKAGE_NAME='xf86-input-mouse'
 PACKAGE_TARNAME='xf86-input-mouse'
-PACKAGE_VERSION='1.9.4'
-PACKAGE_STRING='xf86-input-mouse 1.9.4'
+PACKAGE_VERSION='1.9.5'
+PACKAGE_STRING='xf86-input-mouse 1.9.5'
 
PACKAGE_BUGREPORT='https://gitlab.freedesktop.org/xorg/driver/xf86-input-mouse/-/issues'
 PACKAGE_URL=''
 
@@ -1396,7 +1396,7 @@
   # Omit some internal or obsolete options to make the list less imposing.
   # This message is too long to be a string in the A/UX 3.1 sh.
   cat <<_ACEOF
-\`configure' configures xf86-input-mouse 1.9.4 to adapt to many kinds of 
systems.
+\`configure' configures xf86-input-mouse 1.9.5 to adapt to many kinds of 
systems.
 
 Usage: $0 [OPTION]... [VAR=VALUE]...
 
@@ -1468,7 +1468,7 @@
 
 if test -n "$ac_init_help"; then
   case $ac_init_help in
-     short | recursive ) echo "Configuration of xf86-input-mouse 1.9.4:";;
+     short | recursive ) echo "Configuration of xf86-input-mouse 1.9.5:";;
    esac
   cat <<\_ACEOF
 
@@ -1599,7 +1599,7 @@
 test -n "$ac_init_help" && exit $ac_status
 if $ac_init_version; then
   cat <<\_ACEOF
-xf86-input-mouse configure 1.9.4
+xf86-input-mouse configure 1.9.5
 generated by GNU Autoconf 2.71
 
 Copyright (C) 2021 Free Software Foundation, Inc.
@@ -1869,7 +1869,7 @@
 This file contains any messages produced by compilers while
 running configure, to aid debugging if configure makes a mistake.
 
-It was created by xf86-input-mouse $as_me 1.9.4, which was
+It was created by xf86-input-mouse $as_me 1.9.5, which was
 generated by GNU Autoconf 2.71.  Invocation command line was
 
   $ $0$ac_configure_args_raw
@@ -4437,7 +4437,7 @@
 
 # Define the identity of the package.
  PACKAGE='xf86-input-mouse'
- VERSION='1.9.4'
+ VERSION='1.9.5'
 
 
 printf "%s\n" "#define PACKAGE \"$PACKAGE\"" >>confdefs.h
@@ -12816,7 +12816,6 @@
 
 
 
-
 { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $CC options needed 
to detect all undeclared functions" >&5
 printf %s "checking for $CC options needed to detect all undeclared 
functions... " >&6; }
 if test ${ac_cv_c_undeclared_builtin_options+y}
@@ -15302,7 +15301,7 @@
 # XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wcast-align])
 # XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wcast-qual])
 
-# Turn some warnings into errors, so we don't accidently get successful builds
+# Turn some warnings into errors, so we don't accidentally get successful 
builds
 # when there are problems that should be fixed.
 
 if test "x$SELECTIVE_WERROR" = "xyes" ; then
@@ -19157,6 +19156,8 @@
 
 
 
+
+
 cat >>confdefs.h <<_ACEOF
 #define PACKAGE_VERSION_MAJOR `echo $PACKAGE_VERSION | cut -d . -f 1`
 _ACEOF
@@ -19363,6 +19364,7 @@
 
 
 
+
 # Check whether --with-lint was given.
 if test ${with_lint+y}
 then :
@@ -20152,7 +20154,7 @@
 # report actual input values of CONFIG_FILES etc. instead of their
 # values after options handling.
 ac_log="
-This file was extended by xf86-input-mouse $as_me 1.9.4, which was
+This file was extended by xf86-input-mouse $as_me 1.9.5, which was
 generated by GNU Autoconf 2.71.  Invocation command line was
 
   CONFIG_FILES    = $CONFIG_FILES
@@ -20220,7 +20222,7 @@
 cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
 ac_cs_config='$ac_cs_config_escaped'
 ac_cs_version="\\
-xf86-input-mouse config.status 1.9.4
+xf86-input-mouse config.status 1.9.5
 configured by $0, generated by GNU Autoconf 2.71,
   with options \\"\$ac_cs_config\\"
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/xf86-input-mouse-1.9.4/configure.ac 
new/xf86-input-mouse-1.9.5/configure.ac
--- old/xf86-input-mouse-1.9.4/configure.ac     2022-11-02 03:44:34.000000000 
+0100
+++ new/xf86-input-mouse-1.9.5/configure.ac     2023-05-05 02:25:20.000000000 
+0200
@@ -23,7 +23,7 @@
 # Initialize Autoconf
 AC_PREREQ([2.60])
 AC_INIT([xf86-input-mouse],
-        [1.9.4],
+        [1.9.5],
         [https://gitlab.freedesktop.org/xorg/driver/xf86-input-mouse/-/issues],
         [xf86-input-mouse])
 AC_CONFIG_SRCDIR([Makefile.am])
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/xf86-input-mouse-1.9.4/include/xf86-mouse-properties.h 
new/xf86-input-mouse-1.9.5/include/xf86-mouse-properties.h
--- old/xf86-input-mouse-1.9.4/include/xf86-mouse-properties.h  2022-11-02 
03:44:34.000000000 +0100
+++ new/xf86-input-mouse-1.9.5/include/xf86-mouse-properties.h  2023-05-05 
02:25:20.000000000 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2012, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2012, Oracle and/or its affiliates.
  *
  * Permission is hereby granted, free of charge, to any person obtaining a
  * copy of this software and associated documentation files (the "Software"),
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/xf86-input-mouse-1.9.4/man/Makefile.am 
new/xf86-input-mouse-1.9.5/man/Makefile.am
--- old/xf86-input-mouse-1.9.4/man/Makefile.am  2022-11-02 03:44:34.000000000 
+0100
+++ new/xf86-input-mouse-1.9.5/man/Makefile.am  2023-05-05 02:25:20.000000000 
+0200
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 2005, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2005, Oracle and/or its affiliates.
 #
 # Permission is hereby granted, free of charge, to any person obtaining a
 # copy of this software and associated documentation files (the "Software"),
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/xf86-input-mouse-1.9.4/man/Makefile.in 
new/xf86-input-mouse-1.9.5/man/Makefile.in
--- old/xf86-input-mouse-1.9.4/man/Makefile.in  2022-11-02 03:44:41.000000000 
+0100
+++ new/xf86-input-mouse-1.9.5/man/Makefile.in  2023-05-05 02:25:27.000000000 
+0200
@@ -15,7 +15,7 @@
 @SET_MAKE@
 
 #
-# Copyright (c) 2005, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2005, Oracle and/or its affiliates.
 #
 # Permission is hereby granted, free of charge, to any person obtaining a
 # copy of this software and associated documentation files (the "Software"),
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/xf86-input-mouse-1.9.4/src/sun_mouse.c 
new/xf86-input-mouse-1.9.5/src/sun_mouse.c
--- old/xf86-input-mouse-1.9.4/src/sun_mouse.c  2022-11-02 03:44:34.000000000 
+0100
+++ new/xf86-input-mouse-1.9.5/src/sun_mouse.c  2023-05-05 02:25:20.000000000 
+0200
@@ -1,6 +1,5 @@
 /*
- * Copyright (c) 2004-2005, 2008-2010, Oracle and/or its affiliates.
- * All rights reserved.
+ * Copyright (c) 2004, 2022, Oracle and/or its affiliates.
  *
  * Permission is hereby granted, free of charge, to any person obtaining a
  * copy of this software and associated documentation files (the "Software"),
@@ -55,6 +54,12 @@
 #include <xorg-config.h>
 #endif
 
+#include <unistd.h> /* for ioctl(2) */
+#include <sys/stropts.h>
+#include <sys/vuid_event.h>
+#include <sys/msio.h>
+#include <fcntl.h>
+#include <errno.h>
 #include "xorg-server.h"
 #include "xf86.h"
 #include "xf86_OSlib.h"
@@ -62,9 +67,6 @@
 #include "xisb.h"
 #include "mipointer.h"
 #include "xf86Crtc.h"
-#include <sys/stropts.h>
-#include <sys/vuid_event.h>
-#include <sys/msio.h>
 
 /* Wheel mouse support in VUID drivers in Solaris 9 updates & Solaris 10 */
 #ifdef WHEEL_DEVID /* Defined in vuid_event.h if VUID wheel support present */
@@ -74,6 +76,8 @@
 # include <sys/vuid_wheel.h>
 #endif
 
+#include <libdevinfo.h>
+
 /* Support for scaling absolute coordinates to screen size in
  * Solaris 10 updates and beyond */
 #if !defined(HAVE_ABSOLUTE_MOUSE_SCALING)
@@ -109,6 +113,9 @@
     Ms_screen_resolution         absres;
 #endif
     OsTimerPtr          remove_timer;   /* Callback for removal on ENODEV */
+    int                 relToAbs;
+    int                 absX;
+    int                 absY;
 } VuidMseRec, *VuidMsePtr;
 
 static VuidMsePtr       vuidMouseList = NULL;
@@ -116,6 +123,9 @@
 static int  vuidMouseProc(DeviceIntPtr pPointer, int what);
 static void vuidReadInput(InputInfoPtr pInfo);
 
+static int CheckRelToAbs(InputInfoPtr pInfo);
+static int CheckRelToAbsWalker(di_node_t node, void *arg);
+
 #ifdef HAVE_ABSOLUTE_MOUSE_SCALING
 # include "compat-api.h"
 
@@ -224,6 +234,11 @@
 
     pVuidMse->buffer = (unsigned char *)&pVuidMse->event;
     pVuidMse->strmod = xf86SetStrOption(pInfo->options, "StreamsModule", NULL);
+    pVuidMse->relToAbs = xf86SetIntOption(pInfo->options, "RelToAbs", -1);
+    if (pVuidMse->relToAbs == -1)
+        pVuidMse->relToAbs = CheckRelToAbs(pInfo);
+    pVuidMse->absX = 0;
+    pVuidMse->absY = 0;
 
     /* Setup the local procs. */
     pVuidMse->wrapped_device_control = pInfo->device_control;
@@ -245,6 +260,120 @@
     return TRUE;
 }
 
+/*
+ * It seems that the mouse that is presented by the Emulex ILOM
+ * device (USB 0x430, 0xa101 and USB 0x430, 0xa102) sends relative
+ * mouse movements.  But relative mouse movements are subject to
+ * acceleration.  This causes the position indicated on the ILOM
+ * window to not match what the Xorg server actually has.  This
+ * makes the mouse in this environment rather unusable.  So, for the
+ * Emulex ILOM device, we will change all relative mouse movements
+ * into absolute mouse movements, making it appear more like a
+ * tablet.  This will not be subject to acceleration, and this
+ * should keep the ILOM window and Xorg server with the same values
+ * for the coordinates of the mouse.
+ */
+
+typedef struct reltoabs_match {
+       int matched;
+       char const *matchname;
+       } reltoabs_match_t;
+
+/* Sun Microsystems, keyboard / mouse */
+#define        RELTOABS_MATCH1 "usbif430,a101.config1.1"
+/* Sun Microsystems, keyboard / mouse / storage */
+#define        RELTOABS_MATCH2 "usbif430,a102.config1.1"
+
+static int
+CheckRelToAbsWalker(di_node_t node, void *arg)
+{
+       di_minor_t minor;
+       char *path;
+       int numvalues;
+       int valueon;
+       char const *stringptr;
+       int status;
+       reltoabs_match_t *const matchptr = (reltoabs_match_t *)arg;
+       char *stringvalues;
+
+       for (minor = di_minor_next(node, DI_MINOR_NIL);
+         minor != DI_MINOR_NIL;
+         minor = di_minor_next(node, minor)) {
+           path = di_devfs_minor_path(minor);
+           status = path != NULL && strcmp(path, matchptr -> matchname) == 0;
+           di_devfs_path_free(path);
+           if (status)
+               break;
+           }
+
+       if (minor == DI_MINOR_NIL)
+           return (DI_WALK_CONTINUE);
+
+       numvalues = di_prop_lookup_strings(DDI_DEV_T_ANY, node,
+         "compatible", &stringvalues);
+       if (numvalues <= 0)
+           return (DI_WALK_CONTINUE);
+
+       for (valueon = 0, stringptr = stringvalues; valueon < numvalues;
+         valueon++, stringptr += strlen(stringptr) + 1) {
+           if (strcmp(stringptr, RELTOABS_MATCH1) == 0) {
+               matchptr -> matched = 1;
+               return (DI_WALK_TERMINATE);
+           }
+           if (strcmp(stringptr, RELTOABS_MATCH2) == 0) {
+               matchptr -> matched = 2;
+               return (DI_WALK_TERMINATE);
+           }
+       }
+       return (DI_WALK_CONTINUE);
+}
+
+static int
+CheckRelToAbs(InputInfoPtr pInfo)
+{
+       char const *device;
+       char const *matchname;
+       ssize_t readstatus;
+       di_node_t node;
+       struct stat statbuf;
+       char linkname[512];
+       reltoabs_match_t reltoabs_match;
+
+       device = xf86CheckStrOption(pInfo->options, "Device", NULL);
+       if (device == NULL)
+           return (0);
+
+       matchname = device;
+
+       if (lstat(device, &statbuf) == 0 &&
+         (statbuf.st_mode & S_IFMT) == S_IFLNK) {
+           readstatus = readlink(device, linkname, sizeof(linkname));
+           if (readstatus > 0 && readstatus < (ssize_t) sizeof(linkname)) {
+               linkname[readstatus] = 0;
+               matchname = linkname;
+               if (strncmp(matchname, "../..", sizeof("../..") - 1) == 0)
+                   matchname += sizeof("../..") - 1;
+           }
+       }
+
+       if (strncmp(matchname, "/devices", sizeof("/devices") - 1) == 0)
+           matchname += sizeof("/devices") - 1;
+
+       reltoabs_match.matched = 0;
+       reltoabs_match.matchname = matchname;
+
+       node = di_init("/", DINFOCPYALL);
+       if (node == DI_NODE_NIL)
+           return (0);
+
+       di_walk_node(node, DI_WALK_CLDFIRST, (void *)&reltoabs_match,
+         CheckRelToAbsWalker);
+
+       di_fini(node);
+
+       return (reltoabs_match.matched != 0);
+}
+
 static void
 vuidFlushAbsEvents(InputInfoPtr pInfo, int absX, int absY,
                    Bool *absXset, Bool *absYset)
@@ -287,7 +416,9 @@
     ssize_t n;
     unsigned char *pBuf;
     int absX = 0, absY = 0;
+    int hdisplay = 0, vdisplay = 0;
     Bool absXset = FALSE, absYset = FALSE;
+    int relToAbs;
 
     pMse = pInfo->private;
     buttons = pMse->lastButtons;
@@ -297,6 +428,18 @@
         return;
     }
     pBuf = pVuidMse->buffer;
+    relToAbs = pVuidMse->relToAbs;
+    if (relToAbs) {
+       ScreenPtr   pScreen = miPointerGetScreen(pInfo->dev);
+       ScrnInfoPtr pScr = XF86SCRNINFO(pScreen);
+
+       if (pScr->currentMode) {
+           hdisplay = pScr->currentMode->HDisplay;
+           vdisplay = pScr->currentMode->VDisplay;
+       }
+       absX = pVuidMse->absX;
+       absY = pVuidMse->absY;
+    }
 
     do {
         n = read(pInfo->fd, pBuf, sizeof(Firm_event));
@@ -356,10 +499,34 @@
             int delta = pVuidMse->event.value;
             switch(pVuidMse->event.id) {
             case LOC_X_DELTA:
-                dx += delta;
+                if (!relToAbs)
+                    dx += delta;
+                else {
+                    if (absXset)
+                        vuidFlushAbsEvents(pInfo, absX, absY, &absXset, 
&absYset);
+                    absX += delta;
+                    if (absX < 0)
+                        absX = 0;
+                    else if (absX >= hdisplay && hdisplay > 0)
+                        absX = hdisplay - 1;
+                    pVuidMse->absX = absX;
+                    absXset = TRUE;
+                }
                 break;
             case LOC_Y_DELTA:
-                dy -= delta;
+                if (!relToAbs)
+                    dy -= delta;
+                else {
+                    if (absYset)
+                        vuidFlushAbsEvents(pInfo, absX, absY, &absXset, 
&absYset);
+                    absY -= delta;
+                    if (absY < 0)
+                        absY = 0;
+                    else if (absY >= vdisplay && vdisplay > 0)
+                        absY = vdisplay - 1;
+                    pVuidMse->absY = absY;
+                    absYset = TRUE;
+                }
                 break;
             case LOC_X_ABSOLUTE:
                 if (absXset) {
@@ -575,8 +742,21 @@
         }
         break;
 
-    case DEVICE_OFF:
     case DEVICE_CLOSE:
+        if (vuidMouseList == pVuidMse)
+            vuidMouseList = vuidMouseList->next;
+        else {
+            VuidMsePtr m = vuidMouseList;
+
+            while ((m != NULL) && (m->next != pVuidMse)) {
+                m = m->next;
+            }
+
+            if (m != NULL)
+                m->next = pVuidMse->next;
+        }
+        /* fallthrough */
+    case DEVICE_OFF:
         if (pInfo->fd != -1) {
             if (pVuidMse->strmod) {
                 SYSCALL(i = ioctl(pInfo->fd, I_POP, pVuidMse->strmod));

Reply via email to