git: add recipe for version 2.42.0 (#9569)

Include bash-completion and prompt scripts.

Also: remove old 2.30.0 recipe.
This commit is contained in:
OscarL
2023-10-09 15:10:35 -03:00
committed by GitHub
parent 76c3cfbb2c
commit d37d1e06ce
3 changed files with 389 additions and 305 deletions

View File

@@ -1,274 +0,0 @@
SUMMARY="Fast, scalable, distributed revision control system"
DESCRIPTION="Git is a free and open source distributed version control system \
designed to handle everything from small to very large projects with speed \
and efficiency.
Git is easy to learn and has a tiny footprint with lightning fast performance. \
It outclasses SCM tools like Subversion, CVS, Perforce, and ClearCase with \
features like cheap local branching, convenient staging areas, and multiple \
workflows."
HOMEPAGE="https://git-scm.com/"
COPYRIGHT="2005-2020 Git Authors (see git web site for list)"
LICENSE="GNU GPL v2"
REVISION="4"
SOURCE_URI="https://www.kernel.org/pub/software/scm/git/git-$portVersion.tar.xz"
CHECKSUM_SHA256="55735021109565721af805af382c45cce73c3cfaa59daad22443d1477d334d19"
SOURCE_URI_2="https://www.kernel.org/pub/software/scm/git/git-manpages-$portVersion.tar.xz"
CHECKSUM_SHA256_2="7b2b8405d5bdd149e3891617053de37f7e8d5a5b3834317a5af9f30ccc93cf76"
SOURCE_URI_3="https://www.kernel.org/pub/software/scm/git/git-htmldocs-$portVersion.tar.xz"
CHECKSUM_SHA256_3="820132c62ade3df12b4178857cfc5c92276b847b2307a5f7f4d24c27774f962f"
PATCHES="git-$portVersion.patchset"
ARCHITECTURES="all"
GLOBAL_WRITABLE_FILES="
settings/gitconfig keep-old
"
USER_SETTINGS_FILES="
settings/git directory
"
PROVIDES="
git = $portVersion compat >= 2.3
cmd:git = $portVersion compat >= 2.3
cmd:git_receive_pack = $portVersion compat >= 2.3
cmd:git_shell = $portVersion compat >= 2.3
cmd:git_upload_archive = $portVersion compat >= 2.3
cmd:git_upload_pack = $portVersion compat >= 2.3
"
PROVIDES_arch="
git_arch = $portVersion compat >= 2.3
cmd:git_archimport = $portVersion compat >= 2.3
"
PROVIDES_cvs="
git_cvs = $portVersion compat >= 2.3
cmd:git_cvsimport = $portVersion compat >= 2.3
cmd:git_cvsserver = $portVersion compat >= 2.3
"
PROVIDES_daemon="
git_daemon = $portVersion compat >= 2.3
cmd:git_daemon = $portVersion compat >= 2.3
"
PROVIDES_email="
git_email = $portVersion compat >= 2.3
cmd:git_send_email = $portVersion compat >= 2.3
"
PROVIDES_source="
git_source = $portVersion compat >= 2.3
"
PROVIDES_svn="
git_svn = $portVersion compat >= 2.3
cmd:git_svn = $portVersion compat >= 2.3
"
REQUIRES="
haiku
cmd:man
cmd:nano
cmd:perl >= 5
cmd:python
lib:libcurl
lib:libexpat
lib:libiconv
lib:libintl
lib:libpcre2_8
lib:libnghttp2
lib:libssl
lib:libz
vendor_perl
"
REQUIRES_arch="
haiku
git == $portVersion base
"
REQUIRES_cvs="
haiku
git == $portVersion base
cmd:cvsps
"
REQUIRES_daemon="
haiku
lib:libcrypto
lib:libiconv
lib:libintl
lib:libpcre2_8
lib:libz
git == $portVersion base
"
REQUIRES_email="
haiku
git == $portVersion base
"
REQUIRES_svn="
haiku
alien_svn
git == $portVersion base
"
BUILD_REQUIRES="
haiku_devel
cmd:cmp
cmd:man
cmd:nano
cmd:perl
devel:libcurl
devel:libexpat
devel:libiconv
devel:libintl
devel:libnghttp2
devel:libpcre2_8
devel:libssl
devel:libz
"
BUILD_PREREQUIRES="
cmd:find
cmd:gcc
cmd:gettext
cmd:ld
cmd:make
cmd:msgfmt
cmd:sed
cmd:tar
"
TEST_REQUIRES="
cmd:diff
cmd:gawk
"
makeGit()
{
make prefix=$prefix \
bindir_relative=$relativeBinDir \
mandir=$manDir \
infodir=$infoDir \
gitexecdir=$libDir/git-core \
sharedir=$dataDir \
template_dir=$dataDir/git-core/templates \
htmldir=$docDir \
sysconfdir=$sysconfDir \
PTHREAD_LIBS= \
USE_LIBPCRE2=YesPlease \
NO_D_TYPE_IN_DIRENT=YesPlease \
NO_MEMMEM=YesPlease \
NO_MKSTEMPS=YesPlease \
NEEDS_LIBICONV=YesPlease \
NO_R_TO_GCC_LINKER=YesPlease \
GNU_ROFF=YesPlease \
PERL_PATH=/bin/perl \
NO_PYTHON=YesPlease \
NO_TCLTK=YesPlease \
OBJECT_CREATION_USES_RENAMES=YesPlease \
NO_CROSS_DIRECTORY_HARDLINKS=YesPlease \
NO_INSTALL_HARDLINKS=YesPlease \
HAVE_DEV_TTY=YesPlease \
DEFAULT_EDITOR=nano \
DEFAULT_HELP_FORMAT=web \
BASIC_LDFLAGS="-lnetwork -lbsd" \
CPPFLAGS="-D_POSIX_THREAD_SAFE_FUNCTIONS" \
"$@"
}
BUILD()
{
makeGit $jobArgs
makeGit strip
}
INSTALL()
{
makeGit install
# copy manpages
mkdir -p $manDir
cp -rd $sourceDir2/* $manDir/
# copy html documentation
htmlDir=$docDir
mkdir -p $htmlDir
cp -rd $sourceDir3/*.html $htmlDir/
rm $htmlDir/git-gui.html
# Default system-wide gitconfig. Settings in this file are only used
# if they are unset both for the repository and globally (global options
# are saved in the user settings file).
# core.untrackedCache caches enumeration of untracked files and uses an
# efficient method of determining whether the cache is out of date. This
# is filesystem-dependent, but supported on BeFS.
mkdir -p $sysconfDir
printf "[core]\n untrackedCache = true" > $sysconfDir/gitconfig
# replace copies of git binaries with symlinks
cd $binDir
for program in git*; do
ln -sfn "../lib/git-core/$program" "$program"
done
packageEntries arch \
documentation/packages/git/git-archimport.html \
documentation/man/man1/git-archimport.1 \
lib/git-core/git-archimport
packageEntries cvs \
bin/git-cvsserver \
documentation/packages/git/git-cvsexportcommit.html \
documentation/packages/git/git-cvsimport.html \
documentation/packages/git/git-cvsserver.html \
documentation/man/man1/git-cvsexportcommit.1 \
documentation/man/man1/git-cvsimport.1 \
documentation/man/man1/git-cvsserver.1 \
documentation/man/man7/gitcvs-migration.7 \
lib/git-core/git-cvsexportcommit \
lib/git-core/git-cvsimport \
lib/git-core/git-cvsserver
packageEntries daemon \
documentation/packages/git/git-credential-cache--daemon.html \
documentation/packages/git/git-credential-cache.html \
documentation/packages/git/git-daemon.html \
documentation/man/man1/git-credential-cache--daemon.1 \
documentation/man/man1/git-credential-cache.1 \
documentation/man/man1/git-daemon.1 \
lib/git-core/git-credential-cache--daemon \
lib/git-core/git-credential-cache \
lib/git-core/git-daemon
packageEntries email \
documentation/packages/git/git-send-email.html \
documentation/man/man1/git-send-email.1 \
lib/git-core/git-send-email
packageEntries svn \
documentation/packages/git/git-svn.html \
documentation/man/man1/git-svn.1 \
lib/git-core/git-svn
}
TEST()
{
# x86_64
#failed test(s): t0005 t0006 t0210 t0211 t0301 t0302 t1060 t1100 t1300 t1306 t1308 t1309 t2400 t3903 t5000 t5300 t5506 t5521 t5562 t5604 t5605 t5702 t5814 t7060 t7300 t7415 t7701 t7800 t9300
#fixed 1
#success 21670
#failed 78
#broken 236
#total 22417
# x86_gcc2
#failed test(s): t0005 t0006 t0210 t0211 t0301 t0302 t1060 t1100 t1300 t1306 t1308 t1309 t2400 t3903 t4014 t5150 t5300 t5400 t5516 t5528 t5531 t5562 t5604 t5605 t5702 t5814 t6430 t7060 t7300 t7409 t7415 t7701 t7800 t9300
#fixed 1
#success 21651
#failed 90
#broken 236
#total 22417
cat << DONE
!!Make sure to configure the debug_server in \
~/config/settings/system/debug_server/settings:
executable_actions {
/sources/git-* kill
}
DONE
makeGit test
}

View File

@@ -0,0 +1,326 @@
SUMMARY="Fast, scalable, distributed revision control system"
DESCRIPTION="Git is a free and open source distributed version control system \
designed to handle everything from small to very large projects with speed \
and efficiency.
Git is easy to learn and has a tiny footprint with lightning fast performance. \
It outclasses SCM tools like Subversion, CVS, Perforce, and ClearCase with \
features like cheap local branching, convenient staging areas, and multiple \
workflows."
HOMEPAGE="https://git-scm.com/"
COPYRIGHT="2005-2023 Git Authors (see git web site for list)"
LICENSE="GNU GPL v2"
REVISION="1"
SOURCE_URI="https://www.kernel.org/pub/software/scm/git/git-$portVersion.tar.xz"
CHECKSUM_SHA256="3278210e9fd2994b8484dd7e3ddd9ea8b940ef52170cdb606daa94d887c93b0d"
SOURCE_URI_2="https://www.kernel.org/pub/software/scm/git/git-manpages-$portVersion.tar.xz"
CHECKSUM_SHA256_2="03e0dc60a077ad31b10119e6619af8b50e652bd5c8a95c891523d73af1e573b9"
SOURCE_URI_3="https://www.kernel.org/pub/software/scm/git/git-htmldocs-$portVersion.tar.xz"
CHECKSUM_SHA256_3="c027ad23614d19685677899527360985ec9186e97528084dc4f8d611f6c3483f"
PATCHES="git-$portVersion.patchset"
ARCHITECTURES="all !x86_gcc2"
SECONDARY_ARCHITECTURES="x86"
GLOBAL_WRITABLE_FILES="
settings/etc/profile.d/git-completion.sh keep-old
settings/etc/profile.d/git-prompt.sh keep-old
settings/gitconfig keep-old
"
USER_SETTINGS_FILES="
settings/git directory
"
portVersionCompat="$portVersion compat >= 2.3"
PROVIDES="
git$secondaryArchSuffix = $portVersionCompat
cmd:git = $portVersionCompat
cmd:git_receive_pack = $portVersionCompat
cmd:git_shell = $portVersionCompat
cmd:git_upload_archive = $portVersionCompat
cmd:git_upload_pack = $portVersionCompat
"
if [ "$targetArchitecture" = x86_gcc2 ]; then
REPLACES="
git
"
fi
PROVIDES_arch="
git${secondaryArchSuffix}_arch = $portVersionCompat
cmd:git_archimport = $portVersionCompat
"
PROVIDES_cvs="
git${secondaryArchSuffix}_cvs = $portVersionCompat
cmd:git_cvsimport = $portVersionCompat
cmd:git_cvsserver = $portVersionCompat
"
PROVIDES_daemon="
git${secondaryArchSuffix}_daemon = $portVersionCompat
cmd:git_daemon = $portVersionCompat
"
PROVIDES_email="
git${secondaryArchSuffix}_email = $portVersionCompat
cmd:git_send_email = $portVersionCompat
"
PROVIDES_gui="
git${secondaryArchSuffix}_gui = $portVersionCompat
cmd:git_gui = $portVersionCompat
cmd:gitk = $portVersionCompat
"
PROVIDES_scalar="
git${secondaryArchSuffix}_scalar = $portVersionCompat
cmd:scalar = $portVersionCompat
"
PROVIDES_source="
git${secondaryArchSuffix}_source = $portVersionCompat
"
PROVIDES_svn="
git${secondaryArchSuffix}_svn = $portVersionCompat
cmd:git_svn = $portVersionCompat
"
if [ "$targetArchitecture" = x86_gcc2 ]; then
for pkg in arch cvs daemon email gui scalar source svn; do eval "REPLACES_${pkg}=git_${pkg}"; done
fi
REQUIRES="
haiku$secondaryArchSuffix
cmd:man
cmd:nano
cmd:perl >= 5
lib:libcurl$secondaryArchSuffix
lib:libexpat$secondaryArchSuffix
lib:libiconv$secondaryArchSuffix
lib:libintl$secondaryArchSuffix
lib:libpcre2_8$secondaryArchSuffix
lib:libnghttp2$secondaryArchSuffix
lib:libssl$secondaryArchSuffix
lib:libz$secondaryArchSuffix
vendor_perl
"
REQUIRES_arch="
haiku$secondaryArchSuffix
git$secondaryArchSuffix == $portVersion base
"
REQUIRES_cvs="
haiku$secondaryArchSuffix
git$secondaryArchSuffix == $portVersion base
cmd:cvsps
"
REQUIRES_daemon="
haiku$secondaryArchSuffix
lib:libcrypto$secondaryArchSuffix
lib:libiconv$secondaryArchSuffix
lib:libintl$secondaryArchSuffix
lib:libpcre2_8$secondaryArchSuffix
lib:libz$secondaryArchSuffix
git$secondaryArchSuffix == $portVersion base
"
REQUIRES_email="
haiku$secondaryArchSuffix
git$secondaryArchSuffix == $portVersion base
"
REQUIRES_gui="
haiku$secondaryArchSuffix
git$secondaryArchSuffix == $portVersion base
cmd:wish
"
REQUIRES_scalar="
haiku$secondaryArchSuffix
lib:libiconv$secondaryArchSuffix
lib:libintl$secondaryArchSuffix
lib:libpcre2_8$secondaryArchSuffix
lib:libz$secondaryArchSuffix
git$secondaryArchSuffix == $portVersion base
"
REQUIRES_svn="
haiku$secondaryArchSuffix
alien_svn
git$secondaryArchSuffix == $portVersion base
"
BUILD_REQUIRES="
haiku${secondaryArchSuffix}_devel
cmd:cmp
cmd:man
cmd:nano
cmd:perl
devel:libcurl$secondaryArchSuffix
devel:libexpat$secondaryArchSuffix
devel:libiconv$secondaryArchSuffix
devel:libintl$secondaryArchSuffix
devel:libnghttp2$secondaryArchSuffix
devel:libpcre2_8$secondaryArchSuffix
devel:libssl$secondaryArchSuffix
devel:libz$secondaryArchSuffix
"
BUILD_PREREQUIRES="
cmd:find
cmd:gcc$secondaryArchSuffix
cmd:gettext
cmd:ld$secondaryArchSuffix
cmd:make
cmd:msgfmt
cmd:sed
cmd:tar
"
TEST_REQUIRES="
cmd:diff
cmd:gawk
"
makeGit()
{
make prefix=$prefix \
bindir_relative=$relativeBinDir \
mandir=$manDir \
infodir=$infoDir \
gitexecdir=$libDir/git-core \
sharedir=$dataDir \
template_dir=$dataDir/git-core/templates \
htmldir=$docDir \
sysconfdir=$sysconfDir \
PTHREAD_LIBS= \
USE_LIBPCRE2=YesPlease \
NO_D_TYPE_IN_DIRENT=YesPlease \
NO_MEMMEM=YesPlease \
NO_MKSTEMPS=YesPlease \
NEEDS_LIBICONV=YesPlease \
NO_R_TO_GCC_LINKER=YesPlease \
GNU_ROFF=YesPlease \
PERL_PATH=/bin/perl \
NO_PYTHON=YesPlease \
OBJECT_CREATION_USES_RENAMES=YesPlease \
NO_CROSS_DIRECTORY_HARDLINKS=YesPlease \
NO_INSTALL_HARDLINKS=YesPlease \
HAVE_DEV_TTY=YesPlease \
DEFAULT_EDITOR=nano \
DEFAULT_HELP_FORMAT=web \
BASIC_LDFLAGS="-lnetwork -lbsd" \
CPPFLAGS="-D_POSIX_THREAD_SAFE_FUNCTIONS" \
"$@"
}
BUILD()
{
makeGit $jobArgs
makeGit strip
}
INSTALL()
{
makeGit install
# copy manpages
mkdir -p $manDir
cp -rd $sourceDir2/* $manDir/
# copy html documentation
htmlDir=$docDir
mkdir -p $htmlDir
cp -rd $sourceDir3/*.html $htmlDir/
# copy bash-completions and prompt scripts
profileDir=$settingsDir/etc/profile.d
mkdir -p $profileDir
cp $sourceDir/contrib/completion/git-completion.bash $profileDir/git-completion.sh
cp $sourceDir/contrib/completion/git-prompt.sh $profileDir
# Default system-wide gitconfig. Settings in this file are only used
# if they are unset both for the repository and globally (global options
# are saved in the user settings file).
# core.untrackedCache caches enumeration of untracked files and uses an
# efficient method of determining whether the cache is out of date. This
# is filesystem-dependent, but supported on BeFS.
mkdir -p $sysconfDir
printf "[core]\n untrackedCache = true" > $sysconfDir/gitconfig
# replace copies of git binaries with symlinks
cd $prefix/bin
for program in git*; do
if [ $program = "gitk" ]; then
continue
fi
ln -sfn "$libDir/git-core/$program" "$program"
done
ln -sfn "$libDir/git-core/scalar" "scalar"
packageEntries arch \
$docDir/git-archimport.html \
$manDir/man1/git-archimport.1 \
$libDir/git-core/git-archimport
packageEntries cvs \
$prefix/bin/git-cvsserver \
$docDir/git-cvsexportcommit.html \
$docDir/git-cvsimport.html \
$docDir/git-cvsserver.html \
$manDir/man1/git-cvsexportcommit.1 \
$manDir/man1/git-cvsimport.1 \
$manDir/man1/git-cvsserver.1 \
$manDir/man7/gitcvs-migration.7 \
$libDir/git-core/git-cvsexportcommit \
$libDir/git-core/git-cvsimport \
$libDir/git-core/git-cvsserver
packageEntries daemon \
$docDir/git-credential-cache--daemon.html \
$docDir/git-credential-cache.html \
$docDir/git-daemon.html \
$manDir/man1/git-credential-cache--daemon.1 \
$manDir/man1/git-credential-cache.1 \
$manDir/man1/git-daemon.1 \
$libDir/git-core/git-credential-cache--daemon \
$libDir/git-core/git-credential-cache \
$libDir/git-core/git-daemon
packageEntries email \
$docDir/git-send-email.html \
$manDir/man1/git-send-email.1 \
$libDir/git-core/git-send-email
packageEntries gui \
$docDir/git-gui.html \
$docDir/gitk.html \
$manDir/man1/git-gui.1 \
$manDir/man1/gitk.1 \
$dataDir/gitk \
$dataDir/git-gui \
$libDir/git-core/git-gui \
$libDir/git-core/git-gui--askpass \
$libDir/git-core/git-citool \
$prefix/bin/gitk
packageEntries scalar \
$docDir/scalar.html \
$manDir/man1/scalar.1 \
$libDir/git-core/scalar \
$prefix/bin/scalar
packageEntries svn \
$docDir/git-svn.html \
$manDir/man1/git-svn.1 \
$libDir/git-core/git-svn
}
TEST()
{
# Version 2.42.0 results on 32 bits (x86), after around 4 hours:
#failed test(s): t0005 t0006 t0007 t0061 t0210 t0211 t0301 t0302 t0410 t1060 t1300 t1305 t1306 t1308 t1309 t1419 t1800 t2400 t3600 t3903 t5300 t5351 t5531 t5604 t5605 t5616 t5702 t5730 t5810 t5814 t7060 t7300 t7408 t7450 t7701 t7900 t9210
#fixed 1
#success 27429
#failed 103
#broken 265
#total 28402
cat << DONE
!!Make sure to configure the debug_server in \
~/config/settings/system/debug_server/settings:
executable_actions {
/sources/git-* kill
}
DONE
makeGit test
}

View File

@@ -1,4 +1,4 @@
From f1fc231c2e257a644cacd9a9f6311ea59b8f178d Mon Sep 17 00:00:00 2001
From f848ea5b273e070c22dd5d9659180b28eab55cc6 Mon Sep 17 00:00:00 2001
From: Ingo Weinhold <ingo_weinhold@gmx.de>
Date: Tue, 13 Aug 2013 08:07:25 +0200
Subject: git-web--browse.sh: use "open" on Haiku
@@ -21,22 +21,22 @@ index ae15253..b074d1a 100755
init_browser_path $i
if type "$browser_path" > /dev/null 2>&1; then
--
2.30.0
2.37.3
From bfb2c3b810c8235348c02afb82dbd8253058270d Mon Sep 17 00:00:00 2001
From 3d173515b72bbb12fbbbb7a28ca76eaffad6eccf 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 7b385e5..f0669d6 100644
index 67e2690..95d98f3 100644
--- a/path.c
+++ b/path.c
@@ -13,6 +13,11 @@
#include "object-store.h"
@@ -19,6 +19,11 @@
#include "lockfile.h"
#include "exec-cmd.h"
+#ifdef __HAIKU__
+#include <FindDirectory.h>
@@ -46,7 +46,7 @@ index 7b385e5..f0669d6 100644
static int get_st_mode_bits(const char *path, int *mode)
{
struct stat st;
@@ -1502,10 +1507,19 @@ char *xdg_config_home(const char *filename)
@@ -1550,11 +1555,19 @@ char *xdg_config_home_for(const char *subdir, const char *filename)
{
const char *home, *config_home;
@@ -57,30 +57,30 @@ index 7b385e5..f0669d6 100644
+ 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/git/%s", config_home, filename);
return mkpathdup("%s/%s/%s", config_home, subdir, filename);
+#endif
home = getenv("HOME");
if (home)
--
2.30.0
2.37.3
From 1a25c7c85ac35a748b8bccb64862f2c0c88f92e5 Mon Sep 17 00:00:00 2001
From 37020c1d335aad247c188108ec4083dc44dc239c 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 1137bd7..14cd935 100644
index 3846a37..301ad6c 100644
--- a/config.c
+++ b/config.c
@@ -2777,6 +2777,14 @@ int git_config_set_multivar_in_file_gently(const char *config_filename,
@@ -3342,6 +3342,14 @@ int git_config_set_multivar_in_file_gently(const char *config_filename,
if (!config_filename)
config_filename = filename_buf = git_pathdup("config");
@@ -96,10 +96,10 @@ index 1137bd7..14cd935 100644
* The lock serves a purpose in addition to locking: the new
* contents of .git/config will be written into it.
--
2.30.0
2.37.3
From b4d5770706a101133ca8b32350c39e8bd3c133e6 Mon Sep 17 00:00:00 2001
From 9086bb3a2e3d8083b60a94204e4db3f7df8ad742 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.
@@ -107,36 +107,36 @@ 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 9b3f709..893db81 100644
index 43b9d0e..9e8be52 100644
--- a/builtin/credential-cache.c
+++ b/builtin/credential-cache.c
@@ -90,7 +90,7 @@ static char *get_socket_path(void)
@@ -120,7 +120,7 @@ static char *get_socket_path(void)
{
struct stat sb;
char *old_dir, *socket;
- old_dir = expand_user_path("~/.git-credential-cache", 0);
- 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.30.0
2.37.3
From 9460278c9eeefb9400ed24b214da394e7310eb51 Mon Sep 17 00:00:00 2001
From e9e1546f40bf9bab2158b83aa553440ab91407a0 Mon Sep 17 00:00:00 2001
From: sfanxiang <sfanxiang@gmail.com>
Date: Mon, 1 Jan 2018 13:26:28 +0000
Subject: builtin: config: use xdg_config even if it does not exist
diff --git a/builtin/config.c b/builtin/config.c
index f71fa39..0843a19 100644
index 11a4d4e..67dc39d 100644
--- a/builtin/config.c
+++ b/builtin/config.c
@@ -674,24 +674,11 @@ int cmd_config(int argc, const char **argv, const char *prefix)
char *user_config = expand_user_path("~/.gitconfig", 0);
char *xdg_config = xdg_config_home("config");
@@ -711,24 +711,11 @@ int cmd_config(int argc, const char **argv, const char *prefix)
char *user_config, *xdg_config;
git_global_config(&user_config, &xdg_config);
- if (!user_config)
- /*
- * It is unknown if HOME/.gitconfig exists, so
@@ -163,10 +163,10 @@ index f71fa39..0843a19 100644
}
else if (use_system_config) {
--
2.30.0
2.37.3
From b8d68d0d6336135fdc4c37351c369b4c5c90197c Mon Sep 17 00:00:00 2001
From 2c82a2f2ea5a11d8265af1dec9ac803e7fbecd2b Mon Sep 17 00:00:00 2001
From: Adrien Destugues <pulkomandy@pulkomandy.tk>
Date: Sun, 18 Nov 2018 11:56:26 +0100
Subject: Fix detection of Haiku for git web browse
@@ -190,20 +190,20 @@ index b074d1a..0f95000 100755
fi
--
2.30.0
2.37.3
From 3e184bad49786c265d2826bb5c34986ed2f2e483 Mon Sep 17 00:00:00 2001
From 4987ee3ec76af0db865e0899a315d9403b3d1657 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 882d26e..3252f7f 100644
index 3e00cdd..8b27e50 100644
--- a/t/Makefile
+++ b/t/Makefile
@@ -54,7 +54,7 @@ prove: pre-clean check-chainlint $(TEST_LINT)
@@ -63,7 +63,7 @@ prove: pre-clean check-chainlint $(TEST_LINT)
$(MAKE) clean-except-prove-cache
$(T):
@@ -213,5 +213,37 @@ index 882d26e..3252f7f 100644
pre-clean:
$(RM) -r '$(TEST_RESULTS_DIRECTORY_SQ)'
--
2.30.0
2.37.3
From 1683665e2a7192afce292530e7259f37acd02ea2 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 a0d5a4b..b00a622 100644
--- a/git-gui/Makefile
+++ b/git-gui/Makefile
@@ -59,7 +59,7 @@ INSTALL_X1 =
INSTALL_A0 = find # space is required here
INSTALL_A1 = | cpio -pud
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 =
@@ -89,7 +89,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.37.3