[Cmake-commits] CMake branch, next, updated. v3.5.0-rc1-14-gc29302b

2016-02-03 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  c29302b3f3ff6ca0822afe0a19c66bad12542ac9 (commit)
   via  8e0dd2f2b1a9fb315475914d1716c34acf4ce9db (commit)
  from  72a585d3534616b0cf4b241d3b6eeb50f44da79a (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=c29302b3f3ff6ca0822afe0a19c66bad12542ac9
commit c29302b3f3ff6ca0822afe0a19c66bad12542ac9
Merge: 72a585d 8e0dd2f
Author: Brad King 
AuthorDate: Wed Feb 3 16:13:59 2016 -0500
Commit: CMake Topic Stage 
CommitDate: Wed Feb 3 16:13:59 2016 -0500

Merge topic 'install-EXCLUDE_FROM_ALL' into next

8e0dd2f2 Revert topic 'install-EXCLUDE_FROM_ALL'


https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=8e0dd2f2b1a9fb315475914d1716c34acf4ce9db
commit 8e0dd2f2b1a9fb315475914d1716c34acf4ce9db
Author: Brad King 
AuthorDate: Wed Feb 3 16:13:26 2016 -0500
Commit: Brad King 
CommitDate: Wed Feb 3 16:13:34 2016 -0500

Revert topic 'install-EXCLUDE_FROM_ALL'

The test infrastructure needs more work to pass everywhere.

diff --git a/Help/command/install.rst b/Help/command/install.rst
index e0e18f2..5d2add7 100644
--- a/Help/command/install.rst
+++ b/Help/command/install.rst
@@ -45,9 +45,9 @@ signatures that specify them.  The common options are:
   is associated, such as "runtime" or "development".  During
   component-specific installation only install rules associated with
   the given component name will be executed.  During a full installation
-  all components are installed unless marked with EXCLUDE_FROM_ALL.
-  If ``COMPONENT`` is not provided a default component "Unspecified" is
-  created.  The default component name may be controlled with the
+  all components are installed.  If ``COMPONENT`` is not provided a
+  default component "Unspecified" is created.  The default component
+  name may be controlled with the
   :variable:`CMAKE_INSTALL_DEFAULT_COMPONENT_NAME` variable.
 
 ``RENAME``
@@ -76,8 +76,7 @@ Installing Targets
[PERMISSIONS permissions...]
[CONFIGURATIONS [Debug|Release|...]]
[COMPONENT ]
-   [OPTIONAL] [EXCLUDE_FROM_ALL]
-   [NAMELINK_ONLY|NAMELINK_SKIP]
+   [OPTIONAL] [NAMELINK_ONLY|NAMELINK_SKIP]
   ] [...])
 
 The ``TARGETS`` form specifies rules for installing targets from a
diff --git a/Help/release/dev/install-EXCLUDE_FROM_ALL.rst 
b/Help/release/dev/install-EXCLUDE_FROM_ALL.rst
deleted file mode 100644
index a611eae..000
--- a/Help/release/dev/install-EXCLUDE_FROM_ALL.rst
+++ /dev/null
@@ -1,5 +0,0 @@
-install-EXCLUDE_FROM_ALL
-
-
-* The :command:`install` command learned a new ``EXCLUDE_FROM_ALL`` option
-  to leave installation rules out of the default installation.
diff --git a/Source/cmInstallCommand.cxx b/Source/cmInstallCommand.cxx
index aa92d74..15a83ee 100644
--- a/Source/cmInstallCommand.cxx
+++ b/Source/cmInstallCommand.cxx
@@ -33,7 +33,6 @@ static cmInstallTargetGenerator* 
CreateInstallTargetGenerator(cmTarget& target,
 impLib, args.GetPermissions().c_str(),
 args.GetConfigurations(), args.GetComponent().c_str(),
 message,
-args.GetExcludeFromAll(),
 args.GetOptional() || forceOpt);
 }
 
@@ -49,8 +48,7 @@ static cmInstallFilesGenerator* CreateInstallFilesGenerator(
 programs, args.GetPermissions().c_str(),
 args.GetConfigurations(), args.GetComponent().c_str(),
 message,
-args.GetExcludeFromAll(), args.GetRename().c_str(),
-args.GetOptional());
+args.GetRename().c_str(), args.GetOptional());
 }
 
 
@@ -119,7 +117,6 @@ bool 
cmInstallCommand::HandleScriptMode(std::vector const& args)
   int componentCount = 0;
   bool doing_script = false;
   bool doing_code = false;
-  bool exclude_from_all = false;
 
   // Scan the args once for COMPONENT. Only allow one.
   //
@@ -131,10 +128,6 @@ bool 
cmInstallCommand::HandleScriptMode(std::vector const& args)
 ++i;
 component = args[i];
 }
-if(args[i] == "EXCLUDE_FROM_ALL")
-  {
-  exclude_from_all = true;
-  }
 }
 
   if(componentCount>1)
@@ -182,7 +175,7 @@ bool 
cmInstallCommand::HandleScriptMode(std::vector const& args)
 }
   this->Makefile->AddInstallGenerator(
 new cmInstallScriptGenerator(script.c_str(), false,
-

Re: [CMake] Is there any way to use clang-cl with MSBuild on Windows?

2016-02-03 Thread Gilles Khouzam
Hi Yi-Hong,

I think that this is an issue that was recently fix in CMake which is not in 
our fork. I’ll look at pulling in this change in our branch.

From: Yi-Hong Lyu [mailto:b95705...@ntu.edu.tw]
Sent: Wednesday, February 3, 2016 11:46
To: Gilles Khouzam 
Cc: Nicholas Braden ; cmake@cmake.org
Subject: Re: [CMake] Is there any way to use clang-cl with MSBuild on Windows?

Hello Gilles,

Here it is:

PS > cmake -G "Visual Studio 14 2015" -T v140_clang_3_7 -DLLVM_PATH="E:\\llvm" 
-DCMAKE_SYSTEM_VERSION=8.1  
-DCMAKE_C_COMPILER="E:\\e2tools\\ext-tools\\llvm\\clang-cl.exe" 
-DCMAKE_CXX_COMPILER="E:\\e2tools\\ext-tools\\llvm\\clang-cl.exe" ..\src\
-- The CXX compiler identification is unknown
-- The C compiler identification is unknown
-- Check for working CXX compiler using: Visual Studio 14 2015
-- Check for working CXX compiler using: Visual Studio 14 2015 -- broken
CMake Error at E:/CMake/clang_3_7/Modules/CMakeTestCXXCompiler.cmake:54 
(message):
  The C++ compiler "E:\e2tools\ext-tools\llvm\clang-cl.exe" is not able to
  compile a simple test program.

  It fails with the following output:

   Change Dir: E:/libcxx/b-libcxx-Cascade-msbuild2/CMakeFiles/CMakeTmp

  Run Build Command:"C:/Program Files (x86)/MSBuild/14.0/bin/MSBuild.exe"
  "cmTC_00a23.vcxproj" "/p:Configuration=Debug" "/p:VisualStudioVersion=14.0"

  Microsoft (R) Build Engine version 14.0.24720.0

  C:\Program Files
  (x86)\MSBuild\Microsoft.Cpp\v4.0\V140\Microsoft.Cpp.Platform.targets(57,5):
  error MSB8020: The build tools for v140_clang_3_7 (Platform Toolset =
  'v140_clang_3_7') cannot be found.  To build using the v140_clang_3_7 build
  tools, please install v140_clang_3_7 build tools.  Alternatively, you may
  upgrade to the current Visual Studio tools by selecting the Project menu or
  right-click the solution, and then selecting "Retarget solution".
  [E:\libcxx\b-libcxx-Cascade-msbuild2\CMakeFiles\CMakeTmp\cmTC_00a23.vcxproj]

C:\Program Files 
(x86)\MSBuild\Microsoft.Cpp\v4.0\V140\Microsoft.Cpp.Platform.targets(57,5): 
error MSB8020: The build tools for v140_clang_3_7 (Platform Toolset = 
'v140_clang_3_7') cannot be found. To build using the v140_clang_3_7 build 
tools, please install v140_clang_3_7 build tools.  Alternatively, you may 
upgrade to the current Visual Studio tools by selecting the Project menu or 
right-click the solution, and then selecting "Retarget solution". 
[E:\libcxx\b-libcxx-Cascade-msbuild2\CMakeFiles\CMakeTmp\cmTC_00a23.vcxproj]

  0 warning
  1 error

  CMake will not be able to correctly generate this project.
Call Stack (most recent call first):
  CMakeLists.txt:17 (project)

-- Configuring incomplete, errors occurred!

PS. Part of the messages in Chinese are removed, please tell me if you need it 
as well

Thanks for your help,
Yi-Hong

2016-02-04 3:25 GMT+08:00 Gilles Khouzam 
>:
Hi Yi-Hong,

Can you try to add the following: -DCMAKE_SYSTEM_VERSION=8.1 to your parameters?
-- 

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] xyz_LIBRARIES

2016-02-03 Thread Craig Scott
On 4 February 2016 at 04:45, Adam Rankin  wrote:

> Hello all,
>
>
>
> I am trying to sort out a project with multiple layers of dependencies and
> I am trying to figure out the “right” way of configuring things.
>
>
>
> First easy question: Should a value xyz_LIBRARIES contain target names, or
> library file locations?
>

Preferably target names, assuming you mean imported targets (see answer to
next question).



>  Second question: Should a FindXYZ.cmake file add imported targets, or
> should a USE_xyz variable be created for later inclusion? (what if the
> project does not export its targets?)
>

Imported targets will be better for end users/developers. An imported
target can provide not just the library file location, it can also provide
other dependencies such as dependent libraries that also must be linked,
header search paths, etc. Furthermore, with an imported target you can
explicitly control what other targets are affected by these dependencies
simply by linking against your imported target. If you chose the USE_xyz
variable + include approach, then the include file will typically end up
calling  link_libraries(), link_directories() and/or include_directories()
commands and making those things apply to all targets defined thereafter,
which used to be the norm but is no longer necessary with all the
target_xxx() commands added in more recent versions of CMake (well, 2.8.11
or later).



>  Third question: How’s your day going today?
>

Ask me again after the coffee kicks in. :P


-- 
Craig Scott
Melbourne, Australia
http://crascit.com
-- 

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] Use unsigned int for cmLinkInterface:: and cmGeneratorTarget::Multiplicity

