| // REQUIRES: clang-driver |
| // REQUIRES: x86-registered-target |
| // REQUIRES: nvptx-registered-target |
| // This tests uses the PATH environment variable. |
| // REQUIRES: !system-windows |
| |
| // RUN: env PATH=%S/Inputs/CUDA/usr/local/cuda/bin \ |
| // RUN: %clang -v --target=i386-unknown-linux --sysroot=%S/no-cuda-there \ |
| // RUN: 2>&1 | FileCheck %s |
| // RUN: env PATH=%S/Inputs/CUDA/usr/local/cuda/bin \ |
| // RUN: %clang -v --target=i386-apple-macosx --sysroot=%S/no-cuda-there \ |
| // RUN: 2>&1 | FileCheck %s |
| // RUN: env PATH=%S/Inputs/CUDA/usr/local/cuda/bin \ |
| // RUN: %clang -v --target=x86_64-unknown-linux --sysroot=%S/no-cuda-there \ |
| // RUN: 2>&1 | FileCheck %s |
| // RUN: env PATH=%S/Inputs/CUDA/usr/local/cuda/bin \ |
| // RUN: %clang -v --target=x86_64-apple-macosx --sysroot=%S/no-cuda-there \ |
| // RUN: 2>&1 | FileCheck %s |
| |
| |
| // Check that we follow ptxas binaries that are symlinks. |
| // RUN: env PATH=%S/Inputs/CUDA-symlinks/usr/bin \ |
| // RUN: %clang -v --target=i386-unknown-linux --sysroot=%S/no-cuda-there \ |
| // RUN: 2>&1 | FileCheck %s --check-prefix SYMLINKS |
| // RUN: env PATH=%S/Inputs/CUDA-symlinks/usr/bin \ |
| // RUN: %clang -v --target=i386-apple-macosx --sysroot=%S/no-cuda-there \ |
| // RUN: 2>&1 | FileCheck %s --check-prefix SYMLINKS |
| // RUN: env PATH=%S/Inputs/CUDA-symlinks/usr/bin \ |
| // RUN: %clang -v --target=x86_64-unknown-linux --sysroot=%S/no-cuda-there \ |
| // RUN: 2>&1 | FileCheck %s --check-prefix SYMLINKS |
| // RUN: env PATH=%S/Inputs/CUDA-symlinks/usr/bin \ |
| // RUN: %clang -v --target=x86_64-apple-macosx --sysroot=%S/no-cuda-there \ |
| // RUN: 2>&1 | FileCheck %s --check-prefix SYMLINKS |
| |
| |
| // We only take a CUDA installation from PATH if it contains libdevice. |
| // RUN: env PATH=%S/Inputs/CUDA-nolibdevice/usr/local/cuda/bin \ |
| // RUN: %clang -v --target=i386-unknown-linux --sysroot=%S/no-cuda-there \ |
| // RUN: 2>&1 | FileCheck %s --check-prefix NOCUDA |
| // RUN: env PATH=%S/Inputs/CUDA-nolibdevice/usr/local/cuda/bin \ |
| // RUN: %clang -v --target=i386-apple-macosx --sysroot=%S/no-cuda-there \ |
| // RUN: 2>&1 | FileCheck %s --check-prefix NOCUDA |
| // RUN: env PATH=%S/Inputs/CUDA-nolibdevice/usr/local/cuda/bin \ |
| // RUN: %clang -v --target=x86_64-unknown-linux --sysroot=%S/no-cuda-there \ |
| // RUN: 2>&1 | FileCheck %s --check-prefix NOCUDA |
| // RUN: env PATH=%S/Inputs/CUDA-nolibdevice/usr/local/cuda/bin \ |
| // RUN: %clang -v --target=x86_64-apple-macosx --sysroot=%S/no-cuda-there \ |
| // RUN: 2>&1 | FileCheck %s --check-prefix NOCUDA |
| |
| // We even require libdevice if -nocudalib is passed to avoid false positives |
| // if the distribution merges CUDA into /usr and ptxas ends up /usr/bin. |
| // RUN: env PATH=%S/Inputs/CUDA-nolibdevice/usr/local/cuda/bin \ |
| // RUN: %clang -v --target=i386-unknown-linux --sysroot=%S/no-cuda-there -nocudalib \ |
| // RUN: 2>&1 | FileCheck %s --check-prefix NOCUDA |
| // RUN: env PATH=%S/Inputs/CUDA-nolibdevice/usr/local/cuda/bin \ |
| // RUN: %clang -v --target=i386-apple-macosx --sysroot=%S/no-cuda-there -nocudalib \ |
| // RUN: 2>&1 | FileCheck %s --check-prefix NOCUDA |
| // RUN: env PATH=%S/Inputs/CUDA-nolibdevice/usr/local/cuda/bin \ |
| // RUN: %clang -v --target=x86_64-unknown-linux --sysroot=%S/no-cuda-there -nocudalib \ |
| // RUN: 2>&1 | FileCheck %s --check-prefix NOCUDA |
| // RUN: env PATH=%S/Inputs/CUDA-nolibdevice/usr/local/cuda/bin \ |
| // RUN: %clang -v --target=x86_64-apple-macosx --sysroot=%S/no-cuda-there -nocudalib \ |
| // RUN: 2>&1 | FileCheck %s --check-prefix NOCUDA |
| |
| |
| // Check that the CUDA installation in PATH is not taken when passing |
| // the option --cuda-path-ignore-env. |
| // RUN: env PATH=%S/Inputs/CUDA/usr/local/cuda/bin \ |
| // RUN: %clang -v --target=i386-unknown-linux --sysroot=%S/no-cuda-there --cuda-path-ignore-env \ |
| // RUN: 2>&1 | FileCheck %s --check-prefix NOCUDA |
| // RUN: env PATH=%S/Inputs/CUDA/usr/local/cuda/bin \ |
| // RUN: %clang -v --target=i386-apple-macosx --sysroot=%S/no-cuda-there --cuda-path-ignore-env \ |
| // RUN: 2>&1 | FileCheck %s --check-prefix NOCUDA |
| // RUN: env PATH=%S/Inputs/CUDA/usr/local/cuda/bin \ |
| // RUN: %clang -v --target=x86_64-unknown-linux --sysroot=%S/no-cuda-there --cuda-path-ignore-env \ |
| // RUN: 2>&1 | FileCheck %s --check-prefix NOCUDA |
| // RUN: env PATH=%S/Inputs/CUDA/usr/local/cuda/bin \ |
| // RUN: %clang -v --target=x86_64-apple-macosx --sysroot=%S/no-cuda-there --cuda-path-ignore-env \ |
| // RUN: 2>&1 | FileCheck %s --check-prefix NOCUDA |
| |
| // CHECK: Found CUDA installation: {{.*}}/Inputs/CUDA/usr/local/cuda |
| // SYMLINKS: Found CUDA installation: {{.*}}/Inputs/CUDA-symlinks/opt/cuda |
| // NOCUDA-NOT: Found CUDA installation: |