<feed xmlns='http://www.w3.org/2005/Atom'>
<title>git/Makefile, branch v2.53.0</title>
<subtitle>Mirror of https://git.kernel.org/pub/scm/git/git.git/
</subtitle>
<id>https://git.shady.money/git/atom?h=v2.53.0</id>
<link rel='self' href='https://git.shady.money/git/atom?h=v2.53.0'/>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/'/>
<updated>2026-01-12T20:00:39Z</updated>
<entry>
<title>utf8.c: enable workaround for iconv under macOS 14/15</title>
<updated>2026-01-12T20:00:39Z</updated>
<author>
<name>Torsten Bögershausen</name>
<email>tboegi@web.de</email>
</author>
<published>2026-01-12T16:25:53Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=d28124151851e42a3bb92963f5b747ad843f33e0'/>
<id>urn:sha1:d28124151851e42a3bb92963f5b747ad843f33e0</id>
<content type='text'>
The previous commit introduced a workaround in utf8.c to deal
with broken iconv implementations.

It is enabled when a MacOS version is used that has a buggy
iconv library and there is no external library provided
(and linked against) from neither MacPorts nor Homebrew nor Fink.
For Homebrew, MacPorts and Fink we check if libiconv exist.
Introduce 2 new macros: HAS_GOOD_LIBICONV and NEEDS_GOOD_LIBICONV.

For Homebrew HAS_GOOD_LIBICONV is set when the libiconv directory
exist.
MacPorts can be installed with or without libiconv, so check if
libiconv.dylib exists (which is a softlink)

Fink compiles and installs libiconv by default.
Note that a fresh installation of Fink now defaults to /opt/sw.
Older versions used /sw as default, so leave the check and setting
of BASIC_CFLAGS and BASIC_LDFLAGS as is.
For the new default check for the existance of /opt/sw as well.
Add a check for /opt/sw/lib/libiconv.dylib which sets HAS_GOOD_LIBICONV

Signed-off-by: Torsten Bögershausen &lt;tboegi@web.de&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>Merge branch 'rs/macos-iconv-workaround'</title>
<updated>2026-01-06T07:33:52Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2026-01-06T07:33:52Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=b39aad0b0d8f4c6b12c7a057f0c6f3e0cce7c506'/>
<id>urn:sha1:b39aad0b0d8f4c6b12c7a057f0c6f3e0cce7c506</id>
<content type='text'>
Workaround the "iconv" shipped as part of macOS, which is broken
handling stateful ISO/IEC 2022 encoded strings.

* rs/macos-iconv-workaround:
  macOS: use iconv from Homebrew if needed and present
  macOS: make Homebrew use configurable
</content>
</entry>
<entry>
<title>macOS: use iconv from Homebrew if needed and present</title>
<updated>2025-12-25T07:43:10Z</updated>
<author>
<name>René Scharfe</name>
<email>l.s.r@web.de</email>
</author>
<published>2025-12-24T08:03:01Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=cee341e9ddb0b57e19f16c64b17caf68683faaeb'/>
<id>urn:sha1:cee341e9ddb0b57e19f16c64b17caf68683faaeb</id>
<content type='text'>
The library function iconv(3) supplied with macOS versions 15.7.2
(Sequoia) and 26.1 (Tahoe) is unreliable when doing conversions from
ISO-2022-JP to UTF-8 in multiple steps; t3900 reports this breakage:

  not ok 17 - ISO-2022-JP should be shown in UTF-8 now
  not ok 25 - ISO-2022-JP should be shown in UTF-8 now
  not ok 38 - commit --fixup into ISO-2022-JP from UTF-8

As a workaround, use libiconv from Homebrew, if available.  Search it in
its default locations: /opt/homebrew for Apple Silicon and /usr/local
for macOS Intel, with the former taking precedence.  Respect ICONVDIR if
already set by the user, though.

Helped-by: Koji Nakamaru &lt;koji.nakamaru@gree.net&gt;
Signed-off-by: René Scharfe &lt;l.s.r@web.de&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>macOS: make Homebrew use configurable</title>
<updated>2025-12-25T07:43:09Z</updated>
<author>
<name>René Scharfe</name>
<email>l.s.r@web.de</email>
</author>
<published>2025-12-24T08:02:45Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=363837afe75e7d6f6efd53775887dff67fb9e5d6'/>
<id>urn:sha1:363837afe75e7d6f6efd53775887dff67fb9e5d6</id>
<content type='text'>
On macOS we opportunistically use Homebrew-installed versions of
gettext(3) and msgfmt(1).  Make that behavior configurable by providing
make variables to disable Homebrew usage (NO_HOMEBREW) and to allow
using a non-default installation location (HOMEBREW_PREFIX).

