Fix keyboard input in direct rendering mode
- Create XKB keymap before wlr_backend_start() so it's available when libinput detects keyboards synchronously during startup - Support multiple keyboards by allocating per-device listeners instead of replacing listeners on each new keyboard - Remove duplicate keymap creation code that ran too late
This commit is contained in:
parent
00d330fe88
commit
1d3843f62a
|
|
@ -32,7 +32,7 @@ Copyright (c) 2015 The Window Maker Team.
|
|||
along with this program, see file COPYING for details.
|
||||
|
||||
|
||||
Published by The Window Maker team on 6 January 2023.
|
||||
Published by The Window Maker team on 8 June 2026.
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
|
|
|||
|
|
@ -33,7 +33,7 @@ Copyright (c) 2015 The Window Maker Team.
|
|||
along with this program, see file COPYING for details.
|
||||
|
||||
|
||||
Published by The Window Maker team on 6 January 2023.
|
||||
Published by The Window Maker team on 8 June 2026.
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
# generated automatically by aclocal 1.18.1 -*- Autoconf -*-
|
||||
# generated automatically by aclocal 1.16.5 -*- Autoconf -*-
|
||||
|
||||
# Copyright (C) 1996-2025 Free Software Foundation, Inc.
|
||||
# Copyright (C) 1996-2021 Free Software Foundation, Inc.
|
||||
|
||||
# This file is free software; the Free Software Foundation
|
||||
# gives unlimited permission to copy and/or distribute it,
|
||||
|
|
@ -14,14 +14,14 @@
|
|||
m4_ifndef([AC_CONFIG_MACRO_DIRS], [m4_defun([_AM_CONFIG_MACRO_DIRS], [])m4_defun([AC_CONFIG_MACRO_DIRS], [_AM_CONFIG_MACRO_DIRS($@)])])
|
||||
m4_ifndef([AC_AUTOCONF_VERSION],
|
||||
[m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl
|
||||
m4_if(m4_defn([AC_AUTOCONF_VERSION]), [2.72],,
|
||||
[m4_warning([this file was generated for autoconf 2.72.
|
||||
m4_if(m4_defn([AC_AUTOCONF_VERSION]), [2.71],,
|
||||
[m4_warning([this file was generated for autoconf 2.71.
|
||||
You have another version of autoconf. It may work, but is not guaranteed to.
|
||||
If you have problems, you may need to regenerate the build system entirely.
|
||||
To do so, use the procedure documented by the package, typically 'autoreconf'.])])
|
||||
|
||||
# pkg.m4 - Macros to locate and use pkg-config. -*- Autoconf -*-
|
||||
# serial 13 (pkgconf)
|
||||
# serial 12 (pkg-config-0.29.2)
|
||||
|
||||
dnl Copyright © 2004 Scott James Remnant <scott@netsplit.com>.
|
||||
dnl Copyright © 2012-2015 Dan Nicholson <dbn.lists@gmail.com>
|
||||
|
|
@ -37,7 +37,9 @@ dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
|||
dnl General Public License for more details.
|
||||
dnl
|
||||
dnl You should have received a copy of the GNU General Public License
|
||||
dnl along with this program; if not, see <https://www.gnu.org/licenses/>.
|
||||
dnl along with this program; if not, write to the Free Software
|
||||
dnl Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
|
||||
dnl 02111-1307, USA.
|
||||
dnl
|
||||
dnl As a special exception to the GNU General Public License, if you
|
||||
dnl distribute this file as part of a program that contains a
|
||||
|
|
@ -66,8 +68,8 @@ m4_if(m4_version_compare(PKG_MACROS_VERSION, [$1]), -1,
|
|||
[m4_fatal([pkg.m4 version $1 or higher is required but ]PKG_MACROS_VERSION[ found])])
|
||||
])dnl PKG_PREREQ
|
||||
|
||||
dnl PKG_PROG_PKG_CONFIG([MIN-VERSION], [ACTION-IF-NOT-FOUND])
|
||||
dnl ---------------------------------------------------------
|
||||
dnl PKG_PROG_PKG_CONFIG([MIN-VERSION])
|
||||
dnl ----------------------------------
|
||||
dnl Since: 0.16
|
||||
dnl
|
||||
dnl Search for the pkg-config tool and set the PKG_CONFIG variable to
|
||||
|
|
@ -75,12 +77,6 @@ dnl first found in the path. Checks that the version of pkg-config found
|
|||
dnl is at least MIN-VERSION. If MIN-VERSION is not specified, 0.9.0 is
|
||||
dnl used since that's the first version where most current features of
|
||||
dnl pkg-config existed.
|
||||
dnl
|
||||
dnl If pkg-config is not found or older than specified, it will result
|
||||
dnl in an empty PKG_CONFIG variable. To avoid widespread issues with
|
||||
dnl scripts not checking it, ACTION-IF-NOT-FOUND defaults to aborting.
|
||||
dnl You can specify [PKG_CONFIG=false] as an action instead, which would
|
||||
dnl result in pkg-config tests failing, but no bogus error messages.
|
||||
AC_DEFUN([PKG_PROG_PKG_CONFIG],
|
||||
[m4_pattern_forbid([^_?PKG_[A-Z_]+$])
|
||||
m4_pattern_allow([^PKG_CONFIG(_(PATH|LIBDIR|SYSROOT_DIR|ALLOW_SYSTEM_(CFLAGS|LIBS)))?$])
|
||||
|
|
@ -101,9 +97,6 @@ if test -n "$PKG_CONFIG"; then
|
|||
AC_MSG_RESULT([no])
|
||||
PKG_CONFIG=""
|
||||
fi
|
||||
fi
|
||||
if test -z "$PKG_CONFIG"; then
|
||||
m4_default([$2], [AC_MSG_ERROR([pkg-config not found])])
|
||||
fi[]dnl
|
||||
])dnl PKG_PROG_PKG_CONFIG
|
||||
|
||||
|
|
@ -371,7 +364,7 @@ AS_IF([test "$AS_TR_SH([with_]m4_tolower([$1]))" = "yes"],
|
|||
[AC_DEFINE([HAVE_][$1], 1, [Enable ]m4_tolower([$1])[ support])])
|
||||
])dnl PKG_HAVE_DEFINE_WITH_MODULES
|
||||
|
||||
# Copyright (C) 2002-2025 Free Software Foundation, Inc.
|
||||
# Copyright (C) 2002-2021 Free Software Foundation, Inc.
|
||||
#
|
||||
# This file is free software; the Free Software Foundation
|
||||
# gives unlimited permission to copy and/or distribute it,
|
||||
|
|
@ -383,10 +376,10 @@ AS_IF([test "$AS_TR_SH([with_]m4_tolower([$1]))" = "yes"],
|
|||
# generated from the m4 files accompanying Automake X.Y.
|
||||
# (This private macro should not be called outside this file.)
|
||||
AC_DEFUN([AM_AUTOMAKE_VERSION],
|
||||
[am__api_version='1.18'
|
||||
[am__api_version='1.16'
|
||||
dnl Some users find AM_AUTOMAKE_VERSION and mistake it for a way to
|
||||
dnl require some minimum version. Point them to the right macro.
|
||||
m4_if([$1], [1.18.1], [],
|
||||
m4_if([$1], [1.16.5], [],
|
||||
[AC_FATAL([Do not call $0, use AM_INIT_AUTOMAKE([$1]).])])dnl
|
||||
])
|
||||
|
||||
|
|
@ -402,14 +395,14 @@ m4_define([_AM_AUTOCONF_VERSION], [])
|
|||
# Call AM_AUTOMAKE_VERSION and AM_AUTOMAKE_VERSION so they can be traced.
|
||||
# This function is AC_REQUIREd by AM_INIT_AUTOMAKE.
|
||||
AC_DEFUN([AM_SET_CURRENT_AUTOMAKE_VERSION],
|
||||
[AM_AUTOMAKE_VERSION([1.18.1])dnl
|
||||
[AM_AUTOMAKE_VERSION([1.16.5])dnl
|
||||
m4_ifndef([AC_AUTOCONF_VERSION],
|
||||
[m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl
|
||||
_AM_AUTOCONF_VERSION(m4_defn([AC_AUTOCONF_VERSION]))])
|
||||
|
||||
# AM_AUX_DIR_EXPAND -*- Autoconf -*-
|
||||
|
||||
# Copyright (C) 2001-2025 Free Software Foundation, Inc.
|
||||
# Copyright (C) 2001-2021 Free Software Foundation, Inc.
|
||||
#
|
||||
# This file is free software; the Free Software Foundation
|
||||
# gives unlimited permission to copy and/or distribute it,
|
||||
|
|
@ -461,7 +454,7 @@ am_aux_dir=`cd "$ac_aux_dir" && pwd`
|
|||
|
||||
# AM_CONDITIONAL -*- Autoconf -*-
|
||||
|
||||
# Copyright (C) 1997-2025 Free Software Foundation, Inc.
|
||||
# Copyright (C) 1997-2021 Free Software Foundation, Inc.
|
||||
#
|
||||
# This file is free software; the Free Software Foundation
|
||||
# gives unlimited permission to copy and/or distribute it,
|
||||
|
|
@ -492,7 +485,7 @@ AC_CONFIG_COMMANDS_PRE(
|
|||
Usually this means the macro was only invoked conditionally.]])
|
||||
fi])])
|
||||
|
||||
# Copyright (C) 1999-2025 Free Software Foundation, Inc.
|
||||
# Copyright (C) 1999-2021 Free Software Foundation, Inc.
|
||||
#
|
||||
# This file is free software; the Free Software Foundation
|
||||
# gives unlimited permission to copy and/or distribute it,
|
||||
|
|
@ -624,7 +617,7 @@ AC_CACHE_CHECK([dependency style of $depcc],
|
|||
# icc doesn't choke on unknown options, it will just issue warnings
|
||||
# or remarks (even with -Werror). So we grep stderr for any message
|
||||
# that says an option was ignored or not supported.
|
||||
# When given -MP, icc 7.0 and 7.1 complain thus:
|
||||
# When given -MP, icc 7.0 and 7.1 complain thusly:
|
||||
# icc: Command line warning: ignoring option '-M'; no argument required
|
||||
# The diagnosis changed in icc 8.0:
|
||||
# icc: Command line remark: option '-MP' not supported
|
||||
|
|
@ -683,7 +676,7 @@ _AM_SUBST_NOTMAKE([am__nodep])dnl
|
|||
|
||||
# Generate code to set up dependency tracking. -*- Autoconf -*-
|
||||
|
||||
# Copyright (C) 1999-2025 Free Software Foundation, Inc.
|
||||
# Copyright (C) 1999-2021 Free Software Foundation, Inc.
|
||||
#
|
||||
# This file is free software; the Free Software Foundation
|
||||
# gives unlimited permission to copy and/or distribute it,
|
||||
|
|
@ -751,7 +744,7 @@ AC_DEFUN([AM_OUTPUT_DEPENDENCY_COMMANDS],
|
|||
|
||||
# Do all the work for Automake. -*- Autoconf -*-
|
||||
|
||||
# Copyright (C) 1996-2025 Free Software Foundation, Inc.
|
||||
# Copyright (C) 1996-2021 Free Software Foundation, Inc.
|
||||
#
|
||||
# This file is free software; the Free Software Foundation
|
||||
# gives unlimited permission to copy and/or distribute it,
|
||||
|
|
@ -852,8 +845,7 @@ AC_REQUIRE([AC_PROG_MAKE_SET])dnl
|
|||
AC_REQUIRE([AM_SET_LEADING_DOT])dnl
|
||||
_AM_IF_OPTION([tar-ustar], [_AM_PROG_TAR([ustar])],
|
||||
[_AM_IF_OPTION([tar-pax], [_AM_PROG_TAR([pax])],
|
||||
[_AM_IF_OPTION([tar-v7], [_AM_PROG_TAR([v7])],
|
||||
[_AM_PROG_TAR([ustar])])])])
|
||||
[_AM_PROG_TAR([v7])])])
|
||||
_AM_IF_OPTION([no-dependencies],,
|
||||
[AC_PROVIDE_IFELSE([AC_PROG_CC],
|
||||
[_AM_DEPENDENCIES([CC])],
|
||||
|
|
@ -886,7 +878,7 @@ if test -z "$CSCOPE"; then
|
|||
fi
|
||||
AC_SUBST([CSCOPE])
|
||||
|
||||
AC_REQUIRE([_AM_SILENT_RULES])dnl
|
||||
AC_REQUIRE([AM_SILENT_RULES])dnl
|
||||
dnl The testsuite driver may need to know about EXEEXT, so add the
|
||||
dnl 'am__EXEEXT' conditional if _AM_COMPILER_EXEEXT was seen. This
|
||||
dnl macro is hooked onto _AC_COMPILER_EXEEXT early, see below.
|
||||
|
|
@ -894,9 +886,47 @@ AC_CONFIG_COMMANDS_PRE(dnl
|
|||
[m4_provide_if([_AM_COMPILER_EXEEXT],
|
||||
[AM_CONDITIONAL([am__EXEEXT], [test -n "$EXEEXT"])])])dnl
|
||||
|
||||
AC_REQUIRE([_AM_PROG_RM_F])
|
||||
AC_REQUIRE([_AM_PROG_XARGS_N])
|
||||
# POSIX will say in a future version that running "rm -f" with no argument
|
||||
# is OK; and we want to be able to make that assumption in our Makefile
|
||||
# recipes. So use an aggressive probe to check that the usage we want is
|
||||
# actually supported "in the wild" to an acceptable degree.
|
||||
# See automake bug#10828.
|
||||
# To make any issue more visible, cause the running configure to be aborted
|
||||
# by default if the 'rm' program in use doesn't match our expectations; the
|
||||
# user can still override this though.
|
||||
if rm -f && rm -fr && rm -rf; then : OK; else
|
||||
cat >&2 <<'END'
|
||||
Oops!
|
||||
|
||||
Your 'rm' program seems unable to run without file operands specified
|
||||
on the command line, even when the '-f' option is present. This is contrary
|
||||
to the behaviour of most rm programs out there, and not conforming with
|
||||
the upcoming POSIX standard: <http://austingroupbugs.net/view.php?id=542>
|
||||
|
||||
Please tell bug-automake@gnu.org about your system, including the value
|
||||
of your $PATH and any error possibly output before this message. This
|
||||
can help us improve future automake versions.
|
||||
|
||||
END
|
||||
if test x"$ACCEPT_INFERIOR_RM_PROGRAM" = x"yes"; then
|
||||
echo 'Configuration will proceed anyway, since you have set the' >&2
|
||||
echo 'ACCEPT_INFERIOR_RM_PROGRAM variable to "yes"' >&2
|
||||
echo >&2
|
||||
else
|
||||
cat >&2 <<'END'
|
||||
Aborting the configuration process, to ensure you take notice of the issue.
|
||||
|
||||
You can download and install GNU coreutils to get an 'rm' implementation
|
||||
that behaves properly: <https://www.gnu.org/software/coreutils/>.
|
||||
|
||||
If you want to complete the configuration process using your problematic
|
||||
'rm' anyway, export the environment variable ACCEPT_INFERIOR_RM_PROGRAM
|
||||
to "yes", and re-run configure.
|
||||
|
||||
END
|
||||
AC_MSG_ERROR([Your 'rm' program is bad, sorry.])
|
||||
fi
|
||||
fi
|
||||
dnl The trailing newline in this macro's definition is deliberate, for
|
||||
dnl backward compatibility and to allow trailing 'dnl'-style comments
|
||||
dnl after the AM_INIT_AUTOMAKE invocation. See automake bug#16841.
|
||||
|
|
@ -929,7 +959,7 @@ for _am_header in $config_headers :; do
|
|||
done
|
||||
echo "timestamp for $_am_arg" >`AS_DIRNAME(["$_am_arg"])`/stamp-h[]$_am_stamp_count])
|
||||
|
||||
# Copyright (C) 2001-2025 Free Software Foundation, Inc.
|
||||
# Copyright (C) 2001-2021 Free Software Foundation, Inc.
|
||||
#
|
||||
# This file is free software; the Free Software Foundation
|
||||
# gives unlimited permission to copy and/or distribute it,
|
||||
|
|
@ -950,7 +980,7 @@ if test x"${install_sh+set}" != xset; then
|
|||
fi
|
||||
AC_SUBST([install_sh])])
|
||||
|
||||
# Copyright (C) 2003-2025 Free Software Foundation, Inc.
|
||||
# Copyright (C) 2003-2021 Free Software Foundation, Inc.
|
||||
#
|
||||
# This file is free software; the Free Software Foundation
|
||||
# gives unlimited permission to copy and/or distribute it,
|
||||
|
|
@ -971,7 +1001,7 @@ AC_SUBST([am__leading_dot])])
|
|||
|
||||
# Check to see how 'make' treats includes. -*- Autoconf -*-
|
||||
|
||||
# Copyright (C) 2001-2025 Free Software Foundation, Inc.
|
||||
# Copyright (C) 2001-2021 Free Software Foundation, Inc.
|
||||
#
|
||||
# This file is free software; the Free Software Foundation
|
||||
# gives unlimited permission to copy and/or distribute it,
|
||||
|
|
@ -1014,7 +1044,7 @@ AC_SUBST([am__quote])])
|
|||
|
||||
# Fake the existence of programs that GNU maintainers use. -*- Autoconf -*-
|
||||
|
||||
# Copyright (C) 1997-2025 Free Software Foundation, Inc.
|
||||
# Copyright (C) 1997-2021 Free Software Foundation, Inc.
|
||||
#
|
||||
# This file is free software; the Free Software Foundation
|
||||
# gives unlimited permission to copy and/or distribute it,
|
||||
|
|
@ -1048,7 +1078,7 @@ fi
|
|||
|
||||
# Helper functions for option handling. -*- Autoconf -*-
|
||||
|
||||
# Copyright (C) 2001-2025 Free Software Foundation, Inc.
|
||||
# Copyright (C) 2001-2021 Free Software Foundation, Inc.
|
||||
#
|
||||
# This file is free software; the Free Software Foundation
|
||||
# gives unlimited permission to copy and/or distribute it,
|
||||
|
|
@ -1077,7 +1107,7 @@ AC_DEFUN([_AM_SET_OPTIONS],
|
|||
AC_DEFUN([_AM_IF_OPTION],
|
||||
[m4_ifset(_AM_MANGLE_OPTION([$1]), [$2], [$3])])
|
||||
|
||||
# Copyright (C) 1999-2025 Free Software Foundation, Inc.
|
||||
# Copyright (C) 1999-2021 Free Software Foundation, Inc.
|
||||
#
|
||||
# This file is free software; the Free Software Foundation
|
||||
# gives unlimited permission to copy and/or distribute it,
|
||||
|
|
@ -1109,10 +1139,7 @@ AC_CACHE_CHECK(
|
|||
break
|
||||
fi
|
||||
done
|
||||
# aligned with autoconf, so not including core; see bug#72225.
|
||||
rm -f -r a.out a.exe b.out conftest.$ac_ext conftest.$ac_objext \
|
||||
conftest.dSYM conftest1.$ac_ext conftest1.$ac_objext conftest1.dSYM \
|
||||
conftest2.$ac_ext conftest2.$ac_objext conftest2.dSYM
|
||||
rm -f core conftest*
|
||||
unset am_i])
|
||||
if test "$am_cv_prog_cc_c_o" != yes; then
|
||||
# Losing compiler, so override with the script.
|
||||
|
|
@ -1127,23 +1154,7 @@ AC_LANG_POP([C])])
|
|||
# For backward compatibility.
|
||||
AC_DEFUN_ONCE([AM_PROG_CC_C_O], [AC_REQUIRE([AC_PROG_CC])])
|
||||
|
||||
# Copyright (C) 2022-2025 Free Software Foundation, Inc.
|
||||
#
|
||||
# This file is free software; the Free Software Foundation
|
||||
# gives unlimited permission to copy and/or distribute it,
|
||||
# with or without modifications, as long as this notice is preserved.
|
||||
|
||||
# _AM_PROG_RM_F
|
||||
# ---------------
|
||||
# Check whether 'rm -f' without any arguments works.
|
||||
# https://bugs.gnu.org/10828
|
||||
AC_DEFUN([_AM_PROG_RM_F],
|
||||
[am__rm_f_notfound=
|
||||
AS_IF([(rm -f && rm -fr && rm -rf) 2>/dev/null], [], [am__rm_f_notfound='""'])
|
||||
AC_SUBST(am__rm_f_notfound)
|
||||
])
|
||||
|
||||
# Copyright (C) 2001-2025 Free Software Foundation, Inc.
|
||||
# Copyright (C) 2001-2021 Free Software Foundation, Inc.
|
||||
#
|
||||
# This file is free software; the Free Software Foundation
|
||||
# gives unlimited permission to copy and/or distribute it,
|
||||
|
|
@ -1162,181 +1173,26 @@ AC_DEFUN([AM_RUN_LOG],
|
|||
|
||||
# Check to make sure that the build environment is sane. -*- Autoconf -*-
|
||||
|
||||
# Copyright (C) 1996-2025 Free Software Foundation, Inc.
|
||||
# Copyright (C) 1996-2021 Free Software Foundation, Inc.
|
||||
#
|
||||
# This file is free software; the Free Software Foundation
|
||||
# gives unlimited permission to copy and/or distribute it,
|
||||
# with or without modifications, as long as this notice is preserved.
|
||||
|
||||
# _AM_SLEEP_FRACTIONAL_SECONDS
|
||||
# ----------------------------
|
||||
AC_DEFUN([_AM_SLEEP_FRACTIONAL_SECONDS], [dnl
|
||||
AC_CACHE_CHECK([whether sleep supports fractional seconds],
|
||||
am_cv_sleep_fractional_seconds, [dnl
|
||||
AS_IF([sleep 0.001 2>/dev/null], [am_cv_sleep_fractional_seconds=yes],
|
||||
[am_cv_sleep_fractional_seconds=no])
|
||||
])])
|
||||
|
||||
# _AM_FILESYSTEM_TIMESTAMP_RESOLUTION
|
||||
# -----------------------------------
|
||||
# Determine the filesystem's resolution for file modification
|
||||
# timestamps. The coarsest we know of is FAT, with a resolution
|
||||
# of only two seconds, even with the most recent "exFAT" extensions.
|
||||
# The finest (e.g. ext4 with large inodes, XFS, ZFS) is one
|
||||
# nanosecond, matching clock_gettime. However, it is probably not
|
||||
# possible to delay execution of a shell script for less than one
|
||||
# millisecond, due to process creation overhead and scheduling
|
||||
# granularity, so we don't check for anything finer than that. (See below.)
|
||||
AC_DEFUN([_AM_FILESYSTEM_TIMESTAMP_RESOLUTION], [dnl
|
||||
AC_REQUIRE([_AM_SLEEP_FRACTIONAL_SECONDS])
|
||||
AC_CACHE_CHECK([filesystem timestamp resolution],
|
||||
am_cv_filesystem_timestamp_resolution, [dnl
|
||||
# Default to the worst case.
|
||||
am_cv_filesystem_timestamp_resolution=2
|
||||
|
||||
# Only try to go finer than 1 sec if sleep can do it.
|
||||
# Don't try 1 sec, because if 0.01 sec and 0.1 sec don't work,
|
||||
# - 1 sec is not much of a win compared to 2 sec, and
|
||||
# - it takes 2 seconds to perform the test whether 1 sec works.
|
||||
#
|
||||
# Instead, just use the default 2s on platforms that have 1s resolution,
|
||||
# accept the extra 1s delay when using $sleep in the Automake tests, in
|
||||
# exchange for not incurring the 2s delay for running the test for all
|
||||
# packages.
|
||||
#
|
||||
am_try_resolutions=
|
||||
if test "$am_cv_sleep_fractional_seconds" = yes; then
|
||||
# Even a millisecond often causes a bunch of false positives,
|
||||
# so just try a hundredth of a second. The time saved between .001 and
|
||||
# .01 is not terribly consequential.
|
||||
am_try_resolutions="0.01 0.1 $am_try_resolutions"
|
||||
fi
|
||||
|
||||
# In order to catch current-generation FAT out, we must *modify* files
|
||||
# that already exist; the *creation* timestamp is finer. Use names
|
||||
# that make ls -t sort them differently when they have equal
|
||||
# timestamps than when they have distinct timestamps, keeping
|
||||
# in mind that ls -t prints the *newest* file first.
|
||||
rm -f conftest.ts?
|
||||
: > conftest.ts1
|
||||
: > conftest.ts2
|
||||
: > conftest.ts3
|
||||
|
||||
# Make sure ls -t actually works. Do 'set' in a subshell so we don't
|
||||
# clobber the current shell's arguments. (Outer-level square brackets
|
||||
# are removed by m4; they're present so that m4 does not expand
|
||||
# <dollar><star>; be careful, easy to get confused.)
|
||||
if (
|
||||
set X `[ls -t conftest.ts[12]]` &&
|
||||
{
|
||||
test "$[]*" != "X conftest.ts1 conftest.ts2" ||
|
||||
test "$[]*" != "X conftest.ts2 conftest.ts1";
|
||||
}
|
||||
); then :; else
|
||||
# If neither matched, then we have a broken ls. This can happen
|
||||
# if, for instance, CONFIG_SHELL is bash and it inherits a
|
||||
# broken ls alias from the environment. This has actually
|
||||
# happened. Such a system could not be considered "sane".
|
||||
_AS_ECHO_UNQUOTED(
|
||||
["Bad output from ls -t: \"`[ls -t conftest.ts[12]]`\""],
|
||||
[AS_MESSAGE_LOG_FD])
|
||||
AC_MSG_FAILURE([ls -t produces unexpected output.
|
||||
Make sure there is not a broken ls alias in your environment.])
|
||||
fi
|
||||
|
||||
for am_try_res in $am_try_resolutions; do
|
||||
# Any one fine-grained sleep might happen to cross the boundary
|
||||
# between two values of a coarser actual resolution, but if we do
|
||||
# two fine-grained sleeps in a row, at least one of them will fall
|
||||
# entirely within a coarse interval.
|
||||
echo alpha > conftest.ts1
|
||||
sleep $am_try_res
|
||||
echo beta > conftest.ts2
|
||||
sleep $am_try_res
|
||||
echo gamma > conftest.ts3
|
||||
|
||||
# We assume that 'ls -t' will make use of high-resolution
|
||||
# timestamps if the operating system supports them at all.
|
||||
if (set X `ls -t conftest.ts?` &&
|
||||
test "$[]2" = conftest.ts3 &&
|
||||
test "$[]3" = conftest.ts2 &&
|
||||
test "$[]4" = conftest.ts1); then
|
||||
#
|
||||
# Ok, ls -t worked. If we're at a resolution of 1 second, we're done,
|
||||
# because we don't need to test make.
|
||||
make_ok=true
|
||||
if test $am_try_res != 1; then
|
||||
# But if we've succeeded so far with a subsecond resolution, we
|
||||
# have one more thing to check: make. It can happen that
|
||||
# everything else supports the subsecond mtimes, but make doesn't;
|
||||
# notably on macOS, which ships make 3.81 from 2006 (the last one
|
||||
# released under GPLv2). https://bugs.gnu.org/68808
|
||||
#
|
||||
# We test $MAKE if it is defined in the environment, else "make".
|
||||
# It might get overridden later, but our hope is that in practice
|
||||
# it does not matter: it is the system "make" which is (by far)
|
||||
# the most likely to be broken, whereas if the user overrides it,
|
||||
# probably they did so with a better, or at least not worse, make.
|
||||
# https://lists.gnu.org/archive/html/automake/2024-06/msg00051.html
|
||||
#
|
||||
# Create a Makefile (real tab character here):
|
||||
rm -f conftest.mk
|
||||
echo 'conftest.ts1: conftest.ts2' >conftest.mk
|
||||
echo ' touch conftest.ts2' >>conftest.mk
|
||||
#
|
||||
# Now, running
|
||||
# touch conftest.ts1; touch conftest.ts2; make
|
||||
# should touch ts1 because ts2 is newer. This could happen by luck,
|
||||
# but most often, it will fail if make's support is insufficient. So
|
||||
# test for several consecutive successes.
|
||||
#
|
||||
# (We reuse conftest.ts[12] because we still want to modify existing
|
||||
# files, not create new ones, per above.)
|
||||
n=0
|
||||
make=${MAKE-make}
|
||||
until test $n -eq 3; do
|
||||
echo one > conftest.ts1
|
||||
sleep $am_try_res
|
||||
echo two > conftest.ts2 # ts2 should now be newer than ts1
|
||||
if $make -f conftest.mk | grep 'up to date' >/dev/null; then
|
||||
make_ok=false
|
||||
break # out of $n loop
|
||||
fi
|
||||
n=`expr $n + 1`
|
||||
done
|
||||
fi
|
||||
#
|
||||
if $make_ok; then
|
||||
# Everything we know to check worked out, so call this resolution good.
|
||||
am_cv_filesystem_timestamp_resolution=$am_try_res
|
||||
break # out of $am_try_res loop
|
||||
fi
|
||||
# Otherwise, we'll go on to check the next resolution.
|
||||
fi
|
||||
done
|
||||
rm -f conftest.ts?
|
||||
# (end _am_filesystem_timestamp_resolution)
|
||||
])])
|
||||
|
||||
# AM_SANITY_CHECK
|
||||
# ---------------
|
||||
AC_DEFUN([AM_SANITY_CHECK],
|
||||
[AC_REQUIRE([_AM_FILESYSTEM_TIMESTAMP_RESOLUTION])
|
||||
# This check should not be cached, as it may vary across builds of
|
||||
# different projects.
|
||||
AC_MSG_CHECKING([whether build environment is sane])
|
||||
[AC_MSG_CHECKING([whether build environment is sane])
|
||||
# Reject unsafe characters in $srcdir or the absolute working directory
|
||||
# name. Accept space and tab only in the latter.
|
||||
am_lf='
|
||||
'
|
||||
case `pwd` in
|
||||
*[[\\\"\#\$\&\'\`$am_lf]]*)
|
||||
AC_MSG_RESULT([no])
|
||||
AC_MSG_ERROR([unsafe absolute working directory name]);;
|
||||
esac
|
||||
case $srcdir in
|
||||
*[[\\\"\#\$\&\'\`$am_lf\ \ ]]*)
|
||||
AC_MSG_RESULT([no])
|
||||
AC_MSG_ERROR([unsafe srcdir value: '$srcdir']);;
|
||||
esac
|
||||
|
||||
|
|
@ -1345,40 +1201,49 @@ esac
|
|||
# symlink; some systems play weird games with the mod time of symlinks
|
||||
# (eg FreeBSD returns the mod time of the symlink's containing
|
||||
# directory).
|
||||
am_build_env_is_sane=no
|
||||
am_has_slept=no
|
||||
rm -f conftest.file
|
||||
for am_try in 1 2; do
|
||||
if (
|
||||
am_has_slept=no
|
||||
for am_try in 1 2; do
|
||||
echo "timestamp, slept: $am_has_slept" > conftest.file
|
||||
if (
|
||||
set X `ls -Lt "$srcdir/configure" conftest.file 2> /dev/null`
|
||||
if test "$[]*" = "X"; then
|
||||
if test "$[*]" = "X"; then
|
||||
# -L didn't work.
|
||||
set X `ls -t "$srcdir/configure" conftest.file`
|
||||
fi
|
||||
test "$[]2" = conftest.file
|
||||
); then
|
||||
am_build_env_is_sane=yes
|
||||
if test "$[*]" != "X $srcdir/configure conftest.file" \
|
||||
&& test "$[*]" != "X conftest.file $srcdir/configure"; then
|
||||
|
||||
# If neither matched, then we have a broken ls. This can happen
|
||||
# if, for instance, CONFIG_SHELL is bash and it inherits a
|
||||
# broken ls alias from the environment. This has actually
|
||||
# happened. Such a system could not be considered "sane".
|
||||
AC_MSG_ERROR([ls -t appears to fail. Make sure there is not a broken
|
||||
alias in your environment])
|
||||
fi
|
||||
if test "$[2]" = conftest.file || test $am_try -eq 2; then
|
||||
break
|
||||
fi
|
||||
# Just in case.
|
||||
sleep "$am_cv_filesystem_timestamp_resolution"
|
||||
sleep 1
|
||||
am_has_slept=yes
|
||||
done
|
||||
|
||||
AC_MSG_RESULT([$am_build_env_is_sane])
|
||||
if test "$am_build_env_is_sane" = no; then
|
||||
done
|
||||
test "$[2]" = conftest.file
|
||||
)
|
||||
then
|
||||
# Ok.
|
||||
:
|
||||
else
|
||||
AC_MSG_ERROR([newly created file is older than distributed files!
|
||||
Check your system clock])
|
||||
fi
|
||||
|
||||
AC_MSG_RESULT([yes])
|
||||
# If we didn't sleep, we still need to ensure time stamps of config.status and
|
||||
# generated files are strictly newer.
|
||||
am_sleep_pid=
|
||||
AS_IF([test -e conftest.file || grep 'slept: no' conftest.file >/dev/null 2>&1],, [dnl
|
||||
( sleep "$am_cv_filesystem_timestamp_resolution" ) &
|
||||
if grep 'slept: no' conftest.file >/dev/null 2>&1; then
|
||||
( sleep 1 ) &
|
||||
am_sleep_pid=$!
|
||||
])
|
||||
fi
|
||||
AC_CONFIG_COMMANDS_PRE(
|
||||
[AC_MSG_CHECKING([that generated files are newer than configure])
|
||||
if test -n "$am_sleep_pid"; then
|
||||
|
|
@ -1389,18 +1254,18 @@ AC_CONFIG_COMMANDS_PRE(
|
|||
rm -f conftest.file
|
||||
])
|
||||
|
||||
# Copyright (C) 2009-2025 Free Software Foundation, Inc.
|
||||
# Copyright (C) 2009-2021 Free Software Foundation, Inc.
|
||||
#
|
||||
# This file is free software; the Free Software Foundation
|
||||
# gives unlimited permission to copy and/or distribute it,
|
||||
# with or without modifications, as long as this notice is preserved.
|
||||
|
||||
# _AM_SILENT_RULES
|
||||
# ----------------
|
||||
# Enable less verbose build rules support.
|
||||
AC_DEFUN([_AM_SILENT_RULES],
|
||||
[AM_DEFAULT_VERBOSITY=1
|
||||
AC_ARG_ENABLE([silent-rules], [dnl
|
||||
# AM_SILENT_RULES([DEFAULT])
|
||||
# --------------------------
|
||||
# Enable less verbose build rules; with the default set to DEFAULT
|
||||
# ("yes" being less verbose, "no" or empty being verbose).
|
||||
AC_DEFUN([AM_SILENT_RULES],
|
||||
[AC_ARG_ENABLE([silent-rules], [dnl
|
||||
AS_HELP_STRING(
|
||||
[--enable-silent-rules],
|
||||
[less verbose build output (undo: "make V=1")])
|
||||
|
|
@ -1408,6 +1273,11 @@ AS_HELP_STRING(
|
|||
[--disable-silent-rules],
|
||||
[verbose build output (undo: "make V=0")])dnl
|
||||
])
|
||||
case $enable_silent_rules in @%:@ (((
|
||||
yes) AM_DEFAULT_VERBOSITY=0;;
|
||||
no) AM_DEFAULT_VERBOSITY=1;;
|
||||
*) AM_DEFAULT_VERBOSITY=m4_if([$1], [yes], [0], [1]);;
|
||||
esac
|
||||
dnl
|
||||
dnl A few 'make' implementations (e.g., NonStop OS and NextStep)
|
||||
dnl do not support nested variable expansions.
|
||||
|
|
@ -1426,21 +1296,6 @@ am__doit:
|
|||
else
|
||||
am_cv_make_support_nested_variables=no
|
||||
fi])
|
||||
AC_SUBST([AM_V])dnl
|
||||
AM_SUBST_NOTMAKE([AM_V])dnl
|
||||
AC_SUBST([AM_DEFAULT_V])dnl
|
||||
AM_SUBST_NOTMAKE([AM_DEFAULT_V])dnl
|
||||
AC_SUBST([AM_DEFAULT_VERBOSITY])dnl
|
||||
AM_BACKSLASH='\'
|
||||
AC_SUBST([AM_BACKSLASH])dnl
|
||||
_AM_SUBST_NOTMAKE([AM_BACKSLASH])dnl
|
||||
dnl Delay evaluation of AM_DEFAULT_VERBOSITY to the end to allow multiple calls
|
||||
dnl to AM_SILENT_RULES to change the default value.
|
||||
AC_CONFIG_COMMANDS_PRE([dnl
|
||||
case $enable_silent_rules in @%:@ (((
|
||||
yes) AM_DEFAULT_VERBOSITY=0;;
|
||||
no) AM_DEFAULT_VERBOSITY=1;;
|
||||
esac
|
||||
if test $am_cv_make_support_nested_variables = yes; then
|
||||
dnl Using '$V' instead of '$(V)' breaks IRIX make.
|
||||
AM_V='$(V)'
|
||||
|
|
@ -1449,22 +1304,17 @@ else
|
|||
AM_V=$AM_DEFAULT_VERBOSITY
|
||||
AM_DEFAULT_V=$AM_DEFAULT_VERBOSITY
|
||||
fi
|
||||
])dnl
|
||||
AC_SUBST([AM_V])dnl
|
||||
AM_SUBST_NOTMAKE([AM_V])dnl
|
||||
AC_SUBST([AM_DEFAULT_V])dnl
|
||||
AM_SUBST_NOTMAKE([AM_DEFAULT_V])dnl
|
||||
AC_SUBST([AM_DEFAULT_VERBOSITY])dnl
|
||||
AM_BACKSLASH='\'
|
||||
AC_SUBST([AM_BACKSLASH])dnl
|
||||
_AM_SUBST_NOTMAKE([AM_BACKSLASH])dnl
|
||||
])
|
||||
|
||||
# AM_SILENT_RULES([DEFAULT])
|
||||
# --------------------------
|
||||
# Set the default verbosity level to DEFAULT ("yes" being less verbose, "no" or
|
||||
# empty being verbose).
|
||||
AC_DEFUN([AM_SILENT_RULES],
|
||||
[AC_REQUIRE([_AM_SILENT_RULES])
|
||||
AM_DEFAULT_VERBOSITY=m4_if([$1], [yes], [0], [1])m4_newline
|
||||
dnl We intentionally force a newline after the assignment, since a) nothing
|
||||
dnl good can come of more text following, and b) that was the behavior
|
||||
dnl before 1.17. See https://bugs.gnu.org/72267.
|
||||
])
|
||||
|
||||
# Copyright (C) 2001-2025 Free Software Foundation, Inc.
|
||||
# Copyright (C) 2001-2021 Free Software Foundation, Inc.
|
||||
#
|
||||
# This file is free software; the Free Software Foundation
|
||||
# gives unlimited permission to copy and/or distribute it,
|
||||
|
|
@ -1492,7 +1342,7 @@ fi
|
|||
INSTALL_STRIP_PROGRAM="\$(install_sh) -c -s"
|
||||
AC_SUBST([INSTALL_STRIP_PROGRAM])])
|
||||
|
||||
# Copyright (C) 2006-2025 Free Software Foundation, Inc.
|
||||
# Copyright (C) 2006-2021 Free Software Foundation, Inc.
|
||||
#
|
||||
# This file is free software; the Free Software Foundation
|
||||
# gives unlimited permission to copy and/or distribute it,
|
||||
|
|
@ -1511,7 +1361,7 @@ AC_DEFUN([AM_SUBST_NOTMAKE], [_AM_SUBST_NOTMAKE($@)])
|
|||
|
||||
# Check how to create a tarball. -*- Autoconf -*-
|
||||
|
||||
# Copyright (C) 2004-2025 Free Software Foundation, Inc.
|
||||
# Copyright (C) 2004-2021 Free Software Foundation, Inc.
|
||||
#
|
||||
# This file is free software; the Free Software Foundation
|
||||
# gives unlimited permission to copy and/or distribute it,
|
||||
|
|
@ -1557,18 +1407,14 @@ m4_if([$1], [v7],
|
|||
am_uid=`id -u || echo unknown`
|
||||
am_gid=`id -g || echo unknown`
|
||||
AC_MSG_CHECKING([whether UID '$am_uid' is supported by ustar format])
|
||||
if test x$am_uid = xunknown; then
|
||||
AC_MSG_WARN([ancient id detected; assuming current UID is ok, but dist-ustar might not work])
|
||||
elif test $am_uid -le $am_max_uid; then
|
||||
if test $am_uid -le $am_max_uid; then
|
||||
AC_MSG_RESULT([yes])
|
||||
else
|
||||
AC_MSG_RESULT([no])
|
||||
_am_tools=none
|
||||
fi
|
||||
AC_MSG_CHECKING([whether GID '$am_gid' is supported by ustar format])
|
||||
if test x$gm_gid = xunknown; then
|
||||
AC_MSG_WARN([ancient id detected; assuming current GID is ok, but dist-ustar might not work])
|
||||
elif test $am_gid -le $am_max_gid; then
|
||||
if test $am_gid -le $am_max_gid; then
|
||||
AC_MSG_RESULT([yes])
|
||||
else
|
||||
AC_MSG_RESULT([no])
|
||||
|
|
@ -1646,26 +1492,6 @@ AC_SUBST([am__tar])
|
|||
AC_SUBST([am__untar])
|
||||
]) # _AM_PROG_TAR
|
||||
|
||||
# Copyright (C) 2022-2025 Free Software Foundation, Inc.
|
||||
#
|
||||
# This file is free software; the Free Software Foundation
|
||||
# gives unlimited permission to copy and/or distribute it,
|
||||
# with or without modifications, as long as this notice is preserved.
|
||||
|
||||
# _AM_PROG_XARGS_N
|
||||
# ----------------
|
||||
# Check whether 'xargs -n' works. It should work everywhere, so the fallback
|
||||
# is not optimized at all as we never expect to use it.
|
||||
AC_DEFUN([_AM_PROG_XARGS_N],
|
||||
[AC_CACHE_CHECK([xargs -n works], am_cv_xargs_n_works, [dnl
|
||||
AS_IF([test "`echo 1 2 3 | xargs -n2 echo`" = "1 2
|
||||
3"], [am_cv_xargs_n_works=yes], [am_cv_xargs_n_works=no])])
|
||||
AS_IF([test "$am_cv_xargs_n_works" = yes], [am__xargs_n='xargs -n'], [dnl
|
||||
am__xargs_n='am__xargs_n () { shift; sed "s/ /\\n/g" | while read am__xargs_n_arg; do "$@" "$am__xargs_n_arg"; done; }'
|
||||
])dnl
|
||||
AC_SUBST(am__xargs_n)
|
||||
])
|
||||
|
||||
m4_include([m4/ax_cflags_gcc_option.m4])
|
||||
m4_include([m4/ax_pthread.m4])
|
||||
m4_include([m4/ld-version-script.m4])
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
# Helper functions for option handling. -*- Autoconf -*-
|
||||
#
|
||||
# Copyright (C) 2004-2005, 2007-2009, 2011-2019, 2021-2024 Free
|
||||
# Copyright (C) 2004-2005, 2007-2009, 2011-2019, 2021-2022 Free
|
||||
# Software Foundation, Inc.
|
||||
# Written by Gary V. Vaughan, 2004
|
||||
#
|
||||
|
|
@ -8,7 +8,7 @@
|
|||
# unlimited permission to copy and/or distribute it, with or without
|
||||
# modifications, as long as this notice is preserved.
|
||||
|
||||
# serial 10 ltoptions.m4
|
||||
# serial 8 ltoptions.m4
|
||||
|
||||
# This is to help aclocal find these macros, as it can't see m4_define.
|
||||
AC_DEFUN([LTOPTIONS_VERSION], [m4_if([1])])
|
||||
|
|
@ -128,7 +128,7 @@ LT_OPTION_DEFINE([LT_INIT], [win32-dll],
|
|||
[enable_win32_dll=yes
|
||||
|
||||
case $host in
|
||||
*-*-cygwin* | *-*-mingw* | *-*-windows* | *-*-pw32* | *-*-cegcc*)
|
||||
*-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-cegcc*)
|
||||
AC_CHECK_TOOL(AS, as, false)
|
||||
AC_CHECK_TOOL(DLLTOOL, dlltool, false)
|
||||
AC_CHECK_TOOL(OBJDUMP, objdump, false)
|
||||
|
|
@ -323,27 +323,18 @@ dnl AC_DEFUN([AM_DISABLE_FAST_INSTALL], [])
|
|||
|
||||
# _LT_WITH_AIX_SONAME([DEFAULT])
|
||||
# ----------------------------------
|
||||
# implement the --enable-aix-soname configure option, and support the
|
||||
# `aix-soname=aix' and `aix-soname=both' and `aix-soname=svr4' LT_INIT options.
|
||||
# DEFAULT is either `aix', `both', or `svr4'. If omitted, it defaults to `aix'.
|
||||
# implement the --with-aix-soname flag, and support the `aix-soname=aix'
|
||||
# and `aix-soname=both' and `aix-soname=svr4' LT_INIT options. DEFAULT
|
||||
# is either `aix', `both' or `svr4'. If omitted, it defaults to `aix'.
|
||||
m4_define([_LT_WITH_AIX_SONAME],
|
||||
[m4_define([_LT_WITH_AIX_SONAME_DEFAULT], [m4_if($1, svr4, svr4, m4_if($1, both, both, aix))])dnl
|
||||
shared_archive_member_spec=
|
||||
case $host,$enable_shared in
|
||||
power*-*-aix[[5-9]]*,yes)
|
||||
AC_MSG_CHECKING([which variant of shared library versioning to provide])
|
||||
AC_ARG_ENABLE([aix-soname],
|
||||
[AS_HELP_STRING([--enable-aix-soname=aix|svr4|both],
|
||||
AC_ARG_WITH([aix-soname],
|
||||
[AS_HELP_STRING([--with-aix-soname=aix|svr4|both],
|
||||
[shared library versioning (aka "SONAME") variant to provide on AIX, @<:@default=]_LT_WITH_AIX_SONAME_DEFAULT[@:>@.])],
|
||||
[case $enableval in
|
||||
aix|svr4|both)
|
||||
;;
|
||||
*)
|
||||
AC_MSG_ERROR([Unknown argument to --enable-aix-soname])
|
||||
;;
|
||||
esac
|
||||
lt_cv_with_aix_soname=$enable_aix_soname],
|
||||
[_AC_ENABLE_IF([with], [aix-soname],
|
||||
[case $withval in
|
||||
aix|svr4|both)
|
||||
;;
|
||||
|
|
@ -353,9 +344,8 @@ power*-*-aix[[5-9]]*,yes)
|
|||
esac
|
||||
lt_cv_with_aix_soname=$with_aix_soname],
|
||||
[AC_CACHE_VAL([lt_cv_with_aix_soname],
|
||||
[lt_cv_with_aix_soname=]_LT_WITH_AIX_SONAME_DEFAULT)])
|
||||
enable_aix_soname=$lt_cv_with_aix_soname])
|
||||
with_aix_soname=$enable_aix_soname
|
||||
[lt_cv_with_aix_soname=]_LT_WITH_AIX_SONAME_DEFAULT)
|
||||
with_aix_soname=$lt_cv_with_aix_soname])
|
||||
AC_MSG_RESULT([$with_aix_soname])
|
||||
if test aix != "$with_aix_soname"; then
|
||||
# For the AIX way of multilib, we name the shared archive member
|
||||
|
|
@ -386,32 +376,13 @@ LT_OPTION_DEFINE([LT_INIT], [aix-soname=svr4], [_LT_WITH_AIX_SONAME([svr4])])
|
|||
|
||||
# _LT_WITH_PIC([MODE])
|
||||
# --------------------
|
||||
# implement the --enable-pic flag, and support the 'pic-only' and 'no-pic'
|
||||
# implement the --with-pic flag, and support the 'pic-only' and 'no-pic'
|
||||
# LT_INIT options.
|
||||
# MODE is either 'yes' or 'no'. If omitted, it defaults to 'both'.
|
||||
m4_define([_LT_WITH_PIC],
|
||||
[AC_ARG_ENABLE([pic],
|
||||
[AS_HELP_STRING([--enable-pic@<:@=PKGS@:>@],
|
||||
[AC_ARG_WITH([pic],
|
||||
[AS_HELP_STRING([--with-pic@<:@=PKGS@:>@],
|
||||
[try to use only PIC/non-PIC objects @<:@default=use both@:>@])],
|
||||
[lt_p=${PACKAGE-default}
|
||||
case $enableval in
|
||||
yes|no) pic_mode=$enableval ;;
|
||||
*)
|
||||
pic_mode=default
|
||||
# Look at the argument we got. We use all the common list separators.
|
||||
lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR,
|
||||
for lt_pkg in $enableval; do
|
||||
IFS=$lt_save_ifs
|
||||
if test "X$lt_pkg" = "X$lt_p"; then
|
||||
pic_mode=yes
|
||||
fi
|
||||
done
|
||||
IFS=$lt_save_ifs
|
||||
;;
|
||||
esac],
|
||||
[dnl Continue to support --with-pic and --without-pic, for backward
|
||||
dnl compatibility.
|
||||
_AC_ENABLE_IF([with], [pic],
|
||||
[lt_p=${PACKAGE-default}
|
||||
case $withval in
|
||||
yes|no) pic_mode=$withval ;;
|
||||
|
|
@ -428,8 +399,7 @@ m4_define([_LT_WITH_PIC],
|
|||
IFS=$lt_save_ifs
|
||||
;;
|
||||
esac],
|
||||
[pic_mode=m4_default([$1], [default])])]
|
||||
)
|
||||
[pic_mode=m4_default([$1], [default])])
|
||||
|
||||
_LT_DECL([], [pic_mode], [0], [What type of objects to build])dnl
|
||||
])# _LT_WITH_PIC
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
# ltsugar.m4 -- libtool m4 base layer. -*-Autoconf-*-
|
||||
#
|
||||
# Copyright (C) 2004-2005, 2007-2008, 2011-2019, 2021-2024 Free Software
|
||||
# Copyright (C) 2004-2005, 2007-2008, 2011-2019, 2021-2022 Free Software
|
||||
# Foundation, Inc.
|
||||
# Written by Gary V. Vaughan, 2004
|
||||
#
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
# ltversion.m4 -- version numbers -*- Autoconf -*-
|
||||
#
|
||||
# Copyright (C) 2004, 2011-2019, 2021-2024 Free Software Foundation,
|
||||
# Copyright (C) 2004, 2011-2019, 2021-2022 Free Software Foundation,
|
||||
# Inc.
|
||||
# Written by Scott James Remnant, 2004
|
||||
#
|
||||
|
|
@ -10,15 +10,15 @@
|
|||
|
||||
# @configure_input@
|
||||
|
||||
# serial 4441 ltversion.m4
|
||||
# serial 4245 ltversion.m4
|
||||
# This file is part of GNU Libtool
|
||||
|
||||
m4_define([LT_PACKAGE_VERSION], [2.5.4])
|
||||
m4_define([LT_PACKAGE_REVISION], [2.5.4])
|
||||
m4_define([LT_PACKAGE_VERSION], [2.4.7])
|
||||
m4_define([LT_PACKAGE_REVISION], [2.4.7])
|
||||
|
||||
AC_DEFUN([LTVERSION_VERSION],
|
||||
[macro_version='2.5.4'
|
||||
macro_revision='2.5.4'
|
||||
[macro_version='2.4.7'
|
||||
macro_revision='2.4.7'
|
||||
_LT_DECL(, macro_version, 0, [Which release of libtool.m4 was used?])
|
||||
_LT_DECL(, macro_revision, 0)
|
||||
])
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
# lt~obsolete.m4 -- aclocal satisfying obsolete definitions. -*-Autoconf-*-
|
||||
#
|
||||
# Copyright (C) 2004-2005, 2007, 2009, 2011-2019, 2021-2024 Free
|
||||
# Copyright (C) 2004-2005, 2007, 2009, 2011-2019, 2021-2022 Free
|
||||
# Software Foundation, Inc.
|
||||
# Written by Scott James Remnant, 2004.
|
||||
#
|
||||
|
|
|
|||
160
src/Makefile
160
src/Makefile
|
|
@ -1,7 +1,7 @@
|
|||
# Makefile.in generated by automake 1.18.1 from Makefile.am.
|
||||
# Makefile.in generated by automake 1.16.5 from Makefile.am.
|
||||
# src/Makefile. Generated from Makefile.in by configure.
|
||||
|
||||
# Copyright (C) 1994-2025 Free Software Foundation, Inc.
|
||||
# Copyright (C) 1994-2021 Free Software Foundation, Inc.
|
||||
|
||||
# This Makefile.in is free software; the Free Software Foundation
|
||||
# gives unlimited permission to copy and/or distribute it,
|
||||
|
|
@ -70,8 +70,6 @@ am__make_running_with_option = \
|
|||
test $$has_opt = yes
|
||||
am__make_dryrun = (target_option=n; $(am__make_running_with_option))
|
||||
am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
|
||||
am__rm_f = rm -f $(am__rm_f_notfound)
|
||||
am__rm_rf = rm -rf $(am__rm_f_notfound)
|
||||
pkgdatadir = $(datadir)/WindowMaker
|
||||
pkgincludedir = $(includedir)/WindowMaker
|
||||
pkglibdir = $(libdir)/WindowMaker
|
||||
|
|
@ -146,6 +144,7 @@ am__append_7 = \
|
|||
backend/wayland/wl_grab.c \
|
||||
backend/wayland/wl_keyboard.c \
|
||||
backend/wayland/wl_popup.c \
|
||||
backend/wayland/wl_dockapp_proto.c \
|
||||
backend/wayland/wl_text_input.c \
|
||||
backend/wayland/wl_xdg_activation.c \
|
||||
backend/wayland/wl_output_mgmt.c \
|
||||
|
|
@ -170,7 +169,7 @@ am__append_8 = misc.c \
|
|||
#am__append_10 = misc.hack_nf.c xmodifier.hack_nf.c
|
||||
am__append_11 = backend/wayland/wl_xdisplay.c backend/wayland/wl_xwayland.c
|
||||
am__append_12 = -DUSE_XWAYLAND
|
||||
am__append_13 = -lXinerama -lX11 -lXRes -lXext
|
||||
am__append_13 = -lXinerama -lX11 -lXext
|
||||
subdir = src
|
||||
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
|
||||
am__aclocal_m4_deps = $(top_srcdir)/m4/ax_cflags_gcc_option.m4 \
|
||||
|
|
@ -241,6 +240,7 @@ am__wmaker_SOURCES_DIST = GNUstep.h WindowMaker.h actions.c actions.h \
|
|||
backend/wayland/wl_pointer_motion.c \
|
||||
backend/wayland/wl_pointer_focus.c backend/wayland/wl_grab.c \
|
||||
backend/wayland/wl_keyboard.c backend/wayland/wl_popup.c \
|
||||
backend/wayland/wl_dockapp_proto.c \
|
||||
backend/wayland/wl_text_input.c \
|
||||
backend/wayland/wl_xdg_activation.c \
|
||||
backend/wayland/wl_output_mgmt.c backend/wayland/wl_output.c \
|
||||
|
|
@ -297,6 +297,7 @@ am__objects_7 = backend/wayland/wl_backend.$(OBJEXT) \
|
|||
backend/wayland/wl_grab.$(OBJEXT) \
|
||||
backend/wayland/wl_keyboard.$(OBJEXT) \
|
||||
backend/wayland/wl_popup.$(OBJEXT) \
|
||||
backend/wayland/wl_dockapp_proto.$(OBJEXT) \
|
||||
backend/wayland/wl_text_input.$(OBJEXT) \
|
||||
backend/wayland/wl_xdg_activation.$(OBJEXT) \
|
||||
backend/wayland/wl_output_mgmt.$(OBJEXT) \
|
||||
|
|
@ -338,7 +339,7 @@ am_wmaker_OBJECTS = actions.$(OBJEXT) appicon.$(OBJEXT) \
|
|||
#am__objects_10 = misc.hack_nf.$(OBJEXT) \
|
||||
# xmodifier.hack_nf.$(OBJEXT)
|
||||
nodist_wmaker_OBJECTS = wmaker-popup-v1-protocol.$(OBJEXT) \
|
||||
$(am__objects_10)
|
||||
wmaker-dockapp-v1-protocol.$(OBJEXT) $(am__objects_10)
|
||||
wmaker_OBJECTS = $(am_wmaker_OBJECTS) $(nodist_wmaker_OBJECTS)
|
||||
am__DEPENDENCIES_1 =
|
||||
wmaker_DEPENDENCIES = $(top_builddir)/WINGs/libWINGs.la \
|
||||
|
|
@ -387,6 +388,7 @@ am__depfiles_remade = ./$(DEPDIR)/actions.Po ./$(DEPDIR)/appicon.Po \
|
|||
./$(DEPDIR)/wcore.Po ./$(DEPDIR)/wdefaults.Po \
|
||||
./$(DEPDIR)/window.Po ./$(DEPDIR)/winmenu.Po \
|
||||
./$(DEPDIR)/winspector.Po \
|
||||
./$(DEPDIR)/wmaker-dockapp-v1-protocol.Po \
|
||||
./$(DEPDIR)/wmaker-popup-v1-protocol.Po \
|
||||
./$(DEPDIR)/workspace.Po ./$(DEPDIR)/wsmap.Po \
|
||||
./$(DEPDIR)/xinerama.Po ./$(DEPDIR)/xmodifier.Po \
|
||||
|
|
@ -401,6 +403,7 @@ am__depfiles_remade = ./$(DEPDIR)/actions.Po ./$(DEPDIR)/appicon.Po \
|
|||
backend/wayland/$(DEPDIR)/wl_context.Po \
|
||||
backend/wayland/$(DEPDIR)/wl_dnd.Po \
|
||||
backend/wayland/$(DEPDIR)/wl_dock.Po \
|
||||
backend/wayland/$(DEPDIR)/wl_dockapp_proto.Po \
|
||||
backend/wayland/$(DEPDIR)/wl_dragicon.Po \
|
||||
backend/wayland/$(DEPDIR)/wl_event.Po \
|
||||
backend/wayland/$(DEPDIR)/wl_events.Po \
|
||||
|
|
@ -493,17 +496,17 @@ am__define_uniq_tagged_files = \
|
|||
am__DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/wconfig.h.in \
|
||||
$(top_srcdir)/depcomp
|
||||
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
|
||||
ACLOCAL = ${SHELL} '/home/lkn/src/wmaker/missing' aclocal-1.18
|
||||
ACLOCAL = ${SHELL} '/home/lkn/src/windowmaker-wl/missing' aclocal-1.16
|
||||
AMTAR = $${TAR-tar}
|
||||
AM_DEFAULT_VERBOSITY = 1
|
||||
AR = ar
|
||||
AUTOCONF = ${SHELL} '/home/lkn/src/wmaker/missing' autoconf
|
||||
AUTOHEADER = ${SHELL} '/home/lkn/src/wmaker/missing' autoheader
|
||||
AUTOMAKE = ${SHELL} '/home/lkn/src/wmaker/missing' automake-1.18
|
||||
AUTOCONF = ${SHELL} '/home/lkn/src/windowmaker-wl/missing' autoconf
|
||||
AUTOHEADER = ${SHELL} '/home/lkn/src/windowmaker-wl/missing' autoheader
|
||||
AUTOMAKE = ${SHELL} '/home/lkn/src/windowmaker-wl/missing' automake-1.16
|
||||
AWK = gawk
|
||||
CC = gcc
|
||||
CCDEPMODE = depmode=gcc3
|
||||
CFLAGS = -O0 -g -fsanitize=address -fno-omit-frame-pointer -Wall -Wextra -Wno-sign-compare -Werror=trampolines -Wno-deprecated -Wno-deprecated-declarations
|
||||
CFLAGS = -g -O2 -Wall -Wextra -Wno-sign-compare -Werror=trampolines -Wno-deprecated -Wno-deprecated-declarations
|
||||
CPP = gcc -E
|
||||
CPPFLAGS = -DNDEBUG -D_XOPEN_SOURCE=700 -D_GNU_SOURCE
|
||||
CSCOPE = cscope
|
||||
|
|
@ -520,7 +523,7 @@ ECHO_T =
|
|||
EGREP = /usr/bin/grep -E
|
||||
ETAGS = etags
|
||||
EXEEXT =
|
||||
FCLIBS = -lfontconfig
|
||||
FCLIBS = -lfontconfig -lfreetype
|
||||
FGREP = /usr/bin/grep -F
|
||||
FILECMD = file
|
||||
GFXLIBS = -lXpm -lpng -ljpeg -lgif -ltiff -lwebp
|
||||
|
|
@ -534,17 +537,17 @@ INSTALL_PROGRAM = ${INSTALL}
|
|||
INSTALL_SCRIPT = ${INSTALL}
|
||||
INSTALL_STRIP_PROGRAM = $(install_sh) -c -s
|
||||
INTLIBS =
|
||||
LD = /usr/x86_64-pc-linux-gnu/bin/ld -m elf_x86_64
|
||||
LDFLAGS = -fsanitize=address
|
||||
LD = /usr/bin/ld -m elf_x86_64
|
||||
LDFLAGS =
|
||||
LIBBSD =
|
||||
LIBEXIF =
|
||||
LIBM = -lm
|
||||
LIBOBJS =
|
||||
LIBRARY_SEARCH_PATH = -L${libdir}
|
||||
LIBS = -lxcb
|
||||
LIBS =
|
||||
LIBTOOL = $(SHELL) $(top_builddir)/libtool
|
||||
LIBXINERAMA = -lXinerama
|
||||
LIBXMU = -lXmu
|
||||
LIBXMU =
|
||||
LIBXRANDR =
|
||||
LINGUAS =
|
||||
LIPO =
|
||||
|
|
@ -553,7 +556,7 @@ LTLIBOBJS =
|
|||
LT_SYS_LIBRARY_PATH =
|
||||
MAGICKFLAGS =
|
||||
MAGICKLIBS =
|
||||
MAKEINFO = ${SHELL} '/home/lkn/src/wmaker/missing' makeinfo
|
||||
MAKEINFO = ${SHELL} '/home/lkn/src/windowmaker-wl/missing' makeinfo
|
||||
MANIFEST_TOOL = :
|
||||
MANLANGDIRS =
|
||||
MKDIR_P = /usr/bin/mkdir -p
|
||||
|
|
@ -571,11 +574,11 @@ PACKAGE_STRING = WindowMaker 0.96.0
|
|||
PACKAGE_TARNAME = WindowMaker
|
||||
PACKAGE_URL = http://www.windowmaker.org/
|
||||
PACKAGE_VERSION = 0.96.0
|
||||
PANGO_CFLAGS = -I/usr/include/pango-1.0 -pthread -I/usr/include/libmount -I/usr/include/blkid -I/usr/include/fribidi -I/usr/include/cairo -I/usr/include/libpng16 -I/usr/include/pixman-1 -I/usr/include/harfbuzz -I/usr/include/freetype2 -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -I/usr/lib64/libffi/include
|
||||
PANGO_LIBS = -lpangoxft-1.0 -lpangoft2-1.0 -lpango-1.0 -lXft -lfontconfig -lharfbuzz -lfreetype -lgobject-2.0 -lglib-2.0
|
||||
PANGO_CFLAGS = -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include -I/usr/include/harfbuzz -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/libmount -I/usr/include/blkid -I/usr/include/fribidi -I/usr/include/cairo -I/usr/local/include/pixman-1 -pthread
|
||||
PANGO_LIBS = -lpangoxft-1.0 -lpangoft2-1.0 -lpango-1.0 -lgobject-2.0 -lglib-2.0 -lharfbuzz -lfontconfig -lfreetype -lXft
|
||||
PATH_SEPARATOR = :
|
||||
PIXMAN_CFLAGS = -I/usr/include/pixman-1
|
||||
PIXMAN_LIBS = -lpixman-1
|
||||
PIXMAN_CFLAGS = -I/usr/local/include/pixman-1
|
||||
PIXMAN_LIBS = -L/usr/local/lib/x86_64-linux-gnu -lpixman-1
|
||||
PKG_CONFIG = /usr/bin/pkg-config
|
||||
PKG_CONFIG_LIBDIR =
|
||||
PKG_CONFIG_PATH =
|
||||
|
|
@ -585,20 +588,20 @@ PTHREAD_LIBS =
|
|||
RANLIB = ranlib
|
||||
SED = /usr/bin/sed
|
||||
SET_MAKE =
|
||||
SHELL = /bin/sh
|
||||
SHELL = /bin/bash
|
||||
STRIP = strip
|
||||
UTILMOFILES =
|
||||
VERSION = 0.96.0
|
||||
WAYLAND_CLIENT_CFLAGS = -I/usr/lib64/libffi/include
|
||||
WAYLAND_CLIENT_LIBS = -lwayland-client -lm -lxkbcommon
|
||||
WAYLAND_CLIENT_CFLAGS = -I/usr/local/include
|
||||
WAYLAND_CLIENT_LIBS = -L/usr/local/lib/x86_64-linux-gnu -lwayland-client -lm -lxkbcommon
|
||||
WAYLAND_PROTOCOLS_DIR = //usr/share/wayland-protocols
|
||||
WAYLAND_SCANNER = /usr/bin/wayland-scanner
|
||||
WAYLAND_SCANNER = /usr/local/bin/wayland-scanner
|
||||
WEB_REPO_ROOT =
|
||||
WINGSMOFILES =
|
||||
WINGS_PANGO_LIBS_NO_XFT = -lpangoft2-1.0 -lpango-1.0 -lfontconfig -lharfbuzz -lfreetype -lgobject-2.0 -lglib-2.0
|
||||
WINGS_PANGO_LIBS_NO_XFT = -lpangoft2-1.0 -lpango-1.0 -lgobject-2.0 -lglib-2.0 -lharfbuzz -lfontconfig -lfreetype
|
||||
WINGS_VERSION = 5:0:2
|
||||
WLROOTS_CFLAGS = -I/usr/include/wlroots-0.19 -I/usr/include/libdrm -I/usr/include/elogind -I/usr/lib64/libffi/include -I/usr/include/pixman-1 -DWLR_USE_UNSTABLE
|
||||
WLROOTS_LIBS = -lwlroots-0.19 -lwayland-server -lm -lxkbcommon -lpixman-1
|
||||
WLROOTS_CFLAGS = -I/usr/local/include/wlroots-0.19 -I/usr/local/include -I/usr/local/include/pixman-1 -I/usr/include/libdrm -DWLR_USE_UNSTABLE
|
||||
WLROOTS_LIBS = -L/usr/local/lib/x86_64-linux-gnu -lwlroots-0.19 -lwayland-server -lm -lxkbcommon -lpixman-1
|
||||
WMAKERMOFILES =
|
||||
WPREFSMOFILES =
|
||||
WRASTERMOFILES =
|
||||
|
|
@ -607,31 +610,29 @@ WRASTER_VERSION = 7:0:1
|
|||
WUTIL_VERSION = 5:0:0
|
||||
XCFLAGS =
|
||||
XFTCONFIG =
|
||||
XFT_CFLAGS = -I/usr/include/freetype2
|
||||
XFT_CFLAGS = -I/usr/include/freetype2 -I/usr/include/libpng16
|
||||
XFT_LIBS = -lXft
|
||||
XGETTEXT = xgettext
|
||||
XLFLAGS =
|
||||
XLIBS = -lX11 -lXRes -lXext
|
||||
XLIBS = -lX11 -lXext
|
||||
XMKMF =
|
||||
X_CFLAGS =
|
||||
X_EXTRA_LIBS =
|
||||
X_LIBRARY_PATH =
|
||||
X_LIBS =
|
||||
X_PRE_LIBS = -lSM -lICE
|
||||
abs_builddir = /home/lkn/src/wmaker/src
|
||||
abs_srcdir = /home/lkn/src/wmaker/src
|
||||
abs_top_builddir = /home/lkn/src/wmaker
|
||||
abs_top_srcdir = /home/lkn/src/wmaker
|
||||
abs_builddir = /home/lkn/src/windowmaker-wl/src
|
||||
abs_srcdir = /home/lkn/src/windowmaker-wl/src
|
||||
abs_top_builddir = /home/lkn/src/windowmaker-wl
|
||||
abs_top_srcdir = /home/lkn/src/windowmaker-wl
|
||||
ac_ct_AR = ar
|
||||
ac_ct_CC = gcc
|
||||
ac_ct_DUMPBIN =
|
||||
am__include = include
|
||||
am__leading_dot = .
|
||||
am__quote =
|
||||
am__rm_f_notfound =
|
||||
am__tar = tar --format=ustar -chf - "$$tardir"
|
||||
am__untar = tar -xf -
|
||||
am__xargs_n = xargs -n
|
||||
am__tar = $${TAR-tar} chof - "$$tardir"
|
||||
am__untar = $${TAR-tar} xf -
|
||||
ax_pthread_config =
|
||||
bindir = ${exec_prefix}/bin
|
||||
build = x86_64-pc-linux-gnu
|
||||
|
|
@ -654,7 +655,7 @@ htmldir = ${docdir}
|
|||
inc_search_path = -I${includedir}
|
||||
includedir = ${prefix}/include
|
||||
infodir = ${datarootdir}/info
|
||||
install_sh = ${SHELL} /home/lkn/src/wmaker/install-sh
|
||||
install_sh = ${SHELL} /home/lkn/src/windowmaker-wl/install-sh
|
||||
lcov_output_directory =
|
||||
lib_search_path = -L${libdir}
|
||||
libdir = ${exec_prefix}/lib
|
||||
|
|
@ -690,6 +691,8 @@ WLR_PROTO_DIR = $(shell pkg-config --variable=pkgdatadir wlr-protocols 2>/dev/nu
|
|||
BUILT_SOURCES = wconfig.h \
|
||||
wmaker-popup-v1-server-protocol.h \
|
||||
wmaker-popup-v1-protocol.c \
|
||||
wmaker-dockapp-v1-server-protocol.h \
|
||||
wmaker-dockapp-v1-protocol.c \
|
||||
protocols/pointer-constraints-unstable-v1-protocol.h \
|
||||
protocols/wlr-output-power-management-unstable-v1-protocol.h \
|
||||
protocols/wlr-layer-shell-unstable-v1-protocol.h \
|
||||
|
|
@ -698,9 +701,11 @@ BUILT_SOURCES = wconfig.h \
|
|||
|
||||
EXTRA_DIST =
|
||||
nodist_wmaker_SOURCES = wmaker-popup-v1-protocol.c \
|
||||
wmaker-popup-v1-server-protocol.h $(am__append_9)
|
||||
wmaker-popup-v1-server-protocol.h wmaker-dockapp-v1-protocol.c \
|
||||
wmaker-dockapp-v1-server-protocol.h $(am__append_9)
|
||||
CLEANFILES = wmaker-popup-v1-server-protocol.h \
|
||||
wmaker-popup-v1-protocol.c \
|
||||
wmaker-popup-v1-protocol.c wmaker-dockapp-v1-server-protocol.h \
|
||||
wmaker-dockapp-v1-protocol.c \
|
||||
protocols/pointer-constraints-unstable-v1-protocol.h \
|
||||
protocols/wlr-output-power-management-unstable-v1-protocol.h \
|
||||
protocols/wlr-layer-shell-unstable-v1-protocol.h \
|
||||
|
|
@ -728,13 +733,13 @@ wmaker_SOURCES = GNUstep.h WindowMaker.h actions.c actions.h appicon.c \
|
|||
wsmap.h $(am__append_2) $(am__append_3) $(am__append_4) \
|
||||
$(am__append_5) $(am__append_6) $(am__append_7) \
|
||||
$(am__append_8) $(am__append_11)
|
||||
AM_CFLAGS = -I/usr/include/pango-1.0 -pthread -I/usr/include/libmount -I/usr/include/blkid -I/usr/include/fribidi -I/usr/include/cairo -I/usr/include/libpng16 -I/usr/include/pixman-1 -I/usr/include/harfbuzz -I/usr/include/freetype2 -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -I/usr/lib64/libffi/include -I/usr/include/wlroots-0.19 -I/usr/include/libdrm -I/usr/include/elogind -I/usr/lib64/libffi/include -I/usr/include/pixman-1 -DWLR_USE_UNSTABLE
|
||||
AM_CFLAGS = -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include -I/usr/include/harfbuzz -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/libmount -I/usr/include/blkid -I/usr/include/fribidi -I/usr/include/cairo -I/usr/local/include/pixman-1 -pthread -I/usr/local/include/wlroots-0.19 -I/usr/local/include -I/usr/local/include/pixman-1 -I/usr/include/libdrm -DWLR_USE_UNSTABLE
|
||||
AM_CPPFLAGS = $(DFLAGS) -I$(top_builddir)/wrlib -I$(top_srcdir)/WINGs \
|
||||
-I$(top_builddir)/WINGs -I$(srcdir)/backend/wayland \
|
||||
-I${includedir} $(am__append_12)
|
||||
wmaker_LDADD = $(top_builddir)/WINGs/libWINGs.la \
|
||||
$(top_builddir)/WINGs/libWUtil.la \
|
||||
$(top_builddir)/wrlib/libwraster.la -lwlroots-0.19 -lwayland-server -lm -lxkbcommon -lpixman-1 -lm \
|
||||
$(top_builddir)/wrlib/libwraster.la -L/usr/local/lib/x86_64-linux-gnu -lwlroots-0.19 -lwayland-server -lm -lxkbcommon -lpixman-1 -lm \
|
||||
$(am__append_13)
|
||||
|
||||
######################################################################
|
||||
|
|
@ -873,25 +878,30 @@ uninstall-binPROGRAMS:
|
|||
`; \
|
||||
test -n "$$list" || exit 0; \
|
||||
echo " ( cd '$(DESTDIR)$(bindir)' && rm -f" $$files ")"; \
|
||||
cd "$(DESTDIR)$(bindir)" && $(am__rm_f) $$files
|
||||
cd "$(DESTDIR)$(bindir)" && rm -f $$files
|
||||
|
||||
clean-binPROGRAMS:
|
||||
$(am__rm_f) $(bin_PROGRAMS)
|
||||
test -z "$(EXEEXT)" || $(am__rm_f) $(bin_PROGRAMS:$(EXEEXT)=)
|
||||
@list='$(bin_PROGRAMS)'; test -n "$$list" || exit 0; \
|
||||
echo " rm -f" $$list; \
|
||||
rm -f $$list || exit $$?; \
|
||||
test -n "$(EXEEXT)" || exit 0; \
|
||||
list=`for p in $$list; do echo "$$p"; done | sed 's/$(EXEEXT)$$//'`; \
|
||||
echo " rm -f" $$list; \
|
||||
rm -f $$list
|
||||
backend/$(am__dirstamp):
|
||||
@$(MKDIR_P) backend
|
||||
@: >>backend/$(am__dirstamp)
|
||||
@: > backend/$(am__dirstamp)
|
||||
backend/$(DEPDIR)/$(am__dirstamp):
|
||||
@$(MKDIR_P) backend/$(DEPDIR)
|
||||
@: >>backend/$(DEPDIR)/$(am__dirstamp)
|
||||
@: > backend/$(DEPDIR)/$(am__dirstamp)
|
||||
backend/wm_backend.$(OBJEXT): backend/$(am__dirstamp) \
|
||||
backend/$(DEPDIR)/$(am__dirstamp)
|
||||
backend/x11/$(am__dirstamp):
|
||||
@$(MKDIR_P) backend/x11
|
||||
@: >>backend/x11/$(am__dirstamp)
|
||||
@: > backend/x11/$(am__dirstamp)
|
||||
backend/x11/$(DEPDIR)/$(am__dirstamp):
|
||||
@$(MKDIR_P) backend/x11/$(DEPDIR)
|
||||
@: >>backend/x11/$(DEPDIR)/$(am__dirstamp)
|
||||
@: > backend/x11/$(DEPDIR)/$(am__dirstamp)
|
||||
backend/x11/x11_backend.$(OBJEXT): backend/x11/$(am__dirstamp) \
|
||||
backend/x11/$(DEPDIR)/$(am__dirstamp)
|
||||
backend/x11/x11_event.$(OBJEXT): backend/x11/$(am__dirstamp) \
|
||||
|
|
@ -906,10 +916,10 @@ backend/x11/xdnd.$(OBJEXT): backend/x11/$(am__dirstamp) \
|
|||
backend/x11/$(DEPDIR)/$(am__dirstamp)
|
||||
backend/wayland/$(am__dirstamp):
|
||||
@$(MKDIR_P) backend/wayland
|
||||
@: >>backend/wayland/$(am__dirstamp)
|
||||
@: > backend/wayland/$(am__dirstamp)
|
||||
backend/wayland/$(DEPDIR)/$(am__dirstamp):
|
||||
@$(MKDIR_P) backend/wayland/$(DEPDIR)
|
||||
@: >>backend/wayland/$(DEPDIR)/$(am__dirstamp)
|
||||
@: > backend/wayland/$(DEPDIR)/$(am__dirstamp)
|
||||
backend/wayland/wl_backend.$(OBJEXT): backend/wayland/$(am__dirstamp) \
|
||||
backend/wayland/$(DEPDIR)/$(am__dirstamp)
|
||||
backend/wayland/wl_background.$(OBJEXT): \
|
||||
|
|
@ -988,6 +998,9 @@ backend/wayland/wl_keyboard.$(OBJEXT): \
|
|||
backend/wayland/$(DEPDIR)/$(am__dirstamp)
|
||||
backend/wayland/wl_popup.$(OBJEXT): backend/wayland/$(am__dirstamp) \
|
||||
backend/wayland/$(DEPDIR)/$(am__dirstamp)
|
||||
backend/wayland/wl_dockapp_proto.$(OBJEXT): \
|
||||
backend/wayland/$(am__dirstamp) \
|
||||
backend/wayland/$(DEPDIR)/$(am__dirstamp)
|
||||
backend/wayland/wl_text_input.$(OBJEXT): \
|
||||
backend/wayland/$(am__dirstamp) \
|
||||
backend/wayland/$(DEPDIR)/$(am__dirstamp)
|
||||
|
|
@ -1093,6 +1106,7 @@ include ./$(DEPDIR)/wdefaults.Po # am--include-marker
|
|||
include ./$(DEPDIR)/window.Po # am--include-marker
|
||||
include ./$(DEPDIR)/winmenu.Po # am--include-marker
|
||||
include ./$(DEPDIR)/winspector.Po # am--include-marker
|
||||
include ./$(DEPDIR)/wmaker-dockapp-v1-protocol.Po # am--include-marker
|
||||
include ./$(DEPDIR)/wmaker-popup-v1-protocol.Po # am--include-marker
|
||||
include ./$(DEPDIR)/workspace.Po # am--include-marker
|
||||
include ./$(DEPDIR)/wsmap.Po # am--include-marker
|
||||
|
|
@ -1110,6 +1124,7 @@ include backend/wayland/$(DEPDIR)/wl_clipboard.Po # am--include-marker
|
|||
include backend/wayland/$(DEPDIR)/wl_context.Po # am--include-marker
|
||||
include backend/wayland/$(DEPDIR)/wl_dnd.Po # am--include-marker
|
||||
include backend/wayland/$(DEPDIR)/wl_dock.Po # am--include-marker
|
||||
include backend/wayland/$(DEPDIR)/wl_dockapp_proto.Po # am--include-marker
|
||||
include backend/wayland/$(DEPDIR)/wl_dragicon.Po # am--include-marker
|
||||
include backend/wayland/$(DEPDIR)/wl_event.Po # am--include-marker
|
||||
include backend/wayland/$(DEPDIR)/wl_events.Po # am--include-marker
|
||||
|
|
@ -1159,7 +1174,7 @@ include backend/x11/$(DEPDIR)/xdnd.Po # am--include-marker
|
|||
|
||||
$(am__depfiles_remade):
|
||||
@$(MKDIR_P) $(@D)
|
||||
@: >>$@
|
||||
@echo '# dummy' >$@-t && $(am__mv) $@-t $@
|
||||
|
||||
am--depfiles: $(am__depfiles_remade)
|
||||
|
||||
|
|
@ -1244,7 +1259,6 @@ cscopelist-am: $(am__tagged_files)
|
|||
|
||||
distclean-tags:
|
||||
-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
|
||||
|
||||
distdir: $(BUILT_SOURCES)
|
||||
$(MAKE) $(AM_MAKEFLAGS) distdir-am
|
||||
|
||||
|
|
@ -1311,22 +1325,22 @@ install-strip:
|
|||
mostlyclean-generic:
|
||||
|
||||
clean-generic:
|
||||
-$(am__rm_f) $(CLEANFILES)
|
||||
-test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)
|
||||
|
||||
distclean-generic:
|
||||
-$(am__rm_f) $(CONFIG_CLEAN_FILES)
|
||||
-test . = "$(srcdir)" || $(am__rm_f) $(CONFIG_CLEAN_VPATH_FILES)
|
||||
-$(am__rm_f) backend/$(DEPDIR)/$(am__dirstamp)
|
||||
-$(am__rm_f) backend/$(am__dirstamp)
|
||||
-$(am__rm_f) backend/wayland/$(DEPDIR)/$(am__dirstamp)
|
||||
-$(am__rm_f) backend/wayland/$(am__dirstamp)
|
||||
-$(am__rm_f) backend/x11/$(DEPDIR)/$(am__dirstamp)
|
||||
-$(am__rm_f) backend/x11/$(am__dirstamp)
|
||||
-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
|
||||
-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
|
||||
-rm -f backend/$(DEPDIR)/$(am__dirstamp)
|
||||
-rm -f backend/$(am__dirstamp)
|
||||
-rm -f backend/wayland/$(DEPDIR)/$(am__dirstamp)
|
||||
-rm -f backend/wayland/$(am__dirstamp)
|
||||
-rm -f backend/x11/$(DEPDIR)/$(am__dirstamp)
|
||||
-rm -f backend/x11/$(am__dirstamp)
|
||||
|
||||
maintainer-clean-generic:
|
||||
@echo "This command is intended for maintainers to use"
|
||||
@echo "it deletes files that may require special tools to rebuild."
|
||||
-$(am__rm_f) $(BUILT_SOURCES)
|
||||
-test -z "$(BUILT_SOURCES)" || rm -f $(BUILT_SOURCES)
|
||||
clean: clean-am
|
||||
|
||||
clean-am: clean-binPROGRAMS clean-generic clean-libtool mostlyclean-am
|
||||
|
|
@ -1380,6 +1394,7 @@ distclean: distclean-am
|
|||
-rm -f ./$(DEPDIR)/window.Po
|
||||
-rm -f ./$(DEPDIR)/winmenu.Po
|
||||
-rm -f ./$(DEPDIR)/winspector.Po
|
||||
-rm -f ./$(DEPDIR)/wmaker-dockapp-v1-protocol.Po
|
||||
-rm -f ./$(DEPDIR)/wmaker-popup-v1-protocol.Po
|
||||
-rm -f ./$(DEPDIR)/workspace.Po
|
||||
-rm -f ./$(DEPDIR)/wsmap.Po
|
||||
|
|
@ -1397,6 +1412,7 @@ distclean: distclean-am
|
|||
-rm -f backend/wayland/$(DEPDIR)/wl_context.Po
|
||||
-rm -f backend/wayland/$(DEPDIR)/wl_dnd.Po
|
||||
-rm -f backend/wayland/$(DEPDIR)/wl_dock.Po
|
||||
-rm -f backend/wayland/$(DEPDIR)/wl_dockapp_proto.Po
|
||||
-rm -f backend/wayland/$(DEPDIR)/wl_dragicon.Po
|
||||
-rm -f backend/wayland/$(DEPDIR)/wl_event.Po
|
||||
-rm -f backend/wayland/$(DEPDIR)/wl_events.Po
|
||||
|
|
@ -1536,6 +1552,7 @@ maintainer-clean: maintainer-clean-am
|
|||
-rm -f ./$(DEPDIR)/window.Po
|
||||
-rm -f ./$(DEPDIR)/winmenu.Po
|
||||
-rm -f ./$(DEPDIR)/winspector.Po
|
||||
-rm -f ./$(DEPDIR)/wmaker-dockapp-v1-protocol.Po
|
||||
-rm -f ./$(DEPDIR)/wmaker-popup-v1-protocol.Po
|
||||
-rm -f ./$(DEPDIR)/workspace.Po
|
||||
-rm -f ./$(DEPDIR)/wsmap.Po
|
||||
|
|
@ -1553,6 +1570,7 @@ maintainer-clean: maintainer-clean-am
|
|||
-rm -f backend/wayland/$(DEPDIR)/wl_context.Po
|
||||
-rm -f backend/wayland/$(DEPDIR)/wl_dnd.Po
|
||||
-rm -f backend/wayland/$(DEPDIR)/wl_dock.Po
|
||||
-rm -f backend/wayland/$(DEPDIR)/wl_dockapp_proto.Po
|
||||
-rm -f backend/wayland/$(DEPDIR)/wl_dragicon.Po
|
||||
-rm -f backend/wayland/$(DEPDIR)/wl_event.Po
|
||||
-rm -f backend/wayland/$(DEPDIR)/wl_events.Po
|
||||
|
|
@ -1645,6 +1663,13 @@ wmaker-popup-v1-protocol.c: $(top_srcdir)/protocols/wmaker-popup-v1.xml \
|
|||
wmaker-popup-v1-server-protocol.h
|
||||
$(WAYLAND_SCANNER) private-code $< $@
|
||||
|
||||
wmaker-dockapp-v1-server-protocol.h: $(top_srcdir)/protocols/wmaker-dockapp-v1.xml
|
||||
$(WAYLAND_SCANNER) server-header $< $@
|
||||
|
||||
wmaker-dockapp-v1-protocol.c: $(top_srcdir)/protocols/wmaker-dockapp-v1.xml \
|
||||
wmaker-dockapp-v1-server-protocol.h
|
||||
$(WAYLAND_SCANNER) private-code $< $@
|
||||
|
||||
# Generate protocol headers for Wayland compositor backend
|
||||
protocols/pointer-constraints-unstable-v1-protocol.h:
|
||||
@mkdir -p protocols
|
||||
|
|
@ -1714,10 +1739,3 @@ check-no-x11-policy:
|
|||
# Tell versions [3.59,3.63) of GNU make to not export all variables.
|
||||
# Otherwise a system limit (for SysV at least) may be exceeded.
|
||||
.NOEXPORT:
|
||||
|
||||
# Tell GNU make to disable its built-in pattern rules.
|
||||
%:: %,v
|
||||
%:: RCS/%,v
|
||||
%:: RCS/%
|
||||
%:: s.%
|
||||
%:: SCCS/s.%
|
||||
|
|
|
|||
|
|
@ -555,6 +555,31 @@ wl_display_open(const char *name)
|
|||
wlr_wl_output_create(wl_state.wl_backend_inner);
|
||||
}
|
||||
|
||||
/* Create XKB keymap BEFORE starting the backend so that keyboards
|
||||
* detected during wlr_backend_start() (libinput fires new_input
|
||||
* synchronously) can have the keymap applied immediately. */
|
||||
{
|
||||
struct xkb_context *xkb_ctx = xkb_context_new(XKB_CONTEXT_NO_FLAGS);
|
||||
if (xkb_ctx) {
|
||||
struct xkb_rule_names rules = {
|
||||
.rules = getenv("XKB_DEFAULT_RULES"),
|
||||
.model = getenv("XKB_DEFAULT_MODEL"),
|
||||
.layout = getenv("XKB_DEFAULT_LAYOUT"),
|
||||
.variant = getenv("XKB_DEFAULT_VARIANT"),
|
||||
.options = getenv("XKB_DEFAULT_OPTIONS"),
|
||||
};
|
||||
wl_state.xkb_keymap = xkb_keymap_new_from_names(
|
||||
xkb_ctx, &rules, XKB_KEYMAP_COMPILE_NO_FLAGS);
|
||||
xkb_context_unref(xkb_ctx);
|
||||
if (wl_state.xkb_keymap)
|
||||
wwarning("wl_backend: XKB keymap created (layout=%s variant=%s)",
|
||||
rules.layout ? rules.layout : "(default)",
|
||||
rules.variant ? rules.variant : "(none)");
|
||||
else
|
||||
wwarning("wl_backend: XKB keymap creation failed");
|
||||
}
|
||||
}
|
||||
|
||||
if (!wlr_backend_start(wl_state.backend)) {
|
||||
wwarning("wl_backend: failed to start backend");
|
||||
wlr_renderer_destroy(wl_state.renderer);
|
||||
|
|
@ -590,36 +615,6 @@ wl_display_open(const char *name)
|
|||
|
||||
wl_protocols_init();
|
||||
|
||||
/* 53: In wlroots 0.19, the headless backend has no input devices.
|
||||
* Real keyboard/pointer devices arrive via handle_backend_new_input when
|
||||
* the nested Wayland backend starts. We pre-create the default XKB keymap
|
||||
* here so wl_keysym_to_keycode() can resolve key bindings during StartUp()
|
||||
* before any real keyboard device has been received. */
|
||||
{
|
||||
struct xkb_context *xkb_ctx = xkb_context_new(XKB_CONTEXT_NO_FLAGS);
|
||||
if (xkb_ctx) {
|
||||
struct xkb_rule_names rules = {
|
||||
.rules = getenv("XKB_DEFAULT_RULES"),
|
||||
.model = getenv("XKB_DEFAULT_MODEL"),
|
||||
.layout = getenv("XKB_DEFAULT_LAYOUT"),
|
||||
.variant = getenv("XKB_DEFAULT_VARIANT"),
|
||||
.options = getenv("XKB_DEFAULT_OPTIONS"),
|
||||
};
|
||||
wl_state.xkb_keymap = xkb_keymap_new_from_names(
|
||||
xkb_ctx, &rules, XKB_KEYMAP_COMPILE_NO_FLAGS);
|
||||
xkb_context_unref(xkb_ctx);
|
||||
if (wl_state.xkb_keymap) {
|
||||
wwarning("wl_backend: default XKB keymap created for key binding resolution");
|
||||
/* Apply to any keyboard that was wired before keymap was ready,
|
||||
* but only if it doesn't already have one from the host. */
|
||||
if (wl_state.keyboard_dev) {
|
||||
struct wlr_keyboard *kb = wlr_keyboard_from_input_device(wl_state.keyboard_dev);
|
||||
if (!kb->xkb_state)
|
||||
wlr_keyboard_set_keymap(kb, wl_state.xkb_keymap);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
/* Advertise keyboard+pointer capability unconditionally so clients do not
|
||||
* need to wait for a real device to appear before binding wl_keyboard / wl_pointer. */
|
||||
if (wl_state.seat)
|
||||
|
|
|
|||
|
|
@ -148,25 +148,33 @@ handle_backend_new_input(struct wl_listener *listener, void *data)
|
|||
switch (dev->type) {
|
||||
case WLR_INPUT_DEVICE_KEYBOARD: {
|
||||
struct wlr_keyboard *kb = wlr_keyboard_from_input_device(dev);
|
||||
INPUT_LISTENER_REMOVE(wl_state.real_keyboard_key_listener);
|
||||
INPUT_LISTENER_REMOVE(wl_state.real_keyboard_modifiers_listener);
|
||||
INPUT_LISTENER_REMOVE(wl_state.real_keyboard_destroy_listener);
|
||||
if (wl_state.xkb_keymap && !kb->xkb_state)
|
||||
/* Always apply our keymap — libinput keyboards arrive without one */
|
||||
if (wl_state.xkb_keymap) {
|
||||
wlr_keyboard_set_keymap(kb, wl_state.xkb_keymap);
|
||||
wwarning("wl_backend: applied XKB keymap to keyboard %p", (void*)dev);
|
||||
}
|
||||
/* Track a keyboard device for wlr_seat_set_keyboard calls */
|
||||
if (!wl_state.keyboard_dev) {
|
||||
wl_state.real_keyboard_dev = dev;
|
||||
wl_state.keyboard_dev = dev;
|
||||
}
|
||||
if (wl_state.seat)
|
||||
wlr_seat_set_keyboard(wl_state.seat, kb);
|
||||
wl_state.real_keyboard_key_listener.notify = handle_keyboard_key;
|
||||
wl_signal_add(&kb->events.key,
|
||||
&wl_state.real_keyboard_key_listener);
|
||||
wl_state.real_keyboard_modifiers_listener.notify = handle_keyboard_modifiers;
|
||||
wl_signal_add(&kb->events.modifiers,
|
||||
&wl_state.real_keyboard_modifiers_listener);
|
||||
wl_state.real_keyboard_destroy_listener.notify = handle_keyboard_destroy;
|
||||
wl_signal_add(&dev->events.destroy,
|
||||
&wl_state.real_keyboard_destroy_listener);
|
||||
wwarning("wl_backend: real keyboard wired dev=%p xkb_state=%s", (void*)dev,
|
||||
/* Wire key events — use wlr_keyboard_group or attach to each device.
|
||||
* wlroots seat aggregates all keyboards automatically when we call
|
||||
* wlr_seat_set_keyboard, but we still need per-device listeners for
|
||||
* the key events to reach our handler. Use dynamic allocation. */
|
||||
struct wl_listener *key_l = calloc(1, sizeof(*key_l));
|
||||
struct wl_listener *mod_l = calloc(1, sizeof(*mod_l));
|
||||
if (key_l) {
|
||||
key_l->notify = handle_keyboard_key;
|
||||
wl_signal_add(&kb->events.key, key_l);
|
||||
}
|
||||
if (mod_l) {
|
||||
mod_l->notify = handle_keyboard_modifiers;
|
||||
wl_signal_add(&kb->events.modifiers, mod_l);
|
||||
}
|
||||
wwarning("wl_backend: keyboard wired dev=%p xkb_state=%s", (void*)dev,
|
||||
kb->xkb_state ? "yes" : "no");
|
||||
break;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -26,6 +26,8 @@ handle_keyboard_key(struct wl_listener *listener, void *data)
|
|||
struct wlr_keyboard_key_event *event = data;
|
||||
(void)listener;
|
||||
|
||||
wwarning("handle_keyboard_key: keycode=%u state=%d", event->keycode, event->state);
|
||||
|
||||
if (!wl_state.seat)
|
||||
return;
|
||||
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
/* Generated by wayland-scanner 1.24.0 */
|
||||
/* Generated by wayland-scanner 1.25.90 */
|
||||
|
||||
/*
|
||||
* Copyright © 2026 Window Maker Team
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
/* Generated by wayland-scanner 1.24.0 */
|
||||
/* Generated by wayland-scanner 1.25.90 */
|
||||
|
||||
#ifndef WMAKER_DOCKAPP_V1_SERVER_PROTOCOL_H
|
||||
#define WMAKER_DOCKAPP_V1_SERVER_PROTOCOL_H
|
||||
|
|
|
|||
Loading…
Reference in New Issue