#ifndef LLVM_CLANG_LIB_DRIVER_TOOLCHAINS_DARWIN_H
#define LLVM_CLANG_LIB_DRIVER_TOOLCHAINS_DARWIN_H
#include "Cuda.h"
#include "LazyDetector.h"
#include "ROCm.h"
#include "clang/Basic/DarwinSDKInfo.h"
#include "clang/Basic/LangOptions.h"
#include "clang/Driver/Tool.h"
#include "clang/Driver/ToolChain.h"
#include "clang/Driver/XRayArgs.h"
namespace clang {
namespace driver {
namespace toolchains {
class MachO;
}
namespace tools {
namespace darwin {
llvm::Triple::ArchType getArchTypeForMachOArchName(StringRef Str);
void setTripleTypeForMachOArchName(llvm::Triple &T, StringRef Str,
const llvm::opt::ArgList &Args);
class LLVM_LIBRARY_VISIBILITY MachOTool : public Tool { … };
class LLVM_LIBRARY_VISIBILITY Assembler : public MachOTool { … };
class LLVM_LIBRARY_VISIBILITY Linker : public MachOTool { … };
class LLVM_LIBRARY_VISIBILITY StaticLibTool : public MachOTool { … };
class LLVM_LIBRARY_VISIBILITY Lipo : public MachOTool { … };
class LLVM_LIBRARY_VISIBILITY Dsymutil : public MachOTool { … };
class LLVM_LIBRARY_VISIBILITY VerifyDebug : public MachOTool { … };
}
}
namespace toolchains {
class LLVM_LIBRARY_VISIBILITY MachO : public ToolChain { … };
class LLVM_LIBRARY_VISIBILITY Darwin : public MachO { … };
class LLVM_LIBRARY_VISIBILITY DarwinClang : public Darwin { … };
}
}
}
#endif