<html><head><meta http-equiv="Content-Type" content="text/html charset=utf-8"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" class=""><div class="">So there are a few issues that would be a bit tricky to deal with:</div><div class=""><br class=""></div><div class="">SwiftPM uses Foundation so you would have to devise some way to build SwiftPM either without Foundation (which seems sub-optimal or replication of effort/code), directly importing parts of Foundation into the code-base for SwiftPM which might result in a synchronization issue of code, or a last-build result re-build of Foundation used in SwiftPM which seems like a pain when it comes to first time setup.</div><div class=""><br class=""></div><div class="">Foundation’s build environment is a bit tricky since it is not just plain C, we have assembly and some really funky linker tricks that might pose an issue. Also it might be a bit difficult to build CoreFoundation as it’s own target (as it stands now you can technically build CF without swift and use that independently on Linux - which elides the need to publish a separate CFLite).</div><div class=""><br class=""></div><div class="">From previous build infrastructure efforts that I have undertaken; the general consensus is that using SwiftPM would be nice but it doesn’t offer enough of a compelling reason to switch and complicate the rest of the Swift build process (which is already very complex).</div><div class=""><br class=""></div><div class="">Now the other alternative is that Foundation could be built with cmake. That has been something I have explored and it shows some promise. However as for fish to fry, it is a very small one. </div><div class=""><br class=""></div><div class="">Now I think fixing the dirty file bits from the build script might be a good thing to fix even without changing the build infrastructure. I have tried to fix this problem a few times but it ends up getting really complex really quickly.</div><div class=""><br class=""></div><div class="">If you want to dive into the current build system or perhaps look at cmake let me know if there are things that I can help out to clarify.</div><div class=""><br class=""></div><div class="">P.S. what slack server are you discussing this on? I was un-aware of any slack servers setup for swift.</div><br class=""><div><blockquote type="cite" class=""><div class="">On Jan 30, 2017, at 4:49 PM, Robert F Dickerson via swift-corelibs-dev <<a href="mailto:swift-corelibs-dev@swift.org" class="">swift-corelibs-dev@swift.org</a>> wrote:</div><br class="Apple-interchange-newline"><div class=""><div class=""><p class="">This has probably been discussed in the past, but wanted to revisit the idea of using native Swift tools to build Foundation. I brought this up in the Slack group, and it seemed to be warmly received- although probably still not simple because of some cyclical dependency issues in the build process.<br class=""><br class="">But, I think that there would be a lot of value in being able to build Foundation (and CoreFoundation) only using SwiftPM, in other words, simply with `swift build`. <br class=""><br class="">Now that SwiftPM is improving its ability to pass in compilation flags more easily and C module compilation. I think that the project could be restructured to make this work. What would be the obstacles for getting this working?<br class=""><br class="">
<table border="0" cellspacing="0" cellpadding="0" class=""><tbody class=""><tr valign="top" class=""><td width="109" rowspan="3" valign="middle" class=""><span id="cid:1__=09BB0A2ADF979F128f9e8a93df938690918c09B@"><ecblank.gif></span></td><td width="206" class=""><span id="cid:1__=09BB0A2ADF979F128f9e8a93df938690918c09B@"><ecblank.gif></span></td></tr>
<tr valign="top" class=""><td width="206" valign="bottom" class=""><span id="cid:1__=09BB0A2ADF979F128f9e8a93df938690918c09B@"><ecblank.gif></span></td></tr>
<tr valign="top" class=""><td width="206" valign="middle" class=""><span id="cid:1__=09BB0A2ADF979F128f9e8a93df938690918c09B@"><ecblank.gif></span></td></tr>
<tr valign="top" class=""><td width="315" colspan="2" valign="middle" class=""><span id="cid:1__=09BB0A2ADF979F128f9e8a93df938690918c09B@"><ecblank.gif></span></td></tr>
<tr valign="top" class=""><td width="109" valign="middle" class=""><span id="cid:1__=09BB0A2ADF979F128f9e8a93df938690918c09B@"><ecblank.gif></span></td><td width="206" valign="middle" class=""><span id="cid:1__=09BB0A2ADF979F128f9e8a93df938690918c09B@"><ecblank.gif></span></td></tr></tbody></table><br class="">
</p></div>
_______________________________________________<br class="">swift-corelibs-dev mailing list<br class=""><a href="mailto:swift-corelibs-dev@swift.org" class="">swift-corelibs-dev@swift.org</a><br class="">https://lists.swift.org/mailman/listinfo/swift-corelibs-dev<br class=""></div></blockquote></div><br class=""></body></html>