Git development
 help / color / mirror / Atom feed
From: Jeff King <peff@peff.net>
To: Junio C Hamano <gitster@pobox.com>
Cc: "brian m. carlson" <sandals@crustytoothpaste.net>, git@vger.kernel.org
Subject: Re: [PATCH] Makefile: read configuration earlier
Date: Thu, 30 Jul 2026 07:57:45 -0400	[thread overview]
Message-ID: <20260730115745.GB1871609@coredump.intra.peff.net> (raw)
In-Reply-To: <xmqqh5lhm82g.fsf@gitster.g>

On Wed, Jul 29, 2026 at 09:10:15PM -0700, Junio C Hamano wrote:

> This is a scary patch because its correctness depends on what is
> between lines 780-1050.  It turns out that this now lets config.mak*
> to set quite a lot of symbols to affect the outcome:
> 
>  * PROGRAM_OBJS, BUILT_INS, TEST_BUILTIN_OBJS
>  * WITH_BREAKING_CHANGES
>  * SHELL_PATH
>  * PERL_PATH
>  * PYTHON_PATH
>  * NO_RUST
>  * DEBUG
>  * uname_S?????
>  * SPARSE_FLAGS
>  * SPATCH_INCLUDE_FLAGS

Yes, though to some degree config.mak can already manipulate those after
the fact. There are other breakages, though (see the CFLAGS one I showed
elsewhere in the thread).

> Especially curious is that currently there is this bit:
> 
> 	ifeq ($(uname_S),Windows)
> 	RUST_LIB_NAME = gitcore.lib
> 	else
> 	RUST_LIB_NAME = libgitcore.a
> 	endif
> 
> that comes WAY BEFORE config.mak.uname is included.  If the location
> to include these files matter, then how could this bit have been
> working?  I have no idea and since I have no access to Windows
> development box so I wouldn't know.

Yeah, that seems totally wrong to me. Likewise this bit right above it:

  ifndef NO_RUST
  ifdef DEBUG
  RUST_BUILD_CONFIG = debug
  else
  RUST_BUILD_CONFIG = release
  endif

has the same problem brian is fixing for BREAKING_CHANGES. It will work
for "make NO_RUST=1", but not if you put NO_RUST into config.mak. That
said, I don't know why that NO_RUST check is there at all. It is not a
problem to set a flag that nobody looks at. So it may be a bug without a
visible effect. ;)

-Peff

  reply	other threads:[~2026-07-30 11:57 UTC|newest]

Thread overview: 16+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-07-28  0:46 Failing tests with WITH_BREAKING_CHANGES brian m. carlson
2026-07-28  1:00 ` Junio C Hamano
2026-07-28 13:31 ` Phillip Wood
2026-07-28 13:55   ` Jeff King
2026-07-28 14:36     ` [PATCH 0/2] fix serial tests without/with breaking-changes Jeff King
2026-07-28 14:37       ` [PATCH 1/2] t0014: factor out choice of deprecated commands Jeff King
2026-07-28 15:57         ` Junio C Hamano
2026-07-28 14:38       ` [PATCH 2/2] t0014: generate deprecated command names dynamically Jeff King
2026-07-28 16:01         ` Junio C Hamano
2026-07-28 16:19           ` Jeff King
2026-07-28 21:12         ` brian m. carlson
2026-07-29 15:25     ` Failing tests with WITH_BREAKING_CHANGES Phillip Wood
2026-07-29 22:59     ` [PATCH] Makefile: read configuration earlier brian m. carlson
2026-07-30  4:10       ` Junio C Hamano
2026-07-30 11:57         ` Jeff King [this message]
2026-07-30 11:54       ` Jeff King

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=20260730115745.GB1871609@coredump.intra.peff.net \
    --to=peff@peff.net \
    --cc=git@vger.kernel.org \
    --cc=gitster@pobox.com \
    --cc=sandals@crustytoothpaste.net \
    /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