| OLD | NEW |
| 1 // Copyright (c) 2013 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2013 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #include "tools/gn/target.h" | 5 #include "tools/gn/target.h" |
| 6 | 6 |
| 7 #include <stddef.h> | 7 #include <stddef.h> |
| 8 | 8 |
| 9 #include <algorithm> | 9 #include <algorithm> |
| 10 | 10 |
| (...skipping 525 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 536 case GROUP: | 536 case GROUP: |
| 537 case BUNDLE_DATA: | 537 case BUNDLE_DATA: |
| 538 case CREATE_BUNDLE: | 538 case CREATE_BUNDLE: |
| 539 case SOURCE_SET: | 539 case SOURCE_SET: |
| 540 case COPY_FILES: | 540 case COPY_FILES: |
| 541 case ACTION: | 541 case ACTION: |
| 542 case ACTION_FOREACH: { | 542 case ACTION_FOREACH: { |
| 543 // These don't get linked to and use stamps which should be the first | 543 // These don't get linked to and use stamps which should be the first |
| 544 // entry in the outputs. These stamps are named | 544 // entry in the outputs. These stamps are named |
| 545 // "<target_out_dir>/<targetname>.stamp". | 545 // "<target_out_dir>/<targetname>.stamp". |
| 546 dependency_output_file_ = GetTargetOutputDirAsOutputFile(this); | 546 dependency_output_file_ = |
| 547 GetBuildDirForTargetAsOutputFile(this, BuildDirType::OBJ); |
| 547 dependency_output_file_.value().append(GetComputedOutputName()); | 548 dependency_output_file_.value().append(GetComputedOutputName()); |
| 548 dependency_output_file_.value().append(".stamp"); | 549 dependency_output_file_.value().append(".stamp"); |
| 549 break; | 550 break; |
| 550 } | 551 } |
| 551 case EXECUTABLE: | 552 case EXECUTABLE: |
| 552 case LOADABLE_MODULE: | 553 case LOADABLE_MODULE: |
| 553 // Executables and loadable modules don't get linked to, but the first | 554 // Executables and loadable modules don't get linked to, but the first |
| 554 // output is used for dependency management. | 555 // output is used for dependency management. |
| 555 CHECK_GE(tool->outputs().list().size(), 1u); | 556 CHECK_GE(tool->outputs().list().size(), 1u); |
| 556 check_tool_outputs = true; | 557 check_tool_outputs = true; |
| (...skipping 212 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 769 check_data_deps = g_scheduler->IsFileGeneratedByWriteRuntimeDeps(out_file); | 770 check_data_deps = g_scheduler->IsFileGeneratedByWriteRuntimeDeps(out_file); |
| 770 // Check object files (much slower and very rare) only if the "normal" | 771 // Check object files (much slower and very rare) only if the "normal" |
| 771 // output check failed. | 772 // output check failed. |
| 772 consider_object_files = !check_data_deps; | 773 consider_object_files = !check_data_deps; |
| 773 if (!EnsureFileIsGeneratedByDependency(this, out_file, true, | 774 if (!EnsureFileIsGeneratedByDependency(this, out_file, true, |
| 774 consider_object_files, | 775 consider_object_files, |
| 775 check_data_deps, &seen_targets)) | 776 check_data_deps, &seen_targets)) |
| 776 g_scheduler->AddUnknownGeneratedInput(this, source); | 777 g_scheduler->AddUnknownGeneratedInput(this, source); |
| 777 } | 778 } |
| 778 } | 779 } |
| OLD | NEW |