Accepting request 642129 from home:cjunghans:branches:devel:languages:python
- added change from request #639007 - rename package to python3-espressomd - install COPYING for all packages - change license to GPL-3.0-or-later - added sonum define - Version bump to 4.0.0 - Rename pacakge to python-espressomd - Dropped 1830.patch - merged upstream - Dropped doc package - under rework in 4.0.0 - New features: - Reaction ensemble methods for the modelling of chemical reactions, including constant pH and Wang-Landau schemes. - Polarisable particles via the Drude-oscillator scheme. - Steepest-descent energy minimization scheme. - Methods for active particles (swimmer_reaction, dipolar swimmers). - GPU-accelerated P3M method for electrostatic interactions. - GPU-accelerated direct summation and Barnes-Hutt schemes for dipolar interactions under open boundary conditions. - Support for the electrostatic and magnetostatics method provided by the ScaFaCoS library. - Immersed boundary method for soft immersed objects in an LB fluid. - Virtual sites acting as inertialess tracers in an LB fluid usable as part of the immersed boundary method or independently. - New bonded quartic and Coulomb interactions. - Possibility to tune the skin parameter. - Support for saving to the h5md file format for molecular dynamics data. - Connection to the MD Analysis Python package. - A rotate_system command was added, which rotates the particle positions around the system’s center of mass. - Added 2255.patch to fix numpy issue on i586 - Added 2259.patch to fix numpy issue on big-endian platforms - Added 2265.patch to fix test on i586 - add 1830.patch to fix install - update version 3.3.1+git20180203.f74064d * many many small fixes * support for newer cython - adapt to new openlmi package - source mpivars.h during build - use individual libboost-*-devel packages instead of boost-devel - RPM group fixup - switched to cmake build-system - build python module - dropped header as they are for internal use only - dropped pkg-config files as nothing depends on libs yet - update version 3.3.1+git20160803.6ed0518.tar.gz * overhaul of buildsystem * many many small fixes - fix boo#985147 * there's a commit that removed redefinition of malloc and realloc which fixed build for gcc 6. but it's too hard to cherry pick, so update to the latest git version is a good idea - there's no --without-mpi option left in configure.ac, so "-openmpi" sub-package is meaningless now (everything has openmpi support) and since there's no two main packages any more, "-common" sub-package is also meaningless now (and it doesn't contains data), merged. - add sub-package: "-devel", "libEspresso0", "libEspressoTcl0" - add generate_headers.rb to gather those .hpp that're really used into "-devel" sub-package - create pkgconfig files - add some texlive BuildRequires to build pdf documentation. - update version 3.3.1+git20160622.6aa229c: * added edge statistics for meshes used by object-in-fluid * added pos_folded property * Adapted simple LB tests to current interface. * system.part.writevtk() * redesigned exclusions and added slice input * Scafacos: Add long range energy to correct place in energy data structure * Correction to scafacos energy calculation: Check cutoff in near field contrib * Scafacos: Sort out conditional compilation and cython includes * Scafacos: methods shared between electrostatics and dipolar calculations - Update to version 3.3.1 * A lot of changes; please read the NEWS file - version bumped to 3.3.0 - Highlights of this release include: - Calculation of the electrokinetic equations via the ELECTROKINETICS feature, - the Shan/Chen method for multi component lattice Boltzmann fluids, - the P3M and MMM1D methods can now be computed on a GPU, - ESPResSo now has a rudimentary Python interface. For a complete list of the changes in the release, please refer to: http://download.savannah.gnu.org/releases/espressomd/NEWS - build openmpi and non-mpi version - initial commit OBS-URL: https://build.opensuse.org/request/show/642129 OBS-URL: https://build.opensuse.org/package/show/devel:languages:python:numeric/python3-espressomd?expand=0&rev=1
This commit is contained in:
commit
4a6f936431
23
.gitattributes
vendored
Normal file
23
.gitattributes
vendored
Normal file
@ -0,0 +1,23 @@
|
|||||||
|
## Default LFS
|
||||||
|
*.7z filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.bsp filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.bz2 filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.gem filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.gz filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.jar filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.lz filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.lzma filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.obscpio filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.oxt filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.pdf filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.png filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.rpm filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.tbz filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.tbz2 filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.tgz filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.ttf filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.txz filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.whl filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.xz filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.zip filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.zst filter=lfs diff=lfs merge=lfs -text
|
1
.gitignore
vendored
Normal file
1
.gitignore
vendored
Normal file
@ -0,0 +1 @@
|
|||||||
|
.osc
|
27
2255.patch
Normal file
27
2255.patch
Normal file
@ -0,0 +1,27 @@
|
|||||||
|
diff --git a/src/core/unit_tests/ParallelScriptInterface_test.cpp b/src/core/unit_tests/ParallelScriptInterface_test.cpp
|
||||||
|
index 7374ed99ca..0195b4f7d1 100644
|
||||||
|
--- a/src/core/unit_tests/ParallelScriptInterface_test.cpp
|
||||||
|
+++ b/src/core/unit_tests/ParallelScriptInterface_test.cpp
|
||||||
|
@@ -174,7 +174,7 @@ BOOST_AUTO_TEST_CASE(parameter_lifetime) {
|
||||||
|
}
|
||||||
|
|
||||||
|
int main(int argc, char **argv) {
|
||||||
|
- mpi::environment mpi_env;
|
||||||
|
+ mpi::environment mpi_env(argc, argv);
|
||||||
|
mpi::communicator world;
|
||||||
|
callbacks = Utils::make_unique<Communication::MpiCallbacks>(
|
||||||
|
world, /* abort_on_exit */ false);
|
||||||
|
diff --git a/src/python/espressomd/utils.pyx b/src/python/espressomd/utils.pyx
|
||||||
|
index 9e29f0bd21..24ecb31c86 100644
|
||||||
|
--- a/src/python/espressomd/utils.pyx
|
||||||
|
+++ b/src/python/espressomd/utils.pyx
|
||||||
|
@@ -331,6 +331,8 @@ def is_valid_type(value, t):
|
||||||
|
if t == int:
|
||||||
|
return isinstance(value, (int, np.integer, np.long))
|
||||||
|
elif t == float:
|
||||||
|
- return isinstance(value, (float, np.float16, np.float32, np.float64, np.float128, np.longdouble))
|
||||||
|
+ if hasattr(np, 'float128'):
|
||||||
|
+ return isinstance(value, (float, np.float16, np.float32, np.float64, np.float128, np.longdouble))
|
||||||
|
+ return isinstance(value, (float, np.float16, np.float32, np.float64, np.longdouble))
|
||||||
|
else:
|
||||||
|
return isinstance(value, t)
|
37
2259.patch
Normal file
37
2259.patch
Normal file
@ -0,0 +1,37 @@
|
|||||||
|
From 81f9b86cca275f053e914c7c42e864c3af9fed8e Mon Sep 17 00:00:00 2001
|
||||||
|
From: Michael Kuron <mkuron@icp.uni-stuttgart.de>
|
||||||
|
Date: Thu, 13 Sep 2018 11:09:40 +0200
|
||||||
|
Subject: [PATCH] Fix PARTIAL_PERIODIC on big-endian platforms
|
||||||
|
|
||||||
|
---
|
||||||
|
src/core/global.cpp | 2 +-
|
||||||
|
src/core/utils/serialization/List.hpp | 3 +++
|
||||||
|
2 files changed, 4 insertions(+), 1 deletion(-)
|
||||||
|
|
||||||
|
diff --git a/src/core/global.cpp b/src/core/global.cpp
|
||||||
|
index 75959c3246..9164c5e0b4 100644
|
||||||
|
--- a/src/core/global.cpp
|
||||||
|
+++ b/src/core/global.cpp
|
||||||
|
@@ -147,7 +147,7 @@ const std::unordered_map<int, Datafield> fields{
|
||||||
|
{&nptiso.piston, Datafield::Type::DOUBLE, 1,
|
||||||
|
"npt_piston"}}, /* 27 from pressure.cpp */
|
||||||
|
{FIELD_PERIODIC,
|
||||||
|
- {&periodic, Datafield::Type::BOOL, 3,
|
||||||
|
+ {&periodic, Datafield::Type::INT, 1,
|
||||||
|
"periodicity"}}, /* 28 from grid.cpp */
|
||||||
|
{FIELD_SKIN,
|
||||||
|
{&skin, Datafield::Type::DOUBLE, 1, "skin"}}, /* 29 from integrate.cpp */
|
||||||
|
diff --git a/src/core/utils/serialization/List.hpp b/src/core/utils/serialization/List.hpp
|
||||||
|
index fdc2d172ee..ae7fc37db3 100644
|
||||||
|
--- a/src/core/utils/serialization/List.hpp
|
||||||
|
+++ b/src/core/utils/serialization/List.hpp
|
||||||
|
@@ -20,6 +20,9 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
#define CORE_UTILS_SERIALIZATION_LIST_HPP
|
||||||
|
|
||||||
|
#include <boost/serialization/array.hpp>
|
||||||
|
+#if BOOST_VERSION >= 106400 && BOOST_VERSION < 106500
|
||||||
|
+#include <boost/serialization/array_wrapper.hpp>
|
||||||
|
+#endif
|
||||||
|
#include <boost/serialization/split_free.hpp>
|
||||||
|
|
||||||
|
#include "core/utils/List.hpp"
|
56
2265.patch
Normal file
56
2265.patch
Normal file
@ -0,0 +1,56 @@
|
|||||||
|
From be29174ad76db081ff0111ac3b96c0a8f64aea5b Mon Sep 17 00:00:00 2001
|
||||||
|
From: Michael Kuron <mkuron@users.noreply.github.com>
|
||||||
|
Date: Fri, 14 Sep 2018 13:14:01 +0200
|
||||||
|
Subject: [PATCH 1/2] Fix unit test on 32-bit platform
|
||||||
|
|
||||||
|
---
|
||||||
|
src/core/unit_tests/field_coupling_couplings_test.cpp | 8 ++++----
|
||||||
|
1 file changed, 4 insertions(+), 4 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/src/core/unit_tests/field_coupling_couplings_test.cpp b/src/core/unit_tests/field_coupling_couplings_test.cpp
|
||||||
|
index 268d666eff..1dd7809eb8 100644
|
||||||
|
--- a/src/core/unit_tests/field_coupling_couplings_test.cpp
|
||||||
|
+++ b/src/core/unit_tests/field_coupling_couplings_test.cpp
|
||||||
|
@@ -78,10 +78,10 @@ BOOST_AUTO_TEST_CASE(scaled) {
|
||||||
|
const int m_id;
|
||||||
|
};
|
||||||
|
|
||||||
|
- BOOST_CHECK((1.23 * 2.) == scaled_coupling(Particle(0), 2.));
|
||||||
|
- BOOST_CHECK((default_val * 3.) == scaled_coupling(Particle(1), 3.));
|
||||||
|
- BOOST_CHECK((3.45 * 4.) == scaled_coupling(Particle(2), 4.));
|
||||||
|
- BOOST_CHECK((default_val * 5.) == scaled_coupling(Particle(3), 5.));
|
||||||
|
+ BOOST_CHECK_CLOSE(1.23 * 2., scaled_coupling(Particle(0), 2.), 1e-14);
|
||||||
|
+ BOOST_CHECK_CLOSE(default_val * 3., scaled_coupling(Particle(1), 3.), 1e-14);
|
||||||
|
+ BOOST_CHECK_CLOSE(3.45 * 4., scaled_coupling(Particle(2), 4.), 1e-14);
|
||||||
|
+ BOOST_CHECK_CLOSE(default_val * 5., scaled_coupling(Particle(3), 5.), 1e-14);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
From 005380040f5d7d9a50c450cdaf46639b333b8683 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Michael Kuron <mkuron@users.noreply.github.com>
|
||||||
|
Date: Fri, 14 Sep 2018 14:20:59 +0200
|
||||||
|
Subject: [PATCH 2/2] formatting
|
||||||
|
|
||||||
|
---
|
||||||
|
src/core/unit_tests/field_coupling_couplings_test.cpp | 6 ++++--
|
||||||
|
1 file changed, 4 insertions(+), 2 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/src/core/unit_tests/field_coupling_couplings_test.cpp b/src/core/unit_tests/field_coupling_couplings_test.cpp
|
||||||
|
index 1dd7809eb8..b14fad8e5e 100644
|
||||||
|
--- a/src/core/unit_tests/field_coupling_couplings_test.cpp
|
||||||
|
+++ b/src/core/unit_tests/field_coupling_couplings_test.cpp
|
||||||
|
@@ -79,9 +79,11 @@ BOOST_AUTO_TEST_CASE(scaled) {
|
||||||
|
};
|
||||||
|
|
||||||
|
BOOST_CHECK_CLOSE(1.23 * 2., scaled_coupling(Particle(0), 2.), 1e-14);
|
||||||
|
- BOOST_CHECK_CLOSE(default_val * 3., scaled_coupling(Particle(1), 3.), 1e-14);
|
||||||
|
+ BOOST_CHECK_CLOSE(default_val * 3., scaled_coupling(Particle(1), 3.),
|
||||||
|
+ 1e-14);
|
||||||
|
BOOST_CHECK_CLOSE(3.45 * 4., scaled_coupling(Particle(2), 4.), 1e-14);
|
||||||
|
- BOOST_CHECK_CLOSE(default_val * 5., scaled_coupling(Particle(3), 5.), 1e-14);
|
||||||
|
+ BOOST_CHECK_CLOSE(default_val * 5., scaled_coupling(Particle(3), 5.),
|
||||||
|
+ 1e-14);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
3
espresso-4.0.0.tar.gz
Normal file
3
espresso-4.0.0.tar.gz
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:8e128847447eebd843de24be9b4ad14aa19c028ae48879a5a4535a9683836e6b
|
||||||
|
size 25767191
|
124
python3-espressomd.changes
Normal file
124
python3-espressomd.changes
Normal file
@ -0,0 +1,124 @@
|
|||||||
|
-------------------------------------------------------------------
|
||||||
|
Fri Sep 28 23:13:13 UTC 2018 - Christoph Junghans <junghans@votca.org>
|
||||||
|
|
||||||
|
- added change from request #639007
|
||||||
|
- rename package to python3-espressomd
|
||||||
|
- install COPYING for all packages
|
||||||
|
- change license to GPL-3.0-or-later
|
||||||
|
- added sonum define
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Fri Sep 7 15:36:54 UTC 2018 - junghans@votca.org
|
||||||
|
|
||||||
|
- Version bump to 4.0.0
|
||||||
|
- Rename pacakge to python-espressomd
|
||||||
|
- Dropped 1830.patch - merged upstream
|
||||||
|
- Dropped doc package - under rework in 4.0.0
|
||||||
|
- New features:
|
||||||
|
- Reaction ensemble methods for the modelling of chemical reactions, including constant pH and Wang-Landau schemes.
|
||||||
|
- Polarisable particles via the Drude-oscillator scheme.
|
||||||
|
- Steepest-descent energy minimization scheme.
|
||||||
|
- Methods for active particles (swimmer_reaction, dipolar swimmers).
|
||||||
|
- GPU-accelerated P3M method for electrostatic interactions.
|
||||||
|
- GPU-accelerated direct summation and Barnes-Hutt schemes for dipolar interactions under open boundary conditions.
|
||||||
|
- Support for the electrostatic and magnetostatics method provided by the ScaFaCoS library.
|
||||||
|
- Immersed boundary method for soft immersed objects in an LB fluid.
|
||||||
|
- Virtual sites acting as inertialess tracers in an LB fluid usable as part of the immersed boundary method or independently.
|
||||||
|
- New bonded quartic and Coulomb interactions.
|
||||||
|
- Possibility to tune the skin parameter.
|
||||||
|
- Support for saving to the h5md file format for molecular dynamics data.
|
||||||
|
- Connection to the MD Analysis Python package.
|
||||||
|
- A rotate_system command was added, which rotates the particle positions around the system’s center of mass.
|
||||||
|
- Added 2255.patch to fix numpy issue on i586
|
||||||
|
- Added 2259.patch to fix numpy issue on big-endian platforms
|
||||||
|
- Added 2265.patch to fix test on i586
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Mon Feb 12 19:25:01 UTC 2018 - junghans@votca.org
|
||||||
|
|
||||||
|
- add 1830.patch to fix install
|
||||||
|
- update version 3.3.1+git20180203.f74064d
|
||||||
|
* many many small fixes
|
||||||
|
* support for newer cython
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Wed Oct 25 12:43:08 UTC 2017 - junghans@votca.org
|
||||||
|
|
||||||
|
- adapt to new openlmi package - source mpivars.h during build
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Wed Feb 1 10:36:28 UTC 2017 - adam.majer@suse.de
|
||||||
|
|
||||||
|
- use individual libboost-*-devel packages instead of boost-devel
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Thu Sep 29 13:46:20 UTC 2016 - jengelh@inai.de
|
||||||
|
|
||||||
|
- RPM group fixup
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Wed Aug 3 17:54:16 UTC 2016 - junghans@votca.org
|
||||||
|
|
||||||
|
- switched to cmake build-system
|
||||||
|
- build python module
|
||||||
|
- dropped header as they are for internal use only
|
||||||
|
- dropped pkg-config files as nothing depends on libs yet
|
||||||
|
- update version 3.3.1+git20160803.6ed0518.tar.gz
|
||||||
|
* overhaul of buildsystem
|
||||||
|
* many many small fixes
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Sun Jun 26 07:35:00 UTC 2016 - i@marguerite.su
|
||||||
|
|
||||||
|
- fix boo#985147
|
||||||
|
* there's a commit that removed redefinition of malloc and realloc
|
||||||
|
which fixed build for gcc 6. but it's too hard to cherry pick, so
|
||||||
|
update to the latest git version is a good idea
|
||||||
|
- there's no --without-mpi option left in configure.ac, so "-openmpi"
|
||||||
|
sub-package is meaningless now (everything has openmpi support)
|
||||||
|
and since there's no two main packages any more, "-common" sub-package
|
||||||
|
is also meaningless now (and it doesn't contains data), merged.
|
||||||
|
- add sub-package: "-devel", "libEspresso0", "libEspressoTcl0"
|
||||||
|
- add generate_headers.rb to gather those .hpp that're really used
|
||||||
|
into "-devel" sub-package
|
||||||
|
- create pkgconfig files
|
||||||
|
- add some texlive BuildRequires to build pdf documentation.
|
||||||
|
- update version 3.3.1+git20160622.6aa229c:
|
||||||
|
* added edge statistics for meshes used by object-in-fluid
|
||||||
|
* added pos_folded property
|
||||||
|
* Adapted simple LB tests to current interface.
|
||||||
|
* system.part.writevtk()
|
||||||
|
* redesigned exclusions and added slice input
|
||||||
|
* Scafacos: Add long range energy to correct place in energy data structure
|
||||||
|
* Correction to scafacos energy calculation: Check cutoff in near field contrib
|
||||||
|
* Scafacos: Sort out conditional compilation and cython includes
|
||||||
|
* Scafacos: methods shared between electrostatics and dipolar calculations
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Sun Nov 8 21:57:37 UTC 2015 - p.drouand@gmail.com
|
||||||
|
|
||||||
|
- Update to version 3.3.1
|
||||||
|
* A lot of changes; please read the NEWS file
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Tue Aug 12 03:44:16 UTC 2014 - junghans@votca.org
|
||||||
|
|
||||||
|
- version bumped to 3.3.0
|
||||||
|
- Highlights of this release include:
|
||||||
|
- Calculation of the electrokinetic equations via the ELECTROKINETICS feature,
|
||||||
|
- the Shan/Chen method for multi component lattice Boltzmann fluids,
|
||||||
|
- the P3M and MMM1D methods can now be computed on a GPU,
|
||||||
|
- ESPResSo now has a rudimentary Python interface.
|
||||||
|
For a complete list of the changes in the release, please refer to:
|
||||||
|
http://download.savannah.gnu.org/releases/espressomd/NEWS
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Fri Feb 7 17:41:18 UTC 2014 - junghans@votca.org
|
||||||
|
|
||||||
|
- build openmpi and non-mpi version
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Tue Feb 4 18:59:10 UTC 2014 - junghans@votca.org
|
||||||
|
|
||||||
|
- initial commit
|
||||||
|
|
138
python3-espressomd.spec
Normal file
138
python3-espressomd.spec
Normal file
@ -0,0 +1,138 @@
|
|||||||
|
#
|
||||||
|
# spec file for package python3-espressomd
|
||||||
|
#
|
||||||
|
# Copyright (c) 2018 SUSE LINUX GmbH, Nuernberg, Germany.
|
||||||
|
# Copyright (c) 2014 Christoph Junghans
|
||||||
|
#
|
||||||
|
# All modifications and additions to the file contributed by third parties
|
||||||
|
# remain the property of their copyright owners, unless otherwise agreed
|
||||||
|
# upon. The license for this file, and modifications and additions to the
|
||||||
|
# file, is the same license as for the pristine package itself (unless the
|
||||||
|
# license for the pristine package is not an Open Source License, in which
|
||||||
|
# case the license is the MIT License). An "Open Source License" is a
|
||||||
|
# license that conforms to the Open Source Definition (Version 1.9)
|
||||||
|
# published by the Open Source Initiative.
|
||||||
|
|
||||||
|
# Please submit bugfixes or comments via https://bugs.opensuse.org/
|
||||||
|
#
|
||||||
|
|
||||||
|
|
||||||
|
%define mpi_implem openmpi2
|
||||||
|
%ifarch ppc64
|
||||||
|
%define mpi_implem openmpi
|
||||||
|
%endif
|
||||||
|
%if 0%{?sle_version} == 120300 && 0%{?is_opensuse}
|
||||||
|
%define mpi_implem openmpi
|
||||||
|
%endif
|
||||||
|
%if 0%{?sle_version} == 120400 && !0%{?is_opensuse}
|
||||||
|
%define mpi_implem openmpi
|
||||||
|
%endif
|
||||||
|
|
||||||
|
%define pkgname espresso
|
||||||
|
%define modname %{pkgname}md
|
||||||
|
%define sonum 4
|
||||||
|
Name: python3-%{modname}
|
||||||
|
Version: 4.0.0
|
||||||
|
Release: 0
|
||||||
|
Summary: Parallel simulation software for soft matter research
|
||||||
|
License: GPL-3.0-or-later
|
||||||
|
Group: Productivity/Scientific/Chemistry
|
||||||
|
URL: http://espressomd.org
|
||||||
|
Source: https://github.com/%{modname}/%{pkgname}/releases/download/%{version}/%{pkgname}-%{version}.tar.gz
|
||||||
|
# PATCH-FIX-UPSTREAM 2255.patch https://github.com/espressomd/espresso/pull/2255 - fix numpy issue on i586
|
||||||
|
Patch0: 2255.patch
|
||||||
|
# PATCH-FIX-UPSTREAM 2259.patch https://github.com/espressomd/espresso/pull/2259 - fix numpy issue on big-endian platforms
|
||||||
|
Patch1: 2259.patch
|
||||||
|
# PATCH-FIX-UPSTREAM 2265.patch https://github.com/espressomd/espresso/pull/2265 - fix test on i586
|
||||||
|
Patch2: 2265.patch
|
||||||
|
BuildRequires: cmake
|
||||||
|
BuildRequires: fftw3-devel
|
||||||
|
BuildRequires: gcc-c++
|
||||||
|
# Currently libboost_mpi-devel and hdf5 use different mpi versions
|
||||||
|
# BuildRequires: hdf5-devel
|
||||||
|
BuildRequires: gsl-devel
|
||||||
|
BuildRequires: %{mpi_implem}-devel
|
||||||
|
BuildRequires: python3-Cython
|
||||||
|
BuildRequires: python3-devel
|
||||||
|
BuildRequires: python3-numpy-devel
|
||||||
|
%if 0%{?suse_version} > 1325
|
||||||
|
BuildRequires: libboost_filesystem-devel
|
||||||
|
BuildRequires: libboost_mpi-devel
|
||||||
|
BuildRequires: libboost_system-devel
|
||||||
|
BuildRequires: libboost_test-devel
|
||||||
|
%else
|
||||||
|
BuildRequires: boost-devel
|
||||||
|
%endif
|
||||||
|
|
||||||
|
%description
|
||||||
|
ESPResSo is a highly versatile software package for performing and analyzing
|
||||||
|
scientific Molecular Dynamics many-particle simulations of coarse-grained
|
||||||
|
atomistic or bead-spring models as they are used in soft-matter research in
|
||||||
|
physics, chemistry and molecular biology. It can be used to simulate systems
|
||||||
|
such as polymers, liquid crystals, colloids, ferrofluids and biological
|
||||||
|
systems, for example DNA and lipid membranes.
|
||||||
|
|
||||||
|
%package -n libEspresso%{sonum}
|
||||||
|
Summary: Shared libraries for ESPResSo
|
||||||
|
Group: System/Libraries
|
||||||
|
|
||||||
|
%description -n libEspresso%{sonum}
|
||||||
|
This package provides shared libraries for ESPResSo.
|
||||||
|
|
||||||
|
%prep
|
||||||
|
%setup -q -n %{pkgname}-%{version}
|
||||||
|
%patch0 -p1
|
||||||
|
%patch1 -p1
|
||||||
|
%patch2 -p1
|
||||||
|
chmod -x AUTHORS COPYING README NEWS ChangeLog
|
||||||
|
|
||||||
|
%build
|
||||||
|
source %{_libdir}/mpi/gcc/%{mpi_implem}/bin/mpivars.sh
|
||||||
|
|
||||||
|
# overwrite .so linker flags on SUSE distros: drop --no-undefined
|
||||||
|
# we don't install {i,}pypresso scripts as they aren't needed when installing in /usr
|
||||||
|
%cmake \
|
||||||
|
'-DCMAKE_SHARED_LINKER_FLAGS=-Wl,--as-needed -Wl,-z,now' \
|
||||||
|
-DLIBDIR=%{_lib} \
|
||||||
|
-DPYTHON_EXECUTABLE=%{_bindir}/python3 \
|
||||||
|
-DINSTALL_PYPRESSO=OFF
|
||||||
|
|
||||||
|
make %{?_smp_mflags}
|
||||||
|
|
||||||
|
%install
|
||||||
|
make -C build install DESTDIR=%{buildroot}
|
||||||
|
find %{buildroot}%{_prefix} -name "*.so" -exec chmod +x {} \;
|
||||||
|
find %{buildroot}%{_prefix} -name "gen_pxiconfig" -exec chmod +x {} \;
|
||||||
|
# no devel package
|
||||||
|
rm -f %{buildroot}%{_libdir}/lib*.so
|
||||||
|
|
||||||
|
%check
|
||||||
|
# https://github.com/espressomd/espresso/issues/2258
|
||||||
|
%ifnarch i586 %arm ppc64le
|
||||||
|
LD_LIBRARY_PATH='%{buildroot}/%{_libdir}::%{_libdir}/mpi/gcc/%{mpi_implem}/%{_lib}' make -C build check
|
||||||
|
%endif
|
||||||
|
|
||||||
|
%post -n libEspresso%{sonum} -p /sbin/ldconfig
|
||||||
|
%postun -n libEspresso%{sonum} -p /sbin/ldconfig
|
||||||
|
|
||||||
|
%files
|
||||||
|
%license COPYING
|
||||||
|
%doc README AUTHORS NEWS ChangeLog
|
||||||
|
%{python3_sitearch}/espressomd
|
||||||
|
|
||||||
|
%files -n libEspresso%{sonum}
|
||||||
|
%license COPYING
|
||||||
|
%{_libdir}/libEspressoCore.so.%{sonum}
|
||||||
|
%{_libdir}/libActor.so.%{sonum}
|
||||||
|
%{_libdir}/libImmersedBoundary.so.%{sonum}
|
||||||
|
%{_libdir}/libObjectInFluid.so.%{sonum}
|
||||||
|
%{_libdir}/libAccumulators.so.%{sonum}
|
||||||
|
%{_libdir}/libConstraints.so.%{sonum}
|
||||||
|
%{_libdir}/libEspressoConfig.so.%{sonum}
|
||||||
|
%{_libdir}/libEspressoScriptInterface.so.%{sonum}
|
||||||
|
%{_libdir}/libObservables.so.%{sonum}
|
||||||
|
%{_libdir}/libShapes.so.%{sonum}
|
||||||
|
%{_libdir}/libVirtualSites.so.%{sonum}
|
||||||
|
%{_libdir}/libcluster_analysis.so.%{sonum}
|
||||||
|
|
||||||
|
%changelog
|
Loading…
x
Reference in New Issue
Block a user