[dmd-internals] Support of OpenBSD

Alex Rønne Petersen xtzgzorex at gmail.com
Tue Aug 7 09:23:44 PDT 2012


On Tue, Aug 7, 2012 at 6:14 PM, Konstantin Staver
<mad.skipjack at gmail.com> wrote:
> Hi.
>
> I'm trying to port phobos2 and druntime2 to OpenBSD 5.1. I found next problems:
>
> 1) D compiler loops with '-O -release' flags. For example:
> $ cat test.d
> module my_mod;
>
> void MyFunc()
> {
>     int[2] arr;
>     for (size_t i = 0; i < 2; ++i) {
>         arr[i] = 1;
>     }
> }
> $ pwd
> /home/walnut/work/druntime
> $ dmd -lib -oflib/libtest.a -m32 -O -release -Isrc ./test.d
> ^C
>
> 2) File druntime/src/rt/memory.d (http://goo.gl/iD3me). I don't know
> about gc_addRange params for OpenBSD :-(
>
> 3) "Empty main()" program crashes with segfault.
>
> 4) "Hello world" program failed to build with flag "-g" or "-gc":
> $ cat hello.d
> import std.stdio;
> void main() { writeln("Hello, World!"); }
> $ dmd -gc hello.d
> Internal error: backend/cod3.c 2662
>
> 5) I don't know yet how implement poly from std.math (asm).
>
> I'll be glad to any help: tips, links to docs and etc.
>
> My work forks:
>  https://github.com/MadSkipjack/druntime
>  https://github.com/MadSkipjack/phobos
>
> Thanks.

I've been meaning to port the tool chain to OpenBSD for a while now,
but I'd have to set up VMs to get anything done. If you happen to have
an OpenBSD machine running 24/7 that I could get an SSH account on,
that would be great. I should be able to do most of the porting in
druntime and Phobos. The compiler bugs you mention will probably take
a bit of time to track down, though.

Regards,
Alex


More information about the dmd-internals mailing list