starpu-mynvcc.mk 1.2 KB

123456789101112131415161718192021222324252627
  1. # StarPU --- Runtime system for heterogeneous multicore architectures.
  2. #
  3. # Copyright (C) 2017 CNRS
  4. # Copyright (C) 2016 Université de Bordeaux
  5. #
  6. # StarPU is free software; you can redistribute it and/or modify
  7. # it under the terms of the GNU Lesser General Public License as published by
  8. # the Free Software Foundation; either version 2.1 of the License, or (at
  9. # your option) any later version.
  10. #
  11. # StarPU is distributed in the hope that it will be useful, but
  12. # WITHOUT ANY WARRANTY; without even the implied warranty of
  13. # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
  14. #
  15. # See the GNU Lesser General Public License in COPYING.LGPL for more details.
  16. #
  17. # Avoid using nvcc when making a coverity build, nvcc produces millions of
  18. # lines of code which we don't want to analyze. Instead, build dumb .o files
  19. # containing empty functions.
  20. V_mynvcc_ = $(V_mynvcc_$(AM_DEFAULT_VERBOSITY))
  21. V_mynvcc_0 = @echo " myNVCC " $@;
  22. V_mynvcc_1 =
  23. V_mynvcc = $(V_mynvcc_$(V))
  24. .cu.o:
  25. @$(MKDIR_P) `dirname $@`
  26. $(V_mynvcc)grep 'extern *"C" *void *' $< | sed -ne 's/extern *"C" *void *\([a-zA-Z0-9_]*\) *(.*/void \1(void) {}/p' | $(CC) -x c - -o $@ -c