[cogl/wip/rig: 25/33] ulib: fix linking with libiconv if required



commit 8c64ed3ee48148e7d09ef99e8f489a26e37eaf10
Author: Robert Bragg <robert bragg intel com>
Date:   Tue Apr 15 00:16:41 2014 +0100

    ulib: fix linking with libiconv if required

 configure.ac               |   18 +++++++++---------
 deps/ulib/src/Makefile.am  |    4 ++--
 deps/ulib/test/Makefile.am |    2 +-
 3 files changed, 12 insertions(+), 12 deletions(-)
---
diff --git a/configure.ac b/configure.ac
index f1fc4d9..f0a1ee9 100644
--- a/configure.ac
+++ b/configure.ac
@@ -1356,15 +1356,15 @@ AC_CHECK_HEADERS(getopt.h sys/time.h sys/wait.h pwd.h langinfo.h iconv.h sys/typ
 AC_CHECK_HEADER(alloca.h, [HAVE_ALLOCA_H=1], [HAVE_ALLOCA_H=0])
 AC_SUBST(HAVE_ALLOCA_H)
 
-AC_CHECK_FUNC(iconv_open,
-              [
-                AC_CHECK_HEADER(localcharset.h, AC_DEFINE([HAVE_LOCALCHARSET_H], [1], [localcharset.h]))
-              ],
-              [
-                COGL_DEP_LIBS="$COGL_DEP_LIBS -liconv"
-                AC_CHECK_LIB([iconv], [locale_charset],
-                             [AC_CHECK_HEADER(localcharset.h, AC_DEFINE([HAVE_LOCALCHARSET_H], [1], 
[localcharset.h]))])
-              ])
+dnl Note we don't simply use AC_CHECK_HEADERS() to check for
+dnl localcharset.h since we want to take into account which
+dnl libiconv AM_ICONV() found...
+save_LDFLAGS="$LDFLAGS"
+LDFLAGS=$LIBICONV
+AC_LINK_IFELSE([AC_LANG_PROGRAM([#include <localcharset.h>],
+                                [locale_charset();])],
+                  [AC_DEFINE([HAVE_LOCALCHARSET_H], [1],[localcharset.h])])
+LDFLAGS=$save_LDFLAGS
 
 dnl ================================================================
 dnl Platform values
diff --git a/deps/ulib/src/Makefile.am b/deps/ulib/src/Makefile.am
index 83f7b41..e14adf9 100644
--- a/deps/ulib/src/Makefile.am
+++ b/deps/ulib/src/Makefile.am
@@ -68,14 +68,14 @@ libulib_static_la_SOURCES=$(libulib_la_SOURCES)
 libulib_static_la_CFLAGS = $(libulib_la_CFLAGS)
 
 if HOST_WIN32
-libulib_la_LIBADD = -lm $(LIBICONV) -lpsapi
+libulib_la_LIBADD = -lm $(LTLIBICONV) -lpsapi
 else
 if PLATFORM_ANDROID
 libulib_la_LIBADD = -llog
 endif
 endif
 
-libulib_static_la_LIBADD = $(libulib_la_LIBADD) $(LIBICONV)
+libulib_static_la_LIBADD = $(libulib_la_LIBADD) $(LTLIBICONV)
 libulib_static_la_LDFLAGS = -static
 
 MAINTAINERCLEANFILES = Makefile.in
diff --git a/deps/ulib/test/Makefile.am b/deps/ulib/test/Makefile.am
index e7f8ee6..99cc02a 100644
--- a/deps/ulib/test/Makefile.am
+++ b/deps/ulib/test/Makefile.am
@@ -37,7 +37,7 @@ AM_CPPFLAGS =                 \
 test_ulib_SOURCES = $(SOURCES)
 
 test_ulib_CFLAGS = -DULIB_TESTS=1 -I$(srcdir)/../src -I../src -DDRIVER_NAME=\"EGlib\"
-test_ulib_LDADD = ../src/libulib.la $(LIBICONV)
+test_ulib_LDADD = ../src/libulib.la $(LTLIBICONV)
 
 run-ulib: all
        srcdir=`readlink -f $(srcdir)` ./test-ulib


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]