[Cmake-commits] CMake branch, master, updated. v3.5.2-764-g0746a4c

2016-05-25 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  0746a4c62cb0103ce56ed3729e85acd2d5f3037a (commit)
  from  6052e4b3bfe62a8d29ca679affb101c7aec0d219 (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=0746a4c62cb0103ce56ed3729e85acd2d5f3037a
commit 0746a4c62cb0103ce56ed3729e85acd2d5f3037a
Author: Kitware Robot <kwro...@kitware.com>
AuthorDate: Thu May 26 00:03:52 2016 -0400
Commit: Kitware Robot <kwro...@kitware.com>
CommitDate: Thu May 26 00:03:52 2016 -0400

CMake Nightly Date Stamp

diff --git a/Source/CMakeVersion.cmake b/Source/CMakeVersion.cmake
index 447d29f..86b016b 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 5)
-set(CMake_VERSION_PATCH 20160525)
+set(CMake_VERSION_PATCH 20160526)
 #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


[cmake-developers] [CMake 0016110]: LINK_LIBRARIES contains both libraries and flags, separate variables required

2016-05-25 Thread Mantis Bug Tracker

The following issue has been SUBMITTED. 
== 
https://cmake.org/Bug/view.php?id=16110 
== 
Reported By:Roman Popov
Assigned To:
== 
Project:CMake
Issue ID:   16110
Category:   CMake
Reproducibility:always
Severity:   feature
Priority:   normal
Status: new
== 
Date Submitted: 2016-05-25 18:46 EDT
Last Modified:  2016-05-25 18:46 EDT
== 
Summary:LINK_LIBRARIES contains both libraries and flags, 
separate variables required
Description: 
For example, if I write my own link rule:
set(CMAKE_CXX_LINK_EXECUTABLE "echo \"  \" ")  LINK_LIBRARIES
will evaluate to : 
- flags (like: -rdynamic -Wl,-rpath,rpath1:rpath2 ...)
- static libraries (like: lib1.a -lthreads ...) 
- dynamic libraries (like: libdlib.so )

To support new gcc-compatible linking tools (for example  Synopsys VCS or
Cadence NCSIM ) flags and libs need to be separated: for example into some new
variables: LINK_LIBRARIES_FLAGS , LINK_LIBRARIES_STATIC, LINK_LIBRARIES_SHARED.

In that case user can simply define new linking rules, for example:
(CMAKE_CXX_LINK_EXECUTABLE "vcs -sysc -LDFLAGS \"  \"
   ")
== 

Issue History 
Date ModifiedUsername   FieldChange   
== 
2016-05-25 18:46 Roman PopovNew Issue
==

-- 

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-developers] [CMake 0016109]: Downloading of a file may hang indefinitely with ExternalProject

2016-05-25 Thread Mantis Bug Tracker

The following issue has been SUBMITTED. 
== 
https://cmake.org/Bug/view.php?id=16109 
== 
Reported By:Ilya
Assigned To:
== 
Project:CMake
Issue ID:   16109
Category:   CMake
Reproducibility:sometimes
Severity:   tweak
Priority:   normal
Status: new
== 
Date Submitted: 2016-05-25 16:08 EDT
Last Modified:  2016-05-25 16:08 EDT
== 
Summary:Downloading of a file may hang indefinitely with
ExternalProject
Description: 
The `file(DOWNLOAD` command used by ExternalProject is not limited by any
timeouts.

It should, instead, automatically retry (and possibly continue) to download the
file.
== 

Issue History 
Date ModifiedUsername   FieldChange   
== 
2016-05-25 16:08 Ilya   New Issue
==

-- 

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


Re: [CMake] linking OBJECT libraries : Argument list too long

2016-05-25 Thread Magnus Therning

Biddiscombe, John A.  writes:

> When building OpenBLAS on OSX, the link line generated contains around
> 350K of text, and the max supported arg length is getconf ARG_MAX -
> returns 262144.
> This causes the link phase to abort with Error running link command:
> Argument list too long
>
> The reason for the problem is that many libraries of Type OBJECT are
> built and produce huge numbers of object files are then added to one
> very large list which is then passed to the linker.
>
> I implemented a simple(ish) fix, that doesn't quite work - for each
> subdirectory that generates object files, I set the
> CMAKE_FILES_DIRECTORY and specify the binary directory where the build
> should go using a single character counter 0,1,2,3,4 which is much
> shorter than the target name and it reduces the final arg size down
> almost enough
>
> set(COUNTER_ 0)
> foreach (SUBDIR ${SUBDIRS})
>   set(CMAKE_FILES_DIRECTORY "/${COUNTER_}")
>   add_subdirectory(${SUBDIR} ${CMAKE_BINARY_DIR}/${COUNTER_})
> .
>   MATH(EXPR COUNTER_ "${COUNTER_}+1")
> endforeach ()
>
> example : make driver_level2 target
> [  0%] Building C object 
> OpenBLAS/driver/level2/CMakeFiles/driver_level2.dir/CMakeFiles/ssbmv_U.c.o
> becomes
> [  0%] Building C object 1/CMakeFiles/driver_level2.dir/1/ssbmv_U.c.o
>
> and the link line is correspondingly shorter as the driver_level2 has
> been replaced in 2 places. The problem is that there is still an extra
> "CMakeFiles/driver_level2.dir" in the path to the object file that I
> would like to shorten/remove.
>
> How can I do that?
>
> NB. I am aware that I can turn the OBJECT libraries into normal
> libraries and link them conventionally, but I'd like to make this path
> shortening method work.

Wouldn't a better solution be to use an options file, something like
ld's @file[1]?

/M

[1]: http://linux.die.net/man/1/ld

-- 
Magnus Therning  OpenPGP: 0x927912051716CE39
email: mag...@therning.org   jabber: mag...@therning.org
twitter: magthe   http://therning.org/magnus

For a successful technology, reality must take precedence over public
relations, for nature cannot be fooled.
 — R.P. Feynman


signature.asc
Description: PGP signature
-- 

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

Re: [cmake-developers] Problem with find_path and Frameworks

2016-05-25 Thread Eric Wing
On 5/25/16, Harry Mallon  wrote:
> I have quite a specific problem with find_path where
> "find_path(IOKIT_INCLUDE_DIR "IOKit/pci/IOPCIDevice.h")" returns
> "/System/Library/Frameworks/Kernel.framework/Headers/IOKit/pci" rather than
> "/System/Library/Frameworks/Kernel.framework/Headers/".
>
> It is reproducible on OSX with the following CMakeLists.txt:
>
> cmake_minimum_required(VERSION 3.0)
> find_path(IOKIT_INCLUDE_DIR "IOKit/pci/IOPCIDevice.h")
> message("Path returned: ${IOKIT_INCLUDE_DIR}")
>
> Here is a patch which seems to fix it for me:
>

This is a pretty atypical situation. I’m actually not sure what the
behavior should be. But we need to be careful to not break the
existing cases. I’m a little worried that there may be things out
there relying on the existing behavior. I’m also not convinced this
actually needs a patch.


The framework header path system was hammered out over a long period
of time. There are two common use cases that it was designed to
handle:

case 1: #import 
find_path(COCOA_INCLUDE_DIR “Cocoa/Cocoa.h”)
# Returns something like /System/Library/Frameworks/Cocoa.framework


case 2: #include “al.h”
find_path(OPENAL_INCLUDE_DIR “al.h”)
# Returns something like /System/Library/Frameworks/OpenAL.framework/Headers


The reason for this behavior is that unlike other platforms,
frameworks are not a direct mapping to file system mapping. When
dealing with official Apple frameworks, you are expected to use case
1. But  the second form is an important concession for cross-platform
libraries. The problem is that many libraries, especially 3rd party
libraries, do not end up in subdirectories with the same names on all
platforms.

For OpenGL, most Unix’s do , but Apple does .
For OpenAL, it is crazier because it depends on which implementation
you use. Apple does , OpenAL Soft does , but
others have presumes no subdirectory at all.
And a lot of third party libraries don’t have any official
conventions, so distributions do everything differently. So for
cross-platform, you are encouraged to do “Foo.h” omitting a path and
letting the build system deal with it (since CMake can do a better job
here than a massive, hand-coded mess of #ifdefs in your files.


So your case seems very atypical because you are using something
inside Kernel.framework and the header you want is not in
IOKit.framework. If it was a more typical scenario like
IOKit.framework,

I would kind of expect you to find a file in IOKit at the top level
instead to represent all your IOKit dealings, e.g.

find_path(IOKIT_INCLUDE_DIR “IOKit/IOKitLib.h”)

Then in your code you would do:
#import , and what you get back from CMake
(/System/Library/Frameworks/IOKit.framework) would be correct.

But since pci doesn’t actually seem to be directly in IOKit, but
instead the Kernel.framework subdirectory mess, I’m not sure what the
appropriate thing is. The normal native Xcode header path search
mechanism doesn’t seem to support this case and I found an old mailing
list thread suggesting that this is Apple’s way of telling you to
keep-out.


I would actually be inclined to suggest a much more generic find for
Kernel.framework and build your paths manually from there.


So either something simple like:
find_path(KERNEL_INCLUDE_DIR IOKit)
# return /System/Library/Frameworks/Kernel.framework/Headers


Or something a little more defensive to avoid possible name
collisions, but requires manual construction:
find_path(KERNEL_INCLUDE_DIR Kernel/IOKit)
# return /System/Library/Frameworks/Kernel.framework
set(KERNEL_IOKIT_INCLUDE_DIR “${KERNEL_INCLUDE_DIR}/Headers”)


-Eric
-- 

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

Re: [cmake-developers] CMake 3.5.2 conflates OSX SDK version with target deployment

2016-05-25 Thread clinton


- On May 25, 2016, at 12:38 PM, Brad King brad.k...@kitware.com wrote:

> On 05/25/2016 02:31 PM, Sean McBride wrote:
>> CMake should probably default to the newest SDK (which is what Xcode does).
>> I don't see a reason to default to an SDK "matching" the deployment target,
>> in fact it's problematic these days since they no longer provider older SDKs.
>> 
>> Of course, finding the "newest" SDK will be a bit fragile, since they get
>> moved/renamed all the time, but I guess that's something CMake always has to
>> deal with anyway.
> 
> This is all worked out in Modules/Platform/Darwin-Initialize.cmake:
> 
>  
> https://cmake.org/gitweb?p=cmake.git;a=blob;f=Modules/Platform/Darwin-Initialize.cmake;hb=v3.5.2#l38
> 
> The logic there has evolved over the years and is pretty solid now.
> It has good default behavior, and anyone that really needs a specific
> combination can specify it themselves explicitly.
> 
> The only question in this thread is whether the warning about the SDK
> and deployment target version not matching exactly is ever useful:
> 
> https://cmake.org/gitweb?p=cmake.git;a=blob;f=Modules/Platform/Darwin-Initialize.cmake;hb=v3.5.2#l97
> 
> Note that this is separate from the version compatibility check here:
> 
> https://cmake.org/gitweb?p=cmake.git;a=blob;f=Modules/Platform/Darwin.cmake;hb=v3.5.2#l67
> 
> which is an error.
> 
> -Brad

I don't think we need the warning.
A different version for deployment target and SDK is common.

Here
https://cmake.org/gitweb?p=cmake.git;a=blob;f=Modules/Platform/Darwin-Initialize.cmake;hb=v3.5.2#l81
the found SDK is equal or newer to the deployment target, which is good.

Clint
-- 

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] Full source path in generated ninja build file?

