diff --git a/etc/kaleidoscope-builder.conf b/etc/kaleidoscope-builder.conf index d0efe803..defa2d5b 100644 --- a/etc/kaleidoscope-builder.conf +++ b/etc/kaleidoscope-builder.conf @@ -42,25 +42,32 @@ fi # Shamelessly stolen from git's Makefile uname_S=$(uname -s 2>/dev/null || echo not) + find_max_prog_size() { +# SKETCH and -build-path in this command are here because of a bug introduced in Arduino 1.8.10 +# https://github.com/arduino/arduino-builder/issues/341 VPIDS=$("${ARDUINO_BUILDER}" \ -hardware "${ARDUINO_PATH}/hardware" \ -hardware "${BOARD_HARDWARE_PATH}" \ ${ARDUINO_TOOLS_FLAG:+"${ARDUINO_TOOLS_FLAG}"} ${ARDUINO_TOOLS_PARAM:+"${ARDUINO_TOOLS_PARAM}"} \ -tools "${ARDUINO_PATH}/tools-builder" \ -fqbn "${FQBN}" \ - -dump-prefs | grep "upload\.maximum_size=") + -build-path ${ARDUINO_PATH} \ + -dump-prefs "${SKETCH_DIR}/${SKETCH}.ino" | grep "upload\.maximum_size=") MAX_PROG_SIZE=${MAX_PROG_SIZE:-$(echo "${VPIDS}" | grep upload.maximum_size | head -n 1 | cut -d= -f2)} } find_device_vid_pid() { +# SKETCH and -build-path in this command are here because of a bug introduced in Arduino 1.8.10 +# https://github.com/arduino/arduino-builder/issues/341 VPIDS=$("${ARDUINO_BUILDER}" \ -hardware "${ARDUINO_PATH}/hardware" \ -hardware "${BOARD_HARDWARE_PATH}" \ ${ARDUINO_TOOLS_FLAG:+"${ARDUINO_TOOLS_FLAG}"} ${ARDUINO_TOOLS_PARAM:+"${ARDUINO_TOOLS_PARAM}"} \ -tools "${ARDUINO_PATH}/tools-builder" \ -fqbn "${FQBN}" \ - -dump-prefs | grep "\.[vp]id=") + -build-path ${ARDUINO_PATH} \ + -dump-prefs "${SKETCH_DIR}/${SKETCH}.ino" || grep "\.[vp]id=") VID=${VID:-$(echo "${VPIDS}" | grep build.vid= | cut -dx -f2)} SKETCH_PID=${SKETCH_PID:-$(echo "${VPIDS}" | grep build.pid= | cut -dx -f2)} BOOTLOADER_PID=${BOOTLOADER_PID:-$(echo "${VPIDS}" | grep bootloader.pid= | cut -dx -f2)}