diff options
author | Erik Schnetter <schnetter@gmail.com> | 2020-02-28 12:32:41 -0500 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-02-28 11:32:41 -0600 |
commit | 38d5d7304d36f92a383ebda280883171df228c3a (patch) | |
tree | 011b35580b46fa56efd899cd8ebf4bb041fdb98c | |
parent | 513f9235c3bb7ad066dd8e494636fc59a2b3e747 (diff) | |
download | spack-38d5d7304d36f92a383ebda280883171df228c3a.tar.gz spack-38d5d7304d36f92a383ebda280883171df228c3a.tar.bz2 spack-38d5d7304d36f92a383ebda280883171df228c3a.tar.xz spack-38d5d7304d36f92a383ebda280883171df228c3a.zip |
ssht: Correct recipe (#15217)
- Tell make about the source code path
- Install actual header files, not a wrapper with wrong paths
- Add a patch to prevent compiler warnings
- Improve description
-rw-r--r-- | var/spack/repos/builtin/packages/ssht/float_conversion.patch | 11 | ||||
-rw-r--r-- | var/spack/repos/builtin/packages/ssht/package.py | 31 |
2 files changed, 38 insertions, 4 deletions
diff --git a/var/spack/repos/builtin/packages/ssht/float_conversion.patch b/var/spack/repos/builtin/packages/ssht/float_conversion.patch new file mode 100644 index 0000000000..af81bcafd8 --- /dev/null +++ b/var/spack/repos/builtin/packages/ssht/float_conversion.patch @@ -0,0 +1,11 @@ +--- spack-src/src/c/ssht_sampling.h ++++ spack-src/src/c/ssht_sampling.h +@@ -89,7 +89,7 @@ + */ + static inline void ssht_sampling_ind2elm(int *el, int *m, int ind) { + +- *el = sqrt(ind); ++ *el = lrint(floor(sqrt(ind))); + *m = ind - (*el)*(*el) - (*el); + + } diff --git a/var/spack/repos/builtin/packages/ssht/package.py b/var/spack/repos/builtin/packages/ssht/package.py index 293ab0eedd..7a4cd4857b 100644 --- a/var/spack/repos/builtin/packages/ssht/package.py +++ b/var/spack/repos/builtin/packages/ssht/package.py @@ -7,18 +7,41 @@ from spack import * class Ssht(Package): - """The SSHT code provides functionality to perform fast and exact - spin spherical harmonic transforms.""" + """ssht: Spin spherical harmonic transforms + + The SSHT code provides functionality to perform fast and exact + spin spherical harmonic transforms based on the sampling theorem + on the sphere derived in our paper: A novel sampling theorem on + the sphere <http://dx.doi.org/10.1109/TSP.2011.2166394>. + """ homepage = "https://astro-informatics.github.io/ssht/" git = "https://github.com/astro-informatics/ssht.git" + maintainers = ['eschnett'] + version('1.2b1', commit='7378ce8853897cbd1b08adebf7ec088c1e40f860') depends_on('fftw') + patch('float_conversion.patch') + def install(self, spec, prefix): - make('default') - install_tree('include/c', join_path(prefix, 'include')) + make('default', 'SSHTDIR=.') + mkdirp(join_path(prefix, 'include')) + install('src/c/ssht.h', + join_path(prefix, 'include', 'ssht.h')) + install('src/c/ssht_adjoint.h', + join_path(prefix, 'include', 'ssht_adjoint.h')) + install('src/c/ssht_core.h', + join_path(prefix, 'include', 'ssht_core.h')) + install('src/c/ssht_dl.h', + join_path(prefix, 'include', 'ssht_dl.h')) + install('src/c/ssht_error.h', + join_path(prefix, 'include', 'ssht_error.h')) + install('src/c/ssht_sampling.h', + join_path(prefix, 'include', 'ssht_sampling.h')) + install('src/c/ssht_types.h', + join_path(prefix, 'include', 'ssht_types.h')) install_tree('doc/c', join_path(prefix, 'doc')) install_tree('lib/c', join_path(prefix, 'lib')) |