2016-02-03 Thread Christoph Grüninger
Dear Brad,
thanks for your advice. An accoring patch is attached.

> There is no reason to have negative values for that, so please update
> both cmLinkInterface::Multiplicity and cmGeneratorTarget::Multiplicity
> to use `unsigned int` and follow through with any further changes
> needed for that (I don't think there are any but have not checked).

There is a comparison to "count", which triggered another warning. I
have fixed that one, too.

Bye
Christoph
>From 42c934571ed0b04ec45ee58c3179aee78b3368f1 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Christoph=20Gr=C3=BCninger?= 
Date: Wed, 3 Feb 2016 23:22:38 +0100
Subject: [PATCH] Make cmLinkInterface:: and cmGeneratorTarget::Multiplicity
 unsigned ints

---
 Source/cmComputeLinkDepends.cxx | 2 +-
 Source/cmGeneratorTarget.h  | 2 +-
 Source/cmLinkItem.h | 2 +-
 3 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/Source/cmComputeLinkDepends.cxx b/Source/cmComputeLinkDepends.cxx
index 13098ad..2796fdf 100644
--- a/Source/cmComputeLinkDepends.cxx
+++ b/Source/cmComputeLinkDepends.cxx
@@ -931,7 +931,7 @@ cmComputeLinkDepends::MakePendingComponent(unsigned int component)
 //
 int cmComputeLinkDepends::ComputeComponentCount(NodeList const& nl)
 {
-  int count = 2;
+  unsigned int count = 2;
   for(NodeList::const_iterator ni = nl.begin(); ni != nl.end(); ++ni)
 {
 if(cmGeneratorTarget const* target = this->EntryList[*ni].Target)
diff --git a/Source/cmGeneratorTarget.h b/Source/cmGeneratorTarget.h
index d96a32c..65c29f5 100644
--- a/Source/cmGeneratorTarget.h
+++ b/Source/cmGeneratorTarget.h
@@ -599,7 +599,7 @@ private:
   {
 ImportInfo(): NoSOName(false), Multiplicity(0) {}
 bool NoSOName;
-int Multiplicity;
+unsigned int Multiplicity;
 std::string Location;
 std::string SOName;
 std::string ImportLibrary;
diff --git a/Source/cmLinkItem.h b/Source/cmLinkItem.h
index b603bcc..561293e 100644
--- a/Source/cmLinkItem.h
+++ b/Source/cmLinkItem.h
@@ -73,7 +73,7 @@ struct cmLinkInterface: public cmLinkInterfaceLibraries
 
   // Number of repetitions of a strongly connected component of two
   // or more static libraries.
-  int Multiplicity;
+  unsigned int Multiplicity;
 
   // Libraries listed for other configurations.
   // Needed only for OLD behavior of CMP0003.
-- 
2.6.2

-- 

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] Finding Packages Installed in Non-Standard Locations

2016-02-03 Thread Alexander Neundorf
On Wednesday, February 03, 2016 13:08:42 Andrew Bell wrote:
> If my package is installed to a non-standard location, my
> Config.cmake file is currently also installed to the non-standard
> location and can't be found by dependent projects.
> 
> I see that there's export(PACKAGE ), but this creates an entry in
> the registry for the build location of the PROJECT rather than the
> installed location.
> 
> Is there some way I can install target files to a non-standard location but
> be sure that Config.cmake can be found without explicitly
> installing it into something like /usr/lib/cmake/PROJECT?

you can set the CMAKE_PREFIX_PATH environment variable.

Alex

-- 

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] CMake 3.5.0-rc1 install is missing dependencies

2016-02-03 Thread Konstantin Podsvirov
Meet the fresh update online installers (CMake3.5.3.5.20160203):

http://ifw.podsvirov.pro/cmake/cmake-master-win32-online.exe

and

http://ifw.podsvirov.pro/cmake/cmake-master-win64-online.exe

If you have used them previously, then just update via "CMake Maintenance Tool".

These installers were collected and razvernut using AppVeyor:

https://ci.appveyor.com/project/podsvirov/cmake/build/3.5-26

03.02.2016, 21:36, "Brad King" :
> On 02/03/2016 11:19 AM, Thompson, KT wrote:
>> The Windows installation doesn't appear to provide all the
>> required dependencies. ‘cmake-gui’ will not launch and provides
>> the error “Qt5Widgets.dll is missing form your computer.”
>
> Ugh, after months of working correctly on the nightly binary builds
> something happened to go wrong on the packaging machine specifically
> for this release build due to an environment change. I've fixed it
> and replaced the binary on the download site for the Windows build.
> Please download and try again.
>
> -Brad

I tried the installer:

https://cmake.org/files/v3.5/cmake-3.5.0-rc1-win32-x86.msi

He asked me to install CMake on your way:

C:\Program Files (x86)\Canon\Easy-WebPrint EX\

:-) (something and somewhere went wrong...)

I changed to:

C:\Program Files (x86)\CMake\

And installed as usual.

In the Start menu I have a folder of CMake (although the old NSIS installer 
would create a folder CMake 3.5.0-rc1)

I then used just installed cmake to create installers based on IFW generator.

I built these offline installers:

http://ifw.podsvirov.pro/cmake/files/v3.5/cmake-3.5.0-rc1-win32-x86.exe

and

http://ifw.podsvirov.pro/cmake/files/v3.5/cmake-3.5.0-rc1-win64-x64.exe

In all cases I was using MSVC2013 and Qt5.5.1 for cmake-gui.
For me everything works fine.

I ask all those interested. To test the results and to share lessons learned.

Together we will make CMake better!!!

Regards,
Konstantin Podsvirov
-- 

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] install(EXCLUDE_FROM_ALL) new feature - request for comment

2016-02-03 Thread Brad King
On 02/03/2016 02:31 PM, Brad King wrote:
>  install: Add EXCLUDE_FROM_ALL option (#14921)
>  https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=0b6c4729
> 
>  Tests: Add cases for install() command EXCLUDE_FROM_ALL option
>  https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=670fa897

I've had to revert it from 'next' pending some corrections to how
the test infrastructure checks the installation results to work
more portably.  I'll respond again once that is fixed and the
topic draft is restored.  Meanwhile please work on the documentation
updates.

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


Re: [CMake] xyz_LIBRARIES

2016-02-03 Thread Adam Rankin
Ok, that makes sense to me. What I’m seeing though, is that find modules and 
xyzConfig files for some software packages do not make a variable available 
that contains just target names. Xyz_LIBRARIES contains full path file 
locations.

This is my immediate frustration with leptonica for example. The config file it 
creates does not output a list of targets, and even if it did, it doesn’t 
dynamically build the list of targets depending on what dependencies it finds 
(libpng, libjpeg, etc…)

I think I will fork and rewrite the leptonica cmake file to properly expose 
target names.

Thanks,
Adam

From: Craig Scott [mailto:audiofana...@gmail.com]
Sent: Wednesday, February 03, 2016 4:26 PM
To: Adam Rankin 
Cc: cmake@cmake.org
Subject: Re: [CMake] xyz_LIBRARIES



On 4 February 2016 at 04:45, Adam Rankin 
> wrote:
Hello all,

I am trying to sort out a project with multiple layers of dependencies and I am 
trying to figure out the “right” way of configuring things.

First easy question: Should a value xyz_LIBRARIES contain target names, or 
library file locations?

Preferably target names, assuming you mean imported targets (see answer to next 
question).


 Second question: Should a FindXYZ.cmake file add imported targets, or should a 
USE_xyz variable be created for later inclusion? (what if the project does not 
export its targets?)

Imported targets will be better for end users/developers. An imported target 
can provide not just the library file location, it can also provide other 
dependencies such as dependent libraries that also must be linked, header 
search paths, etc. Furthermore, with an imported target you can explicitly 
control what other targets are affected by these dependencies simply by linking 
against your imported target. If you chose the USE_xyz variable + include 
approach, then the include file will typically end up calling  
link_libraries(), link_directories() and/or include_directories() commands and 
making those things apply to all targets defined thereafter, which used to be 
the norm but is no longer necessary with all the target_xxx() commands added in 
more recent versions of CMake (well, 2.8.11 or later).


 Third question: How’s your day going today?

Ask me again after the coffee kicks in. :P


--
Craig Scott
Melbourne, Australia
http://crascit.com
-- 

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] [CMake 0015952]: '$' becomes '$$' in compile_commands.json

