99 lines
1.9 KiB
Text
99 lines
1.9 KiB
Text
(env
|
|
(dev
|
|
(flags
|
|
(:standard -w -6-32-39))))
|
|
|
|
(library
|
|
(name zarith)
|
|
(public_name zarith)
|
|
(modules z q big_int_Z zarith_version)
|
|
(wrapped false)
|
|
(foreign_stubs
|
|
(language c)
|
|
(names caml_z)
|
|
(flags
|
|
:standard
|
|
(:include cflags.sexp)))
|
|
(c_library_flags
|
|
(:include libs.sexp)))
|
|
|
|
(executable
|
|
(name configure_env)
|
|
(modules configure_env))
|
|
|
|
(rule
|
|
(target Makefile)
|
|
(deps configure env)
|
|
(action
|
|
(bash
|
|
"env %{read:env} ./configure --ocamllibdir %{ocaml-config:standard_library}")))
|
|
|
|
(rule
|
|
(target env)
|
|
(action
|
|
(copy gmp.%{lib-available:gmp} env)))
|
|
|
|
(rule
|
|
(target gmp.true)
|
|
(deps
|
|
(:exe configure_env.exe)
|
|
%{lib:gmp:libgmp.a}
|
|
%{lib:gmp:libgmp.so}
|
|
%{lib:gmp:gmp.h})
|
|
(action
|
|
(with-stdout-to
|
|
%{target}
|
|
(run %{exe} --cc "%{cc}" --with-gmp=%{lib:gmp:libgmp.a}))))
|
|
|
|
(rule
|
|
(target gmp.false)
|
|
(deps
|
|
(:exe configure_env.exe))
|
|
(action
|
|
(with-stdout-to
|
|
%{target}
|
|
(run %{exe} --cc "%{cc}" --with-conf-gmp))))
|
|
|
|
(rule
|
|
(target cflags.sexp)
|
|
(deps Makefile)
|
|
(action
|
|
(with-stdout-to
|
|
%{target}
|
|
(progn
|
|
(bash "echo -n '('")
|
|
(bash "cat Makefile | sed -n -e 's/CFLAGS=//p'")
|
|
(bash "echo -n ')'")))))
|
|
|
|
; Note that the order (LDFLAGS, then LIBS) is important below since
|
|
; zarith uses pkg-config to detect gmp, and adds the output to LIBS
|
|
; but we like -L ..._build/solo5/duniverse/Zarith/../../../install/solo5/lib/gmp
|
|
; first, followed by -L/usr/local/lib -lgmp (from pkg-config)
|
|
|
|
(rule
|
|
(target libs.sexp)
|
|
(deps Makefile)
|
|
(action
|
|
(with-stdout-to
|
|
%{target}
|
|
(progn
|
|
(bash "echo -n '('")
|
|
(bash "cat Makefile | sed -n -e 's/LDFLAGS=//p'")
|
|
(bash "cat Makefile | sed -n -e 's/LIBS=//p'")
|
|
(bash "echo -n ')'")))))
|
|
|
|
(rule
|
|
(deps META)
|
|
(action
|
|
(with-stdout-to
|
|
zarith_version.ml
|
|
(progn
|
|
(run echo "let")
|
|
(bash "grep \"version\" META | head -1")))))
|
|
|
|
(library
|
|
(name zarith_top)
|
|
(optional)
|
|
(public_name zarith.top)
|
|
(modules zarith_top)
|
|
(libraries zarith compiler-libs.toplevel))
|