summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* CMake 3.4.2v3.4.2Brad King2016-01-191-1/+1
|
* Merge branch 'vs-win10-sdk' into releaseBrad King2016-01-113-17/+35
|\
| * VS: Fix Windows 10 SDK version selection (#15831)Brad King2016-01-111-17/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In commit v3.4.0-rc1~5^2~1 (VS: Add support for selecting the Windows 10 SDK, 2015-09-30) we added Windows 10 SDK selection choosing the most recent SDK that is not newer than the target version. This is backward because it should be up to the application code to not use APIs newer than the target version. It is up to the build system to provide a SDK that has at least the APIs expected to be available for the target version. Furthermore, since the default target version is the host version of Windows, the old approach breaks when the only SDK available is for a newer version of Windows. Fix this by always selecting a Windows 10 SDK if one exists. Use the SDK for the exact version if is available. Otherwise use the latest version of the SDK available because that will have at least the APIs expected for the target version.
| * cmSystemTools: Add VersionCompareEqual helperBrad King2016-01-112-0/+10
| | | | | | | | Wrap a call to VersionCompare with OP_EQUAL.
| * VS: Do not select a partial Windows 10 SDK folder (#15831)Brad King2016-01-081-0/+16
| | | | | | | | | | Skip SDK candidate folders that do not contain <um/windows.h> as they are not full SDKs.
* | Merge branch 'vs14-debug-enum' into releaseBrad King2016-01-111-2/+18
|\ \
| * | VS: Fix VS 2015 .vcxproj file value for GenerateDebugInformation (#15894)Brad King2016-01-081-2/+18
| |/ | | | | | | | | | | | | Starting with VS 2015 the GenerateDebugInformation build property is an enumeration (`No`, `Debug`, `DebugFastLink`) instead of a boolean value (`false`, `true`). For now we simply change to `No` and `Debug` fix current behavior. Support for `/debug:fastlink` can be added later.
* | Merge branch 'vs-compiler-id-itanium' into releaseBrad King2015-12-211-3/+0
|\ \
| * | CMakeDetermineCompilerId: Fix VS Itanium platform name (#15889)Brad King2015-12-211-3/+0
| |/ | | | | | | | | | | | | VS expects the platform to be just `Itanium`, so drop the incorrect special case mapping it to `ia64`. This platform name has been wrong since the logic was added by commit v2.8.10~148^2~8 (VS: Detect the compiler id and tool location, 2012-08-16).
* | Merge branch 'fix-CMP0065-NEW-AIX-HP' into releaseBrad King2015-12-114-4/+28
|\ \
| * | AIX,HP-UX: Fix RPATH handling when CMP0065 is set to NEWMarc Chevrier2015-12-114-4/+28
| |/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The CMAKE_SHARED_LIBRARY_LINK_<LANG>_FLAGS setting has always been meant for flags needed to export symbols from executables for use by shared library plugins. Since commit v3.4.0-rc1~58^2~1 (CMP0065: Restrict the use of CMAKE_SHARED_LIBRARY_LINK_<LANG>_FLAGS, 2015-08-24) this is made explicit by using the flags only for executables with ENABLE_EXPORTS, guarded by CMP0065 for compatibility. On some platforms we were accidentally using this setting to pass other flags to the linker: * AIX: -bnoipath, -brtl * HP-UX: +s, +nodefaultrpath These flags are incorrectly dropped when CMP0065 is set to NEW. Fix this by moving the flags to more appropriate places for linking executables.
* | Merge branch 'fix-java-idlj-jarsigner-typos' into releaseBrad King2015-12-031-3/+3
|\ \ | |/ |/|
| * FindJava: Fix typos in IdlJ and JarSigner component implementationMarc Chevrier2015-12-031-3/+3
|/ | | | | | Fix typos introduced by commit v3.4.0-rc1~257^2~2 (FindJava: Add support for idlj and jarsigner tools, 2015-07-31) to correctly report when these components are found.
* CMake 3.4.1v3.4.1Brad King2015-12-021-1/+1
|
* Merge branch 'backport-NIOS2-CPU' into releaseBrad King2015-12-022-0/+8
|\
| * Add NIOS2 CPU supportMarek Vasut2015-12-022-0/+8
| | | | | | | | | | | | | | | | | | Add necessary bits to support the NIOS2 little-endian CPU. Signed-off-by: Marek Vasut <marex@denx.de> Cc: Ley Foon Tan <lftan@altera.com> Cc: Thomas Chou <thomas@wytron.com.tw> Cc: Walter Goossens <waltergoossens@home.nl>
* | Merge branch 'include-for-mode_t' into releaseBrad King2015-12-021-0/+2
|\ \
| * | Include `sys/types.h` header to get `mode_t`Kylie McClain2015-12-021-0/+2
| |/ | | | | | | | | Do not depend on it being included by other system headers. It is not included by others on musl-libc, for example.
* | Merge branch 'reduce-realpath-calls' into releaseBrad King2015-12-012-4/+28
|\ \
| * | cmOrderDirectories: Reduce repeat realpath() callsBrad King2015-12-012-2/+18
| | | | | | | | | | | | | | | | | | | | | Since commit v3.1.0-rc1~110^2 (Tolerate symlinks during RPATH ordering, 2014-09-09) we call realpath() for every directory ordering constraint check. On some platforms/filesystems this is slow, so memoize the result of the call for each directory.
| * | cmOrderDirectories: Factor out directory comparisonBrad King2015-12-012-4/+12
| |/ | | | | | | Create an `IsSameDirectory` helper method.
* | Merge branch 'reduce-cmState-accumulation' into releaseBrad King2015-11-308-66/+121
|\ \
| * | cmState: Avoid accumulating snapshot storage for short-lived scopesBrad King2015-11-253-0/+34
| | | | | | | | | | | | | | | We need to keep only certain snapshot types and their ancestors. Also keep those needed for backtraces.
| * | cmState: Avoid accumulating policy stack storage for short-lived scopesBrad King2015-11-251-1/+1
| | | | | | | | | | | | | | | | | | | | | We enforce policy push/pop balance around any scope that pushes/pops a snapshot. Therefore a snapshot may never reference entries of PolicyStack that were created in nested scopes. Free storage of short-lived policy stack entries when they are popped.
| * | cmListFileCache: Implement cmListFileBacktrace ctor/dtor out-of-lineBrad King2015-11-252-4/+13
| | |
| * | cmLinkedTree: Add Pop methodBrad King2015-11-251-0/+21
| | | | | | | | | | | | | | | | | | | | | Add a method to increment an iterator (follow the "up" pointer) to the previous level in the stack of scopes and free storage of the top of the stack if possible. This will allow short-lived scopes to be created and destroyed by matching Push/Pop pairs without accumulating storage.
| * | cmLinkedTree: Rename 'Extend' method to 'Push'Brad King2015-11-252-35/+35
| | | | | | | | | | | | | | | | | | Logically the method pushes a nested scope on top of a given scope because the "up" pointer sequence forms a stack independent of any other branches of the tree.
| * | cmState: Enforce policy scope balancing around variable scopesBrad King2015-11-252-6/+2
| | | | | | | | | | | | | | | | | | | | | | | | Everywhere we use cmMakefile::ScopePushPop to manage variable scopes also expects policy scopes to be balanced. There is no place that we use cmMakefile::PolicyPushPop without also using ScopePushPop. Relieve PolicyPushPop of responsibility for policy scope balance checks by moving it to ScopePushPop.
| * | cmLocalGenerator: Use ScopePushPop RAII class to manage local variable scopesBrad King2015-11-251-4/+2
| | |
| * | cmMakefile: Remove unused PolicyPushPop interfacesBrad King2015-11-252-10/+4
| | | | | | | | | | | | | | | | | | The PolicyPushPop constructor arguments and Quiet method were used to pass non-default arguments to PushPolicy and PopSnapshot, but no clients use them anymore.
| * | cmMakefile: Clarify purpose of method that pops a scope snapshotBrad King2015-11-252-8/+11
| | | | | | | | | | | | | | | | | | | | | The `PopPolicyBarrier` method is actually responsible for closing any scope opened by creating a snapshot. Rename it to `PopSnapshot` and add a comment explaining the purpose of the poilcy-scope-specific part of the method.
* | | Merge branch 'fix-find_package-version-file-error-stack' into releaseBrad King2015-11-2519-2/+40
|\ \ \ | |/ /
| * | Merge branch 'test-cmake_policy-unmatched' into ↵Brad King2015-11-2418-0/+36
| |\ \ | | | | | | | | | | | | fix-find_package-version-file-error-stack
| | * | Tests: Add case for package version file unmatched policy scopeBrad King2015-11-2411-0/+22
| | | |
| | * | Tests: Add case for unmatched cmake_policy({PUSH,POP})Brad King2015-11-247-0/+14
| | | |
| * | | cmState: Skip variable scope snapshots to avoid call stack duplicatesBrad King2015-11-241-2/+4
| | |/ | |/| | | | | | | | | | | | | | | | | | | | | | Since commit v3.4.0-rc1~179^2~1 (cmState: Add a VariableScope snapshot type, 2015-08-23) the snapshot stack may have a VariableScopeType entry. Skip over these when constructing the call stack, just as we do for policy scopes. Otherwise we report the command causing the variable scope to be entered twice (e.g. find_package while loading a package version file).
* | | Merge branch 'test-add_subdirectory-in-function' into releaseBrad King2015-11-244-0/+33
|\ \ \
| * | | Tests: Add case for add_subdirectory inside a functionBrad King2015-11-234-0/+33
| | |/ | |/|
* | | Merge branch 'revert-compiler-links-statically' into releaseBrad King2015-11-237-23/+0
|\ \ \
| * | | Revert "Disable shared library support when compiler links statically" (#15855)Brad King2015-11-237-23/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In commit v3.4.0-rc1~18^2 (Disable shared library support when compiler links statically, 2015-09-30) we tried to detect when the compiler is not capable of linking shared libraries (possibly due to flags in use). However, the approach is not robust against flags like `-nostdlib`. Revert it for now pending another solution to the original problem.
* | | | Merge branch 'backport-fix-autodef-bigobj-64' into releaseBrad King2015-11-202-1/+3
|\ \ \ \
| * | | | Fix auto export symbols for Dlls containing /bigobj for 64bit builds.Bill Hoffman2015-11-202-1/+3
| | |_|/ | |/| | | | | | | | | | | | | | | | | | | | | | This fixes a bug where 64 bit builds with /bigobj incorrectly determined that the object files were not 64 bit. This manifested itself with printf type functions showing up as undefined because the leading underscore was being removed and should not be removed.
* | | | Merge branch 'avoid-divide-by-zero' into releaseBrad King2015-11-191-1/+7
|\ \ \ \
| * | | | cmELF: Avoid divide by zero if there are no dynamic section entriesTy Smith2015-11-191-1/+7
| |/ / /
* | | | Merge branch 'fix-forced-toolchain-dialect' into releaseBrad King2015-11-197-0/+29
|\ \ \ \
| * | | | Project: Guess default standard dialect if compiler was forced (#15852)Brad King2015-11-197-0/+29
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Prior to commit v3.4.0-rc1~71^2 (Project: Determine default language dialect for the compiler, 2015-09-15) we always guessed the default language standard dialect based on the compiler version. This was not reliable so that commit switched to computing the default language standard dialect while detecting the compiler id. When a toolchain file uses CMakeForceCompiler to set the compiler id then the detection does not occur. Therefore commit v3.4.0-rc1~54^2 (Project: Don't require computed default dialect if compiler was forced, 2015-09-22) made the lack of detection an error only if the compiler was not forced. However, this means that projects using CMakeForceCompiler no longer even get the guess that we had before so <LANG>_COMPILER does not work. Due to the sophistication of CMake's compiler detection logic projects should be ported away from using CMakeForceCompiler. In the meantime, restore a guess of the default language standard dialect when the compiler is forced.
* | | | | Merge branch 'backport-android-no-versioned-soname' into releaseBrad King2015-11-191-0/+1
|\ \ \ \ \
| * | | | | Android: Restore generation of non-versioned soname (#15851)Brad King2015-11-191-0/+1
| | |/ / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Our check of CMAKE_PLATFORM_NO_VERSIONED_SONAME, originally added by commit v3.1.0-rc1~416^2 (Add basic Android platform module, 2014-06-06), was dropped accidentally by commit v3.4.0-rc1~250^2~21 (cmGeneratorTarget: Move GetLibraryNames from cmTarget, 2015-08-04). Restore the check in the new location of the GetLibraryNames method.
* | | | | Merge branch 'FindGTest-avoid-CMP0064' into releaseBrad King2015-11-181-3/+3
|\ \ \ \ \
| * | | | | FindGTest: Refactor test type checks to avoid cases triggering CMP0064Brad King2015-11-181-3/+3
| |/ / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Update our if() conditions to avoid CMP0064 warnings when `${test_type}` is equal to `TEST`. Reported-by: David T. Chen <dchen@mail.nih.gov>