Mi piacerebbe avere lo stesso Makefile per creare su Linux e su Windows. Io uso il valore predefinito GNU make su Linux e il mingw32-make (anche GNU make) su Windows.Makefile che distingue tra sistemi Windows e Unix
Desidero che il Makefile rilevi se funziona su Windows o Linux.
Per esempio make clean
comando su Windows appare come:
clean:
del $(DESTDIR_TARGET)
Ma su Linux:
clean:
rm $(DESTDIR_TARGET)
Inoltre vorrei usare separatore di directory diversa su Windows (\
) e Linux (/
).
E 'possibile rilevare il sistema operativo Windows in Makefile?
PS: Non voglio emulare Linux su Windows (cygwin ecc)
C'è domanda simile: OS detecting makefile, ma non ho trovato la risposta qui.
Windows è in grado di gestire sia slash "/" e "\" sono equivalenti. – Ency
Se questo è per un progetto sostanziale, mi chiedo se valga la pena di lasciare che gli autotools gestiscano alcune cose della portabilità? – Cascabel
@Jefromi: autotools assume un set di strumenti UNIX di base (sh, m4, sed, rm, ...). @tomp: potrebbe anche installarli su Windows (da MSYS o GnuWin) e spendere i tuoi sforzi sui problemi di portabilità più impegnativi. – ephemient