2016-02-03 Thread Mantis Bug Tracker

The following issue has been SUBMITTED. 
== 
https://cmake.org/Bug/view.php?id=15952 
== 
Reported By:Chaoren Lin
Assigned To:
== 
Project:CMake
Issue ID:   15952
Category:   CMake
Reproducibility:always
Severity:   minor
Priority:   normal
Status: new
== 
Date Submitted: 2016-02-03 20:13 EST
Last Modified:  2016-02-03 20:13 EST
== 
Summary:'$' becomes '$$' in compile_commands.json
Description: 
If your compile command contains a '$' character, it'll be incorrectly emitted
as '$$' in compile_commands.json if CMAKE_EXPORT_COMPILE_COMMANDS is enabled.

Steps to Reproduce: 
1) extract example.zip
2) cd example && cmake -DCMAKE_EXPORT_COMPILE_COMMANDS=True .
3) make VERBOSE=1
4) see that the compile command is

/usr/bin/cc  -DFOO="\"\$\""   -o CMakeFiles/foo.dir/foo.c.o   -c
/tmp/cmake/foo.c

5) open up compile_commands.json
6) see

"command": "/usr/bin/cc  -DFOO=\"\\\"\\$$\\\"\"-o CMakeFiles/foo.dir/foo.c.o
  -c /tmp/cmake/foo.c"

which is wrong, since it should be $ instead of $$.
== 

Issue History 
Date ModifiedUsername   FieldChange   
== 
2016-02-03 20:13 Chaoren LinNew Issue
2016-02-03 20:13 Chaoren LinFile Added: example.zip  
==

-- 

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] Is there any way to use clang-cl with MSBuild on Windows?

2016-02-03 Thread Steven Stallion
A selfish request: would it be possible to slip this into the 3.5
release? This is something that I (and the company I work for) are
very interested in, and I would like to avoid pulling a fork into our
workstream.

Cheers,

Steve

On Mon, Feb 1, 2016 at 8:47 AM, Gilles Khouzam
 wrote:
> Hi Yi-Long
>
>
> Clang-Cl requires a few changes in order to work properly,
>
>
> I've prototyped the support for Clang-Cl on our CMake fork with the plan to
> integrate the support once we've got good confirmation and work through some
> of the design issues.
>
>
> You can find the code on
> https://github.com/microsoft/cmake/tree/feature/clang_3_7
>
>
> You can also find an installer here:
> https://github.com/Microsoft/CMake/releases
>
>
> The easiest way to set Clang as the compiler is to use the -T parameter such
> as
>
> cmake -G "Visual Studio 14 2015" -T v140_clang_3_7 ...
>
>
> But I've also added a new variable VS_PLATFORM_TOOLSET_OVERRIDE that you can
> use to change the toolset for a specific target (there are scenarios where
> you need CL and Clang targeting different projects in your solution).
>
>
> Thanks
>
>
> ~Gilles
>
> 
> From: CMake  on behalf of Yi-Hong Lyu
> 
> Sent: Sunday, January 31, 2016 10:47:58 AM
> To: Nicholas Braden
> Cc: cmake@cmake.org
> Subject: Re: [CMake] Is there any way to use clang-cl with MSBuild on
> Windows?
>
> Hello Bill,
>
> If I generate the ALL_BUILD.vcxproj for MSVC 19.0.23506.0 as usual, I can
> use command "msbuild ALL_BUILD.vcxproj /p:cltoolexe=clang-cl" to build the
> project using clang-cl. However it might include wrong directory like
> C:\\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt during
> building when I build library libcxx. Is there any way to overwrite
> variables such as ExcludePath, IncludePath, UniversalCRT_IncludePath and
> VC_IncludePath?
>
> Hello Nicholas,
>
> Which value should I put for -T parameter?
>
> BTW, is CMAKE_TOOLCHAIN_FILE able to used in this situation?
>
> Thanks
>
> 2016-01-30 8:33 GMT+08:00 Nicholas Braden :
>>
>> Have you tried setting the toolset? The -T parameter can set the
>> toolset. This sets the platform toolset property that you would
>> normally set in Visual Studio. if Visual Studio lets you select the
>> llvm platform toolset, so will CMake.
>>
>> On Fri, Jan 29, 2016 at 12:04 PM, Yi-Hong Lyu 
>> wrote:
>> > Hello everyone,
>> >
>> > I am a newbie of CMake. I would like to use clang-cl with MSBuild on
>> > Windows. However it always use MSVC 19.0.23506.0 as the identified
>> > compiler
>> > even I defined CMAKE_C_COMPILER / CMAKE_CXX_COMPILER /
>> > CMAKE_C_COMPILER_FORCED / CMAKE_CXX_COMPILER_FORCED:
>> >
>> > $ cmake -DCMAKE_C_COMPILER=clang-cl -DCMAKE_CXX_COMPILER=clang-cl
>> > -DCMAKE_C_COMPILER_FORCED=ON -DCMAKE_CXX_COMPILER_FORCED=ON ..\src\
>> > -- Building for: Visual Studio 14 2015
>> > -- The CXX compiler identification is MSVC 19.0.23506.0
>> > -- The C compiler identification is MSVC 19.0.23506.0
>> > -- Configuring for standalone build.
>> > -- Found PythonInterp: C:/Python34/python.exe (found version "3.4.4")
>> > -- Sphinx disabled.
>> > .
>> > .
>> > .
>> >
>> > PS. The environment PATH is already set to clang-cl.
>> >
>> > I am wondering whether there is any option that I can force MSBuild use
>> > clang-cl instead.
>> >
>> > Thanks,
>> > Yi-Hong
>> >
>> > --
>> >
>> > 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
>
>
>
> --
>
> 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
-- 

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 

[CMake] CMake 3.5.0-rc1 install is missing dependencies

2016-02-03 Thread Thompson, KT
I downloaded cmake 3.5.0-rc1 to try it out.

The Windows installation doesn’t appear to provide all the required 
dependencies. ‘cmake-gui’ will not launch and provides the error 
“Qt5Widgets.dll is missing form your computer.” Do I need to install a specific 
Qt runtime before installing cmake 3.5? The command line ‘cmake’ will run 
through the configuration of my projects, but it does not generate any VS 
solution files.

On RHEL 6.7, I extracted the prebuilt x86_64 binaries from the downloaded 
.tar.gz file.  At the end of the configuration process, cmake issues a 
segmentation fault and no Makefiles are generated.  Additionally, cmake-gui 
uses a bad font (all text is displayed as boxes).

Is anyone else encountering these issues with 3.5.0-rc1?

-kt

-- 

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] Execute command after project generation

2016-02-03 Thread Petr Kmoch
Hi Nicolas.

Last time I asked for something like that, it was rejected:
http://public.kitware.com/Bug/view.php?id=13020

But maybe the stance could change on that? After all, I don't think CMake
would want to cater for every possible postprocessing anyone needs. Perhaps
it could be considered if a big warning "May not be forward compatible" was
attached to it?

Petr

On Fri, Jan 29, 2016 at 8:13 PM, Nicolas Schneider 
wrote:

> Is it possible to execute commands after the generation step of the
> project files?
>
> I want to set custom properties in the generated Visual Studio project,
> because it should be built as a driver, which requires a few extra steps.
> These changes should be done automatically by CMake (or a script run
> after project generation) to be in sync between all developers.
>
> I also tried just setting the properties with something like: cmake
> --build . -- /p:FilesToPackage="a;b;c"
>
> But it seems like CMake does not pass the command as raw string, because
> msbuild complains about non-existing property, like it does when called
> directly without quotes: msbuild project /p:FilesToPackage=a;b;c
> which would treat 'b' as a property key instead of part of the value for
> FilesToPackage.
>
> The only workaround, currently, is to use:
> cmake ..
> modifyProjects.py
> cmake --build .
>
> However, I assume this does not work correctly if CMake regenerates the
> project files because of changes in CMakeLists (because
> modifyProjects.py will not be called automatically by CMake), correct?
> --
>
> 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
>
-- 

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] Is there any way to use clang-cl with MSBuild on Windows?

2016-02-03 Thread Gilles Khouzam
Hi Yi-Hong,

I’ve updated our branch to include the fix to not require the Windows 10 SDK. 
But I think that I misunderstood what you had meant by Clang-CL.

The support I added was for Clang with the Microsoft CodeGen engine which is 
included in Visual Studio 2015 Update 1, what’s where the v140_clang_3_7 is 
specified.

