epsilon-devel
[Top][All Lists]
Advanced

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

Re: build fails on MacOS/MachO: not ELF or COFF


From: Luca Saiu
Subject: Re: build fails on MacOS/MachO: not ELF or COFF
Date: Mon, 11 May 2020 22:46:32 +0200
User-agent: Gnus (Gnus v5.13), GNU Emacs 27.0.50, x86_64-pc-linux-gnu

Hello Niobos.

On 2020-05-11 at 18:52 +0000, Niobos wrote:

> [...]
> So they all seem to fail after approximately the same time, but way less
> than 3 seconds.

Thanks.  So my hypothesis about the timeout command working killing every
test cast was wrong.

> My tests-directory is around 8.7MB, but it compressed quite nicely to
> 51KB, so I've attached it here.

You are right.  My file was larger because I had old core files lying
around in some tests/ subdirectory.
These tarballs can be useful and are quite convenient to copy around.  I
should add some script to make them easy to generate.

> I removed the jitter directory and re-cloned it before checking out the
> niobos-branch. Or at least, I thought I did. I wanted to double-check
> that, and can't reproduce my earlier results... This makes me doubt my
> sanity, since I *did* reproduce this before my previous mail in order to
> log the output with `tee`...

Okay, it is easy to make some mistake.  Let us ignore the first run
problem, unless it happens again.

> Anyway, `make check` now "works" in the sense that it actually tests
> things, but the tests still fail (or skip, which I'll ignore).  [...]

You say that you have 318 failures, so this means 0 PASSes and 318
SKIPs.  The number of SKIPs is correct.  The fact that there is
absolutely no PASS makes me think of a problem with the testing
machinery.

Let us pick a few of the simplest test cases.

structured-1 is supposed to run the Structured program
  skip;
(look at
/private/tmp/poke-20200511-9631-1x58vk8/jitter/tests/structured/skip.structured
) on a stack VM.  The exptected output is emtpy.

[luca@moore ~/repos/jitter/niobos/3]$ cat 
tests/structured/programs-1.command-line 
/private/tmp/poke-20200511-9631-1x58vk8/jitter/bin/structured--switch --stack 
/private/tmp/poke-20200511-9631-1x58vk8/jitter/tests/structured/skip.structured
[luca@moore ~/repos/jitter/niobos/3]$ cat tests/structured/programs-1.expected 

[luca@moore ~/repos/jitter/niobos/3]$ cat tests/structured/programs-1.stdout 

[luca@moore ~/repos/jitter/niobos/3]$ cat tests/structured/programs-1.stderr 
[luca@moore ~/repos/jitter/niobos/3]$ 

So there is absolutely nothing on stderr, and no output.  The program
may have exited with failure for some reason.

structured-17 is the first test case with an expected non-empty output.
It runs this program:
  if true then
     print 42;
  else
     print 43;
  end
on a stack VM.

[luca@moore ~/repos/jitter/niobos/3]$ cat 
tests/structured/programs-17.command-line 
/private/tmp/poke-20200511-9631-1x58vk8/jitter/bin/structured--switch --stack 
/private/tmp/poke-20200511-9631-1x58vk8/jitter/tests/structured/conditional.structured
[luca@moore ~/repos/jitter/niobos/3]$ cat tests/structured/programs-17.expected 
42
[luca@moore ~/repos/jitter/niobos/3]$ cat tests/structured/programs-17.stdout 
42
[luca@moore ~/repos/jitter/niobos/3]$ cat tests/structured/programs-17.stderr 
[luca@moore ~/repos/jitter/niobos/3]$ 

So even the output is correct.  Now I am really suspecting a test suite
issue.

Let me check a complicated test case.  jitterlisp-472 is a sort
program, implemented in JitterLisp and compiled, using Boehm's GC on
direct-threading.

[luca@moore ~/repos/jitter/niobos/3]$ cat 
tests/jitterlisp/jitterlisp-472.command-line 
/private/tmp/poke-20200511-9631-1x58vk8/jitter/bin/jitterlisp--boehm--direct-threading
 --no-repl 
/private/tmp/poke-20200511-9631-1x58vk8/jitter/tests/jitterlisp/test-definitions.scm
 
/private/tmp/poke-20200511-9631-1x58vk8/jitter/tests/jitterlisp/jitterlisp-472-form.tmp
[luca@moore ~/repos/jitter/niobos/3]$ cat 
tests/jitterlisp/jitterlisp-472.expected 
(0 1 2 3 4 5 6 7 8 9)
[luca@moore ~/repos/jitter/niobos/3]$ cat 
tests/jitterlisp/jitterlisp-472.stdout 
(0 1 2 3 4 5 6 7 8 9)
[luca@moore ~/repos/jitter/niobos/3]$ cat 
tests/jitterlisp/jitterlisp-472.stderr 
[luca@moore ~/repos/jitter/niobos/3]$ 

The output is perfect in every case I checked, and this cannot happen by
chance.  I am doing something dumb within the test suite machinery.


I would like to fix the test suite problem, with your help, but the
current information is already be enough to make me relatively confident
that you can go on and build Poke now.  Jitter's test suite is not used
in sub-package mode.

I am committing the change to Jitter's master, and bumping Jitter's
required version on Poke.

-- 
Luca Saiu
* My personal web site:  http://ageinghacker.net
* GNU epsilon:           http://www.gnu.org/software/epsilon
* Jitter:                http://ageinghacker.net/projects/jitter

I support everyone's freedom of mocking any opinion or belief, no
matter how deeply held, with open disrespect and the same unrelented
enthusiasm of a toddler who has just learned the word "poo".

Attachment: signature.asc
Description: PGP signature


reply via email to

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