(library
 (name fdkaac)
 (public_name fdkaac)
 (synopsis "OCaml bindings for fdkaac")
 (modules fdkaac)
 (foreign_stubs
  (language c)
  (names fdkaac_stubs)
  (flags
   (:include c_flags.sexp)))
 (c_library_flags
  (:include c_library_flags.sexp)))

(rule
 (targets c_flags.sexp c_library_flags.sexp)
 (action
  (run ./config/discover.exe)))

(rule
 (deps
  (:fdkaac fdkaac.mli))
 (target fdkaac.cmi)
 (action
  (run %{ocamlc} -c %{fdkaac})))

(rule
 (deps
  (:fdkaac_cmi fdkaac.cmi)
  (:fdkaac_dynlink_in fdkaac_dynlink.mli.in))
 (target fdkaac_dynlink.mli)
 (action
  (with-stdout-to
   %{target}
   (run %{ocamlc} -i -intf %{fdkaac_dynlink_in}))))

(rule
 (deps
  (:fdkaac_loader fdkaac_loader.ml)
  (:fdkaac_dynkink fdkaac_dynlink.mli))
 (target fdkaac_loader.cmxs)
 (action
  (run %{ocamlopt} -shared %{fdkaac_dynkink} %{fdkaac_loader} -o %{target})))

(install
 (files fdkaac_loader.cmxs fdkaac_dynlink.mli)
 (section lib))
