public inbox for [email protected]
 help / color / mirror / Atom feed
From: Ammar Faizi <[email protected]>
To: Alviro Iskandar Setiawan <[email protected]>
Cc: Jens Axboe <[email protected]>,
	Pavel Begunkov <[email protected]>,
	Alviro Iskandar Setiawan <[email protected]>,
	io-uring Mailing list <[email protected]>,
	GNU/Weeb Mailing List <[email protected]>
Subject: Re: [PATCH liburing 2/2] src/Makefile: Add header files as dependency
Date: Wed, 9 Mar 2022 07:41:14 +0700	[thread overview]
Message-ID: <[email protected]> (raw)
In-Reply-To: <CAOG64qNjjy9j5QcdqSKjiETUFn6AZb6A4OKWN25nZdia=6X2ew@mail.gmail.com>

On 3/9/22 7:23 AM, Alviro Iskandar Setiawan wrote:
> On Wed, Mar 9, 2022 at 6:06 AM Alviro Iskandar Setiawan wrote:
>> On Wed, Mar 9, 2022 at 5:52 AM Ammar Faizi wrote:
>>> This is ugly, it blindly adds all of them to the dependency while
>>> they're actually not dependencies for all the C files here. For
>>> example, when compiling for x86, we don't touch aarch64 files.
>>>
>>> It is not a problem for liburing at the moment, because we don't
>>> have many files in the src directory now. But I think we better
>>> provide a long term solution on this.
>>>
>>> For the headers files, I think we should rely on the compilers to
>>> generate the dependency list with something like:
>>>
>>>      "-MT ... -MMD -MP -MF"
>>>
>>> Then include the generated dependency list to the Makefile.
>>>
>>> What do you think?
>>
>> Yes, I think it's better to do that. I'll fix this in v2.
>> thx
> 
> Sir, I am a bit confused with the include dependency files to the Makefile.
> 
> I use like this:
> 
>     -MT <object_filename> -MMD -MP -MF <dependency_file>
> 
> the dependency file is generated, but how to include them dynamically?
> I think it shouldn't be included one by one.
> 
> So after this
> 
>     [...] -MT "setup.os" -MMD -MP -MF ".deps/setup.os.d" [...]
>     [...] -MT "queue.os" -MMD -MP -MF ".deps/queue.os.d" [...]
>     [...] -MT "register.os" -MMD -MP -MF ".deps/register.os.d" [...]
>     [...] -MT "syscall.os" -MMD -MP -MF ".deps/syscall.os.d" [...]
> 
> files .deps/{setup,queue,registers,syscall}.os.d are generated, but I
> have to include them to Makefile right? How to include them all at
> once?

Untested, but I think you can do something like:

   -include $(liburing_objs:%=.deps/%.d)

where liburing_objs is the variable that contains:
{setup,queue,registers,syscall}.os.

-- 
Ammar Faizi

  reply	other threads:[~2022-03-09  0:41 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-03-08 22:40 [PATCH liburing 0/2] Changes for src/Makefile Alviro Iskandar Setiawan
2022-03-08 22:40 ` [PATCH liburing 1/2] src/Makefile: Remove `-fomit-frame-pointer` from default build Alviro Iskandar Setiawan
2022-03-08 22:40 ` [PATCH liburing 2/2] src/Makefile: Add header files as dependency Alviro Iskandar Setiawan
2022-03-08 22:52   ` Ammar Faizi
2022-03-08 23:06     ` Alviro Iskandar Setiawan
2022-03-09  0:23       ` Alviro Iskandar Setiawan
2022-03-09  0:41         ` Ammar Faizi [this message]
2022-03-08 22:58   ` Ammar Faizi
2022-03-08 23:07     ` Alviro Iskandar Setiawan

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 \
    [email protected] \
    [email protected] \
    [email protected] \
    [email protected] \
    [email protected] \
    [email protected] \
    [email protected] \
    [email protected] \
    /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