# HG changeset patch # User Chris Cannam # Date 1477403336 -3600 # Node ID 8545be78b994008359c29eb83f4f10c19930f1be # Parent 92e72014d9798a7339cfb09d6f2d877d8bf7fd65 OSX build fixes and logic diff -r 92e72014d979 -r 8545be78b994 checker-client.pro --- a/checker-client.pro Tue Oct 18 13:14:55 2016 +0100 +++ b/checker-client.pro Tue Oct 25 14:48:56 2016 +0100 @@ -6,6 +6,8 @@ # Using the "console" CONFIG flag above should ensure this happens for # normal Windows builds, but this may be necessary when cross-compiling win32-x-g++:QMAKE_LFLAGS += -Wl,-subsystem,console + +macx*: CONFIG -= app_bundle TARGET = checker-client diff -r 92e72014d979 -r 8545be78b994 helper.pro --- a/helper.pro Tue Oct 18 13:14:55 2016 +0100 +++ b/helper.pro Tue Oct 25 14:48:56 2016 +0100 @@ -8,6 +8,8 @@ # normal Windows builds, but this may be necessary when cross-compiling win32-x-g++:QMAKE_LFLAGS += -Wl,-subsystem,console +macx*: CONFIG -= app_bundle + !win32* { QMAKE_CXXFLAGS += -Werror } diff -r 92e72014d979 -r 8545be78b994 src/plugincandidates.cpp --- a/src/plugincandidates.cpp Tue Oct 18 13:14:55 2016 +0100 +++ b/src/plugincandidates.cpp Tue Oct 25 14:48:56 2016 +0100 @@ -150,7 +150,18 @@ process.setProcessChannelMode(QProcess::ForwardedErrorChannel); process.start(m_helper.c_str(), { descriptor.c_str() }); if (!process.waitForStarted()) { - cerr << "helper failed to start" << endl; + QProcess::ProcessError err = process.error(); + if (err == QProcess::FailedToStart) { + std::cerr << "Unable to start helper process " << m_helper + << std::endl; + } else if (err == QProcess::Crashed) { + std::cerr << "Helper process " << m_helper + << " crashed on startup" << std::endl; + } else { + std::cerr << "Helper process " << m_helper + << " failed on startup with error code " + << err << std::endl; + } throw runtime_error("plugin load helper failed to start"); } for (auto &lib: libraries) { @@ -196,7 +207,9 @@ process.close(); process.waitForFinished(); } - + + log("helper completed"); + return output; }