[dotnet] Add an @executable_path rpath for the main executable.

This commit is contained in:
Rolf Bjarne Kvinge 2020-06-15 19:58:03 +02:00
Родитель 21e5c9acda
Коммит 085a74286b
1 изменённых файлов: 7 добавлений и 0 удалений

Просмотреть файл

@ -42,6 +42,7 @@ namespace Xamarin.MacDev.Tasks {
arguments.Add ("-isysroot");
arguments.Add (SdkRoot);
bool hasDylibs = false;
if (LinkWithLibraries != null) {
foreach (var libSpec in LinkWithLibraries) {
var lib = Path.GetFullPath (libSpec.ItemSpec);
@ -56,6 +57,7 @@ namespace Xamarin.MacDev.Tasks {
if (libName.StartsWith ("lib", StringComparison.Ordinal))
libName = libName.Substring (3);
arguments.Add ("-l" + libName);
hasDylibs = true;
break;
case ".framework":
arguments.Add ("-F" + Path.GetDirectoryName (lib));
@ -69,6 +71,11 @@ namespace Xamarin.MacDev.Tasks {
}
}
if (hasDylibs) {
arguments.Add ("-rpath");
arguments.Add ("@executable_path");
}
if (Frameworks != null) {
foreach (var fw in Frameworks) {
arguments.Add ("-framework");