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
 

Reply via email to