From owner-freebsd-current@freebsd.org Tue Feb 25 10:02:57 2020 Return-Path: Delivered-To: freebsd-current@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 19ABE256944 for ; Tue, 25 Feb 2020 10:02:57 +0000 (UTC) (envelope-from btv1==3245c305c7a==tom@invisible-island.net) Received: from smtp-nf-201.his.com (smtp-nf-201.his.com [216.194.196.93]) by mx1.freebsd.org (Postfix) with ESMTP id 48RZHh3HNZz4WdS for ; Tue, 25 Feb 2020 10:02:56 +0000 (UTC) (envelope-from btv1==3245c305c7a==tom@invisible-island.net) Received: from cuda201.his.com (cuda201.his.com [216.194.196.22]) by smtp-nf-201.his.com (Postfix) with ESMTPS id B4AED60304 for ; Tue, 25 Feb 2020 05:02:55 -0500 (EST) X-ASG-Debug-ID: 1582624975-061c414c2f677990001-XDYc8F Received: from smtp-nf-202.his.com (smtp-nf-202.his.com [216.194.196.20]) by cuda201.his.com with ESMTP id cjAvljXmg2bYNcYw; Tue, 25 Feb 2020 05:02:55 -0500 (EST) X-Barracuda-Envelope-From: tom@invisible-island.net X-Barracuda-RBL-Trusted-Forwarder: 216.194.196.20 Received: from zproxy101.his.com (zproxy101.his.com [18.218.2.49]) by smtp-nf-202.his.com (Postfix) with ESMTPS id 1372E60087; Tue, 25 Feb 2020 05:02:55 -0500 (EST) Received: from localhost (localhost.localdomain [127.0.0.1]) by zproxy101.his.com (Postfix) with ESMTP id CA027179141; Tue, 25 Feb 2020 05:02:54 -0500 (EST) X-Barracuda-RBL-IP: 18.218.2.49 X-Barracuda-Effective-Source-IP: zproxy101.his.com[18.218.2.49] X-Barracuda-Apparent-Source-IP: 18.218.2.49 Received: from zproxy101.his.com ([127.0.0.1]) by localhost (zproxy101.his.com [127.0.0.1]) (amavisd-new, port 10032) with ESMTP id f2ZmZEaeGZlb; Tue, 25 Feb 2020 05:02:54 -0500 (EST) Received: from localhost (localhost.localdomain [127.0.0.1]) by zproxy101.his.com (Postfix) with ESMTP id AA837179197; Tue, 25 Feb 2020 05:02:54 -0500 (EST) X-Virus-Scanned: amavisd-new at zproxy101.his.com Received: from zproxy101.his.com ([127.0.0.1]) by localhost (zproxy101.his.com [127.0.0.1]) (amavisd-new, port 10026) with ESMTP id IMISsMZyqW0P; Tue, 25 Feb 2020 05:02:54 -0500 (EST) Received: from prl-debianold-64.jexium-island.net (static-71-246-219-82.washdc.fios.verizon.net [71.246.219.82]) by zproxy101.his.com (Postfix) with ESMTPSA id 8884B179141; Tue, 25 Feb 2020 05:02:54 -0500 (EST) Received: from tom by prl-debianold-64.jexium-island.net with local (Exim 4.89) (envelope-from ) id 1j6X3G-0005i0-8z; Tue, 25 Feb 2020 05:02:54 -0500 Date: Tue, 25 Feb 2020 05:02:54 -0500 From: Thomas Dickey To: Baptiste Daroussin Cc: Thomas Dickey , Yasuhiro KIMURA , freebsd-current@freebsd.org Subject: Re: r358062(ncurses) breaks installed ports, howto check? Message-ID: <20200225100254.n37x3nkywft36k4f@prl-debianold-64.jexium-island.net> X-ASG-Orig-Subj: Re: r358062(ncurses) breaks installed ports, howto check? Reply-To: dickey@his.com References: <20200224202021.65ca7f64@thor.intern.walstatt.dynvpn.de> <20200225.043711.677660873587364878.yasu@utahime.org> <20200224232530.2ehw6l4blvqkgbd4@prl-debianold-64.jexium-island.net> <20200224233516.z6ateiibdm4hk36s@prl-debianold-64.jexium-island.net> <20200225012803.7zem2qml7kpfnh53@prl-debianold-64.jexium-island.net> <20200225091956.kolhkmml7f4e3bup@prl-debianold-64.jexium-island.net> <20200225092737.sng6dqi64rqjm4sf@ivaldir.net> MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="arkeaoqte3l25ilk" Content-Disposition: inline In-Reply-To: <20200225092737.sng6dqi64rqjm4sf@ivaldir.net> User-Agent: NeoMutt/20170113 (1.7.2) X-Barracuda-Connect: smtp-nf-202.his.com[216.194.196.20] X-Barracuda-Start-Time: 1582624975 X-Barracuda-URL: https://spam.his.com:443/cgi-mod/mark.cgi X-Virus-Scanned: by bsmtpd at his.com X-Barracuda-Scan-Msg-Size: 5353 X-Barracuda-BRTS-Status: 1 X-Barracuda-Spam-Score: 0.00 X-Barracuda-Spam-Status: No, SCORE=0.00 using global scores of TAG_LEVEL=1000.0 QUARANTINE_LEVEL=1000.0 KILL_LEVEL=6.0 tests= X-Barracuda-Spam-Report: Code version 3.2, rules version 3.2.3.80245 Rule breakdown below pts rule name description ---- ---------------------- -------------------------------------------------- X-Rspamd-Queue-Id: 48RZHh3HNZz4WdS X-Spamd-Bar: ------ Authentication-Results: mx1.freebsd.org; dkim=none; dmarc=none; spf=pass (mx1.freebsd.org: domain of btv1==3245c305c7a==tom@invisible-island.net designates 216.194.196.93 as permitted sender) smtp.mailfrom=btv1==3245c305c7a==tom@invisible-island.net X-Spamd-Result: default: False [-6.88 / 15.00]; ARC_NA(0.00)[]; RCVD_VIA_SMTP_AUTH(0.00)[]; HAS_REPLYTO(0.00)[dickey@his.com]; FROM_HAS_DN(0.00)[]; RCPT_COUNT_THREE(0.00)[4]; R_SPF_ALLOW(-0.20)[+ip4:216.194.196.0/22]; IP_SCORE(-3.78)[ip: (-9.91), ipnet: 216.194.196.0/24(-4.95), asn: 11604(-3.96), country: US(-0.05)]; MIME_GOOD(-0.20)[multipart/signed,text/plain]; PREVIOUSLY_DELIVERED(0.00)[freebsd-current@freebsd.org]; DMARC_NA(0.00)[his.com]; TO_DN_SOME(0.00)[]; REPLYTO_ADDR_EQ_FROM(0.00)[]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; MIME_TRACE(0.00)[0:+,1:+,2:~]; TO_MATCH_ENVRCPT_SOME(0.00)[]; NEURAL_HAM_MEDIUM(-1.00)[-1.000,0]; SIGNED_PGP(-2.00)[]; FORGED_SENDER(0.30)[dickey@his.com,btv1==3245c305c7a==tom@invisible-island.net]; RCVD_NO_TLS_LAST(0.10)[]; RCVD_IN_DNSWL_LOW(-0.10)[93.196.194.216.list.dnswl.org : 127.0.5.1]; R_DKIM_NA(0.00)[]; SUBJECT_ENDS_QUESTION(1.00)[]; ASN(0.00)[asn:11604, ipnet:216.194.196.0/24, country:US]; FROM_NEQ_ENVFROM(0.00)[dickey@his.com,btv1==3245c305c7a==tom@invisible-island.net]; RCVD_COUNT_SEVEN(0.00)[10] X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Discussions about the use of FreeBSD-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 25 Feb 2020 10:02:57 -0000 --arkeaoqte3l25ilk Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Tue, Feb 25, 2020 at 10:27:37AM +0100, Baptiste Daroussin wrote: > On Tue, Feb 25, 2020 at 04:19:56AM -0500, Thomas Dickey wrote: > > On Mon, Feb 24, 2020 at 08:28:03PM -0500, Thomas Dickey wrote: > > > On Mon, Feb 24, 2020 at 06:35:16PM -0500, Thomas Dickey wrote: > > > > On Mon, Feb 24, 2020 at 06:25:30PM -0500, Thomas Dickey wrote: > > > > > On Tue, Feb 25, 2020 at 04:37:11AM +0900, Yasuhiro KIMURA wrote: > > > > > > From: "O. Hartmann" > > > > > > Subject: r358062(ncurses) breaks installed ports, howto check? > > > > > > Date: Mon, 24 Feb 2020 20:19:59 +0100 > > > > > >=20 > > > > > > > After r358062, many installed ports do not work anymore on se= veral running systems (CURRENT). > > > > > > > /usr/src/UPDATING states one should reinstall all ncurses dep= ending ports, but no hint is > > > > > > > given! Can someone mitigate this lack of information? Is ther= e a simple way to check what > > > > > > > ports installed on a system rely on ncurses provided by the s= ystem? > > > > > >=20 > > > > > > Check thread starting with following message. > > > > > >=20 > > > > > > https://lists.freebsd.org/pipermail/freebsd-ports/2020-February= /117710.html > > > > >=20 > > > > > That's a start, but it gives an overly-broad approach, saying that > > > > > anything linked to the ncurses library has to be recompiled. > > > > >=20 > > > > > The ABI change is just to the (upper-level) curses interface. > > > > > Most of the programs you'll have in ports use the (lower-level) t= ermcap > > > > > or terminfo interfaces. > > > > >=20 > > > > > For example gettext uses terminfo (not curses). > > > > >=20 > > > > > Curses applications use initscr or newterm (nm helps). > > > > > I have a script which uses nm to tell me which interface is used. > > > > >=20 > > > > > Actually, in my own ports, I don't see any which would be affecte= d, > > > > > since all of the curses applications are the utilities for ncurses > > > > > (or for my testing of ncurses). > > > > >=20 > > > > > Here's an example of what it tells me > > > > > (n5=3D=3Dncurses5, tc=3Dtermcap, ti=3Dterminfo): > > > > >=20 > > > > > ti bison > > > > > n5*+ti captoinfo > > > > > n5*+ti captoinfo6 > > > > > n5*+ti clear > > > > > n5*+ti clear6 > > > > > n5+tc ded > > > > > n5+ti dialog4ports > > > >=20 > > > > actually this one isn't one of mine (needs to be recompiled) > > > >=20 > > > > But for the rest - recompiling would be a waste of time. > > >=20 > > > ...that's just looking at /usr/local/bin. I see Millard's list > > > includes /usr/local/lib. I have some of those: > > >=20 > > > c3+tc libXvMCr600.so > > > tc libedit.so > > > tc libedit.so.0 > > > ti libgettextsrc.so > > > tc libreadline.so > > > tc libslang.so > > > ti libtextstyle.so > > > c3+tc libvulkan_radeon.so > > >=20 > > > that is, mesa-dri uses curses, but libedit and libreadline do not. > > >=20 > > > I have llvm80, but that doesn't live in either of /usr/local/bin > > > or /usr/local/lib. It's in its own directory (with a script in > > > the former pointing there). It uses curses (and is not a quick > > > recompile). > >=20 > > now... I discussed this briefly with the developer on the 20th of Janua= ry. > >=20 > > ncurses can be configured/built to use the old binary interface (ABI 5), > > but he ran into some problem doing that, and decided to use ABI 6. > >=20 > > At the time, I had supposed that cost would be contained by the system > > builders, not considering the impact on users rebuilding ports. > >=20 > > Depending on where FreeBSD is along that path, it might be worth > > revisiting, to see exactly why the build with ABI 5 did not work. > >=20 > I think we should anyway move on on ABI 6, which is why I didn't insist o= n ABI 5 > when I could not find the root cause of it not working. In the futur we w= ill > update ncurses on more regular basis, and ABI 6 is what everyone else is = using > so probably what is the most tested. >=20 > if I understand correctly upstream build system, staying on ABI 5 disable= many > features that are available in ABI 6. yes... the wide-character configuration in ABI 6 adds a lot of stuff. ABI 5 is for compatibility; narrow-character applications (and termcap) wouldn't benefit as much from ABI 6. =20 > For those interested my current plan with ncurses is the following for fr= eebsd > 13.0: > - split terminfo from ncurses (like the upstream build system) so a futur= change > in high level ABI will impact less consumers offhand, I see that 2/3 to 3/4 of the consumers use termcap or terminfo. My script tells me that - I've not integrated that into something that would relate the results to packages, since I was mainly interested in comparing curses/terminfo/termcap usage on a variety of systems. (I recall there's some problem using it with Solaris - when I revisit that and get "enough" data, I'll probably make a nice table on a webpage). > - only keep the widechar version of ncurses in base > - add the pkgconf file in base to ease the ports tree. >=20 > Again for people who don't want to rebuild everything compat12x package h= as been > created and can be used to have all binaries working. >=20 > Best regards, > Bapt --=20 Thomas E. Dickey https://invisible-island.net ftp://ftp.invisible-island.net --arkeaoqte3l25ilk Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iF0EABECAB0WIQTFIEjAwHSP7iJ9R6JwI1Pg9+SO2wUCXlTwygAKCRBwI1Pg9+SO 27e1AKCS6AEM/EU+55DaSoHaqS63cZVfJgCeMJBWFq0Lu74MF0r8yl06rd8AOUg= =z1Qb -----END PGP SIGNATURE----- --arkeaoqte3l25ilk--