dune (1608B)
1 {%- import "package_sets" as ps -%} 2 {%- set pkg_version="3.20.2" -%} 3 {% extends "genlinks" %} 4 {%- do import_functions.add("check_dynamic") %} 5 {% block package_deps -%} 6 #+{{pkg_install_name("busybox-diffutils")}} 7 {{ ps.toolchain() }} 8 #+{{pkg_install_name("ocaml:dynlink")}} 9 #@untar:-z:sha256:579c738f8ca191ba0a9b22dbe78f1377542442c9827cf4939f8964f09f9edb28:. 10 {% endblock package_deps %} 11 {%- block prepare %} 12 {{ super() }} 13 # This allows 'dune --version' to output the correct version instead of "n/a" 14 sed -i "/^(name dune)/a (version {{pkg_version}})" dune-project 15 # This enables dune-configurator to use the vendored csexp module 16 sed -i 's/stdune.csexp/dune-configurator.csexp/' vendor/csexp/src/dune 17 18 {% endblock prepare %} 19 {%- block configure %} 20 export DUNE_CACHE=disabled 21 ./configure \ 22 --prefix="$prefix" \ 23 --libdir="$prefix/{{ocamldir}}" \ 24 --bindir="$prefix/{{bindir}}" \ 25 --sbindir="$prefix/{{sbindir}}" \ 26 --etcdir="$prefix/{{configdir}}/etc" \ 27 --mandir="$prefix/{{mandir}}" \ 28 --docdir="$prefix/{{docdir}}/{{shortname}}" \ 29 --datadir="$prefix/{{datadir}}" 30 31 {% endblock configure %} 32 {%- block build %} 33 ocaml boot/bootstrap.ml --verbose 34 ./dune.exe build \ 35 -p dune,dune-configurator \ 36 --profile dune-bootstrap --verbose 37 38 {% endblock build %} 39 {% block install -%} 40 {# ./dune.exe runtest --verbose --root=. || true -#} 41 ./dune.exe install --root=. \ 42 --destdir="$pthbs_destdir" \ 43 dune dune-configurator 44 45 rm -vrf _build 46 ls -lhA . 47 {% endblock install %} 48 {% block check -%} 49 check_dynamic command/dune 50 51 {% endblock check%} 52 {% block genlinks_begin %} 53 x["./{{bindir}}/dune"]=1 54 {% endblock genlinks_begin %}