X-Git-Url: http://erislabs.net/gitweb/?a=blobdiff_plain;ds=sidebyside;f=m4%2Fstrdup.m4;h=ce40c2152771ca340e8a39d3865260504e721b50;hb=e967460a14f47cdab5ff7d71fbcaee71e00c330b;hp=42325ab9ee7d119b10715c22de5d04272ea27971;hpb=62a39c7d945eb4160c206242b85c624fb2fb21fd;p=gnulib.git diff --git a/m4/strdup.m4 b/m4/strdup.m4 index 42325ab9e..ce40c2152 100644 --- a/m4/strdup.m4 +++ b/m4/strdup.m4 @@ -1,16 +1,44 @@ -# strdup.m4 serial 6 -dnl Copyright (C) 2002, 2003, 2004, 2005 Free Software Foundation, Inc. +# strdup.m4 serial 12 + +dnl Copyright (C) 2002-2010 Free Software Foundation, Inc. + dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. AC_DEFUN([gl_FUNC_STRDUP], [ - AC_LIBSOURCES([strdup.c, strdup.h]) + AC_REQUIRE([gl_HEADER_STRING_H_DEFAULTS]) + AC_CHECK_FUNCS_ONCE([strdup]) + if test $ac_cv_func_strdup != yes; then + AC_LIBOBJ([strdup]) + gl_PREREQ_STRDUP + fi + AC_CHECK_DECLS_ONCE([strdup]) + if test $ac_cv_have_decl_strdup = no; then + HAVE_DECL_STRDUP=0 + fi +]) - AC_REPLACE_FUNCS(strdup) - AC_CHECK_DECLS_ONCE(strdup) - gl_PREREQ_STRDUP +AC_DEFUN([gl_FUNC_STRDUP_POSIX], +[ + AC_REQUIRE([gl_HEADER_STRING_H_DEFAULTS]) + AC_REQUIRE([gl_CHECK_MALLOC_POSIX]) + AC_CHECK_FUNCS_ONCE([strdup]) + if test $ac_cv_func_strdup = yes; then + if test $gl_cv_func_malloc_posix != yes; then + REPLACE_STRDUP=1 + AC_LIBOBJ([strdup]) + gl_PREREQ_STRDUP + fi + else + AC_LIBOBJ([strdup]) + gl_PREREQ_STRDUP + fi + AC_CHECK_DECLS_ONCE([strdup]) + if test $ac_cv_have_decl_strdup = no; then + HAVE_DECL_STRDUP=0 + fi ]) # Prerequisites of lib/strdup.c.