Include and link only the gettext keg via the symlink opt/gettext
pointing to its installed version instead of using the Homebrew prefix.
This is simpler and prevents accidentally including other libraries.

Suggested-by: Carlo Marcelo Arenas Belón &lt;carenas@gmail.com&gt;
Suggested-by: Torsten Bögershausen &lt;tboegi@web.de&gt;
Signed-off-by: René Scharfe &lt;l.s.r@web.de&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>Merge branch 'jc/memzero-array'</title>
<updated>2025-12-23T02:33:16Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2025-12-23T02:33:16Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=86ebd83e6a78671624cf118e3a04d3afcfbe5df4'/>
<id>urn:sha1:86ebd83e6a78671624cf118e3a04d3afcfbe5df4</id>
<content type='text'>
Further application of MEMZERO_ARRAY() macro to the rest of the
code base.

* jc/memzero-array:
  cocci: use MEMZERO_ARRAY() a bit more
  coccicheck: emit the contents of cocci patch
</content>
</entry>
<entry>
<title>Merge branch 'tc/memzero-array'</title>
<updated>2025-12-23T02:33:16Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2025-12-23T02:33:16Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=396df67739bed1615e92071961e3e4d2bf378c16'/>
<id>urn:sha1:396df67739bed1615e92071961e3e4d2bf378c16</id>
<content type='text'>
MEMZERO_ARRAY() helper is introduced to avoid clearing only the
first N bytes of an N-element array whose elements are larger than
a byte.

* tc/memzero-array:
  contrib/coccinelle: pass include paths to spatch(1)
  git-compat-util: introduce MEMZERO_ARRAY() macro
</content>
</entry>
<entry>
<title>Merge branch 'jc/macports-darwinports'</title>
<updated>2025-12-22T05:57:48Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2025-12-22T05:57:48Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=448673412da4ee9887c1026c051598e45a300971'/>
<id>urn:sha1:448673412da4ee9887c1026c051598e45a300971</id>
<content type='text'>
Makefile in-comment doc update.

* jc/macports-darwinports:
  Makefile: help macOS novices by mentioning MacPorts
</content>
</entry>
<entry>
<title>Merge branch 'rs/ban-mktemp'</title>
<updated>2025-12-16T02:08:35Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2025-12-16T02:08:34Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=91bfbf49b6566d2b412d12240336027e351a631c'/>
<id>urn:sha1:91bfbf49b6566d2b412d12240336027e351a631c</id>
<content type='text'>
Rewrite the only use of "mktemp()" that is subject to TOCTOU race
and Stop using the insecure "mktemp()" function.

* rs/ban-mktemp:
  compat: remove gitmkdtemp()
  banned.h: ban mktemp(3)
  compat: remove mingw_mktemp()
  compat: use git_mkdtemp()
  wrapper: add git_mkdtemp()
</content>
</entry>
<entry>
<title>Merge branch 'ps/object-read-stream'</title>
<updated>2025-12-16T02:08:34Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2025-12-16T02:08:34Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=dbe54273a707406409fa386db5b105557b31a831'/>
<id>urn:sha1:dbe54273a707406409fa386db5b105557b31a831</id>
<content type='text'>
The "git_istream" abstraction has been revamped to make it easier
to interface with pluggable object database design.

* ps/object-read-stream:
  streaming: drop redundant type and size pointers
  streaming: move into object database subsystem
  streaming: refactor interface to be object-database-centric
  streaming: move logic to read packed objects streams into backend
  streaming: move logic to read loose objects streams into backend
  streaming: make the `odb_read_stream` definition public
  streaming: get rid of `the_repository`
  streaming: rely on object sources to create object stream
  packfile: introduce function to read object info from a store
  streaming: move zlib stream into backends
  streaming: create structure for filtered object streams
  streaming: create structure for packed object streams
  streaming: create structure for loose object streams
  streaming: create structure for in-core object streams
  streaming: allocate stream inside the backend-specific logic
  streaming: explicitly pass packfile info when streaming a packed object
  streaming: propagate final object type via the stream
  streaming: drop the `open()` callback function
  streaming: rename `git_istream` into `odb_read_stream`
</content>
</entry>
<entry>
<title>coccicheck: emit the contents of cocci patch</title>
<updated>2025-12-13T01:47:59Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2025-12-13T01:46:27Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=d2e4099968ca1cd6b31b0516cdbafa0520674a8e'/>
<id>urn:sha1:d2e4099968ca1cd6b31b0516cdbafa0520674a8e</id>
<content type='text'>
Telling the user "you got some error messages" without showing what
the errors are is almost useless in CI environment, as the errors
cannot be examined without downloading build artifacts.

Arrange it to spew out the output when it fails.

Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
</feed>
