Re: git: c2bb66023fe3 - main - kbdcontrol: enable pre-Unicode dead key table compatibility
Date: Tue, 14 Feb 2023 14:05:28 UTC
On 14 Feb 2023, at 13:15, Stefan Eßer <se@FreeBSD.org> wrote:
>
> The branch main has been updated by se:
>
> URL: https://cgit.FreeBSD.org/src/commit/?id=c2bb66023fe3e3617f56302b6960f59545a5535c
>
> commit c2bb66023fe3e3617f56302b6960f59545a5535c
> Author: Stefan Eßer <se@FreeBSD.org>
> AuthorDate: 2023-02-14 12:49:06 +0000
> Commit: Stefan Eßer <se@FreeBSD.org>
> CommitDate: 2023-02-14 12:49:06 +0000
>
> kbdcontrol: enable pre-Unicode dead key table compatibility
>
> The definition of pre-Unicode keymap ioctls will be made optional and
> dependent on COMPAT_FREEBSD13 in a follow-up commit to 14-CURRENT.
>
> While we generally provide ABI compatibility for older binaries on
> a new kernel, but not functionally extended userland programs on an
> old kernel, it has been specifically requested to preserve ABI
> compatibility for the kbdcontrol program for both these cases.
>
> Passing the kernel configuration option COMPAT_FREEBSD13 to the build
> of kbdcontrol will make ioctls visible to the build that are normally
> hidden, but required to implement compatibility with kernels that only
> support 8 bit characters in dead key maps.
>
> This commit is not to be merged to any previous FreeBSD version and
> it shall be reverted as soon as this type of ABI compatibility is no
> longer deemed necessary (probably before 14-STABLE is branched).
>
> This commit is a part of review D38465 and split off to allow it to be
> reverted using the commit ID.
> ---
> usr.sbin/kbdcontrol/Makefile | 3 +++
> 1 file changed, 3 insertions(+)
>
> diff --git a/usr.sbin/kbdcontrol/Makefile b/usr.sbin/kbdcontrol/Makefile
> index 960671a40fe7..d2107fb86290 100644
> --- a/usr.sbin/kbdcontrol/Makefile
> +++ b/usr.sbin/kbdcontrol/Makefile
> @@ -9,4 +9,7 @@ SRCS= kbdcontrol.c lex.l
> WARNS?= 4
> CFLAGS+= -I${.CURDIR}
>
> +# temporarily added for pre-Unicode accent key API/ABI compatibility
> +CFLAGS+= -DCOMPAT_FREEBSD13
This doesn’t seem right... COMPAT_FREEBSD* is for kernel not userspace.
Normally this would be a _WANT_FOO.
Jess
> +
> .include <bsd.prog.mk>