summaryrefslogtreecommitdiffstats
path: root/Utilities/cmlibarchive
Commit message (Collapse)AuthorAgeFilesLines
* Merge topic 'libarchive-solaris-11.4'Brad King2019-05-221-5/+5
|\ | | | | | | | | | | | | 6c81c6538b libarchive: avoid b64_encode name conflict with Solaris built-in function Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !3351
| * libarchive: avoid b64_encode name conflict with Solaris built-in functionBrad King2019-05-211-5/+5
| | | | | | | | | | | | | | Solaris 11.4 has a built-in function named `b64_encode`. Add a `la_` prefix to our internal function to avoid conflict. Fixes: #19268
* | CMake: Enable use of zstd in libarchiveBrad King2019-03-134-7/+5
| | | | | | | | | | | | | | Build zstd as part of CMake or find one on the system. Modify our port of libarchive to use the zstd configured for use with CMake. Issue: #18657
* | Utilities: Suppress warnings in third-party code when using XLClangBrad King2019-02-251-1/+1
| |
* | Remove now-unused code once used for MIPSpro on IRIXBrad King2019-02-211-1/+1
|/ | | | | | In commit beb991110d (Remove now-unused code once used on IRIX, 2019-01-11, v3.14.0-rc1~167^2) we removed remnants of IRIX support. Also remove remnants of MIPSpro compiler support.
* Merge branch 'upstream-LibArchive' into update-libarchiveBrad King2018-09-2652-203/+1002
| | | | | * upstream-LibArchive: LibArchive 2018-09-03 (5fe69dd0)
* libarchive: Backport fix for build with LibreSSL 2.7Brad King2018-09-261-1/+2
| | | | | | | | Backport libarchive commit v3.3.3~16^2 (fix build with LibreSSL 2.7, 2018-04-01). LibreSSL 2.7 adds OpenSSL 1.1 API leading to conflicts on method names. Fixes: #18404
* libarchive: Do not use nanosecond file time APIs on macOS < 10.13Brad King2017-09-201-0/+11
| | | | | | | | | The SDK for macOS 10.13 adds `futimens` and `utimensat` so our checks for these symbols may pass. However, the symbols are not available at runtime on older macOS versions. Instead on macOS we can check for availability based on the deployment target version. Issue: #17101
* libarchive: Fix inclusion of zlib, bzlib, and lzma for build within CMakeBrad King2017-07-201-3/+3
| | | | | Update a new source file imported from libarchive upstream to include the headers for compression libraries using the CMake wrappers.
* Merge branch 'upstream-LibArchive' into update-libarchiveBrad King2017-07-2064-2760/+4371
| | | | | * upstream-LibArchive: LibArchive 2017-07-09 (98a69539)
* Merge topic 'libarchive-backport-rc4-crypto-rec'Brad King2017-03-221-1/+1
|\ | | | | | | | | | | | | 18009aaf libarchive: backport rc4 crypto requirement update Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !598
| * libarchive: backport rc4 crypto requirement updateBrad King2017-03-211-1/+1
| | | | | | | | | | | | Backport upstream libarchive commit 70f497f456 (As per Cryptographic Requirements, 2017-03-19). Discard more bytes of the RC4 keystream to reduce the possibility of non-random bytes.
* | libarchive: Remove liblzma from introspection testsBrad King2017-02-271-2/+0
| | | | | | | | | | | | This was added upstream but does not make sense in CMake because we may replace the library with a logical target name that will not work inside a `try_compile`.
* | Merge branch 'upstream-LibArchive' into update-libarchiveBrad King2017-02-2714-124/+228
| | | | | | | | | | * upstream-LibArchive: LibArchive 2017-02-25 (d6b1bb9f)
* | libarchive: Avoid using isblankBrad King2017-02-231-5/+9
| | | | | | | | It is not available on VS 2012 and below. Use our own impl instead.
* | libarchive: Avoid declaration after statement in C codeBrad King2017-02-231-2/+4
| |
* | libarchive: Fix use of ssize_t in archive_entry.hBrad King2017-02-231-2/+23
| | | | | | | | | | This type is not available on Windows compilers so for clients including this header we need to use `la_ssize_t` instead as we do in `archive.h`.
* | libarchive: Define __LA_DEPRECATED consistentlyBrad King2017-02-231-5/+2
| | | | | | | | | | | | Upstream libarchive now defines this macro in two places with the same logic in both. However, CMake's bundled copy disables this macro, so we need to update the new location of its definition to be consistent.
* | Merge branch 'upstream-LibArchive' into update-libarchiveBrad King2017-02-2086-1969/+4682
|/ | | | | * upstream-LibArchive: LibArchive 2017-02-19 (100ee75a)
* libarchive: Add support for building with OpenSSL 1.1Brad King2016-11-286-38/+75
| | | | | | | | | OpenSSL 1.1 made some CTX structures opaque. Port our code to use the structures only through pointers via OpenSSL 1.1 APIs. Use our adaption layer to make this work with OpenSSL 1.0 and below. Patch-by: Tomas Mraz <tmraz@redhat.com> Patch-from: https://bugzilla.redhat.com/1383744
* libarchive: Add headers to adapt between OpenSSL 1.1 and older versionsBrad King2016-11-286-3/+108
| | | | | | | Add private forwarding headers for `openssl/{evp,hmac}.h` to give us a central place to add adaptation code to work across multiple incompatible OpenSSL versions. Provide compatibility implementations of some OpenSSL 1.1 APIs when using older OpenSSL versions.
* libarchive: Fix include order in xxhash.cBrad King2016-08-171-2/+3
| | | | | We need to include `archive_platform.h` before any system headers in order to ensure that `_WIN32_WINNT` is defined early enough.
* Merge topic 'update-libarchive'Brad King2016-06-2119-49/+88
|\ | | | | | | | | | | 52f58267 Merge branch 'upstream-LibArchive' into update-libarchive 2b94d71d LibArchive 2016-06-19 (139d0576)
| * Merge branch 'upstream-LibArchive' into update-libarchiveBrad King2016-06-2019-49/+88
| | | | | | | | | | * upstream-LibArchive: LibArchive 2016-06-19 (139d0576)
* | libarchive: Restore OpenSSL include directory from upstreamBrad King2016-06-071-0/+1
|/ | | | | | | | | | In commit v3.6.0-rc1~100^2 (libarchive: Drop early use of crypto library, 2016-05-03) we accidentally dropped the include directory for OpenSSL as well as the library. Without that, it works only accidentally when CHECK_CRYPTO happens to choose the OpenSSL implementation and add the include directory. Reported-by: Bradley Lowekamp <blowekamp@mail.nih.gov>
* libarchive: Drop early use of crypto libraryBrad King2016-05-031-2/+0
| | | | | | | | We already add the crypto library after the ssl library when using OpenSSL. Do not add it to the list of libraries individually or we may end up with the wrong order later. Further investigation will be needed to see how this change can be reconciled with the upstream need for the original line.
* Merge branch 'upstream-LibArchive' into update-libarchiveBrad King2016-05-0249-271/+868
| | | | | Resolve conflicts in C code by taking their side. Resolve conflicts in CMake code by integrating the changes.
* libarchive: Remove CMake-specific READMEBrad King2016-05-021-66/+0
| | | | | | We will now manage the libarchive source tree updates using the `Utilities/Scripts/update-libarchive.bash` script. Drop the README that covered the old method.
* Fix spelling typos in comments and documentation (#16037)Felix Geyer2016-03-293-3/+3
| | | | | The Debian package checker tool (lintian) detected several typos in CMake.
* libarchive: Update README-CMake.txt for new snapshotBrad King2015-10-281-4/+4
|
* libarchive: Drop use of pthread.h for CMake buildBrad King2015-10-281-0/+2
| | | | CMake does not use threads so we do not need this in our libarchive.
* libarchive: Do not use pthread.h API without headerBrad King2015-10-281-2/+1
|
* libarchive: Test for Clang builtin before using itBrad King2015-10-281-1/+4
| | | | The __builtin_bswap16 builtin is not available on Clang 2.1.
* libarchive: Avoid using 'uint8_t' as bitfield typeBrad King2015-10-221-8/+8
| | | | The IBM XL compiler does not like it. Use plain 'unsigned' instead.
* libarchive: Avoid using name 'hz'Brad King2015-10-221-3/+3
| | | | AIX system headers define the symbol 'hz' as a preprocessor macro.
* libarchive: Drop outdated CMake portability snprintfBrad King2015-10-221-4/+0
| | | | | The archive_read_support_format_zip.c source no longer calls snprintf directly so we do not need a portability macro for it.
* libarchive: Avoid non-portable u_int8_tBrad King2015-10-221-7/+7
| | | | Use uint8_t that we prepare in config.h instead.
* libarchive: Use CommonCrypto APIs on OS X only when availableBrad King2015-10-224-3/+20
| | | | | Use each CommonCrypto API only when using an OS X SDK version new enough to provide it.
* libarchive: Define O_CLOEXEC when missingBrad King2015-10-221-0/+4
| | | | Do this in archive_random.c as we do in several other sources already.
* libarchive: Fix VS 7.1 Debug buildBrad King2015-10-211-1/+1
| | | | | This version of the MS C runtime library forgets to export _byteswap_ushort.
* libarchive: Guard bcyrpt.h with HAVE_BCRYPT_HBrad King2015-10-211-1/+1
|
* libarchive: Drop CMake-specific Borland compiler workaroundBrad King2015-10-211-7/+0
| | | | We no longer build CMake with the Borland compiler.
* libarchive: Define version macro before first useBrad King2015-10-211-10/+10
|
* Merge branch 'libarchive-upstream' into update-libarchiveBrad King2015-10-21100-1031/+8235
| | | | Resolve conflicts by integrating changes from both sides.
* Merge topic 'fix-libarchive-mktemp'Brad King2015-04-101-3/+5
|\ | | | | | | | | 1f33b45d libarchive: Fix string concatentation in Windows mktemp implementation
| * libarchive: Fix string concatentation in Windows mktemp implementationTim Kientzle2015-04-091-3/+5
| | | | | | | | | | | | | | | | | | | | Port upstream LibArchive commit "compute string pointers after concatenation" (2014-09-25) and commit "Move variables to top of function for non-C99 compilers" (2014-11-15) to our CMake copy. Otherwise we may compute a pointer to memory that is about to be freed and then compute a bad size to give to CryptGenRandom. Inspired-by: Tim Kientzle <kientzle@gmail.com>
* | libarchive: Use base-256 encoding for UID/GID like GNU tar doesNils Gladitz2015-04-091-6/+6
|/
* libarchive: Constify internal __archive_get_date implementationBrad King2015-01-151-4/+4
| | | | | The caller of this API already re-declares it as const, so update the implementation accordingly.
* Merge topic 'cmake-cmp0054-warnings'Brad King2014-10-211-4/+4
|\ | | | | | | | | 29c3edb8 Avoid if() quoted auto-dereference
| * Avoid if() quoted auto-dereferenceBen Boeckel2014-10-201-4/+4
| | | | | | | | | | | | | | When testing CMAKE_<LANG>_COMPILER_ID values, do not explicitly dereference or quote the variable. We want if() to auto-dereference the variable and not its value. Also replace MATCHES with STREQUAL where equivalent.