我努力让我的ifeq条件被触发。 我知道我的makefile可能在所有部分看起来都很傻,但这就是我在这里问的原因。
我的Makefile条件如下:
COMPILER = g++
TARGET_WIN32 = engine.exe
SOURCES_WIN32 = main.cpp os_win32.cpp
FLAGS_WIN32 = -mwindows
TARGET_LINUX = engine
SOURCES_LINUX = main.cpp os_linux.cpp
FLAGS_LINUX = -lX11
ifeq ( $(OS), Windows_NT)
TARGET = $(TARGET_WIN32)
SOURCES = $(SOURCES_WIN32)
FLAGS = $(FLAGS_WIN32)
else
TARGET = $(TARGET_LINUX)
SOURCES = $(SOURCES_LINUX)
FLAGS = $(FLAGS_LINUX)
endif
all:
@echo $(OS)
$(COMPILER) -o $(TARGET) $(SOURCES) $(FLAGS)
答案 0 :(得分:2)
Make对空格非常敏感: - )
你的专栏:
ifeq ( $(OS), Windows_NT)
必须是:
ifeq ($(OS),Windows_NT)