Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Legacy build warns cannot-open-dir #15482

Closed
SkySkimmer opened this issue Jan 14, 2022 · 1 comment · Fixed by #15560
Closed

Legacy build warns cannot-open-dir #15482

SkySkimmer opened this issue Jan 14, 2022 · 1 comment · Fixed by #15560
Labels
kind: user messages Improvement of error messages, new warnings, etc. part: build The build system.
Projects
Milestone

Comments

@SkySkimmer
Copy link
Contributor

On my machine

./configure -prefix /usr && make

says

Warning: Cannot open directory _build_vo/default//lib/coq/../coq-core/plugins
[cannot-open-dir,filesystem]

on every coqc execution

No idea why this doesn't happen in CI.

@Alizter Alizter added kind: user messages Improvement of error messages, new warnings, etc. part: build The build system. labels Jan 15, 2022
@herbelin
Copy link
Member

I can reproduce. Apparently, _build_vo/default//lib/coq/../coq-core is a link to _build/install/default/lib/coq-core but lib/coq-core is not (yet?) created at the time of executing.

ejgallego added a commit to ejgallego/coq that referenced this issue Jan 27, 2022
We replace both the dune-based `(coq.theory ...` and the "legacy"
make-based build systems into a single setup, based on our own rule
generation and using Dune.

Thus, we go back to the first implementation of dune setup, where
compilation of .vo files do require a bootstrap process to generate
the rules, which is done by the `coq_dune` tool. But now, the process
is much more cleaner, as we got rid of the OCaml make rules.

We thus disable the `(coq.theory ...)` stanza on `theories/dune` for
now; the only downside to this is that we lose compositional building
of .vo libs (for OCaml we are still fine, which our main use case),
which anyways it is not used yet as inter-scope composition is missing
from dune for now.

At some point tho, once `(coq.theory ...)` is stable, we could go back
to it, and remove `coq_dune`. Hopefully, `coq_dune` will be used
in coq#13364 to implement the rules for the test suite too.

Dune 3.0 may bring two important improvements for this PR:

- `(deps (:read file))` so we could let dune handle the call to coqdep
- `(include rules.sexp)` so no more bootstrapping is necessary.

This should supersede coq#15545 , avoid many troubles that coq#15220 had
to endure, and lose coq#15482 .

Legacy makefiles will be removed in the next commit, closing a few
more bugs hopefully.

Todos are:

- don't call coqdep once per file (but that's maybe conveneint for the
  test-suite, so we may want to keep both modes)
- improve prefix / path adjustment in `coq_dune`
- improve option handling
- changelog / doc update
- use the loadpath common library to compute native target names
ejgallego added a commit to ejgallego/coq that referenced this issue Jan 27, 2022
We replace both the dune-based `(coq.theory ...` and the "legacy"
make-based build systems into a single setup, based on our own rule
generation and using Dune.

Thus, we go back to the first implementation of dune setup, where
compilation of .vo files do require a bootstrap process to generate
the rules, which is done by the `coq_dune` tool. But now, the process
is much more cleaner, as we got rid of the OCaml make rules.

We thus disable the `(coq.theory ...)` stanza on `theories/dune` for
now; the only downside to this is that we lose compositional building
of .vo libs (for OCaml we are still fine, which our main use case),
which anyways it is not used yet as inter-scope composition is missing
from dune for now.

At some point tho, once `(coq.theory ...)` is stable, we could go back
to it, and remove `coq_dune`. Hopefully, `coq_dune` will be used
in coq#13364 to implement the rules for the test suite too.

Dune 3.0 may bring two important improvements for this PR:

- `(deps (:read file))` so we could let dune handle the call to coqdep
- `(include rules.sexp)` so no more bootstrapping is necessary.

This should supersede coq#15545 , avoid many troubles that coq#15220 had
to endure, and lose coq#15482 .

Legacy makefiles will be removed in the next commit, closing a few
more bugs hopefully.

Todos are:

- don't call coqdep once per file (but that's maybe conveneint for the
  test-suite, so we may want to keep both modes)
- improve prefix / path adjustment in `coq_dune`
- improve option handling
- changelog / doc update
- use the loadpath common library to compute native target names
ejgallego added a commit to ejgallego/coq that referenced this issue Jan 27, 2022
We replace both the dune-based `(coq.theory ...` and the "legacy"
make-based build systems into a single setup, based on our own rule
generation and using Dune.

Thus, we go back to the first implementation of dune setup, where
compilation of .vo files do require a bootstrap process to generate
the rules, which is done by the `coq_dune` tool. But now, the process
is much more cleaner, as we got rid of the OCaml make rules.

We thus disable the `(coq.theory ...)` stanza on `theories/dune` for
now; the only downside to this is that we lose compositional building
of .vo libs (for OCaml we are still fine, which our main use case),
which anyways it is not used yet as inter-scope composition is missing
from dune for now.

At some point tho, once `(coq.theory ...)` is stable, we could go back
to it, and remove `coq_dune`. Hopefully, `coq_dune` will be used
in coq#13364 to implement the rules for the test suite too.

Dune 3.0 may bring two important improvements for this PR:

- `(deps (:read file))` so we could let dune handle the call to coqdep
- `(include rules.sexp)` so no more bootstrapping is necessary.

This should supersede coq#15545 , avoid many troubles that coq#15220 had
to endure, and lose coq#15482 .

Legacy makefiles will be removed in the next commit, closing a few
more bugs hopefully.

Todos are:

- don't call coqdep once per file (but that's maybe conveneint for the
  test-suite, so we may want to keep both modes)
- improve prefix / path adjustment in `coq_dune`
- improve option handling
- changelog / doc update
- use the loadpath common library to compute native target names
ejgallego added a commit to ejgallego/coq that referenced this issue Jan 27, 2022
We replace both the dune-based `(coq.theory ...` and the "legacy"
make-based build systems into a single setup, based on our own rule
generation and using Dune.

Thus, we go back to the first implementation of dune setup, where
compilation of .vo files do require a bootstrap process to generate
the rules, which is done by the `coq_dune` tool. But now, the process
is much more cleaner, as we got rid of the OCaml make rules.

We thus disable the `(coq.theory ...)` stanza on `theories/dune` for
now; the only downside to this is that we lose compositional building
of .vo libs (for OCaml we are still fine, which our main use case),
which anyways it is not used yet as inter-scope composition is missing
from dune for now.

At some point tho, once `(coq.theory ...)` is stable, we could go back
to it, and remove `coq_dune`. Hopefully, `coq_dune` will be used
in coq#13364 to implement the rules for the test suite too.

Dune 3.0 may bring two important improvements for this PR:

- `(deps (:read file))` so we could let dune handle the call to coqdep
- `(include rules.sexp)` so no more bootstrapping is necessary.

This should supersede coq#15545 , avoid many troubles that coq#15220 had
to endure, and lose coq#15482 .

Legacy makefiles will be removed in the next commit, closing a few
more bugs hopefully.

Todos are:

- don't call coqdep once per file (but that's maybe conveneint for the
  test-suite, so we may want to keep both modes)
- improve prefix / path adjustment in `coq_dune`
- improve option handling
- changelog / doc update
- use the loadpath common library to compute native target names
ejgallego added a commit to ejgallego/coq that referenced this issue Jan 27, 2022
We replace both the dune-based `(coq.theory ...` and the "legacy"
make-based build systems into a single setup, based on our own rule
generation and using Dune.

Thus, we go back to the first implementation of dune setup, where
compilation of .vo files do require a bootstrap process to generate
the rules, which is done by the `coq_dune` tool. But now, the process
is much more cleaner, as we got rid of the OCaml make rules.

We thus disable the `(coq.theory ...)` stanza on `theories/dune` for
now; the only downside to this is that we lose compositional building
of .vo libs (for OCaml we are still fine, which our main use case),
which anyways it is not used yet as inter-scope composition is missing
from dune for now.

At some point tho, once `(coq.theory ...)` is stable, we could go back
to it, and remove `coq_dune`. Hopefully, `coq_dune` will be used
in coq#13364 to implement the rules for the test suite too.

Dune 3.0 may bring two important improvements for this PR:

- `(deps (:read file))` so we could let dune handle the call to coqdep
- `(include rules.sexp)` so no more bootstrapping is necessary.

This should supersede coq#15545 , avoid many troubles that coq#15220 had
to endure, and lose coq#15482 .

Legacy makefiles will be removed in the next commit, closing a few
more bugs hopefully.

Todos are:

- don't call coqdep once per file (but that's maybe conveneint for the
  test-suite, so we may want to keep both modes)
- improve prefix / path adjustment in `coq_dune`
- improve option handling
- changelog / doc update
- use the loadpath common library to compute native target names
ejgallego added a commit to ejgallego/coq that referenced this issue Jan 27, 2022
We replace both the dune-based `(coq.theory ...` and the "legacy"
make-based build systems into a single setup, based on our own rule
generation and using Dune.

