[Cmake-commits] CMake branch, master, updated. v3.9.1-605-gf8e9a84

2017-08-27 Thread Kitware Robot
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "CMake".

The branch, master has been updated
   via  f8e9a848fb341147b643922864eb5d513a0239a4 (commit)
  from  e710d6953dae27f73452095df6d7b2d7ec698fd1 (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -
https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=f8e9a848fb341147b643922864eb5d513a0239a4
commit f8e9a848fb341147b643922864eb5d513a0239a4
Author: Kitware Robot <kwro...@kitware.com>
AuthorDate: Mon Aug 28 00:01:08 2017 -0400
Commit: Kitware Robot <kwro...@kitware.com>
CommitDate: Mon Aug 28 00:01:08 2017 -0400

CMake Nightly Date Stamp

diff --git a/Source/CMakeVersion.cmake b/Source/CMakeVersion.cmake
index e0e312f..990efd6 100644
--- a/Source/CMakeVersion.cmake
+++ b/Source/CMakeVersion.cmake
@@ -1,5 +1,5 @@
 # CMake version number components.
 set(CMake_VERSION_MAJOR 3)
 set(CMake_VERSION_MINOR 9)
-set(CMake_VERSION_PATCH 20170827)
+set(CMake_VERSION_PATCH 20170828)
 #set(CMake_VERSION_RC 1)

---

Summary of changes:
 Source/CMakeVersion.cmake |2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)


hooks/post-receive
-- 
CMake
___
Cmake-commits mailing list
Cmake-commits@cmake.org
http://public.kitware.com/mailman/listinfo/cmake-commits


Re: [CMake] CMake + Gradle for Android

2017-08-27 Thread Robert Dailey
I could probably do you one better, and just give you a stripped-down
version of our repository. Basically, I'd remove all our C++ and Java
source code but leave the CMake scripts and such intact somehow. It
would take me some time to do this, though. Would this be helpful for
you?

In the meantime, when I get into the office tomorrow I'll answer your
questions directly with as much detail as possible. Would you like me
to contact you personally from this point on or should we keep the
conversation on the CMake list?

