bug-ncurses
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: AdaCurses: take the opportunity of the last GPR tools for build and


From: Thomas Dickey
Subject: Re: AdaCurses: take the opportunity of the last GPR tools for build and install.
Date: Sat, 31 Aug 2019 18:24:53 -0400
User-agent: NeoMutt/20170113 (1.7.2)

On Sun, Aug 25, 2019 at 06:28:21PM +0200, Pascal wrote:
> 
> > Le 25 août 2019 à 01:36, Thomas Dickey <address@hidden> a écrit :
> > 
> > On Sun, Aug 18, 2019 at 09:11:08PM -0400, Thomas Dickey wrote:
> >> On Sun, Aug 18, 2019 at 10:05:22AM +0200, Pascal wrote:
> >>> Hello Thomas,
> >>> 
> >>>> Le 17 août 2019 à 22:27, Thomas Dickey <address@hidden> a écrit :
> >>>> 
> >>>> On Sat, Aug 17, 2019 at 07:34:19PM +0200, Pascal wrote:
> >>>>> Hello,
> >>>>> 
> >>>>> I took the opportunity of the last GPR tools for build and install 
> >>>>> AdaCurses from Ada compiler suite GNAT Community 2019.
> >>>>> https://www.adacore.com/download
> >>>>> 
> >>>>> I took ncurses source codes from Github repo:
> >>>>> https://github.com/mirror/ncurses
> >>>> 
> >>>> https://invisible-island.net/personal/git-exports.html
> >>>> https://github.com/ThomasDickey/ncurses-snapshots
> >>>> 
> >>>>> I push all changes to my Github:
> >>>>> https://github.com/Blady-Com/ncurses/tree/proposal_01
> >>>>> 
> >>>>> Do I send a pull request to the ncurses Github repo?
> >>>> 
> >>>> no.
> >>> 
> >>> Ok I understand the way you proceed.
> >>> 
> >>>> 
> >>>>> Or else what is the correct way to submit chage proposals?
> >>>> 
> >>>> diff's, like the attached
> >>>> 
> >>>> I don't know about the change itself, since it has to be tested against 
> >>>> the
> >>>> existing gnat configurations.
> >>> 
> >>> What is your testing process?
> >> 
> >> I have scripts which do configure/make/make-install/make-uninstall,
> >> as well as making packages (for the AdaCurses tree by itself).
> >> I keep the logs, compare and resolve differences.  What platforms I build
> >> and test depends on what's changed recently.
> >> 
> >> Most of the builds I do are with the whole ncurses tree, which
> >> makes some difference in the way the configure/make process works.
> >> 
> >> But I test-build AdaCurses by itself occasionally (I have logs
> >> for Debian, Fedora, and OpenSUSE from last winter, for _that_).
> >> 
> >> Besides those, my whole-tree builds include cygwin and CentOS.
> >> 
> >>> On my side, I tested the changes with GNAT Community 2019 on macOS 10.13.
> >> 
> >> I did some test-builds with the 2018 version on macOS 10.13,
> >> which worked (though I noticed a problem with one of the pathnames).
> > 
> > I took a quick look at this, but it doesn't improve my ncurses6 build
> > for MacOS GNAT-2019 (that fails to find the libpanelw shared library
> > with/without the patch), and causes the Debian 9/testing builds to fail
> > to find _traces
> > 
> > (it's on my to-do list to investigate further)
> > 
> > The MacOS problem is one I knew about - simply haven't gotten to:
> > 
> > 181229
> > **  The MacOSX gnat package insists on being installed under ~thomas/opt,
> >             /Users/thomas/opt/GNAT/2018/bin
> >     and does run when the $PATH is updated.  A test-build using cfg-ncurses6
> >     fails since gnat's looking for "-lpanelw", but I'm building "-lpanelw6".
> >     Looks like that comes from a pragma in an m4 file "Linker_Options".
> >     There's 4 files to fixup, probably best to generate a script which
> >     can be used to replace the DEL_ADAMODE hack.
> 
> Hello Thomas,
> 
> You'll find in attached file, ncurses complete build logs from the proposed 
> changes repo:
> https://github.com/Blady-Com/ncurses/tree/proposal_01

hmm - I can successfully build using the options (without changes),
with a few obvious differences (on MacOS of course):

        + I'm using MacPorts (perhaps you're using homebrew).

        + my C compiler's a little older (8 vs 8.3.1)
          In your log there's an extra compiler warning, which may be related

        + there are minor/isolated differences in the steps taken to manage
          libraries due to the makefile differences, but I don't see anything
          amiss in my log.

        + I didn't try the "rm-docs" makefile rule yet (since my earlier
          inspection showed just the scripting removal).

        + I see, looking at
          
https://docs.adacore.com/gnat_ugn-docs/html/gnat_ugn/gnat_ugn/building_executable_programs_with_gnat.html#validity-checking
          that in your version you've suppressed some of the error/validity
          checks.  I agree that fixing style issues every few years is a
          nuisance -- but it's been a few years since the last.  Aside from
          that (and speed of compilation), I don't see a reason to do that.

          The optional checks show up here:

> Using GNAT Project:
> --- ./library.gpr     2019-08-17 19:05:10.000000000 +0200
> +++ adacurses.gpr     2019-08-17 19:11:47.000000000 +0200
> @@ -52,7 +52,7 @@
>          "-gnatafUno",
>          "-gnatVaep",      -- All validity checks
>          "-gnatw.eDH.Y");  -- Activate all optional warnings
> -     -- for Default_Switches ("C") use
> +     for Default_Switches ("C") 
> use("-I.","-I../include","-I../../include","-I/usr/local/xnadalib-2019/include","-I.","-I../include","-D_DARWIN_C_SOURCE","-DNDEBUG","-DHAVE_CONFIG_H","-I.","-O2","-g","-O0");
>    end Compiler;
>    for Languages use ("C", "Ada");
>    package Install is

rather than this:

--- ./library.gpr       2018-01-14 17:21:37.000000000 -0500
+++ AdaCurses.gpr       2019-08-31 17:56:16.000000000 -0400
@@ -51,7 +51,7 @@
         "-gnatafno",
         "-gnatVa",   -- All validity checks
         "-gnatwa");  -- Activate all optional errors
-     -- for Default_Switches ("C") use 
+     for Default_Switches ("C") 
use("-I.","-I../include","-I../../include","-I/usr/local/xnadalib-2019/include","-I.","-I../include","-D_DARWIN_C_SOURCE","-DNDEBUG","-DHAVE_CONFIG_H","-I.","-O2","-g","-O0");
   end Compiler;
   for Languages use ("C", "Ada");
 end AdaCurses;

(it would have been nice if the gnat tools used command-line options more
effectively - on-the-fly changes to configuration files is a nuisance).
 
> My configuration macOS 10.13 with GNAT Community 2019 (/usr/local/gnat).

similar: 10.13.6, with GNAT in a nonstandard directory on my $PATH

-- 
Thomas E. Dickey <address@hidden>
https://invisible-island.net
ftp://ftp.invisible-island.net

Attachment: build-typescript.txt.xz
Description: application/xz

Attachment: signature.asc
Description: PGP signature


reply via email to

[Prev in Thread] Current Thread [Next in Thread]