X-Git-Url: https://git.siccegge.de//index.cgi?p=frida%2Ffrida.git;a=blobdiff_plain;f=src%2Fmain.cxx;h=80e06cea3fe324195a01415ed4af18537d3741aa;hp=e1a2d7cf503083debcad8da2da705711dc87f5d9;hb=516e590392ed1f4ead816731bfd95fc3c4690b9f;hpb=0454d885d5994f4d6b765864b77998137dad7204 diff --git a/src/main.cxx b/src/main.cxx index e1a2d7c..80e06ce 100644 --- a/src/main.cxx +++ b/src/main.cxx @@ -4,12 +4,12 @@ #include #include +#include #include #include "log4cxx/logger.h" #include "log4cxx/basicconfigurator.h" -#include "Binary.hxx" #include "gui/Mainwindow.hxx" using std::cout; @@ -18,18 +18,37 @@ using std::cerr; int main(int argc, char** argv) { + QApplication app(argc, argv); + log4cxx::BasicConfigurator::configure(); log4cxx::LoggerPtr _logger(log4cxx::Logger::getLogger("main")); + + QCommandLineParser parser; + + QApplication::setApplicationName("frida"); + parser.addHelpOption(); + parser.addVersionOption(); + parser.addPositionalArgument("filename", QCoreApplication::translate("main", "File to disassemble.")); + + + parser.process(app); + LOG4CXX_DEBUG(_logger, "Initializing LLVM"); llvm::InitializeAllTargetInfos(); llvm::InitializeAllTargetMCs(); llvm::InitializeAllAsmParsers(); llvm::InitializeAllDisassemblers(); - QApplication app(argc, argv); + LOG4CXX_DEBUG(_logger, "Initializing Qt"); - Mainwindow m; - m.show(); + std::string filename; + if (parser.positionalArguments().isEmpty()) { + filename = ""; + } else { + filename = parser.positionalArguments().at(0).toStdString(); + } - return app.exec(); + Mainwindow m(filename); + m.show(); + return app.exec(); }