GMT: add 6.0.0 (#15785)
This commit is contained in:
		| @@ -14,34 +14,49 @@ class Gmt(Package): | ||||
|     contour maps to artificially illuminated surfaces and 3D perspective views. | ||||
|     """ | ||||
| 
 | ||||
|     homepage = "http://gmt.soest.hawaii.edu/" | ||||
|     url      = "https://github.com/GenericMappingTools/gmt/archive/5.4.4.tar.gz" | ||||
|     homepage = "https://www.generic-mapping-tools.org/" | ||||
|     url      = "https://github.com/GenericMappingTools/gmt/archive/6.0.0.tar.gz" | ||||
|     git      = "https://github.com/GenericMappingTools/gmt.git" | ||||
| 
 | ||||
|     maintainers = ['adamjstewart'] | ||||
| 
 | ||||
|     version('master', branch='master') | ||||
|     version('6.0.0', sha256='7a733e670f01d99f8fc0da51a4337320d764c06a68746621f83ccf2e3453bcb7') | ||||
|     version('5.4.4', sha256='b593dfb101e6507c467619f3d2190a9f78b09d49fe2c27799750b8c4c0cd2da0') | ||||
|     version('4.5.9', sha256='9b13be96ccf4bbd38c14359c05dfa7eeeb4b5f06d6f4be9c33d6c3ea276afc86', | ||||
|             url='ftp://ftp.soest.hawaii.edu/gmt/legacy/gmt-4.5.9.tar.bz2') | ||||
| 
 | ||||
|     variant('pcre', default=False, description='Enable the PCRE interface') | ||||
|     variant('gdal', default=False, description='Enable the GDAL interface') | ||||
|     variant('fftw', default=True, description='Fast FFTs') | ||||
|     variant('lapack', default=True, description='Fast matrix inversion') | ||||
|     variant('blas', default=True, description='Fast matrix multiplications') | ||||
|     variant('ghostscript', default=False, description='Ability to convert PostScript plots to PDF and rasters') | ||||
|     variant('gdal', default=False, description='Ability to read and write numerous grid and image formats') | ||||
|     variant('pcre', default=False, description='Regular expression support') | ||||
|     variant('fftw', default=False, description='Fast FFTs') | ||||
|     variant('glib', default=False, description='GTHREAD support') | ||||
|     variant('lapack', default=False, description='Fast matrix inversion') | ||||
|     variant('blas', default=False, description='Fast matrix multiplications') | ||||
|     variant('graphicsmagick', default=False, description='Convert images to animated GIFs') | ||||
|     variant('ffmpeg', default=False, description='Convert images to videos') | ||||
|     variant('docs', default=False, description='Build manpage and HTML documentation') | ||||
| 
 | ||||
|     # http://gmt.soest.hawaii.edu/projects/gmt/wiki/BuildingGMT | ||||
|     # https://github.com/GenericMappingTools/gmt/blob/master/BUILDING.md | ||||
|     # https://github.com/GenericMappingTools/gmt/blob/master/MAINTENANCE.md | ||||
| 
 | ||||
|     # Required dependencies | ||||
|     depends_on('ghostscript') | ||||
|     depends_on('subversion') | ||||
|     depends_on('cmake@2.8.5:', type='build', when='@5:') | ||||
|     depends_on('cmake@2.8.7:', type='build', when='@5:') | ||||
|     depends_on('netcdf-c@4:') | ||||
|     depends_on('curl', when='@5.4:') | ||||
| 
 | ||||
|     # Optional dependencies | ||||
|     depends_on('pcre', when='+pcre') | ||||
|     depends_on('ghostscript', when='+ghostscript') | ||||
|     depends_on('gdal', when='+gdal') | ||||
|     depends_on('pcre', when='+pcre') | ||||
|     depends_on('fftw', when='+fftw') | ||||
|     depends_on('glib', when='+glib') | ||||
|     depends_on('lapack', when='+lapack') | ||||
|     depends_on('blas', when='+blas') | ||||
|     depends_on('graphicsmagick', when='+graphicsmagick') | ||||
|     depends_on('ffmpeg', when='+ffmpeg') | ||||
|     depends_on('py-sphinx@1.4:', when='+docs', type='build') | ||||
| 
 | ||||
|     depends_on('graphicsmagick', type='test') | ||||
| 
 | ||||
|     patch('type.patch', when='@4.5.9') | ||||
| @@ -49,9 +64,56 @@ class Gmt(Package): | ||||
|     @when('@5:') | ||||
|     def install(self, spec, prefix): | ||||
|         with working_dir('spack-build', create=True): | ||||
|             cmake('..', *std_cmake_args) | ||||
|             args = std_cmake_args | ||||
| 
 | ||||
|             args.extend([ | ||||
|                 '-DNETCDF_CONFIG={0}'.format( | ||||
|                     spec['netcdf-c'].prefix.bin.join('nc-config')), | ||||
|                 '-DNETCDF_INCLUDE_DIR={0}'.format( | ||||
|                     spec['netcdf-c'].headers.directories[0]), | ||||
|                 '-DNETCDF_LIBRARY={0}'.format( | ||||
|                     spec['netcdf-c'].libs[0]) | ||||
|             ]) | ||||
| 
 | ||||
|             # If these options aren't explicitly disabled, | ||||
|             # CMake will search OS for dependencies | ||||
|             if '+ghostscript' in spec: | ||||
|                 args.append('-DGS={0}'.format( | ||||
|                     spec['ghostscript'].prefix.bin.gs)) | ||||
|             else: | ||||
|                 args.append('-DGS=') | ||||
| 
 | ||||
|             if '+gdal' in spec: | ||||
|                 args.extend([ | ||||
|                     '-DGDAL_TRANSLATE={0}'.format( | ||||
|                         spec['gdal'].prefix.bin.gdal_translate), | ||||
|                     '-DOGR2OGR={0}'.format( | ||||
|                         spec['gdal'].prefix.bin.ogr2ogr), | ||||
|                 ]) | ||||
|             else: | ||||
|                 args.extend(['-DGDAL_TRANSLATE=', '-DOGR2OGR=']) | ||||
| 
 | ||||
|             if 'graphicsmagick' in spec: | ||||
|                 args.extend([ | ||||
|                     '-DGM={0}'.format( | ||||
|                         spec['graphicsmagick'].prefix.bin.gm), | ||||
|                     '-DGRAPHICSMAGICK={0}'.format( | ||||
|                         spec['graphicsmagick'].prefix.bin.gm), | ||||
|                 ]) | ||||
|             else: | ||||
|                 args.extend(['-DGM=', '-DGRAPHICSMAGICK=']) | ||||
| 
 | ||||
|             if '+ffmpeg' in spec: | ||||
|                 args.append('-DFFMPEG={0}'.format( | ||||
|                     spec['ffmpeg'].prefix.bin.ffmpeg)) | ||||
|             else: | ||||
|                 args.append('-DFFMPEG=') | ||||
| 
 | ||||
|             cmake('..', *args) | ||||
| 
 | ||||
|             make() | ||||
|             if self.run_tests: | ||||
|                 make('check') | ||||
|             make('install') | ||||
| 
 | ||||
|     @when('@:4') | ||||
|   | ||||
		Reference in New Issue
	
	Block a user
	 Adam J. Stewart
					Adam J. Stewart