Я использую bakefile для процесса сборки, и я стал большим поклонником!
Мне больше никогда не нужно писать Makefile самостоятельно, не говоря уже об ужасных сценариях GNU autotools. Все, что мне нужно сделать, это предоставить файл XML
, который описывает цели сборки. Bakefile может преобразовать это в Makefile, который получает все зависимости (заголовочный файл) и т. Д., Где могут быть выбраны различные форматы Makefile (вставка списка из документации):
available formats are:
autoconf GNU autoconf Makefile.in files
borland Borland C/C++ makefiles
dmars Digital Mars makefiles
dmars_smake Digital Mars makefiles for SMAKE
gnu GNU toolchain makefiles (Unix)
mingw MinGW makefiles (mingw32-make)
msevc4prj MS eMbedded Visual C++ 4 project files
msvc MS Visual C++ nmake makefiles
msvc6prj MS Visual C++ 6.0 project files
msvs2003prj MS Visual Studio 2003 project files
msvs2005prj MS Visual Studio 2005 project files
symbian Symbian development files
watcom OpenWatcom makefiles
xcode2 Xcode 2.4 project files
Я обычно использую опцию autoconf , и она пишет для меня надоедливые сценарии автоинструментов GNU. Мне пришлось адаптировать скрипт configure.ac
, чтобы программа configure обнаружила определенную библиотеку в любой системе. Но это было не так уж плохо. Получить сценарии autoconf таким способом приятно, потому что мне не нужно писать их все самому, и когда я распространяю свой проект, все будет выглядеть так, как будто я их написал, и пользователи все равно смогут построить мой проект в God- заданный путь, с
./configure && make && make install