dune/topkg-jbuilder

58 lines
1.2 KiB
Plaintext

(* -*- tuareg -*- *)
#use "topfind"
#require "topkg"
open Topkg
module Pkg = struct
include Pkg
let build
?(cmd=fun c os _files ->
let jbuilder = Conf.tool "jbuilder" os in
OS.Cmd.run @@ Cmd.(jbuilder % "build" % "-p" % Conf.pkg_name c))
?(clean=fun os ~build_dir ->
let rm = Conf.tool "rm" os in
let find = Conf.tool "find" os in
OS.Cmd.run @@ Cmd.(rm % "-rf" % build_dir) >>= fun () ->
OS.Cmd.run @@ Cmd.(find % "." % "-name" % ".merlin" % "-delete"))
=
Pkg.build ~cmd ~clean
let opam_files () =
Sys.readdir "."
|> Array.to_list
|> List.filter (String.is_suffix ~affix:".opam")
|> List.map (Pkg.opam_file ~lint_deps_excluding:None)
let describe
?delegate
?readmes
?licenses
?change_logs
?(metas=[])
?(opams=opam_files ())
?lint_files
?lint_custom
?distrib
?publish
?(build=build ())
name
=
describe
?delegate
?readmes
?licenses
?change_logs
~metas
~opams
?lint_files
?lint_custom
?distrib
?publish
~build
name
@@ fun c ->
Ok [ (*Pkg.test "jbuilder" ~auto:false ~args:Cmd.(empty % "runtest" % "-p" % Conf.pkg_name c)*) ]
end