Re: git: c2bb66023fe3 - main - kbdcontrol: enable pre-Unicode dead key table compatibility

From: Jessica Clarke <jrtc27_at_freebsd.org>
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>