You can try the LLVM-vs2013 toolset and that might work (looking at 
http://llvm.org/devmtg/2014-04/PDFs/Talks/clang-cl.pdf). Can you create a 
sample project in VS and look at the toolset selection and select the one you 
want and specify that as the toolset for CMake?

From: Gilles Khouzam
Sent: Wednesday, February 3, 2016 14:17
To: 'Yi-Hong Lyu' 
Cc: Nicholas Braden ; cmake@cmake.org
Subject: RE: [CMake] Is there any way to use clang-cl with MSBuild on Windows?

Hi Yi-Hong,

I think that this is an issue that was recently fix in CMake which is not in 
our fork. I’ll look at pulling in this change in our branch.

From: Yi-Hong Lyu [mailto:b95705...@ntu.edu.tw]
Sent: Wednesday, February 3, 2016 11:46
To: Gilles Khouzam 
>
Cc: Nicholas Braden 
>; 
cmake@cmake.org
Subject: Re: [CMake] Is there any way to use clang-cl with MSBuild on Windows?

Hello Gilles,

Here it is:

PS > cmake -G "Visual Studio 14 2015" -T v140_clang_3_7 -DLLVM_PATH="E:\\llvm" 
-DCMAKE_SYSTEM_VERSION=8.1  
-DCMAKE_C_COMPILER="E:\\e2tools\\ext-tools\\llvm\\clang-cl.exe" 
-DCMAKE_CXX_COMPILER="E:\\e2tools\\ext-tools\\llvm\\clang-cl.exe" ..\src\
-- The CXX compiler identification is unknown
-- The C compiler identification is unknown
-- Check for working CXX compiler using: Visual Studio 14 2015
-- Check for working CXX compiler using: Visual Studio 14 2015 -- broken
CMake Error at E:/CMake/clang_3_7/Modules/CMakeTestCXXCompiler.cmake:54 
(message):
  The C++ compiler "E:\e2tools\ext-tools\llvm\clang-cl.exe" is not able to
  compile a simple test program.

  It fails with the following output:

   Change Dir: E:/libcxx/b-libcxx-Cascade-msbuild2/CMakeFiles/CMakeTmp

  Run Build Command:"C:/Program Files (x86)/MSBuild/14.0/bin/MSBuild.exe"
  "cmTC_00a23.vcxproj" "/p:Configuration=Debug" "/p:VisualStudioVersion=14.0"

  Microsoft (R) Build Engine version 14.0.24720.0

  C:\Program Files
  (x86)\MSBuild\Microsoft.Cpp\v4.0\V140\Microsoft.Cpp.Platform.targets(57,5):
  error MSB8020: The build tools for v140_clang_3_7 (Platform Toolset =
  'v140_clang_3_7') cannot be found.  To build using the v140_clang_3_7 build
  tools, please install v140_clang_3_7 build tools.  Alternatively, you may
  upgrade to the current Visual Studio tools by selecting the Project menu or
  right-click the solution, and then selecting "Retarget solution".
  [E:\libcxx\b-libcxx-Cascade-msbuild2\CMakeFiles\CMakeTmp\cmTC_00a23.vcxproj]

C:\Program Files 
(x86)\MSBuild\Microsoft.Cpp\v4.0\V140\Microsoft.Cpp.Platform.targets(57,5): 
error MSB8020: The build tools for v140_clang_3_7 (Platform Toolset = 
'v140_clang_3_7') cannot be found. To build using the v140_clang_3_7 build 
tools, please install v140_clang_3_7 build tools.  Alternatively, you may 
upgrade to the current Visual Studio tools by selecting the Project menu or 
right-click the solution, and then selecting "Retarget solution". 
[E:\libcxx\b-libcxx-Cascade-msbuild2\CMakeFiles\CMakeTmp\cmTC_00a23.vcxproj]

  0 warning
  1 error

  CMake will not be able to correctly generate this project.
Call Stack (most recent call first):
  CMakeLists.txt:17 (project)

-- Configuring incomplete, errors occurred!

PS. Part of the messages in Chinese are removed, please tell me if you need it 
as well

Thanks for your help,
Yi-Hong

2016-02-04 3:25 GMT+08:00 Gilles Khouzam 
>:
Hi Yi-Hong,

Can you try to add the following: -DCMAKE_SYSTEM_VERSION=8.1 to your parameters?
-- 

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, master, updated. v3.5.0-rc1-4-gbfd1b3a

2016-02-03 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  bfd1b3aabaa9a2ec46ca6ebfa50d56dfa8846fb3 (commit)
  from  a58abc69c23ef30fc2215eb72878af29f7e860fd (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=bfd1b3aabaa9a2ec46ca6ebfa50d56dfa8846fb3
commit bfd1b3aabaa9a2ec46ca6ebfa50d56dfa8846fb3
Author: Kitware Robot <kwro...@kitware.com>
AuthorDate: Thu Feb 4 00:01:04 2016 -0500
Commit: Kitware Robot <kwro...@kitware.com>
CommitDate: Thu Feb 4 00:01:04 2016 -0500

CMake Nightly Date Stamp

diff --git a/Source/CMakeVersion.cmake b/Source/CMakeVersion.cmake
index 9539c49..fc7bd9f 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 20160203)
+set(CMake_VERSION_PATCH 20160204)
 #set(CMake_VERSION_RC 1)

---

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


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


Re: [CMake] Help for a cmake newbie

2016-02-03 Thread Petr Kmoch
Hi Vadtec.

*The* standard CMake way of dealing with building your dependencies is the
ExternalProject module (
https://cmake.org/cmake/help/latest/module/ExternalProject.html ). It's a
huge beast, but I belive there are some examples and tutorials available
out there.

The gist is: you create a top-level, "superbuild" CMakeLists.txt file which
will contain only the uses of ExternalProject_Add, one for each dependency,
and *one for you own project as well.* The dependencies can be downloaded,
patched, builtt, installed, etc., depending on the parameters you pass to
ExternalProject_Add. They do not have to be CMake-based; when they are not,
simply provide an empty (or otherwise project-specific) CONFIGURE_COMMAND
argument.

When CMake is run on the superbuild, it generates a buildsystem such that
building it downloads, builds, installs, etc. the external projects. All of
this happens at build time, not at CMake time.

This way, you have full control over which dependencies you build in what
order, where they get installed etc. Of course, in your case with
dependency sources shipped, you don't need a download step (or perhaps
maybe just to unpack them).

Once you've successfully built the superbuild once, all the dependencies
are ready, and your own project (which you've set up as just another
external project) is configured and all its dependencies are in locations
which you've specified. Now you switch into the binary directory
corresponding to your project and no longer need to work in the superbuild
- each external project is self-contained in that it can be used directly
as well, without having to go through the superbuild.

On a very symbolic level, an external project setup can look something like
this:

root/CMakeLists.txt:
project(SuperBuild)
include(ExternalProject)

ExternalProject_Add(
  LibraryWeNeed
  PREFIX deps/LibraryWeNeed
  DOWNLOAD_COMMAND somehow_unpack
${CMAKE_CURRENT_SOURCE_DIR}/deps/LibraryWeNeed.tgz --into
${CMAKE_CURRENT_BINARY_DIR}/deps/LibraryWeNeed
  BUILD_COMMAND make whatever
  ...
)

ExternalProject_Add(
  MyProjectItself
  PREFIX mybuild
  SOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/src
  DEPENDS LibraryWeNeed
  CMAKE_GENERATOR ${CMAKE_GENERATOR}  # use the same generator as the
superbuild
  CMAKE_CACHE_ARGS
-DLibraryWeNeed_ROOT:PATH=${CMAKE_CURRENT_BINARY_DIR}/deps/LibraryWeNeed
  ...
)


src/CMakeLists.txt:
project(MyProject)
find_package(LibraryWeNeed PATHS ${LibraryWeNeed_ROOT})  # the root path
was passed in by the superbuild
...


To work with this, you would then do:

cd build
cmake ../root  # generates superbuild
make  # builds superbuild
cd mybuild  # go into MyProject's binary dir
make  # builds MyProject


Once more, this is all very symbolic. Please refer to documentation,
tutorials etc. to achieve the behaviour you need.

Petr



On Sun, Jan 31, 2016 at 3:42 AM, vadtec  wrote:

> Let me start by saying I consider my self a cmake newbie. I've made simple
> makefiles and simple cmake files, but anything more complicated has to this
> point eluded me. Not for a lack of trying, searching, researching, trail,
> and a great deal of error: I simply have not been able to achieve the
> things I'm after. If the sort of questions I'm asking have been answered
> elsewhere (as I'm sure they have), I apologize for asking them again. That
> being said, I realize I'm going to be asking some questions that my
> Google-Fu has failed me in answering. Forgive me my failings, but I'm at my
> witts end.
>
>
> I have a project that I'm building on Linux that has a server component
> and a client component that also needs to run on Windows. It uses several
> libraries that I want to version lock so I run into fewer issues with cross
> compiling and feature creep.
>
> The project is laid out like this:
>
> /home
> mydir/
> project/
> build/
> bundle/
> deps/
> curl-7.43.0/
> libiconv-1.14/
> libpng-1.6.18/
> libssh2-1.6.0/
> openssl-1.0.2d/
> sqlite/
> tinycthread/
> zlib-1.2.8/
> include/
> client/
> client.h
> common/
> config.h
> common_funcs.h
> server/
> server.h
> src/
> client/
> client.c
> common/
> common_funcs.c
> server/
> server.c
>
> curl, libiconv, libpng, libssh2, and zlib are the libs I want to build and
> use both on Linux and Windows. I know all of those are available on Linux
> and I could use the system installed versions, but I want to use the same
> vesions on Windows as well. The server is only built on Linux, while the
> client needs to be built for Linux and Windows. All the libs, headers, etc
> go into the build 

[cmake-developers] [partial duplicate of users mailing list] SelectLibraryConfigurations

2016-02-03 Thread Adam Rankin
Hello all,

I am exploring FindZLIB.cmake and FindPNG.cmake and they both use 
SelectLibraryConfigurations.cmake. The macro in this file populates 
xyz_LIBRARIES with library file locations.

I am wondering if it should not be populating _LIBRARIES variable with target 
names? Can it even possibly resolve target names from library files? If not, 
should _LIBRARIES not be set by this macro?

Thanks,
Adam
-- 

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] [partial duplicate of users mailing list] SelectLibraryConfigurations

2016-02-03 Thread Brad King
On 02/03/2016 12:47 PM, Adam Rankin wrote:
> I am wondering if it should not be populating _LIBRARIES variable
> with target names?

The _LIBRARIES variables are essentially the legacy interface to
modules that provide imported targets.  Clients should choose to
use the imported targets explicitly.

-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] [partial duplicate of users mailing list] SelectLibraryConfigurations

