Chromium Code Reviews| 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/variables.h" | 5 #include "tools/gn/variables.h" |
| 6 | 6 |
| 7 namespace variables { | 7 namespace variables { |
| 8 | 8 |
| 9 // Built-in variables ---------------------------------------------------------- | 9 // Built-in variables ---------------------------------------------------------- |
| 10 | 10 |
| (...skipping 212 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 223 | 223 |
| 224 #define COMMON_ORDERING_HELP \ | 224 #define COMMON_ORDERING_HELP \ |
| 225 "\n" \ | 225 "\n" \ |
| 226 "Ordering of flags and values:\n" \ | 226 "Ordering of flags and values:\n" \ |
| 227 "\n" \ | 227 "\n" \ |
| 228 " 1. Those set on the current target (not in a config).\n" \ | 228 " 1. Those set on the current target (not in a config).\n" \ |
| 229 " 2. Those set on the \"configs\" on the target in order that the\n" \ | 229 " 2. Those set on the \"configs\" on the target in order that the\n" \ |
| 230 " configs appear in the list.\n" \ | 230 " configs appear in the list.\n" \ |
| 231 " 3. Those set on the \"all_dependent_configs\" on the target in order\n" \ | 231 " 3. Those set on the \"all_dependent_configs\" on the target in order\n" \ |
| 232 " that the configs appear in the list.\n" \ | 232 " that the configs appear in the list.\n" \ |
| 233 " 4. Those set on the \"direct_dependent_configs\" on the target in\n" \ | 233 " 4. Those set on the \"public_configs\" on the target in order that\n" \ |
| 234 " order that those configs appear in the list.\n" \ | 234 " those configs appear in the list.\n" \ |
| 235 " 5. all_dependent_configs pulled from dependencies, in the order of\n" \ | 235 " 5. all_dependent_configs pulled from dependencies, in the order of\n" \ |
| 236 " the \"deps\" list. This is done recursively. If a config appears\n" \ | 236 " the \"deps\" list. This is done recursively. If a config appears\n" \ |
| 237 " more than once, only the first occurance will be used.\n" \ | 237 " more than once, only the first occurance will be used.\n" \ |
| 238 " 6. direct_dependent_configs pulled from dependencies, in the order\n" \ | 238 " 6. public_configs pulled from dependencies, in the order of the\n" \ |
| 239 " of the \"deps\" list. If a dependency has\n" \ | 239 " \"deps\" list. If a dependency has " \ |
| 240 " \"forward_dependent_configs_from\", they will be applied\n" \ | 240 "\"forward_dependent_configs_from\",\n" \ |
| 241 " recursively.\n" | 241 " or are public dependencies, they will be applied recursively.\n" |
| 242 | 242 |
| 243 const char kAllDependentConfigs[] = "all_dependent_configs"; | 243 const char kAllDependentConfigs[] = "all_dependent_configs"; |
| 244 const char kAllDependentConfigs_HelpShort[] = | 244 const char kAllDependentConfigs_HelpShort[] = |
| 245 "all_dependent_configs: [label list] Configs to be forced on dependents."; | 245 "all_dependent_configs: [label list] Configs to be forced on dependents."; |
| 246 const char kAllDependentConfigs_Help[] = | 246 const char kAllDependentConfigs_Help[] = |
| 247 "all_dependent_configs: Configs to be forced on dependents.\n" | 247 "all_dependent_configs: Configs to be forced on dependents.\n" |
| 248 "\n" | 248 "\n" |
| 249 " A list of config labels.\n" | 249 " A list of config labels.\n" |
| 250 "\n" | 250 "\n" |
| 251 " All targets depending on this one, and recursively, all targets\n" | 251 " All targets depending on this one, and recursively, all targets\n" |
| 252 " depending on those, will have the configs listed in this variable\n" | 252 " depending on those, will have the configs listed in this variable\n" |
| 253 " added to them. These configs will also apply to the current target.\n" | 253 " added to them. These configs will also apply to the current target.\n" |
| 254 "\n" | 254 "\n" |
| 255 " This addition happens in a second phase once a target and all of its\n" | 255 " This addition happens in a second phase once a target and all of its\n" |
| 256 " dependencies have been resolved. Therefore, a target will not see\n" | 256 " dependencies have been resolved. Therefore, a target will not see\n" |
| 257 " these force-added configs in their \"configs\" variable while the\n" | 257 " these force-added configs in their \"configs\" variable while the\n" |
| 258 " script is running, and then can not be removed. As a result, this\n" | 258 " script is running, and then can not be removed. As a result, this\n" |
| 259 " capability should generally only be used to add defines and include\n" | 259 " capability should generally only be used to add defines and include\n" |
| 260 " directories necessary to compile a target's headers.\n" | 260 " directories necessary to compile a target's headers.\n" |
| 261 "\n" | 261 "\n" |
| 262 " See also \"direct_dependent_configs\".\n" | 262 " See also \"public_configs\".\n" |
| 263 COMMON_ORDERING_HELP; | 263 COMMON_ORDERING_HELP; |
| 264 | 264 |
| 265 const char kAllowCircularIncludesFrom[] = "allow_circular_includes_from"; | 265 const char kAllowCircularIncludesFrom[] = "allow_circular_includes_from"; |
| 266 const char kAllowCircularIncludesFrom_HelpShort[] = | 266 const char kAllowCircularIncludesFrom_HelpShort[] = |
| 267 "allow_circular_includes_from: [label list] Permit includes from deps."; | 267 "allow_circular_includes_from: [label list] Permit includes from deps."; |
| 268 const char kAllowCircularIncludesFrom_Help[] = | 268 const char kAllowCircularIncludesFrom_Help[] = |
| 269 "allow_circular_includes_from: Permit includes from deps.\n" | 269 "allow_circular_includes_from: Permit includes from deps.\n" |
| 270 "\n" | 270 "\n" |
| 271 " A list of target labels. Must be a subset of the target's \"deps\".\n" | 271 " A list of target labels. Must be a subset of the target's \"deps\".\n" |
| 272 " These targets will be permitted to include headers from the current\n" | 272 " These targets will be permitted to include headers from the current\n" |
| (...skipping 153 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 426 "\n" | 426 "\n" |
| 427 " Lists files required to run the given target. These are typically\n" | 427 " Lists files required to run the given target. These are typically\n" |
| 428 " data files.\n" | 428 " data files.\n" |
| 429 "\n" | 429 "\n" |
| 430 " Appearing in the \"data\" section does not imply any special handling\n" | 430 " Appearing in the \"data\" section does not imply any special handling\n" |
| 431 " such as copying them to the output directory. This is just used for\n" | 431 " such as copying them to the output directory. This is just used for\n" |
| 432 " declaring runtime dependencies. There currently isn't a good use for\n" | 432 " declaring runtime dependencies. There currently isn't a good use for\n" |
| 433 " these but it is envisioned that test data can be listed here for use\n" | 433 " these but it is envisioned that test data can be listed here for use\n" |
| 434 " running automated tests.\n" | 434 " running automated tests.\n" |
| 435 "\n" | 435 "\n" |
| 436 " See also \"gn help inputs\" and \"gn help datadeps\", both of\n" | 436 " See also \"gn help inputs\" and \"gn help data_deps\", both of\n" |
| 437 " which actually affect the build in concrete ways.\n"; | 437 " which actually affect the build in concrete ways.\n"; |
| 438 | 438 |
| 439 const char kDatadeps[] = "datadeps"; | 439 const char kDataDeps[] = "data_deps"; |
| 440 const char kDatadeps_HelpShort[] = | 440 const char kDataDeps_HelpShort[] = |
| 441 "datadeps: [label list] Non-linked dependencies."; | 441 "data_deps: [label list] Non-linked dependencies."; |
| 442 const char kDatadeps_Help[] = | 442 const char kDataDeps_Help[] = |
| 443 "datadeps: Non-linked dependencies.\n" | 443 "data_deps: Non-linked dependencies.\n" |
| 444 "\n" | 444 "\n" |
| 445 " A list of target labels.\n" | 445 " A list of target labels.\n" |
| 446 "\n" | 446 "\n" |
| 447 " Specifies dependencies of a target that are not actually linked into\n" | 447 " Specifies dependencies of a target that are not actually linked into\n" |
| 448 " the current target. Such dependencies will built and will be available\n" | 448 " the current target. Such dependencies will built and will be available\n" |
| 449 " at runtime.\n" | 449 " at runtime.\n" |
| 450 "\n" | 450 "\n" |
| 451 " This is normally used for things like plugins or helper programs that\n" | 451 " This is normally used for things like plugins or helper programs that\n" |
| 452 " a target needs at runtime.\n" | 452 " a target needs at runtime.\n" |
| 453 "\n" | 453 "\n" |
| 454 " See also \"gn help deps\" and \"gn help data\".\n" | 454 " See also \"gn help deps\" and \"gn help data\".\n" |
| 455 "\n" | 455 "\n" |
| 456 "Example:\n" | 456 "Example:\n" |
| 457 " executable(\"foo\") {\n" | 457 " executable(\"foo\") {\n" |
| 458 " deps = [ \"//base\" ]\n" | 458 " deps = [ \"//base\" ]\n" |
| 459 " datadeps = [ \"//plugins:my_runtime_plugin\" ]\n" | 459 " data_deps = [ \"//plugins:my_runtime_plugin\" ]\n" |
| 460 " }\n"; | 460 " }\n"; |
| 461 | 461 |
| 462 const char kDefines[] = "defines"; | 462 const char kDefines[] = "defines"; |
| 463 const char kDefines_HelpShort[] = | 463 const char kDefines_HelpShort[] = |
| 464 "defines: [string list] C preprocessor defines."; | 464 "defines: [string list] C preprocessor defines."; |
| 465 const char kDefines_Help[] = | 465 const char kDefines_Help[] = |
| 466 "defines: C preprocessor defines.\n" | 466 "defines: C preprocessor defines.\n" |
| 467 "\n" | 467 "\n" |
| 468 " A list of strings\n" | 468 " A list of strings\n" |
| 469 "\n" | 469 "\n" |
| (...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 501 " # Locate the depfile in the output directory named like the\n" | 501 " # Locate the depfile in the output directory named like the\n" |
| 502 " # inputs but with a \".d\" appended.\n" | 502 " # inputs but with a \".d\" appended.\n" |
| 503 " depfile = \"$relative_target_output_dir/{{source_name}}.d\"\n" | 503 " depfile = \"$relative_target_output_dir/{{source_name}}.d\"\n" |
| 504 "\n" | 504 "\n" |
| 505 " # Say our script uses \"-o <d file>\" to indicate the depfile.\n" | 505 " # Say our script uses \"-o <d file>\" to indicate the depfile.\n" |
| 506 " args = [ \"{{source}}\", \"-o\", depfile ]\n" | 506 " args = [ \"{{source}}\", \"-o\", depfile ]\n" |
| 507 " }\n"; | 507 " }\n"; |
| 508 | 508 |
| 509 const char kDeps[] = "deps"; | 509 const char kDeps[] = "deps"; |
| 510 const char kDeps_HelpShort[] = | 510 const char kDeps_HelpShort[] = |
| 511 "deps: [label list] Linked dependencies."; | 511 "deps: [label list] Private linked dependencies."; |
| 512 const char kDeps_Help[] = | 512 const char kDeps_Help[] = |
| 513 "deps: Linked dependencies.\n" | 513 "deps: Private linked dependencies.\n" |
| 514 "\n" | 514 "\n" |
| 515 " A list of target labels.\n" | 515 " A list of target labels.\n" |
| 516 "\n" | 516 "\n" |
| 517 " Specifies dependencies of a target. Shared and dynamic libraries will\n" | 517 " Specifies private dependencies of a target. Shared and dynamic\n" |
| 518 " be linked into the current target. Other target types that can't be\n" | 518 " libraries will be linked into the current target. Other target types\n" |
| 519 " linked (like actions and groups) listed in \"deps\" will be treated\n" | 519 " that can't be linked (like actions and groups) listed in \"deps\" will\n" |
| 520 " as \"datadeps\". Likewise, if the current target isn't linkable, then\n" | 520 " be treated as \"data_deps\". Likewise, if the current target isn't\n" |
| 521 " all deps will be treated as \"datadeps\".\n" | 521 " linkable, then all deps will be treated as \"data_deps\".\n" |
| 522 "\n" | 522 "\n" |
| 523 " See also \"datadeps\".\n"; | 523 " These dependencies are private in that it does not grant dependent\n" |
| 524 | 524 " targets the ability to include headers from the dependency, and direct\n" |
| 525 const char kDirectDependentConfigs[] = "direct_dependent_configs"; | 525 " dependent configs are not forwarded.\n" |
| 526 const char kDirectDependentConfigs_HelpShort[] = | |
| 527 "direct_dependent_configs: [label list] Configs to be forced on " | |
| 528 "dependents."; | |
| 529 const char kDirectDependentConfigs_Help[] = | |
| 530 "direct_dependent_configs: Configs to be forced on dependents.\n" | |
| 531 "\n" | 526 "\n" |
| 532 " A list of config labels.\n" | 527 " See also \"public_deps\" and \"data_deps\".\n"; |
| 533 "\n" | |
| 534 " Targets directly referencing this one will have the configs listed in\n" | |
| 535 " this variable added to them. These configs will also apply to the\n" | |
| 536 " current target.\n" | |
| 537 "\n" | |
| 538 " This addition happens in a second phase once a target and all of its\n" | |
| 539 " dependencies have been resolved. Therefore, a target will not see\n" | |
| 540 " these force-added configs in their \"configs\" variable while the\n" | |
| 541 " script is running, and then can not be removed. As a result, this\n" | |
| 542 " capability should generally only be used to add defines and include\n" | |
| 543 " directories necessary to compile a target's headers.\n" | |
| 544 "\n" | |
| 545 " See also \"all_dependent_configs\".\n" | |
| 546 COMMON_ORDERING_HELP; | |
| 547 | 528 |
| 548 const char kForwardDependentConfigsFrom[] = "forward_dependent_configs_from"; | 529 const char kForwardDependentConfigsFrom[] = "forward_dependent_configs_from"; |
| 549 const char kForwardDependentConfigsFrom_HelpShort[] = | 530 const char kForwardDependentConfigsFrom_HelpShort[] = |
| 550 "forward_dependent_configs_from: [label list] Forward dependent's configs."; | 531 "forward_dependent_configs_from: [label list] Forward dependent's configs."; |
| 551 const char kForwardDependentConfigsFrom_Help[] = | 532 const char kForwardDependentConfigsFrom_Help[] = |
| 552 "forward_dependent_configs_from\n" | 533 "forward_dependent_configs_from\n" |
| 553 "\n" | 534 "\n" |
| 554 " A list of target labels.\n" | 535 " A list of target labels.\n" |
| 555 "\n" | 536 "\n" |
| 556 " Exposes the direct_dependent_configs from a dependent target as\n" | 537 " Exposes the public_configs from a private dependent target as\n" |
| 557 " direct_dependent_configs of the current one. Each label in this list\n" | 538 " public_configs of the current one. Each label in this list\n" |
| 558 " must also be in the deps.\n" | 539 " must also be in the deps.\n" |
| 559 "\n" | 540 "\n" |
| 541 " Generally you should use public_deps instead of this variable to\n" | |
| 542 " express the concept of exposing a dependency as part of a target's\n" | |
| 543 " public API. We're considering removing this variable.\n" | |
| 544 "\n" | |
| 545 "Discussion\n" | |
| 546 "\n" | |
| 560 " Sometimes you depend on a child library that exports some necessary\n" | 547 " Sometimes you depend on a child library that exports some necessary\n" |
| 561 " configuration via direct_dependent_configs. If your target in turn\n" | 548 " configuration via public_configs. If your target in turn exposes the\n" |
| 562 " exposes the child library's headers in its public headers, it might\n" | 549 " child library's headers in its public headers, it might mean that\n" |
| 563 " mean that targets that depend on you won't work: they'll be seeing the\n" | 550 " targets that depend on you won't work: they'll be seeing the child\n" |
| 564 " child library's code but not the necessary configuration. This list\n" | 551 " library's code but not the necessary configuration. This list\n" |
| 565 " specifies which of your deps' direct dependent configs to expose as\n" | 552 " specifies which of your deps' direct dependent configs to expose as\n" |
| 566 " your own.\n" | 553 " your own.\n" |
| 567 "\n" | 554 "\n" |
| 568 "Examples:\n" | 555 "Examples\n" |
| 569 "\n" | 556 "\n" |
| 570 " If we use a given library \"a\" from our public headers:\n" | 557 " If we use a given library \"a\" from our public headers:\n" |
| 571 "\n" | 558 "\n" |
| 572 " deps = [ \":a\", \":b\", ... ]\n" | 559 " deps = [ \":a\", \":b\", ... ]\n" |
| 573 " forward_dependent_configs_from = [ \":a\" ]\n" | 560 " forward_dependent_configs_from = [ \":a\" ]\n" |
| 574 "\n" | 561 "\n" |
| 575 " This example makes a \"transparent\" target that forwards a dependency\n" | 562 " This example makes a \"transparent\" target that forwards a dependency\n" |
| 576 " to another:\n" | 563 " to another:\n" |
| 577 "\n" | 564 "\n" |
| 578 " group(\"frob\") {\n" | 565 " group(\"frob\") {\n" |
| (...skipping 73 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 652 "\n" | 639 "\n" |
| 653 " A list of strings.\n" | 640 " A list of strings.\n" |
| 654 "\n" | 641 "\n" |
| 655 " These flags are passed on the command-line to the linker and generally\n" | 642 " These flags are passed on the command-line to the linker and generally\n" |
| 656 " specify various linking options. Most targets will not need these and\n" | 643 " specify various linking options. Most targets will not need these and\n" |
| 657 " will use \"libs\" and \"lib_dirs\" instead.\n" | 644 " will use \"libs\" and \"lib_dirs\" instead.\n" |
| 658 "\n" | 645 "\n" |
| 659 " ldflags are NOT pushed to dependents, so applying ldflags to source\n" | 646 " ldflags are NOT pushed to dependents, so applying ldflags to source\n" |
| 660 " sets or static libraries will be a no-op. If you want to apply ldflags\n" | 647 " sets or static libraries will be a no-op. If you want to apply ldflags\n" |
| 661 " to dependent targets, put them in a config and set it in the\n" | 648 " to dependent targets, put them in a config and set it in the\n" |
| 662 " all_dependent_configs or direct_dependent_configs.\n"; | 649 " all_dependent_configs or public_configs.\n"; |
| 663 | 650 |
| 664 #define COMMON_LIB_INHERITANCE_HELP \ | 651 #define COMMON_LIB_INHERITANCE_HELP \ |
| 665 "\n" \ | 652 "\n" \ |
| 666 " libs and lib_dirs work differently than other flags in two respects.\n" \ | 653 " libs and lib_dirs work differently than other flags in two respects.\n" \ |
| 667 " First, then are inherited across static library boundaries until a\n" \ | 654 " First, then are inherited across static library boundaries until a\n" \ |
| 668 " shared library or executable target is reached. Second, they are\n" \ | 655 " shared library or executable target is reached. Second, they are\n" \ |
| 669 " uniquified so each one is only passed once (the first instance of it\n" \ | 656 " uniquified so each one is only passed once (the first instance of it\n" \ |
| 670 " will be the one used).\n" | 657 " will be the one used).\n" |
| 671 | 658 |
| 672 const char kLibDirs[] = "lib_dirs"; | 659 const char kLibDirs[] = "lib_dirs"; |
| (...skipping 122 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 795 " sections of targets. If a file is included that is not known to the\n" | 782 " sections of targets. If a file is included that is not known to the\n" |
| 796 " build, it will be allowed.\n" | 783 " build, it will be allowed.\n" |
| 797 "\n" | 784 "\n" |
| 798 "Examples:\n" | 785 "Examples:\n" |
| 799 " These exact files are public:\n" | 786 " These exact files are public:\n" |
| 800 " public = [ \"foo.h\", \"bar.h\" ]\n" | 787 " public = [ \"foo.h\", \"bar.h\" ]\n" |
| 801 "\n" | 788 "\n" |
| 802 " No files are public (no targets may include headers from this one):\n" | 789 " No files are public (no targets may include headers from this one):\n" |
| 803 " public = []\n"; | 790 " public = []\n"; |
| 804 | 791 |
| 792 const char kPublicConfigs[] = "public_configs"; | |
| 793 const char kPublicConfigs_HelpShort[] = | |
| 794 "public_configs: [label list] Configs applied to dependents."; | |
| 795 const char kPublicConfigs_Help[] = | |
| 796 "public_configs: Configs to be applied on dependents.\n" | |
| 797 "\n" | |
| 798 " A list of config labels.\n" | |
| 799 "\n" | |
| 800 " Targets directly referencing this one will have the configs listed in\n" | |
|
jamesr
2014/09/16 20:09:25
'directly referencing this' -> 'directly depending
| |
| 801 " this variable added to them. These configs will also apply to the\n" | |
| 802 " current target.\n" | |
|
jamesr
2014/09/16 20:09:25
we have some cases where we want things to apply t
brettw
2014/09/16 21:01:33
Yes, my original design had this separate (like GY
| |
| 803 "\n" | |
| 804 " This addition happens in a second phase once a target and all of its\n" | |
| 805 " dependencies have been resolved. Therefore, a target will not see\n" | |
| 806 " these force-added configs in their \"configs\" variable while the\n" | |
| 807 " script is running, and then can not be removed. As a result, this\n" | |
| 808 " capability should generally only be used to add defines and include\n" | |
| 809 " directories necessary to compile a target's headers.\n" | |
| 810 "\n" | |
| 811 " See also \"all_dependent_configs\".\n" | |
| 812 COMMON_ORDERING_HELP; | |
| 813 | |
| 814 const char kPublicDeps[] = "public_deps"; | |
| 815 const char kPublicDeps_HelpShort[] = | |
| 816 "public: [label list] Declare public dependencies."; | |
| 817 const char kPublicDeps_Help[] = | |
| 818 "public_deps: Declare public dependencies.\n" | |
| 819 "\n" | |
| 820 " Public dependencies are like private dependencies (\"deps\") but\n" | |
| 821 " additionally express that the current target exposes the listed deps\n" | |
| 822 " as part of its public API.\n" | |
| 823 "\n" | |
| 824 " This has two ramifications:\n" | |
| 825 "\n" | |
| 826 " - public_configs that are part of the dependency are forwarded\n" | |
| 827 " to dependents (this is the same as using\n" | |
|
jamesr
2014/09/16 20:09:25
direct dependents
| |
| 828 " forward_dependent_configs_from).\n" | |
| 829 "\n" | |
| 830 " - public headers in the dependency are usable by dependents\n" | |
| 831 " (includes do not require a direct dependency or visibility).\n" | |
| 832 "\n" | |
| 833 "Discussion\n" | |
| 834 "\n" | |
| 835 " Say you have three targets: A -> B -> C. C's visibility may allow\n" | |
| 836 " B to depend on it but not A. Normally, this would prevent A from\n" | |
| 837 " including any headers from C, and C's public_configs would apply\n" | |
| 838 " only to B.\n" | |
| 839 "\n" | |
| 840 " If B lists C in its public_deps instead of regular deps, A will now\n" | |
| 841 " inherit C's public_configs and the ability to include C's public\n" | |
| 842 " headers.\n" | |
| 843 "\n" | |
| 844 " Generally if you are writing a target B and you include C's headers\n" | |
| 845 " as part of B's public headers, or targets depending on B should\n" | |
| 846 " consider B and C to be part of a unit, you should use public_deps\n" | |
| 847 " instead of deps.\n" | |
| 848 "\n" | |
| 849 "Example\n" | |
| 850 "\n" | |
| 851 " shared_library(\"b\") {\n" | |
|
jamesr
2014/09/16 20:09:25
this example seems a little bit too terse
| |
| 852 " deps = [ \":super_secret_implementation_details\" ]\n" | |
| 853 " public_deps = [ \":c\" ]\n" | |
| 854 " }\n"; | |
| 855 | |
| 805 const char kScript[] = "script"; | 856 const char kScript[] = "script"; |
| 806 const char kScript_HelpShort[] = | 857 const char kScript_HelpShort[] = |
| 807 "script: [file name] Script file for actions."; | 858 "script: [file name] Script file for actions."; |
| 808 const char kScript_Help[] = | 859 const char kScript_Help[] = |
| 809 "script: Script file for actions.\n" | 860 "script: Script file for actions.\n" |
| 810 "\n" | 861 "\n" |
| 811 " An absolute or buildfile-relative file name of a Python script to run\n" | 862 " An absolute or buildfile-relative file name of a Python script to run\n" |
| 812 " for a action and action_foreach targets (see \"gn help action\" and\n" | 863 " for a action and action_foreach targets (see \"gn help action\" and\n" |
| 813 " \"gn help action_foreach\").\n"; | 864 " \"gn help action_foreach\").\n"; |
| 814 | 865 |
| (...skipping 124 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 939 INSERT_VARIABLE(Args) | 990 INSERT_VARIABLE(Args) |
| 940 INSERT_VARIABLE(Cflags) | 991 INSERT_VARIABLE(Cflags) |
| 941 INSERT_VARIABLE(CflagsC) | 992 INSERT_VARIABLE(CflagsC) |
| 942 INSERT_VARIABLE(CflagsCC) | 993 INSERT_VARIABLE(CflagsCC) |
| 943 INSERT_VARIABLE(CflagsObjC) | 994 INSERT_VARIABLE(CflagsObjC) |
| 944 INSERT_VARIABLE(CflagsObjCC) | 995 INSERT_VARIABLE(CflagsObjCC) |
| 945 INSERT_VARIABLE(CheckIncludes) | 996 INSERT_VARIABLE(CheckIncludes) |
| 946 INSERT_VARIABLE(CompleteStaticLib) | 997 INSERT_VARIABLE(CompleteStaticLib) |
| 947 INSERT_VARIABLE(Configs) | 998 INSERT_VARIABLE(Configs) |
| 948 INSERT_VARIABLE(Data) | 999 INSERT_VARIABLE(Data) |
| 949 INSERT_VARIABLE(Datadeps) | 1000 INSERT_VARIABLE(DataDeps) |
| 950 INSERT_VARIABLE(Defines) | 1001 INSERT_VARIABLE(Defines) |
| 951 INSERT_VARIABLE(Depfile) | 1002 INSERT_VARIABLE(Depfile) |
| 952 INSERT_VARIABLE(Deps) | 1003 INSERT_VARIABLE(Deps) |
| 953 INSERT_VARIABLE(DirectDependentConfigs) | |
| 954 INSERT_VARIABLE(ForwardDependentConfigsFrom) | 1004 INSERT_VARIABLE(ForwardDependentConfigsFrom) |
| 955 INSERT_VARIABLE(IncludeDirs) | 1005 INSERT_VARIABLE(IncludeDirs) |
| 956 INSERT_VARIABLE(Inputs) | 1006 INSERT_VARIABLE(Inputs) |
| 957 INSERT_VARIABLE(Ldflags) | 1007 INSERT_VARIABLE(Ldflags) |
| 958 INSERT_VARIABLE(Libs) | 1008 INSERT_VARIABLE(Libs) |
| 959 INSERT_VARIABLE(LibDirs) | 1009 INSERT_VARIABLE(LibDirs) |
| 960 INSERT_VARIABLE(OutputExtension) | 1010 INSERT_VARIABLE(OutputExtension) |
| 961 INSERT_VARIABLE(OutputName) | 1011 INSERT_VARIABLE(OutputName) |
| 962 INSERT_VARIABLE(Outputs) | 1012 INSERT_VARIABLE(Outputs) |
| 963 INSERT_VARIABLE(Public) | 1013 INSERT_VARIABLE(Public) |
| 1014 INSERT_VARIABLE(PublicConfigs) | |
| 1015 INSERT_VARIABLE(PublicDeps) | |
| 964 INSERT_VARIABLE(Script) | 1016 INSERT_VARIABLE(Script) |
| 965 INSERT_VARIABLE(Sources) | 1017 INSERT_VARIABLE(Sources) |
| 966 INSERT_VARIABLE(Testonly) | 1018 INSERT_VARIABLE(Testonly) |
| 967 INSERT_VARIABLE(Visibility) | 1019 INSERT_VARIABLE(Visibility) |
| 968 } | 1020 } |
| 969 return info_map; | 1021 return info_map; |
| 970 } | 1022 } |
| 971 | 1023 |
| 972 #undef INSERT_VARIABLE | 1024 #undef INSERT_VARIABLE |
| 973 | 1025 |
| 974 } // namespace variables | 1026 } // namespace variables |
| OLD | NEW |