mirror of
https://github.com/samba-team/samba.git
synced 2025-01-26 10:04:02 +03:00
r15870: Improve detection of iconv - should prevent HAVE_ICONV_H being
defined when the installed iconv library doesn't match our criteria as well as some other minor fixes. (This used to be commit 7937932615434a59c84d8a1b81e368f6a5f8e429)
This commit is contained in:
parent
70afbd5090
commit
ca61b4f3b5
@ -20,12 +20,14 @@
|
||||
Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
|
||||
*/
|
||||
|
||||
#ifdef HAVE_NATIVE_ICONV
|
||||
#ifdef HAVE_ICONV_H
|
||||
#include <iconv.h>
|
||||
#endif
|
||||
#ifdef HAVE_GICONV_H
|
||||
#include <giconv.h>
|
||||
#endif
|
||||
#endif
|
||||
|
||||
/* needed for some systems without iconv. Doesn't really matter
|
||||
what error code we use */
|
||||
|
@ -1,14 +1,7 @@
|
||||
dnl SMB_CHECK_ICONV(action-if-found,action-if-not-found)
|
||||
AC_DEFUN(SMB_CHECK_ICONV,[
|
||||
AC_CHECK_HEADERS(iconv.h giconv.h)
|
||||
|
||||
AC_TRY_RUN([#include <stdlib.h>
|
||||
#ifdef HAVE_GICONV_H
|
||||
#include <giconv.h>
|
||||
#endif
|
||||
#ifdef HAVE_ICONV_H
|
||||
#include <iconv.h>
|
||||
#endif
|
||||
#include <$1>
|
||||
|
||||
int main()
|
||||
{
|
||||
@ -16,29 +9,24 @@ int main()
|
||||
if (cd == 0 || cd == (iconv_t)-1) return -1;
|
||||
return 0;
|
||||
}
|
||||
],[$1],[$2])
|
||||
],[$2],[$3])
|
||||
])
|
||||
|
||||
dnl SMB_CHECK_ICONV_DIR(dir,action-if-found,action-if-not-found)
|
||||
AC_DEFUN(SMB_CHECK_ICONV_DIR,
|
||||
[
|
||||
if test -f "$1/include/iconv.h" -o -f "$1/include/giconv.h"; then
|
||||
CPPFLAGS="-I$1/include"
|
||||
LDFLAGS="-L$1/lib"
|
||||
LIBS=-liconv
|
||||
|
||||
SMB_CHECK_ICONV([$2],
|
||||
[
|
||||
LIBS=-lgiconv
|
||||
SMB_CHECK_ICONV([$2],[$3])
|
||||
SMB_CHECK_ICONV(iconv.h,[ AC_DEFINE(HAVE_ICONV_H,1,[Whether iconv.h is present]) $2 ], [
|
||||
LIBS=-lgiconv
|
||||
SMB_CHECK_ICONV(giconv.h,[AC_DEFINE(HAVE_GICONV_H,1,[Whether giconv.h is present]) $2],[$3])
|
||||
])
|
||||
|
||||
CPPFLAGS=$save_CPPFLAGS
|
||||
LDFLAGS=$save_LDFLAGS
|
||||
LIBS=$save_LIBS
|
||||
else
|
||||
$2
|
||||
fi
|
||||
])
|
||||
|
||||
ICONV_FOUND=no
|
||||
@ -61,7 +49,7 @@ AC_ARG_WITH(libiconv,
|
||||
])
|
||||
|
||||
if test x$ICONV_FOUND = xno; then
|
||||
SMB_CHECK_ICONV([ICONV_FOUND=yes])
|
||||
SMB_CHECK_ICONV(iconv.h,[ICONV_FOUND=yes])
|
||||
fi
|
||||
|
||||
for i in $LOOK_DIRS ; do
|
||||
|
Loading…
x
Reference in New Issue
Block a user