2016-02-03 Thread Adam Rankin
Ok, I admit I'm just diving into cmake internals so I'm still catching up.

Is there documentation on best practices for writing findxyz modules?

How does a client determine the target names that are imported after calling 
find_package?

Thanks for the help, I'm happy to do my learning by reading if you have any 
recommended resources.

Cheers,
Adam

> On Feb 3, 2016, at 12:54 PM, Brad King  wrote:
> 
>> On 02/03/2016 12:47 PM, Adam Rankin wrote:
>> I am wondering if it should not be populating _LIBRARIES variable
>> with target names?
> 
> The _LIBRARIES variables are essentially the legacy interface to
> modules that provide imported targets.  Clients should choose to
> use the imported targets explicitly.
> 
> -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.0-rc1-6-g1d96c62

2016-02-03 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  1d96c624590700cbc8a6997e6149da5d2bca3a86 (commit)
   via  0205f882ae252998686f65b843a758268b4c62bc (commit)
   via  a58abc69c23ef30fc2215eb72878af29f7e860fd (commit)
  from  0bbdcec3521d98ec9f3548b39b6705efd43fe4ee (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=1d96c624590700cbc8a6997e6149da5d2bca3a86
commit 1d96c624590700cbc8a6997e6149da5d2bca3a86
Merge: 0bbdcec 0205f88
Author: Brad King 
AuthorDate: Wed Feb 3 11:14:13 2016 -0500
Commit: CMake Topic Stage 
CommitDate: Wed Feb 3 11:14:13 2016 -0500

Merge topic 'list-FILTER-command' into next

0205f882 list: Add FILTER subcommand (#3986)
a58abc69 CMake Nightly Date Stamp


https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=0205f882ae252998686f65b843a758268b4c62bc
commit 0205f882ae252998686f65b843a758268b4c62bc
Author: Ashley Whetter 
AuthorDate: Thu Jan 28 21:29:10 2016 +
Commit: Brad King 
CommitDate: Wed Feb 3 11:13:17 2016 -0500

list: Add FILTER subcommand (#3986)

Create a `list(FILTER)` command to filter lists by regular expression.

diff --git a/Help/command/list.rst b/Help/command/list.rst
index a7a05c7..f6b75bc 100644
--- a/Help/command/list.rst
+++ b/Help/command/list.rst
@@ -9,6 +9,7 @@ List operations.
   list(GET   [ ...]
)
   list(APPEND  [ ...])
+  list(FILTER   REGEX )
   list(FIND   )
   list(INSERT[ ...])
   list(REMOVE_ITEM   [ ...])
@@ -23,6 +24,12 @@ List operations.
 
 ``APPEND`` will append elements to the list.
 
+``FILTER`` will include or remove items from the list that match the
+mode's pattern.
+In ``REGEX`` mode, items will be matched against the given regular expression.
+For more information on regular expressions see also the :command:`string`
+command.
+
 ``FIND`` will return the index of the element specified in the list or -1
 if it wasn't found.
 
@@ -38,9 +45,9 @@ difference is that ``REMOVE_ITEM`` will remove the given 
items, while
 
 ``SORT`` sorts the list in-place alphabetically.
 
-The list subcommands ``APPEND``, ``INSERT``, ``REMOVE_AT``, ``REMOVE_ITEM``,
-``REMOVE_DUPLICATES``, ``REVERSE`` and ``SORT`` may create new values for
-the list within the current CMake variable scope.  Similar to the
+The list subcommands ``APPEND``, ``INSERT``, ``FILTER``, ``REMOVE_AT``,
+``REMOVE_ITEM``, ``REMOVE_DUPLICATES``, ``REVERSE`` and ``SORT`` may create new
+values for the list within the current CMake variable scope.  Similar to the
 :command:`set` command, the LIST command creates new variable values in the
 current scope, even if the list itself is actually defined in a parent
 scope.  To propagate the results of these operations upwards, use
diff --git a/Help/release/dev/list-FILTER-command.rst 
b/Help/release/dev/list-FILTER-command.rst
new file mode 100644
index 000..3fee4f0
--- /dev/null
+++ b/Help/release/dev/list-FILTER-command.rst
@@ -0,0 +1,5 @@
+list-FILTER-command
+---
+
+* The :command:`list` command gained a ``FILTER`` sub-command to filter
+  list elements by regular expression.
diff --git a/Source/cmListCommand.cxx b/Source/cmListCommand.cxx
index 6041fb7..15a1af5 100644
--- a/Source/cmListCommand.cxx
+++ b/Source/cmListCommand.cxx
@@ -14,6 +14,7 @@
 #include 
 #include "cmAlgorithms.h"
 
+#include 
 #include  // required for atoi
 #include 
 #include 
@@ -68,6 +69,10 @@ bool cmListCommand
 {
 return this->HandleReverseCommand(args);
 }
+  if(subCommand == "FILTER")
+{
+return this->HandleFilterCommand(args);
+}
 
   std::string e = "does not recognize sub-command "+subCommand;
   this->SetError(e);
@@ -517,3 +522,107 @@ bool cmListCommand::HandleRemoveAtCommand(
   return true;
 }
 
+//
+bool cmListCommand::HandleFilterCommand(
+  std::vector const& args)
+{
+  if(args.size() < 2)
+{
+this->SetError("sub-command FILTER requires a list to be specified.");
+return false;
+}
+
+  if(args.size() < 3)
+{
+this->SetError("sub-command FILTER requires an operator to be specified.");
+return false;
+}
+
+  if(args.size() < 4)
+{
+this->SetError("sub-command FILTER requires a mode to be specified.");
+return false;
+}
+
+  const std::string& listName = args[1];
+  // expand the variable
+  std::vector varArgsExpanded;
+  if ( !this->GetList(varArgsExpanded, listName) )
+{
+this->SetError("sub-command FILTER requires 

[CMake] xyz_LIBRARIES

2016-02-03 Thread Adam Rankin
Hello all,

I am trying to sort out a project with multiple layers of dependencies and I am 
trying to figure out the "right" way of configuring things.

First easy question: Should a value xyz_LIBRARIES contain target names, or 
library file locations?

Second question: Should a FindXYZ.cmake file add imported targets, or should a 
USE_xyz variable be created for later inclusion? (what if the project does not 
export its targets?)

Third question: How's your day going today?

Cheers,
Adam
-- 

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] CMake 3.5.0-rc1 install is missing dependencies

2016-02-03 Thread Robert Maynard
Hi,

I have been able to replicate the problem with the Windows installer
not properly installing the Qt libraries. I have tested the Linux
x86_64 binaries on a Ubuntu 12.04 machine and everything works, but I
will locate a RHEL machine and see if I can replicate your issue.

On Wed, Feb 3, 2016 at 11:19 AM, Thompson, KT  wrote:
> I downloaded cmake 3.5.0-rc1 to try it out.
>
>
>
> The Windows installation doesn’t appear to provide all the required
> dependencies. ‘cmake-gui’ will not launch and provides the error
> “Qt5Widgets.dll is missing form your computer.” Do I need to install a
> specific Qt runtime before installing cmake 3.5? The command line ‘cmake’
> will run through the configuration of my projects, but it does not generate
> any VS solution files.
>
>
>
> On RHEL 6.7, I extracted the prebuilt x86_64 binaries from the downloaded
> .tar.gz file.  At the end of the configuration process, cmake issues a
> segmentation fault and no Makefiles are generated.  Additionally, cmake-gui
> uses a bad font (all text is displayed as boxes).
>
>
>
> Is anyone else encountering these issues with 3.5.0-rc1?
>
>
>
> -kt
>
>
>
>
> --
>
> 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
-- 

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] CPack and PackageMaker

2016-02-03 Thread Robert Maynard
The window for new CMake 3.5 features is closed now that we have
started the release cycle.

On Wed, Feb 3, 2016 at 12:42 AM, Roman Wüger  wrote:
> @Brad, @Clinton: Could we add this feature into CMake 3.5.0, because on
> newer Mac OS systems the package maker is already deprecated and for those
> we could use the productbuild instead.
>
> Thanks in advance
>
> Best Regards
> Roman
>
> Am 22.12.2015 um 07:56 schrieb Roman Wüger :
>
> Is there anything I can do to support?
>
> Best regards
>
> Am 11.12.2015 um 20:17 schrieb robert.bielik :
>
> Dear Clint,
>
>
>
> Thank you! Will certainly start with that as a base :)
>
>
>
> Regards
>
> /R
>
>
>
> -- Ursprungligt meddelande--
>
> Från:
>
> Datum: fre, 11 dec 2015 20:12
>
> Till: Robert Bielik;
>
> Kopia: Attila Krasznahorkay;cmake;
>
> Ämne:Re: [CMake] CPack and PackageMaker
>
>
>
> If you are interested, attached is some code I started a couple years ago
> but never finished, nor did I do much testing.
> Perhaps that'll help, or maybe you'll find a better way.
>
> Clint
>
> - On Dec 11, 2015, at 9:50 AM, Robert Bielik robert.bie...@dirac.se
> wrote:
>
>> Dear Attila,
>>
>> Ok, been struggling getting an installation package to work with the
>> pkgbuild/productbild tools, so I think I got the gist of what needs to
>> be done, at least to get something going :)
>>
>> Regards
>> /R
>>
>> Den 2015-12-11 kl. 17:47, skrev Attila Krasznahorkay:
>>> Hi Robert,
>>>
>>> I'm afraid that the sad situation is that nobody has done this yet, or is
>>> working on it at the moment.
>>>
>>> I'm absolutely sure that if you can help with this by any amount, that
>>> will be
>>> most welcome by the CMake developers. It will certainly be most welcome
>>> by me,
>>> as I've been disappointed by the lack of this support as well. (But
>>> unfortunately can't spare the time to help out in writing this CPack
>>> generator.)
>>>
>>> Cheers,
>>>   Attila
>>>
 On 11 Dec 2015, at 17:44, Robert Bielik  wrote:

 Really ? No one ? :)

 So it's ok to go ahead and start create a new one ? ;)

 Rgds,
 /R

 Den 2015-12-09 kl. 16:56, skrev Robert Bielik:
