Skip to content

Commit e1d589e

Browse files
committed
gettext: use a GIT_LOCALE_PATH relative to $(prefix)
On Windows, we simply pass a POSIX path to bindtextdomain(), relying on the current libintl-8.dll implementation to handle that gracefully by resolving the path relative to the "root" directory inferred from the location of the .dll file itself. However, not only does this rely on the custom patches of the gettext library as shipped with MSYS2 (gettext's own source code is not prepared to handle POSIX paths on Windows), it also means that Git itself cannot use the `podir` variable at all because it does not handle absolute POSIX paths in system_path() correctly, leaving them as-is. This patch fixes that behavior by always using a GIT_LOCALE_PATH relative to the (runtime) prefix. Signed-off-by: Johannes Schindelin <[email protected]>
1 parent f8714a2 commit e1d589e

File tree

1 file changed

+3
-1
lines changed

1 file changed

+3
-1
lines changed

Makefile

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -482,6 +482,7 @@ lib = lib
482482
# DESTDIR =
483483
pathsep = :
484484

485+
localedir_relative = $(patsubst $(prefix)/%,%,$(localedir))
485486
mandir_relative = $(patsubst $(prefix)/%,%,$(mandir))
486487
infodir_relative = $(patsubst $(prefix)/%,%,$(infodir))
487488
htmldir_relative = $(patsubst $(prefix)/%,%,$(htmldir))
@@ -1714,6 +1715,7 @@ bindir_relative_SQ = $(subst ','\'',$(bindir_relative))
17141715
mandir_relative_SQ = $(subst ','\'',$(mandir_relative))
17151716
infodir_relative_SQ = $(subst ','\'',$(infodir_relative))
17161717
localedir_SQ = $(subst ','\'',$(localedir))
1718+
localedir_relative_SQ = $(subst ','\'',$(localedir_relative))
17171719
gitexecdir_SQ = $(subst ','\'',$(gitexecdir))
17181720
template_dir_SQ = $(subst ','\'',$(template_dir))
17191721
htmldir_relative_SQ = $(subst ','\'',$(htmldir_relative))
@@ -2147,7 +2149,7 @@ attr.sp attr.s attr.o: EXTRA_CPPFLAGS = \
21472149

21482150
gettext.sp gettext.s gettext.o: GIT-PREFIX
21492151
gettext.sp gettext.s gettext.o: EXTRA_CPPFLAGS = \
2150-
-DGIT_LOCALE_PATH='"$(localedir_SQ)"'
2152+
-DGIT_LOCALE_PATH='"$(localedir_relative_SQ)"'
21512153

21522154
http-push.sp http.sp http-walker.sp remote-curl.sp imap-send.sp: SPARSE_FLAGS += \
21532155
-DCURL_DISABLE_TYPECHECK

0 commit comments

Comments
 (0)