On Fri, Aug 25, 2017 at 7:20 PM, Jom O'Fisher  wrote:
> Hi again Robert,
> Would you be able to give me an estimate of how many APK projects you have,
> roughly which open source projects you reference via CMake
> add_subdirectories, and whether you have any variants beyond the default
> Debug and Release? If possible I'd like to approximate your project layout
> so we can study it in more closely with an eye toward making the experience
> better for this kind of layout.
>
>
>
>
>
> On Fri, Aug 25, 2017 at 2:46 PM, Jom O'Fisher  wrote:
>>
>> Targets are specified per-Variation so they need to go under the
>> variation-specific section. Probably something like this:
>>
>> defaultConfig {
>>   externalNativeBuild {
>> cmake {
>>   targets "library1", "library2"
>> }
>>   }
>> }
>>
>> That should work for you. Let me know.
>>
>> On Fri, Aug 25, 2017 at 2:42 PM, Robert Dailey 
>> wrote:
>>>
>>> By the way when I try to use "targets", I get a failure. Basically
>>> Gradle doesn't recognize that keyword. I tried singular form as well
>>> ("target"), no luck.
>>>
>>> I'm running canary build of everything possible. What am I missing?
>>>
>>> On Wed, Aug 23, 2017 at 4:20 PM, Jom O'Fisher 
>>> wrote:
>>> > By gradle module projects, I just mean the leaf build.gradle files as
>>> > opposed to the root build.gradle. By configurations, I mean Build Types
>>> > (debug vs release) and Product Flavors (demo vs free vs paid).
>>> > Hereafter I
>>> > will use the term "variant" rather than "configuration" to be precise.
>>> > See
>>> > this write-up on build variants:
>>> >
>>> >
>>> > https://developer.android.com/studio/build/build-variants.html#build-types
>>> >
>>> > This build matrix is constructed at the leaf build.gradle level. Native
>>> > build in gradle allows you to set C/C++ flags individually for each
>>> > variant
>>> > so that you can define compiler flags (for example, -DFREE_VERSION).
>>> >
>>> > One thing to notice at this stage is that the same CMake target may be
>>> > built
>>> > with different compiler flags across different projects, build types,
>>> > and
>>> > product flavors. So in the general case, build outputs won't be the
>>> > same.
>>> >
>>> > You asked which targets build when specifying path. By default, we
>>> > build all
>>> > targets that produce an .so. You can override this by setting
>>> > externalNativeBuild.cmake.targets. For example,
>>> >
>>> > paid {
>>> >   ...
>>> >   externalNativeBuild {
>>> > cmake {
>>> >   ...
>>> >   targets "native-lib-paid"
>>> > }
>>> >   }
>>> > }
>>> >
>>> > As for your last question, the model we generally see used is that the
>>> > main
>>> > CMakeLists.txt is next to the leaf build.gradle such that this
>>> > CMakeLists.txt doesn't couple with peer APK project CMakeLists.txt
>>> > (though
>>> > they may share common dependencies and settings). Otherwise, multiple
>>> > APK
>>> > projects would perform pretty much similar to yours--they would build
>>> > targets per-leaf project and not share build outputs. As far as I can
>>> > see
>>> > your organization is just as valid so long as you only build the
>>> > targets you
>>> > need.
>>> >
>>> > Regarding native dependencies between java projects. We generally try
>>> > to
>>> > avoid making the CMake build depend on the gradle build (you should be
>>> > able
>>> > to replicate the CMake build from the command-line if you set the right
>>> > flags). At the moment I don't see a way we could make things better
>>> > without
>>> > violating that tenet but that could be lack of imagination on my part.
>>> >
>>> > We'll definitely be discussing this use case at our next C++ meeting
>>> > and
>>> > I'll also be checking for myself whether ccache will work in this CMake
>>> > scenario. If ccache does work it seems like the natural level at which
>>> > to
>>> > fold identical builds.
>>> >
>>> >
>>> >
>>> > On Wed, Aug 23, 2017 at 1:03 PM, Robert Dailey
>>> > 
>>> > wrote:
>>> >>
>>> >> I'm not sure what you mean by "gradle module projects", but maybe
>>> >> having some examples of what you mean by "configurations, C++ flags,
>>> >> etc" might make 

[CMake] Debugging find_package() search behavior?

2017-08-27 Thread Robert Dailey
So I'm trying to get CMake to find a package, and it isn't finding it.
I am setting CMAKE_PREFIX_PATH to try to get it to find it. Is there a
way I can view the search paths & prefixes that CMake is using with
each find_package() call? I tried enabling debug and trace output, but
neither of these seem to show any detail of what happens internally
with find_package() searches.

Thanks in advance.
-- 

Powered by www.kitware.com

Please keep messages on-topic and check the CMake FAQ at: 
http://www.cmake.org/Wiki/CMake_FAQ

Kitware offers various services to support the CMake community. For more 
information on each offering, please visit:

CMake Support: http://cmake.org/cmake/help/support.html
CMake Consulting: http://cmake.org/cmake/help/consulting.html
CMake Training Courses: http://cmake.org/cmake/help/training.html

Visit other Kitware open-source projects at 
http://www.kitware.com/opensource/opensource.html

Follow this link to subscribe/unsubscribe:
http://public.kitware.com/mailman/listinfo/cmake


[cmake-developers] Mini Make

2017-08-27 Thread Taylor Holberton
Hello!

I just finished the first release of a cross platform, minimalistic Make
implementation.

