Makefile ifneq условие не выполняется - PullRequest
0 голосов
/ 06 сентября 2018

Я добавляю условный флаг, который зависит от версии gcc Ниже, если фрагмент файла makefile

CPPFLAGS :=  -O0  -g
CXXFLAGS := -fPIC
GCCVERSION = $(shell gcc --version | grep ^gcc |cut -b11-16)
ifneq ($(GCCVERSION),"4.1.2")
CPPFLAGS +=  -std=c++0x
CXXFLAGS += -m64
endif

Условие ifneq не выполняется. Я проверил, что мой $ (GCCVERSION) = 4.1.2, как и ожидалось.

EDIT:
Я уже пробовал ниже варианты
ifneq ($ (GCCVERSION), 4.1.2)
ifneq ($ (GCCVERSION), '4.1.2')
ifneq ("$ (GCCVERSION)", "4.1.2")

1 Ответ

0 голосов
/ 06 сентября 2018

Вам нужно раздеться $(GCCVERSION):

CPPFLAGS :=  -O0  -g
CXXFLAGS := -fPIC
GCCVERSION = $(shell gcc --version | grep ^gcc |cut -b11-16)
ifneq ($(strip $(GCCVERSION)),4.1.2)
CPPFLAGS +=  -std=c++0x
CXXFLAGS += -m64
endif
...