Thus, we go back to the first implementation of dune setup, where
compilation of .vo files do require a bootstrap process to generate
the rules, which is done by the `coq_dune` tool. But now, the process
is much more cleaner, as we got rid of the OCaml make rules.

We thus disable the `(coq.theory ...)` stanza on `theories/dune` for
now; the only downside to this is that we lose compositional building
of .vo libs (for OCaml we are still fine, which our main use case),
which anyways it is not used yet as inter-scope composition is missing
from dune for now.

At some point tho, once `(coq.theory ...)` is stable, we could go back
to it, and remove `coq_dune`. Hopefully, `coq_dune` will be used
in coq#13364 to implement the rules for the test suite too.

Dune 3.0 may bring two important improvements for this PR:

- `(deps (:read file))` so we could let dune handle the call to coqdep
- `(include rules.sexp)` so no more bootstrapping is necessary.

This should supersede coq#15545 , avoid many troubles that coq#15220 had
to endure, and lose coq#15482 .

Legacy makefiles will be removed in the next commit, closing a few
more bugs hopefully.

Todos are:

- don't call coqdep once per file (but that's maybe conveneint for the
  test-suite, so we may want to keep both modes)
- improve option handling, add native, etc...
- improve prefix / path adjustment in `coq_dune`
- changelog / doc update
- use the loadpath common library to compute native target names
ejgallego added a commit to ejgallego/coq that referenced this issue Jan 27, 2022
We replace both the dune-based `(coq.theory ...` and the "legacy"
make-based build systems into a single setup, based on our own rule
generation and using Dune.

Thus, we go back to the first implementation of dune setup, where
compilation of .vo files do require a bootstrap process to generate
the rules, which is done by the `coq_dune` tool. But now, the process
is much more cleaner, as we got rid of the OCaml make rules.

We thus disable the `(coq.theory ...)` stanza on `theories/dune` for
now; the only downside to this is that we lose compositional building
of .vo libs (for OCaml we are still fine, which our main use case),
which anyways it is not used yet as inter-scope composition is missing
from dune for now.

At some point tho, once `(coq.theory ...)` is stable, we could go back
to it, and remove `coq_dune`. Hopefully, `coq_dune` will be used
in coq#13364 to implement the rules for the test suite too.

Dune 3.0 may bring two important improvements for this PR:

- `(deps (:read file))` so we could let dune handle the call to coqdep
- `(include rules.sexp)` so no more bootstrapping is necessary.

This should supersede coq#15545 , avoid many troubles that coq#15220 had
to endure, and lose coq#15482 .

Legacy makefiles will be removed in the next commit, closing a few
more bugs hopefully.

Todos are:

- don't call coqdep once per file (but that's maybe conveneint for the
  test-suite, so we may want to keep both modes)
- improve option handling, add native, etc...
- improve prefix / path adjustment in `coq_dune`
- changelog / doc update
- use the loadpath common library to compute native target names
ejgallego added a commit to ejgallego/coq that referenced this issue Jan 27, 2022
We replace both the dune-based `(coq.theory ...` and the "legacy"
make-based build systems into a single setup, based on our own rule
generation and using Dune.

Thus, we go back to the first implementation of dune setup, where
compilation of .vo files do require a bootstrap process to generate
the rules, which is done by the `coq_dune` tool. But now, the process
is much more cleaner, as we got rid of the OCaml make rules.

We thus disable the `(coq.theory ...)` stanza on `theories/dune` for
now; the only downside to this is that we lose compositional building
of .vo libs (for OCaml we are still fine, which our main use case),
which anyways it is not used yet as inter-scope composition is missing
from dune for now.

At some point tho, once `(coq.theory ...)` is stable, we could go back
to it, and remove `coq_dune`. Hopefully, `coq_dune` will be used
in coq#13364 to implement the rules for the test suite too.

Dune 3.0 may bring two important improvements for this PR:

- `(deps (:read file))` so we could let dune handle the call to coqdep
- `(include rules.sexp)` so no more bootstrapping is necessary.

This should supersede coq#15545 , avoid many troubles that coq#15220 had
to endure, and lose coq#15482 .

Legacy makefiles will be removed in the next commit, closing a few
more bugs hopefully.

Todos are:

- [ ] aux files, vos, etc...
- [ ] don't call coqdep once per file (but that's maybe conveneint for the
      test-suite, so we may want to keep both modes)
- [ ] improve / add option handling, add native, etc...
- [ ] improve prefix / path adjustment in `coq_dune`
- [ ] changelog / doc update
- [ ] use the loadpath common library to compute native target names,
      and maybe more
ejgallego added a commit to ejgallego/coq that referenced this issue Jan 27, 2022
We replace both the dune-based `(coq.theory ...` and the "legacy"
make-based build systems into a single setup, based on our own rule
generation and using Dune.

Thus, we go back to the first implementation of dune setup, where
compilation of .vo files do require a bootstrap process to generate
the rules, which is done by the `coq_dune` tool. But now, the process
is much more cleaner, as we got rid of the OCaml make rules.

We thus disable the `(coq.theory ...)` stanza on `theories/dune` for
now; the only downside to this is that we lose compositional building
of .vo libs (for OCaml we are still fine, which our main use case),
which anyways it is not used yet as inter-scope composition is missing
from dune for now.

At some point tho, once `(coq.theory ...)` is stable, we could go back
to it, and remove `coq_dune`. Hopefully, `coq_dune` will be used
in coq#13364 to implement the rules for the test suite too.

Dune 3.0 may bring two important improvements for this PR:

- `(deps (:read file))` so we could let dune handle the call to coqdep
- `(include rules.sexp)` so no more bootstrapping is necessary.

This should supersede coq#15545 , avoid many troubles that coq#15220 had
to endure, and lose coq#15482 .

Legacy makefiles will be removed in the next commit, closing a few
more bugs hopefully.

Todos are:

- [ ] aux files, vos, etc...
- [ ] don't call coqdep once per file (but that's maybe conveneint for the
      test-suite, so we may want to keep both modes)
- [ ] improve / add option handling, add native, etc...
- [ ] improve prefix / path adjustment in `coq_dune`
- [ ] changelog / doc update
- [ ] use the loadpath common library to compute native target names,
      and maybe more
ejgallego added a commit to ejgallego/coq that referenced this issue Jan 27, 2022
We replace both the dune-based `(coq.theory ...` and the "legacy"
make-based build systems into a single setup, based on our own rule
generation and using Dune.

Thus, we go back to the first implementation of dune setup, where
compilation of .vo files do require a bootstrap process to generate
the rules, which is done by the `coq_dune` tool. But now, the process
is much more cleaner, as we got rid of the OCaml make rules.

We thus disable the `(coq.theory ...)` stanza on `theories/dune` for
now; the only downside to this is that we lose compositional building
of .vo libs (for OCaml we are still fine, which our main use case),
which anyways it is not used yet as inter-scope composition is missing
from dune for now.

At some point tho, once `(coq.theory ...)` is stable, we could go back
to it, and remove `coq_dune`. Hopefully, `coq_dune` will be used
in coq#13364 to implement the rules for the test suite too.

Dune 3.0 may bring two important improvements for this PR:

- `(deps (:read file))` so we could let dune handle the call to coqdep
- `(include rules.sexp)` so no more bootstrapping is necessary.

This should supersede coq#15545 , avoid many troubles that coq#15220 had
to endure, and lose coq#15482 .

Legacy makefiles will be removed in the next commit, closing a few
more bugs hopefully.

Todos are:

- [ ] aux files, vos, etc...
- [ ] don't call coqdep once per file (but that's maybe conveneint for the
      test-suite, so we may want to keep both modes)
- [ ] improve / add option handling, add native, etc...
- [ ] improve prefix / path adjustment in `coq_dune`
- [ ] changelog / doc update
- [ ] use the loadpath common library to compute native target names,
      and maybe more
ejgallego added a commit to ejgallego/coq that referenced this issue Jan 27, 2022
We replace both the dune-based `(coq.theory ...` and the "legacy"
make-based build systems into a single setup, based on our own rule
generation and using Dune.

Thus, we go back to the first implementation of dune setup, where
compilation of .vo files do require a bootstrap process to generate
the rules, which is done by the `coq_dune` tool. But now, the process
is much more cleaner, as we got rid of the OCaml make rules.

We thus disable the `(coq.theory ...)` stanza on `theories/dune` for
now; the only downside to this is that we lose compositional building
of .vo libs (for OCaml we are still fine, which our main use case),
which anyways it is not used yet as inter-scope composition is missing
from dune for now.

At some point tho, once `(coq.theory ...)` is stable, we could go back
to it, and remove `coq_dune`. Hopefully, `coq_dune` will be used
in coq#13364 to implement the rules for the test suite too.

Dune 3.0 may bring two important improvements for this PR:

- `(deps (:read file))` so we could let dune handle the call to coqdep
- `(include rules.sexp)` so no more bootstrapping is necessary.

This should supersede coq#15545 , avoid many troubles that coq#15220 had
to endure, and lose coq#15482 .

