build: Makefile not support multiple thread build [2/2]

PD#SWPL-177960

Problem:
1. create wayland-protocol file
2. build
step 2 depend step 1

Solution:
add dependency for step 2

Verify:
local

Signed-off-by: guoping.li <guoping.li@amlogic.com>
Change-Id: I2aaf972ee5ef9ae3b611caeba3bbbafb7eb5cf16
diff --git a/westeros/Makefile b/westeros/Makefile
index eb84bc5..639d08f 100644
--- a/westeros/Makefile
+++ b/westeros/Makefile
@@ -69,9 +69,8 @@
 
 ifeq ($(WAYLAND_SUPPORT), y)
 LOCAL_CFLAGS += -DSUPPORT_WAYLAND
-OBJ_CLIENT_LIB += $(OBJ_WESTEROS_DISPLAY)
 OBJ_CLIENT_LIB += $(GENERATED_SOURCES:.c=.o)
-
+OBJ_CLIENT_LIB += $(OBJ_WESTEROS_DISPLAY)
 LD_SUPPORT += -lwayland-client
 endif
 
@@ -95,32 +94,34 @@
 
 TARGET = $(CLIENT_LIB)
 
-all: $(GENERATED_SOURCES) $(TARGET)
+all: $(TARGET)
+$(OBJ_CLIENT_LIB): $(GENERATED_SOURCES)
 
 LD_FLAG = -g -fPIC -O -Wcpp -lm -lpthread -lz -Wl,-Bsymbolic -ldl
 LD_FLAG_LIB = $(LD_FLAG) -shared $(LD_SUPPORT) -llog -lessosrmgr
 
-%.o:%.c $(DEPS)
+%.o:%.c $(DEPS) $(GENERATED_SOURCES)
 	echo CC $(OUT_DIR)/$@ $(OUT_DIR)/$< $(FLAGS)
 	$(CC) -c -o $(OUT_DIR)/$@ $(OUT_DIR)/$< $(CFLAGS) -fPIC
 
-%.o:%.cpp $(DEPS)
+%.o:%.cpp $(DEPS) $(GENERATED_SOURCES)
 	echo CXX $(OUT_DIR)/$@ $< $(FLAGS)
 	$(CXX) -c -o $(OUT_DIR)/$@ $< $(CXXFLAGS) -fPIC
 
 $(CLIENT_LIB): $(OBJ_CLIENT_LIB)
 	$(CXX) -o $(OUT_DIR)/$@ $(patsubst %, $(OUT_DIR)/%, $^) $(LD_FLAG_LIB)
 	cp -f $(OUT_DIR)/$(CLIENT_LIB) $(STAGING_DIR)/usr/lib
-	rm -f $(patsubst %, $(OUT_DIR)/%, $(OBJ_CLIENT_LIB))
 
 $(PROTOCOL_PATH)/%-protocol.c : $(PROTOCOL_PATH)/%.xml
-	echo $(@D)
+	echo $(@)
 	mkdir -p $(@D) && $(SCANNER_TOOL) public-code < $< > $(OUT_DIR)/$@
 
 $(PROTOCOL_PATH)/%-server-protocol.h : $(PROTOCOL_PATH)/%.xml
+	echo $(@)
 	mkdir -p $(@D) && $(SCANNER_TOOL) server-header < $< > $(OUT_DIR)/$@
 
 $(PROTOCOL_PATH)/%-client-protocol.h : $(PROTOCOL_PATH)/%.xml
+	echo $(@)
 	mkdir -p $(@D) && $(SCANNER_TOOL) client-header < $< > $(OUT_DIR)/$@
 
 
@@ -136,6 +137,7 @@
 	rm -f $(OUT_DIR)/$(PROTOCOL_PATH)/*.o
 	rm -f $(patsubst %, $(OUT_DIR)/%, $(OBJ_WESTEROS_DISPLAY))
 	rm -f $(OUT_DIR)/*.o
+	rm -f $(patsubst %, $(OUT_DIR)/%, $(OBJ_CLIENT_LIB))
 
 $(shell mkdir -p $(OUT_DIR)/wayland-protocol)
-$(shell mkdir -p $(OUT_DIR)/$(TOOLS_PATH))
\ No newline at end of file
+$(shell mkdir -p $(OUT_DIR)/$(TOOLS_PATH))
diff --git a/weston/Makefile b/weston/Makefile
index 7d03905..92c3670 100644
--- a/weston/Makefile
+++ b/weston/Makefile
@@ -80,8 +80,8 @@
 
 ifeq ($(WAYLAND_SUPPORT), y)
 LOCAL_CFLAGS += -DSUPPORT_WAYLAND
-OBJ_CLIENT_LIB += $(OBJ_WESTON_DISPLAY)
 OBJ_CLIENT_LIB += $(GENERATED_SOURCES:.c=.o)
+OBJ_CLIENT_LIB += $(OBJ_WESTON_DISPLAY)
 LD_SUPPORT += -lwayland-client
 endif
 
@@ -107,16 +107,17 @@
 
 TARGET = $(CLIENT_LIB)
 
-all: $(GENERATED_SOURCES) $(TARGET)
+all: $(TARGET)
+$(OBJ_CLIENT_LIB): $(GENERATED_SOURCES)
 
 LD_FLAG = -g -fPIC -O -Wcpp -lm -lpthread -lz -Wl,-Bsymbolic -ldl
 LD_FLAG_LIB = $(LD_FLAG) -shared $(LD_SUPPORT) -llog
 
-%.o:%.c $(DEPS)
+%.o:%.c $(DEPS) $(GENERATED_SOURCES)
 	echo CC $(OUT_DIR)/$@ $(OUT_DIR)/$< $(FLAGS)
 	$(CC) -c -o $(OUT_DIR)/$@ $(OUT_DIR)/$< $(CFLAGS) -fPIC
 
-%.o:%.cpp $(DEPS)
+%.o:%.cpp $(DEPS) $(GENERATED_SOURCES)
 	echo CXX $(OUT_DIR)/$@ $< $(FLAGS)
 	$(CXX) -c -o $(OUT_DIR)/$@ $< $(CXXFLAGS) -fPIC
 
@@ -125,13 +126,15 @@
 	cp -f $(OUT_DIR)/$(CLIENT_LIB) $(STAGING_DIR)/usr/lib
 
 $(PROTOCOL_PATH)/%-protocol.c : $(PROTOCOL_PATH)/%.xml
-	echo $(@D)
+	echo $(@)
 	mkdir -p $(@D) && $(SCANNER_TOOL) public-code < $< > $(OUT_DIR)/$@
 
 $(PROTOCOL_PATH)/%-server-protocol.h : $(PROTOCOL_PATH)/%.xml
+	echo $(@)
 	mkdir -p $(@D) && $(SCANNER_TOOL) server-header < $< > $(OUT_DIR)/$@
 
 $(PROTOCOL_PATH)/%-client-protocol.h : $(PROTOCOL_PATH)/%.xml
+	echo $(@)
 	mkdir -p $(@D) && $(SCANNER_TOOL) client-header < $< > $(OUT_DIR)/$@
 
 
@@ -150,4 +153,4 @@
 	rm -f $(patsubst %, $(OUT_DIR)/%, $(OBJ_CLIENT_LIB))
 
 $(shell mkdir -p $(OUT_DIR)/wayland-protocol)
-$(shell mkdir -p $(OUT_DIR)/$(TOOLS_PATH))
\ No newline at end of file
+$(shell mkdir -p $(OUT_DIR)/$(TOOLS_PATH))