[CMake] FindCUDA ignores project dependencies when separable compilation is on

2014-12-08 Thread Irwin Zaid
Hi all, Just wanted to mention this issue I've run into. I have a project (libdynd -- https://github.com/libdynd/libdynd) that uses FindCUDA to deal with CUDA compilation. A part of our library is generated at compile-time, which we handle by the command add_dependencies(libdynd some_exe),

[CMake] Passing -x=cu to FindCUDA, and specifying libraries to nvcc

2015-01-16 Thread Irwin Zaid
Hi all (and James), I just have two other quick questions about FindCUDA. Here we go! 1) I have a project that tries to keep all its CUDA code in .cpp files. I'm currently making this work with a lot of dummy .cu files that simply include the .cpp, but I'd like to get rid of these. nvcc

Re: [CMake] Passing -x=cu to FindCUDA, and specifying libraries to nvcc

2015-01-16 Thread Irwin Zaid
Hi James, Thanks for the quick reply. Some thoughts... FindCUDA only looks for .cu files. In CUDA_WRAP_SRCS: get_source_file_property(_is_header ${file} HEADER_FILE_ONLY) if(${file} MATCHES \\.cu$ AND NOT _is_header) What benefit is there in keeping cuda code in .cpp files? It allows us to

Re: [CMake] Passing -x=cu to FindCUDA, and specifying libraries to nvcc

2015-01-16 Thread Irwin Zaid
I would feel better about a flag that changes the the match string. If you want to cook up a patch, I'll take a look at it (I don't have much time to devote to this). It should be something along the lines of. 1. Add a new CUDA variable called CUDA_FILE_MATCH_REGEX that defaults to \\.cu$. 2.

Re: [CMake] FindCUDA ignores project dependencies when separable compilation is on

2015-01-05 Thread Irwin Zaid
Just wanted to send this again, as the problem still exists. While working on the libdynd project (https://github.com/libdynd/libdynd), we've discovered two CUDA CMake issues that we'd like to help resolve. Who are the right people to speak with about these? Irwin Irwin Zaid wrote: Hi all

Re: [CMake] FindCUDA ignores project dependencies when separable compilation is on

2015-01-05 Thread Irwin Zaid
is the correct fix? Irwin James Bigler wrote: On Mon, Jan 5, 2015 at 1:57 PM, Irwin Zaid irwin.z...@physics.ox.ac.uk mailto:irwin.z...@physics.ox.ac.uk wrote: Hi James, Thanks for the quick reply! As I mentioned, we've hit two issues. The first is the project dependencies one

Re: [CMake] FindCUDA ignores project dependencies when separable compilation is on

2015-01-06 Thread Irwin Zaid
meant to always build in Debug mode just for that? Irwin Irwin Zaid wrote: I just double-checked. The -fPIC is definitely there for each individual object file, but not for the *_intermediate_link.o. Irwin James Bigler wrote: James On Jan 6, 2015, at 11:29 AM, Irwin Zaidirwin.z

Re: [CMake] FindCUDA ignores project dependencies when separable compilation is on

2015-01-06 Thread Irwin Zaid
, 2015 at 1:32 PM, Irwin Zaid irwin.z...@physics.ox.ac.uk mailto:irwin.z...@physics.ox.ac.uk wrote: Wait, hold on. The -fPIC does get passed to everything if I set the build mode to Debug by passing -DCMAKE_BUILD_TYPE=Debug to CMake. Is that what I should be doing? (Sorry about

Re: [CMake] FindCUDA ignores project dependencies when separable compilation is on

2015-01-06 Thread Irwin Zaid
is printed for ${nvcc_flags} or the other variables. James Bigler wrote: On Tue, Jan 6, 2015 at 8:54 AM, Irwin Zaid irwin.z...@physics.ox.ac.uk mailto:irwin.z...@physics.ox.ac.uk mailto:irwin.z...@physics.ox.__ac.uk mailto:irwin.z...@physics.ox.ac.uk

Re: [CMake] FindCUDA ignores project dependencies when separable compilation is on

2015-01-06 Thread Irwin Zaid
(important_host_flags) _cuda_get_important_host_flags(important_host_flags ${CMAKE_${CUDA_C_OR_CXX}_FLAGS}) foreach(f ${important_host_flags}) list(APPEND flags -Xcompiler ${f}) endforeach() On Mon, Jan 5, 2015 at 3:43 PM, Irwin Zaid irwin.z...@physics.ox.ac.uk mailto:irwin.z

Re: [CMake] FindCUDA ignores project dependencies when separable compilation is on

2015-01-05 Thread Irwin Zaid
Hi James, Thanks for the quick reply! As I mentioned, we've hit two issues. The first is the project dependencies one, which I'll try and describe more a bit below. I'm not a CMake expert, so please bear with me. The second is what I've put under 2). The only CMake build dependency changes

Re: [CMake] FindCUDA ignores project dependencies when separable compilation is on

2015-01-06 Thread Irwin Zaid
I put them into my main CMakeLists.txt, nothing is printed for ${nvcc_flags} or the other variables. James Bigler wrote: On Tue, Jan 6, 2015 at 8:54 AM, Irwin Zaid irwin.z...@physics.ox.ac.uk mailto:irwin.z...@physics.ox.ac.uk wrote: Okay, an update on this. 2) This is trickier

Re: [CMake] FindCUDA ignores project dependencies when separable compilation is on

2015-01-06 Thread Irwin Zaid
-fPIC in the configuration specific CMAKE_CXX_FLAGS wasn't working, I'm not sure. The code is there to do it. On Tue, Jan 6, 2015 at 10:05 AM, Irwin Zaid irwin.z...@physics.ox.ac.uk mailto:irwin.z...@physics.ox.ac.uk wrote: Right, when I modify FindCUDA.cmake as you describe everything