OLD | NEW |
1 // Copyright 2015 The Chromium Authors. All rights reserved. | 1 // Copyright 2015 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 <stddef.h> | 5 #include <stddef.h> |
6 | 6 |
7 #include <algorithm> | 7 #include <algorithm> |
8 | 8 |
9 #include "testing/gtest/include/gtest/gtest.h" | 9 #include "testing/gtest/include/gtest/gtest.h" |
10 #include "tools/gn/runtime_deps.h" | 10 #include "tools/gn/runtime_deps.h" |
(...skipping 266 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
277 Target loadable_module(setup.settings(), | 277 Target loadable_module(setup.settings(), |
278 Label(source_dir, "loadable_module")); | 278 Label(source_dir, "loadable_module")); |
279 InitTargetWithType(setup, &loadable_module, Target::LOADABLE_MODULE); | 279 InitTargetWithType(setup, &loadable_module, Target::LOADABLE_MODULE); |
280 loadable_module.data().push_back("//lm.data"); | 280 loadable_module.data().push_back("//lm.data"); |
281 ASSERT_TRUE(loadable_module.OnResolved(&err)); | 281 ASSERT_TRUE(loadable_module.OnResolved(&err)); |
282 | 282 |
283 Target module_data(setup.settings(), Label(source_dir, "module_data")); | 283 Target module_data(setup.settings(), Label(source_dir, "module_data")); |
284 InitTargetWithType(setup, &module_data, Target::BUNDLE_DATA); | 284 InitTargetWithType(setup, &module_data, Target::BUNDLE_DATA); |
285 module_data.private_deps().push_back(LabelTargetPair(&loadable_module)); | 285 module_data.private_deps().push_back(LabelTargetPair(&loadable_module)); |
286 module_data.bundle_data().file_rules().push_back(BundleFileRule( | 286 module_data.bundle_data().file_rules().push_back(BundleFileRule( |
| 287 nullptr, |
287 std::vector<SourceFile>{SourceFile(build_dir + "loadable_module.so")}, | 288 std::vector<SourceFile>{SourceFile(build_dir + "loadable_module.so")}, |
288 SubstitutionPattern::MakeForTest("{{bundle_resources_dir}}"))); | 289 SubstitutionPattern::MakeForTest("{{bundle_resources_dir}}"))); |
289 ASSERT_TRUE(module_data.OnResolved(&err)); | 290 ASSERT_TRUE(module_data.OnResolved(&err)); |
290 | 291 |
291 Target source_set(setup.settings(), Label(source_dir, "sources")); | 292 Target source_set(setup.settings(), Label(source_dir, "sources")); |
292 InitTargetWithType(setup, &source_set, Target::SOURCE_SET); | 293 InitTargetWithType(setup, &source_set, Target::SOURCE_SET); |
293 source_set.sources().push_back(SourceFile(source_dir.value() + "foo.cc")); | 294 source_set.sources().push_back(SourceFile(source_dir.value() + "foo.cc")); |
294 ASSERT_TRUE(source_set.OnResolved(&err)); | 295 ASSERT_TRUE(source_set.OnResolved(&err)); |
295 | 296 |
296 Target dylib(setup.settings(), Label(source_dir, "dylib")); | 297 Target dylib(setup.settings(), Label(source_dir, "dylib")); |
297 dylib.set_output_prefix_override(true); | 298 dylib.set_output_prefix_override(true); |
298 dylib.set_output_extension(""); | 299 dylib.set_output_extension(""); |
299 dylib.set_output_name("Bundle"); | 300 dylib.set_output_name("Bundle"); |
300 InitTargetWithType(setup, &dylib, Target::SHARED_LIBRARY); | 301 InitTargetWithType(setup, &dylib, Target::SHARED_LIBRARY); |
301 dylib.private_deps().push_back(LabelTargetPair(&source_set)); | 302 dylib.private_deps().push_back(LabelTargetPair(&source_set)); |
302 ASSERT_TRUE(dylib.OnResolved(&err)); | 303 ASSERT_TRUE(dylib.OnResolved(&err)); |
303 | 304 |
304 Target dylib_data(setup.settings(), Label(source_dir, "dylib_data")); | 305 Target dylib_data(setup.settings(), Label(source_dir, "dylib_data")); |
305 InitTargetWithType(setup, &dylib_data, Target::BUNDLE_DATA); | 306 InitTargetWithType(setup, &dylib_data, Target::BUNDLE_DATA); |
306 dylib_data.private_deps().push_back(LabelTargetPair(&dylib)); | 307 dylib_data.private_deps().push_back(LabelTargetPair(&dylib)); |
307 dylib_data.bundle_data().file_rules().push_back(BundleFileRule( | 308 dylib_data.bundle_data().file_rules().push_back(BundleFileRule( |
308 std::vector<SourceFile>{SourceFile(build_dir + "dylib")}, | 309 nullptr, std::vector<SourceFile>{SourceFile(build_dir + "dylib")}, |
309 SubstitutionPattern::MakeForTest("{{bundle_executable_dir}}"))); | 310 SubstitutionPattern::MakeForTest("{{bundle_executable_dir}}"))); |
310 ASSERT_TRUE(dylib_data.OnResolved(&err)); | 311 ASSERT_TRUE(dylib_data.OnResolved(&err)); |
311 | 312 |
312 Target data_dep(setup.settings(), Label(source_dir, "datadep")); | 313 Target data_dep(setup.settings(), Label(source_dir, "datadep")); |
313 InitTargetWithType(setup, &data_dep, Target::EXECUTABLE); | 314 InitTargetWithType(setup, &data_dep, Target::EXECUTABLE); |
314 data_dep.data().push_back("//dd.data"); | 315 data_dep.data().push_back("//dd.data"); |
315 ASSERT_TRUE(data_dep.OnResolved(&err)); | 316 ASSERT_TRUE(data_dep.OnResolved(&err)); |
316 | 317 |
317 Target bundle(setup.settings(), Label(source_dir, "bundle")); | 318 Target bundle(setup.settings(), Label(source_dir, "bundle")); |
318 InitTargetWithType(setup, &bundle, Target::CREATE_BUNDLE); | 319 InitTargetWithType(setup, &bundle, Target::CREATE_BUNDLE); |
(...skipping 85 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
404 err = Err(); | 405 err = Err(); |
405 EXPECT_TRUE(setup.ExecuteSnippet( | 406 EXPECT_TRUE(setup.ExecuteSnippet( |
406 "if (true) {\n" | 407 "if (true) {\n" |
407 " group(\"foo\") { write_runtime_deps = \"//out/Debug/foo.txt\" }\n" | 408 " group(\"foo\") { write_runtime_deps = \"//out/Debug/foo.txt\" }\n" |
408 "} else {\n" | 409 "} else {\n" |
409 " group(\"bar\") { write_runtime_deps = \"//out/Debug/bar.txt\" }\n" | 410 " group(\"bar\") { write_runtime_deps = \"//out/Debug/bar.txt\" }\n" |
410 "}", &err)); | 411 "}", &err)); |
411 EXPECT_EQ(1U, setup.items().size()); | 412 EXPECT_EQ(1U, setup.items().size()); |
412 EXPECT_EQ(1U, scheduler.GetWriteRuntimeDepsTargets().size()); | 413 EXPECT_EQ(1U, scheduler.GetWriteRuntimeDepsTargets().size()); |
413 } | 414 } |
OLD | NEW |