[Feature][ZXW-88]merge P50 version

Only Configure: No
Affected branch: master
Affected module: unknown
Is it affected on both ZXIC and MTK: only ZXIC
Self-test: Yes
Doc Update: No

Change-Id: I34667719d9e0e7e29e8e4368848601cde0a48408
diff --git a/ap/lib/binder/libcutils/Makefile b/ap/lib/binder/libcutils/Makefile
new file mode 100755
index 0000000..d124952
--- /dev/null
+++ b/ap/lib/binder/libcutils/Makefile
@@ -0,0 +1,95 @@
+include $(COMMON_MK)
+
+TARGET_CPU_SMP = false
+
+ifeq ($(TARGET_CPU_SMP),true)
+    targetSmpFlag := -DANDROID_SMP=1
+else
+    targetSmpFlag := -DANDROID_SMP=0
+endif
+
+commonSources := \
+	hashmap.c \
+	atomic.c \
+	native_handle.c \
+	config_utils.c \
+	load_file.c \
+	open_memstream.c \
+	strdup16to8.c \
+	strdup8to16.c \
+	record_stream.c \
+	process_name.c \
+	threads.c \
+	sched_policy.c \
+	iosched_policy.c \
+	socket_local_client.c \
+	socket_local_server.c
+
+
+
+LOCAL_SRC_FILES := $(commonSources) \
+        ashmem-dev.c \
+        klog.c \
+        memory.c \
+        uevent.c \
+        properties.c \
+
+
+LOCAL_SRC_FILES_arm += \
+        arch-arm/memset32.S \
+
+LOCAL_SRC_FILES_arm64 += \
+        arch-arm64/android_memset.S \
+
+
+LOCAL_CFLAGS_arm   += -DHAVE_MEMSET16 -DHAVE_MEMSET32
+LOCAL_CFLAGS_arm64 += -DHAVE_MEMSET16 -DHAVE_MEMSET32
+
+LOCAL_MODULE := libcutils.so
+
+LOCAL_C_INCLUDES = -I../include
+LOCAL_C_INCLUDES += -I../include/log
+LOCAL_C_INCLUDES += -I../include/cutils
+LOCAL_C_INCLUDES += -I../include/utils
+#-I$(STAGEDIR)
+
+LOCAL_CFLAGS += -fPIC -g -O3   -DBINDER_IPC_32BIT=1 -DHAVE_ENDIAN_H -DHAVE_PTHREADS -DHAVE_SYS_UIO_H -DHAVE_POSIX_FILEMAP -DHAVE_STRLCPY -DHAVE_PRCTL $(targetSmpFlag) $(LOCAL_CFLAGS_arm)
+LOCAL_CFLAGS += -Werror
+# -nostartfiles
+
+LOCAL_CPPFLAGS += -fPIC -g -O2 -DBINDER_IPC_32BIT=1 -DHAVE_ENDIAN_H -DHAVE_PTHREADS -DHAVE_SYS_UIO_H -DHAVE_POSIX_FILEMAP -DHAVE_STRLCPY -DHAVE_PRCTL $(targetSmpFlag) $(LOCAL_CFLAGS_arm)
+LOCAL_CPPFLAGS += -std=c++11
+
+LOCAL_LDLIBS  += -lpthread
+#LOCAL_LDFLAGS += -shared
+LDFLAGS += -shared
+
+ALL_OBJS = $(subst .c,.o, $(LOCAL_SRC_FILES))
+ALL_OBJS_AS = $(subst .S,.o, $(LOCAL_SRC_FILES_arm))
+
+all : $(LOCAL_MODULE)
+	@echo "Compile $(LOCAL_MODULE) done!"
+
+clean :
+	@rm -rvf $(ALL_OBJS) $(LOCAL_MODULE)
+
+$(LOCAL_MODULE) : $(ALL_OBJS) $(ALL_OBJS_AS)
+#	$(CXX) $(LOCAL_LDFLAGS) $(LOCAL_CPPFLAGS) -o $@ $^ $(LOCAL_LDLIBS)
+	$(CXX) $(LDFLAGS) $(LOCAL_CPPFLAGS) -o $@ $^ $(LOCAL_LDLIBS)
+
+%.o:%.c
+	@echo Compile $< 
+	$(CC) $(LOCAL_CFLAGS) $(LOCAL_C_INCLUDES) -c $< -o $@
+
+%.o:%.cpp
+	@echo Compile $< 
+	$(CXX) $(LOCAL_CPPFLAGS) $(LOCAL_C_INCLUDES) -c $< -o $@
+
+%.o:%.S
+	@echo Compile $< 
+	$(CXX) $(LOCAL_CPPFLAGS) $(LOCAL_C_INCLUDES) -c $< -o $@
+
+romfs:
+	$(ROMFSINST) $(LOCAL_MODULE) /lib/$(LOCAL_MODULE)
+	@echo $(LOCAL_MODULE) has been installed!
+
diff --git a/ap/lib/binder/libcutils/libcutils.so b/ap/lib/binder/libcutils/libcutils.so
new file mode 100755
index 0000000..d470748
--- /dev/null
+++ b/ap/lib/binder/libcutils/libcutils.so
Binary files differ