Files
haikuports/dev-vcs/git/patches/git-2.52.0.patchset
2025-12-24 08:31:20 +01:00

272 lines
7.0 KiB
Plaintext

From b13d9ec2bf2d2401c49f061cd1c7b94d1ebb5386 Mon Sep 17 00:00:00 2001
From: Oscar Lesta <oscar.lesta@gmail.com>
Date: Thu, 7 Aug 2025 00:10:27 -0300
Subject: git-web--browse.sh: use "open" on Haiku
This is a squashed commit from previous ones from Ingo Weinhold and
Adrien Destugues.
diff --git a/git-web--browse.sh b/git-web--browse.sh
index ae15253..0f95000 100755
--- a/git-web--browse.sh
+++ b/git-web--browse.sh
@@ -133,6 +133,11 @@ if test -z "$browser" ; then
browser_candidates="cygstart $browser_candidates"
fi
+ # BEINCLUDES indicates Haiku
+ if test -n "$BEINCLUDES"; then
+ browser_candidates="open $browser_candidates"
+ fi
+
for i in $browser_candidates; do
init_browser_path $i
if type "$browser_path" > /dev/null 2>&1; then
--
2.50.1
From c9ef343a0724d893a976303843749104de1a30ef Mon Sep 17 00:00:00 2001
From: Ingo Weinhold <ingo_weinhold@gmx.de>
Date: Mon, 19 Jan 2015 15:37:16 -0500
Subject: On Haiku use the user settings directory instead of HOME
diff --git a/path.c b/path.c
index 7f56eaf..7f017de 100644
--- a/path.c
+++ b/path.c
@@ -19,6 +19,11 @@
#include "lockfile.h"
#include "exec-cmd.h"
+#ifdef __HAIKU__
+#include <FindDirectory.h>
+#include <StorageDefs.h>
+#endif
+
static int get_st_mode_bits(const char *path, int *mode)
{
struct stat st;
@@ -1641,11 +1646,19 @@ char *xdg_config_home_for(const char *subdir, const char *filename)
{
const char *home, *config_home;
+#ifdef __HAIKU__
+ char settingsPath[B_PATH_NAME_LENGTH];
+ assert(filename);
+ if (find_directory(B_USER_SETTINGS_DIRECTORY, -1, true, settingsPath,
+ sizeof(settingsPath)) == B_OK)
+ return mkpathdup("%s/git/%s", settingsPath, filename);
+#else
assert(subdir);
assert(filename);
config_home = getenv("XDG_CONFIG_HOME");
if (config_home && *config_home)
return mkpathdup("%s/%s/%s", config_home, subdir, filename);
+#endif
home = getenv("HOME");
if (home)
--
2.50.1
From 5a71b32a14defcda4aeb69447a71e5e89a028491 Mon Sep 17 00:00:00 2001
From: Oliver Tappe <zooey@hirschkaefer.de>
Date: Mon, 19 Jan 2015 15:50:09 -0500
Subject: Ensure config-directory exists before using it.
diff --git a/config.c b/config.c
index 97ffef4..6fa81af 100644
--- a/config.c
+++ b/config.c
@@ -2680,6 +2680,14 @@ int repo_config_set_multivar_in_file_gently(struct repository *r,
if (!config_filename)
config_filename = filename_buf = repo_git_path(r, "config");
+ if (find_last_dir_sep(config_filename) != NULL) {
+ char *config_dir = xstrdup(config_filename);
+ * find_last_dir_sep(config_dir) = '\0';
+ if (access(config_dir, F_OK) != 0)
+ mkdir(config_dir, 0755);
+ free(config_dir);
+ }
+
/*
* The lock serves a purpose in addition to locking: the new
* contents of .git/config will be written into it.
--
2.50.1
From 6d006ee7f5a3281c7a197a87c2327e2b105ba784 Mon Sep 17 00:00:00 2001
From: Adrien Destugues <pulkomandy@pulkomandy.tk>
Date: Sun, 14 Feb 2016 10:32:12 +0100
Subject: Move credential cache to the config directory.
Do not clutter the home dir.
diff --git a/builtin/credential-cache.c b/builtin/credential-cache.c
index 7f733cb..65319f5 100644
--- a/builtin/credential-cache.c
+++ b/builtin/credential-cache.c
@@ -121,7 +121,7 @@ static char *get_socket_path(void)
{
struct stat sb;
char *old_dir, *socket;
- old_dir = interpolate_path("~/.git-credential-cache", 0);
+ old_dir = xdg_config_home("credential-cache");
if (old_dir && !stat(old_dir, &sb) && S_ISDIR(sb.st_mode))
socket = xstrfmt("%s/socket", old_dir);
else
--
2.50.1
From 2c19b3447b1800b6c7c250192dccfff610aa984c Mon Sep 17 00:00:00 2001
From: Oscar Lesta <oscar.lesta@gmail.com>
Date: Fri, 24 May 2024 15:15:25 -0300
Subject: config: use "xdg_config" even if "user_config" does not exist
Based on the previous patch by: sfanxiang <sfanxiang@gmail.com>
diff --git a/config.c b/config.c
index 6fa81af..ef0ebf0 100644
--- a/config.c
+++ b/config.c
@@ -1466,18 +1466,12 @@ char *git_global_config(void)
char *user_config, *xdg_config;
git_global_config_paths(&user_config, &xdg_config);
- if (!user_config) {
- free(xdg_config);
- return NULL;
- }
-
- if (access_or_warn(user_config, R_OK, 0) && xdg_config &&
- !access_or_warn(xdg_config, R_OK, 0)) {
- free(user_config);
- return xdg_config;
- } else {
- free(xdg_config);
+ if (!xdg_config)
return user_config;
+ else {
+ if (user_config)
+ free(user_config);
+ return xdg_config;
}
}
--
2.50.1
From ca3fa0463a6fc9967f43ac6ec2ca7d1b5196cf1b Mon Sep 17 00:00:00 2001
From: Jerome Duval <jerome.duval@gmail.com>
Date: Fri, 29 Nov 2019 21:46:54 +0100
Subject: ignore test failures.
diff --git a/t/Makefile b/t/Makefile
index 757674e..98c5703 100644
--- a/t/Makefile
+++ b/t/Makefile
@@ -79,7 +79,7 @@ prove: pre-clean $(TEST_LINT)
$(MAKE) clean-except-prove-cache
$(T):
- @echo "*** $@ ***"; '$(TEST_SHELL_PATH_SQ)' $@ $(GIT_TEST_OPTS)
+ - @echo "*** $@ ***"; '$(TEST_SHELL_PATH_SQ)' $@ $(GIT_TEST_OPTS)
$(UNIT_TESTS):
@echo "*** $@ ***"; $@
--
2.50.1
From 29a490ca6a49254df9fdd711d938e160abe10d4a Mon Sep 17 00:00:00 2001
From: Augustin Cavalier <waddlesplash@gmail.com>
Date: Wed, 17 Nov 2021 18:11:17 -0500
Subject: git-gui: Use symbolic links.
diff --git a/git-gui/Makefile b/git-gui/Makefile
index 27bbe05..5dc7d03 100644
--- a/git-gui/Makefile
+++ b/git-gui/Makefile
@@ -54,7 +54,7 @@ INSTALL_R1 =
INSTALL_X0 = $(INSTALL) -m 755 # space is required here
INSTALL_X1 =
INSTALL_L0 = rm -f # space is required here
-INSTALL_L1 = && ln # space is required here
+INSTALL_L1 = && ln -s # space is required here
INSTALL_L2 =
INSTALL_L3 =
@@ -81,7 +81,7 @@ ifndef V
INSTALL_L0 = dst=
INSTALL_L1 = && src=
INSTALL_L2 = && dst=
- INSTALL_L3 = && echo ' ' 'LINK ' `basename "$$dst"` '->' `basename "$$src"` && rm -f "$$dst" && ln "$$src" "$$dst"
+ INSTALL_L3 = && echo ' ' 'LINK ' `basename "$$dst"` '->' `basename "$$src"` && rm -f "$$dst" && ln -s "$$src" "$$dst"
CLEAN_DST = echo ' ' UNINSTALL
REMOVE_D0 = dir=
--
2.50.1
From dc19431a9394cec46c2116040d6ca30d0e7ec47b Mon Sep 17 00:00:00 2001
From: Oscar Lesta <oscar.lesta@gmail.com>
Date: Fri, 28 Feb 2025 15:50:56 -0300
Subject: Workaround for HaikuPorts issue #11131.
diff --git a/gettext.c b/gettext.c
index 8d08a61..3664663 100644
--- a/gettext.c
+++ b/gettext.c
@@ -118,8 +118,13 @@ void git_setup_gettext(void)
}
bindtextdomain("git", podir);
+#ifdef __HAIKU__
+ // See HaikuPorts issue #11131
+ setlocale(LC_ALL, "");
+#else
setlocale(LC_MESSAGES, "");
setlocale(LC_TIME, "");
+#endif
init_gettext_charset("git");
textdomain("git");
--
2.50.1
From 87f6ef3916b644fb05b6b60374838c3c6da14768 Mon Sep 17 00:00:00 2001
From: Oscar Lesta <oscar.lesta@gmail.com>
Date: Wed, 6 Aug 2025 23:56:38 -0300
Subject: Use `python3` as hashbang for the generated gitweb.py.
diff --git a/git-instaweb.sh b/git-instaweb.sh
index 7b44f70..7da5219 100755
--- a/git-instaweb.sh
+++ b/git-instaweb.sh
@@ -615,7 +615,7 @@ python_conf() {
# This assumes that python is in user's $PATH
# This script is Python 2 and 3 compatible
cat > "$fqgitdir/gitweb/gitweb.py" <<EOF
-#!/usr/bin/env python
+#!python3
import os
import sys
--
2.50.1