[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Cygwin Package ncurses 6.3-20221224 ABI > 9 config patches
From: |
Thomas Dickey |
Subject: |
Re: Cygwin Package ncurses 6.3-20221224 ABI > 9 config patches |
Date: |
Sun, 1 Jan 2023 10:38:32 -0500 |
User-agent: |
Mutt/1.10.1 (2018-07-13) |
On Sun, Jan 01, 2023 at 08:19:36AM -0700, Brian Inglis wrote:
> Happy New Year Thomas,
>
> Just catching up on the latest package updates over the holiday season.
>
> When building ncurses 6.3-20221224, got compile errors with
> NCURSES_MOUSE_VERSION not set in curses.h, coming from configure.in,
> autoconf generated as configure, run with option --with-abi-version=10,
> which has an issue with the case $cf_cv_abi_version block setting only for
> ABI 5-9.
>
> I fixed my issue by setting the variable in a case branch handling 1[0-9],
> initially to 4, but that is checked and reset to '', so set to 3, although
> it should probably be 2 as the ABI version is originally 6.
ah... I overlooked that some packagers renumber the ABI's.
The basic problem there is that someone notices a functional change
which doesn't affect the binary interface, and decides to increment
the ABI. (I don't recall anyone asking me before they did that).
I suppose a fix here would be to add options to set the mouse-version
and perhaps a few other ABI-dependent features explicitly (and warn rather
than error-out when a mismatch is seen).
...adding a to-do item
> I attach my patches for configure.in, and configure, as I can not autoreconf
> your setup, as even when limited autoreconf to 2.5? is requested, Cygwin
> changes to handle PE builds and other oddities break the build.
>
> The package was maintained by Yaakov Selkowitz until his recent RedHat and
> personal commitments got too much for him to deal with Cygwin as a
> volunteer,
> and used ABI version 8 up to version 5.6, going to 10 in version 5.9.
>
> A better approach than my patch would be to use the original ABI version
> determined by configure to set the NCURSES_MOUSE_VERSION, before being
> overridden by the option, but I am too inexperienced using autoconf, so
> could not even suggest a patch which knows where to use or how to save the
> original ABI version to do that.
>
> My current Cygwin cygport package build control script definitions are at:
>
> https://cygwin.com/git/?p=git/cygwin-packages/ncurses.git;a=shortlog;h=refs/heads/playground
>
> the latest version made available only for testing initially, any issues
> having high impact, used in base packages like readline, bash and other
> interactive shells, and many character screen apps like editors and Internet
> clients.
>
> --
> Take care. Thanks, Brian Inglis Calgary, Alberta, Canada
>
> La perfection est atteinte Perfection is achieved
> non pas lorsqu'il n'y a plus rien à ajouter not when there is no more to add
> mais lorsqu'il n'y a plus rien à retirer but when there is no more to cut
> -- Antoine de Saint-Exupéry
> --- origsrc/configure.in 2022-11-05 14:14:56.000000000 -0600
> +++ src/configure.in 2022-12-31 18:33:11.828758700 -0700
> @@ -1275,6 +1275,9 @@ case $cf_cv_abi_version in
> ([[789]])
> NCURSES_MOUSE_VERSION=3
> ;;
> +(1[[0-9]])
> + NCURSES_MOUSE_VERSION=3
> + ;;
> esac
>
> AC_SUBST(NCURSES_MOUSE_VERSION)
> --- origsrc/configure 2022-11-05 15:13:26.000000000 -0600
> +++ src/configure 2022-12-31 22:30:48.798200500 -0700
> @@ -15418,6 +15418,9 @@ case $cf_cv_abi_version in
> ([789])
> NCURSES_MOUSE_VERSION=3
> ;;
> +(1[0-9])
> + NCURSES_MOUSE_VERSION=3
> + ;;
> esac
>
> ### use option --enable-ext-putwin to turn on extended screendumps
--
Thomas E. Dickey <dickey@invisible-island.net>
https://invisible-island.net
signature.asc
Description: PGP signature