npm.gni 1.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. template("npm_action") {
  2. assert(defined(invoker.script),
  3. "Need script name to run (must be defined in package.json)")
  4. assert(defined(invoker.args), "Need script argumets")
  5. action("npm_pre_flight_" + target_name) {
  6. inputs = [
  7. "package.json",
  8. "yarn.lock",
  9. ]
  10. script = "//electron/build/npm-run.py"
  11. outputs = [
  12. "$target_gen_dir/npm_pre_stamps/" + target_name + ".stamp",
  13. ]
  14. args = [
  15. "--silent",
  16. "pre-flight",
  17. "--",
  18. "--stamp",
  19. rebase_path(outputs[0]),
  20. ]
  21. }
  22. action(target_name) {
  23. forward_variables_from(invoker,
  24. [
  25. "deps",
  26. "public_deps",
  27. "sources",
  28. "inputs",
  29. "outputs",
  30. ])
  31. if (!defined(deps)) {
  32. deps = []
  33. }
  34. deps += [ ":npm_pre_flight_" + target_name ]
  35. script = "//electron/build/npm-run.py"
  36. args = [
  37. "--silent",
  38. invoker.script,
  39. "--",
  40. ] + invoker.args
  41. }
  42. }