#
#        DAMASK Abaqus Environment File
#
# $Id$
#       ------------------------------------
# originally taken from Abaqus ver. 6.9.1
#
#
# Linux (Opteron/EM64T) Settings:
#
# Compile and Link command for user subroutines.
# Compile_cpp and link_exe for Abaqus make utility.
#
import os, re, glob, driverUtils

# Always use the newest version
fortDefPath = '/'

dirLst = glob.glob('/opt/intel/fce/*')
if dirLst:
    dirLst.sort()
    fortDefPath = dirLst[-1] + '/bin'

fortCompiler = "ifort"

if os.path.exists(os.path.join(fortDefPath, fortCompiler)):
    fortCmd = os.path.join(fortDefPath, fortCompiler)
else:
    fortCmd = fortCompiler

# "-free"         to use free-format FORTRAN 90 syntax
# "-O3"           maximum optimization level
# "-fpp"          use FORTRAN preprocessor on source code
# "-openmp"       build with openMP support

compile_fortran = (fortCmd + " -c -fPIC -auto -w90 -w95 " + 
                   "-WB -I%I -free -O3 -fpp -openmp")

# Do not use parts in input file
cae_no_parts_input_file=ON

# You can compile DAMASK into a library to be used with abaqus
# it saves you from compiling the subroutine for each job
# in this case you do not have to specify a usersubroutine file
# however if you still do, the compiled version will override that in the library
# Procedure:
# 1. create a library directory, e.g. abqlib, in your prefered location
# 2. build the library replacing your_prefered_location/abqlib with the correct path to the directory created in 1.:
#    abaqus make -l DAMASK_abaqus_std.f -dir your_prefered_location/abqlib
#    abaqus make -l DAMASK_abaqus_exp.f -dir your_prefered_location/abqlib
# 3. uncomment the next line after replacing your_prefered_location/abqlib with the correct path to the directory created in 1.
# usub_lib_dir='your_prefered_location/abqlib'

# Remove the temporary names from the namespace
del fortCmd
del fortDefPath
del fortCompiler
del dirLst