summaryrefslogtreecommitdiffstats
path: root/Utilities/cmlibarchive
Commit message (Collapse)AuthorAgeFilesLines
* libarchive: Map fixed-size integer types from KWIML as typedefsBrad King2020-06-031-10/+10
| | | | | | | | | Refactoring in commit ade3b16e63 (libarchive: Use KWIML to get fixed-size integer types, 2020-06-01) accidentally changed the method of defining `int#_t` types from `typedef` to `#define`. Change it back to `typedef`. Reported-by: Rolf Eike Beer <eike@sf-mail.de>
* libarchive: Use KWIML to get fixed-size integer typesBrad King2020-06-022-216/+41
|
* libarchive: Avoid configure-time checks for integer range constantsBrad King2020-06-013-89/+15
|
* libarchive: Drop unused code providing uintmax_t and intmax_tBrad King2020-06-012-13/+0
| | | | The libarchive library code we use within CMake does not need these.
* Refactoring: Third-parties public headers are under cm3p prefixMarc Chevrier2020-05-0723-36/+36
| | | | Fixes: #20666
* libarchive: Update to build within CMakeBrad King2020-02-133-22/+9
| | | | | Hard-code more libarchive options as internal cache entries. Doing so makes some of our `IF(0)` conditions unnecessary, so remove those.
* Merge branch 'upstream-LibArchive' into update-libarchiveBrad King2020-02-13151-1319/+11634
| | | | | | | | | | * upstream-LibArchive: LibArchive 2020-02-11 (3288ebb0) Also manually restore content from upstream libarchive's main `CMakeLists.txt` file that was removed by previous commits and exclude it with `IF(0)` blocks. Do this as an evil merge so that `git blame -C` can follow the content to upstream.
* Merge topic 'libarchive-win-codepage'Brad King2020-02-071-2/+5
|\ | | | | | | | | | | | | | | 16e31523ba libarchive: Add support for UTF-8 locale on Windows f7c54d2049 libarchive: Fix WideCharToMultiByte output buffer size Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !4332
| * libarchive: Add support for UTF-8 locale on WindowsBrad King2020-02-061-1/+3
| | | | | | | | | | | | | | Backport libarchive upstream commit `c46e7993` (windows: Support UTF-8 locale, 2018-07-23, v3.4.0~105^2). Fixes: #20320
| * libarchive: Fix WideCharToMultiByte output buffer sizeBrad King2020-02-061-1/+2
| | | | | | | | | | | | Fix `archive_string_append_from_wcs_in_codepage` to account for the already-used portion of the buffer when computing the size of the remaining buffer for ``WideCharToMultiByte` output.
* | libarchive: Fix detection of 'major' on Solaris 11.4Brad King2020-01-301-1/+5
| | | | | | | | | | | | In `archive_pack_dev.c` there is code checking the `HAVE_MAJOR` macro, but it is not computed. Port the equivalent logic from `archive_entry.c`.
* | cmake: avoid marking local or unused variables as advancedBen Boeckel2020-01-201-1/+0
|/
* 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.