ESMValTool-2.0a1-foss-2018b-Python-2.7.15.eb 9.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230
  1. easyblock = 'Binary'
  2. name = 'ESMValTool'
  3. version = '2.0a1'
  4. versionsuffix = '-Python-%(pyver)s'
  5. homepage = 'https://www.esmvaltool.org/'
  6. description = """The Earth System Model eValuation Tool (ESMValTool)
  7. is a community diagnostics and performance metrics tool
  8. for the evaluation of Earth System Models (ESMs) that
  9. allows for routine comparison of single or multiple models,
  10. either against predecessor versions or against observations."""
  11. toolchain = {'name': 'foss', 'version': '2018b'}
  12. toolchainopts = {'pic': True}
  13. source_urls = ['https://github.com/ESMValGroup/ESMValTool/archive/']
  14. sources = [{'filename': SOURCE_TAR_GZ, 'download_filename': 'v%(version)s.tar.gz'}]
  15. dependencies = [
  16. ('Python', '2.7.15'),
  17. ('NCL', '6.5.0-Python-2.7.15'),
  18. ('R', '3.5.1', versionsuffix),
  19. ('CDO', '1.9.5'),
  20. ('GEOS', '3.6.2', versionsuffix),
  21. ('libjpeg-turbo', '2.0.0'),
  22. ('libpng', '1.6.34'),
  23. ('zlib', '1.2.11'),
  24. ('LibTIFF', '4.0.9'),
  25. ('freetype', '2.9.1'),
  26. ('PROJ', '5.0.0'),
  27. ('netCDF', '4.6.1'),
  28. ('GDAL', '2.2.3', versionsuffix),
  29. ('PyGTK', '2.24.0', versionsuffix),
  30. ('ecCodes', '2.8.2'),
  31. ('libmo_unpack', '3.1.2'),
  32. ('numba', '0.43.0', versionsuffix),
  33. ]
  34. exts_download_dep_fail = True
  35. exts_defaultclass = 'PythonPackage'
  36. exts_default_options = {
  37. 'source_tmpl': '%(name)s-%(version)s.tar.gz',
  38. }
  39. # exts_filter =
  40. # ("python -c 'import %(ext_name)s'", '')
  41. # ("R -q --no-save", "library(%(ext_name)s)"),
  42. exts_classmap = {'ncdf4': 'RPackage'}
  43. exts_list = [
  44. # Python deps, order is important!
  45. ('olefile', '0.45.1', {
  46. 'source_tmpl': '%(name)s-%(version)s.zip',
  47. 'source_urls': ['https://pypi.python.org/packages/source/o/olefile/'],
  48. 'checksums': ['2b6575f5290de8ab1086f8c5490591f7e0885af682c7c1793bdaf6e64078d385'],
  49. }),
  50. ('Pillow', '4.3.0', {
  51. 'modulename': 'PIL',
  52. 'source_urls': ['https://pypi.python.org/packages/source/p/Pillow/'],
  53. 'checksums': ['a97c715d44efd5b4aa8d739b8fad88b93ed79f1b33fc2822d5802043f3b1b527'],
  54. }),
  55. ('pyproj', '1.9.5.1', {
  56. 'source_urls': ['https://pypi.python.org/packages/source/p/pyproj/'],
  57. 'checksums': ['53fa54c8fa8a1dfcd6af4bf09ce1aae5d4d949da63b90570ac5ec849efaf3ea8'],
  58. }),
  59. ('pyshp', '2.1.0', {
  60. 'modulename': 'shapefile',
  61. 'source_urls': ['https://pypi.python.org/packages/source/p/pyshp/'],
  62. }),
  63. ('chardet', '3.0.4', {
  64. 'source_urls': ['https://pypi.python.org/packages/source/c/chardet/'],
  65. 'checksums': ['84ab92ed1c4d4f16916e05906b6b75a6c0fb5db821cc65e70cbd64a3e2a5eaae'],
  66. }),
  67. ('urllib3', '1.24.1', {
  68. 'source_urls': ['https://pypi.python.org/packages/source/u/urllib3/'],
  69. }),
  70. ('certifi', '2019.3.9', {
  71. 'source_urls': ['https://pypi.python.org/packages/source/c/certifi/'],
  72. }),
  73. ('requests', '2.21.0', {
  74. 'source_urls': ['https://pypi.python.org/packages/source/r/requests/'],
  75. }),
  76. ('OWSLib', '0.17.1', {
  77. 'source_urls': ['https://pypi.python.org/packages/source/o/OWSLib/'],
  78. }),
  79. ('netCDF4', '1.3.1', {
  80. 'modulename': 'netCDF4',
  81. 'source_urls': ['https://pypi.python.org/packages/source/n/netCDF4/'],
  82. 'checksums': ['570ea59992aa6d98a9b672c71161d11ba5683f787da53446086077470a869957'],
  83. }),
  84. ('geoval', '0.1.5', {
  85. 'source_urls': ['https://pypi.python.org/packages/source/g/geoval/'],
  86. 'checksums': ['7da4a1879f78bb7aac2d41b5c1ee360ff74087bf857c81c532deb8cc31feb36e'],
  87. }),
  88. ('cdo', '1.3.6', {
  89. 'source_urls': ['https://pypi.python.org/packages/source/c/cdo/'],
  90. 'checksums': ['b167efbbac7d0a6cbf74f5d211255705c73245f7c2590b6d9eb634347d8b2c1f'],
  91. }),
  92. ('Shapely', '1.6.4.post2', {
  93. 'source_urls': ['https://pypi.python.org/packages/source/s/Shapely/'],
  94. }),
  95. ('Cartopy', '0.17.0', {
  96. 'source_urls': ['https://pypi.python.org/packages/source/c/Cartopy/'],
  97. }),
  98. ('dask', '1.1.4', {
  99. 'source_urls': ['https://pypi.python.org/packages/source/d/dask/'],
  100. }),
  101. ('PyKE', '1.1.1', {
  102. 'source_tmpl': 'pyke-1.1.1.zip',
  103. 'source_urls': ['http://download.sourceforge.net/pyke'],
  104. 'checksums': ['b0b294f435c6e6d2d4a80badf57d92cb66814dfe21e644a521901209e6a3f8ae'],
  105. }),
  106. ('cf-units', '2.1.1', {
  107. 'source_urls': ['https://pypi.python.org/packages/source/c/cf_units/'],
  108. }),
  109. ('cftime', '1.0.3.4rel', {
  110. 'modulename': 'cftime',
  111. 'source_tmpl': 'v%(version)s.tar.gz',
  112. 'source_urls': ['https://github.com/Unidata/cftime/archive/'],
  113. }),
  114. ('pyugrid', '0.3.1', {
  115. 'source_urls': ['https://pypi.python.org/packages/source/p/pyugrid/'],
  116. 'checksums': ['eddadc1e88c0e801f780b1e6f636fbfc00e3d14cdab82b43300fde0918310053'],
  117. }),
  118. ('mo_pack', '0.2.0', {
  119. 'source_tmpl': 'v%(version)s.tar.gz',
  120. 'source_urls': ['https://github.com/SciTools/mo_pack/archive/'],
  121. 'checksums': ['4aa70e1f846b666670843bc2514435dedf7393203e88abaf74d48f8f2717a726'],
  122. }),
  123. ('cycler', '0.10.0', {
  124. 'source_urls': ['https://pypi.python.org/packages/source/c/cycler/'],
  125. 'checksums': ['cd7b2d1018258d7247a71425e9f26463dfb444d411c39569972f4ce586b0c9d8'],
  126. }),
  127. ('singledispatch', '3.4.0.3', {
  128. 'source_urls': ['https://pypi.python.org/packages/source/s/singledispatch/'],
  129. 'checksums': ['5b06af87df13818d14f08a028e42f566640aef80805c3b50c5056b086e3c2b9c'],
  130. }),
  131. ('backports_abc', '0.5', {
  132. 'source_urls': ['https://pypi.python.org/packages/source/b/backports_abc/'],
  133. 'checksums': ['033be54514a03e255df75c5aee8f9e672f663f93abb723444caec8fe43437bde'],
  134. }),
  135. ('tornado', '5.1.1', {
  136. 'source_urls': ['https://pypi.python.org/packages/source/t/tornado/'],
  137. }),
  138. ('matplotlib', '2.2.4', {
  139. 'source_urls': ['https://pypi.python.org/packages/source/m/matplotlib/'],
  140. }),
  141. ('toolz', '0.9.0', {
  142. 'source_urls': ['https://pypi.python.org/packages/source/t/toolz/'],
  143. 'checksums': ['929f0a7ea7f61c178bd951bdae93920515d3fbdbafc8e6caf82d752b9b3b31c9'],
  144. }),
  145. ('basemap', '1.1.0', {
  146. 'modulename': 'mpl_toolkits.basemap',
  147. 'source_tmpl': 'v%(version)s.tar.gz',
  148. 'source_urls': ['https://github.com/matplotlib/basemap/archive'],
  149. 'checksums': ['6acdc3a08bfcebf0a1b52a05d73d51b7aa5e7240fedfa95537c92d16f2ef8778'],
  150. }),
  151. ('scitools-iris', '2.2.0', {
  152. 'modulename': 'iris',
  153. 'source_tmpl': 'v%(version)s.tar.gz',
  154. 'source_urls': ['https://github.com/SciTools/iris/archive/'],
  155. 'checksums': ['e4b52e43da16b72af9ccbcb4d53bc401'],
  156. }),
  157. ('iris-grib', '0.14.0', {
  158. 'modulename': 'iris_grib',
  159. 'source_tmpl': 'v%(version)s.tar.gz',
  160. 'source_urls': ['https://github.com/SciTools/iris-grib/archive/'],
  161. 'checksums': ['b6a4ae0dbfcfb8aa08c6106d8db98c51'],
  162. }),
  163. ('patsy', '0.5.0', {
  164. 'source_urls': ['https://pypi.python.org/packages/source/p/patsy/'],
  165. 'checksums': ['e05f38d5c38c8d216f0cc2b765b1069b433c92d628b954fb2fee68d13e42883b'],
  166. }),
  167. ('statsmodels', '0.9.0', {
  168. 'source_urls': ['https://pypi.python.org/packages/source/s/statsmodels/'],
  169. 'checksums': ['6461f93a842c649922c2c9a9bc9d9c4834110b89de8c4af196a791ab8f42ba3b'],
  170. }),
  171. ('nc-time-axis', '1.1.0', {
  172. 'modulename': 'nc_time_axis',
  173. 'source_urls': ['https://pypi.python.org/packages/source/n/nc-time-axis/'],
  174. 'checksums': ['ea9d4f7f9e9189c96f7d320235ac6c4be7f63dc5aa256b3ee5d5cca5845e6e26'],
  175. }),
  176. ('yamale', '1.10.0', {
  177. 'modulename': 'yamale',
  178. 'source_urls': ['https://pypi.python.org/packages/source/y/yamale/'],
  179. }),
  180. ('stratify', '0.2', {
  181. 'modulename': 'stratify',
  182. 'source_tmpl': 'master.zip',
  183. 'source_urls': ['https://github.com/SciTools-incubator/python-stratify/archive/'],
  184. }),
  185. ('psutil', '5.6.1', {
  186. 'modulename': 'psutil',
  187. 'source_urls': ['https://pypi.python.org/packages/source/p/psutil/'],
  188. 'checksums': ['fa0a570e0a30b9dd618bffbece590ae15726b47f9f1eaf7518dfb35f4d7dcd21'],
  189. }),
  190. # R extension
  191. ('ncdf4', '1.16', {
  192. 'source_tmpl': '%(name)s_%(version)s.tar.gz',
  193. 'source_urls': [
  194. 'http://cran.r-project.org/src/contrib/Archive/ncdf4',
  195. 'http://cran.r-project.org/src/contrib/',
  196. 'http://cran.freestatistics.org/src/contrib',
  197. ],
  198. 'checksums': ['edd5731a805bbece3a8f6132c87c356deafc272351e1dd07256ca00574949253'],
  199. }),
  200. ]
  201. skipsteps = ['sanitycheck']
  202. postinstallcmds = [
  203. "cd %(installdir)s && " +
  204. "tar xzf ESMValTool-%(version)s.tar.gz && " +
  205. "cd ESMValTool-%(version)s && " +
  206. 'PYTHONPATH="%(installdir)s/lib/python%(pyshortver)s/site-packages":"${PYTHONPATH}" && python setup.py install --prefix=%(installdir)s && ' +
  207. "cd esmvaltool && " +
  208. "cp -r cmor diag_scripts interface_scripts preprocessor recipes utils %(installdir)s/lib/python%(pyshortver)s/site-packages/ESMValTool-%(version)s-py2.7.egg/esmvaltool && " +
  209. "cp config-developer.yml config-logging.yml config-references.yml config-user.yml %(installdir)s/lib/python%(pyshortver)s/site-packages/ESMValTool-%(version)s-py2.7.egg/esmvaltool && " +
  210. "cd %(installdir)s && " +
  211. "rm -rf ESMValTool-%(version)s ESMValTool-%(version)s.tar.gz"
  212. ]
  213. modextrapaths = {
  214. 'PYTHONPATH': 'lib/python%(pyshortver)s/site-packages',
  215. 'R_LIBS': '',
  216. }
  217. moduleclass = 'geo'