2012-02-14 18 views
13

Tengo un comando que funciona de una manera en OSX/Unix y otro en Debian/Linux. Quiero crear un archivo make para mi aplicación, pero necesito detectar el sistema operativo y emitir el comando en consecuencia. ¿Cómo voy a hacer esto?¿Cómo detectar el sistema operativo en un archivo make?

+0

posible duplicado de [makefile detectar OS] (http://stackoverflow.com/questions/714100/os- detecting-makefile) – Anko

Respuesta

25

Puede usar uname para hacerlo. En su Makefile, se podría escribir algo como:

OS := $(shell uname) 
ifeq $(OS) Darwin 
# Run MacOS commands 
else 
# check for Linux and run other commands 
endif 
+2

¿Cómo se puede ejecutar este código dentro de uno de los objetivos? – Mikhail

14

Lo que funcionó para mí

OS := $(shell uname) 
ifeq ($(OS),Darwin) 
    # Run MacOS commands 
else 
    # check for Linux and run other commands 
endif 
Cuestiones relacionadas