audio: Move build result to build result folder. [1/2]
PD#SWPL-150466
Problem:
Move build result to build result folder.
Solution:
Move build result to build result folder.
Verify:
Yocto: :AP222
Change-Id: I8070607ddaf3f1c22faf5b766d18432e02e352fb
Signed-off-by: xingri.gao <xingri.gao@amlogic.com>
diff --git a/Makefile b/Makefile
index 129d832..b8c1f5d 100644
--- a/Makefile
+++ b/Makefile
@@ -1,13 +1,15 @@
-OBJS=src/primitives.o \
- src/resampler.o \
- src/speexresample/resample.o \
- src/IpcBuffer/IpcBuffer.o
+AML_BUILD_DIR?=.
-CUTILS_OBJS=src/cutils/hashmap.o \
- src/cutils/properties.o \
- src/cutils/str_parms.o \
- src/cutils/threads.o \
- src/cutils/strlcpy.o
+SRCS=src/primitives.c \
+ src/resampler.c \
+ src/speexresample/resample.c
+SRCPPS = src/IpcBuffer/IpcBuffer.cpp
+
+CUTILS_SRCS=src/cutils/strlcpy.c
+CUTILS_SRCPPS = src/cutils/hashmap.cpp \
+ src/cutils/properties.cpp \
+ src/cutils/str_parms.cpp \
+ src/cutils/threads.cpp
#Allow to configure NEON support of SPEEX
TOOLCHAIN_NEON_SUPPORT ?= y
@@ -18,29 +20,40 @@
CFLAGS+=-fPIC -O2 -I./include -I./include/speex -I./include/IpcBuffer -I. -I./src $(TOOLCHAIN_NEON_FLAGS) -DNDEBUG -DFIXED_POINT -DRESAMPLE_FORCE_FULL_SINC_TABLE -DEXPORT=
LDFLAGS+=-llog -ldl -lrt -lpthread -lstdc++
-%.o: %.cpp
- $(CC) -c $(CFLAGS) $(CXXFLAGS) -o $@ $<
+CUTILS_OBJCTS = $(patsubst %.c, $(AML_BUILD_DIR)/%.o, $(notdir $(CUTILS_SRCS)))
+CUTILS_OBJCTS += $(patsubst %.cpp, $(AML_BUILD_DIR)/%.o, $(notdir $(CUTILS_SRCPPS)))
+SRCS_OBJCTS = $(patsubst %.c, $(AML_BUILD_DIR)/%.o, $(notdir $(SRCS)))
+SRCS_OBJCTS += $(patsubst %.cpp, $(AML_BUILD_DIR)/%.o, $(notdir $(SRCPPS)))
+SRCS_DIR = $(dir $(SRCS) $(SRCPPS))
+CUTILS_DIR = $(dir $(CUTILS_SRCS) $(SRCPPS))
-%.o: %.cc
- $(CC) -c $(CFLAGS) $(CXXFLAGS) -o $@ $<
+vpath %.c $(SRCS_DIR):$(CUTILS_DIR)
-%.o: %.c
+$(AML_BUILD_DIR)/%.o: %.c
$(CC) -c $(CFLAGS) -o $@ $<
-all: libamaudioutils.so libcutils.so
+$(AML_BUILD_DIR)/%.o: %.cc
+ $(CC) -c $(CFLAGS) $(CXXFLAGS) -o $@ $<
-libamaudioutils.so: $(OBJS)
+vpath %.cpp $(SRCS_DIR):$(CUTILS_DIR)
+
+$(AML_BUILD_DIR)/%.o: %.cpp
+ $(CC) -c $(CFLAGS) $(CXXFLAGS) -o $@ $<
+
+all: $(AML_BUILD_DIR)/libamaudioutils.so $(AML_BUILD_DIR)/libcutils.so
+
+$(AML_BUILD_DIR)/libamaudioutils.so: $(SRCS_OBJCTS)
$(CC) $(CFLAGS) -shared -o $@ $^ $(LDFLAGS)
-libcutils.so: $(CUTILS_OBJS)
+$(AML_BUILD_DIR)/libcutils.so: $(CUTILS_OBJCTS)
$(CC) $(CFLAGS) -shared -o $@ $^ $(LDFLAGS)
.PHONY: install
install:
- install -m 644 -D libamaudioutils.so -t $(STAGING_DIR)/usr/lib
- install -m 644 -D libamaudioutils.so -t $(TARGET_DIR)/usr/lib
- install -m 644 -D libcutils.so -t $(STAGING_DIR)/usr/lib
- install -m 644 -D libcutils.so -t $(TARGET_DIR)/usr/lib
+ install -m 644 -D $(AML_BUILD_DIR)/libamaudioutils.so -t $(STAGING_DIR)/usr/lib
+ install -m 644 -D $(AML_BUILD_DIR)/libamaudioutils.so -t $(TARGET_DIR)/usr/lib
+ install -m 644 -D $(AML_BUILD_DIR)/libcutils.so -t $(STAGING_DIR)/usr/lib
+ install -m 644 -D $(AML_BUILD_DIR)/libcutils.so -t $(TARGET_DIR)/usr/lib
for f in $(@D)/include/audio_utils/*.h; do \
install -m 644 -D $${f} -t $(STAGING_DIR)/usr/include/audio_utils; \
done
@@ -52,7 +65,8 @@
clean:
rm -rf $(STAGING_DIR)/usr/include/audio_utils
rm -rf $(STAGING_DIR)/usr/include/cutils
- rm -f libamaudioutils.so
+ rm -f $(AML_BUILD_DIR)/*.so
+ rm -f $(AML_BUILD_DIR)/*.o
rm -f $(TARGET_DIR)/usr/lib/libamaudioutils.so
rm -f $(STAGING_DIR)/usr/lib/libamaudioutils.so