1 //===- OutputFormatCmd.cpp ------------------------------------------------===// 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 #include "mcld/Script/OutputFormatCmd.h" 10 #include "mcld/Support/raw_ostream.h" 11 12 namespace mcld { 13 14 //===----------------------------------------------------------------------===// 15 // OutputFormatCmd 16 //===----------------------------------------------------------------------===// 17 OutputFormatCmd::OutputFormatCmd(const std::string& pFormat) 18 : ScriptCommand(ScriptCommand::OUTPUT_FORMAT) { 19 m_FormatList.push_back(pFormat); 20 } 21 22 OutputFormatCmd::OutputFormatCmd(const std::string& pDefault, 23 const std::string& pBig, 24 const std::string& pLittle) 25 : ScriptCommand(ScriptCommand::OUTPUT_FORMAT) { 26 m_FormatList.push_back(pDefault); 27 m_FormatList.push_back(pBig); 28 m_FormatList.push_back(pLittle); 29 } 30 31 OutputFormatCmd::~OutputFormatCmd() { 32 } 33 34 void OutputFormatCmd::dump() const { 35 mcld::outs() << "OUTPUT_FORMAT ( "; 36 assert(m_FormatList.size() == 1 || m_FormatList.size() == 3); 37 for (size_t i = 0; i < m_FormatList.size(); ++i) { 38 if (i != 0) 39 mcld::outs() << " , "; 40 mcld::outs() << m_FormatList[i]; 41 } 42 mcld::outs() << " )\n"; 43 } 44 45 void OutputFormatCmd::activate(Module& pModule) { 46 // TODO 47 } 48 49 } // namespace mcld 50