> Mac OSX:
>
> Since PackageMaker has been deprecated by Apple, the new tools to use
> are
> pkgbuild [1] and productbuild [2].
>
> Simple question: Is there any work being done by the CMake community on
> a new OS
> X CPack backend to support the above tools ?
>
> Regards
> /Robert
> [1]
>
> https://developer.apple.com/library/mac/documentation/Darwin/Reference/ManPages/man1/pkgbuild.1.html
> [2]
>
> https://developer.apple.com/library/mac/documentation/Darwin/Reference/ManPages/man1/productbuild.1.html
>
 --

 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
>>
>> --
>>
>> 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
>
> --
>
> 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
>
> --
>
> Powered by www.kitware.com
>
> Please keep messages on-topic and check the CMake FAQ at:
> http://www.cmake.org/Wiki/CMake_FAQ
>
> Kitware 

[Cmake-commits] CMake branch, next, updated. v3.5.0-rc1-10-g47bd1c7

2016-02-03 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  47bd1c7197d01ebca3239efc4223db2082be2340 (commit)
   via  cee30e168b4e540866fa5e17f6b8d6d2916d8572 (commit)
   via  670fa89705023cd5709693464d827727f3aa738a (commit)
   via  0b6c47295d5ddf7b281ae0634414886b6207ae74 (commit)
  from  1d96c624590700cbc8a6997e6149da5d2bca3a86 (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=47bd1c7197d01ebca3239efc4223db2082be2340
commit 47bd1c7197d01ebca3239efc4223db2082be2340
Merge: 1d96c62 cee30e1
Author: Brad King 
AuthorDate: Wed Feb 3 14:25:41 2016 -0500
Commit: CMake Topic Stage 
CommitDate: Wed Feb 3 14:25:41 2016 -0500

Merge topic 'install-EXCLUDE_FROM_ALL' into next

cee30e16 Help: Add notes for topic 'install-EXCLUDE_FROM_ALL'
670fa897 Tests: Add cases for install() command EXCLUDE_FROM_ALL option
0b6c4729 install: Add EXCLUDE_FROM_ALL option (#14921)


https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=cee30e168b4e540866fa5e17f6b8d6d2916d8572
commit cee30e168b4e540866fa5e17f6b8d6d2916d8572
Author: Brad King 
AuthorDate: Wed Feb 3 14:12:29 2016 -0500
Commit: Brad King 
CommitDate: Wed Feb 3 14:19:14 2016 -0500

Help: Add notes for topic 'install-EXCLUDE_FROM_ALL'

diff --git a/Help/release/dev/install-EXCLUDE_FROM_ALL.rst 
b/Help/release/dev/install-EXCLUDE_FROM_ALL.rst
new file mode 100644
index 000..a611eae
--- /dev/null
+++ b/Help/release/dev/install-EXCLUDE_FROM_ALL.rst
@@ -0,0 +1,5 @@
+install-EXCLUDE_FROM_ALL
+
+
+* The :command:`install` command learned a new ``EXCLUDE_FROM_ALL`` option
+  to leave installation rules out of the default installation.

https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=670fa89705023cd5709693464d827727f3aa738a
commit 670fa89705023cd5709693464d827727f3aa738a
Author: Brad King 
AuthorDate: Wed Feb 3 14:10:55 2016 -0500
Commit: Brad King 
CommitDate: Wed Feb 3 14:19:14 2016 -0500

Tests: Add cases for install() command EXCLUDE_FROM_ALL option

diff --git a/Tests/RunCMake/install/EXCLUDE_FROM_ALL-FILES-install-stdout.txt 
b/Tests/RunCMake/install/EXCLUDE_FROM_ALL-FILES-install-stdout.txt
new file mode 100644
index 000..517cee2
--- /dev/null
+++ b/Tests/RunCMake/install/EXCLUDE_FROM_ALL-FILES-install-stdout.txt
@@ -0,0 +1,3 @@
+-- Install configuration: "[^"]*"
+-- Installing: [^
+]*/Tests/RunCMake/install/EXCLUDE_FROM_ALL-FILES-build/root/src-all/main\.c$
diff --git a/Tests/RunCMake/install/EXCLUDE_FROM_ALL-FILES.cmake 
b/Tests/RunCMake/install/EXCLUDE_FROM_ALL-FILES.cmake
new file mode 100644
index 000..00db5d0
--- /dev/null
+++ b/Tests/RunCMake/install/EXCLUDE_FROM_ALL-FILES.cmake
@@ -0,0 +1,2 @@
+install(FILES main.c DESTINATION src-all)
+install(FILES main.c DESTINATION src-exc EXCLUDE_FROM_ALL)
diff --git a/Tests/RunCMake/install/EXCLUDE_FROM_ALL-TARGETS-install-stdout.txt 
b/Tests/RunCMake/install/EXCLUDE_FROM_ALL-TARGETS-install-stdout.txt
new file mode 100644
index 000..17672f2
--- /dev/null
+++ b/Tests/RunCMake/install/EXCLUDE_FROM_ALL-TARGETS-install-stdout.txt
@@ -0,0 +1,3 @@
+-- Install configuration: "[^"]*"
+-- Installing: [^
+]*/Tests/RunCMake/install/EXCLUDE_FROM_ALL-TARGETS-build/root/bin/myexe(\.exe)?$
diff --git a/Tests/RunCMake/install/EXCLUDE_FROM_ALL-TARGETS.cmake 
b/Tests/RunCMake/install/EXCLUDE_FROM_ALL-TARGETS.cmake
new file mode 100644
index 000..16e8a90
--- /dev/null
+++ b/Tests/RunCMake/install/EXCLUDE_FROM_ALL-TARGETS.cmake
@@ -0,0 +1,5 @@
+enable_language(C)
+add_executable(myexe main.c)
+add_executable(mytest main.c)
+install(TARGETS myexe DESTINATION bin)
+install(TARGETS mytest DESTINATION bin EXCLUDE_FROM_ALL)
diff --git a/Tests/RunCMake/install/RunCMakeTest.cmake 
b/Tests/RunCMake/install/RunCMakeTest.cmake
index 2c1b29d..c57e5ec 100644
--- a/Tests/RunCMake/install/RunCMakeTest.cmake
+++ b/Tests/RunCMake/install/RunCMakeTest.cmake
@@ -13,3 +13,15 @@ run_cmake(TARGETS-DESTINATION-bad)
 run_cmake(CMP0062-OLD)
 run_cmake(CMP0062-NEW)
 run_cmake(CMP0062-WARN)
+
+function(run_install_test case)
+  set(RunCMake_TEST_BINARY_DIR ${RunCMake_BINARY_DIR}/${case}-build)
+  set(RunCMake_TEST_NO_CLEAN 1)
+  set(RunCMake_TEST_OPTIONS 
"-DCMAKE_INSTALL_PREFIX:PATH=${RunCMake_TEST_BINARY_DIR}/root")
+  file(REMOVE_RECURSE "${RunCMake_TEST_BINARY_DIR}")
+  file(MAKE_DIRECTORY "${RunCMake_TEST_BINARY_DIR}")
+  run_cmake(${case})
+  run_cmake_command(${case}-install ${CMAKE_COMMAND} --build . --target 
install)

Re: [cmake-developers] install(EXCLUDE_FROM_ALL) new feature - request for comment

2016-02-03 Thread Brad King
On 02/01/2016 05:01 AM, Nick Lewis wrote:
> https://cmake.org/Bug/view.php?id=14921

Thanks.  Actually my request in the issue tracker to post here was meant
to have the actual patch file attached so people can see it without
digging through the messages and attachments there.  Patch revisions
or new patches can be attached in responses within the thread.

