From: Masahiro Yamada <masahiroy@kernel.org>
To: "Michel Dänzer" <michel.daenzer@mailbox.org>
Cc: "Christian König" <ckoenig.leichtzumerken@gmail.com>,
"Xinhui Pan" <Xinhui.Pan@amd.com>,
"Maling list - DRI developers" <dri-devel@lists.freedesktop.org>,
"Alex Deucher" <alexander.deucher@amd.com>,
"amd-gfx list" <amd-gfx@lists.freedesktop.org>,
"Christian König" <christian.koenig@amd.com>
Subject: Re: [PATCH] drm/radeon: Add build directory to include path
Date: Fri, 15 Apr 2022 00:04:17 +0900 [thread overview]
Message-ID: <CAK7LNATdTaY6+FD4TuFgmb00=Qbx=7mmCi9onHv0zi=pdZysBQ@mail.gmail.com> (raw)
In-Reply-To: <fe499d20-2667-5953-831a-d7668c5a3d18@mailbox.org>
Hi.
On Thu, Apr 14, 2022 at 10:50 PM Michel Dänzer
<michel.daenzer@mailbox.org> wrote:
>
> On 2022-04-14 15:34, Alex Deucher wrote:
> > On Thu, Apr 14, 2022 at 4:44 AM Christian König
> > <ckoenig.leichtzumerken@gmail.com> wrote:
> >> Am 14.04.22 um 09:37 schrieb Michel Dänzer:
> >>> On 2022-04-14 08:24, Christian König wrote:
> >>>> Am 13.04.22 um 18:14 schrieb Michel Dänzer:
> >>>>> From: Michel Dänzer <mdaenzer@redhat.com>
> >>>>>
> >>>>> Fixes compile errors with out-of-tree builds, e.g.
> >>>>>
> >>>>> ../drivers/gpu/drm/radeon/r420.c:38:10: fatal error: r420_reg_safe.h: No such file or directory
> >>>>> 38 | #include "r420_reg_safe.h"
> >>>>> | ^~~~~~~~~~~~~~~~~
> >>>>
> >>>> Well stuff like that usually points to a broken build environment.
> >>> Just a separate build directory. Specifically, I'm hitting the errors with
> >>>
> >>> make -C build-amd64 M=drivers/gpu/drm
Maybe
make O=build-arm64 drivers/gpu/drm/
is the way you were searching for.
It builds only drivers/gpu/drm/
in the separate directory.
> >>>
> >>> Generated headers such as r420_reg_safe.h reside in the build directory, so source files in the source directory can't find them without an explicit search path.
> >>
> >> I'm trying to swap back into my brain how all of this used to work, but
> >> that's a really long time ago that I tried this as well.
> >>
> >>> Are you saying that should get added automagically somehow?
For the kernel tree, yes, it is done automatically.
See the code in scripts/Makefile.lib:
# $(srctree)/$(src) for including checkin headers from generated source files
# $(objtree)/$(obj) for including generated headers from checkin source files
ifeq ($(KBUILD_EXTMOD),)
ifdef building_out_of_srctree
_c_flags += -I $(srctree)/$(src) -I $(objtree)/$(obj)
_a_flags += -I $(srctree)/$(src) -I $(objtree)/$(obj)
_cpp_flags += -I $(srctree)/$(src) -I $(objtree)/$(obj)
endif
endif
But, you used M=drivers/gpu/drm.
So, it did not work.
M= is intended for building external modules.
I do not recommend it for in-tree drivers.
> >>
> >> Yes, exactly that. I'm like 95% sure that used to work, but I don't know
> >> why exactly either.
> >>
> >>> FWIW, this is pretty common in the kernel according to git grep.
> >>
> >> Maybe Alex or somebody else with some more background in the kernel
> >> Makefiles could jump in and help here.
> >
> > I don't remember either. I vaguely recall the build support for the
> > mkregtable stuff being reworked a while ago. A quick zip through the
> > git logs shows a series from Masahiro Yamada from 2020.
>
> Yamada-san, can you help us? :)
>
> See https://patchwork.freedesktop.org/patch/482011/ for my patch.
>
>
> --
> Earthling Michel Dänzer | https://redhat.com
> Libre software enthusiast | Mesa and Xwayland developer
--
Best Regards
Masahiro Yamada
next prev parent reply other threads:[~2022-04-14 15:18 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-04-13 16:14 [PATCH] drm/radeon: Add build directory to include path Michel Dänzer
2022-04-14 6:24 ` Christian König
2022-04-14 7:37 ` Michel Dänzer
2022-04-14 8:44 ` Christian König
2022-04-14 8:56 ` Michel Dänzer
2022-04-14 13:34 ` Alex Deucher
2022-04-14 13:49 ` Michel Dänzer
2022-04-14 15:04 ` Masahiro Yamada [this message]
2022-04-14 16:57 ` Michel Dänzer
2022-06-15 8:35 ` Michel Dänzer
2022-06-18 22:08 ` Masahiro Yamada
2022-06-19 16:22 ` Ernst Sjöstrand
2022-06-20 7:42 ` Michel Dänzer
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='CAK7LNATdTaY6+FD4TuFgmb00=Qbx=7mmCi9onHv0zi=pdZysBQ@mail.gmail.com' \
--to=masahiroy@kernel.org \
--cc=Xinhui.Pan@amd.com \
--cc=alexander.deucher@amd.com \
--cc=amd-gfx@lists.freedesktop.org \
--cc=christian.koenig@amd.com \
--cc=ckoenig.leichtzumerken@gmail.com \
--cc=dri-devel@lists.freedesktop.org \
--cc=michel.daenzer@mailbox.org \
/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).