Legacy makefiles will be removed in the next commit, closing a few
more bugs hopefully.

Todos are:

- [ ] aux files, vos, etc...
- [ ] don't call coqdep once per file (but that's maybe conveneint for the
      test-suite, so we may want to keep both modes)
- [ ] improve / add option handling, add native, etc...
- [ ] improve prefix / path adjustment in `coq_dune`
- [ ] changelog / doc update
- [ ] use the loadpath common library to compute native target names,
      and maybe more
ejgallego added a commit to ejgallego/coq that referenced this issue Jan 27, 2022
We replace both the dune-based `(coq.theory ...` and the "legacy"
make-based build systems into a single setup, based on our own rule
generation and using Dune.

Thus, we go back to the first implementation of dune setup, where
compilation of .vo files do require a bootstrap process to generate
the rules, which is done by the `coq_dune` tool. But now, the process
is much more cleaner, as we got rid of the OCaml make rules.

We thus disable the `(coq.theory ...)` stanza on `theories/dune` for
now; the only downside to this is that we lose compositional building
of .vo libs (for OCaml we are still fine, which our main use case),
which anyways it is not used yet as inter-scope composition is missing
from dune for now.

At some point tho, once `(coq.theory ...)` is stable, we could go back
to it, and remove `coq_dune`. Hopefully, `coq_dune` will be used
in coq#13364 to implement the rules for the test suite too.

Dune 3.0 may bring two important improvements for this PR:

- `(deps (:read file))` so we could let dune handle the call to coqdep
- `(include rules.sexp)` so no more bootstrapping is necessary.

This should supersede coq#15545 , avoid many troubles that coq#15220 had
to endure, and lose coq#15482 .

Legacy makefiles will be removed in the next commit, closing a few
more bugs hopefully.

Todos are:

- [ ] aux files, vos, etc...
- [ ] don't call coqdep once per file (but that's maybe conveneint for the
      test-suite, so we may want to keep both modes)
- [ ] improve / add option handling, add native, etc...
- [ ] improve prefix / path adjustment in `coq_dune`
- [ ] changelog / doc update
- [ ] use the loadpath common library to compute native target names,
      and maybe more
@ejgallego ejgallego added this to Ready to address in Dune Jan 27, 2022
ejgallego added a commit to ejgallego/coq that referenced this issue Jan 27, 2022
We replace both the dune-based `(coq.theory ...` and the "legacy"
make-based build systems into a single setup, based on our own rule
generation and using Dune.

Thus, we go back to the first implementation of dune setup, where
compilation of .vo files do require a bootstrap process to generate
the rules, which is done by the `coq_dune` tool. But now, the process
is much more cleaner, as we got rid of the OCaml make rules.

We thus disable the `(coq.theory ...)` stanza on `theories/dune` for
now; the only downside to this is that we lose compositional building
of .vo libs (for OCaml we are still fine, which our main use case),
which anyways it is not used yet as inter-scope composition is missing
from dune for now.

At some point tho, once `(coq.theory ...)` is stable, we could go back
to it, and remove `coq_dune`. Hopefully, `coq_dune` will be used
in coq#13364 to implement the rules for the test suite too.

Dune 3.0 may bring two important improvements for this PR:

- `(deps (:read file))` so we could let dune handle the call to coqdep
- `(include rules.sexp)` so no more bootstrapping is necessary.

This should supersede coq#15545 , avoid many troubles that coq#15220 had
to endure, and lose coq#15482 .

Legacy makefiles will be removed in the next commit, closing a few
more bugs hopefully.

Todos are:

- [ ] aux files, vos, etc...
- [ ] don't call coqdep once per file (but that's maybe conveneint for the
      test-suite, so we may want to keep both modes)
- [ ] improve / add option handling, add native, etc...
- [ ] improve prefix / path adjustment in `coq_dune`
- [ ] changelog / doc update
- [ ] use the loadpath common library to compute native target names,
      and maybe more
ejgallego added a commit to ejgallego/coq that referenced this issue Jan 27, 2022
We replace both the dune-based `(coq.theory ...` and the "legacy"
make-based build systems into a single setup, based on our own rule
generation and using Dune.

Thus, we go back to the first implementation of dune setup, where
compilation of .vo files do require a bootstrap process to generate
the rules, which is done by the `coq_dune` tool. But now, the process
is much more cleaner, as we got rid of the OCaml make rules.

We thus disable the `(coq.theory ...)` stanza on `theories/dune` for
now; the only downside to this is that we lose compositional building
of .vo libs (for OCaml we are still fine, which our main use case),
which anyways it is not used yet as inter-scope composition is missing
from dune for now.

At some point tho, once `(coq.theory ...)` is stable, we could go back
to it, and remove `coq_dune`. Hopefully, `coq_dune` will be used
in coq#13364 to implement the rules for the test suite too.

Dune 3.0 may bring two important improvements for this PR:

- `(deps (:read file))` so we could let dune handle the call to coqdep
- `(include rules.sexp)` so no more bootstrapping is necessary.

This should supersede coq#15545 , avoid many troubles that coq#15220 had
to endure, and lose coq#15482 .

Legacy makefiles will be removed in the next commit, closing a few
more bugs hopefully.

Todos are:

- [ ] aux files, vos, etc...
- [ ] don't call coqdep once per file (but that's maybe conveneint for the
      test-suite, so we may want to keep both modes)
- [ ] improve / add option handling, add native, etc...
- [ ] improve prefix / path adjustment in `coq_dune`
- [ ] changelog / doc update
- [ ] use the loadpath common library to compute native target names,
      and maybe more
ejgallego added a commit to ejgallego/coq that referenced this issue Jan 31, 2022
We replace both the dune-based `(coq.theory ...` and the "legacy"
make-based build systems into a single setup, based on our own rule
generation and using Dune.

Thus, we go back to the first implementation of dune setup, where
compilation of .vo files do require a bootstrap process to generate
the rules, which is done by the `coq_dune` tool. But now, the process
is much more cleaner, as we got rid of the OCaml make rules.

We thus disable the `(coq.theory ...)` stanza on `theories/dune` for
now; the only downside to this is that we lose compositional building
of .vo libs (for OCaml we are still fine, which our main use case),
which anyways it is not used yet as inter-scope composition is missing
from dune for now.

At some point tho, once `(coq.theory ...)` is stable, we could go back
to it, and remove `coq_dune`. Hopefully, `coq_dune` will be used
in coq#13364 to implement the rules for the test suite too.

Dune 3.0 may bring two important improvements for this PR:

- `(deps (:read file))` so we could let dune handle the call to coqdep
- `(include rules.sexp)` so no more bootstrapping is necessary.

This should supersede coq#15545 , avoid many troubles that coq#15220 had
to endure, and lose coq#15482 .

Legacy makefiles will be removed in the next commit, closing a few
more bugs hopefully.

Todos are:

- [ ] aux files, vos, etc...
- [ ] don't call coqdep once per file (but that's maybe conveneint for the
      test-suite, so we may want to keep both modes)
- [ ] improve / add option handling, add native, etc...
- [ ] improve prefix / path adjustment in `coq_dune`
- [ ] changelog / doc update
- [ ] use the loadpath common library to compute native target names,
      and maybe more
ejgallego added a commit to ejgallego/coq that referenced this issue Apr 6, 2022
We replace both the dune-based `(coq.theory ...` and the "legacy"
make-based build systems into a single setup, based on our own rule
generation and using Dune.

Thus, we go back to the first implementation of dune setup, where
compilation of .vo files do require a bootstrap process to generate
the rules, which is done by the `coq_dune` tool. But now, the process
is much more cleaner, as we got rid of the OCaml make rules.

We thus disable the `(coq.theory ...)` stanza on `theories/dune` for
now; the only downside to this is that we lose compositional building
of .vo libs (for OCaml we are still fine, which our main use case),
which anyways it is not used yet as inter-scope composition is missing
from dune for now.

At some point tho, once `(coq.theory ...)` is stable, we could go back
to it, and remove `coq_dune`. Hopefully, `coq_dune` will be used
in coq#13364 to implement the rules for the test suite too.

Dune 3.0 may bring two important improvements for this PR:

- `(deps (:read file))` so we could let dune handle the call to coqdep
- `(include rules.sexp)` so no more bootstrapping is necessary.

This should supersede coq#15545 , avoid many troubles that coq#15220 had
to endure, and lose coq#15482 .

Legacy makefiles will be removed in the next commit, closing a few
more bugs hopefully.

Todos are:

- [ ] aux files, vos, etc...
- [ ] don't call coqdep once per file (but that's maybe conveneint for the
      test-suite, so we may want to keep both modes)
- [ ] improve / add option handling, add native, etc...
- [ ] improve prefix / path adjustment in `coq_dune`
- [ ] changelog / doc update
- [ ] use the loadpath common library to compute native target names,
      and maybe more
ejgallego added a commit to ejgallego/coq that referenced this issue Apr 27, 2022
We replace both the dune-based `(coq.theory ...` and the "legacy"
make-based build systems into a single setup, based on our own rule
generation and using Dune.

