DMD test suite not runnable on Debian/Linux

Seb via Digitalmars-d digitalmars-d at puremagic.com
Fri Jun 9 15:34:00 PDT 2017


On Friday, 9 June 2017 at 22:14:30 UTC, H. S. Teoh wrote:
> I'm trying to track down an autotester failure in a DMD PR, and 
> getting very frustrated that the DMD test suite does not run on 
> Debian/Linux because of the whole PIE-by-default fiasco that 
> necessitates compiling everything with -fPIC.
>
> (1) Currently, there is no way to customize how test/Makefile 
> compiles d_do_tests.d, so there is no way to insert -fPIC into 
> the offending compile line.

Once this PR is merged, it will at least use the default conf 
file:

https://github.com/dlang/dmd/pull/6870

(the config file is now in generated and this lead to nice errors 
on my machine)

> (2) d_do_tests itself runs compile commands with `-conf=`, so 
> putting -fPIC inside dmd.conf has no effect (where otherwise it 
> does the right thing when dmd is invoked "normally"). There's 
> no obvious way to make customize the compile command used for 
> each test: I tried setting the environment variable ARGS but 
> that just messed up the test runner's expected outputs. Tried 
> to add -fPIC to the DMD environment variable but that blew up 
> in a different way.

Do you mean DFLAGS with DMD environment variable?

> So basically, I'm stuck up PIE creek without a paddle, and have 
> no way to locally test DMD changes without hogging more load on 
> the autotester.

Don't worry about that. It's just a computer. As a temporary 
workaround, docker might be worth considering.

> Why is something so simple so hard to do?!

I think it's simply because not many people use the DMD test 
suite and those who do are used to the pain or have their 
custom-built tricks.
Also I guess that there are two groups of people:

A) wow that's complicated and frustrating -> move on to the next 
great thing in life
B) eh what the heck. I have seen worse...

(And not many in-between).




More information about the Digitalmars-d mailing list