1. 10 May, 2016 1 commit
    • Drew's avatar
      Add only-platforms · 3e38cdc0
      Drew authored
      This is a new task-level property to allow the skipping of tasks on platforms other than the ones specified
      3e38cdc0
  2. 05 May, 2016 1 commit
  3. 03 May, 2016 1 commit
  4. 24 Apr, 2016 1 commit
  5. 22 Apr, 2016 2 commits
  6. 15 Apr, 2016 2 commits
    • Drew's avatar
      Revise required-overlays check · 3bf876c1
      Drew authored
      It is inappropriate to check for required-overlays at parse-time,
      because we may not be interested in the task with the required-overlays.
      
      Specifically, a case arose where a build task required linux/macosx
      overlays, but a clean task did not.  However, the user was required to
      run clean with the platform overlay for the (unused) build task to be
      valid.
      
      The resolution here is to move the required overlays check to a separate
      API.  The downside here is that callers have to opt-in to this behavior.
      
      An alternate design would be to intercept this in the task subscript,
      but that was considered too invasive.
      
      Resolves https://github.com/AnarchyTools/atbuild/issues/66
      3bf876c1
    • Drew's avatar
      More Swift 3 first parameter renaming · db6e885c
      Drew authored
      db6e885c
  7. 07 Apr, 2016 1 commit
    • Drew's avatar
      Implement a substition engine for variable expansion · edafd8e4
      Drew authored
      For many reasons it is desireable to support custom variable expansion
      inside an atpkg file.  This commit does that.
      
      This feature is "opt-in", meaning an individual tool's field must opt in
      to varaible expansion.  This is because:
      
      * Variable substition is not appropriate for all fields and tools
      * The particular expansion I'm PRing here requires a complete parse in
        order to be well-defined.
      
      Here is the syntax:
      
      * `${VARIABLE}` means to substitite for the value `VARIABLE`
      
      * We require two tokens `${` to begin a substition.  This is because `$`
        alone is already in use, and we don't want to immediately break
        compatibility (and CI, etc.)  We reserve the right to deprecate
        unescaped `$` in a future release.
      * We support escape syntax `\${VARIABLE}`
      
      * We also support escape syntax `$?{VARIABLE}` (where `?` is a non-`{`
        character).  We reserve the right to deprecate unescaped `$` in a
        future release.
      
      We also implement the first expansion `${collect_sources:taskname}`.
      This expands to the "collected sources" of the specified task name,
      using the same definition as `atllbuild`.
      
      The intent here is to allow the creation of arbitrary tasks that accept
      source files as arguments.  `xcode-emit` is an obvious candidate, and
      would allow it to break its dependence on atpkg, which it only uses for
      this single feature.
      
      There are other obvious programs that we might want to call with "all
      sources" (e.g. preprocessors, etc.) and they may not want to take a
      dependency on atpkg either.
      edafd8e4
  8. 19 Mar, 2016 2 commits
  9. 14 Feb, 2016 1 commit
  10. 06 Feb, 2016 1 commit
    • Drew's avatar
      Mute warnings · 80e10424
      Drew authored
      We have too many warnings; this patch silences some of them.
      
      * Silencing a certain class of duplicate warnings.  We currently are quite conservative with continuing to process overlays until we are quite sure they are all applied; this produces duplicate warnings in common cases.  We now filter those before we print them.
      * We have a new parameter `focusOnTask` which focuses some verbose warnings on the particular task, not everything in the package file.
      80e10424
  11. 02 Feb, 2016 1 commit
  12. 31 Jan, 2016 1 commit
    • Drew's avatar
      Flatten overlay hierarchy · be41dddb
      Drew authored
      This flattens the namespace of overlays to match the flattened hierarchy of tasks
      be41dddb
  13. 28 Jan, 2016 7 commits
  14. 19 Jan, 2016 6 commits
  15. 18 Jan, 2016 3 commits
  16. 17 Jan, 2016 7 commits
  17. 16 Jan, 2016 2 commits