more portable fortran calling