xref: /petsc/config/examples/arch-ci-linux-cuda-uni-pkgs.py (revision df3bd252dbc574245cbbb4edf6b407438c525c05)
1*df3bd252SSatish Balay#!/usr/bin/env python3
26e42a002SJunchao Zhang
36e42a002SJunchao Zhangimport os
46e42a002SJunchao Zhangpetsc_hash_pkgs=os.path.join(os.getenv('HOME'),'petsc-hash-pkgs')
56e42a002SJunchao Zhang
66e42a002SJunchao Zhangif __name__ == '__main__':
76e42a002SJunchao Zhang  import sys
86e42a002SJunchao Zhang  import os
96e42a002SJunchao Zhang  sys.path.insert(0, os.path.abspath('config'))
106e42a002SJunchao Zhang  import configure
116e42a002SJunchao Zhang  configure_options = [
126e42a002SJunchao Zhang    '--package-prefix-hash='+petsc_hash_pkgs,
136e42a002SJunchao Zhang    '--with-mpi=0',
1455b7095dSSatish Balay    '--with-cc=gcc',
1555b7095dSSatish Balay    '--with-cxx=g++',
166e42a002SJunchao Zhang    '--with-fc=gfortran',
176e42a002SJunchao Zhang    '--with-cuda=1',
186e42a002SJunchao Zhang    '--download-hdf5',
196e42a002SJunchao Zhang    '--download-metis',
206e42a002SJunchao Zhang    '--download-superlu',
216e42a002SJunchao Zhang    '--download-mumps',
226e42a002SJunchao Zhang    '--with-mumps-serial',
23ed587871SSatish Balay    '--download-p4est=1',
24ed587871SSatish Balay    '--with-zlib=1',
2553022affSStefano Zampini    # stress-test h2opus: mpiuni and CPU code while PETSc has GPU support
2653022affSStefano Zampini    '--download-h2opus',
27030f984aSJacob Faibussowitsch    # need to pin c++14 since nvcc uses gcc 8 (with std=c++14), petsc uses gcc 9 (with
28030f984aSJacob Faibussowitsch    # std=c++17), and interleaving this specific compiler and version combination seems to
29030f984aSJacob Faibussowitsch    # break linkage of static constexpr member variables
30b4c0a785SJacob Faibussowitsch    '--with-cxx-dialect=14',
3195b69342SSatish Balay    '--with-shared-libraries=1',
321def79dbSPierre Jolivet    '--download-slepc',
331def79dbSPierre Jolivet    '--download-hpddm',
340cf2e031SBarry Smith    '--download-fftw',
356e42a002SJunchao Zhang  ]
366e42a002SJunchao Zhang  configure.petsc_configure(configure_options)
376e42a002SJunchao Zhang
38