diff options
Diffstat (limited to 'Utilities/cmlibarchive/libarchive/archive_hmac_private.h')
-rw-r--r-- | Utilities/cmlibarchive/libarchive/archive_hmac_private.h | 13 |
1 files changed, 12 insertions, 1 deletions
diff --git a/Utilities/cmlibarchive/libarchive/archive_hmac_private.h b/Utilities/cmlibarchive/libarchive/archive_hmac_private.h index a9fb8ec..64de743 100644 --- a/Utilities/cmlibarchive/libarchive/archive_hmac_private.h +++ b/Utilities/cmlibarchive/libarchive/archive_hmac_private.h @@ -30,6 +30,17 @@ #ifndef ARCHIVE_HMAC_PRIVATE_H_INCLUDED #define ARCHIVE_HMAC_PRIVATE_H_INCLUDED +/* + * On systems that do not support any recognized crypto libraries, + * the archive_hmac.c file is expected to define no usable symbols. + * + * But some compilers and linkers choke on empty object files, so + * define a public symbol that will always exist. This could + * be removed someday if this file gains another always-present + * symbol definition. + */ +int __libarchive_hmac_build_hack(void); + #ifdef __APPLE__ # include <AvailabilityMacros.h> # if MAC_OS_X_VERSION_MAX_ALLOWED >= 1060 @@ -53,7 +64,7 @@ typedef struct { } archive_hmac_sha1_ctx; -#elif defined(HAVE_LIBNETTLE) +#elif defined(HAVE_LIBNETTLE) && defined(HAVE_NETTLE_HMAC_H) #include <nettle/hmac.h> typedef struct hmac_sha1_ctx archive_hmac_sha1_ctx; |