Fix / suppress warnings for clang+mingw

Switch attribute error to attribute unavailable, which apparently works
since it then broke the build :-/

Suppress unused parameter warnings. They aren't that useful for windows
functions that are just #ifndef WIN32. This is marked as a global cflag,
but something is overriding that with the clang+mingw changes, and it's
not actually that hard to suppress or fix where necessary.

Bug: 69933068
Test: mmma build/tools/libhost
Change-Id: I09adda4544bc9b56452b4fe182dba3d0b701dcbb
This commit is contained in:
Dan Willemsen 2017-11-29 18:47:29 -08:00
parent ada8948b9a
commit 25c73e9156
2 changed files with 9 additions and 1 deletions

View file

@ -10,6 +10,7 @@ cc_library_host_static {
name: "libhost",
target: {
windows: {
cflags: ["-Wno-unused-parameter"],
enabled: true,
},
},

View file

@ -352,7 +352,12 @@ static int copyRegular(const char* src, const char* dst, const struct stat* pSrc
* need to trash it so we can create one.
*/
#if defined(_WIN32)
extern int copySymlink(const char* src, const char* dst, const struct stat* pSrcStat, unsigned int options) __attribute__((error("no symlinks on Windows")));
extern int copySymlink(const char* src, const char* dst, const struct stat* pSrcStat, unsigned int options)
#ifdef __clang__
__attribute__((unavailable("no symlinks on Windows")));
#else
__attribute__((error("no symlinks on Windows")));
#endif
#else
static int copySymlink(const char* src, const char* dst, const struct stat* pSrcStat, unsigned int options)
{
@ -574,8 +579,10 @@ static int copyFileRecursive(const char* src, const char* dst, bool isCmdLine, u
} else {
retVal = copyDirectory(src, dst, &srcStat, options);
}
#if !defined(_WIN32)
} else if (S_ISLNK(srcStat.st_mode)) {
retVal = copySymlink(src, dst, &srcStat, options);
#endif
} else if (S_ISREG(srcStat.st_mode)) {
retVal = copyRegular(src, dst, &srcStat, options);
} else {