PSA: conditionals in chromium/src/DEPS

2 views
Skip to first unread message

Paweł Hajdan, Jr.

unread,
Oct 3, 2017, 4:25:10 AM10/3/17
to infra-a...@chromium.org

Chromium Denizens,


With recent changes (#1, #2), chromium/src/DEPS no longer uses deps_os or hooks_os. All entries have been moved to deps and hooks respectively, and are using conditionals (design doc).


The conditionals follow a subset of python syntax, and the following predefined variables are available:


  • checkout_android (bool)

  • checkout_fuchsia (bool)

  • checkout_ios (bool)

  • checkout_linux (bool)

  • checkout_mac (bool)

  • checkout_win (bool)

  • host_os (str; one of “linux”, “mac”, “win” - see CL)


Please keeps deps entries sorted.


Feel free to send feedback or questions.


Paweł

--
You received this message because you are subscribed to the Google Groups "infra-announce" group.
To unsubscribe from this group and stop receiving emails from it, send an email to infra-announc...@chromium.org.
To post to this group, send email to infra-a...@chromium.org.
To view this discussion on the web visit https://groups.google.com/a/chromium.org/d/msgid/infra-announce/CAATLsPY9-T2RGR2LunQoZKF5qv7T2b5QxebtY_60zhNNhOZi9A%40mail.gmail.com.

nednguyen via infra-announce

unread,
Oct 5, 2017, 8:29:18 AM10/5/17
to infra-announce
We currently run fetch_telemetry_binary_dependencies conditionally through https://cs.chromium.org/chromium/src/tools/perf/conditionally_execute wrapper that allows running script only if the GYP environment variable contains certain string. (example)

Do you think it's in scope of the new system to also cover this case? 
To view this discussion on the web visit https://groups.google.com/a/chromium.org/d/msgid/infra-announce/0776831f-647d-405f-81ec-7392415da4a3%40chromium.org.

Paweł Hajdan, Jr.

unread,
Oct 5, 2017, 10:36:44 AM10/5/17
to Ned, infr...@chromium.org
+infra-dev, bcc:infra-announce

Thanks for bringing this up.

Yes, it's in scope to convert all references to GYP_DEFINES to gclient variables.

Paweł

On Thu, Oct 5, 2017 at 2:29 PM, nednguyen via infra-announce <infra-a...@chromium.org> wrote:
We currently run fetch_telemetry_binary_dependencies conditionally through https://cs.chromium.org/chromium/src/tools/perf/conditionally_execute wrapper that allows running script only if the GYP environment variable contains certain string. (example)

Do you think it's in scope of the new system to also cover this case? 


On Tuesday, October 3, 2017 at 4:25:10 AM UTC-4, Paweł Hajdan, Jr. wrote:

Chromium Denizens,


With recent changes (#1, #2), chromium/src/DEPS no longer uses deps_os or hooks_os. All entries have been moved to deps and hooks respectively, and are using conditionals (design doc).


The conditionals follow a subset of python syntax, and the following predefined variables are available:


  • checkout_android (bool)

  • checkout_fuchsia (bool)

  • checkout_ios (bool)

  • checkout_linux (bool)

  • checkout_mac (bool)

  • checkout_win (bool)

  • host_os (str; one of “linux”, “mac”, “win” - see CL)


Please keeps deps entries sorted.


Feel free to send feedback or questions.


Paweł

--
You received this message because you are subscribed to the Google Groups "infra-announce" group.
To unsubscribe from this group and stop receiving emails from it, send an email to infra-announce+unsubscribe@chromium.org.

Dirk Pranke

unread,
Oct 5, 2017, 11:25:25 AM10/5/17
to Ned Nguyen, infra-announce
On Thu, Oct 5, 2017 at 5:29 AM, nednguyen via infra-announce <infra-a...@chromium.org> wrote:
We currently run fetch_telemetry_binary_dependencies conditionally through https://cs.chromium.org/chromium/src/tools/perf/conditionally_execute wrapper that allows running script only if the GYP environment variable contains certain string. (example)

Do you think it's in scope of the new system to also cover this case? 

Yes, definitely. I can follow up with you off-thread.

-- Dirk
 


On Tuesday, October 3, 2017 at 4:25:10 AM UTC-4, Paweł Hajdan, Jr. wrote:

Chromium Denizens,


With recent changes (#1, #2), chromium/src/DEPS no longer uses deps_os or hooks_os. All entries have been moved to deps and hooks respectively, and are using conditionals (design doc).


The conditionals follow a subset of python syntax, and the following predefined variables are available:


  • checkout_android (bool)

  • checkout_fuchsia (bool)

  • checkout_ios (bool)

  • checkout_linux (bool)

  • checkout_mac (bool)

  • checkout_win (bool)

  • host_os (str; one of “linux”, “mac”, “win” - see CL)


Please keeps deps entries sorted.


Feel free to send feedback or questions.


Paweł

--
You received this message because you are subscribed to the Google Groups "infra-announce" group.
To unsubscribe from this group and stop receiving emails from it, send an email to infra-announce+unsubscribe@chromium.org.

To post to this group, send email to infra-a...@chromium.org.

--
You received this message because you are subscribed to the Google Groups "infra-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to infra-dev+unsubscribe@chromium.org.
To post to this group, send email to infr...@chromium.org.
To view this discussion on the web visit https://groups.google.com/a/chromium.org/d/msgid/infra-dev/0776831f-647d-405f-81ec-7392415da4a3%40chromium.org.

--
You received this message because you are subscribed to the Google Groups "infra-announce" group.
To unsubscribe from this group and stop receiving emails from it, send an email to infra-announc...@chromium.org.
To post to this group, send email to infra-a...@chromium.org.
To view this discussion on the web visit https://groups.google.com/a/chromium.org/d/msgid/infra-announce/CAEoffTC7tmVTeNqXuV_-PqALmd7g%3DcsUDy%2BBN1Bo%2BNcgLHzwtA%40mail.gmail.com.

Jamie Madill

unread,
Nov 8, 2017, 12:53:09 PM11/8/17
to Dirk Pranke, Ned Nguyen, infra-dev
(new thread to infra-dev)

Sorry for the necromancy, but I wonder if I could get a bit of advice on how I could refactor ANGLE's DEPS files to use conditional support.

For our work flow, we have two sets of deps and hooks, currently maintained in two DEPS files. One is for standalone builds, outside of chromium, and the other is for when ANGLE is itself a dependency of Chrome.


We distinguish our standalone vs Chromium cases in GN files by checking 'build_with_chromium' in build_overrides/build.gni. In ANGLE standalone, this is false. With gclient, we maintain the two sets of similar files.

What's the most straight-forward way to use gclient conditoinals and only maintain a single DEPS files? Is there such a way?

To view this discussion on the web visit https://groups.google.com/a/chromium.org/d/msgid/infra-announce/CAEoffTC7tmVTeNqXuV_-PqALmd7g%3DcsUDy%2BBN1Bo%2BNcgLHzwtA%40mail.gmail.com.

--
--
Chromium Developers mailing list: chromi...@chromium.org
View archives, change email options, or unsubscribe:
http://groups.google.com/a/chromium.org/group/chromium-dev
---
You received this message because you are subscribed to the Google Groups "Chromium-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to chromium-dev+unsubscribe@chromium.org.
To view this discussion on the web visit https://groups.google.com/a/chromium.org/d/msgid/chromium-dev/CAEoffTC7tmVTeNqXuV_-PqALmd7g%3DcsUDy%2BBN1Bo%2BNcgLHzwtA%40mail.gmail.com.

Dirk Pranke

unread,
Nov 8, 2017, 2:56:14 PM11/8/17
to Jamie Madill, Ned Nguyen, infra-dev
Merging the DEPS files is something I had in mind when we came up with the initial design, and so I hope it should be doable :).

I think there's probably a couple of different approaches we could take; it probably mostly depends on which configuration you want
to consider "the default": building as part of chromium, or building standalone? Once you decide that, it's probably mostly a matter
of working through the implications, which I'd be happy to help with. Maybe file a bug and cc me and we can go from there?

-- Dirk

Jamie Madill

unread,
Nov 8, 2017, 3:12:59 PM11/8/17
to Dirk Pranke, Ned Nguyen, infra-dev
Thanks for agreeing to help, Dirk! Filed http://crbug.com/782846.
Reply all
Reply to author
Forward
0 new messages