2016-05-25 Thread Chaoren Lin via CMake
Hi, currently if the build directory is under the project's root, and the
generator is ninja, the generated build files will use relative paths from
the build directory for the source files.

E.g., if we have a project and its build directory structured like this:

project/
CMakeLists.txt
src/
foo.cpp
build/
CMakeCache.txt
CMakeFiles/...
build.ninja

build.ninja will contain something like this:

build CMakeFiles/foo.dir/src/foo.cpp.o: CXX_COMPILER_foo ../src/foo.cpp

Now, when you build, and get a compile error, the reported path would be
relative to the build directory. This is a somewhat problematic if the
build is being run through an IDE that has no concept of the build
directory (e.g., it's only supplied with a build command, no concept of
what's in the command), since the IDE then can't do anything with the
relative path that comes out of the compiler error. The IDE won't be able
to open the correct source file when receiving the error.

Currently source files in the ninja generator are converted to "NinjaPath"
which are just full paths converted to HOME_OUTPUT. Is there a reason we
can't just always use full paths for the source files?

Thanks,
Chaoren
-- 

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

Re: [cmake-developers] CMake 3.5.2 conflates OSX SDK version with target deployment

2016-05-25 Thread Brad King
On 05/25/2016 02:31 PM, Sean McBride wrote:
> CMake should probably default to the newest SDK (which is what Xcode does).
> I don't see a reason to default to an SDK "matching" the deployment target,
> in fact it's problematic these days since they no longer provider older SDKs.
> 
> Of course, finding the "newest" SDK will be a bit fragile, since they get
> moved/renamed all the time, but I guess that's something CMake always has to
> deal with anyway.

This is all worked out in Modules/Platform/Darwin-Initialize.cmake:

  
https://cmake.org/gitweb?p=cmake.git;a=blob;f=Modules/Platform/Darwin-Initialize.cmake;hb=v3.5.2#l38

The logic there has evolved over the years and is pretty solid now.
It has good default behavior, and anyone that really needs a specific
combination can specify it themselves explicitly.

The only question in this thread is whether the warning about the SDK
and deployment target version not matching exactly is ever useful:

 
https://cmake.org/gitweb?p=cmake.git;a=blob;f=Modules/Platform/Darwin-Initialize.cmake;hb=v3.5.2#l97

Note that this is separate from the version compatibility check here:

 
https://cmake.org/gitweb?p=cmake.git;a=blob;f=Modules/Platform/Darwin.cmake;hb=v3.5.2#l67

which is an error.

-Brad

-- 

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


Re: [cmake-developers] CMake 3.5.2 conflates OSX SDK version with target deployment

2016-05-25 Thread Sean McBride
On Sat, 21 May 2016 22:50:41 -0700, James Burgess said:

>If your set CMAKE_OSX_DEPLOYMENT_TARGET in order to get find modules to
>work on Xcode6 or above you get this message:
>
>$ cmake -D CMAKE_OSX_DEPLOYMENT_TARGET=10.8 .
>  CMAKE_OSX_DEPLOYMENT_TARGET is '10.8' but the matching SDK does not exist
>  at:
>
>   "/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/
>Developer/SDKs/MacOSX10.8.sdk"
>
>  Instead using SDK:
>
>   "/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/
>Developer/SDKs/MacOSX10.10.sdk".
>Call Stack (most recent call first):
>  /Applications/CMake.app/Contents/share/cmake-3.5/Modules/
>CMakeSystemSpecificInitialize.cmake:18 (include)
>  CMakeLists.txt:25 (project)

It seems to me that if you're going to specify a deployment target explicitly 
that you should specify an SDK explicitly too.

That aside, if you don't, CMake should probably default to the newest SDK 
(which is what Xcode does).  I don't see a reason to default to an SDK 
"matching" the deployment target, in fact it's problematic these days since 
they no longer provider older SDKs.

Of course, finding the "newest" SDK will be a bit fragile, since they get 
moved/renamed all the time, but I guess that's something CMake always has to 
deal with anyway.

Cheers,

-- 

Sean McBride, B. Eng s...@rogue-research.com
Rogue Researchwww.rogue-research.com 
Mac Software Developer  Montréal, Québec, Canada


-- 

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


Re: [cmake-developers] Problem with find_path and Frameworks

2016-05-25 Thread Brad King
On 05/25/2016 01:25 PM, Harry Mallon wrote:
> I have quite a specific problem with find_path where 
> "find_path(IOKIT_INCLUDE_DIR "IOKit/pci/IOPCIDevice.h")"
> returns "/System/Library/Frameworks/Kernel.framework/Headers/IOKit/pci" 
> rather than
> "/System/Library/Frameworks/Kernel.framework/Headers/".

Thanks.  Please extend the Tests/RunCMake/find_path test to cover
this behavior.  You could add a bogus framework layout inside the
test source tree.  See Tests/RunCMake/README.rst for details of
the test infrastructure.

> +while (*fullPart++ == *relPart++)

I think the logic can be simpler.

The intended logic here is to get back up to the ".framework/Headers"
directory.  Since the glob we use always appends exactly the original
file name after this, we can just clip off the matching number of
characters from the result.  Or, just search for the last occurrence
of ".framework/Headers/" and clip off there.

Thanks,
-Brad

-- 

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-developers] Problem with find_path and Frameworks

2016-05-25 Thread Harry Mallon
I have quite a specific problem with find_path where 
"find_path(IOKIT_INCLUDE_DIR "IOKit/pci/IOPCIDevice.h")" returns 
"/System/Library/Frameworks/Kernel.framework/Headers/IOKit/pci" rather than 
"/System/Library/Frameworks/Kernel.framework/Headers/".

It is reproducible on OSX with the following CMakeLists.txt:

cmake_minimum_required(VERSION 3.0)
find_path(IOKIT_INCLUDE_DIR "IOKit/pci/IOPCIDevice.h")
message("Path returned: ${IOKIT_INCLUDE_DIR}")

Here is a patch which seems to fix it for me:


Harry Mallon
CODEX | Software Engineer
60 Poland Street | London | England | W1F 7NT
E ha...@codexdigital.com | T +44 203 7000 989


0001-Fix-a-problem-where-using-find_path-to-find-a-header.patch
Description: 0001-Fix-a-problem-where-using-find_path-to-find-a-header.patch
-- 

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] CMake+QT always failed for the first build, and succeeded for second build or later.

2016-05-25 Thread irene w
Hi,

I am compiling a simple Qt3 application on Linux using CMake. In my case, I
need to build moc_xxx files with custom options and output to a specified
directory, So, I was not using CAMKE_AUTO macros. My cmake scripts create a
"Qt_tmp" directory and output moc_xxx there.

It looked it always failed to link the moc_xxx files for the first time
build when there is no "Qt_tmp" directory, and succeeded if I ran build
again if the "Qt_tmp" directory and moc_xxx files created by the failed
build were kept without removing.  However, it'll fail if I delete
the "Qt_tmp" directory.

Even it failed at the first build, the moc_xxx files were
successfully created in the "Qt_tmp" directory.

Here is my cmake scripts and the errors I got.  Can anyone help me to
figure out the issues? Any help would be greatly appreciated.  Thanks.

CMakeLists.txt
-
cmake_minimum_required(VERSION 3.4.1)
project (GM_Application CXX)
SET (CMAKE_SYSTEM_NAME Linux)
SET (CMAKE_CXX_COMPILER ${COMPILER_PATH}${CROSS_COMPILE}g++)
set (GM_DIR ${CMAKE_CURRENT_SOURCE_DIR})
set (QT_DIR ${CMAKE_CURRENT_SOURCE_DIR}/ThirdParty/Qt/4.8.6)
LINK_DIRECTORIES (${QT_DIR}/lib)
INCLUDE_DIRECTORIES ("${QT_DIR}/include"
 "${GM_DIR}"
)
# Compiling QT moc and ui  #
set (QT_MOC_CMD ${QT_DIR}/bin/moc -I$(QT_DIR)/mkspecs/linux-g++
-I${QT_DIR}/include -I${QT_DIR}/include/QtGui)
file (MAKE_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/Qt_tmp)
set (Qt_tmp ${CMAKE_CURRENT_SOURCE_DIR}/Qt_tmp)
add_custom_target (Moc_GMWindows
   COMMAND ${QT_MOC_CMD} ${GM_DIR}/GMWindow.h -o
${Qt_tmp}/moc_GMWindow.cpp
  )

# Compiling application  #
file (GLOB GM_SOURCES ${GM_DIR}/*.h ${GM_DIR}/*.cpp)
file (GLOB Moc_SOURCES ${Qt_tmp}/*.h ${Qt_tmp}/*.cpp)
add_executable (GM ${GM_SOURCES} ${Moc_SOURCES})
target_include_directories (GM PRIVATE ${Qt_tmp})
add_dependencies (GM Moc_GMWindows)
target_link_libraries (GM QtGui)

---
Errors:

Scanning dependencies of target Moc_GMWindows
[  0%] Built target Moc_GMWindows
Scanning dependencies of target GM
[ 14%] Building CXX object GM/CMakeFiles/GM.dir/GM/GM.cpp.o
[ 42%] Building CXX object GM/CMakeFiles/GM.dir/GM/GMService.cpp.o
[ 67%] Building CXX object GM/CMakeFiles/GM.dir/GM/GMWindow.cpp.o
[ 85%] Building CXX object GM/CMakeFiles/GM.dir/GM/main.cpp.o
[100%] Linking CXX executable ../bin/GM
CMakeFiles/GM.dir/GM/GMWindow.cpp.o: In function
`GM::GMWindow::emitAppendMessage(QStrin
g)':
/GM/GMWindow.cpp:217: undefined reference to
`GM::GMWindow::appendMessage(QString)'
CMakeFiles/GM.dir/GM/GMWindow.cpp.o:(.rodata._ZTVN2GM8GMWindowE[vtable for
GM::GMWindow]
+0x8): undefined reference to `GM::GMWindow::metaObject() const'
CMakeFiles/GM.dir/GM/GMWindow.cpp.o:(.rodata._ZTVN2GM8GMWindowE[vtable for
GM::GMWindow]
+0xc): undefined reference to `GM::GMWindow::qt_metacast(char const*)'
CMakeFiles/GM.dir/GM/GMWindow.cpp.o:(.rodata._ZTVN2GM8GMWindowE[vtable for
GM::GMWindow]
+0x10): undefined reference to
`GM::GMWindow::qt_metacall(QMetaObject::Call, int, void**)'
collect2: ld returned 1 exit status
make[2]: *** [bin/GM] Error 1
make[1]: *** [GM/CMakeFiles/GM.dir/all] Error 2
make: *** [all] Error 2



Virus-free.
www.avast.com

<#DDB4FAA8-2DD7-40BB-A1B8-4E2AA1F9FDF2>
-- 

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-commits] CMake branch, next, updated. v3.5.2-1581-g7af18cb

2016-05-25 Thread Brad King
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, next has been updated
   via  7af18cb57b3d8d3366c694d57fa7f6888f45e9dc (commit)
   via  75e3e0d3dcd7d17a45e2d00148b496013423d210 (commit)
  from  dc857f961d48c6a03eb2b0cafc38b8e69629075b (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=7af18cb57b3d8d3366c694d57fa7f6888f45e9dc
commit 7af18cb57b3d8d3366c694d57fa7f6888f45e9dc
Merge: dc857f9 75e3e0d
Author: Brad King 
AuthorDate: Wed May 25 10:00:40 2016 -0400
Commit: CMake Topic Stage 
CommitDate: Wed May 25 10:00:40 2016 -0400

Merge topic 'fix-variable-watch-leak' into next

75e3e0d3 cmVariableWatch: Fix potential memory leak


https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=75e3e0d3dcd7d17a45e2d00148b496013423d210
commit 75e3e0d3dcd7d17a45e2d00148b496013423d210
Author: Brad King 
AuthorDate: Wed May 25 09:58:36 2016 -0400
Commit: Brad King 
CommitDate: Wed May 25 09:58:36 2016 -0400

cmVariableWatch: Fix potential memory leak

Teach cmVariableWatch::AddWatch to own the Pair it allocates until
it needs to pass ownership to WatchMap.

diff --git a/Source/cmVariableWatch.cxx b/Source/cmVariableWatch.cxx
index ac2f2fa..11eaa93 100644
--- a/Source/cmVariableWatch.cxx
+++ b/Source/cmVariableWatch.cxx
@@ -13,6 +13,8 @@
 
 #include "cmAlgorithms.h"
 
+#include 
+
 static const char* const cmVariableWatchAccessStrings[] = {
   "READ_ACCESS", "UNKNOWN_READ_ACCESS", "UNKNOWN_DEFINED_ACCESS",
   "MODIFIED_ACCESS", "REMOVED_ACCESS",  "NO_ACCESS"
@@ -46,7 +48,7 @@ bool cmVariableWatch::AddWatch(const std::string& variable, 
WatchMethod method,
void* client_data /*=0*/,
DeleteData delete_data /*=0*/)
 {
-  cmVariableWatch::Pair* p = new cmVariableWatch::Pair;
+  cmsys::auto_ptr p(new cmVariableWatch::Pair);
   p->Method = method;
   p->ClientData = client_data;
   p->DeleteDataCall = delete_data;
@@ -60,7 +62,7 @@ bool cmVariableWatch::AddWatch(const std::string& variable, 
WatchMethod method,
   return false;
 }
   }
