summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJoey Hess <joeyh@joeyh.name>2019-11-14 15:08:23 -0400
committerJoey Hess <joeyh@joeyh.name>2019-11-14 15:08:23 -0400
commit842449b086fed21912606f48df9091ef286e9e82 (patch)
tree9e16146fd429752ad9e4400f20cd01e221695b49
parentdfd9f4e5a1dbdb994a64b959a7932a52118f1a1f (diff)
linuxstandalone: Fix a regression that broke git-remote-https.
-rw-r--r--Build/Standalone.hs26
-rw-r--r--CHANGELOG1
-rw-r--r--Makefile1
-rw-r--r--doc/bugs/regression__58___standalone_build_is_deficient_on_linux_after_7.20190819+git2-g908476a9b-1__126__ndall+1_some_time.mdwn2
-rw-r--r--doc/bugs/regression__58___standalone_build_is_deficient_on_linux_after_7.20190819+git2-g908476a9b-1__126__ndall+1_some_time/comment_1_1735409e62ce82f7ba7258b0167fda06._comment8
5 files changed, 29 insertions, 9 deletions
diff --git a/Build/Standalone.hs b/Build/Standalone.hs
index 6f1dab3690..e02e70a669 100644
--- a/Build/Standalone.hs
+++ b/Build/Standalone.hs
@@ -56,16 +56,24 @@ installGitLibs topdir = do
if issymlink
then do
-- many git-core files may symlink to eg
- -- ../../git. The link targets are put
- -- into a subdirectory so all links to
- -- .../git get the same binary.
+ -- ../../bin/git, which is located outside
+ -- the git-core directory. The target of
+ -- such links is installed into a bin
+ -- directory, and the links repointed to it.
+ --
+ -- Other git-core files symlink to a file
+ -- beside them in the directory. Those
+ -- links can be copied as-is.
linktarget <- readSymbolicLink f
- let linktarget' = gitcoredestdir </> "bin" </> takeFileName linktarget
- createDirectoryIfMissing True (takeDirectory linktarget')
- L.readFile f >>= L.writeFile linktarget'
- nukeFile destf
- rellinktarget <- relPathDirToFile (takeDirectory destf) linktarget'
- createSymbolicLink rellinktarget destf
+ if takeFileName linktarget == linktarget
+ then cp f destf
+ else do
+ let linktarget' = gitcoredestdir </> "bin" </> takeFileName linktarget
+ createDirectoryIfMissing True (takeDirectory linktarget')
+ L.readFile f >>= L.writeFile linktarget'
+ nukeFile destf
+ rellinktarget <- relPathDirToFile (takeDirectory destf) linktarget'
+ createSymbolicLink rellinktarget destf
else cp f destf
-- install git's template files
diff --git a/CHANGELOG b/CHANGELOG
index c6a628a6e0..f2d4fe15a3 100644
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -5,6 +5,7 @@ git-annex (7.20191107) UNRELEASED; urgency=medium
particularly url download errors.
* Fix a crash (STM deadlock) when -J is used with multiple files
that point to the same key.
+ * linuxstandalone: Fix a regression that broke git-remote-https.
-- Joey Hess <id@joeyh.name> Mon, 11 Nov 2019 15:59:47 -0400
diff --git a/Makefile b/Makefile
index 58b3f586cf..944437e790 100644
--- a/Makefile
+++ b/Makefile
@@ -166,6 +166,7 @@ linuxstandalone:
cp /usr/share/file/magic.mgc "$(LINUXSTANDALONE_DEST)/magic"
cp /usr/share/i18n -a "$(LINUXSTANDALONE_DEST)"
+ read me
./Build/LinuxMkLibs "$(LINUXSTANDALONE_DEST)"
$(MAKE) install-mans DESTDIR="$(LINUXSTANDALONE_DEST)"
diff --git a/doc/bugs/regression__58___standalone_build_is_deficient_on_linux_after_7.20190819+git2-g908476a9b-1__126__ndall+1_some_time.mdwn b/doc/bugs/regression__58___standalone_build_is_deficient_on_linux_after_7.20190819+git2-g908476a9b-1__126__ndall+1_some_time.mdwn
index acdcb73e8d..9ec6964e7b 100644
--- a/doc/bugs/regression__58___standalone_build_is_deficient_on_linux_after_7.20190819+git2-g908476a9b-1__126__ndall+1_some_time.mdwn
+++ b/doc/bugs/regression__58___standalone_build_is_deficient_on_linux_after_7.20190819+git2-g908476a9b-1__126__ndall+1_some_time.mdwn
@@ -75,3 +75,5 @@ Unfortunately in datalad we had no test testing cloning over https, so I added s
[[!meta author=yoh]]
[[!tag projects/datalad]]
+
+> [[fixed|done]] --[[Joey]]
diff --git a/doc/bugs/regression__58___standalone_build_is_deficient_on_linux_after_7.20190819+git2-g908476a9b-1__126__ndall+1_some_time/comment_1_1735409e62ce82f7ba7258b0167fda06._comment b/doc/bugs/regression__58___standalone_build_is_deficient_on_linux_after_7.20190819+git2-g908476a9b-1__126__ndall+1_some_time/comment_1_1735409e62ce82f7ba7258b0167fda06._comment
new file mode 100644
index 0000000000..1c80ed5ecb
--- /dev/null
+++ b/doc/bugs/regression__58___standalone_build_is_deficient_on_linux_after_7.20190819+git2-g908476a9b-1__126__ndall+1_some_time/comment_1_1735409e62ce82f7ba7258b0167fda06._comment
@@ -0,0 +1,8 @@
+[[!comment format=mdwn
+ username="joey"
+ subject="""comment 1"""
+ date="2019-11-14T18:14:35Z"
+ content="""
+It will either be caused by 5463f97ca216cd261f7a1da08aa8a62cef415a71 or by
+a new version of git reorging files (or both).
+"""]]