diff options
author | Ramsay Jones <ramsay@ramsay1.demon.co.uk> | 2014-08-04 19:37:31 +0100 |
---|---|---|
committer | Christopher Li <sparse@chrisli.org> | 2014-10-10 22:43:37 +0800 |
commit | 7885fb7f6b076cbe35d484e4b1e50eaaa546fb99 (patch) | |
tree | adadeffbd677236d69b58b7863fd72014b8c669e | |
parent | d32b2f7c202fd27206169ca99da898ca9c20dfab (diff) | |
download | sparse-7885fb7f6b076cbe35d484e4b1e50eaaa546fb99.tar.gz |
Makefile: suppress error message from shell
In particular, on systems which do not have 'llvm-config' installed,
every invocation of make issues the following messages:
/bin/sh: llvm-config: command not found
make: llvm-config: Command not found
A simple solution would be to suppress these messages by redirecting
stderr to the bit-bucket within the definitions of HAVE_LLVM_VERSION
and LLVM_VERSION.
As an alternative, however, we move the definition of LLVM_VERSION
down the file within the HAVE_LLVM conditional, which ensures that
the 'llvm-config' command exists. In addition, the HAVE_LLVM_VERSION
variable is replaced with an equivalent conditional expression.
Signed-off-by: Ramsay Jones <ramsay@ramsay1.demon.co.uk>
Signed-off-by: Christopher Li <sparse@chrisli.org>
-rw-r--r-- | Makefile | 16 |
1 files changed, 7 insertions, 9 deletions
@@ -32,8 +32,6 @@ HAVE_GCC_DEP:=$(shell touch .gcc-test.c && \ HAVE_GTK2:=$(shell pkg-config --exists gtk+-2.0 2>/dev/null && echo 'yes') LLVM_CONFIG:=llvm-config HAVE_LLVM:=$(shell $(LLVM_CONFIG) --version >/dev/null 2>&1 && echo 'yes') -HAVE_LLVM_VERSION:=$(shell $(LLVM_CONFIG) --version | grep "^[3-9].*" >/dev/null 2>&1 && echo yes) -LLVM_VERSION:=$(shell $(LLVM_CONFIG) --version) GCC_BASE = $(shell $(CC) --print-file-name=) BASIC_CFLAGS = -DGCC_BASE=\"$(GCC_BASE)\" @@ -76,13 +74,9 @@ else $(warning Your system does not have libgtk2, disabling test-inspect) endif -ifneq ($(HAVE_LLVM),yes) -$(warning Your system does not have llvm, disabling sparse-llvm) -else -ifneq ($(HAVE_LLVM_VERSION),yes) -$(warning LLVM 3.0 or later required. Your system has version $(LLVM_VERSION) installed.) -HAVE_LLVM=no -else +ifeq ($(HAVE_LLVM),yes) +LLVM_VERSION:=$(shell $(LLVM_CONFIG) --version) +ifeq ($(shell expr "$(LLVM_VERSION)" : '[3-9]\.'),2) LLVM_PROGS := sparse-llvm $(LLVM_PROGS): LD := g++ LLVM_LDFLAGS := $(shell $(LLVM_CONFIG) --ldflags) @@ -93,7 +87,11 @@ PROGRAMS += $(LLVM_PROGS) INST_PROGRAMS += sparse-llvm sparsec sparse-llvm.o: BASIC_CFLAGS += $(LLVM_CFLAGS) sparse-llvm_EXTRA_OBJS := $(LLVM_LIBS) $(LLVM_LDFLAGS) +else +$(warning LLVM 3.0 or later required. Your system has version $(LLVM_VERSION) installed.) endif +else +$(warning Your system does not have llvm, disabling sparse-llvm) endif LIB_H= token.h parse.h lib.h symbol.h scope.h expression.h target.h \ |