Seems like it wouldn’t be very difficult: Dune with external Ocaml library - #2 by nojb
Ie place the archive in a specific location and write a META file for it. Then dune will find it using findlib conventions.
Eg a META file output by dune:
version = "v3.0.1"
description = ""
requires = "dream"
archive(byte) = "dream_html.cma"
archive(native) = "dream_html.cmxa"
plugin(byte) = "dream_html.cma"
plugin(native) = "dream_html.cmxs"