Commit Graph

802 Commits

Author SHA1 Message Date
Brad King bfe07aa97e Build Help documentation during CMake build using Sphinx
Add a Utilities/Sphinx directory to hold CMake build code to run the
Sphinx (sphinx-doc.org) documentation generation tool.  Create a
CMakeLists.txt file there capable of building either as a subdirectory
of the main CMake build, or as a standalone documentation build.

Add cache options SPHINX_MAN and SPHINX_HTML to select output formats
and SPHINX_EXECUTABLE to specify the sphinx-build executable.  Add
bootstrap options --sphix-man and --sphinx-html to select output formats
and --sphinx-build=<sb> to specify the sphinx-build executable.

Create a "conf.py.in" file to configure_file into "conf.py" to tell
sphinx-build how to build our documents.  Create a "cmake.py" Sphinx
extension module defining:

* The "cmake-module" directive used in Help/module/*.rst files to
  scan .rst markup from the corresponding Modules/*.cmake file.

* A Sphinx domain called "cmake" defining documentation object types
  for CMake Help/<type> directories: command, generator, manual,
  module, policy, prop_*, and variable.  Add a "role" for each type
  to perform cross-references.  Teach the roles to treat "<XYZ>"
  as placeholders instead of explicit targets if not preceded by
  a space.  Add cmake domain directives to define command and
  variable objects explicitly in .rst file content.  This will
  allow modules to define their own commands and variables and
  have them indexed and linkable.

* A Sphinx document transform that converts Help/<type>/*.rst documents
  into cmake domain objects of the corresponding <type> and adds index
  entries for them.  This will automatically index all CMake documentation
  objects and provide cross-reference targets for them with no special
  markup in the .rst files.
2013-10-16 09:22:37 -04:00
Brad King 678aaad133 Drop documentation generation during build
Drop the 'documentation' build target.  We will no longer use the
executables to generate their own documentation.  New infrastructure
will be introduced later to generate documentation.
2013-10-15 10:47:37 -04:00
Brad King e49efe9150 Drop xmllint documentation tests
Drop these tests since we will drop docbook output along with other
documentation formatters.
2013-10-15 10:46:54 -04:00
Brad King 189008ea5c Move cmake.m4 from Utilities to Auxiliary
The latter fits more consistently with other third party integration
files.
2013-10-15 10:46:54 -04:00
Stephen Kelly e4e5b28c27 cmTarget: Deprecate the LOCATION target property with a policy.
The final location and name of a build-target is not determined
until generate-time. However, reading the LOCATION property from
a target is currently allowed at configure time. Apart from creating
possibly-erroneous results, this has an impact on the implementation
of cmake itself, and prevents some major cleanups from being made.

Disallow reading LOCATION from build-targets with a policy. Port some
existing uses of it in CMake itself to use the TARGET_FILE generator
expression.
2013-10-11 21:17:27 +02:00
Brad King e81b6742f7 Merge topic 'haiku-updates'
54ef2be Haiku: Include files cleanup in cmCTest
38d5555 Haiku: Remove outdated preprocessor checks
1dc61f8 Haiku: Remove use of B_COMMON_DIRECTORY
7ebc1cb Haiku: Several fixes to platform module
2013-10-09 10:23:04 -04:00
Brad King 12a7e2b10c Merge topic 'apple-clang-id'
1763c31 Set policy CMP0025 to NEW while building CMake itself
aa53ee5 Add policy CMP0025 for Apple Clang compiler id compatibility
ab65862 Clang: Add separate "AppleClang" compiler id
2013-10-09 10:21:28 -04:00
Adrien Destugues 38d555537c Haiku: Remove outdated preprocessor checks
* Haiku does not define __BEOS__ anymore, so there is no need to guard
  these BeOS specific workaround for Haiku.
* The workaround themselves are not needed for Haiku as it has much
  better POSIX compatibility than BeOS did.

Applied-by: Rolf Eike Beer <eike@sf-mail.de>
2013-10-08 09:55:55 -04:00
Sean McBride af0051f48a curl, bzip2: Suppress warnings by setting initial value
Silence clang -Wsometimes-uninitialized warnings.
2013-10-08 09:16:33 -04:00
Sean McBride 7e7a1c0a50 curl: Fix typo in header include guard
From clang's -Wheader-guard.
2013-10-08 09:16:27 -04:00
Brad King 1763c31c3b Set policy CMP0025 to NEW while building CMake itself
CMake is aware of the policy's NEW behavior and the AppleClang compiler
id.  Set the policy to NEW explicitly to avoid the warning and get the
NEW behavior.

Also teach the RunCMake test infrastructure to build tests with
-DCMAKE_POLICY_DEFAULT_CMP0025=NEW to avoid the policy warning
in test output that must match specific regular expressions.
2013-10-07 20:12:46 -04:00
Brad King ab65862417 Clang: Add separate "AppleClang" compiler id
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.
2013-10-07 20:12:46 -04:00
Brad King df62f64db7 Clean up install rules of CMake itself (#14371)
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.
2013-08-26 11:54:07 -04:00
Brad King 8120e13f40 cmake-gui: Fix build rules for Qt5 on Windows
Set policy CMP0020 to NEW to get WinMain from Qt.  Fix the documentation
custom command PATH for cmake-gui to find the Qt5 DLLs.
2013-08-07 09:59:33 -04:00
Brad King 26fe7e3adf libarchive: Backport to CMake 2.8.2
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.
2013-07-31 08:22:15 -04:00
Brad King b81a4e1568 libarchive: Remove build options not used by CMake
Drop options POSIX_REGEX_LIB and ENABLE_SAFESEH that we do not want for
the CMake build of libarchive.
2013-07-31 08:21:20 -04:00
Brad King 3218f52f11 libarchive: Avoid struct init with variable
Compilers such as Borland and MIPSpro do not like struct initialization
with variables.  Initialize using assignment instead.
2013-07-31 08:20:24 -04:00
Brad King bae3a73cee libarchive: Silence API deprecation warnings
CMake uses old libarchive APIs for now.
2013-07-31 08:20:05 -04:00
Brad King 677384017a libarchive: Include cm_zlib.h to get zlib used by CMake
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.
2013-07-31 08:19:58 -04:00
Brad King 8dc0a9f898 libarchive: Update README-CMake.txt for new snapshot 2013-07-31 08:19:48 -04:00
Brad King 102071f80c Merge branch 'libarchive-upstream' into update-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
2013-07-31 08:19:13 -04:00
Ömer Fadıl USTA c8adab9e43 cmcurl: Fix resource leak reported by cppcheck
Add missing fclose calls.

Reviewed-by: Igor Murzov <e-mail@date.by>
2013-07-15 10:20:00 -04:00
Ömer Fadıl USTA 499531c64e libarchive: Fix free() order to avoid accessing freed memory
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>
2013-07-15 10:20:00 -04:00
Brad King 84cb494703 Merge topic 'curl-bug-1192'
e643e02 cmcurl: Backport curl bug 1192 fix (#14250)
2013-07-01 09:12:00 -04:00
Brad King e643e0259d cmcurl: Backport curl bug 1192 fix (#14250)
LLVM headers define strlcat as a macro rather than as a function.
See upstream Curl issue:

 http://curl.haxx.se/bug/view.cgi?id=1192

It was addressed by removing use of strlcat altogether.  Port the
upstream fix to CMake's curl.
2013-06-27 16:46:23 -04:00
Andreas Mohr f57800d6f5 Fix spelling and typos (product names)
API, Borland, MinGW, UNIX, Mac OS X.
2013-05-07 08:42:20 -04:00
Andreas Mohr bf019d765d Fix spelling and typos (non-binary) 2013-05-07 08:39:19 -04:00
Andreas Mohr ddac8d3d2d Fix spelling and typos (affecting binary data / module messages) 2013-05-07 08:39:19 -04:00
Brad King 32fb667a0c Merge branch 'upstream-kwiml' into update-KWIML 2013-01-08 15:31:53 -05:00
Brad King 2ce327892f Merge branch 'upstream-kwiml' into update-KWIML 2012-12-21 08:32:56 -05:00
Sean McBride 6a6a6f3670 libarchive: fixed undefined left shift with signed ints
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.
2012-11-30 08:04:48 -05:00
Brad King 56a687d173 Merge topic 'import-KWSys-subtree'
68579cd Merge branch 'upstream-kwsys' into import-KWSys-subtree
cd83da9 KWSys 2012-11-05 (df32fa6f)
3517106 CTestCustom: Suppress LNK4089 warning about PSAPI
5c63fa3 Merge branch 'ctest-SUBMIT_INDEX-cdash' into import-KWSys-subtree
17fb60b Merge branch 'upstream-kwsys' into import-KWSys-subtree
7ae44db KWSys 2012-10-16 (b7a97ac3)
97c9887 pre-commit: Update KWSys rejection message for new workflow
3db0b51 KWSys: Submit dashboard builds to PublicDashboard
4b8d363 Merge branch 'upstream-kwsys' into import-KWSys-subtree
a61f633 Merge branch 'master' into import-KWSys-subtree
8c55ea0 Merge branch 'upstream-kwsys' into import-KWSys-subtree
5d0de36 KWSys 2012-10-01 (bab53989)
7d3c295 KWSys 2012-05-02 (719638e2)
2012-11-07 09:07:15 -05:00
Brad King 0e3f95eff9 Merge branch 'upstream-kwiml' into update-KWIML 2012-10-25 07:54:49 -04:00
Brad King 97c98876b7 pre-commit: Update KWSys rejection message for new workflow
KWSys is now kept in its own Git repository.  We manually extract
snapshots of KWSys versions to update the Source/kwsys directory.
2012-10-05 10:02:28 -04:00
Brad King eb8b0bea6f Merge topic 'file-download-verify'
4bcd84e Utilities/Release: Enable CMAKE_USE_OPENSSL in nightly binaries
e1c89f0 file(DOWNLOAD): Add options for SSL
073a73a Merge branch 'curl-openssl' into file-download-verify
34567df file(DOWNLOAD): Generalize EXPECTED_MD5 to EXPECTED_HASH
2012-09-12 07:51:39 -04:00
Bill Hoffman 4bcd84e65a Utilities/Release: Enable CMAKE_USE_OPENSSL in nightly binaries 2012-09-11 15:35:09 -04:00
Brad King 1d3db6b34d Merge topic 'curl-openssl'
8b51762 curl: Honor OPENSSL_NO_SSL2
bc0e8c2 curl: Make OpenSSL DLLs available to CMake on Windows
c2f4759 curl: Use find_package(OpenSSL)
2012-09-11 15:01:57 -04:00
Brad King d07c5f76f2 Merge topic 'docbook-validate'
d0c863f docbook: Fix Sun CC warning on ptr_fun(isalnum)
4e62784 docbook: Fix formatter naming convention to avoid shadow
9ad85dbb docbook: Remove redundant docs that cause invalid DocBook
9468b41 docbook: Add CMake.DocBook test to validate xml (#13508)
3a9e373 docbook: Add support for <abstract> at section level 1
67e7d49 docbook: Cleanup formatter and generated DocBook
55146ed docbook: Fix the DocBook section output
dbfe335 docbook: Factor out code to write valid DocBook IDs
cffa899 docbook: Remove table of contents
ac25bc0 Utilities/xml: Add docbook-4.5 DTD (#13508)
2b2e86f Utilities/xml: Add .gitattributes to disable whitespace checks
2012-09-11 15:01:48 -04:00
Brad King c0ef32c231 Merge topic 'simplify-CMake.HTML-test'
2f520d3 Simplify CMake.HTML documentation test command line
2012-09-11 15:01:44 -04:00
Daniel Pfeifer 9468b41daf docbook: Add CMake.DocBook test to validate xml (#13508)
The DocBook DTD is provided in "Utilities/xml/docbook-4.5".
2012-09-08 07:42:10 -04:00
Brad King 8b51762426 curl: Honor OPENSSL_NO_SSL2
Some OpenSSL distributions have dropped support for the ancient SSLv2
protocol completely.  Port changes from upstream curl to recognize this
case and avoid using it.
2012-09-07 13:24:14 -04:00
Bill Hoffman bc0e8c28ec curl: Make OpenSSL DLLs available to CMake on Windows
Find the OpenSSL runtime DLLs and place them next to the CMake
executables in the build tree and the install tree.
2012-09-07 11:07:31 -04:00
Bill Hoffman c2f47590ef curl: Use find_package(OpenSSL)
Change the code to use the standard CMake FindOpenSSL instead of the
handcrafted attempt that was there before.
2012-09-07 11:03:19 -04:00
Brad King ac25bc0135 Utilities/xml: Add docbook-4.5 DTD (#13508)
Run the shell code below to put the DTD in Utilities/xml/docbook-4.5:

v=4.5 &&
sha1=b9124233b50668fb508773aa2b3ebc631d7c1620 &&
mkdir Utilities/xml/docbook-$v &&
cd Utilities/xml/docbook-$v &&
wget -c http://www.oasis-open.org/docbook/xml/$v/docbook-xml-$v.zip &&
sha1sum docbook-xml-$v.zip |grep $sha1 &&
unzip docbook-xml-$v.zip &&
rm docbook-xml-$v.zip
2012-09-07 10:06:50 -04:00
Brad King 2b2e86feaa Utilities/xml: Add .gitattributes to disable whitespace checks
This directory holds upstream DTD files.  We do not want to modify them,
so tell Git to skip whitespace enforcement.
2012-09-07 10:06:50 -04:00
Daniel Pfeifer 2f520d304a Simplify CMake.HTML documentation test command line
Drop the "cmake -E chdir" wrapper and instead pass the DTD directory to
xmllint's --path option using url encoding.  While at it, move the
XHTML1 DTD to "Utilities/xml/xhtml1" to make room for additional DTDs.
2012-09-07 10:05:50 -04:00
Brad King 084c5af4e0 Utilities/Release: Link AIX binary with large maxdata
Raise the default "maxdata" linker setting on the 32-bit AIX release
binaries.  This allows the CMake binaries to process larger projects
without encountering a "Segmentation fault in extend_brk".
2012-09-05 12:49:37 -04:00
David Cole 17f962f03d Merge topic 'magrathea-release-DT_RUNPATH'
c0f89e9 magrathea: Tell cmELF about DT_RUNPATH (#13497)
2012-09-04 15:48:10 -04:00
Brad King c0f89e9c14 magrathea: Tell cmELF about DT_RUNPATH (#13497)
Our Linux release machine 'magrathea' has a very old Linux to help build
portable binaries.  It is so old that <elf.h> does not define the
DT_RUNPATH constant.  Define the correct value in the build flags to
activate handling of ELF RUNPATH entries in the binary release.
2012-09-03 16:30:33 -04:00
Marcin Wojdyr 84b49be8f0 Remove CMake multiline block-end command arguments
removing arguments omitted in 9db3116226
2012-08-15 16:50:29 -04:00
Kitware Robot 9db3116226 Remove CMake-language block-end command arguments
Ancient versions of CMake required else(), endif(), and similar block
termination commands to have arguments matching the command starting the
block.  This is no longer the preferred style.

Run the following shell code:

for c in else endif endforeach endfunction endmacro endwhile; do
    echo 's/\b'"$c"'\(\s*\)(.\+)/'"$c"'\1()/'
done >convert.sed &&
git ls-files -z -- bootstrap '*.cmake' '*.cmake.in' '*CMakeLists.txt' |
egrep -z -v '^(Utilities/cm|Source/kwsys/)' |
egrep -z -v 'Tests/CMakeTests/While-Endwhile-' |
xargs -0 sed -i -f convert.sed &&
rm convert.sed
2012-08-13 14:19:16 -04:00
Kitware Robot 77543bde41 Convert CMake-language commands to lower case
Ancient CMake versions required upper-case commands.  Later command
names became case-insensitive.  Now the preferred style is lower-case.

Run the following shell code:

cmake --help-command-list |
grep -v "cmake version" |
while read c; do
    echo 's/\b'"$(echo $c | tr '[:lower:]' '[:upper:]')"'\(\s*\)(/'"$c"'\1(/g'
done >convert.sed &&
git ls-files -z -- bootstrap '*.cmake' '*.cmake.in' '*CMakeLists.txt' |
egrep -z -v '^(Utilities/cm|Source/kwsys/)' |
xargs -0 sed -i -f convert.sed &&
rm convert.sed
2012-08-13 14:19:16 -04:00
Kitware Robot 7bbaa4283d Remove trailing whitespace from most CMake and C/C++ code
Our Git commit hooks disallow modification or addition of lines with
trailing whitespace.  Wipe out all remnants of trailing whitespace
everywhere except third-party code.

Run the following shell code:

git ls-files -z -- \
 bootstrap doxygen.config '*.readme' \
 '*.c' '*.cmake' '*.cpp' '*.cxx' \
 '*.el' '*.f' '*.f90' '*.h' '*.in' '*.in.l' '*.java' \
 '*.mm' '*.pike' '*.py' '*.txt' '*.vim' |
egrep -z -v '^(Utilities/cm|Source/(kwsys|CursesDialog/form)/)' |
egrep -z -v '^(Modules/CPack\..*\.in)' |
xargs -0 sed -i 's/ \+$//'
2012-08-13 14:18:39 -04:00
David Cole 4bdbdfbfef Merge topic 'directory-typo'
6c8722f Fix typo direcotry -> directory (and similar) [#13444]
2012-08-13 13:27:48 -04:00
David Cole e856509093 Merge topic 'release-script-fixes'
214589b Add ability to run as a ctest -S script also
2012-08-13 13:26:39 -04:00
David Cole bed44c2cc1 Merge topic 'exclude-ExternalProject-test-for-cygwin-release-script'
3a17311 Release: Temporarily exclude ExternalProject test on cygwin
2012-08-13 13:26:30 -04:00
Rolf Eike Beer 6c8722fab5 Fix typo direcotry -> directory (and similar) [#13444] 2012-07-30 08:08:33 +02:00
David Cole 17cb00e5dc Merge topic 'hooks-line-length'
873f21a pre-commit: Reject C++ code with lines too long
2012-07-24 17:02:09 -04:00
Brad King 873f21ad1b pre-commit: Reject C++ code with lines too long
Check changes in Source/*.h and Source/*.cxx for lines longer than
our style limit.
2012-07-17 08:16:12 -04:00
David Cole 214589b1f0 Add ability to run as a ctest -S script also
Then, use ctest_sleep to separate uploads by at least one
second each, so that the files on the web server all get
distinct time stamps.

Then, when viewed on the web server, sorted by time, they
are also sorted alphabetically.
2012-06-22 14:32:29 -04:00
David Cole 3a17311bc8 Release: Temporarily exclude ExternalProject test on cygwin
Only temporarily until we can setup a new cygwin build machine
for making releases. It's specific to the script that runs on
dash2win64 anyhow. When we add a new script to run it on a
different machine, and stop building the cygwin releases on
dash2win64, this change will naturally no longer apply.
2012-06-22 11:20:03 -04:00
Brad King 984c1760fb Merge branch 'upstream-kwiml' into update-KWIML 2012-06-21 08:05:20 -04:00
David Cole 7918998533 BZip2: Remove unnecessary *.bz2 files from CMake source tree
We had complaints that people couldn't install the CMake source
tarball on some secure systems because there were "corrupt bz2
files" in it... We do not use these sample*.bz2 files anyhow
in the CMake build, so we'll just remove them.
2012-06-13 17:08:25 -04:00
David Cole 6a52f3cb36 Merge topic 'update-KWIML'
0dfdde1 Merge branch 'upstream-kwiml' into update-KWIML
6240f85 KWIML: Report broken integer format macros on AIX 4.3
e1b0fc9 KWIML: Add interface to report broken integer format macros
2012-06-12 16:00:34 -04:00
Brad King 0dfdde1a3e Merge branch 'upstream-kwiml' into update-KWIML 2012-06-07 15:20:42 -04:00
Brad King 54ffb5b4f1 libarchive: Avoid 'inline' on SunPro < 5.9 (#13277)
Suggested-by: Daniel R. Gomez <gomez@teragram.com>
2012-06-07 13:46:49 -04:00
David Cole f5cf6c7cd7 Merge topic 'require-CMake-2.8.2'
d960de2 Require CMake 2.8.2 or higher to build CMake
2012-05-01 14:08:53 -04:00
David Cole 63564847d2 Merge topic 'developer-setup'
c9072f8 Merge branch 'setup' into developer-setup
b7daff9 setup-stage: Optionally reconfigure topic stage
2012-05-01 14:08:14 -04:00
Brad King d960de2f54 Require CMake 2.8.2 or higher to build CMake
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.
2012-04-26 16:39:54 -04:00
Brad King c9072f88cb Merge branch 'setup' into developer-setup 2012-04-26 15:43:29 -04:00
David Cole 7e4c11e0fc Merge topic 'compile-XL-v6'
b3c7788 Workaround IBM XL v6 streams seekg bug (#13149)
09a91c6 libarchive: Avoid 'inline' keyword on XL C v6 (#13148)
a8995eb libarchive: Avoid trailing , in enum for XL v6 (#13148)
2012-04-25 14:04:52 -04:00
Brad King 09a91c6d5a libarchive: Avoid 'inline' keyword on XL C v6 (#13148) 2012-04-19 09:49:43 -04:00
Brad King fe0f7e362d Merge branch 'developer-setup' 2012-04-19 09:07:55 -04:00
Jim Hague a8995ebe35 libarchive: Avoid trailing , in enum for XL v6 (#13148)
IBM xlc v6 cannot cope with a trailing ',' in enum definitions.
2012-04-19 09:00:29 -04:00
Brad King 86c4c93888 Merge branch 'upstream-kwiml' into update-KWIML 2012-03-20 15:51:11 -04:00
Brad King 15e96b0304 Merge topic 'update-KWIML'
289e5e6 Merge branch 'upstream-kwiml' into update-KWIML
f94ae0e KWIML: Make test_INT robust to #define-d int#_t and INT#_C
2012-03-13 11:54:21 -04:00
Brad King 289e5e6012 Merge branch 'upstream-kwiml' into update-KWIML 2012-03-09 15:28:40 -05:00
David Cole 142facc6dd Merge topic 'fix-cygwin-hint-file'
208c3f8 Use correct "requires" line in cygwin setup hint file
1b996e7 Remove trailing white space
2012-03-08 15:13:27 -05:00
David Cole 208c3f84e2 Use correct "requires" line in cygwin setup hint file
Reference: email thread between Bill Hoffman and Yaakov Selkowitz
from Mar. 5, 2012.
2012-03-06 09:04:46 -05:00
David Cole 1b996e7360 Remove trailing white space 2012-03-06 08:59:57 -05:00
Brad King 6aba9fa5a5 Exclude from CMake source archives files specific to Git work tree
Add the "export-ignore" attribute to SetupForDevelopment.sh and
the Git/ hooks directory.
2012-03-02 14:36:56 -05:00
Brad King ec127a560d Merge branch 'setup' into developer-setup 2012-03-02 13:41:42 -05:00
Brad King d2c3686a08 Add and configure developer setup helper scripts
Configure GitSetup scripts for CMake.  Run them from a single
Utilities/SetupForDevelopment.sh script.
2012-03-02 13:33:41 -05:00
Brad King 97e1cc2880 Merge branch 'setup' into developer-setup
Add Utilities/GitSetup/ directory using subtree merge from
the general GitSetup repository "setup" branch.
2012-03-02 13:28:11 -05:00
Brad King 2d59c9ab17 cmcurl: Do not hard-coded Windows check results for MinGW (#13001)
The WindowsCache.cmake file hard-codes results for MS and similar
Windows toolchains.  They are not valid for MinGW tools and also
interfere with cmlibarchive checks.  Allow the checks to run.
2012-03-02 10:15:06 -05:00
David Cole 8ef15df700 Merge topic 'HandleTargetsInCMakeRequiredLibraries'
35c48e1 Check*.cmake: Expand imported targets in CMAKE_REQUIRED_LIBRARIES
61cb4ea bootstrap: move while() and endwhile() into the bootstrap build
c9f2886 -don't pull in CheckTypeSize.cmake from the cmake which is being built
628f365 -remove trailing whitespace
2012-02-21 15:58:27 -05:00
David Cole 0c00c17938 Merge topic 'update-KWIML'
4cbc21e Merge branch 'upstream-kwiml' into update-KWIML
aabf65a KWIML: Teach ABI.h that MIPS is biendian
2012-02-21 15:57:41 -05:00
Alex Neundorf c9f2886b3d -don't pull in CheckTypeSize.cmake from the cmake which is being built
We can be sure that at least cmake 2.6.3 is used when building cmcurl.
This means we always get in the first branch of the if().
I think it is not a good idea to pull a cmake module from the cmake
which is being built in, since this may use features which are not
supported in the cmake which is used to build cmake (e.g. CMAKE_CURRENT_LIST_DIR
which does not exist in cmake 2.6.3 which is the minimum for cmcurl).

A bit further below there is anyway code to handle the case that cmake is
older than 2.8.0, so it should be ok.

Alex
2012-02-21 15:33:39 -05:00
Alex Neundorf 628f365140 -remove trailing whitespace
Alex
2012-02-21 15:33:31 -05:00
Brad King 4cbc21e8da Merge branch 'upstream-kwiml' into update-KWIML 2012-02-20 09:45:04 -05:00
David Cole 0402697c06 Merge topic 'libarchive-old-glibc'
ca77902 libarchive: Workaround mbsnrtowcs assertion failure on old glibc
2012-02-14 16:16:47 -05:00
David Cole ea55b3e657 Merge topic 'change_qmake_path'
9fb9416 Use upgraded qt on linux  build machine.
2012-02-14 16:16:34 -05:00
Brad King ca7790240c libarchive: Workaround mbsnrtowcs assertion failure on old glibc
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.
2012-02-10 15:16:06 -05:00
Bill Hoffman 9fb9416f78 Use upgraded qt on linux build machine. 2012-02-09 20:33:58 -05:00
Artur Kedzierski ed14435b23 Add CURL_CA_BUNDLE option for SSL support (#12946)
This adds the ability to specify the location of SSL CA bundle at
compile time.
2012-02-09 09:09:54 -05:00
David Cole 495f899845 Update version of Qt for dashmacmini5 produced release binaries
Use 4.8.0
2012-02-06 13:48:53 -05:00
David Cole a94ef02c6e Update dashmacmini2 release script to use Qt 4.8.0 2012-01-30 20:40:42 -05:00
David Cole 7240aa7fac Update dashmacmini2 release script to use Qt 4.6.3 2012-01-17 17:59:16 -05:00
Brad King d4a9e334d3 Include bzlib.h consistently across CMake build (#10950)
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>.
2012-01-13 14:05:36 -05:00
David Cole 5a5c32e1f2 Merge topic 'update-libarchive'
6c611c6 libarchive: Restore CMake 2.6.3 as minimum version
2f5b677 libarchive: Update README-CMake.txt for new snapshot
156cb3b Merge branch 'libarchive-upstream' into update-libarchive
fd42bf1 libarchive: Set .gitattributes to allow trailing whitespace
4f4fe6e libarchive 3.0.2-r4051 (reduced)
65b6e19 libarchive: Avoid bogus conversion warning from PGI compiler
9ccaeb1 libarchive: Suppress PathScale compiler warnings
2309438 libarchive: Rename isoent_rr_move_dir parameter isoent => curent
b6ca96e libarchive: Include linux/types.h before linux/fiemap.h
f293b73 libarchive: Define _XOPEN_SOURCE=500 on HP-UX
6781a09 libarchive: Cleanup after ZLIB_WINAPI check
f15d757 libarchive: Remove hard-coded build configuration
3a9f449 libarchive: Use Apple copyfile.h API only if available
6af6b96 libarchive: Do not use MNT_NOATIME if not defined
02d5e40 libarchive: Check for 'struct statvfs' member 'f_iosize'
8b7ee30 libarchive: Do not use ST_NOATIME if not defined
...
2012-01-09 14:10:01 -05:00
Brad King 6c611c6b94 libarchive: Restore CMake 2.6.3 as minimum version
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.
2012-01-05 09:09:31 -05:00
Brad King 2f5b677186 libarchive: Update README-CMake.txt for new snapshot 2012-01-05 09:06:42 -05:00
Brad King 156cb3bbf2 Merge branch 'libarchive-upstream' into update-libarchive
Conflicts:
	Utilities/cmlibarchive/CMakeLists.txt
	Utilities/cmlibarchive/libarchive/archive_windows.c
2012-01-05 09:02:58 -05:00
Brad King fd42bf1bdc libarchive: Set .gitattributes to allow trailing whitespace
We do not care about trailing whitespace in third-party code.
2012-01-05 09:02:01 -05:00
Brad King 65b6e19a35 libarchive: Avoid bogus conversion warning from PGI compiler
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.
2012-01-04 11:54:51 -05:00
Brad King 9ccaeb10f9 libarchive: Suppress PathScale compiler warnings
We are not developing libarchive so we do not care about warnings.
2012-01-04 09:57:46 -05:00
Brad King 2309438321 libarchive: Rename isoent_rr_move_dir parameter isoent => curent
The PGI compiler confuses parameter name "isoent" with "struct isoent".
Rename the parameter to "curent" to avoid confusion.
2012-01-04 09:48:41 -05:00
Brad King b6ca96ec95 libarchive: Include linux/types.h before linux/fiemap.h
Some Linux API versions do not perform this inclusion automatically,
so types like __u64 needed by the latter are not available.
2012-01-04 09:39:28 -05:00
Brad King f293b73d71 libarchive: Define _XOPEN_SOURCE=500 on HP-UX
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.
2012-01-04 08:46:49 -05:00
Brad King 6781a09940 libarchive: Cleanup after ZLIB_WINAPI check
Clear CMAKE_REQUIRED_(INCLUDES|LIBRARIES) so that the rest of the checks
after this one do not try to link zlib.
2012-01-03 18:34:19 -05:00
Brad King f15d75760f libarchive: Remove hard-coded build configuration
Do not set CMAKE_BUILD_TYPE to Debug.  Use the configuration specified by
the user.
2012-01-03 11:37:32 -05:00
Brad King 3a9f4490f4 libarchive: Use Apple copyfile.h API only if available
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.
2012-01-03 11:16:32 -05:00
Brad King 6af6b96cb3 libarchive: Do not use MNT_NOATIME if not defined
Use the same pattern already used elsewhere in archive_read_disk_posix.c
for ST_NOATIME to use MNT_NOATIME only when defined.
2012-01-03 11:15:25 -05:00
David Cole 4c2d70768a Release: Increase timeout for slow-testing cygwin build
The parent commit only added DART_TESTING_TIMEOUT to the cache.
Also add CTEST_TEST_TIMEOUT because the logic in
CMake/Tests/CMakeLists.txt uses that variable in its "long test
timeout" computation. Now the cygwin build really does have 7200
seconds before it calls timeout death on a test.
2011-12-30 15:40:50 -05:00
Brad King 02d5e40572 libarchive: Check for 'struct statvfs' member 'f_iosize'
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.
2011-12-23 16:04:59 -05:00
Brad King 8b7ee30bf4 libarchive: Do not use ST_NOATIME if not defined
Use the same pattern already used elsewhere in archive_read_disk_posix.c
to use ST_NOATIME only when defined.
2011-12-23 16:04:59 -05:00
Brad King 680fc0eda8 libarchive: Fix var decl after statement in archive_string.c
When HAVE_MBRTOWC is true we declare an extra local variable.  Move the
unused argument cast to the end of the invalid_mbs function.
2011-12-23 16:04:59 -05:00
Brad King e1afd072bc libarchive: Suppress compiler warnings
We are not developing libarchive so we do not care about warnings.
2011-12-23 16:04:59 -05:00
Brad King e2dc5561bb libarchive: Fix Windows NT API usage in VS 6
VS 6 warns verbosely when WINVER >= 0x0500.  Avoid defining WINVER and
_WIN32_WINNT to higher than 0x0400 on VS 6.  Provide missing API
declarations in archive_windows.h when we do not get them from
<windows.h>.  Provide GetVolumePathNameW because VS 6 does not declare
it regardless of the API version.
2011-12-23 16:04:58 -05:00
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 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
Brad King f6ac86d70e libarchive: Remove our copy to make room for new import 2011-12-20 11:47:27 -05:00
David Cole 61a7da279a Release: Increase timeout for slow-testing cygwin build
Previously, the ExternalProject test was timing out at the
default timeout value of 1500 seconds. Give it time, little
one, it will finish if you learn patience.
2011-12-09 08:58:25 -05:00
Brad King ec358d17a7 Merge branch 'upstream-kwiml' into update-KWIML 2011-11-21 11:03:29 -05:00
Brad King 5796f88d92 Merge branch 'upstream-kwiml' into update-KWIML 2011-11-18 13:52:15 -05:00
Brad King aaf376594c Merge branch 'upstream-kwiml' into update-KWIML 2011-11-17 10:16:57 -05:00
David Cole 6ac35e5cb3 Merge topic 'import-KWIML'
5be0e92 Merge branch 'upstream-kwiml' into import-KWIML
a8f6159 KWIML: Create test output dir for Xcode
33fff24 KWIML: No INT_SCN*8 on Intel for Windows
bcc06d4 KWIML: No INT_SCN*8 on SunPro compiler
6d12ab3 KWIML: Suppress printf/scanf format warnings in test
553acec KWIML: Avoid redefining _CRT_SECURE_NO_DEPRECATE in test.h
93cebca Configure KWIML inside CMake as cmIML
b2975ad Merge branch 'upstream-kwiml' into import-KWIML
831bade KWIML: The Kitware Information Macro Library
2011-11-15 14:39:12 -05:00
Brad King 5be0e92218 Merge branch 'upstream-kwiml' into import-KWIML 2011-11-15 14:30:58 -05:00
David Cole 7b555c0295 Merge topic 'local-hooks'
b2d6adf pre-commit: Reject changes to KWSys through Git
3d5869c Add pre-commit|commit-msg|prepare-commit-msg hook placeholders
2011-10-25 15:34:30 -04:00
Brad King b2d6adf126 pre-commit: Reject changes to KWSys through Git
Explain in the rejection message why KWSys cannot be changed in Git.
2011-10-24 10:40:59 -04:00
Brad King 3d5869ca3c Add pre-commit|commit-msg|prepare-commit-msg hook placeholders
Add CMake-specific hook placeholders that chain from the main hooks
branch after it is installed into the local .git/hooks directory.
2011-10-24 10:18:36 -04:00
Nicolas Despres 6be15ed58b Doxygen: Remove dependency on VTK when building doxygen. 2011-10-23 22:18:13 +02:00
Nicolas Despres faede37b79 Doxygen: Generate call graph and relationships.
It helps code browsing and understanding for new developers.
2011-10-23 22:15:30 +02:00
Rolf Eike Beer 41719b7507 libarchive: fix typo in CheckFileOffsetBits.cmake
s/Cheking/Checking/
2011-10-05 09:29:36 -04:00
David Cole 0f98a0a081 Merge topic 'libarchive-mingwrt-3.20'
8dfe74c libarchive: Fix ssize_t detection with mingwrt 3.20
2011-09-20 14:42:11 -04:00
Brad King 8dfe74c358 libarchive: Fix ssize_t detection with mingwrt 3.20
This version of MinGW defines _SSIZE_T_ for ssize_t.  This patch is
based on upstream libarchive SVN commit 3649 (Fix build with mingwrt
3.20, 2011-08-27).

Inspired-by: Tim Kientzle <kientzle@freebsd.org>
2011-09-16 16:44:44 -04:00