Commit Graph

33219 Commits

Author SHA1 Message Date
Brad King 43f4326ece Android: Fix support for armeabi with c++_static
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
2016-10-21 08:42:25 -04:00
Brad King a0c539b546 Merge branch 'fix-Android-NsightTegra' into release 2016-10-18 14:24:34 -04:00
Brad King 9af881d810 Tests: Add VSNsightTegra test for VS 2015 2016-10-18 13:32:50 -04:00
Brad King 6739d24030 Tests: Fix VSNsightTegra test on Android NDK r12b
Test with architecture `armv7-a` instead of `armv7-a-hard` because the
latter is supporte supported only with NDK revisions r9c to r11c.
2016-10-18 13:32:50 -04:00
Brad King 06c396126f VS: Fix NVIDIA Nsight Tegra Visual Studio Edition support
The guard added by commit v3.7.0-rc1~229^2~17 (Android: Suppress new
functionality with Nsight Tegra in VS IDE builds, 2016-06-02) to
`Modules/Platform/Android-Determine.cmake` does not work in that
location because `CMAKE_VS_PLATFORM_NAME` is not set until after the
module is loaded.  Change this particular guard to test for the Visual
Studio generator instead.  If in the future we add support for using
Visual Studio for Android without Nsight Tegra then something more will
be needed, but this is good enough for now.

Closes: #16371
2016-10-18 13:32:50 -04:00
Brad King 074999171c Merge branch 'cmake-server-pipe-mode-fix' into release 2016-10-18 13:12:02 -04:00
Brad King e3cb3116bc Merge branch 'external-project-source-subdir-usage' into release 2016-10-18 12:56:13 -04:00
Ben Boeckel 615f3ed2b4 ExternalProject: make SOURCE_SUBDIR directly appendable
This allows it to be used in expansions without being conditional based
on its value.
2016-10-18 12:51:38 -04:00
Ben Boeckel fdce782b61 ExternalProject: error out only if the property is unset
Property values may be empty; instead make sure they exist and allow for
empty values.
2016-10-18 12:51:06 -04:00
Tobias Hunger 9112c43ebc server-mode: Fix named pipe mode
Do not treat a pointer itself as a `uv_stream_t`, but instead the
pointed-to `uv_pipe_t`.  It is unclear how this ever worked before in
local testing.

While at it, remove duplicate setup code and improve an error message.
2016-10-18 10:55:01 -04:00
Brad King df68d8a17e Merge branch 'FindwxWidgets-unversioned-library-path' into release 2016-10-17 11:07:37 -04:00
Brad King 52e8fa2312 FindwxWidgets: Fix finding unversioned VS-built directory prefixes
The change in commit v3.7.0-rc1~217^2 (FindwxWidgets: Add VS-versioned
library directory prefixes, 2016-08-24) works only for official
wxWidgets builds that add the VS-versioned directory prefixes.  Local
wxWidgets builds still have an unversioned prefix.  Search them.

Closes: #16366
2016-10-17 11:06:00 -04:00
Brad King b6e5b6485f Merge branch 'osx-no-deployment-target-on-cross-compile' into release 2016-10-17 10:04:29 -04:00
Gregor Jasny e8bafb6fcb OS X: Do not try to set deployment target when cross-compiling
The change in commit v3.4.0-rc2~6^2 (Xcode: Adjust deployment target SDK
version to host version, 2015-10-11) does not make sense when
cross-compiling.  Make it conditional to fix this regression in some
cross-compiling cases.

Closes: #16355
2016-10-17 10:02:17 -04:00
Brad King d657fd7b35 Merge branch 'doc-math-EXPR' into release 2016-10-14 15:47:50 -04:00
Brad King c05d9b0569 Help: Fix math(EXPR) documentation formatting 2016-10-14 15:47:30 -04:00
Brad King ef4e349ea3 Merge branch 'doc-clarify-ctest-APPEND' into release 2016-10-14 14:48:20 -04:00
Brad King 78b00f1d10 Help: Clarify `ctest_*` APPEND option behavior
Explicitly state that this marks the `.xml` to tell the dashboard
server to append it to previously submitted results and that it
does not cause results to be appended to the `.xml` file.
2016-10-14 14:43:46 -04:00
Brad King a975b21cec Merge branch 'ninja-framework-POST_BUILD' into release 2016-10-13 14:09:43 -04:00
Brad King 20278872e3 Ninja: Fix POST_BUILD commands on macOS Frameworks
The condition added by commit v2.8.12~179^2 (OS X: Fix regression
handling frameworks for Ninja, 2013-07-16) for excluding use of
versioning symlinks on macOS Frameworks must match that used for
POST_BUILD selection.  Otherwise we place the POST_BUILD commands after
a symlink step that is never added.

