Re: [CMake] Adding compile and build type tests to CMake/CTest

2017-09-06 Thread Edward Diener
On 9/6/2017 11:39 PM, P F via CMake wrote: The `add_test` function can run whatever command you want it to, including compiling a target: add_library(foo_compile_test STATIC EXCLUDE_FROM_ALL foo_compile_test.cpp) add_test(NAME foo_compile_test COMMAND ${CMAKE_COMMAND} --build . --target fo

Re: [CMake] Proper process for static & shared variants of config packages?

2017-09-06 Thread P F via CMake
> On Sep 1, 2017, at 10:39 AM, Robert Dailey wrote: > > Suppose I have a library target and I setup a config package for it > and install target exports for it. What is the process for supporting > installation of the shared library and static library variants (maybe > the same answer applies to

Re: [CMake] Adding compile and build type tests to CMake/CTest

2017-09-06 Thread P F via CMake
The `add_test` function can run whatever command you want it to, including compiling a target: add_library(foo_compile_test STATIC EXCLUDE_FROM_ALL foo_compile_test.cpp) add_test(NAME foo_compile_test COMMAND ${CMAKE_COMMAND} --build . --target foo_compile_test --config $ WORKING_DIRECTO

Re: [CMake] Configuration packages & versioning for parallel installations

2017-09-06 Thread Alex Turbov
Hi, On Thu, Sep 7, 2017 at 12:26 AM, Robert Dailey wrote: > First obvious question is: Should this even be a concern? Yes, definitely! > The > cmake-packages documentation doesn't really touch on versioning, but > there are a couple of concerns I see when you want users to be able to > ins

Re: [CMake] [cmake-developers] How should config packages handle components?

2017-09-06 Thread Alex Turbov
In my projects I always, have external dependencies with finder module providing exported (imported in my project) targets, so my targets (one per file) always have a list of `Vendor::target`. Some of them are mine (i.e. your type 2 -- built by the same project). I wrote a helper module and a func

[CMake] Configuration packages & versioning for parallel installations

2017-09-06 Thread Robert Dailey
First obvious question is: Should this even be a concern? The cmake-packages documentation doesn't really touch on versioning, but there are a couple of concerns I see when you want users to be able to install (with CMake) multiple versions of the same library side-by-side: 1. The library files ha

Re: [CMake] CMake 3.9.x Visual Studio CUDA PDB/compiler flags issues

2017-09-06 Thread Mueller-Roemer, Johannes Sebastian
Yes From: Robert Maynard [robert.mayn...@kitware.com] Sent: Wednesday, September 06, 2017 6:58 PM To: Mueller-Roemer, Johannes Sebastian Cc: cmake@cmake.org Subject: Re: [CMake] CMake 3.9.x Visual Studio CUDA PDB/compiler flags issues So it works when they are sep

[CMake] configuration packages, IMPORTED targets, and global scope

2017-09-06 Thread Robert Dailey
So it took me a while to figure out why find_package() calls I was making (with CONFIG) option were not accessible outside of the directory in which it was invoked. I realized that all targets seem to be global by default except IMPORTED targets (according to add_library() docs). I find this counte

Re: [CMake] CMake 3.9.x Visual Studio CUDA PDB/compiler flags issues

2017-09-06 Thread Robert Maynard
So it works when they are separate gen-code options, but fails when they are combined. Is that correct? On Wed, Sep 6, 2017 at 11:16 AM, Mueller-Roemer, Johannes Sebastian < johannes.sebastian.mueller-roe...@igd.fraunhofer.de> wrote: > The long form fills the Code Generation field with > compute

Re: [CMake] CMake 3.9.x Visual Studio CUDA PDB/compiler flags issues

2017-09-06 Thread Mueller-Roemer, Johannes Sebastian
The long form fills the Code Generation field with compute_20,sm_20;compute_20,compute_20 (the default without gencode parameters is compute_20,sm_20) and results in the following command line: D:\jsroemer\projects\cuda-pdb-test\build\a>"C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0\b

Re: [CMake] CMake 3.9.x Visual Studio CUDA PDB/compiler flags issues

2017-09-06 Thread Robert Maynard
Yes I was responding to comment 3. I am curious, does the longer form signature "-gencode arch=compute_20,code=sm_20 -gencode arch=compute_20,code=compute_20" work correctly? CMake has to parse the gencode flags and move them to special msbuild entries, and I wonder if there is a bug when parsing

Re: [CMake] CMake 3.9.x Visual Studio CUDA PDB/compiler flags issues

2017-09-06 Thread Mueller-Roemer, Johannes Sebastian
If the comment is wrt 3., the result is the same no matter if I use a space or an equals sign, if I double escape the quotes (e.g., use the value as you wrote it in the cmake-gui for CMAKE_CUDA_FLAGS), the value in VS becomes compute_20,"sm_20,compute_20" instead of compute_20,sm_20,compute_20,

Re: [CMake] CMake 3.9.x Visual Studio CUDA PDB/compiler flags issues

2017-09-06 Thread Robert Maynard
As far as gencode goes, your line has errors. With CUDA 8 it should look like: -gencode arch=compute_20,code=\"sm_20,compute_20\" On Mon, Sep 4, 2017 at 4:06 AM, Mueller-Roemer, Johannes Sebastian < johannes.sebastian.mueller-roe...@igd.fraunhofer.de> wrote: > I’m having two issues with debug

[CMake] How should config packages handle components?

2017-09-06 Thread Alan W. Irwin
On 2017-09-05 14:33-0500 Robert Dailey wrote: In the case where I'm exporting 1 target.cmake script per component for a single package, could someone provide an example on how to manage dependencies? There are 2 types of dependencies: 1. Dependencies on external packages 2. Cross-dependencies w