как грамотно решить след. задачу ? есть 2 проекта (схемка гипотетическая, но все же..), железо ПОЧТИ одинаковое, по-разному разведены только некоторые пины и определены в своих io.h через define примерно так :
#define RED_LED_ON P1OUT |= BIT0;
#define RED_LED_OFF P1OUT &=~BIT0;
(объединять оба io.h в один и подключать его к библиотеке не хотелось бы)
Чтобы не плодить копии файлов оба проекта пользуют папку \common в которой лежат общие для них библиотеки. Надо чтоб для каждого проекта при компиляции библиотеки участвовали нужные пины.
Среда IAR.
пробовал сделать условную компиляцию, определив #define _N1_ например как признак проекта в main а в библиотеке инклуд ->
#ifdef _N1_
#include "..\PROJ_1\io.h"
#endif
#ifdef _N2_
#include "..\PROJ_1\io.h"
#endif
не вышло, зона видимости define - файл.
Вообще если прописать путь в каждом проекте к своему io.h то сработает, но это не выход, так как описываю общую ситуацию, и возможны разные наборы инклуд файлов.