summaryrefslogtreecommitdiff
path: root/cleopatre
diff options
context:
space:
mode:
authorThierry Carré2013-03-04 17:12:44 +0100
committerThierry Carré2013-03-08 14:22:53 +0100
commite66f5895f85a603d670aa5ff91275b6aff5a20cb (patch)
tree8a4fc7c76f8cd4f866a4903eee33f2f12ee4aa9d /cleopatre
parent1b66b589ea598c5f71cd6f21357079d35a44dbd2 (diff)
cleo/{buildroot/package, app/pmd}: update pmd 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/pmd/Makefile29
-rw-r--r--cleopatre/buildroot/package/pmd/pmd.mk6
2 files changed, 22 insertions, 13 deletions
diff --git a/cleopatre/application/pmd/Makefile b/cleopatre/application/pmd/Makefile
index 7201f83a47..ac5a516714 100644
--- a/cleopatre/application/pmd/Makefile
+++ b/cleopatre/application/pmd/Makefile
@@ -2,6 +2,13 @@ BIN=pmd
OBJPATH=obj
SRCPATH=src
+CLEO_DIR = ../..
+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
@@ -10,24 +17,23 @@ else #compile from buildroot
CC_WITH_CFLAGS=$(CC)
CC_WITHOUT_CFLAGS=$(CC_FOR_TARGET)
endif
-CLEO_DIR=../..
+
RESPONSE_FILE=extra_flags
-LIBSPID_DIR=$(CLEO_DIR)/application/libspid
-LIBMME_DIR=$(CLEO_DIR)/application/libmme
-EXTRA_INCLUDES=-I$(LIBSPID_DIR)/inc -I$(CLEO_DIR)/include
-EXTRA_CFLAGS=-MMD $(EXTRA_INCLUDES) @$(CLEO_DIR)/$(RESPONSE_FILE)
+INCLUDES = -I$(CLEO_DIR)/include \
+ $(shell $(LIBSPID_DIR)/libspid-config --I_opts)
+
+EXTRA_CFLAGS = -MMD -Wall $(INCLUDES) @$(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))
DEPS=$(patsubst %o,%d,$(OBJS))
-LIBS=-L$(LIBSPID_DIR) -L$(LIBMME_DIR) -lspid -lmme
all: $(BIN)
-libspid:
- $(MAKE) -C $(LIBSPID_DIR) libspid.so
-
-$(BIN): libspid $(OBJS)
+$(BIN): $(OBJS) $(LIBSPID_SO_BIN) $(LIBMME_SO_BIN)
$(CC_WITHOUT_CFLAGS) -o $@ $(OBJS) $(LIBS)
$(OBJPATH)/%.o: $(SRCPATH)/%.c
@@ -38,6 +44,9 @@ $(OBJS): $(OBJPATH)
$(OBJPATH):
mkdir $(OBJPATH)
+$(LIBSPID_SO_BIN) $(LIBMME_SO_BIN):
+ $(error libspid or libmme output files are not found)
+
-include $(DEPS)
.PHONY: all clean
diff --git a/cleopatre/buildroot/package/pmd/pmd.mk b/cleopatre/buildroot/package/pmd/pmd.mk
index b6502fc7a5..ec912594f8 100644
--- a/cleopatre/buildroot/package/pmd/pmd.mk
+++ b/cleopatre/buildroot/package/pmd/pmd.mk
@@ -38,7 +38,7 @@ $(PMD_DIR)/.configured: $(PMD_DIR)/.unpacked
touch $(PMD_DIR)/.configured
$(PMD_DIR)/pmd: $(PMD_LIBSPID_SITE)/libspid.so \
- $(PMD_DIR)/.configured
+ $(PMD_DIR)/.configured FORCE_PMD_MAKE
$(TARGET_CONFIGURE_OPTS) \
$(MAKE) -C $(PMD_DIR) pmd
@@ -67,8 +67,8 @@ pmd-clean:
pmd-dirclean:
rm -f $(PMD_DIR)
-# We declare $(PMD_DIR)/pmd rule as PHONY to force compilation
-.PHONY: $(PMD_DIR)/pmd
+# We declare PMD_MAKE rule as PHONY to force compilation
+.PHONY: FORCE_PMD_MAKE
#############################################################
#