diff options
author | qwell <qwell@f38db490-d61c-443f-a65b-d21fe96a405b> | 2009-03-02 20:16:51 +0000 |
---|---|---|
committer | qwell <qwell@f38db490-d61c-443f-a65b-d21fe96a405b> | 2009-03-02 20:16:51 +0000 |
commit | 1b3a252266b5f30dcc3fc5b3c9d084b2b9e1cf85 (patch) | |
tree | 334930e2e0bf6273c5c2e896e386152270a650d7 /main/editline | |
parent | 6628131bf660a242358ddaad96904704241b0d00 (diff) |
Merged revisions 179395 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4
........
r179395 | qwell | 2009-03-02 14:14:57 -0600 (Mon, 02 Mar 2009) | 1 line
Remove several silly warnings in editline. One about a broken preprocessor directive, and another about strlcpy/strlcat.
(closes issue #14264)
Reported by: dimas
........
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@179396 f38db490-d61c-443f-a65b-d21fe96a405b
Diffstat (limited to 'main/editline')
-rwxr-xr-x | main/editline/configure | 120 | ||||
-rw-r--r-- | main/editline/configure.in | 2 | ||||
-rw-r--r-- | main/editline/np/unvis.c | 2 | ||||
-rw-r--r-- | main/editline/sys.h | 10 |
4 files changed, 129 insertions, 5 deletions
diff --git a/main/editline/configure b/main/editline/configure index 61f56b882..af4523c5e 100755 --- a/main/editline/configure +++ b/main/editline/configure @@ -1740,9 +1740,121 @@ CCSRCS="$CCSRCS np/unvis.c" fi done +for ac_func in strlcpy +do +echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 +echo "configure:1747: checking for $ac_func" >&5 +if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + cat > conftest.$ac_ext <<EOF +#line 1752 "configure" +#include "confdefs.h" +/* System header to define __stub macros and hopefully few prototypes, + which can conflict with char $ac_func(); below. */ +#include <assert.h> +/* Override any gcc2 internal prototype to avoid an error. */ +/* We use char because int might match the return type of a gcc2 + builtin and then its argument prototype would still apply. */ +char $ac_func(); + +int main() { + +/* The GNU C library defines this for functions which it implements + to always fail with ENOSYS. Some functions are actually named + something starting with __ and the normal name is an alias. */ +#if defined (__stub_$ac_func) || defined (__stub___$ac_func) +choke me +#else +$ac_func(); +#endif + +; return 0; } +EOF +if { (eval echo configure:1775: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then + rm -rf conftest* + eval "ac_cv_func_$ac_func=yes" +else + echo "configure: failed program was:" >&5 + cat conftest.$ac_ext >&5 + rm -rf conftest* + eval "ac_cv_func_$ac_func=no" +fi +rm -f conftest* +fi + +if eval "test \"`echo '$ac_cv_func_'$ac_func`\" = yes"; then + echo "$ac_t""yes" 1>&6 + ac_tr_func=HAVE_`echo $ac_func | tr 'abcdefghijklmnopqrstuvwxyz' 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'` + cat >> confdefs.h <<EOF +#define $ac_tr_func 1 +EOF + +else + echo "$ac_t""no" 1>&6 +CCSRCS="$CCSRCS np/strlcpy.c" +fi +done + +for ac_func in strlcat +do +echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 +echo "configure:1803: checking for $ac_func" >&5 +if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + cat > conftest.$ac_ext <<EOF +#line 1808 "configure" +#include "confdefs.h" +/* System header to define __stub macros and hopefully few prototypes, + which can conflict with char $ac_func(); below. */ +#include <assert.h> +/* Override any gcc2 internal prototype to avoid an error. */ +/* We use char because int might match the return type of a gcc2 + builtin and then its argument prototype would still apply. */ +char $ac_func(); + +int main() { + +/* The GNU C library defines this for functions which it implements + to always fail with ENOSYS. Some functions are actually named + something starting with __ and the normal name is an alias. */ +#if defined (__stub_$ac_func) || defined (__stub___$ac_func) +choke me +#else +$ac_func(); +#endif + +; return 0; } +EOF +if { (eval echo configure:1831: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then + rm -rf conftest* + eval "ac_cv_func_$ac_func=yes" +else + echo "configure: failed program was:" >&5 + cat conftest.$ac_ext >&5 + rm -rf conftest* + eval "ac_cv_func_$ac_func=no" +fi +rm -f conftest* +fi + +if eval "test \"`echo '$ac_cv_func_'$ac_func`\" = yes"; then + echo "$ac_t""yes" 1>&6 + ac_tr_func=HAVE_`echo $ac_func | tr 'abcdefghijklmnopqrstuvwxyz' 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'` + cat >> confdefs.h <<EOF +#define $ac_tr_func 1 +EOF + +else + echo "$ac_t""no" 1>&6 +CCSRCS="$CCSRCS np/strlcat.c" +fi +done + cat > conftest.$ac_ext <<EOF -#line 1746 "configure" +#line 1858 "configure" #include "confdefs.h" #include <sys/cdefs.h> #ifdef __RCSID @@ -1761,7 +1873,7 @@ rm -f conftest* cat > conftest.$ac_ext <<EOF -#line 1765 "configure" +#line 1877 "configure" #include "confdefs.h" #include <sys/cdefs.h> #ifdef __COPYRIGHT @@ -1780,7 +1892,7 @@ rm -f conftest* cat > conftest.$ac_ext <<EOF -#line 1784 "configure" +#line 1896 "configure" #include "confdefs.h" #include <sys/cdefs.h> #ifdef __RENAME @@ -1799,7 +1911,7 @@ rm -f conftest* cat > conftest.$ac_ext <<EOF -#line 1803 "configure" +#line 1915 "configure" #include "confdefs.h" #include <sys/cdefs.h> #ifdef _DIAGASSERT diff --git a/main/editline/configure.in b/main/editline/configure.in index e7be9b381..a83eb8366 100644 --- a/main/editline/configure.in +++ b/main/editline/configure.in @@ -99,6 +99,8 @@ AC_CHECK_FUNCS(issetugid) AC_CHECK_FUNCS(fgetln, , CCSRCS="$CCSRCS np/fgetln.c") AC_CHECK_FUNCS(strvis, , CCSRCS="$CCSRCS np/vis.c") AC_CHECK_FUNCS(strunvis, , CCSRCS="$CCSRCS np/unvis.c") +AC_CHECK_FUNCS(strlcpy, , CCSRCS="$CCSRCS np/strlcpy.c") +AC_CHECK_FUNCS(strlcat, , CCSRCS="$CCSRCS np/strlcat.c") AC_EGREP_CPP(yes, [#include <sys/cdefs.h> diff --git a/main/editline/np/unvis.c b/main/editline/np/unvis.c index f43c4c749..844a5581b 100644 --- a/main/editline/np/unvis.c +++ b/main/editline/np/unvis.c @@ -61,7 +61,7 @@ __warn_references(unvis, "warning: reference to compatibility unvis(); include <vis.h> for correct reference") #endif -#if !HAVE_VIS_H +#ifndef HAVE_VIS_H /* * decode driven by state machine */ diff --git a/main/editline/sys.h b/main/editline/sys.h index 87ecc899c..cb2389de2 100644 --- a/main/editline/sys.h +++ b/main/editline/sys.h @@ -74,6 +74,16 @@ typedef void *ioctl_t; char *fgetln(FILE *fp, size_t *len); #endif +#ifndef HAVE_STRLCPY +#define strlcpy libedit_strlcpy +size_t strlcpy(char *dst, const char *src, size_t siz); +#endif + +#ifndef HAVE_STRLCAT +#define strlcat libedit_strlcat +size_t strlcat(char *dst, const char *src, size_t siz); +#endif + #define REGEX /* Use POSIX.2 regular expression functions */ #undef REGEXP /* Use UNIX V8 regular expression functions */ |