From: Trevor Saunders Date: Tue, 10 Feb 2015 03:40:20 +0000 (+0000) Subject: Support gcov-tool without ftw.h X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=370500455759a49e82f55c91e559d7ecab0d32ab;p=gcc.git Support gcov-tool without ftw.h gcc/ PR gcov-profile/61889 * config.in: regenerate. * configure.in: Likewise. * configure.ac: Check for ftw.h. * gcov-tool.c: Check for ftw.h before using nftw. From-SVN: r220566 --- diff --git a/gcc/ChangeLog b/gcc/ChangeLog index d98276b80b3..f21856768d2 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,11 @@ +2015-02-09 Trevor Saunders + + PR gcov-profile/61889 + * config.in: regenerate. + * configure.in: Likewise. + * configure.ac: Check for ftw.h. + * gcov-tool.c: Check for ftw.h before using nftw. + 2015-02-09 Trevor Saunders PR lto/64076 diff --git a/gcc/config.in b/gcc/config.in index f34adb57e6d..7bde5b1509d 100644 --- a/gcc/config.in +++ b/gcc/config.in @@ -1098,6 +1098,12 @@ #endif +/* Define to 1 if you have the header file. */ +#ifndef USED_FOR_TARGET +#undef HAVE_FTW_H +#endif + + /* Define to 1 if you have the `fwrite_unlocked' function. */ #ifndef USED_FOR_TARGET #undef HAVE_FWRITE_UNLOCKED diff --git a/gcc/configure b/gcc/configure index 1bf43589ae6..1a35d5a186a 100755 --- a/gcc/configure +++ b/gcc/configure @@ -8448,7 +8448,7 @@ $as_echo "#define GWINSZ_IN_SYS_IOCTL 1" >>confdefs.h fi for ac_header in limits.h stddef.h string.h strings.h stdlib.h time.h iconv.h \ - fcntl.h unistd.h sys/file.h sys/time.h sys/mman.h \ + fcntl.h ftw.h unistd.h sys/file.h sys/time.h sys/mman.h \ sys/resource.h sys/param.h sys/times.h sys/stat.h \ direct.h malloc.h langinfo.h ldfcn.h locale.h wchar.h do : diff --git a/gcc/configure.ac b/gcc/configure.ac index 102dab966fd..a553a653f92 100644 --- a/gcc/configure.ac +++ b/gcc/configure.ac @@ -1028,7 +1028,7 @@ ACX_HEADER_STRING AC_HEADER_SYS_WAIT AC_HEADER_TIOCGWINSZ AC_CHECK_HEADERS(limits.h stddef.h string.h strings.h stdlib.h time.h iconv.h \ - fcntl.h unistd.h sys/file.h sys/time.h sys/mman.h \ + fcntl.h ftw.h unistd.h sys/file.h sys/time.h sys/mman.h \ sys/resource.h sys/param.h sys/times.h sys/stat.h \ direct.h malloc.h langinfo.h ldfcn.h locale.h wchar.h) diff --git a/gcc/gcov-tool.c b/gcc/gcov-tool.c index 0f97b532d7f..d63ad1c102e 100644 --- a/gcc/gcov-tool.c +++ b/gcc/gcov-tool.c @@ -35,7 +35,9 @@ see the files COPYING3 and COPYING.RUNTIME respectively. If not, see #include #include #include +#if HAVE_FTW_H #include +#endif #include extern int gcov_profile_merge (struct gcov_info*, struct gcov_info*, int, int); @@ -49,6 +51,8 @@ extern void gcov_set_verbose (void); /* Set to verbose output mode. */ static bool verbose; +#if HAVE_FTW_H + /* Remove file NAME if it has a gcda suffix. */ static int @@ -69,13 +73,18 @@ unlink_gcda_file (const char *name, return ret; } +#endif /* Remove the gcda files in PATH recursively. */ static int -unlink_profile_dir (const char *path) +unlink_profile_dir (const char *path ATTRIBUTE_UNUSED) { +#if HAVE_FTW_H return nftw(path, unlink_gcda_file, 64, FTW_DEPTH | FTW_PHYS); +#else + return -1; +#endif } /* Output GCOV_INFO lists PROFILE to directory OUT. Note that