Я хотел бы создать Makefile для проекта C ++ среднего размера (~ 110 .cpp и .h файлов), который был создан в Xcode. У меня нет Mac, поэтому я не могу просто зайти в xcode и экспортировать Makefile.
Исходя из моего понимания использования Makefiles для более простых проектов, я мог пройти и создать цель в своем Makefile для каждого файла .cpp, включая его предварительные требования … но для этого потребовалось бы вручную просмотреть каждый файл и разобраться, каковы его зависимости.
Насколько я понимаю, autoconf — хороший инструмент для решения подобных проблем, но я не смог понять, как его настроить, и я даже не уверен, что это правильный инструмент для работы. Поэтому, прежде чем я пойду еще дальше вниз по этой кроличьей норе —
Каков наилучший способ создать Makefile для существующего проекта без такового?
Это довольно субъективно в отношении лучшего инструмента. Возможно, посмотрите на Scons или же Gradle сравнить для ваших конкретных потребностей.
Я думаю Pbxbuild может помочь вам.
Pbxbuild (не путать с одноименным инструментом OS X) используется для получения файлов проекта Xcode и сборки кода. Это делается путем создания GNUmakefiles и использования Make для их создания.
Любая система сборки (генератор) потребует некоторого обучения с вашей стороны. Я бы предложил использовать CMake, если вы не возражаете, что CMake понадобится везде, где кто-либо пытается создать ваш источник. В противном случае я бы предложил использовать комбо Autoconf / Automake / Libtool.