From: Joey Hess Date: Tue, 15 Dec 2020 16:47:24 +0000 (-0400) Subject: OSXMkLibs: skip @loader_path X-Git-Tag: archive/raspbian/10.20250416-2+rpi1~2^2^2~76^2~330 X-Git-Url: https://dgit.raspbian.org/?a=commitdiff_plain;h=72ec7da41b0ef174286a261074b18eb5e572ea15;p=git-annex.git OSXMkLibs: skip @loader_path This may or may not make the OSX build work on a newer version of OSX than the one that's currently being used for release builds. I have not been able to find good docs about how exactly to get back from such a value to the actual path to the library that the linker would use. --- diff --git a/Build/OSXMkLibs.hs b/Build/OSXMkLibs.hs index 196650bae1..fed88de88c 100644 --- a/Build/OSXMkLibs.hs +++ b/Build/OSXMkLibs.hs @@ -34,10 +34,7 @@ type LibMap = M.Map FilePath String mklibs :: FilePath -> M.Map FilePath FilePath -> IO Bool mklibs appbase installedbins = do - usl <- getEnv "USE_SYSTEM_LIBS" - case usl of - Nothing -> mklibs' appbase installedbins [] [] M.empty - Just _ -> hPutStrLn stderr "dmg will use system libraries (USE_SYSTEM_LIBS)" + mklibs' appbase installedbins [] [] M.empty return True {- Recursively find and install libs, until nothing new to install is found. -} @@ -92,7 +89,12 @@ otool appbase installedbins replacement_libs libmap = do files <- filterM doesFileExist =<< dirContentsRecursive appbase process [] files replacement_libs libmap where - want s = not ("@executable_path" `isInfixOf` s) + want s = + -- This seems to be about finding libraries next + -- to executables or something. May need further resolving + -- to find real path to library, but for now, skip it. + not ("@executable_path" `isInfixOf` s) + && not ("@loader_path" `isInfixOf` s) -- OSX framekworks such as Cocoa are too tightly tied to -- a specific OSX version, so don't bundle. && not (".framework" `isInfixOf` s) diff --git a/Makefile b/Makefile index 5b6754cfae..dce3173a47 100644 --- a/Makefile +++ b/Makefile @@ -205,7 +205,6 @@ dpkg-buildpackage%: prep-standalone umask 022; dpkg-buildpackage -rfakeroot $* $(MAKE) undo-standalone -# Run this with USE_SYSTEM_LIBS=1 to build without bundling system libraries. OSXAPP_DEST=tmp/build-dmg/git-annex.app OSXAPP_TOP=$(OSXAPP_DEST)/Contents/MacOS/bundle osxapp: