(executable
 (name print_transaction_snark_vk)
 (libraries genesis_constants mina_node_config transaction_snark)
 (instrumentation
  (backend bisect_ppx))
 (preprocess
  (pps ppx_version)))

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

(rule
 (target %{profile}_transaction_snark_vk.json.computed)
 (deps print_transaction_snark_vk.exe)
 (action
   (with-stdout-to
    %{target}
     (run %{deps}))))

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