diff --git a/companion/src/CMakeLists.txt b/companion/src/CMakeLists.txt index ddc611983..20a6c0ea9 100644 --- a/companion/src/CMakeLists.txt +++ b/companion/src/CMakeLists.txt @@ -25,6 +25,7 @@ set(COMPANION_OSX_APP_BUNDLE_NAME "OpenTX Companion ${VERSION_MAJOR}.${VERSION_M # the binary (default homebrew path) set(DFU_UTIL_PATH "/usr/local/bin/dfu-util") set(AVRDUDE_PATH "/usr/local/bin/avrdude") +set(AVRDUDE_CONF "/usr/local/etc/avrdude.conf") option(ALLOW_NIGHTLY_BUILDS "Allow nightly builds download / update") # Disabled by default if(ALLOW_NIGHTLY_BUILDS) @@ -524,8 +525,12 @@ IF(APPLE) # Copy dfu-util and avrdude, resolve symlink first get_filename_component(DFU_UTIL_ABSOLUTE_PATH ${DFU_UTIL_PATH} REALPATH) get_filename_component(AVRDUDE_ABSOLUTE_PATH ${AVRDUDE_PATH} REALPATH) + get_filename_component(AVRDUDECONF_ABSOLUTE_PATH ${AVRDUDE_CONF} REALPATH) install(PROGRAMS ${DFU_UTIL_ABSOLUTE_PATH} ${AVRDUDE_ABSOLUTE_PATH} DESTINATION ${companion_res_dir} COMPONENT Runtime) + install(FILES ${AVRDUDECONF_ABSOLUTE_PATH} DESTINATION ${companion_res_dir} COMPONENT Runtime) + set(bundle_tools_path "\${CMAKE_INSTALL_PREFIX}/${companion_res_dir}/dfu-util;\${CMAKE_INSTALL_PREFIX}/${companion_res_dir}/avrdude") + # Include depencies (adding frameworks, fixing the embbeded libraries) # I get write errors without setting BU_CHMOD_BUNDLE_ITEMS even though it is diff --git a/companion/src/burnconfigdialog.cpp b/companion/src/burnconfigdialog.cpp index 400935573..123289844 100644 --- a/companion/src/burnconfigdialog.cpp +++ b/companion/src/burnconfigdialog.cpp @@ -105,6 +105,18 @@ burnConfigDialog::~burnConfigDialog() delete ui; } +QStringList burnConfigDialog::getAvrdudeArgs() +{ + QStringList args = avrArgs; + if (!avrPort.isEmpty()) + args << "-P" << avrPort; + +#if defined(__APPLE__) + args << "-C" << QFileInfo(QApplication::applicationDirPath() + "/../Resources/avrdude.conf").absoluteFilePath(); +#endif + return args; +} + void burnConfigDialog::getSettings() { avrLoc = g.avrdudeLocation(); diff --git a/companion/src/burnconfigdialog.h b/companion/src/burnconfigdialog.h index a09b8985d..5cf7bb375 100644 --- a/companion/src/burnconfigdialog.h +++ b/companion/src/burnconfigdialog.h @@ -42,7 +42,7 @@ public: QString getAVRDUDE() {return avrLoc;} QString getSAMBA() {return sambaLoc;} QString getDFU() {return dfuLoc;} - QStringList getAvrdudeArgs() { QStringList args = avrArgs; if (!avrPort.isEmpty()) args << "-P" << avrPort; return args; } + QStringList getAvrdudeArgs(); QStringList getDFUArgs() {return dfuArgs;} QString getProgrammer() {return avrProgrammer;} QString getMCU() {return avrMCU;}