Thus, we go back to the first implementation of dune setup, where
compilation of .vo files do require a bootstrap process to generate
the rules, which is done by the `coq_dune` tool. But now, the process
is much more cleaner, as we got rid of the OCaml make rules.

We thus disable the `(coq.theory ...)` stanza on `theories/dune` for
now; the only downside to this is that we lose compositional building
of .vo libs (for OCaml we are still fine, which our main use case),
which anyways it is not used yet as inter-scope composition is missing
from dune for now.

At some point tho, once `(coq.theory ...)` is stable, we could go back
to it, and remove `coq_dune`. Hopefully, `coq_dune` will be used
in coq#13364 to implement the rules for the test suite too.

Dune 3.0 may bring two important improvements for this PR:

- `(deps (:read file))` so we could let dune handle the call to coqdep
- `(include rules.sexp)` so no more bootstrapping is necessary.

This should supersede coq#15545 , avoid many troubles that coq#15220 had
to endure, and lose coq#15482 .

Legacy makefiles will be removed in the next commit, closing a few
more bugs hopefully.

Todos are:

- [ ] aux files, vos, etc...
- [ ] don't call coqdep once per file (but that's maybe conveneint for the
      test-suite, so we may want to keep both modes)
- [ ] improve / add option handling, add native, etc...
- [ ] improve prefix / path adjustment in `coq_dune`
- [ ] changelog / doc update
- [ ] use the loadpath common library to compute native target names,
      and maybe more
ejgallego added a commit to ejgallego/coq that referenced this issue Apr 27, 2022
We replace both the dune-based `(coq.theory ...)` and the "legacy"
make-based build systems for .vo into a single setup, based on our own
Dune rule generation using a coq_dune tool.

This requires a bootstrap process to generate the rule files, until
Dune gets support for `(include stdlib_rules.sexp)` (hopefully soon)

By disabling the `(coq.theory ...)` stanza on `theories/dune` we lose
compositional building of .vo libs (for OCaml we are still fine, which
our main use case), this is not really used as of today so we are
fine.

This should supersede coq#15545 , avoid many troubles that coq#15220 had
to endure, and close coq#15482 .

Legacy makefiles will be removed in the next commit, closing a few
more bugs hopefully.

Todos are:

- [ ] vos files?
- [ ] quick and async CI jobs
- [ ] rest of CI
- [ ] big cleanup of coq_dune, in particular w.r.t how ltac2 is handled
- [ ] changelog / documentation update
- [ ] remove the native hackery for loadpaths now that the build system
      can set that up?
- [ ] should we use coqnative? [not for now maybe?]

At some point this code should use the loadpath common library to
compute native target names, and maybe more stuff.

Some other changes:

- We also fixup incorrecty early initialization of coqlib.

- We extend the path passed to the ocamlc compiler as to search for
  files in the dir where the .vo is [to be reverted if we remove the
  hackery], also we could just get rid of `.coq-native`.

- We remove an obsolete / uselss message on configure
ejgallego added a commit to ejgallego/coq that referenced this issue Apr 27, 2022
We replace both the dune-based `(coq.theory ...)` and the "legacy"
make-based build systems for .vo into a single setup, based on our own
Dune rule generation using a coq_dune tool.

This requires a bootstrap process to generate the rule files, until
Dune gets support for `(include stdlib_rules.sexp)` (hopefully soon)

By disabling the `(coq.theory ...)` stanza on `theories/dune` we lose
compositional building of .vo libs (for OCaml we are still fine, which
our main use case), this is not really used as of today so we are
fine.

This should supersede coq#15545 , avoid many troubles that coq#15220 had
to endure, and close coq#15482 .

Legacy makefiles will be removed in the next commit, closing a few
more bugs hopefully.

Todos are:

- [ ] vos files?
- [ ] quick and async CI jobs
- [ ] rest of CI
- [ ] big cleanup of coq_dune, in particular w.r.t how ltac2 is handled
- [ ] changelog / documentation update
- [ ] remove the native hackery for loadpaths now that the build system
      can set that up?
- [ ] should we use coqnative? [not for now maybe?]

At some point this code should use the loadpath common library to
compute native target names, and maybe more stuff.

Some other changes:

- We also fixup incorrecty early initialization of coqlib.

- We extend the path passed to the ocamlc compiler as to search for
  files in the dir where the .vo is [to be reverted if we remove the
  hackery], also we could just get rid of `.coq-native`.

- We remove an obsolete / uselss message on configure
ejgallego added a commit to ejgallego/coq that referenced this issue Apr 28, 2022
We replace both the dune-based `(coq.theory ...)` and the "legacy"
make-based build systems for .vo into a single setup, based on our own
Dune rule generation using a coq_dune tool.

This requires a bootstrap process to generate the rule files, until
Dune gets support for `(include stdlib_rules.sexp)` (hopefully soon)

By disabling the `(coq.theory ...)` stanza on `theories/dune` we lose
compositional building of .vo libs (for OCaml we are still fine, which
our main use case), this is not really used as of today so we are
fine.

This should supersede coq#15545 , avoid many troubles that coq#15220 had
to endure, and close coq#15482 .

Legacy makefiles will be removed in the next commit, closing a few
more bugs hopefully.

Todos are:

- [ ] vos files?
- [ ] quick and async CI jobs
- [ ] rest of CI
- [ ] big cleanup of coq_dune, in particular w.r.t how ltac2 is handled
- [ ] changelog / documentation update
- [ ] remove the native hackery for loadpaths now that the build system
      can set that up?
- [ ] should we use coqnative? [not for now maybe?]

At some point this code should use the loadpath common library to
compute native target names, and maybe more stuff.

Some other changes:

- We also fixup incorrecty early initialization of coqlib.

- We extend the path passed to the ocamlc compiler as to search for
  files in the dir where the .vo is [to be reverted if we remove the
  hackery], also we could just get rid of `.coq-native`.

- We remove an obsolete / uselss message on configure
ejgallego added a commit to ejgallego/coq that referenced this issue Apr 28, 2022
We replace both the dune-based `(coq.theory ...)` and the "legacy"
make-based build systems for .vo into a single setup, based on our own
Dune rule generation using a coq_dune tool.

This requires a bootstrap process to generate the rule files, until
Dune gets support for `(include stdlib_rules.sexp)` (hopefully soon)

By disabling the `(coq.theory ...)` stanza on `theories/dune` we lose
compositional building of .vo libs (for OCaml we are still fine, which
our main use case), this is not really used as of today so we are
fine.

This should supersede coq#15545 , avoid many troubles that coq#15220 had
to endure, and close coq#15482 .

Legacy makefiles will be removed in the next commit, closing a few
more bugs hopefully.

Todos are:

- [ ] vos files?
- [ ] quick and async CI jobs
- [ ] rest of CI
- [ ] big cleanup of coq_dune, in particular w.r.t how ltac2 is handled
- [ ] changelog / documentation update
- [ ] remove the native hackery for loadpaths now that the build system
      can set that up?
- [ ] should we use coqnative? [not for now maybe?]

At some point this code should use the loadpath common library to
compute native target names, and maybe more stuff.

Some other changes:

- We also fixup incorrecty early initialization of coqlib.

- We extend the path passed to the ocamlc compiler as to search for
  files in the dir where the .vo is [to be reverted if we remove the
  hackery], also we could just get rid of `.coq-native`.

- We remove an obsolete / uselss message on configure
ejgallego added a commit to ejgallego/coq that referenced this issue Apr 28, 2022
We replace both the dune-based `(coq.theory ...)` and the "legacy"
make-based build systems for .vo into a single setup, based on our own
Dune rule generation using a coq_dune tool.

This requires a bootstrap process to generate the rule files, until
Dune gets support for `(include stdlib_rules.sexp)` (hopefully soon)

By disabling the `(coq.theory ...)` stanza on `theories/dune` we lose
compositional building of .vo libs (for OCaml we are still fine, which
our main use case), this is not really used as of today so we are
fine.

This should supersede coq#15545 , avoid many troubles that coq#15220 had
to endure, and close coq#15482 .

Legacy makefiles will be removed in the next commit, closing a few
more bugs hopefully.

Todos are:

- [ ] vos files?
- [ ] quick and async CI jobs
- [ ] rest of CI
- [ ] big cleanup of coq_dune, in particular w.r.t how ltac2 is handled
- [ ] changelog / documentation update
- [ ] remove the native hackery for loadpaths now that the build system
      can set that up?
- [ ] should we use coqnative? [not for now maybe?]

At some point this code should use the loadpath common library to
compute native target names, and maybe more stuff.

Some other changes:

- We also fixup incorrecty early initialization of coqlib.

- We extend the path passed to the ocamlc compiler as to search for
  files in the dir where the .vo is [to be reverted if we remove the
  hackery], also we could just get rid of `.coq-native`.

- We remove an obsolete / uselss message on configure
ejgallego added a commit to ejgallego/coq that referenced this issue Apr 28, 2022
We replace both the dune-based `(coq.theory ...)` and the "legacy"
make-based build systems for .vo into a single setup, based on our own
Dune rule generation using a coq_dune tool.

