(include_subdirs unqualified) (executable (name main) (public_name dune) (package dune) (enabled_if (<> %{profile} dune-bootstrap)) (libraries memo promote ocaml ocaml_config dune_lang predicate_lang fiber fiber_event_bus stdune dune_console unix install dune_findlib dune_metrics dune_digest dune_cache dune_cache_storage dune_graph dune_rules dune_vcs dune_engine dune_targets dune_util dune_upgrader dune_pkg cmdliner threads ; Kept to keep implicit_transitive_deps false working in 4.x threads.posix build_info dune_config dune_config_file chrome_trace dune_stats csexp csexp_rpc dune_rpc_impl dune_rules_rpc dune_rpc_private dune_rpc_client dune_spawn opam_format source xdg) (bootstrap_info bootstrap-info)) ; Installing the dune binary depends on the kind of build: ; - for bootstrap builds, dune.exe is copied from ../dune.exe ; and installed using a manual install stanza ; - for non-bootstrap builds (building dune with another dune), ; the executable stanza does everything (and attached it to the ; right package, which is important for build-info to succeed) ; but we still need to setup a dummy dune.exe so that profiles ; agree on the targets. (rule (enabled_if (<> %{profile} dune-bootstrap)) (action (with-stdout-to dune.exe (progn)))) (rule (action (copy ../_boot/dune.exe dune.exe)) (enabled_if (= %{profile} dune-bootstrap))) (install (section bin) (enabled_if (= %{profile} dune-bootstrap)) (package dune) (files (dune.exe as dune))) (deprecated_library_name (old_public_name dune.configurator) (new_public_name dune-configurator))