mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2024-12-28 04:33:05 +00:00
Allow the user to set the LLVMINTERP environment variable as a workaround, for
when they have to run a gccld shell script without having lli in their path. This is intended to address Bug 289. Also, emit the traditional syntax ${1+"$@"} for passing all of a shell script's args to a subprocess. If you have arguments that have spaces in them, $* will not preserve the quoting (i.e., the quoted string "foo bar" as an argument will end up as two arguments "foo" "bar" to lli.) git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13414 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
e302a7eb43
commit
7532e34537
@ -309,7 +309,10 @@ int main(int argc, char **argv, char **envp) {
|
|||||||
if (!Out2.good())
|
if (!Out2.good())
|
||||||
return PrintAndReturn(argv[0], "error opening '" + OutputFilename +
|
return PrintAndReturn(argv[0], "error opening '" + OutputFilename +
|
||||||
"' for writing!");
|
"' for writing!");
|
||||||
Out2 << "#!/bin/sh\nlli \\\n";
|
Out2 << "#!/bin/sh\n";
|
||||||
|
// Allow user to setenv LLVMINTERP if lli is not in their PATH.
|
||||||
|
Out2 << "lli=${LLVMINTERP-lli}\n";
|
||||||
|
Out2 << "exec $lli \\\n";
|
||||||
// gcc accepts -l<lib> and implicitly searches /lib and /usr/lib.
|
// gcc accepts -l<lib> and implicitly searches /lib and /usr/lib.
|
||||||
LibPaths.push_back("/lib");
|
LibPaths.push_back("/lib");
|
||||||
LibPaths.push_back("/usr/lib");
|
LibPaths.push_back("/usr/lib");
|
||||||
@ -327,7 +330,7 @@ int main(int argc, char **argv, char **envp) {
|
|||||||
if (!FullLibraryPath.empty() && IsSharedObject(FullLibraryPath))
|
if (!FullLibraryPath.empty() && IsSharedObject(FullLibraryPath))
|
||||||
Out2 << " -load=" << FullLibraryPath << " \\\n";
|
Out2 << " -load=" << FullLibraryPath << " \\\n";
|
||||||
}
|
}
|
||||||
Out2 << " $0.bc $*\n";
|
Out2 << " $0.bc ${1+\"$@\"}\n";
|
||||||
Out2.close();
|
Out2.close();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user