This requires a bootstrap process to generate the rule files, until
Dune gets support for `(include stdlib_rules.sexp)` (hopefully soon)

By disabling the `(coq.theory ...)` stanza on `theories/dune` we lose
compositional building of .vo libs (for OCaml we are still fine, which
our main use case), this is not really used as of today so we are
fine.

This should supersede coq#15545 , avoid many troubles that coq#15220 had
to endure, and close coq#15482 .

Legacy makefiles will be removed in the next commit, closing a few
more bugs hopefully.

Todos are:

- [ ] vos files?
- [ ] quick and async CI jobs
- [ ] rest of CI
- [ ] big cleanup of coq_dune, in particular w.r.t how ltac2 is handled
- [ ] changelog / documentation update
- [ ] remove the native hackery for loadpaths now that the build system
      can set that up?
- [ ] should we use coqnative? [not for now maybe?]

At some point this code should use the loadpath common library to
compute native target names, and maybe more stuff.

Some other changes:

- We also fixup incorrecty early initialization of coqlib.

- We extend the path passed to the ocamlc compiler as to search for
  files in the dir where the .vo is [to be reverted if we remove the
  hackery], also we could just get rid of `.coq-native`.

- We remove an obsolete / uselss message on configure
ejgallego added a commit to ejgallego/coq that referenced this issue Apr 28, 2022
We replace both the dune-based `(coq.theory ...)` and the "legacy"
make-based build systems for .vo into a single setup, based on our own
Dune rule generation using a coq_dune tool.

This requires a bootstrap process to generate the rule files, until
Dune gets support for `(include stdlib_rules.sexp)` (hopefully soon)

By disabling the `(coq.theory ...)` stanza on `theories/dune` we lose
compositional building of .vo libs (for OCaml we are still fine, which
our main use case), this is not really used as of today so we are
fine.

This should supersede coq#15545 , avoid many troubles that coq#15220 had
to endure, and close coq#15482 .

Legacy makefiles will be removed in the next commit, closing a few
more bugs hopefully.

Todos are:

- [ ] quick and async CI jobs
- [ ] rest of of CI / determine obsolete targets
- [ ] install for documentation [check Dune 3.0]
- [ ] changelog / documentation update
- [ ] should we use coqnative? [not for now maybe?]
- [ ] remove the native hackery for loadpaths now that the build system
      can set that up? Likely for a later PR.

At some point some of this code should be moved to a common loadpath
library to compute native target names, and maybe some other stuff.

Some other changes in `Nativelib`:

- We fix incorrect early initialization of `Boot.Env.t`

- We extend the path passed to the ocamlc compiler as to search for
  files in the dir where the .vo is.

  That can be reverted if we pass all the explicit `-nI` paths.

  We could just get rid of `.coq-native`, additionally.
ejgallego added a commit to ejgallego/coq that referenced this issue Apr 28, 2022
We replace both the dune-based `(coq.theory ...)` and the "legacy"
make-based build systems for .vo into a single setup, based on our own
Dune rule generation using a coq_dune tool.

This requires a bootstrap process to generate the rule files, until
Dune gets support for `(include stdlib_rules.sexp)` (hopefully soon)

By disabling the `(coq.theory ...)` stanza on `theories/dune` we lose
compositional building of .vo libs (for OCaml we are still fine, which
our main use case), this is not really used as of today so we are
fine.

This should supersede coq#15545 , avoid many troubles that coq#15220 had
to endure, and close coq#15482 .

Legacy makefiles will be removed in the next commit, closing a few
more bugs hopefully.

Todos are:

- [ ] quick and async CI jobs
- [ ] rest of of CI / determine obsolete targets
- [ ] install for documentation [check Dune 3.0]
- [ ] changelog / documentation update
- [ ] should we use coqnative? [not for now maybe?]
- [ ] remove the native hackery for loadpaths now that the build system
      can set that up? Likely for a later PR.

At some point some of this code should be moved to a common loadpath
library to compute native target names, and maybe some other stuff.

Some other changes in `Nativelib`:

- We fix incorrect early initialization of `Boot.Env.t`

- We extend the path passed to the ocamlc compiler as to search for
  files in the dir where the .vo is.

  That can be reverted if we pass all the explicit `-nI` paths.

  We could just get rid of `.coq-native`, additionally.
ejgallego added a commit to ejgallego/coq that referenced this issue Jun 7, 2022
We replace both the dune-based `(coq.theory ...)` and the "legacy"
make-based build systems for .vo into a single setup, based on our own
Dune rule generation using a coq_dune tool.

This requires a bootstrap process to generate the rule files, until
Dune gets support for `(include stdlib_rules.sexp)` (hopefully soon)

By disabling the `(coq.theory ...)` stanza on `theories/dune` we lose
compositional building of .vo libs (for OCaml we are still fine, which
our main use case), this is not really used as of today so we are
fine.

This should supersede coq#15545 , avoid many troubles that coq#15220 had
to endure, and close coq#15482 .

Legacy makefiles will be removed in the next commit, closing a few
more bugs hopefully.

At some point some of this code should be moved to a common loadpath
library to compute native target names, and maybe some other stuff.

Some other changes in `Nativelib`:

- We fix incorrect early initialization of `Boot.Env.t`

- We extend the path passed to the ocamlc compiler as to search for
  files in the dir where the .vo is.

  That can be reverted if we pass all the explicit `-nI` paths.

  We could just get rid of `.coq-native`, additionally.
ejgallego added a commit to ejgallego/coq that referenced this issue Jun 16, 2022
We replace both the dune-based `(coq.theory ...)` and the "legacy"
make-based build systems for .vo into a single setup, based on our own
Dune rule generation using a coq_dune tool.

This requires a bootstrap process to generate the rule files, until
Dune gets support for `(include stdlib_rules.sexp)` (hopefully soon)

By disabling the `(coq.theory ...)` stanza on `theories/dune` we lose
compositional building of .vo libs (for OCaml we are still fine, which
our main use case), this is not really used as of today so we are
fine.

This should supersede coq#15545 , avoid many troubles that coq#15220 had
to endure, and close coq#15482 .

Legacy makefiles will be removed in the next commit, closing a few
more bugs hopefully.

At some point some of this code should be moved to a common loadpath
library to compute native target names, and maybe some other stuff.

Some other changes in `Nativelib`:

- We fix incorrect early initialization of `Boot.Env.t`

- We extend the path passed to the ocamlc compiler as to search for
  files in the dir where the .vo is.

  That can be reverted if we pass all the explicit `-nI` paths.

  We could just get rid of `.coq-native`, additionally.
ejgallego added a commit to ejgallego/coq that referenced this issue Jun 16, 2022
We replace both the dune-based `(coq.theory ...)` and the "legacy"
make-based build systems for .vo into a single setup, based on our own
Dune rule generation using a coq_dune tool.

This requires a bootstrap process to generate the rule files, until
Dune gets support for `(include stdlib_rules.sexp)` (hopefully soon)

By disabling the `(coq.theory ...)` stanza on `theories/dune` we lose
compositional building of .vo libs (for OCaml we are still fine, which
our main use case), this is not really used as of today so we are
fine.

This should supersede coq#15545 , avoid many troubles that coq#15220 had
to endure, and close coq#15482 .

Legacy makefiles will be removed in the next commit, closing a few
more bugs hopefully.

At some point some of this code should be moved to a common loadpath
library to compute native target names, and maybe some other stuff.

Some other changes in `Nativelib`:

- We fix incorrect early initialization of `Boot.Env.t`

- We extend the path passed to the ocamlc compiler as to search for
  files in the dir where the .vo is.

  That can be reverted if we pass all the explicit `-nI` paths.

  We could just get rid of `.coq-native`, additionally.
ejgallego added a commit to ejgallego/coq that referenced this issue Jun 16, 2022
We replace both the dune-based `(coq.theory ...)` and the "legacy"
make-based build systems for .vo into a single setup, based on our own
Dune rule generation using a coq_dune tool.

This requires a bootstrap process to generate the rule files, until
Dune gets support for `(include stdlib_rules.sexp)` (hopefully soon)

By disabling the `(coq.theory ...)` stanza on `theories/dune` we lose
compositional building of .vo libs (for OCaml we are still fine, which
our main use case), this is not really used as of today so we are
fine.

This should supersede coq#15545 , avoid many troubles that coq#15220 had
to endure, and close coq#15482 .

Legacy makefiles will be removed in the next commit, closing a few
more bugs hopefully.

At some point some of this code should be moved to a common loadpath
library to compute native target names, and maybe some other stuff.

Some other changes in `Nativelib`:

- We fix incorrect early initialization of `Boot.Env.t`

- We extend the path passed to the ocamlc compiler as to search for
  files in the dir where the .vo is.

  That can be reverted if we pass all the explicit `-nI` paths.

  We could just get rid of `.coq-native`, additionally.
