Browse Source

Adds support for OpenCL source-files

merge-requests/365/head
doe300 8 years ago
parent
commit
e1e18a4199
  1. 8
      src/compile_commands.cc
  2. 3
      src/source.cc
  3. 3
      src/usages_clang.cc

8
src/compile_commands.cc

@ -147,6 +147,14 @@ std::vector<std::string> CompileCommands::get_arguments(const boost::filesystem:
arguments.emplace_back("cuda_runtime.h"); arguments.emplace_back("cuda_runtime.h");
} }
if(extension==".cl") {
arguments.emplace_back("-xcl");
arguments.emplace_back("-cl-std=CL2.0");
arguments.emplace_back("-Xclang");
arguments.emplace_back("-finclude-default-header");
arguments.emplace_back("-Wno-gcc-compat");
}
if(!build_path.empty()) { if(!build_path.empty()) {
arguments.emplace_back("-working-directory"); arguments.emplace_back("-working-directory");
arguments.emplace_back(build_path.string()); arguments.emplace_back(build_path.string());

3
src/source.cc

@ -70,6 +70,9 @@ Glib::RefPtr<Gsv::Language> Source::guess_language(const boost::filesystem::path
else else
language=language_manager->get_language("cpp"); language=language_manager->get_language("cpp");
} }
else if(language->get_id()=="opencl") {
language = language_manager->get_language("cpp");
}
return language; return language;
} }

3
src/usages_clang.cc

@ -561,7 +561,8 @@ bool Usages::Clang::is_source(const boost::filesystem::path &path) {
auto ext = path.extension(); auto ext = path.extension();
if(ext == ".c" || // c sources if(ext == ".c" || // c sources
ext == ".cpp" || ext == ".cxx" || ext == ".cc" || ext == ".C" || ext == ".c++" || // c++ sources ext == ".cpp" || ext == ".cxx" || ext == ".cc" || ext == ".C" || ext == ".c++" || // c++ sources
ext == ".cu") // CUDA sources ext == ".cu" || // CUDA sources
ext == ".cl") // OpenCL sources
return true; return true;
else else
return false; return false;

Loading…
Cancel
Save