Source: e-mem Version: 1.0.1-2 Tags: patch upstream User: debian-cr...@lists.debian.org Usertags: ftcbfs
e-mem fails to cross build from source, because it uses the variable CC to store a C++ compiler. During a cross build, dh_auto_build overrides it with a C compiler, which fails linking e-mem. Please use standard variables (CXX/CXXFLAGS) to make e-mem cross buildable out of the box. Helmut
--- e-mem-1.0.1.orig/Makefile +++ e-mem-1.0.1/Makefile @@ -2,9 +2,9 @@ BIN_DIR := $(CURDIR) endif -CC = g++ +CXX = g++ EXEC = e-mem -CFLAGS += -Wall -Wextra -Wunused -std=gnu++0x -fopenmp +CXXFLAGS += -Wall -Wextra -Wunused -std=gnu++0x -fopenmp CDEBUG = -g -ggdb -gdwarf-3 -DDEBUG CPROF = -g -ggdb -gdwarf-3 -DDEBUG -pg COPTIMIZE = -Wuninitialized -O3 -fomit-frame-pointer @@ -19,11 +19,11 @@ CPUARCH := $(shell uname -m) ifeq ($(MAKECMDGOALS),debug) - CFLAGS += $(CDEBUG) + CXXFLAGS += $(CDEBUG) else ifeq ($(MAKECMDGOALS),profile) - CFLAGS += $(CPROF) + CXXFLAGS += $(CPROF) else - CFLAGS += $(COPTIMIZE) + CXXFLAGS += $(COPTIMIZE) endif .PHONY: all clean pack bin @@ -36,7 +36,7 @@ bin: @echo :: Compiling \"$(NAME)\" \($(CPUARCH)\) ... - $(CC) $(CFLAGS) $(CSRCS) $(CLIBS) -o $(BIN_DIR)/$(EXEC) $(LDFLAGS) + $(CXX) $(CXXFLAGS) $(CSRCS) $(CLIBS) -o $(BIN_DIR)/$(EXEC) $(LDFLAGS) chmod 755 $(BIN_DIR)/$(EXEC) @echo :: Done