[T106][ZXW-22]7520V3SCV2.01.01.02P42U09_VEC_V0.8_AP_VEC origin source commit

Change-Id: Ic6e05d89ecd62fc34f82b23dcf306c93764aec4b
diff --git a/ap/build/uClibc/libintl/Makefile b/ap/build/uClibc/libintl/Makefile
new file mode 100644
index 0000000..c8dc9b4
--- /dev/null
+++ b/ap/build/uClibc/libintl/Makefile
@@ -0,0 +1,13 @@
+# Makefile for uClibc
+#
+# Copyright (C) 2000-2005 Erik Andersen <andersen@uclibc.org>
+#
+# Licensed under the LGPL v2.1, see the file COPYING.LIB in this tarball.
+#
+
+top_srcdir=../
+top_builddir=../
+include $(top_builddir)Rules.mak
+all: libs
+include Makefile.in
+include $(top_srcdir)Makerules
diff --git a/ap/build/uClibc/libintl/Makefile.in b/ap/build/uClibc/libintl/Makefile.in
new file mode 100644
index 0000000..22ae70c
--- /dev/null
+++ b/ap/build/uClibc/libintl/Makefile.in
@@ -0,0 +1,76 @@
+# Makefile for uClibc
+#
+# Copyright (C) 2000-2008 Erik Andersen <andersen@uclibc.org>
+#
+# Licensed under the LGPL v2.1, see the file COPYING.LIB in this tarball.
+#
+
+subdirs += libintl
+
+CFLAGS-libintl := -DNOT_IN_libc -DIS_IN_libintl $(SSP_ALL_CFLAGS)
+
+LDFLAGS-libintl.so := $(LDFLAGS)
+
+LIBS-libintl.so := $(LIBS)
+
+libintl_FULL_NAME := libintl-$(VERSION).so
+
+MOBJ := \
+	gettext.o ngettext.o  dgettext.o dcgettext.o dngettext.o dcngettext.o \
+	textdomain.o bindtextdomain.o bind_textdomain_codeset.o \
+	_nl_expand_alias.o _nl_msg_cat_cntr.o # glibc-isms
+
+libintl_DIR := $(top_srcdir)libintl
+libintl_OUT := $(top_builddir)libintl
+
+libintl_MSRC := $(libintl_DIR)/intl.c
+libintl_MOBJ := $(patsubst %.o,$(libintl_OUT)/%.o,$(MOBJ))
+
+ifneq ($(DOMULTI),n)
+CFLAGS-libintl += $(patsubst %,-DL_%,$(subst .o,,$(notdir $(libintl_MOBJ))))
+endif
+
+ifeq ($(DOPIC),y)
+libintl-a-y := $(libintl_MOBJ:.o=.os)
+else
+libintl-a-y := $(libintl_MOBJ)
+endif
+libintl-so-y := $(libintl_MOBJ:.o=.os)
+
+lib-a-$(UCLIBC_HAS_GETTEXT_AWARENESS) += $(top_builddir)lib/libintl.a
+lib-so-$(UCLIBC_HAS_GETTEXT_AWARENESS) += $(top_builddir)lib/libintl.so
+objclean-y += CLEAN_libintl
+
+ifeq ($(DOMULTI),n)
+ifeq ($(DOPIC),y)
+$(top_builddir)lib/libintl.so: $(top_builddir)lib/libintl.a $(libc.depend)
+else
+$(top_builddir)lib/libintl.so: $(libintl_OUT)/libintl_so.a $(libc.depend)
+endif
+	$(call link.so,$(libintl_FULL_NAME),$(ABI_VERSION))
+else
+$(top_builddir)lib/libintl.so: $(libintl_OUT)/libintl.oS | $(libc.depend)
+	$(call linkm.so,$(libintl_FULL_NAME),$(ABI_VERSION))
+endif
+
+$(libintl_OUT)/libintl_so.a: $(libintl-so-y)
+	$(Q)$(RM) $@
+	$(do_ar)
+
+$(libintl_OUT)/libintl.oS: $(libintl_MSRC)
+	$(Q)$(RM) $@
+	$(compile-m)
+
+$(top_builddir)lib/libintl.a: $(libintl-a-y)
+	$(Q)$(INSTALL) -d $(dir $@)
+	$(Q)$(RM) $@
+	$(do_ar)
+
+$(libintl_MOBJ): $(libintl_MSRC)
+	$(compile.m)
+
+$(libintl_MOBJ:.o=.os): $(libintl_MSRC)
+	$(compile.m)
+
+CLEAN_libintl:
+	$(do_rm) $(addprefix $(libintl_OUT)/*., o os oS a)
diff --git a/ap/build/uClibc/libintl/intl.c b/ap/build/uClibc/libintl/intl.c
new file mode 100644
index 0000000..e42a999
--- /dev/null
+++ b/ap/build/uClibc/libintl/intl.c
@@ -0,0 +1,154 @@
+/* Copyright (C) 2003     Manuel Novoa III
+ * Copyright (C) 2000-2006 Erik Andersen <andersen@uclibc.org>
+ *
+ * Licensed under the LGPL v2.1, see the file COPYING.LIB in this tarball.
+ */
+
+/*
+ *  Stub version of libintl.
+ *
+ *  Aug 30, 2003
+ *  Add some hidden names to support locale-enabled libstd++.
+ */
+
+#include <stdlib.h>
+#include <string.h>
+#include <errno.h>
+
+#undef __OPTIMIZE__
+#include <libintl.h>
+
+/**********************************************************************/
+#ifdef L_gettext
+
+char *gettext(const char *msgid)
+{
+	return (char *) msgid;
+}
+
+#endif
+/**********************************************************************/
+#ifdef L_dgettext
+
+char *dgettext(const char *domainname,
+				 const char *msgid)
+{
+	return (char *) msgid;
+}
+
+#endif
+/**********************************************************************/
+#ifdef L_dcgettext
+
+char *dcgettext(const char *domainname,
+				  const char *msgid, int category)
+{
+	return (char *) msgid;
+}
+
+#endif
+/**********************************************************************/
+#ifdef L_ngettext
+
+char *ngettext(const char *msgid1, const char *msgid2,
+			   unsigned long int n)
+{
+	return (char *) ((n == 1) ? msgid1 : msgid2);
+}
+
+#endif
+/**********************************************************************/
+#ifdef L_dngettext
+
+char *dngettext(const char *domainname, const char *msgid1,
+				const char *msgid2, unsigned long int n)
+{
+	return (char *) ((n == 1) ? msgid1 : msgid2);
+}
+
+#endif
+/**********************************************************************/
+#ifdef L_dcngettext
+
+char *dcngettext(const char *domainname, const char *msgid1,
+				 const char *msgid2, unsigned long int n,
+				 int category)
+{
+	return (char *) ((n == 1) ? msgid1 : msgid2);
+}
+
+#endif
+/**********************************************************************/
+#ifdef L_textdomain
+
+char *textdomain(const char *domainname)
+{
+	static const char default_str[] = "messages";
+
+	if (domainname && *domainname && strcmp(domainname, default_str)) {
+		__set_errno(EINVAL);
+		return NULL;
+	}
+	return (char *) default_str;
+}
+
+#endif
+/**********************************************************************/
+#ifdef L_bindtextdomain
+
+char *bindtextdomain(const char *domainname, const char *dirname)
+{
+	static const char dir[] = "/";
+
+	if (!domainname || !*domainname
+		|| (dirname
+#if 1
+			&& ((dirname[0] != '/') || dirname[1])
+#else
+			&& strcmp(dirname, dir)
+#endif
+			)
+		) {
+		__set_errno(EINVAL);
+		return NULL;
+	}
+
+	return (char *) dir;
+}
+
+#endif
+/**********************************************************************/
+#ifdef L_bind_textdomain_codeset
+
+/* Specify the character encoding in which the messages from the
+   DOMAINNAME message catalog will be returned.  */
+char *bind_textdomain_codeset(const char *domainname, const char *codeset)
+{
+	if (!domainname || !*domainname || codeset) {
+		__set_errno(EINVAL);
+	}
+	return NULL;
+}
+
+#endif
+/**********************************************************************/
+#ifdef L__nl_expand_alias
+
+/* glibc-ism */
+
+const char *_nl_expand_alias(const char * name);
+const char *_nl_expand_alias(const char * name)
+{
+	return NULL;		 /* uClibc does not support locale aliases. */
+}
+
+#endif
+/**********************************************************************/
+#ifdef L__nl_msg_cat_cntr
+
+/* glibc-ism */
+
+int _nl_msg_cat_cntr = 0;
+
+#endif
+/**********************************************************************/