; type.mli
(rule
 (target type.mli)
 (deps type.fallback.mli)
 (enabled_if (< %{ocaml_version} 5.1))
 (action (copy# %{deps} %{target})))
(rule
 (target type.mli)
 (deps type.5.1.mli)
 (enabled_if (>= %{ocaml_version} 5.1))
 (action (copy# %{deps} %{target})))

; type.ml
(rule
 (target type.ml)
 (deps type.fallback.ml)
 (enabled_if (< %{ocaml_version} 5.1))
 (action (copy# %{deps} %{target})))
(rule
 (target type.ml)
 (deps type.5.1.ml)
 (enabled_if (>= %{ocaml_version} 5.1))
 (action (copy# %{deps} %{target})))

; lru_mt.ml
(rule
 (target lru_mt.ml)
 (deps lru_mt.fallback.ml)
 (enabled_if (< %{ocaml_version} 4.12))
 (action (copy# %{deps} %{target})))
(rule
 (target lru_mt.ml)
 (deps lru_mt.4.12.ml)
 (enabled_if (and (>= %{ocaml_version} 4.12) (< %{ocaml_version} 5.0)))
 (action (copy# %{deps} %{target})))
(rule
 (target lru_mt.ml)
 (deps lru_mt.5.0.ml)
 (enabled_if (>= %{ocaml_version} 5.0))
 (action (copy# %{deps} %{target})))
