MantisBT - CMake
View Issue Details
0012635CMake(No Category)public2011-12-19 20:272012-07-09 06:52
Sean McBride 
Brad King 
normalminorhave not tried
closedfixed 
CMake 2.8.6 
 
0012635: Building CMake with clang produces warnings in libarchive
When building current git master CMake with clang (with no warning flags specified) there are several warnings nonetheless generated, see below. These are the only warnings. Perhaps they are already fixed upstream?


/Volumes/Leopard/Users/sean/kitware/CMake/Utilities/cmlibarchive/libarchive/archive_read_disk_set_standard_lookup.c:227:12: warning: implicitly declaring C library function 'strdup' with type
      'char *(const char *)'
    return strdup(result->pw_name);
           ^
/Volumes/Leopard/Users/sean/kitware/CMake/Utilities/cmlibarchive/libarchive/archive_read_disk_set_standard_lookup.c:227:12: note: please include the header <string.h> or explicitly provide a declaration
      for 'strdup'

/Volumes/Leopard/Users/sean/kitware/CMake/Utilities/cmlibarchive/libarchive/archive_write_disk_set_standard_lookup.c:120:15: warning: implicitly declaring C library function 'strdup' with type
      'char *(const char *)'
    b->name = strdup(gname);
              ^
/Volumes/Leopard/Users/sean/kitware/CMake/Utilities/cmlibarchive/libarchive/archive_write_disk_set_standard_lookup.c:120:15: note: please include the header <string.h> or explicitly provide a declaration
      for 'strdup'

/Volumes/Leopard/Users/sean/kitware/CMake/Utilities/cmlibarchive/libarchive/archive_write_set_format_mtree.c:580:9: warning: 'MD5_Init' is deprecated [-Wdeprecated-declarations]
        archive_md5_init(&mtree->md5ctx);
        ^
/Volumes/Leopard/Users/sean/kitware/CMake/Utilities/cmlibarchive/libarchive/archive_hash.h:60:41: note: expanded from macro 'archive_md5_init'
# define archive_md5_init(ctx) MD5_Init(ctx)
                                        ^
/Volumes/Leopard/Users/sean/kitware/CMake/Utilities/cmlibarchive/libarchive/archive_write_set_format_mtree.c:588:9: warning: 'RIPEMD160_Init' is deprecated [-Wdeprecated-declarations]
        archive_rmd160_init(&mtree->rmd160ctx);
        ^
/Volumes/Leopard/Users/sean/kitware/CMake/Utilities/cmlibarchive/libarchive/archive_hash.h:76:41: note: expanded from macro 'archive_rmd160_init'
# define archive_rmd160_init(ctx) RIPEMD160_Init(ctx)
                                        ^
/Volumes/Leopard/Users/sean/kitware/CMake/Utilities/cmlibarchive/libarchive/archive_write_set_format_mtree.c:596:9: warning: 'SHA1_Init' is deprecated [-Wdeprecated-declarations]
        archive_sha1_init(&mtree->sha1ctx);
        ^
/Volumes/Leopard/Users/sean/kitware/CMake/Utilities/cmlibarchive/libarchive/archive_hash.h:92:41: note: expanded from macro 'archive_sha1_init'
# define archive_sha1_init(ctx) SHA1_Init(ctx)
                                        ^
/Volumes/Leopard/Users/sean/kitware/CMake/Utilities/cmlibarchive/libarchive/archive_write_set_format_mtree.c:767:9: warning: 'MD5_Final' is deprecated [-Wdeprecated-declarations]
        archive_md5_final(&mtree->md5ctx, buf);
        ^
/Volumes/Leopard/Users/sean/kitware/CMake/Utilities/cmlibarchive/libarchive/archive_hash.h:61:45: note: expanded from macro 'archive_md5_final'
# define archive_md5_final(ctx, buf) MD5_Final(buf, ctx)
                                            ^
/Volumes/Leopard/Users/sean/kitware/CMake/Utilities/cmlibarchive/libarchive/archive_write_set_format_mtree.c:776:9: warning: 'RIPEMD160_Final' is deprecated [-Wdeprecated-declarations]
        archive_rmd160_final(&mtree->rmd160ctx, buf);
        ^
/Volumes/Leopard/Users/sean/kitware/CMake/Utilities/cmlibarchive/libarchive/archive_hash.h:77:45: note: expanded from macro 'archive_rmd160_final'
# define archive_rmd160_final(ctx, buf) RIPEMD160_Final(buf, ctx)
                                            ^
/Volumes/Leopard/Users/sean/kitware/CMake/Utilities/cmlibarchive/libarchive/archive_write_set_format_mtree.c:785:9: warning: 'SHA1_Final' is deprecated [-Wdeprecated-declarations]
        archive_sha1_final(&mtree->sha1ctx, buf);
        ^
