We are planning to use an Arduino Mega2560 design which will be embedded into our commercial product. We will write C firmware to run on the ATMega2560 MCU. We will use the firmware that comes shipped with the Arduino for the ATMega16U2 MCU. We will not use the Arduino software to load code or compile/build code. Instead, we will use GCC to build code, and link in the appropriate avr libraries. However, we would like to use the bootloader that is shipped with the Arduino that runs on the ATMega2560. This will allow us to update firmware in the field using avrdude with just a USB connection.
I have read the post here (https://forum.arduino.cc/index.php/topic,5451.0.html), but it is still not clear to me if only using the un-modified bootloader for the 2560 MCU and the un-modified firmware for the 16U2 MCU would require us to make our object code available to everyone. Since we are not modifying the core files or the libraries, are we still required to share the object files?