-
-
Notifications
You must be signed in to change notification settings - Fork 423
dmd-cxx: Fix broken 'stat' definitions for ARM, AArch64 & more #2898
Conversation
Thanks for your pull request, @Geod24! Bugzilla referencesYour PR doesn't reference any Bugzilla issue. If your PR contains non-trivial changes, please reference a Bugzilla issue or create a manual changelog. Testing this PR locallyIf you don't have a local development environment setup, you can use Digger to test this PR: dub fetch digger
dub run digger -- build "dmd-cxx + druntime#2898" |
Great, I can test on the aarch64 container of mine. |
Works for me, seems like isDir() works now (or at least rmdirRecurse works for my tests on aarch64) :) |
Tried to use Dub, it went very wrong. Found out that: import std.process;
import std.exception;
import std.format;
void main ()
{
auto result = executeShell("ls -l -a");
enforce(result.status == 0, format("Failed: %d: %s", result.status, result.output));
} SEGV. I think I'll just have to go over all |
Found a few more issues. Rebuilding the AArch64 now (based on https://gitlab.alpinelinux.org/Geod24/aports/commit/68059efc1f9140c0e810385a174544addacb60ed). |
I can test again on my Aarch64 container tomorrow. |
b0bb4d5
to
4531b3c
Compare
@Cogitri : Could you test the following program: import std.process;
import std.exception;
import std.format;
import std.stdio;
void main ()
{
auto result = execute(["ls"]);
if (result.status != 0)
writeln(format("Failed: %d: %s", result.status, result.output));
} On your machine and tell me where the SEGV happens ? Newly built packages: http://pkg.mimiks.net/packages/main/ |
Seems to work fine on my machine:
If I modify the program to
It prints
, as expected.
|
It's great that it works, but it also looks like I've reached the limits of qemu, which means I can't really test myself anymore. I'll see if I can abuse the Alpine machines then :) |
@thewilsonator : The autotester doesn't pass on dmd-cxx, that's why it's not |
Thanks for your work! :) |
Includes port fixes for Musl on ARM, AArch64, and SystemZ targets. Reviewed-on: dlang/druntime#2751 dlang/druntime#2843 dlang/druntime#2844 dlang/druntime#2898
I'm mostly interested in fixing ARMv7, AArch64 and SystemZ (s390x) for Alpine Linux, but added porting for a few other archs while I was at it.
Will PR against stable as well so we get it fixed in v2.090.1 and hopefully LDC 1.20.0
CC @Cogitri