diff options
author | brettw@chromium.org <brettw@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2013-11-04 19:19:59 +0000 |
---|---|---|
committer | brettw@chromium.org <brettw@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2013-11-04 19:19:59 +0000 |
commit | 132715e1e82b1f69fc5a67d3acedb24c12d02e2a (patch) | |
tree | d439dd489e8f11e40e9161c5e45188f62ff2d1e6 /tools/gn/ninja_copy_target_writer_unittest.cc | |
parent | 21bb906f7ce89a54bf8ecdb951771bb25069e43c (diff) | |
download | chromium_src-132715e1e82b1f69fc5a67d3acedb24c12d02e2a.zip chromium_src-132715e1e82b1f69fc5a67d3acedb24c12d02e2a.tar.gz chromium_src-132715e1e82b1f69fc5a67d3acedb24c12d02e2a.tar.bz2 |
GN: toolchain threading cleanup
Remove the thread-unsafe toolchain pointer on the otherwise-threadsafe Settings object. I replaced it with the toolchain label, and moved the is_default flag from the toolchain to the Settings object.
This required that I pass the toolchain around in a few more places, but also simplifies some other cases.
I removed the toolchain prefix from Ninja rules for the default toolchain since that's not necessary any more for GYP compat.
This fixes an annoying double-free in the toolchain manager. I think my current refactor will clean this up in a later phase.
R=scottmg@chromium.org
Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=232657
Review URL: https://codereview.chromium.org/51693002
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@232755 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'tools/gn/ninja_copy_target_writer_unittest.cc')
-rw-r--r-- | tools/gn/ninja_copy_target_writer_unittest.cc | 16 |
1 files changed, 8 insertions, 8 deletions
diff --git a/tools/gn/ninja_copy_target_writer_unittest.cc b/tools/gn/ninja_copy_target_writer_unittest.cc index c31cbd2..5642d9d 100644 --- a/tools/gn/ninja_copy_target_writer_unittest.cc +++ b/tools/gn/ninja_copy_target_writer_unittest.cc @@ -27,14 +27,14 @@ TEST(NinjaCopyTargetWriter, Run) { setup.settings()->set_target_os(Settings::LINUX); std::ostringstream out; - NinjaCopyTargetWriter writer(&target, out); + NinjaCopyTargetWriter writer(&target, setup.toolchain(), out); writer.Run(); const char expected_linux[] = - "build input1.out: tc_copy ../../foo/input1.txt\n" - "build input2.out: tc_copy ../../foo/input2.txt\n" + "build input1.out: copy ../../foo/input1.txt\n" + "build input2.out: copy ../../foo/input2.txt\n" "\n" - "build obj/foo/bar.stamp: tc_stamp input1.out input2.out\n"; + "build obj/foo/bar.stamp: stamp input1.out input2.out\n"; std::string out_str = out.str(); #if defined(OS_WIN) std::replace(out_str.begin(), out_str.end(), '\\', '/'); @@ -47,16 +47,16 @@ TEST(NinjaCopyTargetWriter, Run) { setup.settings()->set_target_os(Settings::WIN); std::ostringstream out; - NinjaCopyTargetWriter writer(&target, out); + NinjaCopyTargetWriter writer(&target, setup.toolchain(), out); writer.Run(); // TODO(brettw) I think we'll need to worry about backslashes here // depending if we're on actual Windows or Linux pretending to be Windows. const char expected_win[] = - "build input1.out: tc_copy ../../foo/input1.txt\n" - "build input2.out: tc_copy ../../foo/input2.txt\n" + "build input1.out: copy ../../foo/input1.txt\n" + "build input2.out: copy ../../foo/input2.txt\n" "\n" - "build obj/foo/bar.stamp: tc_stamp input1.out input2.out\n"; + "build obj/foo/bar.stamp: stamp input1.out input2.out\n"; std::string out_str = out.str(); #if defined(OS_WIN) std::replace(out_str.begin(), out_str.end(), '\\', '/'); |