npm.gni 1.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  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 arguments")
  5. action("npm_pre_flight_" + target_name) {
  6. inputs = [
  7. "//electron/package.json",
  8. "//electron/yarn.lock",
  9. ]
  10. script = "//electron/build/npm-run.py"
  11. outputs = [ "$target_gen_dir/npm_pre_stamps/" + target_name + ".stamp" ]
  12. args = [
  13. "--silent",
  14. "pre-flight",
  15. "--",
  16. "--stamp",
  17. rebase_path(outputs[0]),
  18. ]
  19. }
  20. action(target_name) {
  21. forward_variables_from(invoker,
  22. [
  23. "deps",
  24. "public_deps",
  25. "sources",
  26. "inputs",
  27. "outputs",
  28. ])
  29. if (!defined(deps)) {
  30. deps = []
  31. }
  32. deps += [ ":npm_pre_flight_" + target_name ]
  33. script = "//electron/build/npm-run.py"
  34. args = [
  35. "--silent",
  36. invoker.script,
  37. "--",
  38. ] + invoker.args
  39. }
  40. }