(executable
 (name print_blockchain_snark_vk)
 (libraries blockchain_snark genesis_constants mina_node_config)
 (instrumentation
  (backend bisect_ppx))
 (preprocess
  (pps ppx_version)))

; Generate the verification key JSON file for the current profile.
; The output file name includes the profile to allow profile-specific regression testing.

(rule
 (deps print_blockchain_snark_vk.exe)
 (targets %{profile}_blockchain_snark_vk.json.computed)
 (action
  (with-stdout-to
   %{targets}
   (run %{deps}))))

(rule
 (deps
  (:orig %{profile}_blockchain_snark_vk.json)
  (:computed %{profile}_blockchain_snark_vk.json.computed))
 (alias runtest)
 (action
  (diff %{orig} %{computed})))
