bug-gawk
[Top][All Lists]
Advanced

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

Re: MinGw port of gawkextlib


From: Eli Zaretskii
Subject: Re: MinGw port of gawkextlib
Date: Fri, 13 May 2022 16:59:09 +0300

> Date: Fri, 13 May 2022 09:28:50 -0400
> From: "Andrew J. Schorr" <aschorr@telemetry-investments.com>
> Cc: mcollado2011@gmail.com, bug-gawk@gnu.org
> 
> And the answer is that it is required in one case. I ran:
> 
> ./check_all.sh --prefix=/tmp/gelib --with-gawkextlib=/tmp/gelib
> 
> And got this result:
> 
> SUCCESS: lib abort aregex csv errno gd haru json lmdb mbs mpfr nl_langinfo 
> pgsql reclen redis timex xml
> ERROR: select
> 
> The issue is that the select extension tests load the time extension
> to use the sleep and gettimeofday functions.
> 
> Is there some shell command we can run to detect whether the current
> platform uses : or ; as the path separator character, or some automake
> or autoconf magic to supply this? Maybe we can just test
> whether $(pkgextensiondir) contains a backslash character.

I don't think this the right question, because when one builds and
tests a package using the Posix environment (the configure script, the
shell fragments in Makefiles, the shell scripts of the test suite,
etc.), one must use MSYS, which emulates Posix on Windows, and has
special features for invoking native MS-Windows programs under that
environment.  One such feature is converting ':' to ';' in PATH-style
variables; another feature is conversion of /d/foo/bar Posix-style
file names into d:\foo\bar Windows-style file names.

So basically, when the gawkextlib test suite runs, we have two
"platforms" coexisting simultaneously: the MSYS "platform", which uses
':', and the MinGW (a.k.a. "native MS-Windows") platform that uses
';'.  In particular, when the MinGW build of Gawk is invoked by the
test suite, as it should be, it will report Windows style file names
and semi-colon-separated AWKLIBPATH.

I think it is easier to ask MinGW users to run the test suite with a
special argument, like

  make check PATHSEP=';'

or somesuch.

> Perhaps I need to set up a MinGW environment so I can test this myself.
> Is there a simple explanation of how to do this? I know nothing about MinGW.

You are welcome to do that, but I volunteer to test your possible
solution and report.  I think it will take less of your time and
efforts.

The instructions to start with a MinGW installation are here:

  https://www.msys2.org/



reply via email to

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