let symdest = appbase </> shortlib
-- This is a hack; libraries need to be in the same
-- directory as the program, so also link them into the
- -- extra directory.
- let symdestextra = appbase </> "extra" </> shortlib
+ -- extra and git-core directories so programs in those will
+ -- find them.
+ let symdestextra =
+ [ appbase </> "extra" </> shortlib
+ , appbase </> "git-core" </> shortlib
+ ]
ifM (doesFileExist dest)
( return Nothing
, do
putStrLn $ "installing " ++ pathlib ++ " as " ++ shortlib
unlessM (boolSystem "cp" [File pathlib, File dest]
<&&> boolSystem "chmod" [Param "644", File dest]
- <&&> boolSystem "ln" [Param "-s", File fulllib, File symdest]
- <&&> boolSystem "ln" [Param "-s", File (".." </> fulllib), File symdestextra]) $
+ <&&> boolSystem "ln" [Param "-s", File fulllib, File symdest]) $
error "library install failed"
+ forM_ symdestextra $ \d ->
+ unlessM (boolSystem "ln" [Param "-s", File (".." </> fulllib), File d]) $
+ error "library linking failed"
return $ Just appbase
)
return (catMaybes libs, replacement_libs', libmap')
* 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.
- * OSX git-annex.app: Fix a regression that broke git-remote-https,
- git-remote-http, and git-shell.
+ * OSX git-annex.app: Fix a problem that prevented using the bundled
+ git-remote-https, git-remote-http, and git-shell.
-- Joey Hess <id@joeyh.name> Mon, 11 Nov 2019 15:59:47 -0400
--- /dev/null
+The OSX .dmg contains a few binaries in git-core like git-remote-http.
+They have been adjusted by otool to link to libraries in the same directory
+as the binary. However, the libraries are not located in the git-core
+directory, but in its parent directory, and so the git-core binaries don't
+link.
+
+I don't think this is a new regression, but not entirely sure.
+
+Seems that OSXMkLibs could symlink ../lib into git-core.
+--[[Joey]]
+
+> [[fixed|done]] --[[Joey]]