Closes: #16363
2016-10-13 14:04:12 -04:00
Brad King 2d6fba6780 Merge branch 'backport-LINK_WHAT_YOU_USE-allow-OFF' into release 2016-10-13 13:38:28 -04:00
Jamie Snape 933e54d3cc Honor LINK_WHAT_YOU_USE when set to OFF
Explicitly setting variable CMAKE_LINK_WHAT_YOU_USE or property
LINK_WHAT_YOU_USE to OFF should not cause LWYU to run.  Fix the
property lookup to use GetPropertyAsBool.
2016-10-13 13:32:22 -04:00
Brad King f6386a768e Merge branch 'ninja-rc-regression' into release 2016-10-13 13:15:46 -04:00
Ben Boeckel 9977899df2 Ninja: Fix RC language depfile generation with cmcldeps
In commit v3.7.0-rc1~275^2 (Ninja: Use full path for all source files,
2016-08-05), the source path was changed to use an absolute path.
Inside of `cmcldeps` for `.rc` file compilation, it uses a separate
argument for the path to the source file.  This ended up causing
`cmcldeps` to transform the following call:

    cmcldeps.exe RC source.rc ... C:/full/path/to/source.rc

into:

    ... C:/full/path/to//Tc source.rc

which is invalid.  Update the source filename to use the full path to
the source file so that the path is replaced properly.
2016-10-13 13:03:57 -04:00
Brad King 1a64962b7c Merge branch 'ice-3.6.3' into release 2016-10-13 08:20:08 -04:00
Roger Leigh 6e5a3655ca FindIce: Add support for version 3.6.3 2016-10-13 08:19:27 -04:00
Brad King d0255d55e1 Merge branch 'cmake-gui-fix-extra-generator-names' into release 2016-10-11 08:42:16 -04:00
Brad King bf86012ada cmake-gui: Fix "extra" generator entries in drop-down list
Refactoring in commit v3.7.0-rc1~291^2~1 (Refactor extra generator
registration to use factories, 2016-07-20) accidentally switched
the order of the "extra - base" generator names to "base - extra".
Switch it back.  While this could affect all callers of the
`GetRegisteredGenerators` method, only cmake-gui actually used this
particular field.

Closes: #16359
2016-10-11 08:39:44 -04:00
Brad King acd2eab2f3 Merge branch 'ExternalProject-fix-CMAKE_CACHE_ARGS-list' into release 2016-10-10 14:49:10 -04:00
Max Smolens a3c98cb30e ExternalProject: Fix regression in passing list to CMAKE_CACHE_ARGS
Fix passing a list to the CMAKE_CACHE_ARGS and CMAKE_CACHE_DEFAULT_ARGS
options of ExternalProject_Add.

Following commit v3.7.0-rc1~273^2~1 (prefer list(APPEND) over
string(APPEND) where appropriate, 2016-08-08), the semicolon list
separator after the first list element was missing in the generated
cache.
2016-10-10 14:40:12 -04:00
Brad King 271170144a Merge branch 'vs15-separate-flag-table' into release 2016-10-10 11:46:20 -04:00
Brad King b1d67ae8a5 VS: Split flag table between v140 and v141 toolsets
In commit v3.7.0-rc1~156^2~1 (VS: Update v140 flag tables from VS 15
MSBuild files, 2016-09-02) we extended the v140 flag table with values
from the v141 toolset that comes with VS 15.  However, the v140 toolset
that comes with VS 14 does not have all of these entries and so the
flags just need to be passed without special mapping.  In order to
support both toolsets, split our CL flag table into separate copies for
each version and switch off the toolset name.

Closes: #16352
2016-10-10 11:43:39 -04:00
Brad King 9f240cff8a Merge branch 'update-kwsys' into release 2016-10-08 05:28:15 -04:00
Brad King c22f3cf715 Merge branch 'upstream-KWSys' into update-kwsys
* upstream-KWSys:
  KWSys 2016-10-07 (dfe9b386)
2016-10-08 05:25:35 -04:00
KWSys Upstream bf28a3873d KWSys 2016-10-07 (dfe9b386)
Code extracted from:

    http://public.kitware.com/KWSys.git

