qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Pierrick Bouvier <pierrick.bouvier@linaro.org>
To: "Peter Maydell" <peter.maydell@linaro.org>,
	"Alex Bennée" <alex.bennee@linaro.org>
Cc: qemu-devel@nongnu.org,
	"Philippe Mathieu-Daudé" <philmd@linaro.org>,
	"Richard Henderson" <richard.henderson@linaro.org>,
	"Andrew Melnychenko" <andrew@daynix.com>,
	"Daniel P. Berrangé" <berrange@redhat.com>,
	"Jason Wang" <jasowang@redhat.com>,
	"Thomas Huth" <thuth@redhat.com>,
	"Vladimir Sementsov-Ogievskiy" <vsementsov@yandex-team.ru>,
	"Fabiano Rosas" <farosas@suse.de>,
	"Kevin Wolf" <kwolf@redhat.com>,
	"Markus Armbruster" <armbru@redhat.com>,
	"Eric Blake" <eblake@redhat.com>,
	qemu-arm@nongnu.org,
	"Yuri Benditovich" <yuri.benditovich@daynix.com>,
	manos.pitsidianakis@linaro.org, qemu-block@nongnu.org,
	"Michael Roth" <michael.roth@amd.com>,
	"Konstantin Kostiuk" <kkostiuk@redhat.com>,
	"Paolo Bonzini" <pbonzini@redhat.com>,
	"Peter Xu" <peterx@redhat.com>,
	gustavo.romero@linaro.org
Subject: Re: [PATCH 5/7] docs: add a codebase section
Date: Tue, 3 Dec 2024 11:35:38 -0800	[thread overview]
Message-ID: <ed84a4df-490e-44f2-819a-9fe47d235e0e@linaro.org> (raw)
In-Reply-To: <CAFEAcA_Mmf0fH8biPaZz9c1bw6UdmEvVWhdjUduzPTqH4njnhQ@mail.gmail.com>

On 12/3/24 09:46, Peter Maydell wrote:
> On Tue, 3 Dec 2024 at 17:22, Alex Bennée <alex.bennee@linaro.org> wrote:
>>
>> Peter Maydell <peter.maydell@linaro.org> writes:
>>
>>> On Mon, 18 Nov 2024 at 17:24, Pierrick Bouvier
>>> <pierrick.bouvier@linaro.org> wrote:
>>>>
>>>> Present the various parts of QEMU and organization of codebase.
>>>>
>>>> Signed-off-by: Pierrick Bouvier <pierrick.bouvier@linaro.org>
>>>
>>> I like this; it's something I've thought for a while would
>>> be good to have, but which I never got round to trying to
>>> put together. Thanks for doing this!
>>>
>>> Mostly my comments below are spelling/typo nits and
>>> other minor stuff.
>>>
>>>> ---
>>>>   docs/about/emulation.rst               |   2 +
>>>>   docs/codebase/index.rst                | 211 +++++++++++++++++++++++++
>>>>   docs/devel/decodetree.rst              |   2 +
>>>>   docs/devel/ebpf_rss.rst                |   2 +
>>>>   docs/devel/index-internals.rst         |   2 +
>>>>   docs/devel/migration/main.rst          |   2 +
>>>>   docs/devel/qapi-code-gen.rst           |   1 +
>>>>   docs/devel/testing/main.rst            |   9 +-
>>>>   docs/devel/testing/qtest.rst           |   2 +
>>>>   docs/index.rst                         |   3 +
>>>>   docs/interop/qemu-ga.rst               |   2 +
>>>>   docs/system/qemu-block-drivers.rst.inc |   2 +
>>>>   docs/tools/qemu-storage-daemon.rst     |   2 +
>>>>   docs/user/main.rst                     |   6 +
>>>>   14 files changed, 247 insertions(+), 1 deletion(-)
>>>>   create mode 100644 docs/codebase/index.rst
>>>>
>> <snip>
>>>> +  Block devices and `image formats<disk images>` implementation.
>>>> +* `bsd-user <https://gitlab.com/qemu-project/qemu/-/tree/master/bsd-user>`_:
>>>> +  `BSD User mode<bsd-user-mode>`.
>>>> +* build: Where the code built goes!
>>>
>>> The built code doesn't have to be in 'build'. We could say:
>>>
>>>   * build: You can tell the QEMU build system to put the built code
>>>     anywhere you like. By default it will go into a directory named
>>>     ``build``. Sometimes documentation will assume this default
>>>     for convenience when describing command lines; you can always
>>>     replace it with the path to your build tree.
>>>
>>> ?
>>
>> I always recommend creating a builds directory and having multiple build
>> trees under it:
> 
> Indeed, that's what I like to do too, but I don't think this
> document is the right place to make that kind of recommendation.
>

