]> git.siccegge.de Git - frida/frida.git/blob - src/main.cxx
Allow opening of binary via comman argument
[frida/frida.git] / src / main.cxx
1 #include "include_llvm.hxx"
2
3 #include <iostream>
4 #include <climits>
5
6 #include <QApplication>
7 #include <QCommandLineParser>
8 #include <QTextEdit>
9
10 #include "log4cxx/logger.h"
11 #include "log4cxx/basicconfigurator.h"
12
13 #include "gui/Mainwindow.hxx"
14
15 using std::cout;
16 using std::cin;
17 using std::cerr;
18
19 int main(int argc, char** argv)
20 {
21 log4cxx::BasicConfigurator::configure();
22 log4cxx::LoggerPtr _logger(log4cxx::Logger::getLogger("main"));
23
24 QCommandLineParser parser;
25
26 QApplication::setApplicationName("frida");
27 parser.addHelpOption();
28 parser.addVersionOption();
29 parser.addPositionalArgument("filename", QCoreApplication::translate("main", "File to disassemble."));
30
31 QApplication app(argc, argv);
32 parser.process(app);
33
34 LOG4CXX_DEBUG(_logger, "Initializing LLVM");
35 llvm::InitializeAllTargetInfos();
36 llvm::InitializeAllTargetMCs();
37 llvm::InitializeAllAsmParsers();
38 llvm::InitializeAllDisassemblers();
39
40 LOG4CXX_DEBUG(_logger, "Initializing Qt");
41
42 Mainwindow m(parser.positionalArguments().at(0).toStdString());
43 m.show();
44
45 return app.exec();
46 }