Anyway, I've applied the "correction2" patch from the issue tracker,
applied it, and followed up with some test cases.  I merged the topic
to 'next' for testing:

 install: Add EXCLUDE_FROM_ALL option (#14921)
 https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=0b6c4729

 Tests: Add cases for install() command EXCLUDE_FROM_ALL option
 https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=670fa897

 Help: Add notes for topic 'install-EXCLUDE_FROM_ALL'
 https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=cee30e16

but it is not ready for 'master' yet.

Please look at extending the Tests/RunCMake/install test with
cases for more install command signatures.  Please also update
the Help/command/install.rst file documentation to mention the
option in all signatures where it is supported and add a list
entry for it among the main options at the top.

Since I've already applied the original patch, please provide
these updates as new patches that I can apply on top.  Commit
locally in Git and use `git format-patch ...` to produce patch
files to attach here.

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-commits] CMake branch, next, updated. v3.5.0-rc1-12-g72a585d

2016-02-03 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  72a585d3534616b0cf4b241d3b6eeb50f44da79a (commit)
   via  99a9c7e51a3980807c60a9ec7532db0ca9495e5f (commit)
  from  47bd1c7197d01ebca3239efc4223db2082be2340 (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=72a585d3534616b0cf4b241d3b6eeb50f44da79a
commit 72a585d3534616b0cf4b241d3b6eeb50f44da79a
Merge: 47bd1c7 99a9c7e
Author: Brad King 
AuthorDate: Wed Feb 3 14:35:59 2016 -0500
Commit: CMake Topic Stage 
CommitDate: Wed Feb 3 14:35:59 2016 -0500

Merge topic 'iar_ninja_support' into next

99a9c7e5 IAR: Add support for using this compiler with the Ninja generator


https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=99a9c7e51a3980807c60a9ec7532db0ca9495e5f
commit 99a9c7e51a3980807c60a9ec7532db0ca9495e5f
Author: Juhani Simola 
AuthorDate: Sat Jan 30 20:54:26 2016 +0200
Commit: Brad King 
CommitDate: Wed Feb 3 14:35:06 2016 -0500

IAR: Add support for using this compiler with the Ninja generator

The dependency flags require recent versions of `iccarm` and `iccavr`.
The multi-rule dependency generated with `--dependencies=m` does not
work well with Ninja, so use `--dependencies=ns` instead.

diff --git a/Modules/Compiler/IAR-C.cmake b/Modules/Compiler/IAR-C.cmake
index d2c7df9..f1b6ff7 100644
--- a/Modules/Compiler/IAR-C.cmake
+++ b/Modules/Compiler/IAR-C.cmake
@@ -7,6 +7,9 @@ set(CMAKE_C_COMPILE_OBJECT " 
 
  --preprocess=cnl ")
 set(CMAKE_C_CREATE_ASSEMBLY_SOURCE "   
  -lAH  -o .dummy")
 
+set(CMAKE_C_RESPONSE_FILE_LINK_FLAG "-f")
+set(CMAKE_DEPFILE_FLAGS_C "--dependencies=ns ")
+
 # The toolchains for ARM and AVR are quite different:
 if("${IAR_TARGET_ARCHITECTURE}" STREQUAL "ARM")
 
diff --git a/Modules/Compiler/IAR-CXX.cmake b/Modules/Compiler/IAR-CXX.cmake
index 03ecdf1..ffb144f 100644
--- a/Modules/Compiler/IAR-CXX.cmake
+++ b/Modules/Compiler/IAR-CXX.cmake
@@ -7,7 +7,8 @@ set(CMAKE_CXX_COMPILE_OBJECT  "  
   
   --preprocess=cnl ")
 set(CMAKE_CXX_CREATE_ASSEMBLY_SOURCE "  
   -lAH  -o .dummy")
 
-
+set(CMAKE_CXX_RESPONSE_FILE_LINK_FLAG "-f")
+set(CMAKE_DEPFILE_FLAGS_CXX "--dependencies=ns ")
 
 if("${IAR_TARGET_ARCHITECTURE}" STREQUAL "ARM")
 

---

Summary of changes:
 Modules/Compiler/IAR-C.cmake   |3 +++
 Modules/Compiler/IAR-CXX.cmake |3 ++-
 2 files changed, 5 insertions(+), 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] [partial duplicate of users mailing list] SelectLibraryConfigurations

2016-02-03 Thread Adam Rankin
Ah, gotcha.

So, is it expected that each project in a client's package will call 
find_package(xyz)?

I am used to the top level CMakeLists finding all the dependencies, and then 
passing the information down into projects. I am happy to update our system 
behavior to match what is more correct.

Adam

-Original Message-
From: Brad King [mailto:brad.k...@kitware.com] 
Sent: Wednesday, February 03, 2016 1:36 PM
To: Adam Rankin 
Cc: cmake-developers@cmake.org
Subject: Re: [cmake-developers] [partial duplicate of users mailing list] 
SelectLibraryConfigurations

On 02/03/2016 01:03 PM, Adam Rankin wrote:
> Is there documentation on best practices for writing findxyz modules?

There is a section in the cmake-developer manual:

 https://cmake.org/cmake/help/v3.5/manual/cmake-developer.7.html#find-modules

> How does a client determine the target names that are imported after 
> calling find_package?

Client authors should read the module documentation, just as they might to see 
the list of provided variables.

-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] Is there any way to use clang-cl with MSBuild on Windows?

2016-02-03 Thread Yi-Hong Lyu
Hello Gilles,

Here it is:

PS > cmake -G "Visual Studio 14 2015" -T v140_clang_3_7
-DLLVM_PATH="E:\\llvm" -DCMAKE_SYSTEM_VERSION=8.1
 -DCMAKE_C_COMPILER="E:\\e2tools\\ext-tools\\llvm\\clang-cl.exe"
-DCMAKE_CXX_COMPILER="E:\\e2tools\\ext-tools\\llvm\\clang-cl.exe" ..\src\
-- The CXX compiler identification is unknown
-- The C compiler identification is unknown
-- Check for working CXX compiler using: Visual Studio 14 2015
-- Check for working CXX compiler using: Visual Studio 14 2015 -- broken
CMake Error at E:/CMake/clang_3_7/Modules/CMakeTestCXXCompiler.cmake:54
(message):
  The C++ compiler "E:\e2tools\ext-tools\llvm\clang-cl.exe" is not able to
  compile a simple test program.

  It fails with the following output:

   Change Dir: E:/libcxx/b-libcxx-Cascade-msbuild2/CMakeFiles/CMakeTmp

  Run Build Command:"C:/Program Files (x86)/MSBuild/14.0/bin/MSBuild.exe"
  "cmTC_00a23.vcxproj" "/p:Configuration=Debug"
"/p:VisualStudioVersion=14.0"

  Microsoft (R) Build Engine version 14.0.24720.0

  C:\Program Files

(x86)\MSBuild\Microsoft.Cpp\v4.0\V140\Microsoft.Cpp.Platform.targets(57,5):
  error MSB8020: The build tools for v140_clang_3_7 (Platform Toolset =
  'v140_clang_3_7') cannot be found.  To build using the v140_clang_3_7
build
  tools, please install v140_clang_3_7 build tools.  Alternatively, you may
  upgrade to the current Visual Studio tools by selecting the Project menu
or
  right-click the solution, and then selecting "Retarget solution".

[E:\libcxx\b-libcxx-Cascade-msbuild2\CMakeFiles\CMakeTmp\cmTC_00a23.vcxproj]

C:\Program Files
(x86)\MSBuild\Microsoft.Cpp\v4.0\V140\Microsoft.Cpp.Platform.targets(57,5):
error MSB8020: The build tools for v140_clang_3_7 (Platform Toolset =
'v140_clang_3_7') cannot be found. To build using the v140_clang_3_7 build
tools, please install v140_clang_3_7 build tools.  Alternatively, you may
upgrade to the current Visual Studio tools by selecting the Project menu or
right-click the solution, and then selecting "Retarget solution".
[E:\libcxx\b-libcxx-Cascade-msbuild2\CMakeFiles\CMakeTmp\cmTC_00a23.vcxproj]

  0 warning
  1 error

  CMake will not be able to correctly generate this project.
Call Stack (most recent call first):
  CMakeLists.txt:17 (project)

-- Configuring incomplete, errors occurred!

PS. Part of the messages in Chinese are removed, please tell me if you need
it as well

Thanks for your help,
Yi-Hong

2016-02-04 3:25 GMT+08:00 Gilles Khouzam :

> Hi Yi-Hong,
>
>
>
> Can you try to add the following: -DCMAKE_SYSTEM_VERSION=8.1 to your
> parameters?
>
-- 

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] CMake 3.5.0-rc1 install is missing dependencies

2016-02-03 Thread Thompson, KT
I'm working on a reproducer.  For now, all I can say is that it looks like the 
segmentation fault occurs on this command:

install( EXPORT foo-targets
  DESTINATION foo
  EXPORT_LINK_INTERFACE_LIBRARIES )

-kt

-Original Message-
From: Brad King [mailto:brad.k...@kitware.com] 
Sent: Wednesday, February 03, 2016 11:42 AM
To: Thompson, KT 
Cc: cmake@cmake.org
Subject: Re: [CMake] CMake 3.5.0-rc1 install is missing dependencies

On 02/03/2016 11:19 AM, Thompson, KT wrote:
> On RHEL 6.7, I extracted the prebuilt x86_64 binaries from the
> downloaded .tar.gz file.  At the end of the configuration process,
> cmake issues a segmentation fault and no Makefiles are generated.

What project are you configuring?

Can you provide a CMakeLists.txt file that reproduces this crash?

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


[CMake] Finding Packages Installed in Non-Standard Locations

2016-02-03 Thread Andrew Bell
If my package is installed to a non-standard location, my
Config.cmake file is currently also installed to the non-standard
location and can't be found by dependent projects.

I see that there's export(PACKAGE ), but this creates an entry in
the registry for the build location of the PROJECT rather than the
installed location.

Is there some way I can install target files to a non-standard location but
be sure that Config.cmake can be found without explicitly
installing it into something like /usr/lib/cmake/PROJECT?

Thanks,

-- 
Andrew Bell
andrew.bell...@gmail.com
-- 

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] Is there any way to use clang-cl with MSBuild on Windows?

2016-02-03 Thread Yi-Hong Lyu
Hello Gilles,

Thanks for you mail. It is really useful to me but I encounter an error. My
use case is to use clang-cl with my own target instead of x86/x64 target.
Therefore I don't want to include any headers of VS x86/x64 and use any
library of VS x86/x64:

PS > cmake -G "Visual Studio 14 2015" -T v140_clang_3_7
-DCMAKE_C_COMPILER=clang-cl -DCMAKE_CXX_COMPILER=clang-cl ..\src\

CMake Error at CMakeLists.txt:17 (project):
  Could not find an appropriate version of the Windows 10 SDK installed
on this machine

-- Configuring incomplete, errors occurred!
See also "E:/libcxx/b-libcxx-Cascade-msbuild2/CMakeFiles/CMakeOutput.log".

I don't want to use Windows 10 SDK during compilation. Is the feature you
implemented suitable for my special use case?

Thanks for your help,
Yi-Hong

2016-02-01 22:47 GMT+08:00 Gilles Khouzam :

> Hi Yi-Long
>
>
> Clang-Cl requires a few changes in order to work properly,
>
>
> I've prototyped the support for Clang-Cl on our CMake fork with the plan
> to integrate the support once we've got good confirmation and work through
> some of the design issues.
>
>
> You can find the code on
> https://github.com/microsoft/cmake/tree/feature/clang_3_7
>
>
> You can also find an installer here:
> https://github.com/Microsoft/CMake/releases
>
>
> The easiest way to set Clang as the compiler is to use the -T parameter
> such as
>
> cmake -G "Visual Studio 14 2015" -T v140_clang_3_7 ...
>
>
> But I've also added a new variable VS_PLATFORM_TOOLSET_OVERRIDE that you
> can use to change the toolset for a specific target (there are scenarios
> where you need CL and Clang targeting different projects in your solution).
>
>
> Thanks
>
>
> ~Gilles
>
-- 

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] CPack RPM generator not using CPACK_RPM__XXX variables

