DynamicSectionOptions.h revision 533eae20118036f425f27bf0536ef0ccbb090b65
1//===- DynamicSectionOptions.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_DYNAMIC_SECTION_OPTIONS_H 10#define MCLD_LDLITE_DYNAMIC_SECTION_OPTIONS_H 11#include <llvm/Support/CommandLine.h> 12#include <mcld/Support/CommandLine.h> 13#include <string> 14 15namespace mcld { 16 17class ZOption; 18class LinkerConfig; 19class LinkerScript; 20 21class DynamicSectionOptions 22{ 23public: 24 DynamicSectionOptions(); 25 26 bool parse(LinkerConfig& pConfig, LinkerScript& pScript); 27 28private: 29 llvm::cl::opt<std::string>& m_Entry; 30 llvm::cl::opt<bool>& m_Bsymbolic; 31 llvm::cl::opt<bool>& m_Bgroup; 32 llvm::cl::opt<std::string>& m_SOName; 33 llvm::cl::opt<llvm::cl::boolOrDefault>& m_NoUndefined; 34 llvm::cl::opt<llvm::cl::boolOrDefault>& m_AllowMulDefs; 35 llvm::cl::list<ZOption, 36 bool, 37 llvm::cl::parser<ZOption> >& m_ZOptionList; 38 llvm::cl::opt<std::string>& m_Dyld; 39 llvm::cl::opt<bool>& m_EnableNewDTags; 40 41 llvm::cl::list<std::string>& m_Auxiliary; 42 llvm::cl::opt<std::string>& m_Filter; 43}; 44 45} // namespace of mcld 46 47#endif 48 49