<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="">I think the right order to build things is:</div><div class=""><br class=""></div><div class="">1. libdispatch (C)</div><div class="">2. Swift (compiler + stdlib + Dispatch overlay)</div><div class="">3. Foundation</div><div class=""><br class=""></div><div class="">Otherwise we need to build Swift, then build libdispatch, then go back to "Swift" to build the overlay, and only finally get to Foundation.</div><div class=""><br class=""></div><div class="">Jordan</div><div class=""><br class=""></div><br class=""><div><blockquote type="cite" class=""><div class="">On Sep 23, 2016, at 14:32, David P Grove via swift-dev &lt;<a href="mailto:swift-dev@swift.org" class="">swift-dev@swift.org</a>&gt; wrote:</div><br class="Apple-interchange-newline"><div class=""><div class=""><p class="">I'm playing with something.  Should have a PR ready shortly.<br class=""><br class="">--dave<br class=""><br class=""><br class=""><span id="cid:1__=0ABB0AA4DFE5C9BE8f9e8a93df938690918c0AB@">&lt;graycol.gif&gt;</span><font color="#424282" class="">"Daniel A. Steffen via swift-dev" ---09/23/2016 04:45:06 PM---I don’t know how these dependencies are expressed in CMake but it doesn’t seem very difficult to do</font><br class=""><br class=""><font size="2" color="#5F5F5F" class="">From:        </font><font size="2" class="">"Daniel A. Steffen via swift-dev" &lt;<a href="mailto:swift-dev@swift.org" class="">swift-dev@swift.org</a>&gt;</font><br class=""><font size="2" color="#5F5F5F" class="">To:        </font><font size="2" class="">Ted Kremenek &lt;<a href="mailto:kremenek@apple.com" class="">kremenek@apple.com</a>&gt;</font><br class=""><font size="2" color="#5F5F5F" class="">Cc:        </font><font size="2" class="">swift-dev &lt;<a href="mailto:swift-dev@swift.org" class="">swift-dev@swift.org</a>&gt;</font><br class=""><font size="2" color="#5F5F5F" class="">Date:        </font><font size="2" class="">09/23/2016 04:45 PM</font><br class=""><font size="2" color="#5F5F5F" class="">Subject:        </font><font size="2" class="">Re: [swift-dev] Swift CI PR builder dispatch linux failure</font><br class=""><font size="2" color="#5F5F5F" class="">Sent by:        </font><font size="2" class=""><a href="mailto:swift-dev-bounces@swift.org" class="">swift-dev-bounces@swift.org</a></font><br class=""></p><hr width="100%" size="2" align="left" noshade="" style="color:#8091A5; " class=""><br class=""><br class=""><br class=""><font size="4" class="">I don’t know how these dependencies are expressed in CMake but it doesn’t seem very difficult to do so in the autotools buildsystem, we have</font><br class=""><br class=""><font size="4" class="">AC_ARG_WITH([swift-toolchain],<br class="">  [AS_HELP_STRING([--with-swift-toolchain], [Specify path to Swift toolchain])],<br class="">  [swift_toolchain_path=${withval}<br class="">   AC_DEFINE(HAVE_SWIFT, 1, [Define if building for Swift])<br class="">   SWIFTC="$swift_toolchain_path/bin/swiftc”<br class=""></font><br class=""><font size="4" class="">in configure.ac which ends up as a SWIFTC makefile variable, so as long as that argument is passed as an absolute path, it should work as a dependency in the build rules</font><br class=""><br class=""><font size="4" class="">$(abs_builddir)/swift/%.o:      $(abs_srcdir)/swift/%.swift<br class="">       $(SWIFTC) -frontend -c $(SWIFT_ABS_SRC_FILES) -primary-file $&lt; \<br class=""></font><br class=""><font size="4" class="">Is there a JIRA ticket for this ? the IBM folks should probably be the ones making these changes since we still don’t have the whitelist in place for Apple contributors to do so…</font><br class=""><br class=""><font size="4" class="">Daniel</font><br class=""><br class="">
<ul class=""><ul class=""><font size="4" class="">On Sep 23, 2016, at 13:00, Ted Kremenek &lt;</font><a href="mailto:kremenek@apple.com" class=""><u class=""><font size="4" color="#0000FF" class="">kremenek@apple.com</font></u></a><font size="4" class="">&gt; wrote:</font><br class=""><br class=""><font size="4" class="">+ Daniel</font><br class=""><br class=""><b class=""><font size="4" class="">Daniel</font></b><font size="4" class="">: how hard would it be for the Dispatch project to be modified to add the swiftc binary used to build the project as a dependency?</font><br class="">
<ul class=""><ul class=""><font size="4" class="">On Sep 23, 2016, at 12:55 PM, Ted Kremenek via swift-dev &lt;</font><a href="mailto:swift-dev@swift.org" class=""><u class=""><font size="4" color="#0000FF" class="">swift-dev@swift.org</font></u></a><font size="4" class="">&gt; wrote:</font><br class=""><br class=""><font size="4" class="">Dispatch is a separate project.  There isn’t a dependency in the Dispatch project to tell it is building with a new compiler.  The project would need to be modified to add a dependency on the swiftc binary being used to compile this project.</font><br class="">
<ul class=""><ul class=""><font size="4" class="">On Sep 21, 2016, at 9:39 AM, Mishal Shah via swift-dev &lt;</font><a href="mailto:swift-dev@swift.org" class=""><u class=""><font size="4" color="#0000FF" class="">swift-dev@swift.org</font></u></a><font size="4" class="">&gt; wrote:</font><br class=""><br class=""><font size="4" class="">We should look into why it's not rebuilding dependencies. Do we need to fix CMake logic?  Can you please file a bug?</font><br class=""><br class=""><br class=""><font size="4" class="">Thanks,</font><br class=""><font size="4" class="">Mishal Shah</font><br class=""><font size="4" class=""><br class="">On Sep 21, 2016, at 9:28 AM, Michael Gottesman &lt;</font><a href="mailto:mgottesman@apple.com" class=""><u class=""><font size="4" color="#0000FF" class="">mgottesman@apple.com</font></u></a><font size="4" class="">&gt; wrote:<br class=""></font><ul class=""><ul class=""><font size="4" class="">+CC Mishal</font><br class="">
<ul class=""><ul class=""><font size="4" class="">On Sep 21, 2016, at 6:59 AM, David P Grove via swift-dev &lt;</font><a href="mailto:swift-dev@swift.org" class=""><u class=""><font size="4" color="#0000FF" class="">swift-dev@swift.org</font></u></a><font size="4" class="">&gt; wrote:</font><br class=""><p class=""><font size="2" face="Helvetica" class="">I don't know how the PR jobs are setup, but the error suggests that they are trying to reuse too much of the workspace of previous runs.<br class=""></font><font size="5" color="#FFFFFF" face="Helvetica" class=""><br class="">&lt;</font><font size="5" face="Helvetica" class="">unknown&gt;:0: error: module file was created by an older version of the compiler; rebuild 'Dispatch' and try again: /home/buildnode/jenkins/workspace/swift-package-manager-PR-Linux/build/buildbot_linux/libdispatch-linux-x86_64/src/swift/Dispatch.o.~partial.swiftmodule</font><font size="2" face="Helvetica" class=""><br class=""></font><font size="5" face="Helvetica" class=""><br class="">--dave</font><font size="2" face="Helvetica" class=""><br class=""><br class=""><br class="">&lt;graycol.gif&gt;</font><font size="2" color="#424282" face="Helvetica" class="">Ankit Aggarwal via swift-dev ---09/21/2016 03:08:58 AM---This has been consistently failing on PRs, can someone look into this: &lt;unknown&gt;:0: error: module fi</font><font size="2" face="Helvetica" class=""><br class=""></font><font color="#5F5F5F" face="Helvetica" class=""><br class="">From:  </font><font face="Helvetica" class="">Ankit Aggarwal via swift-dev &lt;</font><a href="mailto:swift-dev@swift.org" class=""><u class=""><font color="#0000FF" face="Helvetica" class="">swift-dev@swift.org</font></u></a><font face="Helvetica" class="">&gt;</font><font color="#5F5F5F" face="Helvetica" class=""><br class="">To:  </font><font face="Helvetica" class="">swift-dev &lt;</font><a href="mailto:swift-dev@swift.org" class=""><u class=""><font color="#0000FF" face="Helvetica" class="">swift-dev@swift.org</font></u></a><font face="Helvetica" class="">&gt;</font><font color="#5F5F5F" face="Helvetica" class=""><br class="">Date:  </font><font face="Helvetica" class="">09/21/2016 03:08 AM</font><font color="#5F5F5F" face="Helvetica" class=""><br class="">Subject:  </font><font face="Helvetica" class="">[swift-dev] Swift CI PR builder dispatch linux failure</font><font color="#5F5F5F" face="Helvetica" class=""><br class="">Sent by:  </font><a href="mailto:swift-dev-bounces@swift.org" class=""><u class=""><font color="#0000FF" face="Helvetica" class="">swift-dev-bounces@swift.org</font></u></a></p><div class=""><br class="webkit-block-placeholder"></div><hr width="100%" size="2" align="left" noshade="" class=""><font size="4" class=""><br class=""><br class=""></font><font size="5" face="Helvetica" class=""><br class="">This has been consistently failing on PRs, can someone look into this:</font><font size="4" class=""><br class=""></font><tt class=""><font size="2" color="#FFFFFF" class=""><br class="">&lt;unknown&gt;:0: error: module file was created by an older version of the compiler; rebuild 'Dispatch' and try again: /home/buildnode/jenkins/workspace/swift-package-manager-PR-Linux/build/buildbot_linux/libdispatch-linux-x86_64/src/swift/Dispatch.o.~partial.swiftmodule</font></tt><tt class=""><font size="2" color="#C0C5CE" class=""><br class="">make[2]: *** [/home/buildnode/jenkins/workspace/swift-package-manager-PR-Linux/build/buildbot_linux/libdispatch-linux-x86_64/src/swift/Dispatch.swiftmodule] Error 1<br class="">make[2]: Leaving directory `/home/buildnode/jenkins/workspace/swift-package-manager-PR-Linux/build/buildbot_linux/libdispatch-linux-x86_64/src'<br class="">make[1]: *** [all] Error 2<br class="">make[1]: Leaving directory `/home/buildnode/jenkins/workspace/swift-package-manager-PR-Linux/build/buildbot_linux/libdispatch-linux-x86_64/src'<br class="">make: *** [all-recursive] Error 1<br class="">/home/buildnode/jenkins/workspace/swift-package-manager-PR-Linux/swift/utils/build-script: fatal error: command terminated with a non-zero exit status 2, aborting<br class="">/home/buildnode/jenkins/workspace/swift-package-manager-PR-Linux/swift/utils/build-script: fatal error: command terminated with a non-zero exit status 1, aborting</font></tt><font size="4" class=""><br class=""><br class=""></font><u class=""><font size="2" color="#0000FF" face="Helvetica" class=""><br class=""></font></u><a href="https://ci.swift.org/job/swift-package-manager-PR-Linux/497/console" class=""><u class=""><font size="5" color="#0000FF" face="Helvetica" class="">https://ci.swift.org/job/swift-package-manager-PR-Linux/497/console</font></u></a><font face="Helvetica" class=""><br class=""><br class="">- Ankit</font><font size="5" face="Helvetica" class=""> </font><font size="2" face="Helvetica" class=""><br class="">[attachment "signature.asc" deleted by David P Grove/Watson/IBM] </font><tt class=""><font size="2" class="">_______________________________________________<br class="">swift-dev mailing list</font></tt><tt class=""><u class=""><font size="2" color="#0000FF" class=""><br class=""></font></u></tt><a href="mailto:swift-dev@swift.org" class=""><tt class=""><u class=""><font size="2" color="#0000FF" class="">swift-dev@swift.org</font></u></tt></a><tt class=""><u class=""><font size="2" color="#0000FF" class=""><br class=""></font></u></tt><a href="https://lists.swift.org/mailman/listinfo/swift-dev" class=""><tt class=""><u class=""><font size="2" color="#0000FF" class="">https://lists.swift.org/mailman/listinfo/swift-dev</font></u></tt></a><font size="4" class=""><br class=""><br class=""><br class=""></font><font size="2" face="Helvetica" class=""><br class="">_______________________________________________<br class="">swift-dev mailing list</font><u class=""><font size="2" color="#0000FF" face="Helvetica" class=""><br class=""></font></u><a href="mailto:swift-dev@swift.org" class=""><u class=""><font size="2" color="#0000FF" face="Helvetica" class="">swift-dev@swift.org</font></u></a><u class=""><font size="2" color="#0000FF" face="Helvetica" class=""><br class=""></font></u><a href="https://lists.swift.org/mailman/listinfo/swift-dev" class=""><u class=""><font size="2" color="#0000FF" face="Helvetica" class="">https://lists.swift.org/mailman/listinfo/swift-dev</font></u></a></ul></ul></ul></ul><font size="4" class="">_______________________________________________<br class="">swift-dev mailing list</font><u class=""><font size="4" color="#0000FF" class=""><br class=""></font></u><a href="mailto:swift-dev@swift.org" class=""><u class=""><font size="4" color="#0000FF" class="">swift-dev@swift.org</font></u></a><u class=""><font size="4" color="#0000FF" class=""><br class=""></font></u><a href="https://lists.swift.org/mailman/listinfo/swift-dev" class=""><u class=""><font size="4" color="#0000FF" class="">https://lists.swift.org/mailman/listinfo/swift-dev</font></u></a></ul></ul><br class=""><font size="4" class="">_______________________________________________<br class="">swift-dev mailing list</font><u class=""><font size="4" color="#0000FF" class=""><br class=""></font></u><a href="mailto:swift-dev@swift.org" class=""><u class=""><font size="4" color="#0000FF" class="">swift-dev@swift.org</font></u></a><u class=""><font size="4" color="#0000FF" class=""><br class=""></font></u><a href="https://lists.swift.org/mailman/listinfo/swift-dev" class=""><u class=""><font size="4" color="#0000FF" class="">https://lists.swift.org/mailman/listinfo/swift-dev</font></u></a></ul></ul></ul></ul><tt class="">_______________________________________________<br class="">swift-dev mailing list<br class=""><a href="mailto:swift-dev@swift.org" class="">swift-dev@swift.org</a><br class=""></tt><tt class=""><a href="https://lists.swift.org/mailman/listinfo/swift-dev" class="">https://lists.swift.org/mailman/listinfo/swift-dev</a></tt><tt class=""><br class=""></tt><br class=""><br class=""><br class="">
</div>
_______________________________________________<br class="">swift-dev mailing list<br class=""><a href="mailto:swift-dev@swift.org" class="">swift-dev@swift.org</a><br class="">https://lists.swift.org/mailman/listinfo/swift-dev<br class=""></div></blockquote></div><br class=""></body></html>