• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 //===- SearchPathOptions.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_SEARCH_PATH_OPTIONS_H
10 #define MCLD_LDLITE_SEARCH_PATH_OPTIONS_H
11 #include <llvm/Support/CommandLine.h>
12 #include <mcld/Support/Path.h>
13 #include <mcld/Support/CommandLine.h>
14 #include <string>
15 
16 namespace mcld {
17 
18 class LinkerConfig;
19 class LinkerScript;
20 
21 class SearchPathOptions
22 {
23 public:
24   SearchPathOptions();
25 
26   bool parse(LinkerConfig& pConfig, LinkerScript& pScript);
27 
28 private:
29   llvm::cl::opt<mcld::sys::fs::Path,
30               false,
31               llvm::cl::parser<mcld::sys::fs::Path> >& m_SysRoot;
32   llvm::cl::list<std::string,
33                bool,
34                llvm::cl::SearchDirParser>& m_SearchDirList;
35   llvm::cl::opt<bool>& m_NoStdlib;
36   llvm::cl::list<std::string,
37                bool,
38                llvm::cl::SearchDirParser>& m_RuntimePath;
39 
40   // not supported yet
41   llvm::cl::list<std::string,
42                bool,
43                llvm::cl::SearchDirParser>& m_RuntimePathLink;
44   llvm::cl::list<std::string>& m_Y;
45 };
46 
47 } // namespace of mcld
48 
49 #endif
50 
51