votca/votca.spec
Christoph Junghans 5c2d47c868 Accepting request 1126769 from home:cjunghans:branches:science
- Drop 1083.patch - merged upstream
- Add 1093.patch from upstream to fix python shebang
- Update to 2023
  - fix pyxtp option restart ([gh#votca/votca#1074])
  - fix Changelog check ([gh#votca/votca#1070])
  - add python bindings for xtp ([gh#votca/votca#1061])
  - replaced pointers in MD2QM mapping ([gh#votca/votca#1075])
  - fixed typo in esp2multipole option ([gh#votca/votca#1076])
  - update MKL detection to MKL config ([gh#votca/votca#1053])
  - remove geometry optimization ([gh#votca/votca#1077])
  - remove all references to old pdf manual ([gh#votca/votca#1081])
  - replaced deprecated boost::progress headers ([gh#votca/votca#1083])
  - drop intel classic builds from CI ([gh#votca/votca#1085])
  - disable some libint2 warning and CI clean up ([gh#votca/votca#1088])
  - fix population analysis for embedded DFT ([gh#votca/votca#1089])
  - fix pyxtp xtp-tutorials ([gh#votca/votca#1090])
  - add note on gmx build for install ([gh#votca/votca#1052])
  - fix typos in esp2multipole options ([gh#votca/votca#1054])
  - Used sharedable lock in xtp ([gh#votca/votca#1057])
  - Make votca tests compile without OpenMP ([gh#votca/votca#1065])
  - increase tolerance for diabatization test ([gh#votca/votca#1039],
    [gh#votca/votca#1043])
  - removed boost::filesystem  ([gh#votca/votca#1041])
  - clean up C++ defines ([gh#votca/votca#1044])
  - drop gmx-2022 builds from CI ([gh#votca/votca#1046])
  - update ccaching in CI ([gh#votca/votca#1048], [gh#votca/votca#1050])
  - add support for gmx-2023 api ([gh#votca/votca#1059])
  - updated formatting ([gh#votca/votca#1062])
  - remove stable branch workflow ([gh#votca/votca#1066]) 
  - Refactor changelog actions ([gh#votca/votca#1068])
  - fix CI build with icpx ([gh#votca/votca#1018])
  - implemented projection-based DFT embedding ([gh#votca/votca#964])
  - Added LMO energy output and cube file generation ([gh#votca/votca#970])
  - fix typos in csg-tutorials xml files ([gh#votca/votca#980])
  - unitary optimization for localization of orbitals ([gh#votca/votca#971])
  - separate option for density max convergence tolerance in qmmm
    ([gh#votca/votca#987])
  - Correct ECP charges added in Orca Molden reader ([gh#votca/votca#990])
  - Implemented truncated basis for embedded DFT ([gh#votca/votca#991])
  - Implemented ER diabatization for BSE ([gh#votca/votca#988])
  - update esp++ spce tutorial to py3 ([gh#votca/votca#997])
  - Truncated GW-in-DFT embedded in static/polar MM implemeted
    ([gh#votca/votca#1003])
  - reducing XTP tutorial size ([gh#votca/votca#1020], [gh#votca/votca#1025])
  - Clean up 3body Stillinger-Weber implement, docs and tutorial
    ([gh#votca/votca#1012])
  - fixed options handling in xtp_autogen_mapping ([gh#votca/votca#1024])
  - Major CMake refactor ([gh#votca/votca#950], [gh#votca/votca#1022])
  - Fix all doxygen warnings ([gh#votca/votca#1026])
  - basis and auxbasis are written to QMMM checkpoint file
    ([gh#votca/votca#1030])
  - iterations_max can now be zero ([gh#votca/votca#1033])
  - add an XML check to csg_inverse ([gh#votca/votca#1031])
  - fix propane/imc and add propane/imc-ibiintra to csg-tutorials
    ([gh#votca/votca#821])

OBS-URL: https://build.opensuse.org/request/show/1126769
OBS-URL: https://build.opensuse.org/package/show/science/votca?expand=0&rev=19
2023-11-16 06:38:08 +00:00

248 lines
7.3 KiB
RPMSpec

#
# spec file for package votca
#
# Copyright (c) 2022 SUSE LLC
# Copyright (c) 2021-2022 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/
#
%global with_xtp 1
# libint2 used by xtp is broken on 32-bit archs
# https://github.com/evaleev/libint/issues/196
# https://github.com/votca/xtp/issues/652
%ifarch %ix86 %arm
%global with_xtp 0
%endif
Name: votca
Version: 2023
Release: 0
%define uversion %{version}
%define sover 2023
Summary: Versatile Object-oriented Toolkit for Coarse-graining Applications
License: Apache-2.0
Group: Productivity/Scientific/Chemistry
URL: https://www.votca.org
Source0: https://github.com/votca/votca/archive/v%{uversion}.tar.gz#/%{name}-%{uversion}.tar.gz
# PATCH-FIX-UPSTREAM 1093.patch -- fix python shebang
Patch0: 1093.patch
BuildRequires: cmake >= 3.13
BuildRequires: eigen3-devel
BuildRequires: fdupes
BuildRequires: fftw3-devel
BuildRequires: gcc-c++
BuildRequires: gnuplot
# gromacs is not available on 32-bit arm
%ifnarch %{arm}
BuildRequires: gromacs-devel
# mpi gromacs is not available on 32-bit intel
# used for testing only
%ifnarch %ix86
BuildRequires: gromacs-openmpi
%endif
%endif
BuildRequires: hdf5-devel
BuildRequires: lammps
BuildRequires: libboost_filesystem-devel >= 1.71.0
BuildRequires: libboost_program_options-devel >= 1.71.0
BuildRequires: libboost_regex-devel >= 1.71.0
BuildRequires: libboost_serialization-devel >= 1.71.0
BuildRequires: libboost_system-devel >= 1.71.0
BuildRequires: libboost_test-devel >= 1.71.0
BuildRequires: libboost_timer-devel >= 1.71.0
BuildRequires: libecpint-devel
BuildRequires: libexpat-devel
%if %{with_xtp}
BuildRequires: libint-devel
%endif
BuildRequires: libxc-devel
BuildRequires: memory-constraints
BuildRequires: openmpi-macros-devel
BuildRequires: pkg-config
BuildRequires: procps
BuildRequires: psmisc
BuildRequires: python3-cma
# only needed for testing
%ifarch x86_64
BuildRequires: python3-espressomd
%endif
BuildRequires: python3-lxml
BuildRequires: python3-pytest
# for hdf5
BuildRequires: zlib-devel
Obsoletes: votca-tools <= 2022~rc1
Provides: votca-tools = %version-%release
Obsoletes: votca-csg <= 2022~rc1
Provides: votca-csg = %version-%release
Obsoletes: votca-csg-apps <= 2022~rc1
Provides: votca-csg-apps = %version-%release
Obsoletes: votca-xtp <= 2022~rc1
Provides: votca-xtp = %version-%release
%global votca_desc \
VOTCA is a software package which focuses on the analysis of molecular \
dynamics data, the development of systematic coarse-graining techniques as \
well as methods used for simulating microscopic charge (and exciton) transport \
in disordered semiconductors.
%description
%{votca_desc}
%package -n libvotca%sover
Summary: VOTCA tools library
Group: System/Libraries
Obsoletes: libvotca_tools2022 <= 2022~rc1
Provides: libvotca_tools2022 = %version-%release
Obsoletes: libvotca_csg2022 <= 2022~rc1
Provides: libvotca_csg2022 = %version-%release
Obsoletes: libvotca_xtp2022 <= 2022~rc1
Provides: libvotca_xtp2022 = %version-%release
%description -n libvotca%sover
%{votca_desc}
This package contains the librares of VOTCA package.
%package devel
Summary: Development headers and libraries for votca
Group: Development/Libraries/C and C++
Requires: %{name} = %{version}
Requires: eigen3-devel
Requires: fftw3-devel
Requires: libexpat-devel
Requires: libvotca%sover = %{version}
Obsoletes: votca-tools-devel <= 2022~rc1
Provides: votca-tools-devel = %version-%release
Obsoletes: votca-csg-devel <= 2022~rc1
Provides: votca-csg-devel = %version-%release
Obsoletes: votca-xtp-devel <= 2022~rc1
Provides: votca-xtp-devel = %version-%release
%description devel
%{votca_desc}
This package contains development headers and libraries for votca.
%package common
Summary: Architecture-independent data files for VOTCA
Group: Productivity/Scientific/Chemistry
BuildArch: noarch
Requires: /usr/bin/awk
Requires: bash
Requires: perl
Obsoletes: votca-csg-common <= 2022~rc1
Provides: votca-csg-common = %version-%release
Obsoletes: votca-xtp-common <= 2022~rc1
Provides: votca-xtp-common = %version-%release
%description common
%{votca_desc}
This package contains the architecture-independent data files for VOTCA.
%package tutorials
Summary: Tutorial documentation for VOTCA Coarse Graining Engine
Group: Productivity/Scientific/Chemistry
BuildArch: noarch
Requires: /bin/bash
Obsoletes: votca-csg-tutorials <= 2022~rc1
Provides: votca-csg-tutorials = %version-%release
%description tutorials
%{votca_desc}
This package contains the tutorial documentation and sample data.
%package bash
Summary: Bash completion for votca
Group: System/Shells
Requires: %{name} = %{version}
Requires: bash-completion
BuildArch: noarch
Obsoletes: votca-csg-bash <= 2022~rc1
Provides: votca-csg-bash = %version-%release
%description bash
%{votca_desc}
This package contains the bash completion support for votca.
%prep
%setup -n %{name}-%{uversion} -q
%patch 0 -p1
%build
%setup_openmpi
# save some memory
%limit_build -m 2400
%{cmake} -DINSTALL_RC_FILES=OFF -DCMAKE_SKIP_RPATH=OFF -DENABLE_TESTING=ON -DENABLE_REGRESSION_TESTING=ON \
-DINJECT_MARCH_NATIVE=OFF -DBUILD_CSGAPPS=ON \
-DBUILD_XTP=%{with_xtp} \
..
%cmake_build
%install
%cmake_install
sed -i '1s@env @@' \
%{buildroot}/%{_datadir}/votca/scripts/inverse/{iie,cma_processor,table_smooth_at_cut_off}.py \
%{buildroot}/%{_datadir}/votca/csg-tutorials/LJ1-LJ2/imc/svd.py \
%{buildroot}/%{_datadir}/votca/csg-tutorials/spce/ibi*/spce.py
%if %{with_xtp}
sed -i '1s@env @@' %{buildroot}/%{_bindir}/xtp_* %{buildroot}/%{_datadir}/votca/xtp/benchmark/xtp_benchmark
%endif
# Move bash completion file to correct location
mkdir -p %{buildroot}%{_datadir}/bash_completion.d
cp %{__builddir}/csg/scripts/csg-completion.bash %{buildroot}%{_datadir}/bash_completion.d/votca
%fdupes %{buildroot}%{_prefix}
%check
%setup_openmpi
%ctest
%files
%{_bindir}/{votca,csg,xtp}_*
%{_mandir}/man1/*
%{_mandir}/man7/*
%post -n libvotca%sover -p /sbin/ldconfig
%postun -n libvotca%sover -p /sbin/ldconfig
%files -n libvotca%sover
%doc NOTICE.rst README.rst CHANGELOG.rst
%license LICENSE
%{_libdir}/libvotca_*.so.%{sover}
%files devel
%{_includedir}/votca/
%{_libdir}/libvotca_*.so
%{_libdir}/cmake/VOTCA_*
%files tutorials
%{_datadir}/votca/{csg,xtp}-tutorials
%files common
%{_datadir}/votca
%exclude %{_datadir}/votca/{csg,xtp}-tutorials
%files bash
%dir %{_datadir}/bash_completion.d
%{_datadir}/bash_completion.d/votca
%changelog