All of lore.kernel.org
 help / color / mirror / Atom feed
From: Junio C Hamano <gitster@pobox.com>
To: Andy Koppe <andy.koppe@gmail.com>
Cc: git@vger.kernel.org,  Patrick Steinhardt <ps@pks.im>,
	 "brian m . carlson" <sandals@crustytoothpaste.net>,
	 Shardul Natu <snatu@google.com>, Mike Hommey <mh@glandium.org>
Subject: Re: [PATCH] Makefile: pin cargo --target-dir to ./target
Date: Tue, 20 Oct 2026 14:15:44 -0700	[thread overview]
Message-ID: <xmqq1p9kt6nz.fsf@gitster.g> (raw)
In-Reply-To: <CAHWeT-aD9pNEdWHVf+M9dXzav1P7dTD+h4mQ8c4gkrpvdYxTxA@mail.gmail.com> (Andy Koppe's message of "Tue, 20 Oct 2026 21:05:14 +0100")

Andy Koppe <andy.koppe@gmail.com> writes:

> Junio C Hamano <gitster@pobox.com> wrote:
>>
>> Andy Koppe <andy.koppe@gmail.com> writes:
>>
>> > The problem I see with that approach is that CARGO_ARGS looks like it
>> > is intended for build preferences similar to CFLAGS or LDFLAGS that
>> > could be overridden on the make command line, whereas the target dir
>> > is a hard requirement of the subsequent link step.
>> >
>> > I suppose `override CARGO_ARGS += --target-dir target` would avoid
>> > that concern, but also set a trap because any subsequent modifications
>> > of the variable without `override` would be quietly ignored.
>>
>> But we are already tweaking it with += in the Makefile, aren't we?
>>
>>     # Rust flags
>>     CARGO_ARGS =
>>     ifndef V
>>     CARGO_ARGS += --quiet
>>     endif
>>     ifndef DEBUG
>>     CARGO_ARGS += --release
>>     endif
>
> Yes, but those are preferences that can be overridden on the make
> command line without doing harm (within reason), similar to the
> default 'CFLAGS = -g -O2 -Wall', whereas the --target-dir should
> always be passed to ensure the cargo output is going where it's
> expected.

That's fair.

So if we wanted to go that route, we'd need a companion variable for
CARGO_ARGS that is similar to BASIC_CFLAGS we have for CFLAGS, which
may not be a bad thing to have in the longer term assuming that we
would have more targets that need to use CARGO_ARGS.

Anyway, this was not an objection to the way the patch was
originally written.  Just I noticed while resolving conflicts
between in-flight topics.

Thanks.



      reply	other threads:[~2026-10-20 21:15 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-10-18 20:53 [PATCH] Makefile: pin cargo --target-dir to ./target Andy Koppe
2026-10-19  6:45 ` Patrick Steinhardt
2026-10-19 16:07 ` Junio C Hamano
2026-10-19 19:43   ` Andy Koppe
2026-10-20 16:52     ` Junio C Hamano
2026-10-20 20:05       ` Andy Koppe
2026-10-20 21:15         ` Junio C Hamano [this message]

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=xmqq1p9kt6nz.fsf@gitster.g \
    --to=gitster@pobox.com \
    --cc=andy.koppe@gmail.com \
    --cc=git@vger.kernel.org \
    --cc=mh@glandium.org \
    --cc=ps@pks.im \
    --cc=sandals@crustytoothpaste.net \
    --cc=snatu@google.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.