Граф коммитов

12 Коммитов

Автор SHA1 Сообщение Дата
brettw c333310122 Add documentation for exec_script and gypi_to_gn
There have been several questions about this recently.

Review URL: https://codereview.chromium.org/1905433002

Cr-Original-Commit-Position: refs/heads/master@{#388341}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: d385ecffc8fbe77cdb5e8b839896291a53b1c988
2016-04-19 22:55:02 +00:00
blundell c2eeb91a6d Start to unwind references to iOS in //content
The iOS port no longer uses //content (hooray!). This CL starts the
unwinding of references to iOS in //content by removing most references
in gypfiles. Note that after this CL dependencies on the content_browser
or content_common target will cause a gyp_chromium failure on iOS. This "fail
fast" behavior is good since new dependencies on //content on iOS are wrong.

Review URL: https://codereview.chromium.org/1710043002

Cr-Original-Commit-Position: refs/heads/master@{#376494}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: e5ecd0f07adc12ac233d15a608d6bd3af569b2e4
2016-02-19 18:28:18 +00:00
brettw c7db178d4a New build flag system, convert Google Now flag
This generates headers with build flags rather than forcing them all to be global. It includes an accessor wrapper so that references to the flags will fail if the proper header is not included.

Converts Google Now to use this and remove the global google now define and grit define.

Adds support for grit define values of "true" and "false" for ease of integration with GN (they are mapped to the corresponding Python "True" and "False").

Adds dependencies from the main gyp targets to the new generated feature define target. Since GYP only does hard dependencies one level, this should reduce the chance that somebody adds more of these cases and forces to add a dependency.

Reland of https://codereview.chromium.org/1475513006/
Reland of https://codereview.chromium.org/1458653002/
TBR=mark@chromium.org

Review URL: https://codereview.chromium.org/1469383005

Cr-Original-Commit-Position: refs/heads/master@{#361854}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 06c2ba3165d8b02364bf818d5028a7cb4fe48ac0
2015-11-26 09:22:27 +00:00
brettw 9811970736 Revert of New build flag system, convert Google Now flag (patchset #2 id:20001 of https://codereview.chromium.org/1475513006/ )
Reason for revert:
https://build.chromium.org/p/chromium.webkit/builders/WebKit%20Win%20x64%20Builder%20%28dbg%29/builds/69779/steps/compile/logs/stdio

Original issue's description:
> New build flag system, convert Google Now flag
>
> This generates headers with build flags rather than forcing them all to be global. It includes an accessor wrapper so that references to the flags will fail if the proper header is not included.
>
> Converts Google Now to use this and remove the global google now define and grit define.
>
> Adds support for grit define values of "true" and "false" for ease of integration with GN (they are mapped to the corresponding Python "True" and "False").
>
> Adds dependencies from the main gyp targets to the new generated feature define target. Since GYP only does hard dependencies one level, this should reduce the chance that somebody adds more of these cases and forces to add a dependency.
>
> Reland of https://codereview.chromium.org/1458653002/
> TBR=mark@chromium.org
>
> Committed: https://crrev.com/cbc1cd295bc85219ad89326457cd7f5cf003d41c
> Cr-Commit-Position: refs/heads/master@{#361741}

TBR=mark@chromium.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true

Review URL: https://codereview.chromium.org/1480693003

Cr-Original-Commit-Position: refs/heads/master@{#361749}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: c7cde6acb654b2c9cef527c0e8ac262d480c9f06
2015-11-25 22:25:43 +00:00
brettw b2912bca8d New build flag system, convert Google Now flag
This generates headers with build flags rather than forcing them all to be global. It includes an accessor wrapper so that references to the flags will fail if the proper header is not included.

Converts Google Now to use this and remove the global google now define and grit define.

Adds support for grit define values of "true" and "false" for ease of integration with GN (they are mapped to the corresponding Python "True" and "False").

Adds dependencies from the main gyp targets to the new generated feature define target. Since GYP only does hard dependencies one level, this should reduce the chance that somebody adds more of these cases and forces to add a dependency.

Reland of https://codereview.chromium.org/1458653002/
TBR=mark@chromium.org

Review URL: https://codereview.chromium.org/1475513006

Cr-Original-Commit-Position: refs/heads/master@{#361741}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: cbc1cd295bc85219ad89326457cd7f5cf003d41c
2015-11-25 21:53:26 +00:00
raymes 83fd5bb444 Revert of New build flag system, convert Google Now flag (patchset #14 id:260001 of https://codereview.chromium.org/1458653002/ )
Reason for revert:
This seems to have broken webkit builders: https://build.chromium.org/p/chromium.webkit/builders/WebKit%20Win%20Builder/builds/94668

Original issue's description:
> New build flag system, convert Google Now flag
>
> This generates headers with build flags rather than forcing them all to be global. It includes an accessor wrapper so that references to the flags will fail if the proper header is not included.
>
> Converts Google Now to use this and remove the global google now define and grit define.
>
> Adds support for grit define values of "true" and "false" for ease of integration with GN (they are mapped to the corresponding Python "True" and "False").
>
> Adds dependencies from the main gyp targets to the new generated feature define target. Since GYP only does hard dependencies one level, this should reduce the chance that somebody adds more of these cases and forces to add a dependency.
>
> Committed: https://crrev.com/3118dde528359280fa0cb3c6fc5b6323e834c514
> Cr-Commit-Position: refs/heads/master@{#361527}

TBR=mark@chromium.org,spang@chromium.org,brettw@chromium.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true

Review URL: https://codereview.chromium.org/1475883002

Cr-Original-Commit-Position: refs/heads/master@{#361541}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 4496a9a4563bf34e624261f7dcc5f1180282ff86
2015-11-25 03:19:12 +00:00
brettw bbf6afbd7b New build flag system, convert Google Now flag
This generates headers with build flags rather than forcing them all to be global. It includes an accessor wrapper so that references to the flags will fail if the proper header is not included.

Converts Google Now to use this and remove the global google now define and grit define.

Adds support for grit define values of "true" and "false" for ease of integration with GN (they are mapped to the corresponding Python "True" and "False").

Adds dependencies from the main gyp targets to the new generated feature define target. Since GYP only does hard dependencies one level, this should reduce the chance that somebody adds more of these cases and forces to add a dependency.

Review URL: https://codereview.chromium.org/1458653002

Cr-Original-Commit-Position: refs/heads/master@{#361527}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 3118dde528359280fa0cb3c6fc5b6323e834c514
2015-11-25 02:45:24 +00:00
brettw@chromium.org 50b675e9b1 Work toward a chrome/common GN target.
This adds more of the chrome/common target. The sources don't all compile yet so this is commented out.

Add many resources targets required my chrome/common.

R=thestig@chromium.org
TBR=thestig@chromium.org

Review URL: https://codereview.chromium.org/348663003

git-svn-id: http://src.chromium.org/svn/trunk/src/build@278586 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
2014-06-20 04:26:55 +00:00
brettw@chromium.org 1f789567f8 Handle more types of gypis in gypi_to_gn.
- This strips conditions inside a variables in addition to the toplevel conditions.

- Removes percent signs from the ends of variable names.

Both of these are required to import some of the Blink .gypis.

Make net forward the crypto config. This appears to be necessary to use net's public API.

R=dpranke@chromium.org

Review URL: https://codereview.chromium.org/305013009

git-svn-id: http://src.chromium.org/svn/trunk/src/build@274302 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
2014-06-02 19:18:24 +00:00
brettw@chromium.org b2afaaf8b3 Start work on GN build for content/common
Add a skeleton build file for content/common that lists the basic deps, and processes the sources. This can keep track of the deps that have been converted and allows easy testing of the .gypi reading.

Changes content_common.gypi to separate out the public and private sources. The .gypi combines them both into the 'sources' so current users of this file should not be affected. This allows the GN build to declare the public API.

Enhance the gypi-to-gn script to strip conditions and collapse variables to allow the content .gypis to be read in.

Adds some simple BUILD.gn files for dependencies of content/common

Fix typo in accessibility.gyp that I discovered when writing the GN build.

R=jam@chromium.org

Review URL: https://codereview.chromium.org/287233002

git-svn-id: http://src.chromium.org/svn/trunk/src/build@271767 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
2014-05-20 21:52:34 +00:00
brettw@chromium.org 52c079373f Add support for substring replacement in gypi_to_gn
Use substring replacement in skia source file list, and update the skia BUILD.gn file accordingly. The .gn file gets a bit simpler now: we can do the substring replacement to make absolute paths rather than doing rebase for all the files.

R=djsollen@google.com, dpranke@chromium.org

Review URL: https://codereview.chromium.org/231983002

git-svn-id: http://src.chromium.org/svn/trunk/src/build@263272 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
2014-04-11 17:23:40 +00:00
brettw@chromium.org 3e4f5863a7 Add support for reading .gypi files.
Adds support for a new value type, a dictionary. To script it looks the same as a scope, but the existing scope didn't have the right memory management semantics for this.

Adds a new input conversion mode to interpret the result of a script as a GN block (basically an eval) and get the result in a dictionary. This allows returning named sets of things from a script. Updates the accessor and defined stuff to work with this new type.

Adds some features to the input file manager so that when we do dynamic reading from a script we keep the text of the read around which means we can give proper errors that refer to the script output, and don't have to do the weird recursive set origin thing to clear out the pointers that became invalid when the InputFile went out of scope.

This allows us to give better error messages when parsing input. The error handling in the input conversion code is changed accordingly.

Checks for unused variables both in code that instantiates a template, and in the template code itself.

Adds a shared python script for outputting values from Python to GN.

Adds a python script to read .gypi files and return the value as a GN scope.

BUG=
R=dpranke@chromium.org, scottmg@chromium.org

Review URL: https://codereview.chromium.org/223783005

git-svn-id: http://src.chromium.org/svn/trunk/src/build@262045 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
2014-04-06 04:35:10 +00:00