xref: /petsc/config/examples/arch-ci-linux-gcc-ifc-cmplx.py (revision f26daa2dd43308ededd540b13f6e6b6347241d27)
1*f26daa2dSSatish Balay#!/usr/bin/env python
2*f26daa2dSSatish Balay
3*f26daa2dSSatish Balayimport os
4*f26daa2dSSatish Balaypetsc_hash_pkgs=os.path.join(os.getenv('HOME'),'petsc-hash-pkgs')
5*f26daa2dSSatish Balayif not os.path.isdir(petsc_hash_pkgs): os.mkdir(petsc_hash_pkgs)
6*f26daa2dSSatish Balay
7*f26daa2dSSatish Balay# find the ifort libs location
8*f26daa2dSSatish Balayimport os
9*f26daa2dSSatish Balayimport distutils.spawn
10*f26daa2dSSatish Balayifort_lib_dir=os.path.join(os.path.dirname(os.path.dirname(distutils.spawn.find_executable('ifort'))),'lib','intel64')
11*f26daa2dSSatish Balaympich_install_dir='/homes/petsc/soft/linux-Ubuntu_14.04-x86_64/mpich-3.2-gcc-ifc'
12*f26daa2dSSatish Balaympich_lib_dir=os.path.join(mpich_install_dir,'lib')
13*f26daa2dSSatish Balay
14*f26daa2dSSatish Balayconfigure_options = [
15*f26daa2dSSatish Balay  '--package-prefix-hash='+petsc_hash_pkgs,
16*f26daa2dSSatish Balay  # cannot use download-mpich with fortranlib-autodetect=0 so disabling
17*f26daa2dSSatish Balay  #'--with-cc=gcc',
18*f26daa2dSSatish Balay  #'--with-fc=ifort',
19*f26daa2dSSatish Balay  #'--with-cxx=g++',
20*f26daa2dSSatish Balay  #'--download-mpich=1',
21*f26daa2dSSatish Balay  #'--download-mpich-pm=gforker',
22*f26daa2dSSatish Balay  '--with-mpi-dir='+mpich_install_dir,
23*f26daa2dSSatish Balay
24*f26daa2dSSatish Balay  'LIBS=-L'+ifort_lib_dir+' -lifcore -ldl -limf -lirc -L'+mpich_lib_dir+' -lmpifort -lmpi',
25*f26daa2dSSatish Balay
26*f26daa2dSSatish Balay  'COPTFLAGS=-g -O',
27*f26daa2dSSatish Balay  'FOPTFLAGS=-g -O',
28*f26daa2dSSatish Balay  'CXXOPTFLAGS=-g -O',
29*f26daa2dSSatish Balay
30*f26daa2dSSatish Balay  '--with-scalar-type=complex',
31*f26daa2dSSatish Balay  '--download-hdf5',
32*f26daa2dSSatish Balay  '--with-zlib=1',
33*f26daa2dSSatish Balay  '--download-fblaslapack=1'
34*f26daa2dSSatish Balay  ]
35*f26daa2dSSatish Balay
36*f26daa2dSSatish Balayif __name__ == '__main__':
37*f26daa2dSSatish Balay  import sys,os
38*f26daa2dSSatish Balay  sys.path.insert(0,os.path.abspath('config'))
39*f26daa2dSSatish Balay  import configure
40*f26daa2dSSatish Balay  configure.petsc_configure(configure_options)
41