У меня есть код на С++, который можно скомпилировать с поддержкой MPI в зависимости от определенный флаг препроцессора; отсутствует соответствующий флаг, источники скомпилировать в непараллельную версию.
Я хотел бы настроить Makefile.am так, чтобы он компилировал как
MPI-параллельная и последовательная версия, если есть возможность
./configure
.
Здесь catch: MPI имеет собственную CML-компиляторную оболочку и настаивает что источники скомпилированы и связаны с ним, а не стандартными С++. Если бы я сам написал Makefile, мне пришлось бы сделайте что-нибудь вроде этого:
myprog.seq: myprog.cxx
$(CXX) ... myprog.cxx
myprog.mpi: myprog.cxx
$(MPICXX) -DWITH_MPI ... myprog.cxx
Есть ли способ сказать automake, что он должен использовать $(MPICXX) вместо из $(CXX) при компиляции версии программы с поддержкой MPI?