ejgallego added a commit to ejgallego/coq that referenced this issue Jun 16, 2022
We replace both the dune-based `(coq.theory ...)` and the "legacy"
make-based build systems for .vo into a single setup, based on our own
Dune rule generation using a coq_dune tool.

This requires a bootstrap process to generate the rule files, until
Dune gets support for `(include stdlib_rules.sexp)` (hopefully soon)

By disabling the `(coq.theory ...)` stanza on `theories/dune` we lose
compositional building of .vo libs (for OCaml we are still fine, which
our main use case), this is not really used as of today so we are
fine.

This should supersede coq#15545 , avoid many troubles that coq#15220 had
to endure, and close coq#15482 .

Legacy makefiles will be removed in the next commit, closing a few
more bugs hopefully.

At some point some of this code should be moved to a common loadpath
library to compute native target names, and maybe some other stuff.

Some other changes in `Nativelib`:

- We fix incorrect early initialization of `Boot.Env.t`

- We extend the path passed to the ocamlc compiler as to search for
  files in the dir where the .vo is.

  That can be reverted if we pass all the explicit `-nI` paths.

  We could just get rid of `.coq-native`, additionally.
ejgallego added a commit to ejgallego/coq that referenced this issue Jun 16, 2022
We replace both the dune-based `(coq.theory ...)` and the "legacy"
make-based build systems for .vo into a single setup, based on our own
Dune rule generation using a coq_dune tool.

This requires a bootstrap process to generate the rule files, until
Dune gets support for `(include stdlib_rules.sexp)` (hopefully soon)

By disabling the `(coq.theory ...)` stanza on `theories/dune` we lose
compositional building of .vo libs (for OCaml we are still fine, which
our main use case), this is not really used as of today so we are
fine.

This should supersede coq#15545 , avoid many troubles that coq#15220 had
to endure, and close coq#15482 .

Legacy makefiles will be removed in the next commit, closing a few
more bugs hopefully.

At some point some of this code should be moved to a common loadpath
library to compute native target names, and maybe some other stuff.

Some other changes in `Nativelib`:

- We fix incorrect early initialization of `Boot.Env.t`

- We extend the path passed to the ocamlc compiler as to search for
  files in the dir where the .vo is.

  That can be reverted if we pass all the explicit `-nI` paths.

  We could just get rid of `.coq-native`, additionally.
ejgallego added a commit to ejgallego/coq that referenced this issue Jun 16, 2022
We replace both the dune-based `(coq.theory ...)` and the "legacy"
make-based build systems for .vo into a single setup, based on our own
Dune rule generation using a coq_dune tool.

This requires a bootstrap process to generate the rule files, until
Dune gets support for `(include stdlib_rules.sexp)` (hopefully soon)

By disabling the `(coq.theory ...)` stanza on `theories/dune` we lose
compositional building of .vo libs (for OCaml we are still fine, which
our main use case), this is not really used as of today so we are
fine.

This should supersede coq#15545 , avoid many troubles that coq#15220 had
to endure, and close coq#15482 .

Legacy makefiles will be removed in the next commit, closing a few
more bugs hopefully.

At some point some of this code should be moved to a common loadpath
library to compute native target names, and maybe some other stuff.

Some other changes in `Nativelib`:

- We fix incorrect early initialization of `Boot.Env.t`

- We extend the path passed to the ocamlc compiler as to search for
  files in the dir where the .vo is.

  That can be reverted if we pass all the explicit `-nI` paths.

  We could just get rid of `.coq-native`, additionally.
ejgallego added a commit to ejgallego/coq that referenced this issue Jun 16, 2022
We replace both the dune-based `(coq.theory ...)` and the "legacy"
make-based build systems for .vo into a single setup, based on our own
Dune rule generation using a coq_dune tool.

This requires a bootstrap process to generate the rule files, until
Dune gets support for `(include stdlib_rules.sexp)` (hopefully soon)

By disabling the `(coq.theory ...)` stanza on `theories/dune` we lose
compositional building of .vo libs (for OCaml we are still fine, which
our main use case), this is not really used as of today so we are
fine.

This should supersede coq#15545 , avoid many troubles that coq#15220 had
to endure, and close coq#15482 .

Legacy makefiles will be removed in the next commit, closing a few
more bugs hopefully.

At some point some of this code should be moved to a common loadpath
library to compute native target names, and maybe some other stuff.

Some other changes in `Nativelib`:

- We fix incorrect early initialization of `Boot.Env.t`

- We extend the path passed to the ocamlc compiler as to search for
  files in the dir where the .vo is.

  That can be reverted if we pass all the explicit `-nI` paths.

  We could just get rid of `.coq-native`, additionally.
ejgallego added a commit to ejgallego/coq that referenced this issue Jun 16, 2022
We replace both the dune-based `(coq.theory ...)` and the "legacy"
make-based build systems for .vo into a single setup, based on our own
Dune rule generation using a coq_dune tool.

This requires a bootstrap process to generate the rule files, until
Dune gets support for `(include stdlib_rules.sexp)` (hopefully soon)

By disabling the `(coq.theory ...)` stanza on `theories/dune` we lose
compositional building of .vo libs (for OCaml we are still fine, which
our main use case), this is not really used as of today so we are
fine.

This should supersede coq#15545 , avoid many troubles that coq#15220 had
to endure, and close coq#15482 .

Legacy makefiles will be removed in the next commit, closing a few
more bugs hopefully.

At some point some of this code should be moved to a common loadpath
library to compute native target names, and maybe some other stuff.

Some other changes in `Nativelib`:

- We fix incorrect early initialization of `Boot.Env.t`

- We extend the path passed to the ocamlc compiler as to search for
  files in the dir where the .vo is.

  That can be reverted if we pass all the explicit `-nI` paths.

  We could just get rid of `.coq-native`, additionally.
ejgallego added a commit to ejgallego/coq that referenced this issue Jun 16, 2022
We replace both the dune-based `(coq.theory ...)` and the "legacy"
make-based build systems for .vo into a single setup, based on our own
Dune rule generation using a coq_dune tool.

This requires a bootstrap process to generate the rule files, until
Dune gets support for `(include stdlib_rules.sexp)` (hopefully soon)

By disabling the `(coq.theory ...)` stanza on `theories/dune` we lose
compositional building of .vo libs (for OCaml we are still fine, which
our main use case), this is not really used as of today so we are
fine.

This should supersede coq#15545 , avoid many troubles that coq#15220 had
to endure, and close coq#15482 .

Legacy makefiles will be removed in the next commit, closing a few
more bugs hopefully.

At some point some of this code should be moved to a common loadpath
library to compute native target names, and maybe some other stuff.

Some other changes in `Nativelib`:

- We fix incorrect early initialization of `Boot.Env.t`

- We extend the path passed to the ocamlc compiler as to search for
  files in the dir where the .vo is.

  That can be reverted if we pass all the explicit `-nI` paths.

  We could just get rid of `.coq-native`, additionally.
ejgallego added a commit to ejgallego/coq that referenced this issue Jun 16, 2022
We replace both the dune-based `(coq.theory ...)` and the "legacy"
make-based build systems for .vo into a single setup, based on our own
Dune rule generation using a coq_dune tool.

This requires a bootstrap process to generate the rule files, until
Dune gets support for `(include stdlib_rules.sexp)` (hopefully soon)

By disabling the `(coq.theory ...)` stanza on `theories/dune` we lose
compositional building of .vo libs (for OCaml we are still fine, which
our main use case), this is not really used as of today so we are
fine.

This should supersede coq#15545 , avoid many troubles that coq#15220 had
to endure, and close coq#15482 .

Legacy makefiles will be removed in the next commit, closing a few
more bugs hopefully.

At some point some of this code should be moved to a common loadpath
library to compute native target names, and maybe some other stuff.

Some other changes in `Nativelib`:

- We fix incorrect early initialization of `Boot.Env.t`

- We extend the path passed to the ocamlc compiler as to search for
  files in the dir where the .vo is.

  That can be reverted if we pass all the explicit `-nI` paths.

  We could just get rid of `.coq-native`, additionally.
ejgallego added a commit to ejgallego/coq that referenced this issue Jun 16, 2022
We replace both the dune-based `(coq.theory ...)` and the "legacy"
make-based build systems for .vo into a single setup, based on our own
Dune rule generation using a coq_dune tool.

This requires a bootstrap process to generate the rule files, until
Dune gets support for `(include stdlib_rules.sexp)` (hopefully soon)

By disabling the `(coq.theory ...)` stanza on `theories/dune` we lose
compositional building of .vo libs (for OCaml we are still fine, which
our main use case), this is not really used as of today so we are
fine.

This should supersede coq#15545 , avoid many troubles that coq#15220 had
to endure, and close coq#15482 .

Legacy makefiles will be removed in the next commit, closing a few
more bugs hopefully.

At some point some of this code should be moved to a common loadpath
library to compute native target names, and maybe some other stuff.

Some other changes in `Nativelib`:

- We fix incorrect early initialization of `Boot.Env.t`