-  vp->push_back(p);
+  vp->push_back(p.release());
   return true;
 }
 

---

Summary of changes:
 Source/cmVariableWatch.cxx |6 --
 1 file changed, 4 insertions(+), 2 deletions(-)


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


[Cmake-commits] CMake branch, next, updated. v3.5.2-1583-gd5f21f9

2016-05-25 Thread Brad King
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, next has been updated
   via  d5f21f98666311bf7b1d71446ef1aa947d773fb0 (commit)
   via  8479dc46f12831c7736ce59b5833e43509899f7d (commit)
  from  7af18cb57b3d8d3366c694d57fa7f6888f45e9dc (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=d5f21f98666311bf7b1d71446ef1aa947d773fb0
commit d5f21f98666311bf7b1d71446ef1aa947d773fb0
Merge: 7af18cb 8479dc4
Author: Brad King 
AuthorDate: Wed May 25 10:03:21 2016 -0400
Commit: CMake Topic Stage 
CommitDate: Wed May 25 10:03:21 2016 -0400

Merge topic 'liblzma-signed-shift' into next

8479dc46 liblzma: Avoid possible overflow on signed left shift


https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=8479dc46f12831c7736ce59b5833e43509899f7d
commit 8479dc46f12831c7736ce59b5833e43509899f7d
Author: Brad King 
AuthorDate: Wed May 25 10:02:02 2016 -0400
Commit: Brad King 
CommitDate: Wed May 25 10:02:02 2016 -0400

liblzma: Avoid possible overflow on signed left shift

Use an unsigned value to produce the needed mask.

diff --git a/Utilities/cmliblzma/liblzma/simple/x86.c 
b/Utilities/cmliblzma/liblzma/simple/x86.c
index 101d8ed..95858e5 100644
--- a/Utilities/cmliblzma/liblzma/simple/x86.c
+++ b/Utilities/cmliblzma/liblzma/simple/x86.c
@@ -103,7 +103,7 @@ x86_code(lzma_simple *simple, uint32_t now_pos, bool 
is_encoder,
if (!Test86MSByte(b))
break;
 
-   src = dest ^ ((1 << (32 - i * 8)) - 1);
+   src = dest ^ ((1u << (32 - i * 8)) - 1);
}
 
buffer[buffer_pos + 4]

---

Summary of changes:
 Utilities/cmliblzma/liblzma/simple/x86.c |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-developers] Optionally disable /Applications symlink in CPack dragndrop generator

2016-05-25 Thread Brad King
On 05/25/2016 08:46 AM, Harry Mallon wrote:
> Pull request to optionally disable the /Applications symlink.

Thanks, applied with minor tweaks:

 CPack/DragNDrop: Optionally disable `/Applications` symlink
 https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=3acc29fc

-Brad
-- 

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, next, updated. v3.5.2-1579-gdc857f9

