Commit Graph

17691 Commits

Author SHA1 Message Date
Brad King 297d9f2032 libarchive: Cast mode constants to mode_t in case it is signed
At least one compiler (Borland) defines mode_t as just "short" which is
signed.  This breaks code like

  switch(archive_entry_filetype(e)) {
    case AE_IFREG:
    ...
  }

if AE_IFREG and other constants have a longer signed type (int) because
sign extension of the mode_t return type from archive_entry_filetype
changes its value.  Avoid the problem by ensuring the type of the
constants matches mode_t.

This change was originally made in commit a73acfbe (Fix for mode_t with
signed types, 2009-11-07).  Port it to the new libarchive snapshot.
2011-12-23 16:04:58 -05:00
Brad King e00dbe86d9 libarchive: Clean up configuration within CMake build
Require ZLIB but skip LZMA and XML support.  Mark ZLIB and ICONV cache
variables advanced.
2011-12-23 16:04:58 -05:00
Brad King b5dd9aa482 libarchive: Workaround case-insensitive symbols on Borland
Mangle the open_FILE symbols to avoid conflict with open_file:

 Warning: public '_archive_read_open_file'
          in module 'archive_read_open_filename.c' clashes with
	  prior module 'archive_read_open_file.c'
 Warning: public '_archive_write_open_file'
          in module 'archive_write_open_filename.c' clashes with
	  prior module 'archive_write_open_file.c'

This workaround should not go upstream because it will break when
mixing compilers.
2011-12-23 16:04:58 -05:00
Brad King 3b9eaec738 libarchive: Cast constants to int64_t instead of using LL suffix
The LL suffix is not portable.  Use an explicit cast instead.
2011-12-23 16:04:58 -05:00
Brad King 53da4b3028 libarchive: Declare mbstate_t and wcrtomb for Borland
The Borland C++ 5.81 runtime library provides wcrtomb but only the
C++ header <cwchar> actually declares the API.
2011-12-23 16:04:58 -05:00
Brad King ec48f10656 libarchive: Implement custom lseek for Borland
Restore Windows 64-bit lseek removed by upstream svn revision 3826
(Cast away __la_lseek(), use _lseeki64() instead, 2011-11-21).  We
need it on Borland.
2011-12-23 16:04:58 -05:00
Brad King c37c0c7897 libarchive: Fix typo in CheckFileOffsetBits
Replay commit 41719b75 (fix typo in CheckFileOffsetBits.cmake,
2011-10-05) after import of new libarchive snapshot.
2011-12-23 16:04:58 -05:00
Brad King 7dba0d668f libarchive: Port to OSF operating system
Make changes equivalent to those originally made by commits

  bd56626a (Fixes for the OSF operating system build, 2010-09-08)
  92c082b1 (Add a fix for the inline keyword on the osf os, 2010-09-10)

but based on the updated libarchive snapshot.
2011-12-23 16:04:58 -05:00
Brad King 0f7a85349a libarchive: Install COPYING with CMake documentation
Replay commit d39aee48 (Install COPYING with CMake documentation,
2011-06-16) after import of new libarchive snapshot.
2011-12-23 16:04:58 -05:00
Brad King 504660ea70 Configure libarchive build within CMake
Re-enable the option to build libarchive within CMake now that we have
imported a new snapshot.  Force libarchive ENABLE_* cache options to the
values CMake needs.  Set ENABLE_OPENSSL based on CMAKE_USE_OPENSSL to
preserve the behavior introduced in commit ee55a4f7 (Use OpenSSL only if
CMAKE_USE_OPENSSL, 2011-02-08).
2011-12-23 16:04:58 -05:00
Brad King ffdb37a4f7 Handle libarchive API change in archive_read_data_block
The offset argument type depends on the libarchive version.
2011-12-22 10:52:03 -05:00
Brad King ffa6faa40d libarchive: Include cm_zlib.h to get zlib used by CMake 2011-12-22 10:38:37 -05:00
Brad King 25a5e7cbc1 libarchive: Build one static cmlibarchive for CMake
CMake needs only a single static libarchive library and not a shared
one.  Call it cmlibarchive to avoid confusion.
2011-12-22 10:38:36 -05:00
Brad King bbdb75c5ff libarchive: Remove -Wall -Werror from build with GNU
We are not developing new libarchive features.  Furthermore -Werror can
break some try_compile cases.
2011-12-22 10:38:35 -05:00
Brad King 1d7ea8b629 libarchive: Do not build subdirectories not in reduced snapshot
Remove add_subdirectory() calls for directories not included in the
reduced libarchive snapshot.  Remove options that configure settings in
the missing directories.
2011-12-22 10:38:34 -05:00
Brad King d31bb538ef libarchive: Add README-CMake.txt
Describe how to update libarchive from upstream.
2011-12-22 10:38:33 -05:00
Brad King b2d14f705f libarchive: Add .gitattributes for indentation with tab 2011-12-22 10:38:32 -05:00
Brad King 3e5a80f063 Merge branch 'libarchive-upstream' into update-libarchive
Add Utilities/cmlibarchive using upstream libarchive 3.0.0-r3950
snapshot.
2011-12-20 11:54:25 -05:00
LibArchive Upstream 2f4a3792bb libarchive 3.0.1-r3950 (reduced)
Extract upstream libarchive using the following shell code.

