summaryrefslogtreecommitdiff
path: root/cleopatre
diff options
context:
space:
mode:
authorThierry Carré2013-03-04 18:15:11 +0100
committerThierry Carré2013-03-08 14:22:54 +0100
commitace50e1d0887f92b41b61b03bdddd786de39a47a (patch)
treef32720005a2128ec779cbc75318540779b829224 /cleopatre
parentd3e94268d0da53084401edc88721738da5de82c0 (diff)
cleo/{buildroot/package, app/spidapp}: update spidapp makefile rules
- use libspid-config script - add "-Wall" option - add libs dependencies, but don't compile them
Diffstat (limited to 'cleopatre')
-rw-r--r--cleopatre/application/spidapp/Makefile37
-rw-r--r--cleopatre/buildroot/package/spidapp/spidapp.mk11
2 files changed, 26 insertions, 22 deletions
diff --git a/cleopatre/application/spidapp/Makefile b/cleopatre/application/spidapp/Makefile
index 56221efa86..f556d9e2c6 100644
--- a/cleopatre/application/spidapp/Makefile
+++ b/cleopatre/application/spidapp/Makefile
@@ -3,23 +3,34 @@ OBJPATH=obj
SRCPATH=src
INCPATH=inc
-CLEO_DIR=../..
-RESPONSE_FILE=extra_flags
+CLEO_DIR = ../..
+LINUX_DIR = $(CLEO_DIR)/linux-2.6.25.10-spc300
+LIBSPID_DIR = $(CLEO_DIR)/application/libspid
+LIBMME_DIR = $(CLEO_DIR)/application/libmme
+
+LIBSPID_SO_BIN = $(LIBSPID_DIR)/libspid.so
+LIBMME_SO_BIN = $(LIBMME_DIR)/libmme.so
ifeq ($(CC_FOR_TARGET),) #direct compile
CC=arm-linux-gcc
CC_WITH_CFLAGS=$(CC) -I/opt/spidcom/spc300/usr/include -g -Os
CC_WITHOUT_CFLAGS=$(CC)
-LINUX_DIR=$(CLEO_DIR)/linux-2.6.25.10-spc300
-LIBSPID_DIR=$(CLEO_DIR)/application/libspid
-LIBMME_DIR=$(CLEO_DIR)/application/libmme
else #compile from buildroot
CC_WITH_CFLAGS=$(CC)
CC_WITHOUT_CFLAGS=$(CC_FOR_TARGET)
endif
-CLEO_INC=$(CLEO_DIR)/include
-EXTRA_CFLAGS=-I$(INCPATH) -I$(LINUX_DIR)/include/asm-arm/arch-spc300 -I$(LIBMME_DIR)/inc -I$(LIBSPID_DIR)/inc -I$(CLEO_INC) -MMD @$(CLEO_DIR)/$(RESPONSE_FILE)
-LIBS=-L$(LIBMME_DIR) -L$(LIBSPID_DIR) -lmme -lspid
+
+RESPONSE_FILE=extra_flags
+
+INCLUDES = -I$(INCPATH) \
+ -I$(LINUX_DIR)/include/asm-arm/arch-spc300 \
+ -I$(CLEO_DIR)/include \
+ $(shell $(LIBSPID_DIR)/libspid-config --I_opts)
+
+EXTRA_CFLAGS= $(INCLUDES) -MMD -Wall @$(CLEO_DIR)/$(RESPONSE_FILE)
+
+LIBS = $(shell $(LIBSPID_DIR)/libspid-config --L_opts) \
+ $(shell $(LIBSPID_DIR)/libspid-config --libs)
SRCS=$(subst $(SRCPATH)/,,$(wildcard $(SRCPATH)/*.c))
OBJS=$(addprefix $(OBJPATH)/,$(SRCS:.c=.o))
@@ -27,7 +38,7 @@ DEPS=$(patsubst %o,%d,$(OBJS))
all: $(BIN)
-$(BIN): libspid libmme $(OBJS)
+$(BIN): $(OBJS) $(LIBSPID_SO_BIN) $(LIBMME_SO_BIN)
$(CC_WITHOUT_CFLAGS) -o $@ $(OBJS) $(LIBS)
$(OBJPATH)/%.o: $(SRCPATH)/%.c
@@ -38,12 +49,8 @@ $(OBJS): | $(OBJPATH)
$(OBJPATH):
mkdir $(OBJPATH)
-libspid:
- $(MAKE) -C $(LIBSPID_DIR) libspid.so
-
-libmme:
- $(MAKE) -C $(LIBMME_DIR) libmme.so
-
+$(LIBSPID_SO_BIN) $(LIBMME_SO_BIN):
+ $(error libspid or libmme output files are not found)
-include $(DEPS)
diff --git a/cleopatre/buildroot/package/spidapp/spidapp.mk b/cleopatre/buildroot/package/spidapp/spidapp.mk
index 29b645068c..1ba644776b 100644
--- a/cleopatre/buildroot/package/spidapp/spidapp.mk
+++ b/cleopatre/buildroot/package/spidapp/spidapp.mk
@@ -39,12 +39,9 @@ $(SPIDAPP_DIR)/.configured: $(SPIDAPP_DIR)/.unpacked
touch $(SPIDAPP_DIR)/.configured
$(SPIDAPP_DIR)/spidapp: $(SPIDAPP_LIBSPID_SITE)/libspid.so \
- $(SPIDAPP_DIR)/.configured
+ $(SPIDAPP_DIR)/.configured FORCE_SPIDAPP_MAKE
$(TARGET_CONFIGURE_OPTS) \
- $(MAKE) -C $(SPIDAPP_DIR) spidapp \
- LINUX_DIR="$(BASE_DIR)/../linux-2.6.25.10-spc300" \
- LIBMME_DIR="$(BASE_DIR)/../application/libmme" \
- LIBSPID_DIR="$(SPIDAPP_LIBSPID_SITE)"
+ $(MAKE) -C $(SPIDAPP_DIR) spidapp
$(TARGET_DIR)/usr/bin/spidapp: $(SPIDAPP_DIR)/spidapp
mkdir -p $(TARGET_DIR)/usr/bin
@@ -59,8 +56,8 @@ spidapp-clean:
spidapp-dirclean:
rm -f $(SPIDAPP_DIR)
-# We declare $(SPIDAPP_DIR)/spidapp rule as PHONY to force compilation
-.PHONY: $(SPIDAPP_DIR)/spidapp
+# We declare FORCE_SPIDAPP_MAKE rule as PHONY to force compilation
+.PHONY: FORCE_SPIDAPP_MAKE
#############################################################
#