- We extend the path passed to the ocamlc compiler as to search for
  files in the dir where the .vo is.

  That can be reverted if we pass all the explicit `-nI` paths.

  We could just get rid of `.coq-native`, additionally.
ejgallego added a commit to ejgallego/coq that referenced this issue Jun 16, 2022
We replace both the dune-based `(coq.theory ...)` and the "legacy"
make-based build systems for .vo into a single setup, based on our own
Dune rule generation using a coq_dune tool.

This requires a bootstrap process to generate the rule files, until
Dune gets support for `(include stdlib_rules.sexp)` (hopefully soon)

By disabling the `(coq.theory ...)` stanza on `theories/dune` we lose
compositional building of .vo libs (for OCaml we are still fine, which
our main use case), this is not really used as of today so we are
fine.

This should supersede coq#15545 , avoid many troubles that coq#15220 had
to endure, and close coq#15482 .

Legacy makefiles will be removed in the next commit, closing a few
more bugs hopefully.

At some point some of this code should be moved to a common loadpath
library to compute native target names, and maybe some other stuff.

Some other changes in `Nativelib`:

- We fix incorrect early initialization of `Boot.Env.t`

- We extend the path passed to the ocamlc compiler as to search for
  files in the dir where the .vo is.

  That can be reverted if we pass all the explicit `-nI` paths.

  We could just get rid of `.coq-native`, additionally.
ejgallego added a commit to ejgallego/coq that referenced this issue Jun 21, 2022
We replace both the dune-based `(coq.theory ...)` and the "legacy"
make-based build systems for .vo into a single setup, based on our own
Dune rule generation using a coq_dune tool.

This requires a bootstrap process to generate the rule files, until
Dune gets support for `(include stdlib_rules.sexp)` (hopefully soon)

By disabling the `(coq.theory ...)` stanza on `theories/dune` we lose
compositional building of .vo libs (for OCaml we are still fine, which
our main use case), this is not really used as of today so we are
fine.

This should supersede coq#15545 , avoid many troubles that coq#15220 had
to endure, and close coq#15482 .

Legacy makefiles will be removed in the next commit, closing a few
more bugs hopefully.

At some point some of this code should be moved to a common loadpath
library to compute native target names, and maybe some other stuff.

Some other changes in `Nativelib`:

- We fix incorrect early initialization of `Boot.Env.t`

- We extend the path passed to the ocamlc compiler as to search for
  files in the dir where the .vo is.

  That can be reverted if we pass all the explicit `-nI` paths.

  We could just get rid of `.coq-native`, additionally.
ejgallego added a commit to ejgallego/coq that referenced this issue Jun 21, 2022
We replace both the dune-based `(coq.theory ...)` and the "legacy"
make-based build systems for .vo into a single setup, based on our own
Dune rule generation using a coq_dune tool.

This requires a bootstrap process to generate the rule files, until
Dune gets support for `(include stdlib_rules.sexp)` (hopefully soon)

By disabling the `(coq.theory ...)` stanza on `theories/dune` we lose
compositional building of .vo libs (for OCaml we are still fine, which
our main use case), this is not really used as of today so we are
fine.

This should supersede coq#15545 , avoid many troubles that coq#15220 had
to endure, and close coq#15482 .

Legacy makefiles will be removed in the next commit, closing a few
more bugs hopefully.

At some point some of this code should be moved to a common loadpath
library to compute native target names, and maybe some other stuff.

Some other changes in `Nativelib`:

- We fix incorrect early initialization of `Boot.Env.t`

- We extend the path passed to the ocamlc compiler as to search for
  files in the dir where the .vo is.

  That can be reverted if we pass all the explicit `-nI` paths.

  We could just get rid of `.coq-native`, additionally.
ejgallego added a commit to ejgallego/coq that referenced this issue Jun 21, 2022
We replace both the dune-based `(coq.theory ...)` and the "legacy"
make-based build systems for .vo into a single setup, based on our own
Dune rule generation using a coq_dune tool.

This requires a bootstrap process to generate the rule files, until
Dune gets support for `(include stdlib_rules.sexp)` (hopefully soon)

By disabling the `(coq.theory ...)` stanza on `theories/dune` we lose
compositional building of .vo libs (for OCaml we are still fine, which
our main use case), this is not really used as of today so we are
fine.

This should supersede coq#15545 , avoid many troubles that coq#15220 had
to endure, and close coq#15482 .

Legacy makefiles will be removed in the next commit, closing a few
more bugs hopefully.

At some point some of this code should be moved to a common loadpath
library to compute native target names, and maybe some other stuff.

Some other changes in `Nativelib`:

- We fix incorrect early initialization of `Boot.Env.t`

- We extend the path passed to the ocamlc compiler as to search for
  files in the dir where the .vo is.

  That can be reverted if we pass all the explicit `-nI` paths.

  We could just get rid of `.coq-native`, additionally.
ejgallego added a commit to ejgallego/coq that referenced this issue Jun 22, 2022
We replace both the dune-based `(coq.theory ...)` and the "legacy"
make-based build systems for .vo into a single setup, based on our own
Dune rule generation using a coq_dune tool.

This requires a bootstrap process to generate the rule files, until
Dune gets support for `(include stdlib_rules.sexp)` (hopefully soon)

By disabling the `(coq.theory ...)` stanza on `theories/dune` we lose
compositional building of .vo libs (for OCaml we are still fine, which
our main use case), this is not really used as of today so we are
fine.

This should supersede coq#15545 , avoid many troubles that coq#15220 had
to endure, and close coq#15482 .

Legacy makefiles will be removed in the next commit, closing a few
more bugs hopefully.

At some point some of this code should be moved to a common loadpath
library to compute native target names, and maybe some other stuff.

Some other changes in `Nativelib`:

- We fix incorrect early initialization of `Boot.Env.t`

- We extend the path passed to the ocamlc compiler as to search for
  files in the dir where the .vo is.

  That can be reverted if we pass all the explicit `-nI` paths.

  We could just get rid of `.coq-native`, additionally.
ejgallego added a commit to ejgallego/coq that referenced this issue Jun 22, 2022
We replace both the dune-based `(coq.theory ...)` and the "legacy"
make-based build systems for .vo into a single setup, based on our own
Dune rule generation using a coq_dune tool.

This requires a bootstrap process to generate the rule files, until
Dune gets support for `(include stdlib_rules.sexp)` (hopefully soon)

By disabling the `(coq.theory ...)` stanza on `theories/dune` we lose
compositional building of .vo libs (for OCaml we are still fine, which
our main use case), this is not really used as of today so we are
fine.

This should supersede coq#15545 , avoid many troubles that coq#15220 had
to endure, and close coq#15482 .

Legacy makefiles will be removed in the next commit, closing a few
more bugs hopefully.

At some point some of this code should be moved to a common loadpath
library to compute native target names, and maybe some other stuff.

Some other changes in `Nativelib`:

- We fix incorrect early initialization of `Boot.Env.t`

- We extend the path passed to the ocamlc compiler as to search for
  files in the dir where the .vo is.

  That can be reverted if we pass all the explicit `-nI` paths.

  We could just get rid of `.coq-native`, additionally.
ejgallego added a commit to ejgallego/coq that referenced this issue Jun 23, 2022
We replace both the dune-based `(coq.theory ...)` and the "legacy"
make-based build systems for .vo into a single setup, based on our own
Dune rule generation using a coq_dune tool.

This requires a bootstrap process to generate the rule files, until
Dune gets support for `(include stdlib_rules.sexp)` (hopefully soon)

By disabling the `(coq.theory ...)` stanza on `theories/dune` we lose
compositional building of .vo libs (for OCaml we are still fine, which
our main use case), this is not really used as of today so we are
fine.

This should supersede coq#15545 , avoid many troubles that coq#15220 had
to endure, and close coq#15482 .

Legacy makefiles will be removed in the next commit, closing a few
more bugs hopefully.

At some point some of this code should be moved to a common loadpath
library to compute native target names, and maybe some other stuff.

Some other changes in `Nativelib`:

- We fix incorrect early initialization of `Boot.Env.t`

- We extend the path passed to the ocamlc compiler as to search for
  files in the dir where the .vo is.

  That can be reverted if we pass all the explicit `-nI` paths.

  We could just get rid of `.coq-native`, additionally.
ejgallego added a commit to ejgallego/coq that referenced this issue Jun 23, 2022
We replace both the dune-based `(coq.theory ...)` and the "legacy"
make-based build systems for .vo into a single setup, based on our own
Dune rule generation using a coq_dune tool.

This requires a bootstrap process to generate the rule files, until
Dune gets support for `(include stdlib_rules.sexp)` (hopefully soon)

By disabling the `(coq.theory ...)` stanza on `theories/dune` we lose
compositional building of .vo libs (for OCaml we are still fine, which
our main use case), this is not really used as of today so we are
fine.

This should supersede coq#15545 , avoid many troubles that coq#15220 had
to endure, and close coq#15482 .

