On Tue, 31 Mar 2020, Markus Armbruster wrote:
Peter Maydell <peter.mayd...@linaro.org> writes:
On Mon, 30 Mar 2020 at 14:26, Markus Armbruster <arm...@redhat.com> wrote:
Peter Maydell <peter.mayd...@linaro.org> writes:
AIUI from Paolo, the intention is to deprecate and eventually
stop supporting "in-tree" builds, so that the only option is
building in a separate build directory. I thought we should
probably mention that in the 5.0 changelog, so I wrote up some
text:
https://wiki.qemu.org/ChangeLog/5.0#Build_Information
Overdue. Thanks for doing this!
Suggestions for changes/comments etc welcome.
Looks fine to me.
Consensus in the thread seemed to lean towards having
the 'configure/make' runes auto-create a build directory;
if we want to do that we should probably not say anything in
the release notes, because we'll cause people to change
unnecessarily. Or at least have them say "We recommend
out-of-tree builds. In future we might make the commands
that currently do an in-tree build automatically create
and use a build directory for you." rather than a blanket
"we're going to drop this and you should change what you
do now".
Thoughts?
I'm wary of complicating the build system to save developers a minor
change of habits.
How much complication is it? Looks like a few lines in configure (like the
one submitted to print warning but instead of printing a long warning just
run the commands (which is even shorter then the text). Then a Makefile in
top level dir to do make -C build like someone has also posted in another
email. This does not seem too much burden to make life of some people
easier so I don't see why some of you insist to force everyone to change
their ways even if it could be solved with some effort.
We will have to ask developers to change habits anyway when we switch to
Meson. I agree with Daniel's recommendation to delay changes requiring
habit-changes until then. However, telling people to stay clear of the
unloved and brittle in-tree build is simply good advice we should not
withhold.
Can someone please explain why is it brittle and cannot be supported? It
has worked well so far apart from some breakage due to being untested
which is also not a techincal necessity just a decision by some
maintiners to not test it. Adding a CI job to keep it working would also
not be difficult or much complexity.
Regards,
BALATON Zoltan