Je voudrais avoir le même Makefile pour construire sur Linux et Windows. J'utilise la valeur par défaut GNU make sur Linux et le mingw32-make (aussi GNU make) sur Windows.Makefile distinct entre Windows et les systèmes Unix
Je veux que le Makefile détecte s'il fonctionne sous Windows ou Linux.
Par exemple make clean
commande sous Windows ressemble:
clean:
del $(DESTDIR_TARGET)
Mais sous Linux:
clean:
rm $(DESTDIR_TARGET)
Aussi je voudrais utiliser différents séparateurs de répertoires sous Windows (\
) et Linux (/
).
Il est possible de détecter le système d'exploitation Windows dans Makefile?
PS: Je ne veux pas imiter Linux sur Windows (cygwin etc.)
Il est similaire question: OS detecting makefile, mais je ne trouve pas la réponse ici.
Windows est capable de gérer les deux barres obliques «/» et « \ » sont équivalents. – Ency
Si c'est pour un projet important, je me demande s'il serait utile de laisser les autotools gérer certains aspects de la portabilité? – Cascabel
@Jefromi: autotools suppose un jeu d'outils de base UNIX (sh, m4, sed, rm, ...). @tomp: Pourrait aussi bien les installer sur Windows (à partir de MSYS ou GnuWin) et passer vos efforts sur les problèmes de portabilité plus difficiles. – ephemient