[swift-dev] Swift CI PR builder dispatch linux failure

David P Grove groved at us.ibm.com
Mon Sep 26 12:19:12 CDT 2016


We think that the libdispatch incremental rebuilds didn't know that if
swiftc changed it needed to invalidate the compilation of the swift
dispatch overlay files (missing dependency in the make rule).  A localized
change that could be enough to fix the problem is libdispatch PR #178.   If
that isn't enough, we might have to do a more ambitious restructuring of
the libdispatch build.

--dave



From:	Jordan Rose <jordan_rose at apple.com>
To:	David P Grove/Watson/IBM at IBMUS
Cc:	"Daniel A. Steffen" <dsteffen at apple.com>, swift-dev
            <swift-dev at swift.org>, swift-corelibs-dev
            <swift-corelibs-dev at swift.org>
Date:	09/26/2016 01:07 PM
Subject:	Re: [swift-dev] Swift CI PR builder dispatch linux failure
Sent by:	jordan_rose at apple.com



Oh, I didn’t realize we had a separate copy of the overlay code (almost
certainly the right thing to do at this point). But in that case, why are
we seeing any of these errors?

Jordan

      On Sep 25, 2016, at 11:38, David P Grove <groved at us.ibm.com> wrote:



      The order may need to vary by platform. On Linux, the DIspatch Swift
      overlay code lives in swift-corelibs-libdispatch/src/swift. So it
      works to build (1) Swift (2) libdispatch (both C and Swift) (3)
      Foundation.

      --dave

      <graycol.gif>Jordan Rose ---09/23/2016 06:34:46 PM---I think the
      right order to build things is: 1. libdispatch (C)

      From: Jordan Rose <jordan_rose at apple.com>
      To: David P Grove/Watson/IBM at IBMUS
      Cc: "Daniel A. Steffen" <dsteffen at apple.com>, swift-dev <
      swift-dev at swift.org>, swift-corelibs-dev <
      swift-corelibs-dev at swift.org>
      Date: 09/23/2016 06:34 PM
      Subject: Re: [swift-dev] Swift CI PR builder dispatch linux failure
      Sent by: jordan_rose at apple.com





      I think the right order to build things is:

      1. libdispatch (C)
      2. Swift (compiler + stdlib + Dispatch overlay)
      3. Foundation

      Otherwise we need to build Swift, then build libdispatch, then go
      back to "Swift" to build the overlay, and only finally get to
      Foundation.

      Jordan

                  On Sep 23, 2016, at 14:32, David P Grove via swift-dev <
                  swift-dev at swift.org> wrote:


                  I'm playing with something. Should have a PR ready
                  shortly.

                  --dave


                  <graycol.gif>"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

                  From: "Daniel A. Steffen via swift-dev" <
                  swift-dev at swift.org>
                  To: Ted Kremenek <kremenek at apple.com>
                  Cc: swift-dev <swift-dev at swift.org>
                  Date: 09/23/2016 04:45 PM
                  Subject: Re: [swift-dev] Swift CI PR builder dispatch
                  linux failure
                  Sent by: swift-dev-bounces at swift.org






                  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

                  AC_ARG_WITH([swift-toolchain],
                  [AS_HELP_STRING([--with-swift-toolchain], [Specify path
                  to Swift toolchain])],
                  [swift_toolchain_path=${withval}
                  AC_DEFINE(HAVE_SWIFT, 1, [Define if building for Swift])
                  SWIFTC="$swift_toolchain_path/bin/swiftc”

                  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

                  $(abs_builddir)/swift/%.o: $(abs_srcdir)/swift/%.swift
                  $(SWIFTC) -frontend -c $(SWIFT_ABS_SRC_FILES)
                  -primary-file $< \

                  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…

                  Daniel
                                          On Sep 23, 2016, at 13:00, Ted
                                          Kremenek <kremenek at apple.com>
                                          wrote:

                                          + Daniel

                                          Daniel: 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?
                                                                  On Sep
                                                                  23, 2016,
                                                                  at 12:55
                                                                  PM, Ted
                                                                  Kremenek
                                                                  via
                                                                  swift-dev
                                                                  <
                                                                  swift-dev at swift.org
                                                                  > wrote:

                                                                  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.
               On Sep 21, 2016, at 9:39 AM, Mishal Shah via swift-dev <
               swift-dev at swift.org> wrote:

               We should look into why it's not rebuilding dependencies. Do
               we need to fix CMake logic? Can you please file a bug?


               Thanks,
               Mishal Shah

               On Sep 21, 2016, at 9:28 AM, Michael Gottesman <
               mgottesman at apple.com> wrote:
                                       +CC Mishal
                                                               On Sep 21,
                                                               2016, at
                                                               6:59 AM,
                                                               David P
                                                               Grove via
                                                               swift-dev <
                                                               swift-dev at swift.org
                                                               > wrote:


                                                               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.

                                                               <unknown>: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


                                                               --dave


                                                               <graycol.gif>
                                                               Ankit
                                                               Aggarwal via
                                                               swift-dev
                                                               ---09/21/2016
 03:08:58 AM---This has been consistently failing on PRs, can someone look
                                                               into this:
                                                               <unknown>:0:
                                                               error:
                                                               module fi

                                                               From: Ankit
                                                               Aggarwal via
                                                               swift-dev <
                                                               swift-dev at swift.org
                                                               >
                                                               To:
                                                               swift-dev <
                                                               swift-dev at swift.org
                                                               >
                                                               Date:
                                                               09/21/2016
                                                               03:08 AM
                                                               Subject:
                                                               [swift-dev]
                                                               Swift CI PR
                                                               builder
                                                               dispatch
                                                               linux
                                                               failure
                                                               Sent by:
                                                               swift-dev-bounces at swift.org








                                                               This has
                                                               been
                                                               consistently
                                                               failing on
                                                               PRs, can
                                                               someone look
                                                               into this:

                                                               <unknown>: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

                                                               make[2]: ***
                                                               [/home/buildnode/jenkins/workspace/swift-package-manager-PR-Linux/build/buildbot_linux/libdispatch-linux-x86_64/src/swift/Dispatch.swiftmodule]
 Error 1
                                                               make[2]:
                                                               Leaving
                                                               directory
                                                               `/home/buildnode/jenkins/workspace/swift-package-manager-PR-Linux/build/buildbot_linux/libdispatch-linux-x86_64/src'

                                                               make[1]: ***
                                                               [all] Error
                                                               2
                                                               make[1]:
                                                               Leaving
                                                               directory
                                                               `/home/buildnode/jenkins/workspace/swift-package-manager-PR-Linux/build/buildbot_linux/libdispatch-linux-x86_64/src'

                                                               make: ***
                                                               [all-recursive]
 Error 1
                                                               /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
                                                               /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



                                                               https://ci.swift.org/job/swift-package-manager-PR-Linux/497/console


                                                               - Ankit
                                                               [attachment
                                                               "signature.asc"
 deleted by David P Grove/Watson/IBM]
                                                               _______________________________________________

                                                               swift-dev
                                                               mailing list
                                                               swift-dev at swift.org

                                                               https://lists.swift.org/mailman/listinfo/swift-dev




                                                               _______________________________________________

                                                               swift-dev
                                                               mailing list
                                                               swift-dev at swift.org

                                                               https://lists.swift.org/mailman/listinfo/swift-dev
               _______________________________________________
               swift-dev mailing list
               swift-dev at swift.org
               https://lists.swift.org/mailman/listinfo/swift-dev

                                                                  _______________________________________________

                                                                  swift-dev
                                                                  mailing
                                                                  list
                                                                  swift-dev at swift.org

                                                                  https://lists.swift.org/mailman/listinfo/swift-dev
                  _______________________________________________
                  swift-dev mailing list
                  swift-dev at swift.org
                  https://lists.swift.org/mailman/listinfo/swift-dev



                  _______________________________________________
                  swift-dev mailing list
                  swift-dev at swift.org
                  https://lists.swift.org/mailman/listinfo/swift-dev





-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.swift.org/pipermail/swift-dev/attachments/20160926/3930091b/attachment.html>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: graycol.gif
Type: image/gif
Size: 105 bytes
Desc: not available
URL: <https://lists.swift.org/pipermail/swift-dev/attachments/20160926/3930091b/attachment.gif>


More information about the swift-dev mailing list