make: enable 32/64 bit cross compilation
authorFerry Huberts <ferry.huberts@pelagic.nl>
Mon, 4 Feb 2013 10:11:22 +0000 (11:11 +0100)
committerFerry Huberts <ferry.huberts@pelagic.nl>
Mon, 4 Feb 2013 11:04:41 +0000 (12:04 +0100)
Signed-off-by: Ferry Huberts <ferry.huberts@pelagic.nl>
Makefile.inc
gui/linux-gtk/Makefile
lib/pud/nmealib/Makefile
lib/pud/nmealib/Makefile.inc
lib/pud/wireformat/Makefile

index c9e4ed1..44d895d 100644 (file)
@@ -190,6 +190,17 @@ LIBS +=            $(OS_LIB_PTHREAD)
 # extra options from the outside
 CPPFLAGS +=    $(EXTRA_CPPFLAGS)
 
+
+# 32/64 cross compilation
+ifdef M32
+CFLAGS +=      -m32
+LDFLAGS +=     -m32
+else ifdef M64
+CFLAGS +=      -m64
+LDFLAGS +=     -m64
+endif
+
+
 ###################################
 #
 # options to save space on small systems
index 50e060a..6846e5c 100644 (file)
@@ -11,6 +11,16 @@ LDFLAGS = -pie
 
 LIBS := $(shell pkg-config --libs gtk+-2.0) -lm
 
+# 32/64 cross compilation
+ifdef M32
+CFLAGS +=      -m32
+LDFLAGS +=     -m32
+else ifdef M64
+CFLAGS +=      -m64
+LDFLAGS +=     -m64
+endif
+
+
 all: default_target
 
 default_target: olsrd-gui
index 0288a6e..d52feae 100644 (file)
@@ -47,7 +47,7 @@ lib/$(LIBNAME): $(OBJ)
 ifeq ($(VERBOSE),0)
        @echo "[LD] $@"
 endif
-       $(MAKECMDPREFIX)$(CC) -shared -Wl,-soname=$(LIBNAME) -o "$@" $(LIBRARIES) $(OBJ)
+       $(MAKECMDPREFIX)$(CC) ${LDFLAGS} -Wl,-soname=$(LIBNAME) -o "$@" $(LIBRARIES) $(OBJ)
 
 build/%.o: src/%.c Makefile Makefile.inc
 ifeq ($(VERBOSE),0)
index cb16939..228bd1f 100644 (file)
@@ -52,3 +52,15 @@ CFLAGS+= -O2
 else
 CFLAGS+= -O0
 endif
+
+
+LDFLAGS = -shared -Wl,--warn-common -fPIC
+
+# 32/64 cross compilation
+ifdef M32
+CFLAGS +=      -m32
+LDFLAGS +=     -m32
+else ifdef M64
+CFLAGS +=      -m64
+LDFLAGS +=     -m64
+endif
index c7c7752..90b25a7 100644 (file)
@@ -6,6 +6,17 @@ OLSRD_PLUGIN = false
 TOPDIR = ../../..
 include $(TOPDIR)/Makefile.inc
 
+LDFLAGS = -shared -Wl,--warn-common -fPIC
+
+# 32/64 cross compilation
+ifdef M32
+CFLAGS +=      -m32
+LDFLAGS +=     -m32
+else ifdef M64
+CFLAGS +=      -m64
+LDFLAGS +=     -m64
+endif
+
 ######################
 #
 # Settings
@@ -48,7 +59,7 @@ $(LIBDIR_BUILD)/$(SONAME): $(OBJECTS_C)
 ifeq ($(VERBOSE),0)
        @echo "[LD] $@"
 endif
-       $(MAKECMDPREFIX)$(CC) -shared -Wl,-soname=$(SONAME) $(LIBRARIES) -o "$@" $(OBJECTS_C)
+       $(MAKECMDPREFIX)$(CC) ${LDFLAGS} -Wl,-soname=$(SONAME) $(LIBRARIES) -o "$@" $(OBJECTS_C)
 
 $(BUILD_DIR)/%.o: $(SRC_DIR_C)/%.c $(INC_DIR_C)/compiler.h
 ifeq ($(VERBOSE),0)