Use haxelib libpath when searching for NDLLs.

We could fall back to `haxelib path` for very old versions of Haxelib, but most likely even people stuck on Haxe 3 have updated Haxelib.

Also, `haxelib path` gave incorrect results in the first place, so falling back wouldn't do any good.
This commit is contained in:
player-03
2024-05-16 17:40:49 -04:00
committed by GitHub
parent d2ea41570b
commit 3b115885f1

View File

@@ -207,39 +207,29 @@ class CFFI
private static function __findHaxelib(library:String):String private static function __findHaxelib(library:String):String
{ {
#if (sys && !macro && !html5) #if (sys && !macro && !html5)
var proc:Process;
try try
{ {
var proc = new Process("haxelib", ["path", library]); proc = new Process("haxelib", ["libpath", library]);
if (proc == null) return "";
} catch (e:Dynamic) {}
if (proc != null) var stream = proc.stdout;
{ var path:String = "";
var stream = proc.stdout;
try try
{ {
while (true) path = stream.readLine();
{ __loaderTrace("Found haxelib " + path);
var s = stream.readLine(); } catch (e:Dynamic) {}
if (s.substr(0, 1) != "-") stream.close();
{ proc.close();
stream.close();
proc.close();
__loaderTrace("Found haxelib " + s);
return s;
}
}
}
catch (e:Dynamic) {}
stream.close();
proc.close();
}
}
catch (e:Dynamic) {}
#end
return path;
#else
return ""; return "";
#end
} }
private static function __loaderTrace(message:String) private static function __loaderTrace(message:String)