1 //===- TripleOptions.h ----------------------------------------------------===// 2 // 3 // The MCLinker Project 4 // 5 // This file is distributed under the University of Illinois Open Source 6 // License. See LICENSE.TXT for details. 7 // 8 //===----------------------------------------------------------------------===// 9 #ifndef MCLD_LDLITE_TRIPLE_OPTIONS_H 10 #define MCLD_LDLITE_TRIPLE_OPTIONS_H 11 #include <llvm/Support/CommandLine.h> 12 #include <string> 13 14 namespace mcld { 15 16 class LinkerConfig; 17 18 class TripleOptions 19 { 20 public: 21 TripleOptions(); 22 23 bool parse(int pArgc, char* pArgv[], LinkerConfig& pConfig); 24 25 private: 26 llvm::cl::opt<std::string>& m_TargetTriple; 27 llvm::cl::opt<std::string>& m_MArch; 28 llvm::cl::opt<std::string>& m_MCPU; 29 llvm::cl::list<std::string>& m_MAttrs; 30 llvm::cl::opt<std::string>& m_Emulation; 31 }; 32 33 } // namespace of mcld 34 35 #endif 36 37