ESMF-7.0.1-intel-2018.eb 1.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. name = 'ESMF'
  2. version = '7.0.1'
  3. homepage = 'http://sourceforge.net/projects/esmf'
  4. description = """The Earth System Modeling Framework (ESMF) is software for building and coupling weather,
  5. climate, and related models."""
  6. toolchain = {'name': 'intel', 'version': '2018'}
  7. toolchainopts = {'usempi': True}
  8. source_urls = [SOURCEFORGE_SOURCE]
  9. sources = ['%%(namelower)s_%s_src.tar.gz' % '_'.join(version.split('.'))]
  10. patches = [
  11. 'ESMF-6.1.1_libopts.patch',
  12. 'ESMF-6.3.0rp1_fix-file-open-test.patch',
  13. ]
  14. dependencies = [
  15. ('netCDF', '4.4.1.1'),
  16. ('netCDF-Fortran', '4.4.4'),
  17. ('netCDF-C++4', '4.3.0'),
  18. ]
  19. buildopts = 'ESMF_NETCDF_INCLUDE=$EBROOTNETCDFMINFORTRAN/include '
  20. buildopts += 'ESMF_F90COMPILEOPTS="-O -fPIC -m64 -mcmodel=small -threads -qopenmp" '
  21. buildopts += 'ESMF_F90LINKOPTS="-m64 -mcmodel=small -threads -Wl,--no-as-needed -qopenmp" '
  22. buildopts += 'ESMF_CXXCOMPILEOPTS="-O -DNDEBUG -fPIC -m64 -mcmodel=small -pthread -qopenmp" '
  23. buildopts += 'ESMF_CXXLINKOPTS="-m64 -mcmodel=small -pthread -Wl,--no-as-needed -qopenmp" '
  24. buildopts += 'ESMF_SL_LIBOPTS="-O -DNDEBUG -fPIC -m64 -mcmodel=small -pthread -qopenmp -shared" '
  25. buildopts += 'ESMF_NETCDF_LIBS="`nc-config --libs` `nf-config --flibs` `ncxx4-config --libs`"'
  26. installopts = 'ESMF_F90COMPILEOPTS="-O -fPIC -m64 -mcmodel=small -threads -qopenmp" '
  27. installopts += 'ESMF_F90LINKOPTS="-m64 -mcmodel=small -threads -Wl,--no-as-needed -qopenmp" '
  28. installopts += 'ESMF_CXXCOMPILEOPTS="-O -DNDEBUG -fPIC -m64 -mcmodel=small -pthread -qopenmp" '
  29. installopts += 'ESMF_CXXLINKOPTS="-m64 -mcmodel=small -pthread -Wl,--no-as-needed -qopenmp" '
  30. installopts += 'ESMF_SL_LIBOPTS="-O -DNDEBUG -fPIC -m64 -mcmodel=small -pthread -qopenmp -shared" '
  31. # too parallel causes the build to become really slow
  32. maxparallel = 8
  33. moduleclass = 'geo'