url=https://libarchive.googlecode.com/svn/trunk
v=3.0.1
r=3950
paths="
  CMakeLists.txt
  COPYING
  CTestConfig.cmake
  build/cmake
  build/pkgconfig
  build/utils
  build/version
  libarchive/*.*
"
date=$(svn log -q -c$r $url |
       sed -n "/^r/ {s/[^|]*|[^|]*|//;p;}")
svn export -r$r $url libarchive-$v-r$r &&
mkdir libarchive-$v-r$r-reduced &&
(cd libarchive-$v-r$r && tar c $paths) |
(cd libarchive-$v-r$r-reduced && tar x)
echo "r$r date: $date"
2011-12-20 11:52:11 -05:00
Brad King f6ac86d70e libarchive: Remove our copy to make room for new import 2011-12-20 11:47:27 -05:00
KWSys Robot 4e98500012 KWSys Nightly Date Stamp 2011-12-20 00:05:03 -05:00
KWSys Robot 4bb3edfcb4 KWSys Nightly Date Stamp 2011-12-19 00:05:03 -05:00
KWSys Robot 84094cd155 KWSys Nightly Date Stamp 2011-12-18 00:05:03 -05:00
KWSys Robot 61da11ecd7 KWSys Nightly Date Stamp 2011-12-17 00:05:11 -05:00
David Cole f7be6d616f Merge topic 'GNU-to-MS'
c213eb9 Windows-GNU: Remove extra quotes in GNUtoMS rule variable
2011-12-16 10:15:44 -05:00
David Cole ef086b5e41 Merge topic 'qtdialog-quit'
56e0499 QtDialog: Set Ctrl+Q as the shortcut for quitting the program.
2011-12-16 10:15:39 -05:00
David Cole 1706a7ed5b Merge topic 'intel-error-regex-issue-12627'
56f29f4 CTest: Recognize Intel errors without space before colon (#12627)
2011-12-16 10:15:35 -05:00
David Cole 52d5f67ec7 Merge topic 'test-Fortran-compiler-compat'
fcb2a27 Fix and simplify Fortran test compiler compatibility check
2011-12-16 10:15:32 -05:00
David Cole 44b6b0b5df Merge topic 'remove-old-QtDialog-readme'
470bcfa Remove the apparently outdated README in Source/QtDialog.
2011-12-16 10:15:28 -05:00
David Cole 8f8ee53729 Merge topic 'test-compiler-output-var'
5f6985a Avoid clobbering variable 'OUTPUT' in compiler tests (#12628)
2011-12-16 10:15:20 -05:00
David Cole 65db5b4a99 Merge topic 'osx-dependent-libraries'
5d99343 Do not link private dependent shared libraries on OS X > 10.4
2011-12-16 10:15:07 -05:00
David Cole 2f82798ef8 Merge topic 'transitive-shared-lib-depend'
183b950 Follow all dependencies of shared library private dependencies
2011-12-16 10:15:01 -05:00
David Cole e44cdb04f1 Merge topic 'hp-shared-libs'
5720e1f HP: Drive shared library linking with compiler front end
2011-12-16 10:14:56 -05:00
David Cole be637d7a92 Merge topic 'fix-12441-show-custom-target-progress'
7ab1162 CMake: Fix progress reporting for custom targets (#12441)
2011-12-16 10:14:52 -05:00
David Cole c6c82f9e3e Merge topic 'fix-12480-correct-windres-compiler-when-cross-compiling'
6ddb1e5 Modules: Use "windres" as rc compiler base name for cross-compiles (#12480)
2011-12-16 10:14:42 -05:00
David Cole 037616f194 Merge topic 'vs-version-ivar'
6571f46 Fix Intel Fortran .vfproj files for VS 10
2011-12-16 10:14:25 -05:00
David Cole ac9453c371 Merge topic 'fix-lapack-issues'
b3c42cb FindLAPACK: List thread libs to avoid link errors (#12625)
f603cf2 FindLAPACK: Correct CMAKE_FIND_LIBRARY_SUFFIXES spelling (#12624)
2011-12-16 10:14:17 -05:00
David Cole c68a780dec Merge topic 'qt4-deploy-module'
4e9274e Unset configurations variable when no build type.
2011-12-16 10:13:59 -05:00
David Cole e945df2a7e Merge topic 'CPackRPM-0012608-UserSpecificFileControl'
121c295 CPackRPM fix #0012608 and unoticed related bug
2011-12-16 10:13:33 -05:00
David Cole 765e9d30ae Merge topic 'ctest-no-cdash-issue-12618'
52f937a CTest: Do not get CDash version without drop site (#12618)
2011-12-16 10:13:12 -05:00
David Cole f189c5d7d3 Merge topic 'xcode-rerun-issue-12616'
e8b8f0e Xcode: Create separate rerun dependencies for subprojects (#12616)
2011-12-16 10:12:36 -05:00
David Cole 7e6c8edb15 Merge topic 'FortranCInterface-MinGW'
4cb73c4 FortranCInterface: Work around mingw32-make trouble with parens
2011-12-16 10:11:53 -05:00
David Cole 762930efe8 Merge topic 'update-cygwin-release-script'
61a7da2 Release: Increase timeout for slow-testing cygwin build
2011-12-16 10:11:38 -05:00
KWSys Robot b15071791c KWSys Nightly Date Stamp 2011-12-16 00:05:04 -05:00
Brad King c544545c63 KWSys: Correctly handle empty environment variables
Fix a crash which occurs when SystemTools::GetPath attempts to process
an empty environment variable.

Author: Vladimir Panteleev <vladimir@thecybershadow.net>
2011-12-15 15:45:09 -05:00
Raphael Kubo da Costa 56e0499104 QtDialog: Set Ctrl+Q as the shortcut for quitting the program.
QKeySequence::Quit does not work on all platforms, and since it
translates to Ctrl+Q on all platforms where it does work, Ctrl+Q was
hardcoded instead.
2011-12-15 08:51:50 -07:00
Brad King 56f29f48c2 CTest: Recognize Intel errors without space before colon (#12627)
Fix the regex meant to match errors of the form:

 C:\some\dir\source.cpp(17): catastrophic error: could not open source file "some_header.h"

to make the space between ')' and ':' optional.
2011-12-15 09:31:12 -05:00
Brad King fcb2a27982 Fix and simplify Fortran test compiler compatibility check
Since commit 38aab379 (Set CMAKE_<lang>_COMPILER_ID for VS generators,
2011-09-02) the VS IDE generators set the C and C++ compiler id to MSVC
and the Fortran compiler id to Intel.  This caused the Fortran test to
fail compatible compiler detection because the if() test

  "${CMAKE_C_COMPILER_ID}" MATCHES "MSVC"

is evaluated as the "var MATCHES regex" signature which evaluates the
compiler id "MSVC" as a variable which is defined to 1 which does not
match "MSVC".

Combine tests for non-identical but compatible compiler vendors into a
single regex match whose left hand side will not be defined as a
variable.
2011-12-15 09:25:49 -05:00
Raphael Kubo da Costa 470bcfad7b Remove the apparently outdated README in Source/QtDialog.
Qt has been LGPL-licensed for a few years, so the clause mentioning only
developers with a paid Qt license can change the code seems to be
outdated.
2011-12-15 08:42:38 -05:00
Brad King 5f6985ac86 Avoid clobbering variable 'OUTPUT' in compiler tests (#12628)
Use an obscure name and clean up afterwards.
2011-12-15 08:31:17 -05:00