I'm trying to find information how to port D, especially the D runtime to a proprietary OS. The OS support seems to be scattered around several files with a lot version (OS) switches. This makes kind of hard to understand what you have to implement. Also, what happens if you only have partial support, for example networking is completely left out.

Will there be a future improvement of this so that OS specific support can be moved to separate files and selected on module level instead? For example.

void DSpecificLibraryFunction(...)
{
    OSDependentLibraryFunction(...)
}

so that there are predefined OS specific functions that are selected on module level. Also version() switches where everything is consolidated into one file makes it more difficult to merge.

Do we have any guide for OS porting?

Reply via email to