public inbox for cygwin@cygwin.com
 help / color / mirror / Atom feed
From: Daniel Santos <daniel.santos@pobox.com>
To: David Billinghurst <dbcygwin@gmail.com>, cygwin@cygwin.com
Subject: Re: Strange errors running gcc tests on Cygwin
Date: Wed, 08 Mar 2017 05:14:00 -0000	[thread overview]
Message-ID: <a7aca745-bbf2-a356-704a-4956ae6a28b3@pobox.com> (raw)
In-Reply-To: <aab8c02e-2fe7-8ebf-5f3b-126e0ea0a745@gmail.com>

On 03/07/2017 06:36 PM, David Billinghurst wrote:
> On 8/03/2017 10:25, Daniel Santos wrote:
>
>> My concern is with the dynamic portion of this behavior -- what is 
>> affected by environment variables.
>
> Many years ago I ran a nightly build/test of gcc under cygwin and 
> reported the results to gcc-testresults.  There may be is discussion 
> on the gcc mailing lists from c2000-2005.  If you search 
> "site:gcc.gnu.org David Billinghurst cygwin" you ??might?? find 
> something relevant.
>
> From memory, I got it all working by
>
>  * building gcc and friends
>  * using find to locate all the .exe and .dll files in the build tree
>  * worked out by trial and error which files were needed at run time by
>    the test suite.
>  * setting PATH when running the testsuite so that the directories
>    containing (new) required .exe and .dll were in front of any system
>    directories
>  * making sure that PATH wasn't reset by the testsuite
>  * looking at places where LD_LIBRARY_PATH was set/modified by the
>    testsuite and checking if cygwin needed PATH to match
>  * (submitting patched to fix gcc testsuite under cygwin)
>
> Once that was done it all "just worked" until it broke again. Good luck.
>

Thank you very much for this. This is the path that I was kind-of 
setting off on, I just wanted to try one more time to run the tests 
as-is, this time with only one make job and see if I could get the mass 
of failures to match so that I could say that my patches cause "no 
additional errors" (ignoring the fact that there's 16k total failures), 
but I can't even get the breakages to match up.  (This is another topic, 
when I run tests in parallel I eventually end up with some "broken pipe" 
errors and that make job hangs).

I found some of your patches, pity it got re-broken.  I have a bug open 
for this here: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=79867.  In 
the end, I think that this should be fixed by adding some new "black 
box" interfaces to DejaGnu that manage the executable and library search 
paths.  Then gcc's testsuite should deprecate ANY direct access to any 
of the *PATH environment variables in favor of this new interface in 
DejaGnu.  As it is, the gcc code already changes both LD_LIBRARY_PATH 
and SHLIB_PATH to support HP-UX (not sure if any other systems use the 
latter), so it's already gotten a little hairy.

In order to facilitate this cleanly, I think that libgcc needs to be 
moved out of /usr/bin and into /usr/lib/gcc/<triplet>/<version>/ and 
then have that added to the PATH and LD_LIBRARY_PATH somewhere 
(autoexec.bat? registry? I have no idea).  Having an /sbin/ldconfig 
would be the most ideal mechanism of managing this. (Anybody want a 
little project? :)  The test harness regularly toggles in between the 
host and target compiler.

We need a clean and reproducible set of steps for running tests on 
Cygwin.  Somewhere, these tests should be run regularly, maybe on a 
server/compiler farm somewhere under a VM, so that breakages can be 
addressed as soon as they appear rather than when somebody wants to 
touch the ms_abi code and has to test on Cygwin -- how I ended up here. :)

Thanks again for the help!
Daniel

--
Problem reports:       http://cygwin.com/problems.html
FAQ:                   http://cygwin.com/faq/
Documentation:         http://cygwin.com/docs.html
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple

  reply	other threads:[~2017-03-08  5:14 UTC|newest]

Thread overview: 29+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-03-04  5:44 Daniel Santos
2017-03-04 11:27 ` Tim Prince via cygwin
2017-03-05  2:49 ` Daniel Santos
2017-03-05  3:49   ` JonY
2017-03-05  4:20     ` Daniel Santos
2017-03-05  7:23     ` Daniel Santos
2017-03-05  7:32     ` Daniel Santos
2017-03-05 11:08       ` David Billinghurst
2017-03-07  1:59         ` Daniel Santos
2017-03-07 13:58           ` cyg Simple
2017-03-07 23:21             ` Daniel Santos
2017-03-08  0:36               ` David Billinghurst
2017-03-08  5:14                 ` Daniel Santos [this message]
2017-03-08  8:21                   ` Brian Inglis
2017-03-09 22:48                     ` Daniel Santos
2017-03-09 23:51                       ` Brian Inglis
2017-03-10  0:01                         ` Tim Prince via cygwin
2017-03-10 18:56                         ` Achim Gratz
2017-03-10 20:30                           ` Brian Inglis
2017-03-10 20:48                             ` Achim Gratz
2017-03-13 16:35                           ` Daniel Santos
2017-03-13 17:25                             ` Marco Atzeri
2017-03-15 16:50                               ` Daniel Santos
2017-03-15 19:36                                 ` Brian Inglis
2017-03-16 20:55                                   ` Daniel Santos
2017-03-17  5:17                                     ` Brian Inglis
2017-03-18 13:48                                       ` Daniel Santos
2017-03-18 14:52                                         ` cyg Simple
2017-03-12  4:04                         ` Daniel Santos

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=a7aca745-bbf2-a356-704a-4956ae6a28b3@pobox.com \
    --to=daniel.santos@pobox.com \
    --cc=cygwin@cygwin.com \
    --cc=dbcygwin@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).