2016-05-25 Thread Brad King
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, next has been updated
   via  dc857f961d48c6a03eb2b0cafc38b8e69629075b (commit)
   via  3acc29fca9395c7e76f0884d182da6da2e022b81 (commit)
  from  cb027b4aa9ffdcdd1fb148bb0157e54acd00dbbe (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=dc857f961d48c6a03eb2b0cafc38b8e69629075b
commit dc857f961d48c6a03eb2b0cafc38b8e69629075b
Merge: cb027b4 3acc29f
Author: Brad King 
AuthorDate: Wed May 25 09:53:46 2016 -0400
Commit: CMake Topic Stage 
CommitDate: Wed May 25 09:53:46 2016 -0400

Merge topic 'cpack-dmg-no-app-link' into next

3acc29fc CPack/DragNDrop: Optionally disable `/Applications` symlink


https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=3acc29fca9395c7e76f0884d182da6da2e022b81
commit 3acc29fca9395c7e76f0884d182da6da2e022b81
Author: Harry Mallon 
AuthorDate: Wed May 25 13:43:31 2016 +0100
Commit: Brad King 
CommitDate: Wed May 25 09:51:04 2016 -0400

CPack/DragNDrop: Optionally disable `/Applications` symlink

diff --git a/Help/release/dev/cpack-dmg-no-app-link.rst 
b/Help/release/dev/cpack-dmg-no-app-link.rst
new file mode 100644
index 000..46101a5
--- /dev/null
+++ b/Help/release/dev/cpack-dmg-no-app-link.rst
@@ -0,0 +1,6 @@
+cpack-dmg-no-app-link
+-
+
+* The :module:`CPackDMG` module learned a new option to tell the CPack
+  ``DragNDrop`` generaor to skip the ``/Applications`` symlink.
+  See the :variable:`CPACK_DMG_DISABLE_APPLICATIONS_SYMLINK` variable.
diff --git a/Modules/CPackDMG.cmake b/Modules/CPackDMG.cmake
index 1959f22..929b2f6 100644
--- a/Modules/CPackDMG.cmake
+++ b/Modules/CPackDMG.cmake
@@ -46,6 +46,11 @@
 #  CPACK_DMG_DS_STORE_SETUP_SCRIPT is executed or CPACK_DMG_DS_STORE is
 #  installed.  By default no background image is set.
 #
+# .. variable:: CPACK_DMG_DISABLE_APPLICATIONS_SYMLINK
+#
+#  Default behaviour is to include a symlink to ``/Applications`` in the DMG.
+#  Set this option to ``ON`` to avoid adding the symlink.
+#
 # .. variable:: CPACK_DMG_SLA_DIR
 #
 #   Directory where license and menu files for different languages are stored.
diff --git a/Source/CPack/cmCPackDragNDropGenerator.cxx 
b/Source/CPack/cmCPackDragNDropGenerator.cxx
index 9576eff..f4379c1 100644
--- a/Source/CPack/cmCPackDragNDropGenerator.cxx
+++ b/Source/CPack/cmCPackDragNDropGenerator.cxx
@@ -305,6 +305,9 @@ int cmCPackDragNDropGenerator::CreateDMG(const std::string& 
src_dir,
 ? this->GetOption("CPACK_DMG_DS_STORE_SETUP_SCRIPT")
 : "";
 
+  const bool cpack_dmg_disable_applications_symlink =
+this->IsOn("CPACK_DMG_DISABLE_APPLICATIONS_SYMLINK");
+
   // only put license on dmg if is user provided
   if (!cpack_license_file.empty() &&
   cpack_license_file.find("CPack.GenericLicense.txt") !=
@@ -323,11 +326,13 @@ int cmCPackDragNDropGenerator::CreateDMG(const 
std::string& src_dir,
   staging << src_dir;
 
   // Add a symlink to /Applications so users can drag-and-drop the bundle
-  // into it
-  std::ostringstream application_link;
-  application_link << staging.str() << "/Applications";
-  cmSystemTools::CreateSymlink("/Applications",
-   application_link.str().c_str());
+  // into it unless this behaviour was disabled
+  if (!cpack_dmg_disable_applications_symlink) {
+std::ostringstream application_link;
+application_link << staging.str() << "/Applications";
+cmSystemTools::CreateSymlink("/Applications",
+ application_link.str().c_str());
+  }
 
   // Optionally add a custom volume icon ...
   if (!cpack_package_icon.empty()) {

---

Summary of changes:
 Help/release/dev/cpack-dmg-no-app-link.rst |6 ++
 Modules/CPackDMG.cmake |5 +
 Source/CPack/cmCPackDragNDropGenerator.cxx |   15 ++-
 3 files changed, 21 insertions(+), 5 deletions(-)
 create mode 100644 Help/release/dev/cpack-dmg-no-app-link.rst


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


[Cmake-commits] CMake branch, next, updated. v3.5.2-1577-gcb027b4

2016-05-25 Thread Brad King
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, next has been updated
   via  cb027b4aa9ffdcdd1fb148bb0157e54acd00dbbe (commit)
   via  81e73b7240e3b11b454f01f21bab85b4aa95d6af (commit)
  from  1d515e50baa2f096f85d3ba97a67592fcfd149f9 (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=cb027b4aa9ffdcdd1fb148bb0157e54acd00dbbe
commit cb027b4aa9ffdcdd1fb148bb0157e54acd00dbbe
Merge: 1d515e5 81e73b7
Author: Brad King 
AuthorDate: Wed May 25 09:44:13 2016 -0400
Commit: CMake Topic Stage 
CommitDate: Wed May 25 09:44:13 2016 -0400

Merge topic 'FindCUDA-cublas_device' into next

81e73b72 FindCUDA: Add support for finding the cublas_device library


https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=81e73b7240e3b11b454f01f21bab85b4aa95d6af
commit 81e73b7240e3b11b454f01f21bab85b4aa95d6af
Author: James Sharpe 
AuthorDate: Wed May 25 11:28:39 2016 +0100
Commit: Brad King 
CommitDate: Wed May 25 09:42:25 2016 -0400

FindCUDA: Add support for finding the cublas_device library

diff --git a/Help/release/dev/FindCUDA-cublas_device.rst 
b/Help/release/dev/FindCUDA-cublas_device.rst
new file mode 100644
index 000..2ceed60
--- /dev/null
+++ b/Help/release/dev/FindCUDA-cublas_device.rst
@@ -0,0 +1,4 @@
+FindCUDA-cublas_device
+--
+
+* The :module:`FindCUDA` module learned to find the ``cublas_device`` library.
diff --git a/Modules/FindCUDA.cmake b/Modules/FindCUDA.cmake
index 2979f0f..48bb554 100644
--- a/Modules/FindCUDA.cmake
+++ b/Modules/FindCUDA.cmake
@@ -549,6 +549,7 @@ macro(cuda_unset_include_and_libraries)
   endif()
   unset(CUDA_cudart_static_LIBRARY CACHE)
   unset(CUDA_cublas_LIBRARY CACHE)
+  unset(CUDA_cublas_device_LIBRARY CACHE)
   unset(CUDA_cublasemu_LIBRARY CACHE)
   unset(CUDA_cufft_LIBRARY CACHE)
   unset(CUDA_cufftemu_LIBRARY CACHE)
@@ -854,6 +855,7 @@ if(NOT CUDA_VERSION VERSION_LESS "3.2")
   endif()
 endif()
 if(CUDA_VERSION VERSION_GREATER "5.0")
+  find_cuda_helper_libs(cublas_device)
   # In CUDA 5.5 NPP was splitted onto 3 separate libraries.
   find_cuda_helper_libs(nppc)
   find_cuda_helper_libs(nppi)
@@ -872,7 +874,7 @@ if (CUDA_BUILD_EMULATION)
   set(CUDA_CUBLAS_LIBRARIES ${CUDA_cublasemu_LIBRARY})
 else()
   set(CUDA_CUFFT_LIBRARIES ${CUDA_cufft_LIBRARY})
-  set(CUDA_CUBLAS_LIBRARIES ${CUDA_cublas_LIBRARY})
+  set(CUDA_CUBLAS_LIBRARIES ${CUDA_cublas_LIBRARY} 
${CUDA_cublas_device_LIBRARY})
 endif()
 
 
@@ -1803,7 +1805,7 @@ macro(CUDA_ADD_CUBLAS_TO_TARGET target)
   if (CUDA_BUILD_EMULATION)
 target_link_libraries(${target} ${CUDA_cublasemu_LIBRARY})
   else()
-target_link_libraries(${target} ${CUDA_cublas_LIBRARY})
+target_link_libraries(${target} ${CUDA_cublas_LIBRARY} 
${CUDA_cublas_device_LIBRARY})
   endif()
 endmacro()
 

---

Summary of changes:
 Help/release/dev/FindCUDA-cublas_device.rst |4 
 Modules/FindCUDA.cmake  |6 --
 2 files changed, 8 insertions(+), 2 deletions(-)
 create mode 100644 Help/release/dev/FindCUDA-cublas_device.rst


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


[Cmake-commits] CMake branch, next, updated. v3.5.2-1575-g1d515e5

2016-05-25 Thread Brad King
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, next has been updated
   via  1d515e50baa2f096f85d3ba97a67592fcfd149f9 (commit)
   via  d256ba078a10001883487ed6af746af5b9cd9608 (commit)
   via  fb4791b37ccea1f38b8625b31df952408ab942f3 (commit)
  from  dbb18b7656652b8da15d34eb1c1516dcb80bfd17 (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=1d515e50baa2f096f85d3ba97a67592fcfd149f9
commit 1d515e50baa2f096f85d3ba97a67592fcfd149f9
Merge: dbb18b7 d256ba0
Author: Brad King 
AuthorDate: Wed May 25 09:41:04 2016 -0400
Commit: CMake Topic Stage 
CommitDate: Wed May 25 09:41:04 2016 -0400

Merge topic 'try_compile-custom-variables' into next

d256ba07 try_compile: Optionally forward custom platform variables to test 
project
fb4791b3 cmCoreTryCompile: Refactor forwarding of variables to test project


https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=d256ba078a10001883487ed6af746af5b9cd9608
commit d256ba078a10001883487ed6af746af5b9cd9608
Author: Brad King 
AuthorDate: Tue May 24 15:33:34 2016 -0400
Commit: Brad King 
CommitDate: Wed May 25 09:36:19 2016 -0400

try_compile: Optionally forward custom platform variables to test project

Add a `CMAKE_TRY_COMPILE_PLATFORM_VARIABLES` variable to specify a list
of custom variables to be forwarded to a `try_compile` test project.
This will be useful for platform information modules or toolchain files
to forward some platform-specific set of variables from the host project
(perhaps set in its cache) to the test project so that it can build the
same way.

diff --git a/Help/command/try_compile.rst b/Help/command/try_compile.rst
index 78b1bc7..7830deb 100644
--- a/Help/command/try_compile.rst
+++ b/Help/command/try_compile.rst
@@ -115,3 +115,7 @@ a build configuration.
 
 Set the :variable:`CMAKE_TRY_COMPILE_TARGET_TYPE` variable to specify
 the type of target used for the source file signature.
+
+Set the :variable:`CMAKE_TRY_COMPILE_PLATFORM_VARIABLES` variable to specify
+variables that must be propagated into the test project.  This variable is
+meant for use only in toolchain files.
diff --git a/Help/manual/cmake-variables.7.rst 
b/Help/manual/cmake-variables.7.rst
index b8c8bea..85b8eae 100644
--- a/Help/manual/cmake-variables.7.rst
+++ b/Help/manual/cmake-variables.7.rst
@@ -298,6 +298,7 @@ Variables that Control the Build
/variable/CMAKE_STATIC_LINKER_FLAGS_CONFIG
/variable/CMAKE_STATIC_LINKER_FLAGS
/variable/CMAKE_TRY_COMPILE_CONFIGURATION
+   /variable/CMAKE_TRY_COMPILE_PLATFORM_VARIABLES
/variable/CMAKE_TRY_COMPILE_TARGET_TYPE
/variable/CMAKE_USE_RELATIVE_PATHS
/variable/CMAKE_VISIBILITY_INLINES_HIDDEN
diff --git a/Help/release/dev/try_compile-custom-variables.rst 
b/Help/release/dev/try_compile-custom-variables.rst
new file mode 100644
index 000..539b364
--- /dev/null
+++ b/Help/release/dev/try_compile-custom-variables.rst
@@ -0,0 +1,7 @@
+try_compile-custom-variables
+
+
+* A :variable:`CMAKE_TRY_COMPILE_PLATFORM_VARIABLES` variable was
+  added for use by toolchain files to specify platform-specific
+  variables that must be propagated by the :command:`try_compile`
+  command into test projects.
diff --git a/Help/variable/CMAKE_TRY_COMPILE_PLATFORM_VARIABLES.rst 
b/Help/variable/CMAKE_TRY_COMPILE_PLATFORM_VARIABLES.rst
new file mode 100644
index 000..8e43465
--- /dev/null
+++ b/Help/variable/CMAKE_TRY_COMPILE_PLATFORM_VARIABLES.rst
@@ -0,0 +1,10 @@
+CMAKE_TRY_COMPILE_PLATFORM_VARIABLES
+
+
+List of variables that the :command:`try_compile` command source file signature
+must propagate into the test project in order to target the same platform as
+the host project.
+
+This variable should not be set by project code.  It is meant to be set by
+CMake's platform information modules for the current toolchain, or by a
+toolchain file when used with :variable:`CMAKE_TOOLCHAIN_FILE`.
diff --git a/Source/cmCoreTryCompile.cxx b/Source/cmCoreTryCompile.cxx
index bd9fd87..0149fdf 100644
--- a/Source/cmCoreTryCompile.cxx
+++ b/Source/cmCoreTryCompile.cxx
@@ -41,6 +41,8 @@ static std::string const kCMAKE_POSITION_INDEPENDENT_CODE =
 static std::string const kCMAKE_SYSROOT = "CMAKE_SYSROOT";
 static std::string const kCMAKE_TRY_COMPILE_OSX_ARCHITECTURES =
   "CMAKE_TRY_COMPILE_OSX_ARCHITECTURES";
+static std::string const kCMAKE_TRY_COMPILE_PLATFORM_VARIABLES =
+  "CMAKE_TRY_COMPILE_PLATFORM_VARIABLES";
 
 int 

[Cmake-commits] CMake branch, next, updated. v3.5.2-1572-gdbb18b7

2016-05-25 Thread Brad King
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, next has been updated
   via  dbb18b7656652b8da15d34eb1c1516dcb80bfd17 (commit)
   via  6052e4b3bfe62a8d29ca679affb101c7aec0d219 (commit)
   via  9ebc2092885fa32eaa47aade965fcec2cfa308d0 (commit)
   via  916d52533ea354d8945c0cba44f65ee34d0e7cd5 (commit)
   via  8cd007fee664e4c7d1e3a1e50dba5b3fe973e3cf (commit)
   via  2bc55b69dbce97abaf6189987af97a25efae4694 (commit)
   via  d5ccab37b33ff23885e7cd13341cd8c253626e13 (commit)
  from  19ccdd04e8128ff05f9c0beb062aa20b5d2b1742 (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=dbb18b7656652b8da15d34eb1c1516dcb80bfd17
commit dbb18b7656652b8da15d34eb1c1516dcb80bfd17
Merge: 19ccdd0 6052e4b
Author: Brad King 
AuthorDate: Wed May 25 09:35:02 2016 -0400
Commit: Brad King 
CommitDate: Wed May 25 09:35:02 2016 -0400

Merge branch 'master' into next


---

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


[Cmake-commits] CMake branch, master, updated. v3.5.2-763-g6052e4b

2016-05-25 Thread Brad King
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  6052e4b3bfe62a8d29ca679affb101c7aec0d219 (commit)
   via  5784747d1b0404a0c1cb0223b15b823476023fba (commit)
   via  5cec953e6aafd4c132a7b6c0a929d95c1dee79ea (commit)
   via  2a1a2033afe73da08af46e12ed77a8f55a89417f (commit)
   via  34bc6e1f3b2564abfcc79e7724697c2657a56129 (commit)
  from  9ebc2092885fa32eaa47aade965fcec2cfa308d0 (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=6052e4b3bfe62a8d29ca679affb101c7aec0d219
commit 6052e4b3bfe62a8d29ca679affb101c7aec0d219
Merge: 9ebc209 5784747
Author: Brad King 
AuthorDate: Wed May 25 09:34:29 2016 -0400
Commit: CMake Topic Stage 
CommitDate: Wed May 25 09:34:29 2016 -0400

Merge topic 'improve-character-find-and-replace'

5784747d Improve string find: prefer character overloads.
5cec953e Use std::replace for replacing chars in strings.
2a1a2033 cmExtraEclipseCDT4Generator: use std::replace.
34bc6e1f cmCTestScriptHandler: don't call find repeatedly.

diff --cc Source/cmLocalUnixMakefileGenerator3.cxx
index 8d4955b,46891b7..653ea40
--- a/Source/cmLocalUnixMakefileGenerator3.cxx
+++ b/Source/cmLocalUnixMakefileGenerator3.cxx
@@@ -960,11 -949,11 +960,11 @@@ void cmLocalUnixMakefileGenerator3::App
cmSystemTools::ReplaceString(cmd, "/./", "/");
// Convert the command to a relative path only if the current
// working directory will be the start-output directory.
-   bool had_slash = cmd.find("/") != cmd.npos;
+   bool had_slash = cmd.find('/') != cmd.npos;
if (workingDir.empty()) {
 -cmd = this->Convert(cmd, START_OUTPUT);
 +cmd = this->Convert(cmd, cmOutputConverter::START_OUTPUT);
}
-   bool has_slash = cmd.find("/") != cmd.npos;
+   bool has_slash = cmd.find('/') != cmd.npos;
if (had_slash && !has_slash) {
  // This command was specified as a path to a file in the
  // current directory.  Add a leading "./" so it can run

---

Summary of changes:
 Source/CPack/IFW/cmCPackIFWPackage.cxx |6 +++---
 Source/CPack/cmCPackNSISGenerator.cxx  |   10 +-
 Source/CPack/cmCPackRPMGenerator.cxx   |4 ++--
 Source/CPack/cpack.cxx |2 +-
 Source/CTest/cmCTestBuildHandler.cxx   |2 +-
 Source/CTest/cmCTestCoverageHandler.cxx|4 ++--
 Source/CTest/cmCTestScriptHandler.cxx  |7 ---
 Source/CTest/cmCTestSubmitHandler.cxx  |4 ++--
 Source/CTest/cmCTestTestHandler.cxx|2 +-
 Source/CTest/cmParseDelphiCoverage.cxx |2 +-
 Source/CursesDialog/cmCursesMainForm.cxx   |2 +-
 Source/cmBuildNameCommand.cxx  |   12 ++--
 Source/cmCTest.cxx |4 ++--
 Source/cmCreateTestSourceList.cxx  |6 +++---
 Source/cmDependsFortran.cxx|2 +-
 Source/cmExportFileGenerator.cxx   |8 
 Source/cmExtraEclipseCDT4Generator.cxx |6 +-
 Source/cmGeneratorExpression.cxx   |4 ++--
 Source/cmGeneratorTarget.cxx   |2 +-
 Source/cmGlobalGhsMultiGenerator.cxx   |4 ++--
 Source/cmGlobalNinjaGenerator.cxx  |8 
 Source/cmGlobalVisualStudio7Generator.cxx  |2 +-
 Source/cmGlobalVisualStudioGenerator.cxx   |2 +-
 Source/cmGlobalXCodeGenerator.cxx  |2 +-
 Source/cmInstallExportGenerator.cxx|4 ++--
 Source/cmLocalGenerator.cxx|   12 ++--
 Source/cmLocalNinjaGenerator.cxx   |2 +-
 Source/cmLocalUnixMakefileGenerator3.cxx   |   12 ++--
 Source/cmMakefileTargetGenerator.cxx   |6 +++---
 Source/cmNinjaTargetGenerator.cxx  |2 +-
 Source/cmQtAutoGenerators.cxx  |2 +-
 Source/cmSeparateArgumentsCommand.cxx  |2 +-
 Source/cmSystemTools.cxx   |2 +-
 Source/cmVisualStudio10TargetGenerator.cxx |2 +-
 Source/cmVisualStudioWCEPlatformParser.cxx |4 ++--
 Source/cmcmd.cxx   |2 +-
 36 files changed, 78 insertions(+), 81 deletions(-)


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


[Cmake-commits] CMake branch, master, updated. v3.5.2-756-g916d525

2016-05-25 Thread Brad King
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  916d52533ea354d8945c0cba44f65ee34d0e7cd5 (commit)
   via  c13408279f035c8261b530e26040cf4b8f01fdab (commit)
   via  4419909756751170d6fd4248b205c96767220dee (commit)
   via  a896043bacdd0cb2597fa10074302ed8a9a5e138 (commit)
  from  8cd007fee664e4c7d1e3a1e50dba5b3fe973e3cf (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=916d52533ea354d8945c0cba44f65ee34d0e7cd5
commit 916d52533ea354d8945c0cba44f65ee34d0e7cd5
Merge: 8cd007f c134082
Author: Brad King 
AuthorDate: Wed May 25 09:34:24 2016 -0400
Commit: CMake Topic Stage 
CommitDate: Wed May 25 09:34:24 2016 -0400

Merge topic 'standard-include-directories'

c1340827 Add a variable to specify language-wide system include directories
44199097 cmMakefile: Optimize AddSystemIncludeDirectories for empty set
a896043b GHS: Compute include directories consistently with other generators


---

Summary of changes:
 Help/manual/cmake-variables.7.rst  |1 +
 Help/release/dev/standard-include-directories.rst  |6 ++
 .../CMAKE_LANG_STANDARD_INCLUDE_DIRECTORIES.rst|   14 ++
 Help/variable/CMAKE_LANG_STANDARD_LIBRARIES.rst|2 ++
 Source/cmGeneratorTarget.cxx   |   12 
 Source/cmGhsMultiTargetGenerator.cxx   |6 --
 Source/cmGlobalGenerator.cxx   |   20 
 Source/cmMakefile.cxx  |4 
 Tests/IncludeDirectories/CMakeLists.txt|1 +
 .../StandardIncludeDirectories/CMakeLists.txt  |5 +
 .../StandardIncludeDirectories/StdDir/StdIncDir.h  |0
 .../StandardIncludeDirectories}/main.c |1 +
 12 files changed, 70 insertions(+), 2 deletions(-)
 create mode 100644 Help/release/dev/standard-include-directories.rst
 create mode 100644 Help/variable/CMAKE_LANG_STANDARD_INCLUDE_DIRECTORIES.rst
 create mode 100644 
Tests/IncludeDirectories/StandardIncludeDirectories/CMakeLists.txt
 copy Modules/IntelVSImplicitPath/hello.f => 
Tests/IncludeDirectories/StandardIncludeDirectories/StdDir/StdIncDir.h (100%)
 copy Tests/{ExportImport => 
IncludeDirectories/StandardIncludeDirectories}/main.c (54%)


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


[Cmake-commits] CMake branch, master, updated. v3.5.2-758-g9ebc209

2016-05-25 Thread Brad King
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  9ebc2092885fa32eaa47aade965fcec2cfa308d0 (commit)
   via  6b190b5c5221d2447bdf19c20243469025d2614e (commit)
  from  916d52533ea354d8945c0cba44f65ee34d0e7cd5 (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=9ebc2092885fa32eaa47aade965fcec2cfa308d0
commit 9ebc2092885fa32eaa47aade965fcec2cfa308d0
Merge: 916d525 6b190b5
Author: Brad King 
AuthorDate: Wed May 25 09:34:26 2016 -0400
Commit: CMake Topic Stage 
CommitDate: Wed May 25 09:34:26 2016 -0400

Merge topic 'FindCUDA-flags-genex'

6b190b5c FindCUDA: Add support for generator expressions in CUDA_NVCC_FLAGS


---

Summary of changes:
 Modules/FindCUDA.cmake |9 +++--
 1 file changed, 7 insertions(+), 2 deletions(-)


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


[Cmake-commits] CMake branch, master, updated. v3.5.2-750-g2bc55b6

2016-05-25 Thread Brad King
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  2bc55b69dbce97abaf6189987af97a25efae4694 (commit)
   via  25d1ef6424e0b06687739c91a646633ab9aaf861 (commit)
  from  d5ccab37b33ff23885e7cd13341cd8c253626e13 (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=2bc55b69dbce97abaf6189987af97a25efae4694
commit 2bc55b69dbce97abaf6189987af97a25efae4694
Merge: d5ccab3 25d1ef6
Author: Brad King 
AuthorDate: Wed May 25 09:34:19 2016 -0400
Commit: CMake Topic Stage 
CommitDate: Wed May 25 09:34:19 2016 -0400

Merge topic 'output-converter-enums'

25d1ef64 Use enums defined in cmOutputConverter using their fully qualified 
name.


---

Summary of changes:
 Source/cmCommonTargetGenerator.cxx |   18 ++--
 Source/cmCommonTargetGenerator.h   |4 +-
 Source/cmDependsC.cxx  |   10 +-
 Source/cmDependsFortran.cxx|   40 
 Source/cmExtraEclipseCDT4Generator.cxx |2 +-
 Source/cmGlobalGenerator.cxx   |2 +-
 Source/cmGlobalNinjaGenerator.cxx  |   10 +-
 Source/cmGlobalUnixMakefileGenerator3.cxx  |   24 ++---
 Source/cmGlobalVisualStudio7Generator.cxx  |2 +-
 Source/cmGlobalXCodeGenerator.cxx  |8 +-
 Source/cmLocalGenerator.cxx|2 +-
 Source/cmLocalGenerator.h  |   12 ++-
 Source/cmLocalNinjaGenerator.cxx   |   27 --
 Source/cmLocalNinjaGenerator.h |   12 ++-
 Source/cmLocalUnixMakefileGenerator3.cxx   |  112 --
 Source/cmLocalUnixMakefileGenerator3.h |   12 ++-
 Source/cmLocalVisualStudio7Generator.cxx   |   41 
 Source/cmMakefileExecutableTargetGenerator.cxx |   55 +--
 Source/cmMakefileLibraryTargetGenerator.cxx|   84 +
 Source/cmMakefileTargetGenerator.cxx   |  118 
 Source/cmMakefileUtilityTargetGenerator.cxx|4 +-
 Source/cmNinjaNormalTargetGenerator.cxx|   22 ++---
 Source/cmNinjaTargetGenerator.cxx  |   12 +--
 Source/cmNinjaUtilityTargetGenerator.cxx   |4 +-
 Source/cmVisualStudio10TargetGenerator.cxx |4 +-
 25 files changed, 339 insertions(+), 302 deletions(-)


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


[Cmake-commits] CMake branch, master, updated. v3.5.2-752-g8cd007f

2016-05-25 Thread Brad King
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  8cd007fee664e4c7d1e3a1e50dba5b3fe973e3cf (commit)
   via  7807b3a9db35acd683fd82c6d902272991a9789a (commit)
  from  2bc55b69dbce97abaf6189987af97a25efae4694 (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=8cd007fee664e4c7d1e3a1e50dba5b3fe973e3cf
commit 8cd007fee664e4c7d1e3a1e50dba5b3fe973e3cf
Merge: 2bc55b6 7807b3a
Author: Brad King 
AuthorDate: Wed May 25 09:34:21 2016 -0400
Commit: CMake Topic Stage 
CommitDate: Wed May 25 09:34:21 2016 -0400

Merge topic 'doc-standard-libs'

7807b3a9 Help: Document CMAKE__STANDARD_LIBRARIES variable


---

Summary of changes:
 Help/manual/cmake-variables.7.rst   |2 +-
 Help/release/dev/doc-standard-libs.rst  |6 ++
 Help/variable/CMAKE_LANG_STANDARD_LIBRARIES.rst |   10 ++
 Help/variable/CMAKE_STANDARD_LIBRARIES.rst  |7 ---
 4 files changed, 17 insertions(+), 8 deletions(-)
 create mode 100644 Help/release/dev/doc-standard-libs.rst
 create mode 100644 Help/variable/CMAKE_LANG_STANDARD_LIBRARIES.rst
 delete mode 100644 Help/variable/CMAKE_STANDARD_LIBRARIES.rst


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


[Cmake-commits] CMake branch, next, updated. v3.5.2-1565-g19ccdd0

2016-05-25 Thread Brad King
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, next has been updated
   via  19ccdd04e8128ff05f9c0beb062aa20b5d2b1742 (commit)
   via  6b190b5c5221d2447bdf19c20243469025d2614e (commit)
  from  fe005958b0079c029360b40364c11a96720714fb (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=19ccdd04e8128ff05f9c0beb062aa20b5d2b1742
commit 19ccdd04e8128ff05f9c0beb062aa20b5d2b1742
Merge: fe00595 6b190b5
Author: Brad King 
AuthorDate: Wed May 25 09:33:13 2016 -0400
Commit: CMake Topic Stage 
CommitDate: Wed May 25 09:33:13 2016 -0400

Merge topic 'FindCUDA-flags-genex' into next

6b190b5c FindCUDA: Add support for generator expressions in CUDA_NVCC_FLAGS


https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=6b190b5c5221d2447bdf19c20243469025d2614e
commit 6b190b5c5221d2447bdf19c20243469025d2614e
Author: Chuck Atkins 
AuthorDate: Tue May 24 09:15:34 2016 -0400
Commit: Brad King 
CommitDate: Wed May 25 09:31:35 2016 -0400

FindCUDA: Add support for generator expressions in CUDA_NVCC_FLAGS

Follow the configure_file by a file(GENERATE) so the resulting cmake
scripts used by FindCUDA for wrapping nvcc calls can now support
generator expressions in the CUDA_NVCC_FLAGS variable.

diff --git a/Modules/FindCUDA.cmake b/Modules/FindCUDA.cmake
index 0718116..2979f0f 100644
--- a/Modules/FindCUDA.cmake
+++ b/Modules/FindCUDA.cmake
@@ -1395,7 +1395,8 @@ macro(CUDA_WRAP_SRCS cuda_target format generated_files)
   set(cmake_dependency_file 
"${cuda_compile_intermediate_directory}/${generated_file_basename}.depend")
   set(NVCC_generated_dependency_file 
"${cuda_compile_intermediate_directory}/${generated_file_basename}.NVCC-depend")
   set(generated_cubin_file 
"${generated_file_path}/${generated_file_basename}.cubin.txt")
-  set(custom_target_script 
"${cuda_compile_intermediate_directory}/${generated_file_basename}.cmake")
+  set(custom_target_script_pregen 
"${cuda_compile_intermediate_directory}/${generated_file_basename}.cmake.pre-gen")
+  set(custom_target_script 
"${cuda_compile_intermediate_directory}/${generated_file_basename}$<$:.$>.cmake")
 
   # Setup properties for obj files:
   if( NOT cuda_compile_to_external_module )
@@ -1436,7 +1437,11 @@ macro(CUDA_WRAP_SRCS cuda_target format generated_files)
   endif()
 
   # Configure the build script
-  configure_file("${CUDA_run_nvcc}" "${custom_target_script}" @ONLY)
+  configure_file("${CUDA_run_nvcc}" "${custom_target_script_pregen}" @ONLY)
+  file(GENERATE
+OUTPUT "${custom_target_script}"
+INPUT "${custom_target_script_pregen}"
+)
 
   # So if a user specifies the same cuda file as input more than once, you
   # can have bad things happen with dependencies.  Here we check an option

---

Summary of changes:


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


[Cmake-commits] CMake branch, next, updated. v3.5.2-1563-gfe00595

2016-05-25 Thread Brad King
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, next has been updated
   via  fe005958b0079c029360b40364c11a96720714fb (commit)
   via  c13408279f035c8261b530e26040cf4b8f01fdab (commit)
  from  c7d14b1d26c8456c6135bf5f6b664446c27ef498 (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=fe005958b0079c029360b40364c11a96720714fb
commit fe005958b0079c029360b40364c11a96720714fb
Merge: c7d14b1 c134082
Author: Brad King 
AuthorDate: Wed May 25 09:30:47 2016 -0400
Commit: CMake Topic Stage 
CommitDate: Wed May 25 09:30:47 2016 -0400

Merge topic 'standard-include-directories' into next

c1340827 Add a variable to specify language-wide system include directories


https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=c13408279f035c8261b530e26040cf4b8f01fdab
commit c13408279f035c8261b530e26040cf4b8f01fdab
Author: Brad King 
AuthorDate: Tue May 24 11:39:25 2016 -0400
Commit: Brad King 
CommitDate: Wed May 25 09:30:31 2016 -0400

Add a variable to specify language-wide system include directories

Create a `CMAKE__STANDARD_INCLUDE_DIRECTORIES` variable to specify
system include directories for for `` compiler command lines.
This plays a role for include directories as the existing
`CMAKE__STANDARD_LIBRARIES` variable does for link libraries.

diff --git a/Help/manual/cmake-variables.7.rst 
b/Help/manual/cmake-variables.7.rst
index 925b70c..b8c8bea 100644
--- a/Help/manual/cmake-variables.7.rst
+++ b/Help/manual/cmake-variables.7.rst
@@ -365,6 +365,7 @@ Variables for Languages
/variable/CMAKE_LANG_SIMULATE_VERSION
/variable/CMAKE_LANG_SIZEOF_DATA_PTR
/variable/CMAKE_LANG_SOURCE_FILE_EXTENSIONS
+   /variable/CMAKE_LANG_STANDARD_INCLUDE_DIRECTORIES
/variable/CMAKE_LANG_STANDARD_LIBRARIES
/variable/CMAKE_USER_MAKE_RULES_OVERRIDE_LANG
 
diff --git a/Help/release/dev/standard-include-directories.rst 
b/Help/release/dev/standard-include-directories.rst
new file mode 100644
index 000..a03d7db
--- /dev/null
+++ b/Help/release/dev/standard-include-directories.rst
@@ -0,0 +1,6 @@
+standard-include-directories
+
+
+* A :variable:`CMAKE__STANDARD_INCLUDE_DIRECTORIES` variable was
+  added for use by toolchain files to specify system include directories
+  to be appended to all compiler command lines.
diff --git a/Help/variable/CMAKE_LANG_STANDARD_INCLUDE_DIRECTORIES.rst 
b/Help/variable/CMAKE_LANG_STANDARD_INCLUDE_DIRECTORIES.rst
new file mode 100644
index 000..c8e3d57
--- /dev/null
+++ b/Help/variable/CMAKE_LANG_STANDARD_INCLUDE_DIRECTORIES.rst
@@ -0,0 +1,14 @@
+CMAKE__STANDARD_INCLUDE_DIRECTORIES
+-
+
+Include directories to be used for every source file compiled with
+the  compiler.  This is meant for specification of system
+include directories needed by the language for the current platform.
+The directories always appear at the end of the include path passed
+to the compiler.
+
+This variable should not be set by project code.  It is meant to be set by
+CMake's platform information modules for the current toolchain, or by a
+toolchain file when used with :variable:`CMAKE_TOOLCHAIN_FILE`.
+
+See also :variable:`CMAKE__STANDARD_LIBRARIES`.
diff --git a/Help/variable/CMAKE_LANG_STANDARD_LIBRARIES.rst 
b/Help/variable/CMAKE_LANG_STANDARD_LIBRARIES.rst
index ad3b911..ba6df93 100644
--- a/Help/variable/CMAKE_LANG_STANDARD_LIBRARIES.rst
+++ b/Help/variable/CMAKE_LANG_STANDARD_LIBRARIES.rst
@@ -8,3 +8,5 @@ libraries needed by the language for the current platform.
 This variable should not be set by project code.  It is meant to be set by
 CMake's platform information modules for the current toolchain, or by a
 toolchain file when used with :variable:`CMAKE_TOOLCHAIN_FILE`.
+
+See also :variable:`CMAKE__STANDARD_INCLUDE_DIRECTORIES`.
diff --git a/Source/cmGeneratorTarget.cxx b/Source/cmGeneratorTarget.cxx
index 31fff9f..8859172 100644
--- a/Source/cmGeneratorTarget.cxx
+++ b/Source/cmGeneratorTarget.cxx
@@ -2415,6 +2415,18 @@ std::vector 
cmGeneratorTarget::GetIncludeDirectories(
 
   cmDeleteAll(linkInterfaceIncludeDirectoriesEntries);
 
+  // Add standard include directories for this language.
+  std::string const standardIncludesVar =
+"CMAKE_" + lang + "_STANDARD_INCLUDE_DIRECTORIES";
+  std::string const standardIncludes =
+this->Makefile->GetSafeDefinition(standardIncludesVar);
+  std::vector::size_type const before = includes.size();
+  cmSystemTools::ExpandListArgument(standardIncludes, includes);
+  for 

[Cmake-commits] CMake branch, next, updated. v3.5.2-1561-gc7d14b1

2016-05-25 Thread Brad King
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, next has been updated
   via  c7d14b1d26c8456c6135bf5f6b664446c27ef498 (commit)
   via  8e801eb51741332fbdc7291368eb816463764847 (commit)
  from  cec4fc067dccac3e84f1b82bf0f462520d0df742 (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=c7d14b1d26c8456c6135bf5f6b664446c27ef498
commit c7d14b1d26c8456c6135bf5f6b664446c27ef498
Merge: cec4fc0 8e801eb
Author: Brad King 
AuthorDate: Wed May 25 09:29:26 2016 -0400
Commit: CMake Topic Stage 
CommitDate: Wed May 25 09:29:26 2016 -0400

Merge topic 'style-cmSystemTools' into next

8e801eb5 cmSystemTools: Fix indentation typo


https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=8e801eb51741332fbdc7291368eb816463764847
commit 8e801eb51741332fbdc7291368eb816463764847
Author: Brad King 
AuthorDate: Wed May 25 09:27:54 2016 -0400
Commit: Brad King 
CommitDate: Wed May 25 09:27:54 2016 -0400

cmSystemTools: Fix indentation typo

diff --git a/Source/cmSystemTools.cxx b/Source/cmSystemTools.cxx
index ed83069..f5819be 100644
--- a/Source/cmSystemTools.cxx
+++ b/Source/cmSystemTools.cxx
@@ -2154,7 +2154,7 @@ std::string::size_type cmSystemToolsFindRPath(std::string 
const& have,
 if (end < have.size() && have[end] != ':') {
   pos = beg + 1;
   continue;
- }
+}
 
 // Return the position of the path portion.
 return beg;

---

Summary of changes:
 Source/cmSystemTools.cxx |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-developers] [Patch] Updated FindMatlab.cmake for Matlab R2016a

2016-05-25 Thread Brad King
On 05/25/2016 03:50 AM, Francesco Romano wrote:
> Added check of Matlab 2016a (9.0) to FindMatlab.cmake

Thanks, applied:

 FindMatlab: Add support for Matlab 2016a (9.0)
 https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=715e4cf5

-Brad

-- 

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, next, updated. v3.5.2-1559-gcec4fc0

2016-05-25 Thread Brad King
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, next has been updated
   via  cec4fc067dccac3e84f1b82bf0f462520d0df742 (commit)
   via  25d1ef6424e0b06687739c91a646633ab9aaf861 (commit)
  from  19d8ac43004cef7a63c65660b8f5f7d583dee762 (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=cec4fc067dccac3e84f1b82bf0f462520d0df742
commit cec4fc067dccac3e84f1b82bf0f462520d0df742
Merge: 19d8ac4 25d1ef6
Author: Brad King 
AuthorDate: Wed May 25 09:20:43 2016 -0400
Commit: CMake Topic Stage 
CommitDate: Wed May 25 09:20:43 2016 -0400

Merge topic 'output-converter-enums' into next

25d1ef64 Use enums defined in cmOutputConverter using their fully qualified 
name.


https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=25d1ef6424e0b06687739c91a646633ab9aaf861
commit 25d1ef6424e0b06687739c91a646633ab9aaf861
Author: Daniel Pfeifer 
AuthorDate: Thu May 19 23:11:40 2016 +0200
Commit: Brad King 
CommitDate: Wed May 25 09:20:09 2016 -0400

Use enums defined in cmOutputConverter using their fully qualified name.

Mostly automated:

values=("RelativeRoot" "NONE" "FULL" "HOME" "START" "HOME_OUTPUT" 
"START_OUTPUT"
"OutputFormat" "UNCHANGED" "MAKERULE" "SHELL" "WATCOMQUOTE" 
"RESPONSE"
"FortranFormat" "FortranFormatNone" "FortranFormatFixed" 
"FortranFormatFree")
for i in "${values[@]}"; do git grep -l cmLocalGenerator::$i | xargs sed -i 
"s|cmLocalGenerator::$i|cmOutputConverter::$i|g"; done

diff --git a/Source/cmCommonTargetGenerator.cxx 
b/Source/cmCommonTargetGenerator.cxx
index 6b2d1e3..c630971 100644
--- a/Source/cmCommonTargetGenerator.cxx
+++ b/Source/cmCommonTargetGenerator.cxx
@@ -43,8 +43,8 @@ std::string const& cmCommonTargetGenerator::GetConfigName() 
const
 }
 
 std::string cmCommonTargetGenerator::Convert(
-  std::string const& source, cmLocalGenerator::RelativeRoot relative,
-  cmLocalGenerator::OutputFormat output)
+  std::string const& source, cmOutputConverter::RelativeRoot relative,
+  cmOutputConverter::OutputFormat output)
 {
   return this->LocalGenerator->Convert(source, relative, output);
 }
@@ -140,7 +140,7 @@ void cmCommonTargetGenerator::AddFortranFlags(std::string& 
flags)
   std::string mod_dir = this->GetFortranModuleDirectory();
   if (!mod_dir.empty()) {
 mod_dir =
-  this->Convert(mod_dir, this->WorkingDirectory, cmLocalGenerator::SHELL);
+  this->Convert(mod_dir, this->WorkingDirectory, cmOutputConverter::SHELL);
   } else {
 mod_dir =
   this->Makefile->GetSafeDefinition("CMAKE_Fortran_MODDIR_DEFAULT");
@@ -167,7 +167,7 @@ void cmCommonTargetGenerator::AddFortranFlags(std::string& 
flags)
  idi != includes.end(); ++idi) {
   std::string flg = modpath_flag;
   flg +=
-this->Convert(*idi, cmLocalGenerator::NONE, cmLocalGenerator::SHELL);
+this->Convert(*idi, cmOutputConverter::NONE, cmOutputConverter::SHELL);
   this->LocalGenerator->AppendFlags(flags, flg);
 }
   }
@@ -177,18 +177,18 @@ void cmCommonTargetGenerator::AppendFortranFormatFlags(
   std::string& flags, cmSourceFile const& source)
 {
   const char* srcfmt = source.GetProperty("Fortran_FORMAT");
-  cmLocalGenerator::FortranFormat format =
+  cmOutputConverter::FortranFormat format =
 this->LocalGenerator->GetFortranFormat(srcfmt);
-  if (format == cmLocalGenerator::FortranFormatNone) {
+  if (format == cmOutputConverter::FortranFormatNone) {
 const char* tgtfmt = this->GeneratorTarget->GetProperty("Fortran_FORMAT");
 format = this->LocalGenerator->GetFortranFormat(tgtfmt);
   }
   const char* var = 0;
   switch (format) {
-case cmLocalGenerator::FortranFormatFixed:
+case cmOutputConverter::FortranFormatFixed:
   var = "CMAKE_Fortran_FORMAT_FIXED_FLAG";
   break;
-case cmLocalGenerator::FortranFormatFree:
+case cmOutputConverter::FortranFormatFree:
   var = "CMAKE_Fortran_FORMAT_FREE_FLAG";
   break;
 default:
@@ -244,7 +244,7 @@ std::string 
cmCommonTargetGenerator::GetFrameworkFlags(std::string const& l)
   if (emitted.insert(*i).second) {
 flags += fwSearchFlag;
 flags += this->LocalGenerator->ConvertToOutputFormat(
-  *i, cmLocalGenerator::SHELL);
+  *i, cmOutputConverter::SHELL);
 flags += " ";
   }
 }
diff --git a/Source/cmCommonTargetGenerator.h b/Source/cmCommonTargetGenerator.h
index c5d324f..c9645e7 100644
--- a/Source/cmCommonTargetGenerator.h
+++ b/Source/cmCommonTargetGenerator.h
@@ -65,8 +65,8 @@ protected:
   void 

[Cmake-commits] CMake branch, next, updated. v3.5.2-1557-g19d8ac4

2016-05-25 Thread Brad King
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, next has been updated
   via  19d8ac43004cef7a63c65660b8f5f7d583dee762 (commit)
   via  715e4cf57c0f2eaa13272110a974412224cfbf36 (commit)
  from  3f65c7d72b09cb6bfa4265a568bb9f2469773bd4 (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=19d8ac43004cef7a63c65660b8f5f7d583dee762
commit 19d8ac43004cef7a63c65660b8f5f7d583dee762
Merge: 3f65c7d 715e4cf
Author: Brad King 
AuthorDate: Wed May 25 09:09:09 2016 -0400
Commit: CMake Topic Stage 
CommitDate: Wed May 25 09:09:09 2016 -0400

Merge topic 'FindMatlab-2016a' into next

715e4cf5 FindMatlab: Add support for Matlab 2016a (9.0)


https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=715e4cf57c0f2eaa13272110a974412224cfbf36
commit 715e4cf57c0f2eaa13272110a974412224cfbf36
Author: Francesco Romano 
AuthorDate: Wed May 25 09:43:51 2016 +0200
Commit: Brad King 
CommitDate: Wed May 25 09:08:32 2016 -0400

FindMatlab: Add support for Matlab 2016a (9.0)

diff --git a/Modules/FindMatlab.cmake b/Modules/FindMatlab.cmake
index 8aa0c11..956dad2 100644
--- a/Modules/FindMatlab.cmake
+++ b/Modules/FindMatlab.cmake
@@ -229,6 +229,7 @@ if(NOT MATLAB_ADDITIONAL_VERSIONS)
 endif()
 
 set(MATLAB_VERSIONS_MAPPING
+  "R2016a=9.0"
   "R2015b=8.6"
   "R2015a=8.5"
   "R2014b=8.4"

---

Summary of changes:
 Modules/FindMatlab.cmake |1 +
 1 file changed, 1 insertion(+)


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


[Cmake-commits] CMake branch, next, updated. v3.5.2-1555-g3f65c7d

2016-05-25 Thread Brad King
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, next has been updated
   via  3f65c7d72b09cb6bfa4265a568bb9f2469773bd4 (commit)
   via  c9cebed5d8da8615d820dafb3cb6cfa6731b4ff4 (commit)
  from  03655800e9142fd2e0b8a1db025fb5751a9009b3 (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=3f65c7d72b09cb6bfa4265a568bb9f2469773bd4
commit 3f65c7d72b09cb6bfa4265a568bb9f2469773bd4
Merge: 0365580 c9cebed
Author: Brad King 
AuthorDate: Wed May 25 09:06:52 2016 -0400
Commit: CMake Topic Stage 
CommitDate: Wed May 25 09:06:52 2016 -0400

Merge topic 'GetPrerequisites-more-paths' into next

c9cebed5 GetPrerequisites: Look for VS tools using registry entries (#16108)


https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=c9cebed5d8da8615d820dafb3cb6cfa6731b4ff4
commit c9cebed5d8da8615d820dafb3cb6cfa6731b4ff4
Author: Brad King 
AuthorDate: Wed May 25 09:00:33 2016 -0400
Commit: Brad King 
CommitDate: Wed May 25 09:00:33 2016 -0400

GetPrerequisites: Look for VS tools using registry entries (#16108)

diff --git a/Modules/GetPrerequisites.cmake b/Modules/GetPrerequisites.cmake
index dd294f4..375349f 100644
--- a/Modules/GetPrerequisites.cmake
+++ b/Modules/GetPrerequisites.cmake
@@ -663,20 +663,27 @@ function(get_prerequisites target prerequisites_var 
exclude_system recurse exepa
   endif()
 
   set(gp_cmd_paths ${gp_cmd_paths}
+
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\VisualStudio\\14.0;InstallDir]/../../VC/bin"
 "$ENV{VS140COMNTOOLS}/../../VC/bin"
 "C:/Program Files (x86)/Microsoft Visual Studio 14.0/VC/bin"
+
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\VisualStudio\\12.0;InstallDir]/../../VC/bin"
 "$ENV{VS120COMNTOOLS}/../../VC/bin"
 "C:/Program Files (x86)/Microsoft Visual Studio 12.0/VC/bin"
+
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\VisualStudio\\11.0;InstallDir]/../../VC/bin"
 "$ENV{VS110COMNTOOLS}/../../VC/bin"
 "C:/Program Files (x86)/Microsoft Visual Studio 11.0/VC/bin"
+
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\VisualStudio\\10.0;InstallDir]/../../VC/bin"
 "$ENV{VS100COMNTOOLS}/../../VC/bin"
 "C:/Program Files (x86)/Microsoft Visual Studio 10.0/VC/bin"
+
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\VisualStudio\\9.0;InstallDir]/../../VC/bin"
 "$ENV{VS90COMNTOOLS}/../../VC/bin"
 "C:/Program Files/Microsoft Visual Studio 9.0/VC/bin"
 "C:/Program Files (x86)/Microsoft Visual Studio 9.0/VC/bin"
+
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\VisualStudio\\8.0;InstallDir]/../../VC/bin"
 "$ENV{VS80COMNTOOLS}/../../VC/bin"
 "C:/Program Files/Microsoft Visual Studio 8/VC/BIN"
 "C:/Program Files (x86)/Microsoft Visual Studio 8/VC/BIN"
+
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\VisualStudio\\7.1;InstallDir]/../../VC7/bin"
 "$ENV{VS71COMNTOOLS}/../../VC7/bin"
 "C:/Program Files/Microsoft Visual Studio .NET 2003/VC7/BIN"
 "C:/Program Files (x86)/Microsoft Visual Studio .NET 2003/VC7/BIN"

---

Summary of changes:
 Modules/GetPrerequisites.cmake |7 +++
 1 file changed, 7 insertions(+)


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


[cmake-developers] Optionally disable /Applications symlink in CPack dragndrop generator

2016-05-25 Thread Harry Mallon
Pull request to optionally disable the /Applications symlink. It is useful when 
distributing .app files but not needed when distributing other things.
https://github.com/Kitware/CMake/pull/246

Harry

Harry Mallon

CODEX | Software Engineer

60 Poland Street | London | England | W1F 7NT

E ha...@codexdigital.com | T +44 203 7000 
989

Website | Facebook 
| Twitter

[http://www.codexdigital.com/?action=asset=E55D8A6F-AF62-4978-8FF1-435A85AFADBF]
-- 

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-developers] [CMake 0016108]: get_prerequisites failed to locate installed Microsoft Visual Studio if installed into not default location

2016-05-25 Thread Mantis Bug Tracker

The following issue has been SUBMITTED. 
== 
https://public.kitware.com/Bug/view.php?id=16108 
== 
Reported By:Andry81
Assigned To:
== 
Project:CMake
Issue ID:   16108
Category:   CPack
Reproducibility:always
Severity:   minor
Priority:   normal
Status: new
== 
Date Submitted: 2016-05-25 08:22 EDT
Last Modified:  2016-05-25 08:22 EDT
== 
Summary:get_prerequisites failed to locate installed
Microsoft Visual Studio if installed into not default location
Description: 
get_prerequisites could not find dumpbin.exe and has tried to use unexisted
objdump.exe

Reason: get_prerequisites (share/cmake-3.5/Modules/GetPrerequisites.cmake) does
search Microsoft Visual Studio incorrectly

Steps to Reproduce: 
1. make sure that all versions of Microsoft Visual Studio has installed into not
default locations

2. run cpack after cmake in the cmake build directory:
>cmake .
>cmake --build . --config release
>cpack -V --config CPackConfig.cmake .

3. observe messages "CPack Verbose: warning: could not find 'objdump' - cannot
analyze prerequisites..."

Additional Information: 
To fix it replace this in the "share/cmake-3.5/Modules/GetPrerequisites.cmake"
file:
  set(gp_cmd_paths ${gp_cmd_paths}
"C:/Program Files/Microsoft Visual Studio 9.0/VC/bin"
"C:/Program Files (x86)/Microsoft Visual Studio 9.0/VC/bin"
"C:/Program Files/Microsoft Visual Studio 8/VC/BIN"
"C:/Program Files (x86)/Microsoft Visual Studio 8/VC/BIN"
"C:/Program Files/Microsoft Visual Studio .NET 2003/VC7/BIN"
"C:/Program Files (x86)/Microsoft Visual Studio .NET 2003/VC7/BIN"
"/usr/local/bin"
"/usr/bin"
)

To something like this:
  set(gp_cmd_paths ${gp_cmd_paths}
   
[HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\VisualStudio\\14.0;InstallDir]/../../VC/bin
   
[HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\VisualStudio\\12.0;InstallDir]/../../VC/bin
   
[HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\VisualStudio\\11.0;InstallDir]/../../VC/bin
   
[HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\VisualStudio\\10.0;InstallDir]/../../VC/bin
   
[HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\VisualStudio\\9.0;InstallDir]/../../VC/bin
   
[HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\VisualStudio\\8.0;InstallDir]/../../VC/bin
   
[HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\VisualStudio\\7.1;InstallDir]/../../VC7/bin
   
[HKEY_LOCAL_MACHINE\\SOFTWARE\\Wow6432Node\\Microsoft\\VisualStudio\\14.0;InstallDir]/../../VC/bin
   
[HKEY_LOCAL_MACHINE\\SOFTWARE\\Wow6432Node\\Microsoft\\VisualStudio\\12.0;InstallDir]/../../VC/bin
   
[HKEY_LOCAL_MACHINE\\SOFTWARE\\Wow6432Node\\Microsoft\\VisualStudio\\11.0;InstallDir]/../../VC/bin
   
[HKEY_LOCAL_MACHINE\\SOFTWARE\\Wow6432Node\\Microsoft\\VisualStudio\\10.0;InstallDir]/../../VC/bin
   
[HKEY_LOCAL_MACHINE\\SOFTWARE\\Wow6432Node\\Microsoft\\VisualStudio\\9.0;InstallDir]/../../VC/bin
   
[HKEY_LOCAL_MACHINE\\SOFTWARE\\Wow6432Node\\Microsoft\\VisualStudio\\8.0;InstallDir]/../../VC/bin
   
[HKEY_LOCAL_MACHINE\\SOFTWARE\\Wow6432Node\\Microsoft\\VisualStudio\\7.1;InstallDir]/../../VC7/bin
"C:/Program Files/Microsoft Visual Studio 9.0/VC/bin"
"C:/Program Files (x86)/Microsoft Visual Studio 9.0/VC/bin"
"C:/Program Files/Microsoft Visual Studio 8/VC/BIN"
"C:/Program Files (x86)/Microsoft Visual Studio 8/VC/BIN"
"C:/Program Files/Microsoft Visual Studio .NET 2003/VC7/BIN"
"C:/Program Files (x86)/Microsoft Visual Studio .NET 2003/VC7/BIN"
"/usr/local/bin"
"/usr/bin"
)

== 

Issue History 
Date ModifiedUsername   FieldChange   
== 
2016-05-25 08:22 Andry81New Issue
==

-- 

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


Re: [CMake] C header file cross dependency

2016-05-25 Thread Patrick Boettcher
On Mon, 23 May 2016 13:49:14 +
Wagner Martin  wrote:

> Hi @all,
> 
> I'm quite new to CMake. If I've made a mistake or something is much
> easier to solve, please tell me.
> 
> I'd like to use CMake in embedded development (Build System: Linux,
> Target: ARM Microcontroller) to get rid of complicated makefiles.

Good thing! 

> We're building multiple devices where stuff like embedded rtos and
> peripheral drivers are identical, so I'd like to separate this part
> from the user application. I've achieved that by creating an object
> library out of all source and header files, and packing those files
> using CPack. This archive is then statically linked against the user
> application.
> 
> So far this worked fine. However, now I have to use driver functions
> in the rtos source code and vice versa, resulting in
> cross-dependencies for header files:
> 
> 
> 
> #include uart.h
> #include terminal.h
> 
> function() {}
> 
> 
> 
> #include terminal.h
> #include uart.h
> 
> function() {}
> 
> How do I resolve something like this? Right now CMake evaluates the
> compiler includes in the order that subdirectories are added. This
> gives me an compilation error in uart.c that terminal.h cannot be
> found.

This is not a cmake-problem, but seems to be a code-structure-issue.

I'm guessing here: if terminal needs the uart-code shouldn't it be the
uart-code filling in a terminal-function. Interface vs. implementation?
Could you elaborate more on how terminal and uart are linked?

Regarding cmake: I suggest you stop using include_directories() and
start using target_include_directories() and
target_compile_definitions() instead of add_definitions().

Limiting yourself to this way of doing libraries and targets, cmake will
force you to structure your code in a more standard way - and will
provide you with clean visibility between different targets.

Could you provide a working, stripped down example to show the problem
provided via github (in an example repo).

More comments below.
 
> Some excerpt of my project. I've tried to keep the example as simple
> as possible.
> 
> My directory structure looks something like that:
> /
> CMakeLists.txt
> src +
> +CMakeLists.txt(1)
> +drivers+
> |   +uart.c
> |   +uart.h
> |   +...
> |   +CMakeLists.txt(2)
> +os-+
> |   +terminal.c
> |   +terminal.h
> |   +...
> |   +CMakeLists.txt(3)
> 
> 
> (1):
> 
> SET(drivers "drivers")
> SET(terminal "terminal")
> 
> SET(drivers_lib ${drivers})
> SET(terminal_lib ${terminal})
> 
> SET(ARCHIVE_INSTALL_DIR lib)
> SET(INCLUDE_INSTALL_DIR include)
> 
> SET(headers_private "_headers_private") # internal headers
> SET(headers_public "_headers_public")   # public headers go into
> package
> 
> ADD_SUBDIRECTORY(${drivers})
> ADD_SUBDIRECTORY(${terminal})

I think it is common practice now to use lower-case for cmake-commands
now. 

> ## drivers
> 
> ##  Sources
> ---
> SET(sources "uart.c"
> )
> 
> ##  Header includes
> ---
> SET(headers "${CMAKE_CURRENT_SOURCE_DIR}/" 
> )
> SET(${drivers}${headers_public} ${headers} PARENT_SCOPE)
> 
> INCLUDE_DIRECTORIES(${headers} 
> ${${terminal}${headers_public}}
> )

While the ${${var}${var2}} (seems to) work, it is error-prone, IMHO.

Standard cmake-commands can work with relative paths and are evaluating
them correctly taking into account ${CMAKE_CURRENT_SOURCE_DIR} (most of
the time. So you could use ../uart in terminal/ - but it would be
better if it comes indirectly via target_include_directories() and
target_link_libraries()

>[..]
> 
> And finally this creates the package in root directory CMakeLists.txt:
> 
> SET(CPACK_PROJECT_CONFIG_FILE ${CMAKE_BINARY_DIR}/CPackOptions.cmake)
> # CPackOptions.cmake contains package file name SET(CPACK_GENERATOR
> "TBZ2") INCLUDE(CPack)

Due to the circular header-dependency the binaries of terminal and uart
should have the same mutual dependency. In this case you could build
them in within one target.

regards
--
Patrick.

-- 

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] linking OBJECT libraries : Argument list too long

2016-05-25 Thread Biddiscombe, John A.
When building OpenBLAS on OSX, the link line generated contains around 350K of 
text, and the max supported arg length is
getconf ARG_MAX  - returns 262144.
This causes the link phase to abort with
Error running link command: Argument list too long

The reason for the problem is that many libraries of Type OBJECT are built and 
produce huge numbers of object files are then added to one very large list 
which is then passed to the linker.

I implemented a simple(ish) fix, that doesn't quite work - for each 
subdirectory that generates object files, I set the CMAKE_FILES_DIRECTORY and 
specify the binary directory where the build should go using a single character 
counter 0,1,2,3,4 which is much shorter than the target name and it reduces the 
final arg size down almost enough

set(COUNTER_ 0)
foreach (SUBDIR ${SUBDIRS})
  set(CMAKE_FILES_DIRECTORY "/${COUNTER_}")
  add_subdirectory(${SUBDIR} ${CMAKE_BINARY_DIR}/${COUNTER_})
.
  MATH(EXPR COUNTER_ "${COUNTER_}+1")
endforeach ()

example : make driver_level2 target
[  0%] Building C object 
OpenBLAS/driver/level2/CMakeFiles/driver_level2.dir/CMakeFiles/ssbmv_U.c.o
becomes
[  0%] Building C object 1/CMakeFiles/driver_level2.dir/1/ssbmv_U.c.o

and the link line is correspondingly shorter as the driver_level2 has been 
replaced in 2 places. The problem is that there is still an extra 
"CMakeFiles/driver_level2.dir" in the path to the object file that I would like 
to shorten/remove.

How can I do that?

NB. I am aware that I can turn the OBJECT libraries into normal libraries and 
link them conventionally, but I'd like to make this path shortening method work.

Thanks

JB
--
John Biddiscombe,email:biddisco @.at.@ cscs.ch
http://www.cscs.ch/
CSCS, Swiss National Supercomputing Centre  | Tel:  +41 (91) 610.82.07
Via Trevano 131, 6900 Lugano, Switzerland   | Fax:  +41 (91) 610.82.82

-- 

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] [Patch] Updated FindMatlab.cmake for Matlab R2016a

2016-05-25 Thread Francesco Romano
Added check of Matlab 2016a (9.0) to FindMatlab.cmake





0001-FindMatlab.cmake-Added-support-to-Matlab-2016a-9.0.patch
Description: Binary data
-- 

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