Хочу пересобрать скетч, заменив везде Serial на Serial1. Понятно, что для этого нужно копилятору подсунуть ключик -DSerial=Serial1 Arduino IDE умеет это делать?
И во всех разделяемых библиотеках тоже? Нет, это неверный метод. Нужна именно глобальная опция компиляции.
Блин, я не про замену всего спрашивал. А про глобальный define при компиляции. Альтернативно одаренным: #define DEBUG для отладочной версии как сделать для всех файлов проекта?
1) Добавить #include "globaldefs.h" внутрь Arduino.h, который в себя втягивают все библиотеки. 2) При такой подстановке вы теряете Serial совсем, а это не есть хорошо, лучше тогда залезть в HardwareSerial.h и там переименовать все Serial* в _Serial*, а сопоставление _Serial* с Serial* сделать в своих макросах. 3) Вот отчасти поэтому, проекты, требующие настройки, я в Arduino IDE и не держу.