dd1e266
%ifnarch s390 s390x
dd1e266
%global with_openmpi 1
dd1e266
%else
dd1e266
%global with_openmpi 0
dd1e266
%endif
dd1e266
6e06a80
Name:		gromacs
5e860d3
Version:	4.6.5
1c57466
Release:	1%{?dist}
4fd2f7f
Summary:	Fast, Free and Flexible Molecular Dynamics
6e06a80
Group:		Applications/Engineering
6e06a80
License:	GPLv2+
6e06a80
URL:		http://www.gromacs.org
4fd2f7f
BuildRoot:	%{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
b377008
Source0:	ftp://ftp.gromacs.org/pub/gromacs/gromacs-%{version}.tar.gz
1c57466
Source1:	ftp://ftp.gromacs.org/pub/manual/manual-%{version}.pdf
6e06a80
Source6:	gromacs-README.fedora
6e06a80
939be9d
BuildRequires:	cmake
939be9d
BuildRequires:	atlas-devel
6e06a80
BuildRequires:	fftw-devel
6e06a80
BuildRequires:	gsl-devel
1b055a1
BuildRequires:	libxml2-devel
6e06a80
BuildRequires:	libX11-devel
e48395b
BuildRequires:	lesstif-devel
5b702d1
# To get rid of executable stacks
5b702d1
BuildRequires:	prelink
6e06a80
1b055a1
Requires:	gromacs-common = %{version}-%{release}
6e06a80
b830fd1
# Libs were branched from gromacs, so there are 64-bit installs that have 32-bit packages installed
b830fd1
Obsoletes:	gromacs < 4.5.2-1 
b830fd1
b830fd1
6e06a80
%description
4fd2f7f
GROMACS is a versatile and extremely well optimized package to perform
4fd2f7f
molecular dynamics computer simulations and subsequent trajectory analysis.
4fd2f7f
It is developed for biomolecules like proteins, but the extremely high
4fd2f7f
performance means it is used also in several other field like polymer chemistry
4fd2f7f
and solid state physics.
6e06a80
6e06a80
This package provides single and double precision binaries.
6e06a80
The documentation is in the package gromacs-common.
6e06a80
939be9d
mdrun has been compiled with thread parallellization, so it runs in parallel
939be9d
on shared memory systems. If you want to run on a cluster, you probably want
939be9d
to install one of the MPI parallellized packages.
939be9d
4fd2f7f
N.B. All binaries have names starting with g_, for example mdrun has been
4fd2f7f
renamed to g_mdrun.
4fd2f7f
4fd2f7f
6e06a80
%package common
6e06a80
Summary:	GROMACS shared data and documentation
6e06a80
Group:		Applications/Engineering
1b055a1
BuildArch:	noarch
1b055a1
# Due to switch to noarch package
7fad780
Obsoletes:	gromacs-common < 4.0.7-1
e48395b
# No more tutor package
e48395b
Obsoletes:	gromacs-tutor < 4.6-1
6e06a80
6e06a80
%description common
4fd2f7f
GROMACS is a versatile and extremely well optimized package to perform
4fd2f7f
molecular dynamics computer simulations and subsequent trajectory analysis.
4fd2f7f
It is developed for biomolecules like proteins, but the extremely high
4fd2f7f
performance means it is used also in several other field like polymer chemistry
4fd2f7f
and solid state physics.
6e06a80
4fd2f7f
This package includes architecture independent data and documentation.
6e06a80
6e06a80
6e06a80
%package devel
6e06a80
Summary:	GROMACS header files and development libraries
6e06a80
Group:		Applications/Engineering
1b055a1
Requires:	gromacs = %{version}-%{release}
6e06a80
6e06a80
%description devel
4fd2f7f
GROMACS is a versatile and extremely well optimized package to perform
4fd2f7f
molecular dynamics computer simulations and subsequent trajectory analysis.
4fd2f7f
It is developed for biomolecules like proteins, but the extremely high
4fd2f7f
performance means it is used also in several other field like polymer chemistry
4fd2f7f
and solid state physics.
4fd2f7f
4fd2f7f
This package contains header files and development libraries for the GROMACS
4fd2f7f
molecular dynamics software. You need it if you want to write your own analysis
4fd2f7f
programs.
4fd2f7f
4fd2f7f
7fad780
%package libs
7fad780
Summary:	GROMACS shared libraries
7fad780
Group:		System Environment/Libraries
7fad780
7fad780
%description libs
7fad780
GROMACS is a versatile and extremely well optimized package to perform
7fad780
molecular dynamics computer simulations and subsequent trajectory analysis.
7fad780
It is developed for biomolecules like proteins, but the extremely high
7fad780
performance means it is used also in several other field like polymer chemistry
7fad780
and solid state physics.
7fad780
7fad780
This package contains libraries needed for operation of GROMACS.
7fad780
7fad780
dd1e266
%if %{with_openmpi}
1b055a1
%package openmpi
1b055a1
Summary:	GROMACS Open MPI binaries and libraries
4fd2f7f
Group:		Applications/Engineering
1b055a1
Obsoletes:	gromacs-mpi < %{version}-%{release}
4fd2f7f
Requires:	gromacs-common = %{version}-%{release}
1b055a1
BuildRequires:	openmpi-devel
a90b748
Requires:	openmpi
9c3bc4d
# Libs were branched from gromacs, so there are 64-bit installs that have 32-bit packages installed
9c3bc4d
Obsoletes:	gromacs-openmpi < 4.5.3-2
6e06a80
1b055a1
%description openmpi
4fd2f7f
GROMACS is a versatile and extremely well optimized package to perform
4fd2f7f
molecular dynamics computer simulations and subsequent trajectory analysis.
4fd2f7f
It is developed for biomolecules like proteins, but the extremely high
4fd2f7f
performance means it is used also in several other field like polymer chemistry
4fd2f7f
and solid state physics.
6e06a80
939be9d
mdrun has been compiled with thread parallellization (for running on
939be9d
a single node) and with Open MPI (for running on multiple nodes).
939be9d
This package single and double precision binaries and libraries.
6e06a80
6e06a80
7fad780
%package openmpi-libs
7fad780
Summary:	GROMACS Open MPI shared libraries
7fad780
Group:		System Environment/Libraries
7fad780
Obsoletes:	gromacs-mpi-libs < %{version}-%{release}
7fad780
Requires:	openmpi
7fad780
7fad780
%description openmpi-libs
7fad780
GROMACS is a versatile and extremely well optimized package to perform
7fad780
molecular dynamics computer simulations and subsequent trajectory analysis.
7fad780
It is developed for biomolecules like proteins, but the extremely high
7fad780
performance means it is used also in several other field like polymer chemistry
7fad780
and solid state physics.
7fad780
7fad780
This package contains libraries needed for operation of GROMACS Open MPI.
7fad780
7fad780
1b055a1
%package openmpi-devel
1b055a1
Summary:	GROMACS Open MPI development libraries
4fd2f7f
Group:		Applications/Engineering
1b055a1
Obsoletes:	gromacs-mpi-devel < %{version}-%{release}
1b055a1
Requires:	gromacs-devel = %{version}-%{release}
031fcad
Requires:	gromacs-openmpi = %{version}-%{release}
1b055a1
Requires:	openmpi-devel
4fd2f7f
6e06a80
1b055a1
%description openmpi-devel
4fd2f7f
GROMACS is a versatile and extremely well optimized package to perform
4fd2f7f
molecular dynamics computer simulations and subsequent trajectory analysis.
4fd2f7f
It is developed for biomolecules like proteins, but the extremely high
4fd2f7f
performance means it is used also in several other field like polymer chemistry
4fd2f7f
and solid state physics.
4fd2f7f
1b055a1
This package contains development libraries for GROMACS Open MPI.
939be9d
You may need it if you want to write your own analysis programs.
dd1e266
%endif
4fd2f7f
4fd2f7f
Deji Akingunola 8861b54
%package mpich
Deji Akingunola 8861b54
Summary:	GROMACS MPICH binaries and libraries
e3131b9
Group:		Applications/Engineering
e3131b9
Requires:	gromacs-common = %{version}-%{release}
Deji Akingunola 8861b54
Requires:	mpich
Deji Akingunola 8861b54
# Libs were branched from gromacs, so there are 64-bit installs that have 32-bit packages installed (at version 4.5.3-2)
Deji Akingunola 8861b54
Provides:	%{name}-mpich2 = %{version}-%{release}
Deji Akingunola 8861b54
Obsoletes:	gromacs-mpich2 < 4.6.3-2
e3131b9
Deji Akingunola 8861b54
%description mpich
e3131b9
GROMACS is a versatile and extremely well optimized package to perform
e3131b9
molecular dynamics computer simulations and subsequent trajectory analysis.
e3131b9
It is developed for biomolecules like proteins, but the extremely high
e3131b9
performance means it is used also in several other field like polymer chemistry
e3131b9
and solid state physics.
e3131b9
939be9d
mdrun has been compiled with thread parallellization (for running on
Deji Akingunola 8861b54
a single node) and with MPICH (for running on multiple nodes).
939be9d
This package single and double precision binaries and libraries.
e3131b9
Deji Akingunola 8861b54
%package mpich-libs
Deji Akingunola 8861b54
Summary:	GROMACS MPICH shared libraries
7fad780
Group:		System Environment/Libraries
Deji Akingunola 8861b54
Requires:	mpich
Deji Akingunola 8861b54
Provides:	%{name}-mpich2-libs = %{version}-%{release}
Deji Akingunola 8861b54
Obsoletes:	%{name}-mpich2-libs < 4.6.3-2
7fad780
Deji Akingunola 8861b54
%description mpich-libs
7fad780
GROMACS is a versatile and extremely well optimized package to perform
7fad780
molecular dynamics computer simulations and subsequent trajectory analysis.
7fad780
It is developed for biomolecules like proteins, but the extremely high
7fad780
performance means it is used also in several other field like polymer chemistry
7fad780
and solid state physics.
7fad780
Deji Akingunola 8861b54
This package contains libraries needed for operation of GROMACS MPICH.
7fad780
7fad780
Deji Akingunola 8861b54
%package mpich-devel
Deji Akingunola 8861b54
Summary:	GROMACS MPICH development libraries
e3131b9
Group:		Applications/Engineering
e3131b9
Requires:	gromacs-devel = %{version}-%{release}
Deji Akingunola 8861b54
Requires:	gromacs-mpich = %{version}-%{release}
Deji Akingunola 8861b54
BuildRequires:	mpich-devel
Deji Akingunola 8861b54
Requires:	mpich-devel
Deji Akingunola 8861b54
Provides:	%{name}-mpich2-devel = %{version}-%{release}
Deji Akingunola 8861b54
Obsoletes:	%{name}-mpich2-devel < 4.6.3-2
e3131b9
Deji Akingunola 8861b54
%description mpich-devel
e3131b9
GROMACS is a versatile and extremely well optimized package to perform
e3131b9
molecular dynamics computer simulations and subsequent trajectory analysis.
e3131b9
It is developed for biomolecules like proteins, but the extremely high
e3131b9
performance means it is used also in several other field like polymer chemistry
e3131b9
and solid state physics.
e3131b9
Deji Akingunola 8861b54
This package contains development libraries for GROMACS MPICH.
939be9d
You may need it if you want to write your own analysis programs.
4fd2f7f
e48395b
%package ngmx
e48395b
Summary:	GROMACS X11 visualization program
e48395b
Group:		Applications/Engineering
e48395b
e48395b
%description ngmx
e48395b
GROMACS is a versatile and extremely well optimized package to perform
e48395b
molecular dynamics computer simulations and subsequent trajectory analysis.
e48395b
It is developed for biomolecules like proteins, but the extremely high
e48395b
performance means it is used also in several other field like polymer chemistry
e48395b
and solid state physics.
e48395b
e48395b
This package contains ngmx, the X11 visualization program.
6e06a80
6e06a80
6e06a80
%package bash
6e06a80
Summary:	GROMACS bash completion
6e06a80
Group:		Applications/Engineering
6e06a80
Requires:	bash-completion
1b055a1
BuildArch:	noarch
1b055a1
# Due to switch to noarch package
7fad780
Obsoletes:	gromacs-bash < 4.0.7-1 
1b055a1
6e06a80
6e06a80
%description bash
4fd2f7f
GROMACS is a versatile and extremely well optimized package to perform
4fd2f7f
molecular dynamics computer simulations and subsequent trajectory analysis.
4fd2f7f
It is developed for biomolecules like proteins, but the extremely high
4fd2f7f
performance means it is used also in several other field like polymer chemistry
4fd2f7f
and solid state physics.
6e06a80
4fd2f7f
This package provides bash completion for GROMACS.
6e06a80
6e06a80
6e06a80
%package zsh
6e06a80
Summary:	GROMACS zsh support
6e06a80
Group:		Applications/Engineering
6e06a80
Requires:	zsh
1b055a1
BuildArch:	noarch
1b055a1
# Due to switch to noarch package
7fad780
Obsoletes:	gromacs-zsh < 4.0.7-1
1b055a1
6e06a80
6e06a80
%description zsh
4fd2f7f
GROMACS is a versatile and extremely well optimized package to perform
4fd2f7f
molecular dynamics computer simulations and subsequent trajectory analysis.
4fd2f7f
It is developed for biomolecules like proteins, but the extremely high
4fd2f7f
performance means it is used also in several other field like polymer chemistry
4fd2f7f
and solid state physics.
6e06a80
4fd2f7f
This package provides scripts needed to run GROMACS with zsh and zsh
4fd2f7f
completion.
6e06a80
6e06a80
6e06a80
%package csh
6e06a80
Summary:	GROMACS csh support
6e06a80
Group:		Applications/Engineering
6e06a80
Requires:	csh
1b055a1
BuildArch:	noarch
1b055a1
# Due to switch to noarch package
7fad780
Obsoletes:	gromacs-csh < 4.0.7-1 
1b055a1
6e06a80
6e06a80
%description csh
4fd2f7f
GROMACS is a versatile and extremely well optimized package to perform
4fd2f7f
molecular dynamics computer simulations and subsequent trajectory analysis.
4fd2f7f
It is developed for biomolecules like proteins, but the extremely high
4fd2f7f
performance means it is used also in several other field like polymer chemistry
4fd2f7f
and solid state physics.
6e06a80
4fd2f7f
This package provides scripts needed to run GROMACS with csh and a completion
4fd2f7f
script.
6e06a80
6e06a80
%prep
b377008
%setup -q
6e06a80
6e06a80
%build
6e06a80
# Assembly kernels haven't got .note.GNU-stack sections
6e06a80
# because of incompatibilies with Microsoft Assembler.
6e06a80
# Add noexecstack to compiler flags
6e06a80
a90b748
export CFLAGS="%optflags -Wa,--noexecstack -fPIC"
939be9d
export LIBS="-L%{_libdir}/atlas -lblas -llapack"
6e06a80
4fd2f7f
# Default options, used for all compilations
b377008
export DEFOPTS="-D BUILD_SHARED_LIBS=ON -DCMAKE_SKIP_RPATH:BOOL=ON -DCMAKE_SKIP_BUILD_RPATH:BOOL=ON -DGMXLIB=%{_lib} -DGMX_X11=ON -DCMAKE_C_FLAGS_RELEASE= -DCMAKE_CXX_FLAGS_RELEASE="
939be9d
export SINGLE="-D GMX_DOUBLE=OFF" # Single precision
939be9d
export DOUBLE="-D GMX_DOUBLE=ON" # Double precision
939be9d
export MPI="-D GMX_MPI=ON"
1b055a1
e48395b
# Acceleration flag
e48395b
export CPUACC="None"
e48395b
# .. but on x86_64 we know that SSE2 is available always, so
e48395b
%ifarch x86_64
e48395b
export CPUACC="SSE2"
e48395b
%endif
e48395b
export DEFOPTS+=" -DGMX_CPU_ACCELERATION=${CPUACC}"
4fd2f7f
6e06a80
# Single precision
6e06a80
mkdir single
6e06a80
cd single
939be9d
%cmake $DEFOPTS $SINGLE ..
939be9d
make VERBOSE=1 %{?_smp_mflags}
6e06a80
cd ..
6e06a80
6e06a80
# Double precision
6e06a80
mkdir double
6e06a80
cd double
939be9d
%cmake $DEFOPTS $DOUBLE ..
939be9d
make VERBOSE=1 %{?_smp_mflags}
6e06a80
cd ..
6e06a80
6e06a80
1b055a1
### MPI versions
1b055a1
export CC=mpicc
1b055a1
export CXX=mpicxx
1b055a1
export F77=mpif77
1b055a1
export F90=mpif90
1b055a1
export FC=mpif90
6e06a80
1b055a1
## Open MPI
dd1e266
%if %{with_openmpi}
1b055a1
%{_openmpi_load}
939be9d
# Suffix to be used for single precision is
939be9d
SUFFIXCONF="-D GMX_DEFAULT_SUFFIX=OFF -D GMX_BINARY_SUFFIX=$SUFFIX -D GMX_LIBS_SUFFIX=${MPI_SUFFIX}"
1b055a1
# single precision
1b055a1
mkdir openmpi-single
1b055a1
cd openmpi-single
939be9d
%cmake $DEFOPTS $SINGLE $MPI $SUFFIXCONF ..
939be9d
make VERBOSE=1 %{?_smp_mflags} mdrun
4fd2f7f
cd ..
939be9d
1b055a1
# double precision
939be9d
# Suffix to be used for double precision is
939be9d
SUFFIXCONF="-D GMX_DEFAULT_SUFFIX=OFF -D GMX_BINARY_SUFFIX=$SUFFIX -D GMX_LIBS_SUFFIX=${MPI_SUFFIX}_d"
1b055a1
mkdir openmpi-double
1b055a1
cd openmpi-double
939be9d
%cmake $DEFOPTS $DOUBLE $MPI $SUFFIXCONF ..
939be9d
make VERBOSE=1 %{?_smp_mflags} mdrun
6e06a80
cd ..
1b055a1
# unload
1b055a1
%{_openmpi_unload}
dd1e266
%endif
1b055a1
939be9d
Deji Akingunola 8861b54
## MPICH
Deji Akingunola 8861b54
%{_mpich_load}
939be9d
# Suffix to be used for single precision is
939be9d
SUFFIXCONF="-D GMX_DEFAULT_SUFFIX=OFF -D GMX_BINARY_SUFFIX=$SUFFIX -D GMX_LIBS_SUFFIX=${MPI_SUFFIX}"
939be9d
# MPICH 2 is broken, so need to modify linker command
939be9d
export CC="mpicc -lstdc++"
1b055a1
# single precision
Deji Akingunola 8861b54
mkdir mpich-single
Deji Akingunola 8861b54
cd mpich-single
939be9d
%cmake $DEFOPTS $SINGLE $MPI $SUFFIXCONF ..
939be9d
make VERBOSE=1 %{?_smp_mflags} mdrun
e3131b9
cd ..
1b055a1
# double precision
939be9d
# Suffix to be used for double precision is
939be9d
SUFFIXCONF="-D GMX_DEFAULT_SUFFIX=OFF -D GMX_BINARY_SUFFIX=$SUFFIX -D GMX_LIBS_SUFFIX=${MPI_SUFFIX}_d"
Deji Akingunola 8861b54
mkdir mpich-double
Deji Akingunola 8861b54
cd mpich-double
939be9d
%cmake $DEFOPTS $DOUBLE $MPI $SUFFIXCONF ..
939be9d
make VERBOSE=1 %{?_smp_mflags} mdrun
e3131b9
cd ..
Deji Akingunola 8861b54
%{_mpich_unload}
6e06a80
4fd2f7f
1b055a1
%install
1b055a1
rm -rf %{buildroot}
4fd2f7f
4fd2f7f
1b055a1
## Open MPI
dd1e266
%if %{with_openmpi}
1b055a1
%{_openmpi_load}
939be9d
# Make install-mdrun target is broken, do install manually
939be9d
mkdir -p %{buildroot}%{_libdir}/openmpi/{bin,lib}
1b055a1
# single precision
1b055a1
cd openmpi-single
939be9d
install -p -m 755 src/kernel/mdrun %{buildroot}%{_libdir}/openmpi/bin/g_mdrun_openmpi
939be9d
cp -a src/*/*.so* %{buildroot}%{_libdir}/openmpi/lib/
4fd2f7f
cd ..
1b055a1
# double precision
1b055a1
cd openmpi-double
939be9d
install -p -m 755 src/kernel/mdrun %{buildroot}%{_libdir}/openmpi/bin/g_mdrun_openmpi_d
939be9d
cp -a src/*/*.so* %{buildroot}%{_libdir}/openmpi/lib/
6e06a80
cd ..
1b055a1
%{_openmpi_unload}
dd1e266
%endif
6e06a80
Deji Akingunola 8861b54
## MPICH
Deji Akingunola 8861b54
%{_mpich_load}
939be9d
# Make install-mdrun target is broken, do install manually
Deji Akingunola 8861b54
mkdir -p %{buildroot}%{_libdir}/mpich/{bin,lib}
1b055a1
# single precision
Deji Akingunola 8861b54
cd mpich-single
Deji Akingunola 8861b54
install -p -m 755 src/kernel/mdrun %{buildroot}%{_libdir}/mpich/bin/g_mdrun_mpich
Deji Akingunola 8861b54
cp -a src/*/*.so* %{buildroot}%{_libdir}/mpich/lib/
e3131b9
cd ..
1b055a1
# double precision
Deji Akingunola 8861b54
cd mpich-double
Deji Akingunola 8861b54
install -p -m 755 src/kernel/mdrun %{buildroot}%{_libdir}/mpich/bin/g_mdrun_mpich_d
Deji Akingunola 8861b54
cp -a src/*/*.so* %{buildroot}%{_libdir}/mpich/lib/
e3131b9
cd ..
Deji Akingunola 8861b54
%{_mpich_unload}
6e06a80
26363c1
1b055a1
## Serial versions
26363c1
6e06a80
# Single precision
6e06a80
cd single
6e06a80
make DESTDIR=%{buildroot} INSTALL="install -p" install
6e06a80
cd ..
6e06a80
# Double precision
6e06a80
cd double
6e06a80
make DESTDIR=%{buildroot} INSTALL="install -p" install
6e06a80
cd ..
6e06a80
939be9d
## Now, the rest of the necessary stuff
939be9d
6e06a80
# Install manual & packager's note
e48395b
install -cpm 644 %{SOURCE1} manual.pdf
6e06a80
install -cpm 644 %{SOURCE6} README.fedora
6e06a80
6e06a80
# Fix GMXRC file permissions
6e06a80
chmod a+x %{buildroot}%{_bindir}/GMXRC %{buildroot}%{_bindir}/GMXRC.*
6e06a80
6e06a80
# Rename binaries and man pages to prevent clashes
6e06a80
# (This is done here so that we don't need to mess with machine generated makefiles.
939be9d
#for bin in anadock do_dssp editconf eneconv genbox genconf genion genrestr gmxcheck gmxdump grompp highway luck make_edi make_ndx mdrun mk_angndx ngmx pdb2gmx protonate sigeps tpbconv trjcat trjconv trjorder wheel x2top xpm2ps xrama ; do 
939be9d
for bin in do_dssp editconf eneconv genbox genconf genion genrestr gmxcheck gmxdump grompp make_edi make_ndx mdrun mk_angndx pdb2gmx tpbconv trjcat trjconv trjorder xpm2ps; do
6e06a80
mv %{buildroot}%{_bindir}/${bin} %{buildroot}%{_bindir}/g_${bin}
6e06a80
mv %{buildroot}%{_bindir}/${bin}_d %{buildroot}%{_bindir}/g_${bin}_d
6e06a80
done
6e06a80
6e06a80
for bin in demux.pl xplor2gmx.pl; do
6e06a80
mv %{buildroot}%{_bindir}/$bin %{buildroot}%{_bindir}/g_${bin}
6e06a80
done
6e06a80
6e06a80
# Man pages
939be9d
#for bin in anadock do_dssp editconf eneconv genbox genconf genion genrestr gmxcheck gmxdump grompp highway make_edi make_ndx mdrun mk_angndx ngmx pdb2gmx protonate sigeps tpbconv trjcat trjconv trjorder wheel x2top xpm2ps xrama ; do 
939be9d
for bin in do_dssp editconf eneconv genbox genconf genion genrestr gmxcheck gmxdump grompp make_edi make_ndx mdrun mk_angndx pdb2gmx tpbconv trjcat trjconv trjorder xpm2ps; do
6e06a80
mv %{buildroot}%{_mandir}/man1/${bin}.1 %{buildroot}%{_mandir}/man1/g_${bin}.1
939be9d
#mv %{buildroot}%{_mandir}/man1/${bin}_d.1 %{buildroot}%{_mandir}/man1/g_${bin}_d.1
6e06a80
done
6e06a80
6e06a80
# Move completion files around
6e06a80
chmod a-x %{buildroot}%{_bindir}/completion.*
6e06a80
# Zsh
6e06a80
mkdir -p %{buildroot}%{_datadir}/zsh/site-functions
6e06a80
mv %{buildroot}%{_bindir}/completion.zsh %{buildroot}%{_datadir}/zsh/site-functions/gromacs
6e06a80
# Bash
6e06a80
mkdir -p %{buildroot}%{_sysconfdir}/bash_completion.d
6e06a80
mv %{buildroot}%{_bindir}/completion.bash %{buildroot}/etc/bash_completion.d/gromacs
6e06a80
# Tcsh
6e06a80
mv %{buildroot}%{_bindir}/completion.csh . 
6e06a80
6e06a80
# Remove .la files
1b055a1
find %{buildroot} -name *.la -exec rm -rf {} \;
4fd2f7f
5b702d1
# Get rid of executable stacks
5b702d1
find %{buildroot} -name *.so.* -exec execstack -c {} \;
5b702d1
1b055a1
# Post install for libs. MPI packages don't need this.
3de3193
%post libs -p /sbin/ldconfig
4fd2f7f
3de3193
%postun libs -p /sbin/ldconfig
6e06a80
6e06a80
%clean
6e06a80
rm -rf %{buildroot}
6e06a80
6e06a80
6e06a80
# Files section
6e06a80
6e06a80
%files
6e06a80
%defattr(-,root,root,-)
8cb2189
%{_bindir}/g_*
6e06a80
e48395b
%files ngmx
e48395b
%defattr(-,root,root,-)
e48395b
%{_bindir}/ngmx*
e48395b
6e06a80
%files common
6e06a80
%defattr(-,root,root,-)
e48395b
%doc AUTHORS COPYING README manual.pdf README.fedora
6e06a80
%{_bindir}/GMXRC
6e06a80
%{_bindir}/GMXRC.bash
6e06a80
%{_mandir}/man1/*
939be9d
%{_mandir}/man7/gromacs.*
8b25f67
%{_datadir}/%{name}/
8b25f67
%exclude %{_datadir}/%{name}/template/
6e06a80
7fad780
%files libs
7fad780
%defattr(-,root,root,-)
7fad780
%{_libdir}/libgmx.so.*
7fad780
%{_libdir}/libgmx_d.so.*
7fad780
%{_libdir}/libgmxana.so.*
7fad780
%{_libdir}/libgmxana_d.so.*
7fad780
%{_libdir}/libgmxpreprocess.so.*
7fad780
%{_libdir}/libgmxpreprocess_d.so.*
7fad780
%{_libdir}/libmd.so.*
7fad780
%{_libdir}/libmd_d.so.*
7fad780
6e06a80
%files devel
6e06a80
%defattr(-,root,root,-)
6e06a80
%{_includedir}/%{name}
6e06a80
%{_libdir}/libgmx.so
6e06a80
%{_libdir}/libgmx_d.so
6e06a80
%{_libdir}/libgmxana.so
6e06a80
%{_libdir}/libgmxana_d.so
939be9d
%{_libdir}/libgmxpreprocess.so
939be9d
%{_libdir}/libgmxpreprocess_d.so
6e06a80
%{_libdir}/libmd.so
6e06a80
%{_libdir}/libmd_d.so
939be9d
%{_libdir}/pkgconfig/*.pc
8b25f67
%{_datadir}/%{name}/template/
6e06a80
%exclude %{_datadir}/%{name}/template/Makefile.mpi.*
6e06a80
dd1e266
%if %{with_openmpi}
1b055a1
%files openmpi
6e06a80
%defattr(-,root,root,-)
1b055a1
%{_libdir}/openmpi/bin/g_mdrun*
7fad780
7fad780
%files openmpi-libs
7fad780
%defattr(-,root,root,-)
1b055a1
%{_libdir}/openmpi/lib/lib*.so.*
6e06a80
1b055a1
%files openmpi-devel
4fd2f7f
%defattr(-,root,root,-)
1b055a1
%{_libdir}/openmpi/lib/lib*.so
dd1e266
%endif
4fd2f7f
Deji Akingunola 8861b54
%files mpich
e3131b9
%defattr(-,root,root,-)
Deji Akingunola 8861b54
%{_libdir}/mpich/bin/g_mdrun*
7fad780
Deji Akingunola 8861b54
%files mpich-libs
7fad780
%defattr(-,root,root,-)
Deji Akingunola 8861b54
%{_libdir}/mpich/lib/lib*.so.*
1b055a1
Deji Akingunola 8861b54
%files mpich-devel
e3131b9
%defattr(-,root,root,-)
Deji Akingunola 8861b54
%{_libdir}/mpich/lib/lib*.so
6e06a80
6e06a80
%files zsh
6e06a80
%defattr(-,root,root,-)
6e06a80
%{_datadir}/zsh/site-functions/gromacs
6e06a80
%{_bindir}/GMXRC.zsh
6e06a80
6e06a80
%files bash
6e06a80
%defattr(-,root,root,-)
6e06a80
%config(noreplace) %{_sysconfdir}/bash_completion.d/gromacs
6e06a80
6e06a80
%files csh
6e06a80
%defattr(-,root,root,-)
6e06a80
%doc completion.csh
6e06a80
%{_bindir}/GMXRC.csh
6e06a80
6e06a80
6e06a80
%changelog
5e860d3
* Tue Dec 03 2013 Susi Lehtola <jussilehtola@fedoraproject.org> - 4.6.5-1
5e860d3
- Update to 4.6.5.
5e860d3
1c57466
* Thu Nov 14 2013 Susi Lehtola <jussilehtola@fedoraproject.org> - 4.6.4-1
1c57466
- Update to 4.6.4.
1c57466
8baab57
* Sat Aug 03 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 4.6.3-3
8baab57
- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild
8baab57
Deji Akingunola 8861b54
* Sat Jul 20 2013 Deji Akingunola <dakingun@gmail.com> - 4.6.3-2
Deji Akingunola 8861b54
- Rename mpich2 sub-packages to mpich and rebuild for mpich-3.0
Deji Akingunola 8861b54
af75594
* Sat Jul 06 2013 Susi Lehtola <jussilehtola@fedoraproject.org> - 4.6.3-1
af75594
- Update to 4.6.3.
af75594
0aefb59
* Tue Jun 04 2013 Susi Lehtola <jussilehtola@fedoraproject.org> - 4.6.2-1
0aefb59
- Update to 4.6.2.
0aefb59
dca273c
* Wed Mar 06 2013 Susi Lehtola <jussilehtola@fedoraproject.org> - 4.6.1-1
dca273c
- Update to 4.6.1.
dca273c
7743c4e
* Thu Feb 14 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 4.6-2
7743c4e
- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild
7743c4e
b377008
* Mon Jan 21 2013 Susi Lehtola <jussilehtola@fedoraproject.org> - 4.6-1
b377008
- Update to stable 4.6 release.
b377008
b0ba4b7
* Mon Dec 31 2012 Dan Horák <dan[at]danny.cz> - 4.6-0.2.beta3
b0ba4b7
- fix build on non-x86 arches
b0ba4b7
e48395b
* Mon Dec 24 2012 Susi Lehtola <jussilehtola@fedoraproject.org> - 4.6-0.1.beta3
e48395b
- Update to 4.6 beta 3.
e48395b
45fd3f6
* Fri Nov 02 2012 Jussi Lehtola <jussilehtola@fedoraproject.org> - 4.5.5-3.1
45fd3f6
- Bump due to MPICH2 update.
45fd3f6
e3c9de4
* Thu Jul 19 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 4.5.5-3
e3c9de4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild
e3c9de4
67267c9
* Fri Jan 13 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 4.5.5-2
67267c9
- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild
67267c9
a0c3b5c
* Tue Sep 20 2011 Jussi Lehtola <jussilehtola@fedoraproject.org> - 4.5.5-1
a0c3b5c
- Update to 4.5.5.
a0c3b5c
Deji Akingunola 45d8b09
* Wed Mar 30 2011 Deji Akingunola <dakingun@gmail.com> - 4.5.4-2
Deji Akingunola 45d8b09
- Rebuild for mpich2 soname bump
Deji Akingunola 45d8b09
e1479ef
* Wed Mar 23 2011 Jussi Lehtola <jussilehtola@fedoraproject.org> - 4.5.4-1
e1479ef
- Update to 4.5.4.
e1479ef
5b702d1
* Sun Feb 13 2011 Jussi Lehtola <jussilehtola@fedoraproject.org> - 4.5.3-4
5b702d1
- Get rid of executable stacks.
afadb85
dd1e266
* Mon Feb 07 2011 Dan Horák <dan[at]danny.cz> - 4.5.3-3
dd1e266
- conditionalize OpenMPI support
dd1e266
- fix build on 64-bit platforms
dd1e266
9c3bc4d
* Mon Dec 20 2010 Jussi Lehtola <jussilehtola@fedoraproject.org> - 4.5.3-2
9c3bc4d
- Fix rest of BZ #649338.
9c3bc4d
fead7d1
* Thu Nov 18 2010 Jussi Lehtola <jussilehtola@fedoraproject.org> - 4.5.3-1
fead7d1
- Update to 4.5.3.
fead7d1
f35182f
* Fri Nov 05 2010 Jussi Lehtola <jussilehtola@fedoraproject.org> - 4.5.2-3
f35182f
- Rebuild due to libxml2 soname bump.
f35182f
b830fd1
* Wed Nov 03 2010 Jussi Lehtola <jussilehtola@fedoraproject.org> - 4.5.2-2
b830fd1
- Make gromacs package obsolete older versions of gromacs package due to the
b830fd1
  branching of libraries.
b830fd1
3de3193
* Mon Nov 01 2010 Jussi Lehtola <jussilehtola@fedoraproject.org> - 4.5.2-1
3de3193
- Update to 4.5.2.
3de3193
7fad780
* Wed Oct 27 2010 Jussi Lehtola <jussilehtola@fedoraproject.org> - 4.5.1-2
7fad780
- Patch around #644950.
7fad780
- Split libraries in own packages to avoid multilib problems.
7fad780
939be9d
* Sat Oct 09 2010 Jussi Lehtola <jussilehtola@fedoraproject.org> - 4.5.1-1
939be9d
- Update to 4.5.1.
939be9d
3c91c48
* Sun Dec 06 2009 Jussi Lehtola <jussilehtola@fedoraproject.org> - 4.0.7-1
3c91c48
- Update to 4.0.7.
3c91c48
cc7c0b6
* Sun Dec 06 2009 Jussi Lehtola <jussilehtola@fedoraproject.org> - 4.0.6-1
cc7c0b6
- Update to 4.0.6.
cc7c0b6
8cb2189
* Fri Dec 04 2009 Jussi Lehtola <jussilehtola@fedoraproject.org> - 4.0.5-6
8cb2189
- Fix file conflict.
8cb2189
031fcad
* Tue Dec 01 2009 Jussi Lehtola <jussilehtola@fedoraproject.org> - 4.0.5-5
031fcad
- Put correct MPI devel package requires in place.
031fcad
c315d54
* Tue Dec 01 2009 Jussi Lehtola <jussilehtola@fedoraproject.org> - 4.0.5-4
c315d54
- Fix obsoletes.
c315d54
1b055a1
* Mon Nov 30 2009 Jussi Lehtola <jussilehtola@fedoraproject.org> - 4.0.5-3
1b055a1
- Combine libs with binaries and drop debug packages to avoid explosion of
1b055a1
  number of packages.
e3131b9
- Adopt use of MPI guidelines.
1b055a1
0b7b88a
* Fri Jul 24 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 4.0.5-2
0b7b88a
- Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild
0b7b88a
4fd2f7f
* Fri May 22 2009 Jussi Lehtola <jussi.lehtola@iki.fi> - 4.0.5-1
4fd2f7f
- Update to 4.0.5.
4fd2f7f
- Change spec %%defines to %%globals.
4fd2f7f
- Add debug subpackages to make debugging of GROMACS possible.
35dce57
ed60a6b
* Tue Feb 17 2009 Jussi Lehtola <jussi.lehtola@iki.fi> - 4.0.4-1
ed60a6b
- Update to 4.0.4.
ed60a6b
0ff216d
* Mon Jan 19 2009 Jussi Lehtola <jussi.lehtola@iki.fi> - 4.0.3-4
0ff216d
- Retry fixing gmxdemo.
0ff216d
2d0f49e
* Mon Jan 19 2009 Jussi Lehtola <jussi.lehtola@iki.fi> - 4.0.3-3
2d0f49e
- Fixed gmxdemo.
2d0f49e
26363c1
* Mon Jan 19 2009 Jussi Lehtola <jussi.lehtola@iki.fi> - 4.0.3-2
26363c1
- Fix EPEL 4 build.
26363c1
7b3f14a
* Mon Jan 19 2009 Jussi Lehtola <jussi.lehtola@iki.fi> - 4.0.3-1
7b3f14a
- Update to 4.0.3.
7b3f14a
ad6f154
* Wed Jan 14 2009 Jussi Lehtola <jussi.lehtola@iki.fi> - 4.0.2-7
ad6f154
- Update manual to latest version.
ad6f154
- Removed Requires: blas and lapack.
ad6f154
ad6f154
* Mon Nov 10 2008 Jussi Lehtola <jussi.lehtola@iki.fi> - 4.0.2-6
bb4bd8c
- Update to 4.0.2.
bb4bd8c
ad6f154
* Sun Nov 09 2008 Jussi Lehtola <jussi.lehtola@iki.fi> - 4.0.1-5
3f6f449
- Add Requires: blas too.
3f6f449
ad6f154
* Sun Nov 09 2008 Jussi Lehtola <jussi.lehtola@iki.fi> - 4.0.1-4
a90b748
- Update to 4.0.1.
a90b748
- Add Requires: lapack and openmpi to prevent yum from pulling atlas and lam
a90b748
instead.
a90b748
ad6f154
* Wed Oct 15 2008 Jussi Lehtola <jussi.lehtola@iki.fi> - 4.0-3
6e06a80
- Rename also man pages.
6e06a80
ad6f154
* Mon Oct 13 2008 Jussi Lehtola <jussi.lehtola@iki.fi> - 4.0-2
6e06a80
- Added noreplace to bash completion file.
6e06a80
- Changed double precision mpi binary suffix to _mpi_d.
6e06a80
ad6f154
* Sun Oct 12 2008 Jussi Lehtola <jussi.lehtola@iki.fi> - 4.0-1
6e06a80
- Update to Gromacs 4.0.
6e06a80
- Remove module system and patch file names to begin with g_.
6e06a80
ad6f154
* Wed Oct 08 2008 Jussi Lehtola <jussi.lehtola@iki.fi> - 4.0-0.15.rc3
6e06a80
- Changed location of binaries.
6e06a80
- Removed conflict of module file, as the program is binary compatible with older versions.
6e06a80
ad6f154
* Wed Oct 08 2008 Jussi Lehtola <jussi.lehtola@iki.fi> - 4.0-0.14.rc3
6e06a80
- The gromacs module is loaded automatically and it conflicts with gromacs3.
6e06a80
ad6f154
* Tue Oct 07 2008 Jussi Lehtola <jussi.lehtola@iki.fi> - 4.0-0.13.rc3
6e06a80
- Renamed module files from %%{name}-%%{version} to %%{name}.
6e06a80
ad6f154
* Mon Oct 06 2008 Jussi Lehtola <jussi.lehtola@iki.fi> - 4.0-0.12.rc3
6e06a80
- Fix BR to get GROMACS to build in mock for epel-4.
6e06a80
ad6f154
* Sat Oct 04 2008 Jussi Lehtola <jussi.lehtola@iki.fi> - 4.0-0.11.rc3
6e06a80
- Fix to get GROMACS to build in mock for epel-5.
6e06a80
ad6f154
* Sat Oct 04 2008 Jussi Lehtola <jussi.lehtola@iki.fi> - 4.0-0.10.rc3
6e06a80
- Implement module system & remove binary renaming.
6e06a80
- No need for autoreconf anymore.
6e06a80
- Update to rc3.
6e06a80
ad6f154
* Sat Oct 04 2008 Jussi Lehtola <jussi.lehtola@iki.fi> - 4.0-0.9.rc2
6e06a80
- Fall back to autoreconf due to binary renaming.
6e06a80
ad6f154
* Fri Oct 03 2008 Jussi Lehtola <jussi.lehtola@iki.fi> - 4.0-0.8.rc2
6e06a80
- Modified install commands to preserve timestamps.
6e06a80
ad6f154
* Fri Oct 03 2008 Jussi Lehtola <jussi.lehtola@iki.fi> - 4.0-0.7.rc2
6e06a80
- Even more review fixes.
6e06a80
- Binaries renamed:
6e06a80
	highway	->	g_highway
6e06a80
	luck	->	g_luck
6e06a80
	sigeps	->	g_sigeps
6e06a80
	wheel	->	g_wheel
6e06a80
ad6f154
* Thu Oct 02 2008 Jussi Lehtola <jussi.lehtola@iki.fi> - 4.0-0.6.rc2
6e06a80
- Final review fixes.
6e06a80
ad6f154
* Wed Oct 01 2008 Jussi Lehtola <jussi.lehtola@iki.fi> - 4.0-0.5.rc2
6e06a80
- Strip down requires by branching tutor to its own package.
6e06a80
ad6f154
* Tue Sep 30 2008 Jussi Lehtola <jussi.lehtola@iki.fi> - 4.0-0.4.rc2
6e06a80
- Extensive package review fixes.
6e06a80
- Unclear licenses on some files, filed upstream bug 217.
6e06a80
  http://bugzilla.gromacs.org/show_bug.cgi?id=217
6e06a80
ad6f154
* Mon Sep 29 2008 Jussi Lehtola <jussi.lehtola@iki.fi> - 4.0-0.3.rc2
6e06a80
- Move .so files to -devel package.
6e06a80
- Remove .la files.
6e06a80
ad6f154
* Mon Sep 29 2008 Jussi Lehtola <jussi.lehtola@iki.fi> - 4.0-0.2.rc2
6e06a80
- Implement out-of-tree-builds.
6e06a80
- Add --noexecstack to CFLAGS.
6e06a80
- Remove execstack procedure and prelink from buildreqs.
6e06a80
- Filed upstream bug 215 to add .note.GNU-stack .
6e06a80
- Fix incorrect file permission on src/tools/gmx_xpm2ps.c .
6e06a80
ad6f154
* Mon Sep 29 2008 Jussi Lehtola <jussi.lehtola@iki.fi> - 4.0-0.1.rc2
6e06a80
- Alphabetized buildrequires.
6e06a80
- Changed gromacs-share to gromacs-common.
6e06a80
ad6f154
* Fri Sep 26 2008 Jussi Lehtola <jussi.lehtola@iki.fi> - 4.0-0.0.rc2
6e06a80
- Initial build.