Я хотел бы иметь тот же Makefile для создания на Linux и Windows. Я использую по умолчанию GNU make на Linux и mingw32-make (также GNU make) на Windows.Makefile, который отличается от Windows и Unix-подобных систем.
Я хочу, чтобы Makefile обнаружил, работает ли он в Windows или Linux.
Например make clean
команда на Windows, выглядит следующим образом:
clean:
del $(DESTDIR_TARGET)
Но на Linux:
clean:
rm $(DESTDIR_TARGET)
Кроме того, я хотел бы использовать другой разделитель каталогов на Windows (\
) и Linux (/
).
можно обнаружить операционную систему Windows, в Makefile?
PS: Я не хочу, чтобы эмулировать Linux на Windows (в Cygwin и т.д.)
Существует похож вопрос: OS detecting makefile, но я не нашел ответ здесь.
Windows, может работать как с косой черты «/» и «\» эквивалентны. – Ency
Если это для существенного проекта, мне интересно, стоит ли автоудару обрабатывать некоторые вещи переносимости? – Cascabel
@Jefromi: autotools принимает базовый набор инструментов UNIX (sh, m4, sed, rm, ...). @tomp: Могу также установить их на окна (от MSYS или GnuWin) и потратить свои усилия на более сложные проблемы с переносимостью. – ephemient