summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Android: Add CMAKE_ANDROID_NDK_TOOLCHAIN_HOST_TAG variableBrad King2016-11-186-0/+19
| | | | | | | | | The NDK provides prebuilt toolchain files in directories named for the host architecture. The NDK build system calls this `HOST_TAG`. Expose the value publicly for use by clients that need to pass it to external tools. Suggested-by: Ruslan Baratov <ruslan_baratov@yahoo.com>
* Android: Always set CMAKE_ANDROID_NDK_TOOLCHAIN_VERSIONBrad King2016-11-186-4/+26
| | | | | | | | | When this variable is not set by the user or toolchain file, set it to the default selected. This will be useful for client code that needs to pass the value to an external tool that needs to find the same toolchain in the NDK. Leave it empty for a standalone toolchain. Suggested-by: Ruslan Baratov <ruslan_baratov@yahoo.com>
* CMake 3.7.0v3.7.0Brad King2016-11-111-1/+1
|
* Merge branch 'autorcc-only-no-rebuild' into releaseBrad King2016-11-091-2/+2
|\
| * QtAutogen: Do not re-generate AUTORCC outputs on every buildBrad King2016-11-091-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | Refactoring in commit v3.6.0-rc1~134^2~10 (Autogen: Split out moc file generation code to dedicated method, 2016-04-18) removed the unconditional creation of the `<target>_automoc.cpp` file. Now it is generated only when `AUTOMOC` is enabled. However, if this file is not created then our internal `GenerateAll` setting is enabled on every build, causing `AUTORCC` to re-generate its file(s) every time. Fix the `GenerateAll` setting to be used only for when autogen settings change. The old logic was left from when we had only automoc. Closes: #16413
* | Merge branch 'pkgconfig_imported_target' into releaseBrad King2016-11-081-1/+1
|\ \ | |/ |/|
| * PkgConfig: Fix FindPkgConfig imported target featureFlorent Castelli2016-11-041-1/+1
|/ | | | | | | The options to the find_library call to create the imported target used a literal string "HINTS /path NO_DEFAULT_PATH" instead of a list of options. This resulted in never finding any library in my testing.
* CMake 3.7.0-rc3v3.7.0-rc3Brad King2016-11-041-1/+1
|
* Merge branch 'cpackifw-search-algorithm' into releaseBrad King2016-11-031-21/+47
|\
| * CPackIFW: Update search to find QtIFW distributed with QtSDKKonstantin Podsvirov2016-11-031-21/+47
| | | | | | | | Also avoid CMP0007 warnings.
* | Merge branch 'FindHDF5-restore-default-C' into releaseBrad King2016-11-021-10/+2
|\ \
| * | FindHDF5: Restore pre-3.6 behavior of finding only C by defaultBrad King2016-11-021-10/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Refactoring in commit v3.6.0-rc1~72^2 (HDF5: Rework component searching to correctly find HL for all bindings, 2016-05-12) changed the default behavior from finding only the C bindings to finding everything for the enabled languages. Restore the original behavior for compatibility and because many projects need only the C bindings. Closes: #16397
* | | Merge branch 'doc-cmake-qt-fixes' into releaseBrad King2016-11-021-1/+1
|\ \ \
| * | | Help: Update example Qt 5 find_package call to add missing componentThiago M. de C. Marques2016-11-021-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Running CMake on it caused the following error: error: Target "publisher" links to target "Qt5::DBus" but the target was not found. Perhaps a find_package() call is missing for an IMPORTED target, or an ALIAS target is missing? Add the missing DBus component.
| * | | Help: Update example Qt 5 find_package call to use COMPONENTSMarcus D. Hanwell2016-11-021-1/+1
| | |/ | |/|
* | | Merge branch 'cpack-doc-typos' into releaseBrad King2016-11-022-7/+7
|\ \ \
| * | | CPackRPM: Fix incorrect variable name in documentationAlex Turbov2016-11-021-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | `CPACK_RPM_COMPONENT_INSTALL` is the correct variable to set to enable component packaging. `CPACK_RPM_PACKAGE_COMPONENT` is just set to a component name when CPack calls corresponding installer.
| * | | CPackDeb: Fix incorrect variable name in documentationAlex Turbov2016-11-021-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | `CPACK_DEB_COMPONENT_INSTALL` is the correct variable to set to enable component packaging. `CPACK_DEB_PACKAGE_COMPONENT` is just set to a component name when CPack calls corresponding installer.
| * | | CPackDeb: fix copy-n-paste typos in documentationAlex Turbov2016-11-011-3/+3
| |/ /
* | | Merge branch 'fix-macos-sysroot' into releaseBrad King2016-11-022-30/+2
|\ \ \
| * | | Darwin: Remove deployment target version checkGregor Jasny2016-11-012-26/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Starting with Xcode 8 the SDK folder also contains an unversioned entry: MacOSX.sdk MacOSX10.12.sdk -> MacOSX.sdk If this unversioned path is used CMake cannot detect the SDK version. Furthermore, querying the SDK version via xcodebuild -sdk <sysroot> -version Path gives bogus results for the Command Line Tools installed into `/`. The OS X deployment target version and SDK version are not as tied as they once were, so this check is now more trouble than it is worth. Simply remove it. Closes: #16323
| * | | Revert "Xcode: Convert maybe unversioned OSX sysroot into versioned SDK path"Gregor Jasny2016-11-011-4/+2
| |/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Revert commit v3.7.0-rc1~48^2 (Xcode: Convert maybe unversioned OSX sysroot into versioned SDK path, 2016-09-25). The replacement of `else()` with `if(CMAKE_OSX_SYSROOT)` defeats the prior handling of `if("x${CMAKE_OSX_SYSROOT}" MATCHES "/")`. This causes the combination -DCMAKE_OSX_DEPLOYMENT_TARGET:STRING="" -DCMAKE_OSX_SYSROOT:STRING=/ to not be honored and `-isysroot` to be emitted as a compiler flag universally. We will need another solution to the problem the now-reverted commit was meant to address. Closes: #16394
* | | Merge branch 'FindMatlab-fix-typo' into releaseBrad King2016-10-282-3/+3
|\ \ \
| * | | FindMatlab: Fix typo in matlab_add_unit_test implementationMatthew Woehlke2016-10-282-3/+3
| |/ / | | | | | | | | | | | | | | | | | | Fix typo in variable used to communicate between matlab_add_unit_test and its helper script MatlabTestsRedirect.cmake that was introduced in commit v3.7.0-rc1~116^2 (FindMatlab: Extend matlab_add_unit_test to run arbitrary test code, 2016-08-30).
* | | Merge branch 'FindMatlab-9.1' into releaseBrad King2016-10-281-0/+1
|\ \ \
| * | | FindMatlab: Add support for Matlab 2016b (9.1)Francesco Romano2016-10-281-0/+1
| |/ /
* | | Merge branch 'cmake-server-handshake-improvements' into releaseBrad King2016-10-284-66/+104
|\ \ \
| * | | server-mode: Handle generator toolset and platform in handshakeTobias Hunger2016-10-283-2/+35
| | | |
| * | | cmake-server: Better error reporting during handshakeTobias Hunger2016-10-272-66/+71
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Catch more problematic input during handshake and report failure. These were caught before when trying to configure, but it is way better to get these reports early.
* | | | Merge branch 'intel-17-features' into releaseBrad King2016-10-261-3/+3
|\ \ \ \
| * | | | Features: Record features for Intel C++ 17 on UNIXBrad King2016-10-261-3/+3
| | | | | | | | | | | | | | | | | | | | Issue: #16384
* | | | | Merge branch 'cmake-server-message-quoting' into releaseBrad King2016-10-243-61/+61
|\ \ \ \ \ | | |/ / / | |/| | |
| * | | | cmake-server: Change message wrapper to avoid ambiguity with contentBrad King2016-10-243-61/+61
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Change our message wrapper from [== CMake Server ==[ ... ]== CMake Server ==] to [== "CMake Server" ==[ ... ]== "CMake Server" ==] to guarantee that no JSON content can ever contain the ending string (because it would be encoded as `]== \"CMake Server\" ==]`).
* | | | | Merge branch 'intel-compile-features-windows' into releaseBrad King2016-10-242-6/+12
|\ \ \ \ \ | | |/ / / | |/| | |
| * | | | Intel: Fix compiler extension flags on WindowsBrad King2016-10-242-6/+12
| | |/ / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The extension flags enabled by commit v3.6.0-rc1~120^2~1 (Features: Record standard flags for Intel C/C++ on Windows, 2016-04-18) of the form `-Qstd=gnu++11` are not supported by the Intel C/C++ Compiler for Windows. Fall back to using the non-extension form of the flags. Issue: #16384
* | | | Merge branch 'android-pic' into releaseBrad King2016-10-2415-35/+9
|\ \ \ \
| * | | | Android: Link position-independent executables with proper flagsBrad King2016-10-241-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add `-fPIE -pie` to the default executable link flags when `CMAKE_POSITION_INDEPENDENT_CODE` is enabled. This is required by Android 16 and above for executables to run on the device. Closes: #16382
| * | | | Android: Set CMAKE_POSITION_INDEPENDENT_CODE automaticallyBrad King2016-10-2415-35/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If the toolchain file or cache does not set this, enable it automatically based on the Android API version. Versions 16 and above expect position independent code. Use the main `CMAKE_POSITION_INDEPENDENT_CODE` setting in favor of hard-coding `-fpic` or `-fPIC` in the compiler flags for each ABI. This allows CMake to use `-fpie` or `-fPIE` as needed when sources are meant for executables, and `-fpic` or `-fPIC` for other sources.
* | | | | Merge branch 'backport-ninja-subdir-binary-dir' into releaseBrad King2016-10-248-29/+35
|\ \ \ \ \
| * | | | | Ninja: Use binary dir for `$subdir/all` targetsAlexis Murzeau2016-10-248-29/+35
| | |/ / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The targets added by commit v3.6.0-rc1~240^2~2 (Ninja: Add `$subdir/all` targets, 2016-03-11) use as `$subdir` the relative path from the top of the source tree to the current source directory. This is not correct when using `add_subdirectory(test test_bin)`. Instead we need to use the relative path from the top of the binary tree to the current binary directory as was done for related targets by commit v3.7.0-rc1~268^2 (Ninja: Add `$subdir/{test,install,package}` targets, 2016-08-05).
* | | | | Merge branch 'doc-cmake-server-typos' into releaseBrad King2016-10-211-81/+48
|\ \ \ \ \ | | |_|/ / | |/| | |
| * | | | Help: Fix cmake-server documentationTobias Hunger2016-10-211-81/+48
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Some information was not updated to reflect the latest implementation. Reported-by: Sylvain Joubert <joubert.sy@gmail.com>
* | | | | Merge branch 'android-link-exe' into releaseBrad King2016-10-214-0/+16
|\ \ \ \ \ | | |_|/ / | |/| | |
| * | | | Android: Add missing link flags for device executablesBrad King2016-10-214-0/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | See `${ndk}/build/core/default-build-commands.mk` for link flags the NDK uses for executables. Add them to our default executable link flags. Suppress `nocopyreloc` on `arm64-v8a` because it does not work with some STL types. Closes: #16380
* | | | | Merge branch 'android-armeabi-c++_static' into releaseBrad King2016-10-212-5/+2
|\ \ \ \ \ | |/ / / / | | | / / | |_|/ / |/| | |
| * | | Android: Fix support for armeabi with c++_staticBrad King2016-10-212-5/+2
| |/ / | | | | | | | | | | | | | | | | | | | | | Add missing "unwind" and "atomic" libraries needed for this combination. See `${ndk}/sources/cxx-stl/llvm-libc++/libs/armeabi/libc++.a` for the libraries the NDK uses. Issue: #16380
* | | CMake 3.7.0-rc2v3.7.0-rc2Brad King2016-10-191-1/+1
|/ /
* | Merge branch 'fix-Android-NsightTegra' into releaseBrad King2016-10-183-2/+5
|\ \
| * | Tests: Add VSNsightTegra test for VS 2015Brad King2016-10-181-0/+3
| | |
| * | Tests: Fix VSNsightTegra test on Android NDK r12bBrad King2016-10-181-1/+1
| | | | | | | | | | | | | | | Test with architecture `armv7-a` instead of `armv7-a-hard` because the latter is supporte supported only with NDK revisions r9c to r11c.