-
Notifications
You must be signed in to change notification settings - Fork 641
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
[build] [doc] Build a few more targets hygienically #14212
Conversation
Some stuff needs fixing:
BTW, why do we build this in the |
Fixing this now, sorry.
This is a long story due indeed to problems with the build system , see #7515 |
Concretely, the makefiles didn't support building the docs from the |
Needs a bit more work due to the code using |
389accf
to
049bbfb
Compare
OK. We should really fix that if we can. Otherwise, the |
97a6167
to
ddf9c6a
Compare
We are not there yet, but some steps in this PR have been made so the doc build is relying on an install layout, I think we are close to actually doing that IMHO, as now |
6323d7b
to
194c01a
Compare
This will help avoid problems with dirty tress in the future, and should overall provide a better experience in terms of hygienic builds. We also add a `doc-stdlib-html` target; fixes coq#14218
194c01a
to
57b8408
Compare
@@ -133,8 +148,9 @@ doc/common/version.tex: config/Makefile | |||
|
|||
### Changelog | |||
|
|||
doc/unreleased.rst: $(wildcard doc/changelog/00-title.rst doc/changelog/*/*.rst) | |||
$(DOC_BUILD_DIR)/unreleased.rst: $(wildcard doc/changelog/00-title.rst doc/changelog/*/*.rst) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
What is the point of doing this out of tree if it is only used by the Sphinx build which is done in tree?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Indeed, I can defer this change to a possible sphinx out-of-tree PR; I did setup that in the hope of advancing a bit more on that front, but only did the stdlib part.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
As you want. I can also merge as is.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Let's merge as-is if you want, and also tweak the rest of targets so we bulid the full doc hygienically too.
@@ -1,5 +1,7 @@ | |||
(rule | |||
(targets unreleased.rst) | |||
; We need to keep this as the sphinx build still requires this file | |||
; in-tree, to be fixed hopefully soon |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actually, I think this is incorrect because when building the refman through Dune, the build is already done out of tree (Makefile.doc
is not used in that case).
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is needed for the case you do a regular make build, then a dune build, otherwise dune will complain about the generated file; once we more the sphinx out of tree, this can be removed.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I see, thanks!
@@ -80,6 +80,7 @@ before_script: | |||
- config/Makefile | |||
- config/coq_config.py | |||
- config/coq_config.ml | |||
- config/dune.c_flags |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
When is this generated and what is this used for?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is always generated by configure, it is used to setup the floating point flags for the kernel float vm machinery.
@coqbot merge now |
This will help avoid problems with dirty tress in the future, and
should overall provide a better experience in terms of hygienic
builds.