Clone Tools
  • last updated a few seconds ago
Constraints
Constraints: committers
 
Constraints: files
Constraints: dates
Generalize variant generating code for all native plugins

    • -65
    • +10
    ./plugins/CppUnitTestPlugin.java
  1. … 9 more files in changeset.
Isolate native service and class within `platformNative` project

  1. … 54 more files in changeset.
Update some comments and error messages

  1. … 7 more files in changeset.
Move TargetMachineFactory up to a project service

  1. … 51 more files in changeset.
Handle cygwin and mingw on CI servers

  1. … 9 more files in changeset.
Add support for declaring target machines

  1. … 35 more files in changeset.
Wire in architecture to target machine definition

    • -10
    • +14
    ./plugins/CppUnitTestPlugin.java
  1. … 27 more files in changeset.
Change the C++ tooling model builder so that it does not attempt to resolve task dependencies to infer how to build the various C++ binaries, Instead add properties to the C++ project model to allow the builder to query these tasks and build logic to explicitly define what they should be.

    • -0
    • +8
    ./internal/DefaultCppTestExecutable.java
  1. … 15 more files in changeset.
Add `Property.finalizeValue()` method to allow the value of a property to be made final. Attempts to change the property value after this method is called will fail.

Use this in the Swift plugins and remove the internal `LockableProperty` implementation as it is no longer needed.

  1. … 23 more files in changeset.
Use new task API in native plugins

    • -20
    • +38
    ./plugins/CppUnitTestPlugin.java
  1. … 3 more files in changeset.
Replace all usages of the property factory methods on `ProjectLayout` and `DefaultTask` with the factory methods on `ObjectFactory`.

    • -7
    • +5
    ./internal/DefaultCppTestExecutable.java
  1. … 44 more files in changeset.
Expose the variant name and header directories for each C++ binary in the C++ tooling model.

Rework construction of the native binary models so that the binary names are not formatted and parsed a bunch of times during construction and so do not lose information.

    • -2
    • +3
    ./internal/DefaultCppTestExecutable.java
  1. … 34 more files in changeset.
Use immutable file collections whenever possible (#5797)

- Stop DefaultProject implementing FileOperations/ProcessOperations

- Stop BasicScript implementing FileOperations/ProcessOperations

- FileResovler.resolveUri() is not nullable

    • -3
    • +4
    ./internal/DefaultCppTestExecutable.java
  1. … 38 more files in changeset.
Make xctest plugin lazy

except for a compile task

    • -16
    • +16
    ./plugins/CppUnitTestPlugin.java
  1. … 5 more files in changeset.
Make most of C++ plugin tasks lazily created

    • -21
    • +36
    ./plugins/CppUnitTestPlugin.java
  1. … 6 more files in changeset.
Add support for C++ applications to the `cpp-unit-test` plugin, by relocating the `main` symbol from the object files of the application under test. Change the `UnexportMainSymbol` to be more idiomatic and the `runTest` task to be incremental.

Move some test coverage so that it is applied to both the XCtest and C++ unit test plugins.

  1. … 17 more files in changeset.
Fix the `cpp-unit-test` plugin so that it makes implementation dependencies of the main component visible to the test suite. Reworked the dependency between the test binary and the binary under test for the `cpp-unit-test` and the `xctest` plugins, so that it is implemented consistently (for later extraction into a base plugin) and is wired in via the various configurations.

  1. … 10 more files in changeset.
Use camel case consistently for variant names

  1. … 7 more files in changeset.
Use native variant identity for name suffix

  1. … 7 more files in changeset.
Generalize operating system configuration test to C++ unit test

    • -58
    • +74
    ./plugins/CppUnitTestPlugin.java
  1. … 14 more files in changeset.
Remove lightweight usage context

  1. … 9 more files in changeset.
Refactor to detangle NativeVariantIdentity and Cpp binaries

  1. … 8 more files in changeset.
Fix CppUnitTest plugins

    • -2
    • +4
    ./internal/DefaultCppTestExecutable.java
  1. … 1 more file in changeset.
Use identity for debuggable and optimized properties

    • -2
    • +3
    ./internal/DefaultCppTestExecutable.java
  1. … 9 more files in changeset.
Fix test failures

  1. … 23 more files in changeset.
Added a display name for each native component implementation.

Added a convenience to `Describables` to format a display name for an object with a type and a name.

  1. … 16 more files in changeset.
Added methods to the various native component types to allow implementation and API dependencies to be declared on the component instance instead of on the project's `dependencies` block, for consistency with the binaries.

    • -3
    • +22
    ./internal/DefaultCppTestSuite.java
  1. … 32 more files in changeset.
Defer creation of the tasks and configurations for a native binary until the binary is realized, rather than when the binary is created.

Changed the `BinaryCollection` implementation to defer firing the 'when known' event for a binary until just before the binary is configured. Restructured parts of various plugins to react to binaries becoming known rather than making assumptions about the things that exist when the binary is created.

    • -31
    • +23
    ./plugins/CppUnitTestPlugin.java
  1. … 10 more files in changeset.
Changed the Xcode plugin to use query methods on a binary to determine which output to build and run from Xcode, rather than reaching in to grab specific tasks. Also changed the mapping to build the final, stripped, output for shared libraries.

Introduced a 'debuggerExecutable' property to `CppExecutable`, to match `SwiftExecutable` and changed `NativeBasePlugin` to populate this as the concept is agnostic of implementation language.

    • -0
    • +8
    ./internal/DefaultCppTestExecutable.java
  1. … 12 more files in changeset.
Detangled `CppTestExecutable` from `CppExecutable` as a C++ test executable and a production executable are not the same thing, they just happen to have some stuff in common.

    • -4
    • +45
    ./internal/DefaultCppTestExecutable.java
  1. … 1 more file in changeset.