I agree with Peter.
People who understand this need already know how to do it, and it's not 
the best place to mention that.

As well, using several folders can be error prone (using "old" binaries 
by mistake happens quickly), and it's something I usually don't advise 
for beginners. Using a symlink that points to the right folder is less 
error prone, but it opens the path to another (custom and personal) 
layer to the build command.

Another (more simple) solution is to use a single folder, and simply 
rely on ccache for quick rebuilds.

There are probably as many solutions and opinions as there are 
developers on this thread, so it's better to simply mention one build 
folder, and nothing else.

> -- PMM


  reply	other threads:[~2024-12-03 19:37 UTC|newest]

Thread overview: 39+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-11-18 17:23 [PATCH 0/7] Enhance documentation for new developers Pierrick Bouvier
2024-11-18 17:23 ` [PATCH 1/7] docs/devel: remove dead video link for sourcehut submit process Pierrick Bouvier
2024-11-19  8:25   ` Thomas Huth
2024-11-18 17:23 ` [PATCH 2/7] docs/devel: add git-publish for patch submitting Pierrick Bouvier
2024-11-19  8:41   ` Marcin Juszkiewicz
2024-11-19  9:12     ` Daniel P. Berrangé
2024-11-20  6:29       ` Pierrick Bouvier
2024-11-20  6:25     ` Pierrick Bouvier
2024-11-20  9:51       ` Alex Bennée
2024-11-20 10:01         ` Daniel P. Berrangé
2024-11-19  9:04   ` Daniel P. Berrangé
2024-11-20 21:45     ` Pierrick Bouvier
2024-11-18 17:23 ` [PATCH 3/7] docs/devel: add b4 for patch retrieval Pierrick Bouvier
2024-11-19  9:14   ` Daniel P. Berrangé
2024-11-19  9:56     ` Marcin Juszkiewicz
2024-11-19 10:07       ` Daniel P. Berrangé
2024-11-19 10:40         ` Marcin Juszkiewicz
2024-11-18 17:23 ` [PATCH 4/7] docs/devel: add information on how to setup build environments Pierrick Bouvier
2024-11-19  9:24   ` Daniel P. Berrangé
2024-11-19 11:08     ` Alex Bennée
2024-11-19 11:16       ` Daniel P. Berrangé
2024-11-20 21:58     ` Pierrick Bouvier
2024-11-18 17:23 ` [PATCH 5/7] docs: add a codebase section Pierrick Bouvier
2024-12-03 15:53   ` Peter Maydell
2024-12-03 17:22     ` Alex Bennée
2024-12-03 17:46       ` Peter Maydell
2024-12-03 19:35         ` Pierrick Bouvier [this message]
2024-12-04  8:58       ` Daniel P. Berrangé
2024-12-03 21:02     ` Pierrick Bouvier
2024-11-18 17:23 ` [PATCH 6/7] docs: add a glossary Pierrick Bouvier
2024-12-03 17:37   ` Peter Maydell
2024-12-03 18:10     ` Alex Bennée
2024-12-03 19:37       ` Pierrick Bouvier
2024-12-03 20:32     ` Pierrick Bouvier
2024-12-05 15:23       ` Peter Maydell
2024-12-05 19:21         ` Pierrick Bouvier
2024-11-18 17:23 ` [PATCH 7/7] docs: add a how to section Pierrick Bouvier
2024-11-19  9:29   ` Daniel P. Berrangé
2024-11-20 22:05     ` Pierrick Bouvier

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=ed84a4df-490e-44f2-819a-9fe47d235e0e@linaro.org \
    --to=pierrick.bouvier@linaro.org \
    --cc=alex.bennee@linaro.org \
    --cc=andrew@daynix.com \
    --cc=armbru@redhat.com \
    --cc=berrange@redhat.com \
    --cc=eblake@redhat.com \
    --cc=farosas@suse.de \
    --cc=gustavo.romero@linaro.org \
    --cc=jasowang@redhat.com \
    --cc=kkostiuk@redhat.com \
    --cc=kwolf@redhat.com \
    --cc=manos.pitsidianakis@linaro.org \
    --cc=michael.roth@amd.com \
    --cc=pbonzini@redhat.com \
    --cc=peter.maydell@linaro.org \
    --cc=peterx@redhat.com \
    --cc=philmd@linaro.org \
    --cc=qemu-arm@nongnu.org \
    --cc=qemu-block@nongnu.org \
    --cc=qemu-devel@nongnu.org \
    --cc=richard.henderson@linaro.org \
    --cc=thuth@redhat.com \
    --cc=vsementsov@yandex-team.ru \
    --cc=yuri.benditovich@daynix.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).