at commit dfe9b38635d80cb5253187c1ddf90923e1b9effd (master).

Upstream Shortlog
-----------------

Brad King (1):
      dfe9b386 SystemTools: Re-implement Strucmp
2016-10-08 05:25:34 -04:00
Brad King 5d8da06d60 Merge branch 'android-export-has-cpp' into release 2016-10-07 15:03:15 -04:00
Brad King dda6775c94 Android: Record use of C++ by static libs in exported Android.mk files
When a `PREBUILT_STATIC_LIBRARY` uses C++ in its sources then the `.a`
file will have a link-time dependency on the C++ runtime libraries.
Android NDK r14 will add a way to give this information to the NDK build
system by adding a `LOCAL_HAS_CPP` setting to the `Android.mk` file.
Add this for exported static libraries that use C++.
2016-10-07 15:02:42 -04:00
Brad King a033f86712 Merge branch 'FindProtobuf-fix-subdirs' into release 2016-10-07 10:16:33 -04:00
Brad King 111d90465f Merge branch 'android-cxxabi' into release 2016-10-07 10:16:28 -04:00
Brad King 8cdac469d1 Android: Fix support for cxxabi.h with libc++
Additional include directories are needed for this on some STL types.

Closes: #16350
2016-10-07 09:53:51 -04:00
Martin Joly 2b9dad694a FindProtobuf: Fix protobuf_generate_*() to handle subdirs
The change in commit v3.7.0-rc1~513^2 (FindProtobuf: fix
protobuf_generate_*() to handle proto files in subdirs, 2016-06-09)
incorrectly adds subdirectories to the path of the generated files when
`*.proto` files are passed to `protobuf_generate_*` with subdirectories.
This behavior is not correct when `PROTOBUF_GENERATE_CPP_APPEND_PATH` is
True (default behavior) as `protoc` will generate output file in the
current build directory.
2016-10-07 09:50:52 -04:00
Brad King d231f3b738 Merge branch 'check-libuv-minimum-version' into release 2016-10-07 09:08:27 -04:00
Chuck Atkins 20e8dcf162 Set minimum version for LibUV to 1.0.0
Older versions of libuv did not have the uv_loop_close API.  It first
showed up in unstable releases ~ v0.11.20 but was not available in
a stable release until v1.0
2016-10-07 09:07:32 -04:00
Chuck Atkins 845b98f45b Use find_package for JsonCpp and LibUV instead of include 2016-10-07 09:07:32 -04:00
Brad King fbc1a30b87 Merge branch 'codelite-global-setting' into release 2016-10-07 09:01:30 -04:00
Stephen Kelly 80574a38e6 Codelite: Consume the CMAKE_CODELITE_USE_TARGETS setting globally 2016-10-07 09:01:07 -04:00
Brad King ffff5c17a5 Merge branch 'android-ndk-r13' into release 2016-10-06 13:28:14 -04:00
Brad King 0c3a04777c Android: Update libc++ include directories for NDK r13
The Android NDK r13 moved the libc++ include directories.

Closes: #16346
2016-10-06 13:26:40 -04:00
Brad King ebef3632c7 Android: Suppress -Wattributes warnings in test case builds
We use `-Werror` in the Android test builds to make sure there are
no warnings that we care about (e.g. unused flags).  However, the
NDK r13 tools produce a warning about their own builtins:

```
<built-in>: In function 'float abs(float)':
<built-in>: warning: conflicts with previous declaration here [-Wattributes]
```

Suppress this warning so that we can continue using `-Werror` but
tolerate these warnings.
2016-10-06 13:26:05 -04:00
Stephen Kelly f59e877929 cmGlobalGenerator: Add API to get settings from top-level cmMakefile
At generate-time, definitions are sometimes read from a nearby cmMakefile,
making the value directory-specific because they are read once per
directory.  Often however, the intention is more
often to create a 'global' setting, such that the user writes for
example:

 set(CMAKE_IMPORT_LIBRARY_SUFFIX something)

once at the top level of their project.

Many of these are also set by internal platform files, such as
CMAKE_EXTRA_LINK_EXTENSIONS.

The set() definitions are not really suitable for 'global' settings
because they can be different for each directory, and code consuming the
settings must assume they are different for each directory, and read it
freshly each time with new allocations.

CMake has other variable types which are global in scope, such as global
properties, and cache variables.  These are less convenient to populate
for users, so establish a convention and API using the value as it is at
the end of the top-level CMakeLists file.
2016-10-06 18:41:06 +02:00