It was made specifically to run CMake generated Makefiles on Linux and
Windows (haven't tested on macOS yet).

It's on GitHub  and it's called Mini
Make.

Sorry for the self promotion!

If there's anyway you think it can contribute to the CMake project, feel
free to email me.
-- 

Powered by www.kitware.com

Please keep messages on-topic and check the CMake FAQ at: 
http://www.cmake.org/Wiki/CMake_FAQ

Kitware offers various services to support the CMake community. For more 
information on each offering, please visit:

CMake Support: http://cmake.org/cmake/help/support.html
CMake Consulting: http://cmake.org/cmake/help/consulting.html
CMake Training Courses: http://cmake.org/cmake/help/training.html

Visit other Kitware open-source projects at 
http://www.kitware.com/opensource/opensource.html

Follow this link to subscribe/unsubscribe:
http://public.kitware.com/mailman/listinfo/cmake-developers

[Cmake-commits] CMake branch, master, updated. v3.9.1-604-ge710d69

2017-08-27 Thread Kitware Robot
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "CMake".

The branch, master has been updated
   via  e710d6953dae27f73452095df6d7b2d7ec698fd1 (commit)
   via  27d87fbd04839e868ae7ef3c27ddfcb9379e80a0 (commit)
   via  7f29bbe6f25211165fc188d3a823ecf3bc831f8d (commit)
   via  4614a3b287456fad12bcb91ad2936214da3237bf (commit)
  from  19f2a706a3d0ca72f0c6151bbfcd3b944c14e72b (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -
https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=e710d6953dae27f73452095df6d7b2d7ec698fd1
commit e710d6953dae27f73452095df6d7b2d7ec698fd1
Merge: 19f2a70 27d87fb
Author: Daniel Pfeifer 
AuthorDate: Sun Aug 27 08:02:17 2017 +
Commit: Kitware Robot 
CommitDate: Sun Aug 27 04:02:24 2017 -0400

Merge topic 'server-cxx11'

27d87fbd CTestCustom: Suppress exception loosening warning
7f29bbe6 server: always enable server
4614a3b2 server: backport to C++11

Acked-by: Kitware Robot 
Merge-request: !1149


https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=27d87fbd04839e868ae7ef3c27ddfcb9379e80a0
commit 27d87fbd04839e868ae7ef3c27ddfcb9379e80a0
Author: Daniel Pfeifer 
AuthorDate: Sat Aug 26 20:38:07 2017 +0200
Commit: Daniel Pfeifer 
CommitDate: Sat Aug 26 20:38:07 2017 +0200

CTestCustom: Suppress exception loosening warning

diff --git a/CTestCustom.cmake.in b/CTestCustom.cmake.in
index 6a37275..e005643 100644
--- a/CTestCustom.cmake.in
+++ b/CTestCustom.cmake.in
@@ -44,6 +44,7 @@ list(APPEND CTEST_CUSTOM_WARNING_EXCEPTION
   "Warning: LINN32: Last line.*is less.*"
   "Warning: Olimit was exceeded on function.*"
   "Warning: To override Olimit for all functions in file.*"
+  "Warning: Function .* can throw only the exceptions thrown by the function 
.* it overrides\\."
   "WarningMessagesDialog\\.cxx"
   "warning.*directory name.*CMake-Xcode.*/bin/.*does not exist.*"
   "stl_deque.h:1051"

https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=7f29bbe6f25211165fc188d3a823ecf3bc831f8d
commit 7f29bbe6f25211165fc188d3a823ecf3bc831f8d
Author: Daniel Pfeifer 
AuthorDate: Fri Aug 25 22:07:43 2017 +0200
Commit: Daniel Pfeifer 
CommitDate: Sat Aug 26 07:46:58 2017 +0200

server: always enable server

diff --git a/CMakeLists.txt b/CMakeLists.txt
index 7b0a1d1..c9e632e 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -718,24 +718,6 @@ endif()
 # setup some Testing support (a macro defined in this file)
 CMAKE_SETUP_TESTING()
 
-# Check whether to build server mode or not:
-if(NOT CMake_TEST_EXTERNAL_CMAKE)
-  if(NOT DEFINED CMake_ENABLE_SERVER_MODE)
-list(FIND CMAKE_CXX_COMPILE_FEATURES cxx_auto_type 
CMake_HAVE_CXX_AUTO_TYPE)
-list(FIND CMAKE_CXX_COMPILE_FEATURES cxx_range_for 
CMake_HAVE_CXX_RANGE_FOR)
-if(CMake_HAVE_CXX_AUTO_TYPE AND CMake_HAVE_CXX_RANGE_FOR)
-  set(CMake_ENABLE_SERVER_MODE 1)
-else()
-  set(CMake_ENABLE_SERVER_MODE 0)
-endif()
-  endif()
-else()
-  set(CMake_ENABLE_SERVER_MODE 0)
-endif()
-if(NOT DEFINED CMake_TEST_SERVER_MODE)
-  set(CMake_TEST_SERVER_MODE ${CMake_ENABLE_SERVER_MODE})
-endif()
-
 if(NOT CMake_TEST_EXTERNAL_CMAKE)
   if(NOT CMake_VERSION_IS_RELEASE)
 if(CMAKE_C_COMPILER_ID STREQUAL "GNU" AND
diff --git a/Source/CMakeLists.txt b/Source/CMakeLists.txt
index d35b7fb..bcc3437 100644
--- a/Source/CMakeLists.txt
+++ b/Source/CMakeLists.txt
@@ -1010,20 +1010,16 @@ add_executable(cmake cmakemain.cxx cmcmd.cxx cmcmd.h 
${MANIFEST_FILE})
 list(APPEND _tools cmake)
 target_link_libraries(cmake CMakeLib)
 
-if(CMake_ENABLE_SERVER_MODE)
-  add_library(CMakeServerLib
-cmConnection.h cmConnection.cxx
-cmFileMonitor.cxx cmFileMonitor.h
-cmPipeConnection.cxx cmPipeConnection.h
-cmServer.cxx cmServer.h
-cmServerConnection.cxx cmServerConnection.h
-cmServerProtocol.cxx cmServerProtocol.h
-)
-  target_link_libraries(CMakeServerLib CMakeLib)
-  set_property(SOURCE cmcmd.cxx APPEND PROPERTY COMPILE_DEFINITIONS 
HAVE_SERVER_MODE=1)
-
-  target_link_libraries(cmake CMakeServerLib)
-endif()
+add_library(CMakeServerLib
+  cmConnection.h cmConnection.cxx
+  cmFileMonitor.cxx cmFileMonitor.h
+  cmPipeConnection.cxx cmPipeConnection.h
+  cmServer.cxx cmServer.h
+  cmServerConnection.cxx cmServerConnection.h
+  cmServerProtocol.cxx cmServerProtocol.h
+  )
+target_link_libraries(CMakeServerLib CMakeLib)
+target_link_libraries(cmake CMakeServerLib)
 
 # Build CTest executable
 add_executable(ctest ctest.cxx ${MANIFEST_FILE})
diff --git a/Source/cmcmd.cxx b/Source/cmcmd.cxx
index 6b9a4a4..830a05c 100644

[Cmake-commits] CMake branch, master, updated. v3.9.1-600-g19f2a70

2017-08-27 Thread Kitware Robot
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "CMake".

The branch, master has been updated
   via  19f2a706a3d0ca72f0c6151bbfcd3b944c14e72b (commit)
   via  b044dedecd372bf87c892d81b7e5c1e9aad9c9ed (commit)
   via  a51d04d4bfd0aee5a72983e1abed4c42ef5b19af (commit)
   via  687aef913c471bcbd105f49bec8bcdf976ce7eb5 (commit)
   via  367a348a0056345deaeb44f5620830c51382ea4e (commit)
   via  ca2233e31fec18727ac1f742bef1108016745039 (commit)
  from  6dfb8dadc332bee652e551fafeefa8474923a3cc (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -
https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=19f2a706a3d0ca72f0c6151bbfcd3b944c14e72b
commit 19f2a706a3d0ca72f0c6151bbfcd3b944c14e72b
Merge: b044ded 687aef9
Author: Daniel Pfeifer 
AuthorDate: Sun Aug 27 07:51:54 2017 +
Commit: Kitware Robot 
CommitDate: Sun Aug 27 03:52:47 2017 -0400

Merge topic 'cmSourceFile-Nocopy'

687aef91 cmSourceFile: Avoid unnecessary vector copy

Acked-by: Kitware Robot 
Merge-request: !1190


https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=b044dedecd372bf87c892d81b7e5c1e9aad9c9ed
commit b044dedecd372bf87c892d81b7e5c1e9aad9c9ed
Merge: a51d04d ca2233e
Author: Daniel Pfeifer 
AuthorDate: Sun Aug 27 07:51:07 2017 +
Commit: Kitware Robot 
CommitDate: Sun Aug 27 03:52:05 2017 -0400

Merge topic 'iwyu-keep-cmConfigure'

ca2233e3 IWYU: Mark cmConfigure.h with pragma: keep

Acked-by: Kitware Robot 
Merge-request: !1187


https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=a51d04d4bfd0aee5a72983e1abed4c42ef5b19af
commit a51d04d4bfd0aee5a72983e1abed4c42ef5b19af
Merge: 6dfb8da 367a348
Author: Daniel Pfeifer 
AuthorDate: Sun Aug 27 07:50:43 2017 +
Commit: Kitware Robot 
CommitDate: Sun Aug 27 03:51:08 2017 -0400

Merge topic 'cmConfigure-fix'

367a348a cmConfigure: Add missing #

Acked-by: Kitware Robot 
Merge-request: !1189


https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=687aef913c471bcbd105f49bec8bcdf976ce7eb5
commit 687aef913c471bcbd105f49bec8bcdf976ce7eb5
Author: Sebastian Holtermann 
AuthorDate: Sat Aug 26 14:06:09 2017 +0200
Commit: Sebastian Holtermann 
CommitDate: Sat Aug 26 14:45:46 2017 +0200

cmSourceFile: Avoid unnecessary vector copy

diff --git a/Source/cmSourceFile.cxx b/Source/cmSourceFile.cxx
index 912f773..6d2b98d 100644
--- a/Source/cmSourceFile.cxx
+++ b/Source/cmSourceFile.cxx
@@ -136,10 +136,10 @@ bool cmSourceFile::FindFullPath(std::string* error)
   } else {
 tryDirs[0] = "";
   }
-  const std::vector& srcExts =
-mf->GetCMakeInstance()->GetSourceExtensions();
-  std::vector hdrExts =
-mf->GetCMakeInstance()->GetHeaderExtensions();
+
+  cmake const* const cmakeInst = mf->GetCMakeInstance();
+  std::vector const& srcExts = cmakeInst->GetSourceExtensions();
+  std::vector const& hdrExts = cmakeInst->GetHeaderExtensions();
   for (const char* const* di = tryDirs; *di; ++di) {
 std::string tryPath = this->Location.GetDirectory();
 if (!tryPath.empty()) {

https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=367a348a0056345deaeb44f5620830c51382ea4e
commit 367a348a0056345deaeb44f5620830c51382ea4e
Author: Daniel Pfeifer 
AuthorDate: Sat Aug 26 08:30:49 2017 +0200
Commit: Daniel Pfeifer 
CommitDate: Sat Aug 26 08:30:49 2017 +0200

cmConfigure: Add missing #

diff --git a/Source/cmConfigure.cmake.h.in b/Source/cmConfigure.cmake.h.in
index 00b63a5..e91471c 100644
--- a/Source/cmConfigure.cmake.h.in
+++ b/Source/cmConfigure.cmake.h.in
@@ -40,7 +40,7 @@
 #define CM_FALLTHROUGH [[fallthrough]]
 #elif defined(CMake_HAVE_CXX_GNU_FALLTHROUGH)
 #define CM_FALLTHROUGH [[gnu::fallthrough]]
-elif defined(CMake_HAVE_CXX_ATTRIBUTE_FALLTHROUGH)
+#elif defined(CMake_HAVE_CXX_ATTRIBUTE_FALLTHROUGH)
 #define CM_FALLTHROUGH __attribute__((fallthrough))
 #else
 #define CM_FALLTHROUGH

https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=ca2233e31fec18727ac1f742bef1108016745039
commit ca2233e31fec18727ac1f742bef1108016745039
Author: Daniel Pfeifer 
AuthorDate: Fri Aug 25 20:39:02 2017 +0200
Commit: Daniel Pfeifer 
CommitDate: Sat Aug 26 07:41:04 2017 +0200

IWYU: Mark cmConfigure.h with pragma: keep

Also remove `#include "cmConfigure.h"` from most source files.

diff --git a/Source/CPack/WiX/cmWIXRichTextFormatWriter.h