Commit Graph

1095 Commits

Author SHA1 Message Date
Felix Geyer 49e82c15d5 Fix spelling typos in comments and documentation (#16037)
The Debian package checker tool (lintian) detected several typos in
CMake.
2016-03-29 14:31:02 -04:00
Brad King 4cdd636387 Utilities/Release: Skip spurious Qt5Autogen test for nightly win64 binary
This test fails spuriously too often and prevents the nightly binary
from finishing.  Simply skip it for the nightly binary to allow it
to complete more regularly.
2016-03-22 07:47:40 -04:00
Brad King c089485d21 Utilities/Release: Skip spurious Qt5Autogen test for nightly binary
This test fails spuriously too often and prevents the nightly binary
from finishing.  Simply skip it for the nightly binary to allow it
to complete more regularly.
2016-03-17 09:32:53 -04:00
Brad King e903a9fc55 Utilities/Release: Create a Windows 64-bit binary
Compile with `-D_WIN32_WINNT=0x502` to use a WinXP-compatible API.
Compile with `-D_USING_V110_SDK71_` to tell the VS standard library
headers that we are building with a WinXP-compatible Windows SDK.  Link
executables with `-subsystem:console,5.02` to make them runnable on
Windows XP 64-bit.  Ideally `cmake-gui` should instead be linked with
`-subsystem:windows,5.02` but with the Ninja and Makefile generators
CMake adds `-subsystem:windows` after our `-subsystem:console,5.02` flag
and the linker seems to interpret this combination as we need.
2016-03-17 09:32:16 -04:00
Brad King dd63007544 Utilities/Release: Rename scripts to match target platform
The machine name we happen to use for the build is less informative than
its platform.
2016-03-17 09:30:30 -04:00
Kolan Sh d64b37b168 Merge remote-tracking branch 'origin/maint' 2016-03-12 02:00:13 +03:00
Ben Boeckel 97149ff8db update-third-party: read attributes from the worktree
This should be done so that any attributes for ignoring certain files
when exporting can be appended to the file during the extraction step,
but ignored in the actual import. Necessary for importing the gitsetup
repository.
2016-03-09 13:57:57 -05:00
Brad King a35f4be61f update-third-party: Add license notice
Our Git infrastructure scripts use the "Apache License 2.0".
2016-03-09 13:57:41 -05:00
Ben Boeckel afac3d107d update-third-party: remove empty directories as well
The `git ls-files | xargs rm` removes only files; directories which are
empty are left laying around. This later chokes the `mv` which puts the
"reduced" directory into place. Remove the empty directories as well.
2016-03-09 13:57:27 -05:00
Brad King b682debd65 Utilities/Release: Switch to OS X 10.7 and Qt 5.5 for Mac binary
Use a new build machine to produce the OS X binary targeting OS X 10.7
and using Qt 5.5.
2016-02-19 15:47:18 -05:00
Brad King fb658907d8 Merge topic 'update-prebuilt-openssl'
c0a1605b Utilities/Release: Update to openssl-1.0.2f
2016-02-10 08:49:36 -05:00
Brad King 6bd277d2c1 Merge topic 'wix-prevent-nsis-overwrite'
a12b0f1b CMake: Prevent WiX installations over existing NSIS installations
2016-02-10 08:49:33 -05:00
Brad King c0a1605bbe Utilities/Release: Update to openssl-1.0.2f
Update the prebuilt binary build configurations for machines where
we build our own OpenSSL library to use a newer version.
2016-02-09 13:41:50 -05:00
Brad King 5b06896ba8 Merge branch 'wix-prevent-nsis-overwrite' into release 2016-02-09 10:35:53 -05:00
Nils Gladitz a12b0f1b19 CMake: Prevent WiX installations over existing NSIS installations
Use a custom action to look for Uninstall.exe in the user
selected installation prefix.

Its presence indicates a previous NSIS installation.
Inform the user and request manual resolution of the issue.
2016-02-09 10:28:57 -05:00
Brad King 7b53e8c6a5 Merge topic 'install-man-conditionally'
8282547e Install ccmake.1 and cmake-gui.1 conditionally with their tools (#15957)
2016-02-09 10:10:20 -05:00
Brad King 98d6d8f9e2 Merge branch 'install-man-conditionally' into release 2016-02-08 10:35:51 -05:00
Brad King 8282547e0f Install ccmake.1 and cmake-gui.1 conditionally with their tools (#15957) 2016-02-08 09:38:18 -05:00
Brad King 8a8d22cf1e CMake 3.5.0-rc1 version update 2016-02-02 08:37:05 -05:00
Brad King fae4779864 Utilities/Release: Configure Windows binary to support Windows XP
Compile with `-D_WIN32_WINNT=0x501` to use a WinXP-compatible API.
Compile with `-D_USING_V110_SDK71_` to tell the VS standard library
headers that we are building with a WinXP-compatible Windows SDK.  Link
executables with `-subsystem:console,5.01` to make them runnable on
Windows XP.  Ideally `cmake-gui` should instead be linked with
`-subsystem:windows,5.01` but with the Ninja and Makefile generators
CMake adds `-subsystem:windows` after our `-subsystem:console,5.01` flag
and the linker seems to interpret this combination as we need.
2015-12-21 10:05:03 -05:00
Brad King 083312a8fd Utilities/Release: Switch to .msi builder for Windows binary
Use a new build machine to produce the Windows binary using the CPack
WiX generator to produce a `.msi` installer.
2015-12-21 09:52:28 -05:00
Brad King 240b065faa Utilities/Release: Optionally load environment on remote build server 2015-12-21 09:52:28 -05:00
Brad King a95b47154e Utilities/Release: Add optional remote launcher to ssh calls 2015-12-21 09:52:28 -05:00
Brad King a53e0168c3 Merge topic 'import-kwiml'
a5dd0c9d Add option to use a system-installed KWIML
036b6ef7 Port CMake from cmIML to KWIML
12293371 Merge branch 'upstream-KWIML' into import-kwiml
3fdbb0a8 KWIML 2015-12-09 (43f9f8d0)
55b21d07 Add script to update KWIML from upstream
c7d9a249 Utilities/KWIML: Drop sources to make room for fresh import
2015-12-21 09:41:09 -05:00
Brad King f9e3ca46cb Merge topic 'release-wix-config-ng'
24cdb9df CMake: Mimic NSIS options dialog in WiX installer
de77d4a7 CPackWIX: Allow multiple patch files and diagnose if any are missing
38d723b3 CPackWIX: Allow patching of shortcut components
2015-12-18 10:55:35 -05:00
Brad King a5dd0c9d42 Add option to use a system-installed KWIML
Do not activate it with the general use-system-libs options for now
because KWIML is not commonly distributed or available.
2015-12-18 10:02:28 -05:00
Brad King 036b6ef7c4 Port CMake from cmIML to KWIML
KWIML no longer uses a configured prefix.
2015-12-18 10:02:07 -05:00
Brad King 12293371ee Merge branch 'upstream-KWIML' into import-kwiml
* upstream-KWIML:
  KWIML 2015-12-09 (43f9f8d0)
2015-12-17 14:56:40 -05:00
Brad King 55b21d072e Add script to update KWIML from upstream 2015-12-17 14:56:31 -05:00
Brad King c7d9a24911 Utilities/KWIML: Drop sources to make room for fresh import 2015-12-17 14:55:38 -05:00
Brad King c4282347e2 Add script to update KWSys from upstream 2015-12-17 14:46:09 -05:00
Ben Boeckel 498c36850b Add a script to help update third-party sources
Use the VTK `ThirdParty/update-common.sh` script as of commit
2f24b7b0f60b67a2a28b9aef210f06f904e7a977.

Co-Author: Brad King <brad.king@kitware.com>
2015-12-17 14:44:53 -05:00
Nils Gladitz 24cdb9df59 CMake: Mimic NSIS options dialog in WiX installer 2015-12-17 15:57:30 +01:00
Brad King a42bf6c5dd Utilities/Release: Add support for copying .msi files 2015-12-10 14:30:55 -05:00
Brad King 93936d78d2 Utilities/Release: Avoid repeat copy of files with same suffix 2015-12-10 14:29:37 -05:00
Kolan Sh 2cd2db18bb Merge remote-tracking branch 'origin/master' 2015-12-02 23:44:50 +03:00
Roger Leigh 8a60e6961e Utilities: Add BoostScanDeps script
This script scans Boost headers in order to determine inter-library
dependencies, using the "autolink" information embedded in the
headers for automatic linking on Windows.  This information is then
output in a form suitable for use in FindBoost.cmake.
2015-12-02 09:40:17 -05:00
Brad King 58c1840a19 Merge branch 'upstream-kwiml' into update-kwiml 2015-11-30 10:18:24 -05:00
Kolan Sh 867b5f8427 origin/v3.4.0 merged 2015-11-13 23:47:53 +03:00
Brad King c09acf4fdd libarchive: Update README-CMake.txt for new snapshot 2015-10-28 08:44:47 -04:00
Brad King 2f940f8995 libarchive: Drop use of pthread.h for CMake build
CMake does not use threads so we do not need this in our libarchive.
2015-10-28 08:44:47 -04:00
Brad King 1e47381730 libarchive: Do not use pthread.h API without header 2015-10-28 08:44:47 -04:00
Brad King 43d577dcb9 libarchive: Test for Clang builtin before using it
The __builtin_bswap16 builtin is not available on Clang 2.1.
2015-10-28 08:44:47 -04:00
Brad King 85e0bb84f5 libarchive: Avoid using 'uint8_t' as bitfield type
The IBM XL compiler does not like it.  Use plain 'unsigned' instead.
2015-10-22 10:18:27 -04:00
Brad King c70491d671 libarchive: Avoid using name 'hz'
AIX system headers define the symbol 'hz' as a preprocessor macro.
2015-10-22 10:18:27 -04:00
Brad King 1bbba477c7 libarchive: Drop outdated CMake portability snprintf
The archive_read_support_format_zip.c source no longer calls snprintf
directly so we do not need a portability macro for it.
2015-10-22 10:18:26 -04:00
Brad King 64bdf0b746 libarchive: Avoid non-portable u_int8_t
Use uint8_t that we prepare in config.h instead.
2015-10-22 10:18:26 -04:00
Brad King 8f837fc9a9 libarchive: Use CommonCrypto APIs on OS X only when available
Use each CommonCrypto API only when using an OS X SDK version new enough
to provide it.
2015-10-22 10:18:26 -04:00
Brad King 61a0251e82 libarchive: Define O_CLOEXEC when missing
Do this in archive_random.c as we do in several other sources already.
2015-10-22 10:18:26 -04:00
Brad King 832fe4b133 libarchive: Fix VS 7.1 Debug build
This version of the MS C runtime library forgets to export
_byteswap_ushort.
2015-10-21 11:34:28 -04:00
Brad King 0b82f51a30 libarchive: Guard bcyrpt.h with HAVE_BCRYPT_H 2015-10-21 11:18:50 -04:00
Brad King 5333c04cd0 libarchive: Drop CMake-specific Borland compiler workaround
We no longer build CMake with the Borland compiler.
2015-10-21 10:31:57 -04:00
Brad King e861e12f6e libarchive: Define version macro before first use 2015-10-21 10:30:29 -04:00
Brad King 932848f420 Merge branch 'libarchive-upstream' into update-libarchive
Resolve conflicts by integrating changes from both sides.
2015-10-21 10:18:52 -04:00
Brad King fab35c95cb Utilities/Release: Move cygwin packages to a subdirectory 2015-10-06 10:13:28 -04:00
Brad King 45fa326b6c Utilities/Release: Drop OS X ppc/i386 binary
Users with OS X 10.5 or below can build from source or use an older
CMake version.
2015-10-05 13:09:04 -04:00
Brad King 86cc45e3e3 CMake 3.4.0-rc1 version update 2015-10-05 10:11:00 -04:00
Brad King ec725815c9 Utilities/Release: Update path to 'cmake.exe' on Windows build machine 2015-10-01 14:11:05 -04:00
Brad King 1d11f3ca68 Merge topic 'link-https-cmake.org'
da7276cf Replace http://www.cmake.org URLs with https://cmake.org
2015-09-29 10:08:02 -04:00
Brad King da7276cf94 Replace http://www.cmake.org URLs with https://cmake.org
The latter is now the preferred URL for visiting cmake.org with a
browser.  Convert using the shell code:

 git ls-files -z | xargs -0 sed -i 's|http://www\.cmake|https://cmake|g'
2015-09-25 15:47:39 -04:00
Marc Chevrier a7fe4413d5 jsoncpp: Add missing cast to convert from char to UInt
When parsing digits we know our `c - '0'` expression results in a
non-negative value due to preceding conditions.  Simply cast the result
to UInt.  This fixes compilation on SolarisStudio 12.4.
2015-09-25 08:38:20 -04:00
Joerg Sonnenberger 75644dafe5 jsoncpp: Fix compilation as C99 on Solaris
In C99 mode, Solaris variants may already define isfinite, so check for
the existence first.
2015-09-14 09:40:38 -04:00
Gregor Jasny 01b6ecdb41 curl: Do not use libnetwork on Apple platforms
Starting with OS X 10.11 there is a library called libnetwork
which will be picked up during curl configuration.
This breaks backward compatibility of the resulting binaries
because libnetwork is not available on older OS X versions.
2015-09-10 11:25:42 -04:00
Brad King 6f7edb87ea Utilities/Release: Install docs in unversioned directory (#15692)
Our upstream-built release tarballs already contain many unversioned
paths and so will never overlap with another version of CMake in the
same installation prefix.  Therefore we do not need a versioned name for
the documentation directory.  Configure our release binaries to place
the documentation in an unversioned directory so that one can use the
same path to refer to the documentation locally even after updating
CMake.  For example, on OS X one may see the documentation in
`/Applications/CMake.app/Contents/doc/cmake/html/index.html`.
2015-09-02 14:15:59 -04:00
Brad King 7d891cde02 Utilities/Release: Refactor bootstrap argument construction
Pass needed bootstrap arguments directly instead of constructing them
from various conditions.
2015-09-02 14:11:57 -04:00
Brad King 4071a74707 curl: Update README-CMake.txt for new snapshot 2015-08-17 10:17:51 -04:00
Brad King 7727d485d3 curl: Update configuration of build within CMake
Update our curl build option settings as needed for CMake to account for
differences in curl options from 7.38 to 7.44.
2015-08-17 10:17:51 -04:00
Brad King 3f2f1a949c curl: Fix check for gethostbyname_r with 5 arguments
Fix the check code to pass 5 arguments instead of 6.  This typo was
introduced in curl 7.39 but was not noticed because the result of
this check is used only if ENABLE_IPV6 is OFF.
2015-08-17 10:17:50 -04:00
Brad King 91e8d35ab8 Merge branch 'curl-upstream' into update-curl
Resolve conflicts by taking upstream side when possible and otherwise
integrating the changes from both sides.  Be carful in CMakeLists.txt
where the OPENSSL code block that we modified previously has moved, and
preserve our previous modifications in the new location.
2015-08-12 15:43:52 -04:00
Brad King 26f5445bb4 Do not install 3rd-party dependencies by default
Disable the CMake_INSTALL_DEPENDENCIES option by default and turn it on
explicitly in our packaging scripts.  This simplifies packaging in
distributions that provide the dependencies for us without having to
install them.  We only need 3rd-party runtime dependencies to be
installed for packaging with redistributable binaries.
2015-08-05 13:29:57 -04:00
Kolan Sh 44eeae2c55 CMake origin/3.3.0 merged. 2015-07-27 20:56:55 +03:00
Brad King 10f2065249 Utilities/Release: Drop IBM AIX release scripts
We no longer produce binaries for AIX.
2015-07-23 11:44:09 -04:00
Brad King fbd7fd0f84 Utilities/Release: Update to openssl-1.0.2d
Update the prebuilt binary build configurations for machines where
we build our own OpenSSL library to use a newer version.
2015-07-10 14:02:05 -04:00
Brad King 9ce7a663d6 Utilities/Sphinx: Add CMake_OPTIONAL_COMPONENT macro
When building this directory independently define the macro since we
will not get the definition from the top level of the source tree.
2015-07-07 09:38:48 -04:00
Konstantin Podsvirov c823f04e0c CMake: New option CMake_INSTALL_COMPONENTS
By default is OFF.
Now it's used with CPack IFW himself installer.
2015-07-07 09:16:40 -04:00
Konstantin Podsvirov 7383e4d722 CMake: Install COMPONENTs (sphinx-man)
Added component sphinx-man
2015-07-07 08:11:10 +03:00
Konstantin Podsvirov 938bbc4352 CMake: Install COMPONENTs
Added components:
- cmake
- ctest
- cpack
- cmake-gui
- ccmake
- data
- sphinx-html
- sphinx-singlehtml
- sphinx-qthelp

Other now Unspecified.
2015-07-07 08:11:09 +03:00
Brad King 940ea9ff4a Merge topic 'quote-doxygen-tools'
15c6a4c9 Utilities/Doxygen: Support tools installed in paths with spaces
2015-06-18 09:05:15 -04:00
Michael Stürmer 15c6a4c919 Utilities/Doxygen: Support tools installed in paths with spaces
Quote paths to tools in generation script.
2015-06-16 09:07:41 -04:00
Brad King 6d1cef1aed Utilities/Release: Update to openssl-1.0.2c
Update the prebuilt binary build configurations for machines where
we build our own OpenSSL library to use a newer version.
2015-06-15 12:37:44 -04:00
Brad King 1594edba9e Utilities/Release: Update to more recent Qt 4.8 on OS X
Update to a version newer than 4.8.0 to get the fix for this issue:

 https://bugreports.qt.io/browse/QTBUG-23704
 https://codereview.qt-project.org/13576
 http://code.qt.io/cgit/qt/qt.git/commit/?id=e88dbaa7fc

We hit it in the cmake-gui command-line install help dialog.
2015-06-08 16:36:06 -04:00
Brad King c2cb80cbfa CMake 3.3.0-rc1 version update 2015-06-02 11:14:25 -04:00
Michael Scott 9217b678b3 jsoncpp: Provide 'isfinite' impl on more HP-UX versions (#15576)
Some versions of HP-UX do not define 'isfinite' or 'finite' in math.h
for Itanium when preprocessing with C++, so we have to add the
definition ourselves instead to map to the internal version.
2015-05-26 10:12:25 -04:00
Brad King dd107b30d2 Add option to pass custom flags to sphinx-build (#15545)
Create a SPHINX_FLAGS cache entry that users can populate with
command-line flags for sphinx-build.  Add an option to the
bootstrap script to populate it up front.

Suggested-by: Felix Geyer <debfx@ubuntu.com>
2015-04-30 09:41:31 -04:00
Kolan Sh 8d46d4838b Make NSIS uninstaller filename (Uninstall.exe) customizable.
When we have to generate two different setup packages
from the same project (modules, libraries, data-files, etc...)
we want to have opportunity to install/update/delete them independently.
But the later installed package would overwrite the 'Uninstall.exe'.
This patch fixes the issue by customizing uninstaller name:
set (CPACK_UNINSTALL_NAME "My Custom Uninstaller Name")
before directive
include (CPack).
2015-04-22 22:04:00 +03:00
Brad King 8b4c40155a Merge topic 'fix-libarchive-mktemp'
1f33b45d libarchive: Fix string concatentation in Windows mktemp implementation
2015-04-10 08:31:01 -04:00
Brad King bb891710cf Merge topic 'fix-libarchive-gnutar-large-ids'
ad194ae0 libarchive: Use base-256 encoding for UID/GID like GNU tar does
2015-04-09 14:28:23 -04:00
Nils Gladitz ad194ae0b1 libarchive: Use base-256 encoding for UID/GID like GNU tar does 2015-04-09 14:27:16 -04:00
Brad King 0740677b9c Merge branch 'fix-libarchive-mktemp' into release 2015-04-09 14:22:44 -04:00
Brad King 048c6d1925 Merge branch 'fix-liblzma-optimize' into release 2015-04-09 14:22:05 -04:00
Brad King 0af4b40b6e liblzma: Disable GNU 3.3 compiler optimizations
The GNU 3.3 optimizer causes bad behavior in liblzma, so disable it.
2015-04-09 14:21:33 -04:00
Brad King d8126d3784 liblzma: Disable XL compiler optimizations
Somehow the XL compiler optimizations create incorrect behavior in
liblzma and lead to crashes or truncated output during compression.
2015-04-09 14:21:00 -04:00
Brad King f941ed7a8f Merge topic 'fix-liblzma-optimize'
e5d336be liblzma: Disable GNU 3.3 compiler optimizations
a2df4a3f liblzma: Disable XL compiler optimizations altogether
2015-04-09 14:19:29 -04:00
Tim Kientzle 1f33b45d5d libarchive: Fix string concatentation in Windows mktemp implementation
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>
2015-04-09 14:08:43 -04:00
Brad King e5d336beb2 liblzma: Disable GNU 3.3 compiler optimizations
The GNU 3.3 optimizer causes bad behavior in liblzma, so disable it.
2015-04-08 13:52:02 -04:00
Brad King a2df4a3f76 liblzma: Disable XL compiler optimizations altogether
Revert commit 82c51a8a (liblzma: Disable XL compiler optimizations in
one source to avoid crash, 2015-04-02) and instead add a compiler flag
to disable optimizations in every source of liblzma.  Somehow the XL
compiler optimizations create incorrect behavior in liblzma and lead
to crashes or truncated output during compression.
2015-04-08 13:08:53 -04:00
Brad King 4bf56c331b Merge topic 'fix-liblzma-XL-optimize'
82c51a8a liblzma: Disable XL compiler optimizations in one source to avoid crash
2015-04-03 10:17:14 -04:00
Brad King 82c51a8ac6 liblzma: Disable XL compiler optimizations in one source to avoid crash
Somehow optimizations of lzma_lzma_optimum_normal by the IBM XL C
compiler cause it to crash.  Simply disable optimizations of this source
file with a pragma.
2015-04-02 13:17:57 -04:00
Brad King de97f41cf3 Merge topic 'fix-liblzma-access-alignment'
af61d6cb liblzma: Use unaligned access only on Intel and PowerPC archs
2015-04-02 12:57:35 -04:00
Brad King 50806a1e26 Merge branch 'fix-liblzma-access-alignment' into release 2015-04-01 11:06:40 -04:00
Brad King af61d6cb60 liblzma: Use unaligned access only on Intel and PowerPC archs 2015-04-01 11:05:30 -04:00
Ådne Hovda 7b1cdb0027 jsoncpp: Provide 'isfinite' implementation on older AIX and HP-UX
Newer AIX and HP-UX platforms provide 'isfinite' as a <math.h> macro.
Older versions do not, so add the definition if it is not provided.
2015-03-31 14:55:00 -04:00
Brad King bd96cd5a1e Merge topic 'curl-cygwin-no-windows'
4a2ff2b7 curl: Never consider using Windows APIs on Cygwin
2015-03-27 09:15:16 -04:00
Brad King 4a2ff2b7f2 curl: Never consider using Windows APIs on Cygwin
Our Windows API header checks are conditioned on if(NOT UNIX) but
libarchive checks HAVE_WINDOWS_H anyway so the result leaks into
the cache and influenes the curl build.  Set the check results to
false explicitly for curl when not on Windows to tolerate this.

Reported-by: Vyacheslav Karpukhin <Vyacheslav.Karpukhin@jetbrains.com>
2015-03-26 14:04:39 -04:00
Gregor Jasny 840f5b89a4 Help: Install Sphinx HTML object mapping file
To link CMake documentation from other documentation sets
like KDE extra-cmake-modules the intersphinx extension depends
on the objects.inv mapping file. The size overhead of 14k seems
to be neglectable.

Signed-off-by: Gregor Jasny <gjasny@googlemail.com>
2015-03-22 11:50:53 +01:00
Brad King 6794079523 Merge branch 'upstream-kwiml' into update-kwiml 2015-03-17 14:27:27 -04:00
Nils Gladitz 1bda8f1fdb CPackWIX: Customize CMake installer theme. 2015-03-12 20:44:27 +01:00
Brad King 7e6608fe64 Utilities/Release: Build OS X and Win binaries without OpenSSL
This will tell our curl to use the OS-native TLS/SSL APIs.
2015-02-18 09:29:50 -05:00
Brad King cb01f15170 CMake 3.2.0-rc1 version update 2015-02-05 09:55:27 -05:00
Brad King 1337576b24 Merge topic 'curl-default-cainfo'
0abd3e53 cmake: Use a default CA path when not using system curl
6ce346c5 curl: Add CURL_CA_PATH option to CMake build process
2015-01-26 09:51:50 -05:00
Brad King 29ef8fb5be Merge topic 'update-curl'
53df9bce curl: Add README-CMake.txt
2015-01-23 10:50:24 -05:00
Brad King 6ce346c53c curl: Add CURL_CA_PATH option to CMake build process
Move CMAKE_USE_OPENSSL and CURL_CA_BUNDLE up to the top of CMake so that
CMake's own sources can know their values.  Add the CURL_CA_PATH option
at the top and honor it as part of the curl build.
2015-01-23 08:23:52 -05:00
Brad King 53df9bce19 curl: Add README-CMake.txt
Describe how to update curl from upstream.
2015-01-22 10:00:04 -05:00
Brad King 27c6da933e Add option to build CMake against a system jsoncpp
Create a CMAKE_USE_SYSTEM_JSONCPP option.
2015-01-20 10:37:35 -05:00
Brad King bda4f0b661 jsoncpp: Add headers to help CMake include in-source jsoncpp headers
Add cm_jsoncpp_value.h and cm_jsoncpp_writer.h headers to include the
CMake-provided copy of the json/value.h and json/writer.h headers from
CMake sources.
2015-01-20 09:28:59 -05:00
Brad King a02fbec5f3 jsoncpp: Drop doxygen comments that cause Clang warnings
Even though we disable warnings when building jsoncpp itself, including
its headers from other CMake sources may still cause warnings.  Update
the code to remove these -Wdocumentation warnings.
2015-01-20 09:28:28 -05:00
Brad King 3cca39b46d Merge topic 'libarchive-constify-internal-get_date'
6b9a0e17 libarchive: Constify internal __archive_get_date implementation
2015-01-16 09:43:54 -05:00
Brad King 9d4ef58462 Merge topic 'import-jsoncpp'
89cd3d27 jsoncpp: Add README-CMake.txt
7e310624 jsoncpp: Provide 'isfinite' implementation on Solaris
4c496065 jsoncpp: Provide 'isfinite' implementation on ancient glibc
50032bc8 jsoncpp: Add missing assert before strcmp in json_value.cpp
ad94b052 jsoncpp: Add missing <iosfwd> include in json/writer.h
7eba04fd jsoncpp: Include C headers since we use APIs without std::
06f41e98 jsoncpp: Disable warnings to avoid changing 3rd party code
1fc55653 jsoncpp: Build the library within CMake
84d5674d jsoncpp: Include "config.h" before system headers
a263d519 Merge branch 'jsoncpp-upstream' into import-jsoncpp
53f6ccb0 JsonCpp 1.0.0 (reduced)
32fd56b0 jsoncpp: Add .gitattributes to skip whitespace checks
2015-01-16 09:43:52 -05:00
Brad King 6b9a0e1797 libarchive: Constify internal __archive_get_date implementation
The caller of this API already re-declares it as const, so update the
implementation accordingly.
2015-01-15 11:48:10 -05:00
Brad King 89cd3d273d jsoncpp: Add README-CMake.txt
Describe how to update jsoncpp from upstream.
2015-01-15 11:39:20 -05:00
Brad King 7e310624b0 jsoncpp: Provide 'isfinite' implementation on Solaris
Solaris provides a 'finite' function in <ieeefp.h>.
2015-01-15 11:39:20 -05:00
Brad King 4c49606598 jsoncpp: Provide 'isfinite' implementation on ancient glibc
The glibc 2.1 headers provide isfinite only in C99 mode.
Add its definition ourselves.
2015-01-15 11:39:04 -05:00
Brad King 50032bc847 jsoncpp: Add missing assert before strcmp in json_value.cpp
The strcmp function does not allow NULL pointers, so add an
assert to tell Clang scan-build that the code does not expect
a NULL pointer.
2015-01-15 11:39:03 -05:00
Brad King ad94b0521e jsoncpp: Add missing <iosfwd> include in json/writer.h
The header uses std::ostream, so it must be declared.
2015-01-15 11:39:03 -05:00
Brad King 7eba04fda1 jsoncpp: Include C headers since we use APIs without std:: 2015-01-15 11:39:03 -05:00
Brad King 06f41e986c jsoncpp: Disable warnings to avoid changing 3rd party code
Add '-w' or equivalent flag on compilers supporting it.
Tell MSVC to use its lowest warning level inside jsoncpp sources.
2015-01-15 11:39:01 -05:00
Brad King 1fc556536e jsoncpp: Build the library within CMake
Update json/json.h to account for our lack of autolink.h.  Update
json/config.h to include KWSys Large File Support configuration so that
consistent stream libraries are used (on AIX with XL).

Add a cm_jsoncpp_reader.h header to include the CMake-provided copy of
the json/reader.h header from CMake sources.
2015-01-15 11:37:17 -05:00
Brad King 84d5674d4e jsoncpp: Include "config.h" before system headers 2015-01-15 11:36:49 -05:00
Brad King 74b8f78622 zlib: Disable warnings to avoid changing 3rd party code 2015-01-14 09:20:27 -05:00
Brad King a263d519ff Merge branch 'jsoncpp-upstream' into import-jsoncpp
Use a subtree merge to place the upstream content in the
Utilities/cmjsoncpp directory.
2015-01-13 14:42:00 -05:00
Brad King 32fd56b066 jsoncpp: Add .gitattributes to skip whitespace checks 2015-01-13 10:36:19 -05:00
Brad King 202056cdb8 Utilities/Release: Build Windows and OS X binaries with native SSL
For the nightly binaries, turn of CMAKE_USE_OPENSSL on Windows and OS X
10.6+ platforms.  This will activate the new curl behavior to use the
OS-native SSL/TLS implementation.
2014-12-22 08:47:46 -05:00
Brad King d64caa5372 Utilities/Release: Fix name of OS X 10.6+ x86_64-only binary
In commit v3.1.0-rc1~52^2 (Make the OSX 10.6+ release x86_64 only,
2014-09-29) we forgot to remove the name "universal" from the binary
name.  Since the binary is no longer universal, use "x86_64" instead.

While at it, update the deployment target to actually be 10.6.
2014-12-22 08:47:19 -05:00
Brad King e4563257ba curl: Use OS X SSL/TLS native implementation
On OS X, when CMAKE_USE_OPENSSL is OFF, use the OS implementation.
This will allow the OS-configured CA list to be trusted automatically.

This is supported on OS X 10.6 and above using AppleClang, Clang, and
GNU compilers.
2014-12-18 09:44:19 -05:00
Brad King ba8c663219 curl: Use Windows SSL/TLS native implementation
On Windows, when CMAKE_USE_OPENSSL is OFF, use the OS implementation.
This will allow the OS-configured CA list to be trusted automatically.
2014-12-12 13:52:46 -05:00
Sean McBride 111be1801f Rename header guards to not start with double underscore
Use regex to find/replace:

__(cm.*_h)
\1

Then fix QCMake.h by hand.
2014-12-11 13:53:06 -05:00
Brad King 13fc2ed4c4 Merge topic 'doc-mixed-case-commands'
607b39dc Utilities/Sphinx: Fix link targets for mixed-case command names
2014-12-04 10:15:10 -05:00
Brad King 607b39dc11 Utilities/Sphinx: Fix link targets for mixed-case command names
When a CMake domain 'command' object is defined by CMakeTransform or the
'cmake:command' directive, generate the link target with a lower-case
name even if the command name is not all lower-case.  This is needed to
make cross-references to the command definition work since the
'cmake:command' role is marked with the 'lowercase' property.
2014-12-04 10:03:26 -05:00
Brad King 7fe6bb0d62 Utilities/Release: Add build of binary for Linux x86_64 2014-12-02 14:00:39 -05:00
Ådne Hovda 6b045c3ba8 ccmake: Add CMAKE_USE_SYSTEM_FORM option to use libform instead of cmForm 2014-11-25 11:29:58 -05:00
Brad King 7a39d32f05 Merge topic 'update-curl'
46bbf947 curl: Check for OpenSSL headers independently
2014-11-18 09:12:32 -05:00
Brad King 397c762da4 Merge topic 'doc-sphinx-cmake-fixup'
5cda2205 Utilities/Sphinx: Add missing call to note_explicit_target
2014-11-18 09:12:25 -05:00
Brad King 5cda220548 Utilities/Sphinx: Add missing call to note_explicit_target
Sphinx calls document.note_explicit_target with any nodes.target() it
creates.  Add such a call when we create a document target in
CMakeTransform.
2014-11-17 15:37:31 -05:00
Brad King 46bbf94783 curl: Check for OpenSSL headers independently
Use check_include_file instead of check_include_file_concat to look
for OpenSSL headers.  They do not need to participate in a sequence
of dependent system headers.  Also they may cause winsock.h to be
included before ws2tcpip.h, causing the latter to not be detected
in the sequence.
2014-11-17 09:52:49 -05:00
Brad King 03dad03a54 Merge topic 'update-curl'
3dd26463 curl: Disable warnings to avoid changing 3rd party code
2014-11-12 09:35:51 -05:00
Brad King b4f5204097 Merge topic 'doc-index-xrefs'
7ca9a459 Utilities/Sphinx: Add index entries for cross-references
2014-11-12 09:35:45 -05:00
Brad King 7ca9a459eb Utilities/Sphinx: Add index entries for cross-references
Add a document transform to insert index and target nodes just before
any CMake domain cross-reference node.  This will make references to
CMake domain objects appear in the index.  Also add a comment explaining
why it cannot be done in a result_nodes method of the CMakeXRefRole.
2014-11-12 09:10:52 -05:00
Brad King 3dd26463d4 curl: Disable warnings to avoid changing 3rd party code
Tell MSVC to use its lowest warning level inside curl sources.
2014-11-11 08:58:01 -05:00
Brad King 75f3a282b7 Merge topic 'update-curl'
c02c747b Tests: Update expected CTestTestFailedSubmit output
a427ed0c curl: Skip sanity check that triggers Clang warning
17b24d55 curl: Disable warnings to avoid changing 3rd party code
4c3bd340 curl: Skip check for inet_pton on Windows
54cb23c6 curl: Restore installation of OpenSSL DLLs
c50f0327 curl: Restore CURL_CA_BUNDLE option
681693c9 curl: Restore CMake-specific zlib selection code
10d80b68 curl: Restore CMake-specific test and install code
19593042 curl: Configure build to work within CMake
cf54aebb curl: Fix curl.h inclusion of curlbuild.h from CMake sources
c17e3207 curl: Use arch-aware CHECK_TYPE_SIZE results
1f7cb7e2 curl: Fix detection of headers with dependencies
b18c9044 curl: Drop inclusion of .rc file for static lib
860f0a2d curl: Select file APIs on Windows
5a3b55ed curl: Do not use 'dl' on HP-UX
59242702 curl: Simplify if() conditions on check result variables
...
2014-11-10 10:43:10 -05:00
Brad King a427ed0cb8 curl: Skip sanity check that triggers Clang warning
Defining curl APIs as forwarding macros triggers Clang warnings
with -Wdisabled-macro-expansion.   Skip this sanity check.
2014-11-10 10:13:39 -05:00