fi
-# iconv library (ecore_txt)
-
-iconv_cflags=""
-iconv_libs=""
-have_iconv="no"
-AC_ARG_WITH([iconv-link],
- AC_HELP_STRING([--with-iconv-link=ICONV_LINK], [explicitly specify an iconv link option]),
- [
- iconv_libs=$withval
- have_iconv="yes"
- ])
-
-AC_MSG_CHECKING(for explicit iconv link options)
-if test "x${iconv_libs}" = "x" ; then
- AC_MSG_RESULT([no explicit iconv link option])
-else
- AC_MSG_RESULT([$iconv_libs])
-fi
-
-AM_ICONV
-
-if test "x${have_iconv}" = "xno" && test "x${am_cv_func_iconv}" = "xyes" ; then
- iconv_cflags=${LIBICONV}
- iconv_libs=${LTLIBICONV}
- have_iconv="yes"
-fi
-
-AC_SUBST(iconv_cflags)
-AC_SUBST(iconv_libs)
-
-
# SDL library (ecore_sdl)
have_sdl="no"
ECORE_CHECK_MODULE([data], [${want_ecore_data}], [Data])
# ecore_txt
-ECORE_CHECK_MODULE([txt], [${want_ecore_txt}], [Txt], [$have_iconv])
+ECORE_CHECK_MODULE([txt], [${want_ecore_txt}], [Txt], [yes])
# ecore_con
ECORE_CHECK_MODULE([con], [${want_ecore_con}], [Con], [${have_addrinfo}])
#ifndef _ECORE_TXT_H
#define _ECORE_TXT_H
+#include <Eina.h>
+#warning "this file is deprecated. use Eina.h instead."
+
#ifdef EAPI
# undef EAPI
#endif
extern "C" {
#endif
-EAPI char *ecore_txt_convert(const char *enc_from, const char *enc_to, const char *text);
+EAPI char *ecore_txt_convert(const char *enc_from, const char *enc_to, const char *text) EINA_DEPRECATED;
#ifdef __cplusplus
}
-I$(top_srcdir)/src/lib/ecore \
-I$(top_builddir)/src/lib/ecore \
@EFL_ECORE_TXT_BUILD@ \
-@iconv_cflags@
+@EINA_CFLAGS@
if BUILD_ECORE_TXT
libecore_txt_la_SOURCES = \
ecore_txt.c
-libecore_txt_la_LIBADD = @iconv_libs@
+libecore_txt_la_LIBADD = @EINA_LIBS@
libecore_txt_la_LDFLAGS = -no-undefined @lt_enable_auto_import@ -version-info @version_info@ @ecore_txt_release_info@
# include <config.h>
#endif
-#include <stdlib.h>
-#include <string.h>
-#include <errno.h>
-#include <iconv.h>
-
#include "Ecore_Txt.h"
-#include "ecore_txt_private.h"
/**
- * To be documented.
- *
- * FIXME: Finish this.
+ * @deprecated use eina_str_convert() instead.
*/
EAPI char *
ecore_txt_convert(const char *enc_from, const char *enc_to, const char *text)
{
- iconv_t ic;
- char *new_txt, *inp, *outp;
- size_t inb, outb, outlen, tob, outalloc;
-
- if (!text) return NULL;
- ic = iconv_open(enc_to, enc_from);
- if (ic == (iconv_t)(-1)) return NULL;
- new_txt = malloc(64);
- inb = strlen(text);
- outb = 64;
- inp = (char*)text;
- outp = new_txt;
- outalloc = 64;
- outlen = 0;
-
- for (;;)
- {
- size_t count;
-
- tob = outb;
- count = iconv(ic, &inp, &inb, &outp, &outb);
- outlen += tob - outb;
- if (count == (size_t)(-1))
- {
- if (errno == E2BIG)
- {
- new_txt = realloc(new_txt, outalloc + 64);
- outp = new_txt + outlen;
- outalloc += 64;
- outb += 64;
- }
- else if (errno == EILSEQ)
- {
- if (new_txt) free(new_txt);
- new_txt = NULL;
- break;
- }
- else if (errno == EINVAL)
- {
- if (new_txt) free(new_txt);
- new_txt = NULL;
- break;
- }
- else
- {
- if (new_txt) free(new_txt);
- new_txt = NULL;
- break;
- }
- }
- if (inb == 0)
- {
- if (outalloc == outlen) new_txt = realloc(new_txt, outalloc + 1);
- new_txt[outlen] = 0;
- break;
- }
- }
- iconv_close(ic);
- return new_txt;
+ EINA_LOG_ERR("use eina_str_convert() instead.");
+ return eina_str_convert(enc_from, enc_to, text);
}