Uploaded image for project: 'Data Management'
  1. Data Management
  2. DM-13910

Allow working around compiler check

    XMLWordPrintable

    Details

    • Type: Story
    • Status: Done
    • Resolution: Done
    • Fix Version/s: None
    • Component/s: sconsUtils
    • Labels:
      None
    • Team:
      External

      Description

      The compiler check in lsst.sconsUtils.state._configureCommon fires whenever you import lsst.sconsUtils, even if you don't have any C++ code and all you want out of lsst.sconsUtils is some utility completely unrelated to C++. Besides just wasting time, this makes it difficult to run ci_hsc on a cluster nodes that don't have the latest gcc installed (as many don't, including the LSST Verification Cluster and New Tiger). The compiler check should only fire if we need it.

        Attachments

          Activity

          Hide
          price Paul Price added a comment -

          Jenkins is green.

          Show
          price Paul Price added a comment - Jenkins is green.
          Hide
          price Paul Price added a comment -

          Tim Jenness, would you mind reviewing this?

          price@pap-laptop-2:~/LSST/sconsUtils (tickets/DM-13910=) $ git sub
          commit 0d2ae6bc5454f5e670f1d34ff675f01fee9b3e1c (HEAD -> tickets/DM-13910, origin/tickets/DM-13910)
          Author: Paul Price <price@astro.princeton.edu>
          Date:   Wed Mar 28 14:20:58 2018 -0400
           
              make compiler check fire only when needed
              
              The compiler check in lsst.sconsUtils.state._configureCommon
              fires whenever you import lsst.sconsUtils, even if you don't
              have any C++ code and all you want out of lsst.sconsUtils is
              some utility completely unrelated to C++. Besides just wasting
              time, this makes it difficult to run ci_hsc on a cluster nodes
              that don't have the latest gcc installed.
              
              Instead, have the compiler check only fire when we need it, as
              defined by instantiating BasicSConstruct. The compiler check
              can also be disabled when using BasicSConstruct by instantiating
              it with disableCc=True.
           
           python/lsst/sconsUtils/scripts.py | 10 +++++++---
           python/lsst/sconsUtils/state.py   | 10 ++++++++--
           2 files changed, 15 insertions(+), 5 deletions(-)
          

          Show
          price Paul Price added a comment - Tim Jenness , would you mind reviewing this? price@pap-laptop-2:~/LSST/sconsUtils (tickets/DM-13910=) $ git sub commit 0d2ae6bc5454f5e670f1d34ff675f01fee9b3e1c (HEAD -> tickets/DM-13910, origin/tickets/DM-13910) Author: Paul Price <price@astro.princeton.edu> Date: Wed Mar 28 14:20:58 2018 -0400   make compiler check fire only when needed The compiler check in lsst.sconsUtils.state._configureCommon fires whenever you import lsst.sconsUtils, even if you don't have any C++ code and all you want out of lsst.sconsUtils is some utility completely unrelated to C++. Besides just wasting time, this makes it difficult to run ci_hsc on a cluster nodes that don't have the latest gcc installed. Instead, have the compiler check only fire when we need it, as defined by instantiating BasicSConstruct. The compiler check can also be disabled when using BasicSConstruct by instantiating it with disableCc=True.   python/lsst/sconsUtils/scripts.py | 10 +++++++--- python/lsst/sconsUtils/state.py | 10 ++++++++-- 2 files changed, 15 insertions(+), 5 deletions(-)
          Hide
          tjenness Tim Jenness added a comment -

          This makes me very happy. I've been grumbling to myself about this test always running for a long time. One minor comment on PR.

          Show
          tjenness Tim Jenness added a comment - This makes me very happy. I've been grumbling to myself about this test always running for a long time. One minor comment on PR.
          Hide
          price Paul Price added a comment -

          Thanks Tim.

          Documentation added as requested, and merged to master.

          Show
          price Paul Price added a comment - Thanks Tim. Documentation added as requested, and merged to master.

            People

            Assignee:
            price Paul Price
            Reporter:
            price Paul Price
            Reviewers:
            Tim Jenness
            Watchers:
            Paul Price, Tim Jenness
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Dates

              Created:
              Updated:
              Resolved:

                Jenkins

                No builds found.