xref: /petsc/config/examples/arch-ci-linux-cuda-single-cxx.py (revision 213c392d90200b50eaf762a6265ba3648837870d)
1*213c392dSSatish Balay#!/usr/bin/python
2*213c392dSSatish Balay
3*213c392dSSatish Balayimport os
4*213c392dSSatish Balaypetsc_hash_pkgs=os.path.join(os.getenv('HOME'),'petsc-hash-pkgs')
5*213c392dSSatish Balay
6*213c392dSSatish Balayif __name__ == '__main__':
7*213c392dSSatish Balay  import sys
8*213c392dSSatish Balay  import os
9*213c392dSSatish Balay  sys.path.insert(0, os.path.abspath('config'))
10*213c392dSSatish Balay  import configure
11*213c392dSSatish Balay  configure_options = [
12*213c392dSSatish Balay    '--package-prefix-hash='+petsc_hash_pkgs,
13*213c392dSSatish Balay    '--with-make-test-np=4',
14*213c392dSSatish Balay    'COPTFLAGS=-g -O',
15*213c392dSSatish Balay    'FOPTFLAGS=-g -O',
16*213c392dSSatish Balay    'CXXOPTFLAGS=-g -O',
17*213c392dSSatish Balay    '--with-cuda=1',
18*213c392dSSatish Balay    '--with-precision=single',
19*213c392dSSatish Balay    '--download-openblas', # default ATLAS blas on Ubuntu 14.04 breaks runex76 in src/mat/examples/tests
20*213c392dSSatish Balay    '--download-openblas-make-options=TARGET=GENERIC',
21*213c392dSSatish Balay    '--with-clanguage=cxx',
22*213c392dSSatish Balay    '--with-single-library=0',
23*213c392dSSatish Balay    '--with-visibility=1',
24*213c392dSSatish Balay    # Note: If using nvcc with a host compiler other than the CUDA SDK default for your platform (GCC on Linux, clang
25*213c392dSSatish Balay    # on Mac OS X, MSVC on Windows), you must set -ccbin appropriately in CUDAFLAGS, as in the example for PGI below:
26*213c392dSSatish Balay    # 'CUDAFLAGS=-ccbin pgc++',
27*213c392dSSatish Balay  ]
28*213c392dSSatish Balay
29*213c392dSSatish Balay  configure.petsc_configure(configure_options)
30