| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
| |
The system headers on some platforms define a 'u_long' type so we cannot
use the name. Spell out 'unsigned long' instead.
|
|
|
|
|
|
| |
In archive_entry.h refer to "BY_HANDLE_FILE_INFORMATION *" using
"struct _BY_HANDLE_FILE_INFORMATION *" to avoid requiring the
includer to already have <windows.h>.
|
| |
|
| |
|
|
|
|
|
|
| |
Drop ENABLE_TAR and ENABLE_CPIO related options because we do not build
these command-line tools. Drop ENABLE_TEST and ENABLE_COVERAGE options
because we do not build the tests.
|
|
|
|
|
| |
CMake does not install the headers or libraries so skip the .pc file
too.
|
| |
|
|
|
|
|
|
| |
Resolve conflicts in favor of the upstream side where possible.
Resolve a logical conflict in archive_windows.h where the upstream
port to Watcom was done slightly differently from ours.
|
| |
|
| |
|
| |
|
|
|
|
|
| |
The macro maps to an implementation that works on older compilers
when necessary.
|
|
|
|
|
|
|
| |
Port upstream commit 6cf33c93 (Issue 320: Rewrite (again) to avoid
the left shift that CLang dislikes so much, 2013-12-07) into CMake.
Inspired-by: Tim Kientzle <kientzle@freebsd.org>
|
|
|
|
|
|
|
| |
Port upstream commit 533e8fda (Rework the sign-extension to avoid
left-shift of an explicit negative number, 2013-06-29) into CMake.
Inspired-by: Tim Kientzle <kientzle@freebsd.org>
|
|
|
|
|
|
| |
Since commit 7d47c693 (Drop compatibility with CMake < 2.4, 2013-10-08)
we no longer need to use the configure_file IMMEDIATE option to support
compatibility modes less than 2.0.
|
|
|
|
|
|
|
|
|
|
|
|
| |
Apple distributes their own Clang build with their own version numbers
that differ from upstream Clang. Use the __apple_build_version__ symbol
to identify the Apple Clang compiler and report the Apple Build Version
as the fourth version component in CMAKE_<LANG>_COMPILER_VERSION. Add
Compiler/AppleClang-<lang> and Platform/Darwin-AppleClang-<lang> modules
that simply include the upstream equivalents.
Fix comparisons of CMAKE_<LANG>_COMPILER_ID to Clang in CMake's own
source and tests to account for AppleClang.
|
|
|
|
|
|
|
|
|
|
|
| |
Ensure CMAKE_DATA_DIR, CMAKE_DOC_DIR, and CMAKE_MAN_DIR are always
relative paths in CMake code, and set defaults accordingly. Use the
install() command instead of install_files() and install_targets().
This is more modern and also avoids stripping of the first character
from user-specified destinations.
While at it, fix the default destinations reported in the bootstrap
help.
|
|
|
|
|
|
|
| |
Avoid requiring CMake 2.8.6 for CMakePushCheckState or CMake 2.8.8 for
CMakeExpandImportedTargets. Drop the custom versions of CMake modules
CheckCSource(Compiles|Runs) because we do not use the SAFESEH option
anyway.
|
|
|
|
|
| |
Drop options POSIX_REGEX_LIB and ENABLE_SAFESEH that we do not want for
the CMake build of libarchive.
|
|
|
|
|
| |
Compilers such as Borland and MIPSpro do not like struct initialization
with variables. Initialize using assignment instead.
|
|
|
|
| |
CMake uses old libarchive APIs for now.
|
|
|
|
|
|
| |
Follow up change from commit ffa6faa4 (libarchive: Include cm_zlib.h to
get zlib used by CMake, 2011-12-20) for new includes of zlib.h in
updated libarchive.
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
Conflicts:
Utilities/cmlibarchive/CMakeLists.txt
Utilities/cmlibarchive/libarchive/archive.h
Utilities/cmlibarchive/libarchive/archive_entry.h
Utilities/cmlibarchive/libarchive/archive_read_disk_posix.c
Utilities/cmlibarchive/libarchive/archive_read_support_format_iso9660.c
Utilities/cmlibarchive/libarchive/archive_windows.h
Utilities/cmlibarchive/libarchive/archive_write_set_format_iso9660.c
|
|
|
|
|
|
|
|
|
| |
The archive_string_conv type sc variable already freed via free(sc) on
the other hand in second line we are tyring to free its subset via
free(sc->from_charset) this will cause a problem because we couldn't
reach sc after first release.
Reviewed-by: Igor Murzov <e-mail@date.by>
|
| |
|
| |
|
|
|
|
|
|
|
|
| |
caught by clang's -fsanitize=shift. A small unsigned int was
promoted, according to C's regular promotion rules, to a signed
int, it was then left shifted. This sometimes pushed a 1 into
the sign bit, which is undefined behaviour. Fixed by using
unsigned temporaries.
|
| |
|
|
|
|
| |
Suggested-by: Daniel R. Gomez <gomez@teragram.com>
|
|
|
|
|
|
|
|
|
| |
Update the requirement specified in the top-level CMakeLists.txt file.
Drop the special-case minimum required version of 2.8.0 because the new
minimum subsumes it.
Revert commit 6c611c6b (libarchive: Restore CMake 2.6.3 as minimum
version, 2012-01-05) since our requirement now subsumes libarchive's.
|
| |
|
|
|
|
| |
IBM xlc v6 cannot cope with a trailing ',' in enum definitions.
|
|
|
|
|
|
|
|
|
|
|
|
| |
The CMake TarTest fails with the error
mbsnrtowcs.c:116: __mbsnrtowcs: Assertion
`status == GCONV_OK || status != GCONV_EMPTY_INPUT ||
status == GCONV_ILLEGAL_INPUT || status == GCONV_INCOMPLETE_INPUT ||
status == GCONV_FULL_OUTPUT' failed.
on very old glibc versions. Work around the problem by pretending that
mbsnrtowcs does not exist. Libarchive will fall back to mbrtowc.
|
|
|
|
|
|
|
|
|
| |
Use the approach originally used in commit f91b3c1d (Add options to
build with system utility libraries, 2006-10-19) for all other
third-party libraries. Create a "cm_bzlib.h" header wrapper that
robustly includes the header from the bzip2 library chosen for the CMake
build (either builtin or system version). Include the header wrapper
anywhere we need the API provided by <bzlib.h>.
|
|
|
|
|
|
| |
Upstream libarchive now requires CMake 2.8 to get the newer add_test
functionality. Since we do not build libarchive's tests we do not
need the requirement.
|
| |
|
|
|
|
|
|
| |
Conflicts:
Utilities/cmlibarchive/CMakeLists.txt
Utilities/cmlibarchive/libarchive/archive_windows.c
|
|
|
|
| |
We do not care about trailing whitespace in third-party code.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
We cannot suppress PGI compiler warnings completely because even with
the "-w" flag the compiler still writes a message containing "compilation
completed with warnings" to stderr.
A warning is triggered by expressions like
test ? NULL : ptr_to_const_char
test ? ".." : ptr_to_const_char
that the PGI compiler handles incorrectly. It chooses the pointer type
of the first option (either void* or char*) and warns about conversion
of the second without a cast. Flip the expression logic to
!test ? ptr_to_const_char : NULL
!test ? ptr_to_const_char : ".."
to help the compiler choose the proper result type.
|
|
|
|
| |
We are not developing libarchive so we do not care about warnings.
|
|
|
|
|
| |
The PGI compiler confuses parameter name "isoent" with "struct isoent".
Rename the parameter to "curent" to avoid confusion.
|
|
|
|
|
| |
Some Linux API versions do not perform this inclusion automatically,
so types like __u64 needed by the latter are not available.
|
|
|
|
|
|
|
| |
The HP-UX <wchar.h> header provides 'mbstate_t' in C89/C90 mode only if
_XOPEN_SOURCE is defined to exactly 500. Type 'mbstate_t' was
introduced in C89/C90 Normative Amendment 1, aka C94/C95, adding support
international character sets. It is part of C99 but not C89/C90.
|
|
|
|
|
| |
Clear CMAKE_REQUIRED_(INCLUDES|LIBRARIES) so that the rest of the checks
after this one do not try to link zlib.
|
|
|
|
|
| |
Do not set CMAKE_BUILD_TYPE to Debug. Use the configuration specified by
the user.
|
|
|
|
|
| |
Do not use the copyfile.h API if the header is not available.
The Mac SDK for older OS X versions does not provide it.
|
|
|
|
|
| |
Use the same pattern already used elsewhere in archive_read_disk_posix.c
for ST_NOATIME to use MNT_NOATIME only when defined.
|
|
|
|
|
|
| |
Configure the result as definition HAVE_STRUCT_STATVFS_F_IOSIZE and use
the member only if it exists. At least one platform (IRIX) provides
struct statvfs without this member.
|