On Monday, 9 April 2012 at 10:19:47 UTC, Iain Buclaw wrote:

Personally I feel that people porting to specific architectures should maintain their differences in separate files under a /ports directory structure - lets say core.stdc.stdio as a cod example. The version for bionic would be under /ports/bionic/core/stdc/stdio.d, and that is the module that gets compiled into the library when building for bionic. When installing, the build process generates a header file of the bionic version of core.stdc.stdio and puts the file in the correct /include/core/stdc/stdio.di location.

This would really be fine. I'd even say just put them in core.sys.bionic or whatever, except that this location is for platform-specific imports and so core.sys.bionic.stdio could contain nonstandard extensions, while anything exposed by core.stdc should not. For all of these issues, bugzilla tickets and/or pull requests are much appreciated. I know that the design I chose for my own ease of maintenance may not scale past the handful of platforms DMD targets.

Reply via email to