CppIncrementalBuildIntegrationTest.groovy

Clone Tools
  • last updated a few seconds ago
Constraints
Constraints: committers
 
Constraints: files
Constraints: dates
Rename @FailsWithInstantExecution to @ToBeFixedForInstantExecution

Signed-off-by: Paul Merlin <paul@gradle.com>

    • -21
    • +21
    ./CppIncrementalBuildIntegrationTest.groovy
  1. … 872 more files in changeset.
Add info output for debugging

    • -1
    • +1
    ./CppIncrementalBuildIntegrationTest.groovy
Annotate integ tests failing with instant execution in :languageNative

Signed-off-by: Paul Merlin <paul@gradle.com>

    • -0
    • +21
    ./CppIncrementalBuildIntegrationTest.groovy
  1. … 61 more files in changeset.
Annotate integ tests failing with instant execution in :languageNative

Signed-off-by: Paul Merlin <paul@gradle.com>

    • -0
    • +21
    ./CppIncrementalBuildIntegrationTest.groovy
  1. … 61 more files in changeset.
Add info logging

    • -1
    • +1
    ./CppIncrementalBuildIntegrationTest.groovy
Add info logging

    • -1
    • +1
    ./CppIncrementalBuildIntegrationTest.groovy
Change more tests.

    • -35
    • +35
    ./CppIncrementalBuildIntegrationTest.groovy
  1. … 20 more files in changeset.
Changed a bunch of integration tests to use the various task assertion methods instead of directly querying the `executedTasks` and `skippedTasks` collections. These methods can give better diagnostics when the assertion fails, and can perform additional checks.

    • -35
    • +35
    ./CppIncrementalBuildIntegrationTest.groovy
  1. … 98 more files in changeset.
Changed a bunch of integration tests to use the various task assertion methods instead of directly querying the `executedTasks` and `skippedTasks` collections. These methods can give better diagnostics when the assertion fails, and can perform additional checks.

    • -35
    • +35
    ./CppIncrementalBuildIntegrationTest.groovy
  1. … 98 more files in changeset.
Changed a bunch of integration tests to use the various task assertion methods instead of directly querying the `executedTasks` and `skippedTasks` collections. These methods can give better diagnostics when the assertion fails, and can perform additional checks.

    • -35
    • +35
    ./CppIncrementalBuildIntegrationTest.groovy
  1. … 98 more files in changeset.
Change C++ incremental compile to take preprocessor macros defined on the compile task into account when resolving macro includes.

    • -50
    • +188
    ./CppIncrementalBuildIntegrationTest.groovy
  1. … 19 more files in changeset.
Improve performance of C++ compile analysis by attempting to reuse the include file graph of each source file from the last time the compile task ran. The graph for a source file is reused when nothing in that graph has changed and each edge in the graph resolves to the same file as last time. When the graph for a source file can be reused, skip the more expensive calculation of the graph for the source file.

    • -18
    • +18
    ./CppIncrementalBuildIntegrationTest.groovy
  1. … 11 more files in changeset.
Add incremental test coverage for system headers

    • -0
    • +61
    ./CppIncrementalBuildIntegrationTest.groovy
  1. … 1 more file in changeset.
Introduce a shared source processor cache

It shares the source processor cache between compile tasks to reuse the

result if the include files resolve to the same location.

    • -1
    • +1
    ./CppIncrementalBuildIntegrationTest.groovy
  1. … 13 more files in changeset.
Fixed broken test on Windows.

    • -3
    • +4
    ./CppIncrementalBuildIntegrationTest.groovy
Fixed broken test on Windows.

    • -2
    • +8
    ./CppIncrementalBuildIntegrationTest.groovy
Reworked some fixture methods for clarity. Added some more checks to C++ incremental compile tests.

    • -60
    • +104
    ./CppIncrementalBuildIntegrationTest.groovy
  1. … 3 more files in changeset.
Added some more C++ incremental compile test cases.

    • -1
    • +232
    ./CppIncrementalBuildIntegrationTest.groovy
Added some test coverage for C++ incremental compile for some more complex include file scenarios.

    • -18
    • +160
    ./CppIncrementalBuildIntegrationTest.groovy
  1. … 1 more file in changeset.
Changed C++ incremental compile int test cases to verify exactly which source files are recompiled, rather than just checking the task statuses.

    • -150
    • +272
    ./CppIncrementalBuildIntegrationTest.groovy
  1. … 1 more file in changeset.
Changed toolchain selection for the native plugins to attempt to find the x86 tools when building for Windows x64 and none of the x64 tools are available.

This means that when building C++ on a Windows x64 and only cygwin32 or an older Visual studio is installed, the 32 bit binaries will be built and tested, rather than complaining that no tools are available. This fallback could possibly happen on other platforms, but is either pointless (macOS) or is likely to fail (Linux).

The fallback would not happen when the target architecture is explicitly specified, but that isn't possible yet.

    • -1
    • +2
    ./CppIncrementalBuildIntegrationTest.groovy
  1. … 21 more files in changeset.
Merged the C/C++ `Depend` task implementation into `AbstractNativeCompileTask`. This means that there are fewer tasks to create, configure and execute, and that the header dependency analysis happens once per binary instead of twice.

    • -4
    • +5
    ./CppIncrementalBuildIntegrationTest.groovy
  1. … 27 more files in changeset.
Changed C/C++ dependency analysis to correctly handle macro expanding (or not) the arguments of a macro function when used in a token concatenation expression.

    • -6
    • +6
    ./CppIncrementalBuildIntegrationTest.groovy
  1. … 11 more files in changeset.
Changed C/C++ dependency analysis to correctly handle a chain of token concatenation expressions, and allow token concatenation expressions to be used as macro function call parameters.

    • -0
    • +7
    ./CppIncrementalBuildIntegrationTest.groovy
  1. … 5 more files in changeset.
Changed C/C++ dependency analysis to correctly handle token concatenation expressions in macro function bodies that are invoked from another macro function.

    • -1
    • +10
    ./CppIncrementalBuildIntegrationTest.groovy
  1. … 12 more files in changeset.
Changed C/C++ dependency analysis to handle "function-like" macros whose value is a macro function call.

    • -1
    • +2
    ./CppIncrementalBuildIntegrationTest.groovy
  1. … 9 more files in changeset.
Changed C/C++ dependency analysis to handle more kinds of macro function call parameters. Specifically, handle parameters that are quoted strings, system include paths and macro function calls, in addition to macros (that were already handled).

    • -1
    • +1
    ./CppIncrementalBuildIntegrationTest.groovy
  1. … 15 more files in changeset.
Merge pull request #3539 from gradle/sg/native/cpp-executable-rename

Rename cpp-executable to cpp-application

    • -1
    • +1
    ./CppIncrementalBuildIntegrationTest.groovy
  1. … 1 more file in changeset.
Changed C/C++ dependency analysis to handle macros whose body is a macro function call.

    • -6
    • +2
    ./CppIncrementalBuildIntegrationTest.groovy
  1. … 21 more files in changeset.
Changed C/C++ dependency analysis to start to understand "function-like" macros that take parameters. Specifically, handle function invocations whose parameters are macro names on functions whose bodies are either a constant, a macro or one of the function parameters.

    • -6
    • +13
    ./CppIncrementalBuildIntegrationTest.groovy
  1. … 17 more files in changeset.