<html><body><p><font size="2">With autotools, the first time libdispatch was built (for SourceKit), it just did the C build of libdispatch. That had to be blown away and rebuilt a second time later (once swiftc, etc was available) so that we could build libdispatch.so with the Swift overlay built into it.</font><br><br><font size="2">Did you manage to change this so that the first time libdispatch is built it has a swiftc and Swift standard library it can use for its build?</font><br><br><font size="2">--dave</font><br><br><img width="16" height="16" src="cid:1__=0ABB0B37DFD213608f9e8a93df938690918c0AB@" border="0" alt="Inactive hide details for Saleem Abdulrasool via swift-dev ---09/22/2017 08:59:28 PM---On Fri, Sep 22, 2017 at 2:31 PM, Jordan "><font size="2" color="#424282">Saleem Abdulrasool via swift-dev ---09/22/2017 08:59:28 PM---On Fri, Sep 22, 2017 at 2:31 PM, Jordan Rose <jordan_rose@apple.com> wrote: > Hey, Saleem. I don't b</font><br><br><font size="2" color="#5F5F5F">From: </font><font size="2">Saleem Abdulrasool via swift-dev <swift-dev@swift.org></font><br><font size="2" color="#5F5F5F">To: </font><font size="2">Jordan Rose <jordan_rose@apple.com></font><br><font size="2" color="#5F5F5F">Cc: </font><font size="2">swift-dev <swift-dev@swift.org></font><br><font size="2" color="#5F5F5F">Date: </font><font size="2">09/22/2017 08:59 PM</font><br><font size="2" color="#5F5F5F">Subject: </font><font size="2">Re: [swift-dev] libdispatch switched to CMake</font><br><font size="2" color="#5F5F5F">Sent by: </font><font size="2">swift-dev-bounces@swift.org</font><br><hr width="100%" size="2" align="left" noshade style="color:#8091A5; "><br><br><br>On Fri, Sep 22, 2017 at 2:31 PM, Jordan Rose <<a href="mailto:jordan_rose@apple.com" target="_blank"><u><font color="#0000FF">jordan_rose@apple.com</font></u></a>> wrote:
<ul>Hey, Saleem. I don't build libdispatch that often, but it seems to be broken for me. If I delete the libdispatch-specific build directory and then use build-script with --reconfigure, it doesn't actually attempt to reconfigure.<br><br><font color="#4D2F2D">[4/50] Performing build step for 'libdispatch'</font><br><font color="#4D2F2D">FAILED: cd /home/jrose/public/build/Ninja-RelWithDebInfoAssert/libdispatch-linux-x86_64 && /usr/bin/cmake --build . && /usr/bin/cmake -E touch /home/jrose/public/build/Ninja-RelWithDebInfoAssert/swift-linux-x86_64/tools/SourceKit/libdispatch-prefix/src/libdispatch-stamp/libdispatch-build</font><br><br>When I deleted my entire build directory and built from scratch, libdispatch built, but Foundation couldn't see it.<br><br><font color="#4D2F2D">Foundation/URLSession/http/HTTPURLProtocol.swift:325:19: error: use of undeclared type 'DispatchData'</font><br><font color="#4D2F2D"> case data(DispatchData)</font><br><font color="#4D2F2D"> ^~~~~~~~~~~~</font><br><br>Any ideas what's going wrong?</ul><br>So, definitely have an idea for the first case. When building for Linux, the libdispatch build is shared across the swift build and the libdispatch build. libdispatch is built as part of swift to be linked into SourceKit. If you disable SourceKit, this dependency will be broken. The Jenkins builds had this exact issue (which we were able to identify between myself, mgottesmann, JoeS. and mishal_shah). With the switch to CMake, the dependency should be tracked and you do not need to blow away libdispatch inbetween the builds (which is the better option -- just treat the incremental builds as incremental, no need to do any clean up).<br><br>As to the Foundation issue, Im not sure ... possibly that the swift module is not built? Ill try to take a look at that (though, honestly, that would probably be tomorrow). Sorry about the trouble there (it built for me and on the build bots).<br>
<ul>Thanks,<br>Jordan<br><br>
<ul><ul>On Sep 18, 2017, at 15:28, Saleem Abdulrasool via swift-dev <<a href="mailto:swift-dev@swift.org" target="_blank"><u><font color="#0000FF">swift-dev@swift.org</font></u></a>> wrote:<br><br>Hello swift-dev,<br><br>This change should be transparent to everyone, but, it still is a pretty big milestone.<br><br>As of this afternoon, the non-Darwin builds use CMake to build libdispatch. This work has been underway for quite some time, and we have finally switched to that as the default on most targets. This should be more or less transparent to everyone developing with build-script or even invoking CMake for swift directly.<br><br>This simplifies some of the logic for integrating the projects and avoid unnecessary commands from being run.<br><br>Thanks particularly to Michael Gottesman, Chris Bieneman, Daniel Steffen, David Grove, and Pierre Habouzit. Sorry if I accidentally left someone off the list!<br><br>Saleem<br><br>-- <br>Saleem Abdulrasool<br>compnerd (at) compnerd (dot) org<br>_______________________________________________<br>swift-dev mailing list<u><font color="#0000FF"><br></font></u><a href="mailto:swift-dev@swift.org" target="_blank"><u><font color="#0000FF">swift-dev@swift.org</font></u></a><u><font color="#0000FF"><br></font></u><a href="https://urldefense.proofpoint.com/v2/url?u=https-3A__lists.swift.org_mailman_listinfo_swift-2Ddev&d=DwMFaQ&c=jf_iaSHvJObTbx-siA1ZOg&r=Fe4FicGBU_20P2yihxV-apaNSFb6BSj6AlkptSF2gMk&m=590xgA-Zd76OeR8vVa2Bdxi7IWZJV8gYTQUQ1orlCv4&s=S0bCeAScUV4dc_1As6tnAdHurqx2LMbVje6L-vWbo3U&e=" target="_blank"><u><font color="#0000FF">https://lists.swift.org/mailman/listinfo/swift-dev</font></u></a></ul></ul></ul><br><br><br>-- <br>Saleem Abdulrasool<br>compnerd (at) compnerd (dot) org<tt><font size="2">_______________________________________________<br>swift-dev mailing list<br>swift-dev@swift.org<br></font></tt><tt><font size="2"><a href="https://urldefense.proofpoint.com/v2/url?u=https-3A__lists.swift.org_mailman_listinfo_swift-2Ddev&d=DwIGaQ&c=jf_iaSHvJObTbx-siA1ZOg&r=Fe4FicGBU_20P2yihxV-apaNSFb6BSj6AlkptSF2gMk&m=590xgA-Zd76OeR8vVa2Bdxi7IWZJV8gYTQUQ1orlCv4&s=S0bCeAScUV4dc_1As6tnAdHurqx2LMbVje6L-vWbo3U&e=">https://urldefense.proofpoint.com/v2/url?u=https-3A__lists.swift.org_mailman_listinfo_swift-2Ddev&d=DwIGaQ&c=jf_iaSHvJObTbx-siA1ZOg&r=Fe4FicGBU_20P2yihxV-apaNSFb6BSj6AlkptSF2gMk&m=590xgA-Zd76OeR8vVa2Bdxi7IWZJV8gYTQUQ1orlCv4&s=S0bCeAScUV4dc_1As6tnAdHurqx2LMbVje6L-vWbo3U&e=</a></font></tt><tt><font size="2"> <br></font></tt><br><br><BR>
</body></html>