diff options
author | Daniel Dunbar <daniel@zuster.org> | 2010-06-04 18:28:36 +0000 |
---|---|---|
committer | Daniel Dunbar <daniel@zuster.org> | 2010-06-04 18:28:36 +0000 |
commit | 6e0f25483b1a801cd1155ea89c2b725feab16332 (patch) | |
tree | 16d040b11b883fe61c84972a9163bbf577b7d640 /lib/Driver/Tools.cpp | |
parent | df8b8ea3492a314488ffee72704665b22bc73989 (diff) |
Driver: Add an explicit dsymutil action.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@105474 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Driver/Tools.cpp')
-rw-r--r-- | lib/Driver/Tools.cpp | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/lib/Driver/Tools.cpp b/lib/Driver/Tools.cpp index 0d6cb30205..518debce93 100644 --- a/lib/Driver/Tools.cpp +++ b/lib/Driver/Tools.cpp @@ -2603,6 +2603,26 @@ void darwin::Lipo::ConstructJob(Compilation &C, const JobAction &JA, Dest.addCommand(new Command(JA, *this, Exec, CmdArgs)); } +void darwin::Dsymutil::ConstructJob(Compilation &C, const JobAction &JA, + Job &Dest, const InputInfo &Output, + const InputInfoList &Inputs, + const ArgList &Args, + const char *LinkingOutput) const { + ArgStringList CmdArgs; + + assert(Inputs.size() == 1 && "Unable to handle multiple inputs."); + const InputInfo &Input = Inputs[0]; + assert(Input.isFilename() && "Unexpected dsymutil input."); + CmdArgs.push_back(Input.getFilename()); + + CmdArgs.push_back("-o"); + CmdArgs.push_back(Output.getFilename()); + + const char *Exec = + Args.MakeArgString(getToolChain().GetProgramPath(C, "dsymutil")); + Dest.addCommand(new Command(JA, *this, Exec, CmdArgs)); +} + void auroraux::Assemble::ConstructJob(Compilation &C, const JobAction &JA, Job &Dest, const InputInfo &Output, const InputInfoList &Inputs, |