2016-02-03 Thread Andrew Helten
Thanks Domen! The use of original-case for  in
CPACK_RPM__ was indeed the problem. I never did get the
CPACK_RPM_*_PACKAGE_PREFIX variable to work but I'm using a different
(probably more correct) approach that gets me what I wanted.

Can this use of mixed case-sensitive/all-upper-case can be clarified in the
documentation for CPACK_ and CPAC_RPM_ component variables?

Thanks,
Andy

On Tue, Feb 2, 2016 at 2:51 PM, Domen Vrankar 
wrote:

> > set(CPACK_GENERATOR "RPM")
> > set(CPACK_RPM_BLAH1_USER_BINARY_SPECFILE
> > "${CMAKE_CURRENT_SOURCE_DIR}/install/SPECS/blah1.spec.in")
> > set(CPACK_RPM_BLAH1_PACKAGE_PREFIX "${CMAKE_INSTALL_PREFIX}/blah1")
> > set(CPACK_RPM_BLAH2_PACKAGE_PREFIX "${CMAKE_INSTALL_PREFIX}/blah2")
> > set(CPACK_RPM_COMPONENT_INSTALL ON)
> > set(CPACK_COMPONENTS_ALL blah1 blah2)
> > include(CPack)
> >
> > What I want this to do is install blah1 in something like /opt/blah1 and
> > install blah2 in /opt/blah2 and use a custom binary spec for component
> > blah1. It does none of these things and instead puts both blah1 and
> blah2 in
> > CPACK_PACKAGING_INSTALL_PREFIX and uses a GENERATED binary spec file for
> > both blah1 and blah2.
>
> This can be done but not all of those features came in at the same
> time so you should check the documentation for the version of
> CMake/CPack you are using.
>
> Also for historical reasons there is a difference between CPack
> variables and CPackRPM specific variables: with CPACK_* variables the
> component part should be in upper case as in your example while with
> CPACK_RPM_* variables the component part should be the same as the
> name of the component (for e.g. in your case
> CPACK_RPM_blah1_PACKAGE_PREFIX).
>
> Also instead of using CPACK_RPM_*_PACKAGE_PREFIX variables you might
> also want to take a look at CPACK_RPM_RELOCATION_PATHS that can be
> used in combination with GNUInstallDirs.cmake script that comes with
> CMake.
>
> e.g.
> include(GNUInstallDirs)
> set(CPACK_RPM_RELOCATION_PATHS "${CMAKE_INSTALL_INCLUDEDIR}"
>   "${CMAKE_INSTALL_LIBDIR}" "${CMAKE_INSTALL_BINDIR}")
>
> This way each rpm package can have more than one install prefix location.
>
> Regards,
> Domen
>
-- 

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] CMake 3.5.0-rc1 install is missing dependencies

2016-02-03 Thread Brad King
On 02/03/2016 11:19 AM, Thompson, KT wrote:
> On RHEL 6.7, I extracted the prebuilt x86_64 binaries from the
> downloaded .tar.gz file.  At the end of the configuration process,
> cmake issues a segmentation fault and no Makefiles are generated.

What project are you configuring?

Can you provide a CMakeLists.txt file that reproduces this crash?

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


Re: [CMake] CMake 3.5.0-rc1 install is missing dependencies

2016-02-03 Thread Brad King
On 02/03/2016 11:19 AM, Thompson, KT wrote:
> The Windows installation doesn’t appear to provide all the
> required dependencies. ‘cmake-gui’ will not launch and provides
> the error “Qt5Widgets.dll is missing form your computer.”

Ugh, after months of working correctly on the nightly binary builds
something happened to go wrong on the packaging machine specifically
for this release build due to an environment change.  I've fixed it
and replaced the binary on the download site for the Windows build.
Please download and try again.

-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


Re: [cmake-developers] [partial duplicate of users mailing list] SelectLibraryConfigurations

2016-02-03 Thread Brad King
On 02/03/2016 01:03 PM, Adam Rankin wrote:
> Is there documentation on best practices for writing findxyz modules?

There is a section in the cmake-developer manual:

 https://cmake.org/cmake/help/v3.5/manual/cmake-developer.7.html#find-modules

> How does a client determine the target names that are imported after
> calling find_package?

Client authors should read the module documentation, just as they might
to see the list of provided variables.

-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] Is there any way to use clang-cl with MSBuild on Windows?

2016-02-03 Thread Gilles Khouzam
Hi Yi-Hong,

Can you try to add the following: -DCMAKE_SYSTEM_VERSION=8.1 to your parameters?

From: Yi-Hong Lyu [mailto:b95705...@ntu.edu.tw]
Sent: Wednesday, February 3, 2016 11:11
To: Gilles Khouzam 
Cc: Nicholas Braden ; cmake@cmake.org
Subject: Re: [CMake] Is there any way to use clang-cl with MSBuild on Windows?

Hello Gilles,

Thanks for you mail. It is really useful to me but I encounter an error. My use 
case is to use clang-cl with my own target instead of x86/x64 target. Therefore 
I don't want to include any headers of VS x86/x64 and use any library of VS 
x86/x64:

PS > cmake -G "Visual Studio 14 2015" -T v140_clang_3_7 
-DCMAKE_C_COMPILER=clang-cl -DCMAKE_CXX_COMPILER=clang-cl ..\src\

CMake Error at CMakeLists.txt:17 (project):
  Could not find an appropriate version of the Windows 10 SDK installed on this 
machine

-- Configuring incomplete, errors occurred!
See also "E:/libcxx/b-libcxx-Cascade-msbuild2/CMakeFiles/CMakeOutput.log".

I don't want to use Windows 10 SDK during compilation. Is the feature you 
implemented suitable for my special use case?

Thanks for your help,
Yi-Hong

2016-02-01 22:47 GMT+08:00 Gilles Khouzam 
>:

Hi Yi-Long



Clang-Cl requires a few changes in order to work properly,



I've prototyped the support for Clang-Cl on our CMake fork with the plan to 
integrate the support once we've got good confirmation and work through some of 
the design issues.



You can find the code on 
https://github.com/microsoft/cmake/tree/feature/clang_3_7



You can also find an installer here: https://github.com/Microsoft/CMake/releases



The easiest way to set Clang as the compiler is to use the -T parameter such as

cmake -G "Visual Studio 14 2015" -T v140_clang_3_7 ...



But I've also added a new variable VS_PLATFORM_TOOLSET_OVERRIDE that you can 
use to change the toolset for a specific target (there are scenarios where you 
need CL and Clang targeting different projects in your solution).



Thanks


~Gilles

-- 

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