* Close #1683 Apply ADIOS 1.10.0 Patch Also correct version dependencies and comments. * Clean Up ADIOS - add develop - simplify HDF5 options (parallel only) - remove optional netCDF (not fully v4)
This commit is contained in:
		
							
								
								
									
										29
									
								
								var/spack/repos/builtin/packages/adios/adios_1100.patch
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										29
									
								
								var/spack/repos/builtin/packages/adios/adios_1100.patch
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,29 @@ | ||||
| From 3b21a8a4150962c6938baeceacd04f619cea2fbc Mon Sep 17 00:00:00 2001 | ||||
| From: Norbert Podhorszki <pnorbert@ornl.gov> | ||||
| Date: Thu, 1 Sep 2016 16:26:23 -0400 | ||||
| Subject: [PATCH] ifdef around 'bool' type. hdf5 1.10 defines bool and breaks | ||||
|  compiling bp2h5.c | ||||
|  | ||||
| --- | ||||
|  utils/bp2h5/bp2h5.c | 8 +++++--- | ||||
|  1 file changed, 5 insertions(+), 3 deletions(-) | ||||
|  | ||||
| diff --git a/utils/bp2h5/bp2h5.c b/utils/bp2h5/bp2h5.c | ||||
| index 9c500c7..fa746bd 100644 | ||||
| --- a/utils/bp2h5/bp2h5.c | ||||
| +++ b/utils/bp2h5/bp2h5.c | ||||
| @@ -43,9 +43,11 @@ | ||||
|  #include "dmalloc.h" | ||||
|  #endif | ||||
|   | ||||
| -typedef int bool; | ||||
| -#define false 0 | ||||
| -#define true  1 | ||||
| +#ifndef bool | ||||
| +    typedef int bool; | ||||
| +#   define false 0 | ||||
| +#   define true  1 | ||||
| +#endif | ||||
|   | ||||
|  bool noindex = false;              // do no print array indices with data | ||||
|  bool printByteAsChar = false;      // print 8 bit integer arrays as string | ||||
| @@ -36,6 +36,8 @@ class Adios(Package): | ||||
|     homepage = "http://www.olcf.ornl.gov/center-projects/adios/" | ||||
|     url      = "https://github.com/ornladios/ADIOS/archive/v1.10.0.tar.gz" | ||||
|  | ||||
|     version('develop', git='https://github.com/ornladios/ADIOS.git', | ||||
|             branch='master') | ||||
|     version('1.10.0', 'eff450a4c0130479417cfd63186957f3') | ||||
|     version('1.9.0', '310ff02388bbaa2b1c1710ee970b5678') | ||||
|  | ||||
| @@ -48,14 +50,14 @@ class Adios(Package): | ||||
|     variant('mpi', default=True, description='Enable MPI support') | ||||
|     variant('infiniband', default=False, description='Enable infiniband support') | ||||
|  | ||||
|     # transforms | ||||
|     variant('zlib', default=True, description='Enable szip transform support') | ||||
|     variant('szip', default=False, description='Enable szip transform support') | ||||
|     variant('hdf5', default=False, description='Enable HDF5 transport support') | ||||
|     variant('netcdf', default=False, description='Enable NetCDF transport support') | ||||
|     # transports and serial file converters | ||||
|     variant('hdf5', default=False, description='Enable parallel HDF5 transport and serial bp2h5 converter') | ||||
|  | ||||
|     # Lots of setting up here for this package | ||||
|     # module swap PrgEnv-intel PrgEnv-$COMP | ||||
|     # module load cray-netcdf/4.3.3.1 | ||||
|     # module load cray-hdf5/1.8.14 | ||||
|     # module load python/2.7.10 | ||||
|  | ||||
| @@ -69,9 +71,13 @@ class Adios(Package): | ||||
|     # optional transformations | ||||
|     depends_on('zlib', when='+zlib') | ||||
|     depends_on('szip', when='+szip') | ||||
|     # optional transports | ||||
|     depends_on('hdf5', when='+hdf5') | ||||
|     depends_on('netcdf', when='+netcdf') | ||||
|     # optional transports & file converters | ||||
|     depends_on('hdf5@1.8:+mpi', when='+hdf5') | ||||
|  | ||||
|     # Fix ADIOS <=1.10.0 compile error on HDF5 1.10+ | ||||
|     #   https://github.com/ornladios/ADIOS/commit/3b21a8a41509 | ||||
|     #   https://github.com/LLNL/spack/issues/1683 | ||||
|     patch('adios_1100.patch', when='@:1.10.0^hdf5@1.10:') | ||||
|  | ||||
|     def validate(self, spec): | ||||
|         """ | ||||
| @@ -114,9 +120,7 @@ def install(self, spec, prefix): | ||||
|         if '+szip' in spec: | ||||
|             extra_args.append('--with-szip=%s' % spec['szip'].prefix) | ||||
|         if '+hdf5' in spec: | ||||
|             extra_args.append('--with-hdf5=%s' % spec['hdf5'].prefix) | ||||
|         if '+netcdf' in spec: | ||||
|             extra_args.append('--with-netcdf=%s' % spec['netcdf'].prefix) | ||||
|             extra_args.append('--with-phdf5=%s' % spec['hdf5'].prefix) | ||||
|  | ||||
|         sh = which('sh') | ||||
|         sh('./autogen.sh') | ||||
|   | ||||
		Reference in New Issue
	
	Block a user
	 Axel Huebl
					Axel Huebl