Legacy makefiles will be removed in the next commit, closing a few
more bugs hopefully.

At some point some of this code should be moved to a common loadpath
library to compute native target names, and maybe some other stuff.

Some other changes in `Nativelib`:

- We fix incorrect early initialization of `Boot.Env.t`

- We extend the path passed to the ocamlc compiler as to search for
  files in the dir where the .vo is.

  That can be reverted if we pass all the explicit `-nI` paths.

  We could just get rid of `.coq-native`, additionally.

[ci] [coqbot] Install compat dirs for coqbot and documentation

This should be reverted once coqbot is updated, or we do install the
documentation of a package.
ejgallego added a commit to ejgallego/coq that referenced this issue Jun 23, 2022
We replace both the dune-based `(coq.theory ...)` and the "legacy"
make-based build systems for .vo into a single setup, based on our own
Dune rule generation using a coq_dune tool.

This requires a bootstrap process to generate the rule files, until
Dune gets support for `(include stdlib_rules.sexp)` (hopefully soon)

By disabling the `(coq.theory ...)` stanza on `theories/dune` we lose
compositional building of .vo libs (for OCaml we are still fine, which
our main use case), this is not really used as of today so we are
fine.

This should supersede coq#15545 , avoid many troubles that coq#15220 had
to endure, and close coq#15482 .

Legacy makefiles will be removed in the next commit, closing a few
more bugs hopefully.

At some point some of this code should be moved to a common loadpath
library to compute native target names, and maybe some other stuff.

Some other changes in `Nativelib`:

- We fix incorrect early initialization of `Boot.Env.t`

- We extend the path passed to the ocamlc compiler as to search for
  files in the dir where the .vo is.

  That can be reverted if we pass all the explicit `-nI` paths.

  We could just get rid of `.coq-native`, additionally.
ejgallego added a commit to ejgallego/coq that referenced this issue Jun 24, 2022
We replace both the dune-based `(coq.theory ...)` and the "legacy"
make-based build systems for .vo into a single setup, based on our own
Dune rule generation using a coq_dune tool.

This requires a bootstrap process to generate the rule files, until
Dune gets support for `(include stdlib_rules.sexp)` (hopefully soon)

By disabling the `(coq.theory ...)` stanza on `theories/dune` we lose
compositional building of .vo libs (for OCaml we are still fine, which
our main use case), this is not really used as of today so we are
fine.

This should supersede coq#15545 , avoid many troubles that coq#15220 had
to endure, and close coq#15482 .

Legacy makefiles will be removed in the next commit, closing a few
more bugs hopefully.

At some point some of this code should be moved to a common loadpath
library to compute native target names, and maybe some other stuff.

Some other changes in `Nativelib`:

- We fix incorrect early initialization of `Boot.Env.t`

- We extend the path passed to the ocamlc compiler as to search for
  files in the dir where the .vo is.

  That can be reverted if we pass all the explicit `-nI` paths.

  We could just get rid of `.coq-native`, additionally.
ejgallego added a commit to ejgallego/coq that referenced this issue Jun 24, 2022
We replace both the dune-based `(coq.theory ...)` and the "legacy"
make-based build systems for .vo into a single setup, based on our own
Dune rule generation using a coq_dune tool.

This requires a bootstrap process to generate the rule files, until
Dune gets support for `(include stdlib_rules.sexp)` (hopefully soon)

By disabling the `(coq.theory ...)` stanza on `theories/dune` we lose
compositional building of .vo libs (for OCaml we are still fine, which
our main use case), this is not really used as of today so we are
fine.

This should supersede coq#15545 , avoid many troubles that coq#15220 had
to endure, and close coq#15482 .

Legacy makefiles will be removed in the next commit, closing a few
more bugs hopefully.

At some point some of this code should be moved to a common loadpath
library to compute native target names, and maybe some other stuff.

Some other changes in `Nativelib`:

- We fix incorrect early initialization of `Boot.Env.t`

- We extend the path passed to the ocamlc compiler as to search for
  files in the dir where the .vo is.

  That can be reverted if we pass all the explicit `-nI` paths.

  We could just get rid of `.coq-native`, additionally.
ejgallego added a commit to ejgallego/coq that referenced this issue Jun 24, 2022
We replace both the dune-based `(coq.theory ...)` and the "legacy"
make-based build systems for .vo into a single setup, based on our own
Dune rule generation using a coq_dune tool.

This requires a bootstrap process to generate the rule files, until
Dune gets support for `(include stdlib_rules.sexp)` (hopefully soon)

By disabling the `(coq.theory ...)` stanza on `theories/dune` we lose
compositional building of .vo libs (for OCaml we are still fine, which
our main use case), this is not really used as of today so we are
fine.

This should supersede coq#15545 , avoid many troubles that coq#15220 had
to endure, and close coq#15482 .

Legacy makefiles will be removed in the next commit, closing a few
more bugs hopefully.

At some point some of this code should be moved to a common loadpath
library to compute native target names, and maybe some other stuff.

Some other changes in `Nativelib`:

- We fix incorrect early initialization of `Boot.Env.t`

- We extend the path passed to the ocamlc compiler as to search for
  files in the dir where the .vo is.

  That can be reverted if we pass all the explicit `-nI` paths.

  We could just get rid of `.coq-native`, additionally.
ejgallego added a commit to ejgallego/coq that referenced this issue Jun 27, 2022
We replace both the dune-based `(coq.theory ...)` and the "legacy"
make-based build systems for .vo into a single setup, based on our own
Dune rule generation using a coq_dune tool.

This requires a bootstrap process to generate the rule files, until
Dune gets support for `(include stdlib_rules.sexp)` (hopefully soon)

By disabling the `(coq.theory ...)` stanza on `theories/dune` we lose
compositional building of .vo libs (for OCaml we are still fine, which
our main use case), this is not really used as of today so we are
fine.

This should supersede coq#15545 , avoid many troubles that coq#15220 had
to endure, and close coq#15482 .

Legacy makefiles will be removed in the next commit, closing a few
more bugs hopefully.

At some point some of this code should be moved to a common loadpath
library to compute native target names, and maybe some other stuff.

Some other changes in `Nativelib`:

- We fix incorrect early initialization of `Boot.Env.t`

- We extend the path passed to the ocamlc compiler as to search for
  files in the dir where the .vo is.

  That can be reverted if we pass all the explicit `-nI` paths.

  We could just get rid of `.coq-native`, additionally.
ejgallego added a commit to ejgallego/coq that referenced this issue Jun 27, 2022
We replace both the dune-based `(coq.theory ...)` and the "legacy"
make-based build systems for .vo into a single setup, based on our own
Dune rule generation using a coq_dune tool.

This requires a bootstrap process to generate the rule files, until
Dune gets support for `(include stdlib_rules.sexp)` (hopefully soon)

By disabling the `(coq.theory ...)` stanza on `theories/dune` we lose
compositional building of .vo libs (for OCaml we are still fine, which
our main use case), this is not really used as of today so we are
fine.

This should supersede coq#15545 , avoid many troubles that coq#15220 had
to endure, and close coq#15482 .

Legacy makefiles will be removed in the next commit, closing a few
more bugs hopefully.

At some point some of this code should be moved to a common loadpath
library to compute native target names, and maybe some other stuff.

Some other changes in `Nativelib`:

- We fix incorrect early initialization of `Boot.Env.t`

- We extend the path passed to the ocamlc compiler as to search for
  files in the dir where the .vo is.

  That can be reverted if we pass all the explicit `-nI` paths.

  We could just get rid of `.coq-native`, additionally.
ejgallego added a commit to ejgallego/coq that referenced this issue Jun 28, 2022
We replace both the dune-based `(coq.theory ...)` and the "legacy"
make-based build systems for .vo into a single setup, based on our own
Dune rule generation using a coq_dune tool.

This requires a bootstrap process to generate the rule files, until
Dune gets support for `(include stdlib_rules.sexp)` (hopefully soon)

By disabling the `(coq.theory ...)` stanza on `theories/dune` we lose
compositional building of .vo libs (for OCaml we are still fine, which
our main use case), this is not really used as of today so we are
fine.

This should supersede coq#15545 , avoid many troubles that coq#15220 had
to endure, and close coq#15482 .

Legacy makefiles will be removed in the next commit, closing a few
more bugs hopefully.

At some point some of this code should be moved to a common loadpath
library to compute native target names, and maybe some other stuff.

Some other changes in `Nativelib`:

- We fix incorrect early initialization of `Boot.Env.t`

- We extend the path passed to the ocamlc compiler as to search for
  files in the dir where the .vo is.

  That can be reverted if we pass all the explicit `-nI` paths.

  We could just get rid of `.coq-native`, additionally.
Dune automation moved this from Ready to address to Done Jun 28, 2022
@coqbot-app coqbot-app bot added this to the 8.17+rc1 milestone Jun 28, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
kind: user messages Improvement of error messages, new warnings, etc. part: build The build system.
Projects
Dune
  
Done
Development

Successfully merging a pull request may close this issue.

3 participants