/Volumes/Leopard/Users/sean/kitware/CMake/Utilities/cmlibarchive/libarchive/archive_hash.h:93:45: note: expanded from macro 'archive_sha1_final'
# define archive_sha1_final(ctx, buf) SHA1_Final(buf, ctx)
                                            ^
/Volumes/Leopard/Users/sean/kitware/CMake/Utilities/cmlibarchive/libarchive/archive_write_set_format_mtree.c:865:9: warning: 'MD5_Update' is deprecated [-Wdeprecated-declarations]
        archive_md5_update(&mtree->md5ctx, buff, n);
        ^
/Volumes/Leopard/Users/sean/kitware/CMake/Utilities/cmlibarchive/libarchive/archive_hash.h:62:45: note: expanded from macro 'archive_md5_update'
# define archive_md5_update(ctx, buf, n) MD5_Update(ctx, buf, n)
                                            ^
/Volumes/Leopard/Users/sean/kitware/CMake/Utilities/cmlibarchive/libarchive/archive_write_set_format_mtree.c:869:9: warning: 'RIPEMD160_Update' is deprecated [-Wdeprecated-declarations]
        archive_rmd160_update(&mtree->rmd160ctx, buff, n);
        ^
/Volumes/Leopard/Users/sean/kitware/CMake/Utilities/cmlibarchive/libarchive/archive_hash.h:78:49: note: expanded from macro 'archive_rmd160_update'
# define archive_rmd160_update(ctx, buf, n) RIPEMD160_Update(ctx, buf, n)
                                                ^
/Volumes/Leopard/Users/sean/kitware/CMake/Utilities/cmlibarchive/libarchive/archive_write_set_format_mtree.c:873:9: warning: 'SHA1_Update' is deprecated [-Wdeprecated-declarations]
        archive_sha1_update(&mtree->sha1ctx, buff, n);
        ^
/Volumes/Leopard/Users/sean/kitware/CMake/Utilities/cmlibarchive/libarchive/archive_hash.h:94:45: note: expanded from macro 'archive_sha1_update'
# define archive_sha1_update(ctx, buf, n) SHA1_Update(ctx, buf, n)
                                            ^
No tags attached.
Issue History
2011-12-19 20:27Sean McBrideNew Issue
2011-12-20 08:31Brad KingNote Added: 0028018
2011-12-20 11:06Sean McBrideNote Added: 0028020
2011-12-20 11:11Brad KingNote Added: 0028021
2012-01-03 16:03Sean McBrideNote Added: 0028150
2012-01-03 16:42Brad KingNote Added: 0028152
2012-01-10 15:42Brad KingNote Added: 0028242
2012-01-10 15:42Brad KingStatusnew => resolved
2012-01-10 15:42Brad KingResolutionopen => fixed
2012-01-10 15:42Brad KingAssigned To => Brad King
2012-07-09 06:52David ColeNote Added: 0029950
2012-07-09 06:52David ColeStatusresolved => closed

Notes
(0028018)
Brad King   
2011-12-20 08:31   
You can try the upstream from here:

  http://code.google.com/p/libarchive/source/checkout [^]

It's been a long time since we first imported a snapshot of libarchive and we haven't updated it except for porting a few fixes. We've been hesitant to update because we made several portability fixes and only some went upstream, but that was back in CVS days so we don't know what they were.

This is at least the second recent issue, after 0012629, that justifies an update from upstream libarchive.
(0028020)
Sean McBride   
2011-12-20 11:06   
Brad, I'm afraid I won't have time to try in the foreseeable future...
(0028021)
Brad King   
2011-12-20 11:11   
Re 0012635:0028020: Sorry, I didn't mean to imply that I expected you to do the update. The first "you can try" suggestion was just to see if upstream builds with Clang cleanly. The rest was a general note about the approach I'd like to take for this.

It looks like upstream is pretty close to their milestone 3.0 release. That will be a good starting point for the next update.
(0028150)
Sean McBride   
2012-01-03 16:03   
Seems to be fixed upstream, though there are other clang warnings, I filed a bug with them:

http://code.google.com/p/libarchive/issues/detail?id=219 [^]

That's all the time I can spend on this I'm afraid...
(0028152)
Brad King   
2012-01-03 16:42   
I've merged to 'next' a topic that updates libarchive to a more recent upstream snapshot:

  http://cmake.org/gitweb?p=cmake.git;a=shortlog;h=f15d7576 [^]

In order to avoid diverging too much from upstream I blocked all warnings with "-w" in our build, at least until things settle.
(0028242)
Brad King   
2012-01-10 15:42   
We've merged the libarchive update to master:

  http://cmake.org/gitweb?p=cmake.git;a=commit;h=5a5c32e1 [^]

The new build rules add "-w" for Clang so there should be no warnings.
(0029950)
David Cole   
2012-07-09 06:52   
Closing resolved issues that have not been updated in more than 4 months.