rpms/gromacs/F-9 gromacs-configure.patch, NONE, 1.1 gromacs-README.fedora, 1.1, 1.2 gromacs.spec, 1.10, 1.11 sources, 1.8, 1.9
Jussi Lehtola
jussilehtola at fedoraproject.org
Fri May 22 09:33:45 UTC 2009
- Previous message (by thread): rpms/gromacs/F-8 gromacs-configure.patch, NONE, 1.1 gromacs-README.fedora, 1.1, 1.2 gromacs.spec, 1.4, 1.5 sources, 1.4, 1.5
- Next message (by thread): rpms/pyfits/devel pyfits.spec,1.5,1.6
- Messages sorted by:
[ date ]
[ thread ]
[ subject ]
[ author ]
Author: jussilehtola
Update of /cvs/pkgs/rpms/gromacs/F-9
In directory cvs1.fedora.phx.redhat.com:/tmp/cvs-serv10796/F-9
Modified Files:
gromacs-README.fedora gromacs.spec sources
Added Files:
gromacs-configure.patch
Log Message:
Update to upstream version 4.0.5. Added debug packages.
gromacs-configure.patch:
--- NEW FILE gromacs-configure.patch ---
diff -up gromacs-4.0.5/configure.orig gromacs-4.0.5/configure
--- gromacs-4.0.5/configure.orig 2009-05-22 11:59:34.000000000 +0300
+++ gromacs-4.0.5/configure 2009-05-22 12:00:14.000000000 +0300
@@ -31508,12 +31508,7 @@ AS="$CC"
# However, the non-suffixed names are linked to the _mpi and/or _d suffixed
# ones upon installation if that is the only version available.
-if test "$enable_mpi" = "yes"; then
- LIBSUFFIX="_mpi"
-fi
-if test "$enable_float" = "no"; then
- LIBSUFFIX="${LIBSUFFIX}_d"
-fi
+LIBSUFFIX="@LIBSUFFIX@"
# Unless the user has explicitly requested a prefix/suffix/transform, we
Index: gromacs-README.fedora
===================================================================
RCS file: /cvs/pkgs/rpms/gromacs/F-9/gromacs-README.fedora,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -p -r1.1 -r1.2
--- gromacs-README.fedora 15 Oct 2008 11:35:30 -0000 1.1
+++ gromacs-README.fedora 22 May 2009 09:33:15 -0000 1.2
@@ -1,4 +1,4 @@
-Oct 12 2008
+Fri May 22 2009
Jussi Lehtola
@@ -17,3 +17,8 @@ precision.
both single and double precision versions. Single precision
versions have _mpi suffix, double precisin versions _mpi_d suffix.
For instance g_mdrun_mpi and g_mdrun_mpi_d.
+
+- Debug versions are available of all libraries and binaries with the
+_debug suffix. For instance the debug version of g_mdrun_mpi_d is
+g_mdrun_mpi_d_debug. The debug versions have been compiled without assembly
+loops, so they are much slower than the normal versions.
Index: gromacs.spec
===================================================================
RCS file: /cvs/pkgs/rpms/gromacs/F-9/gromacs.spec,v
retrieving revision 1.10
retrieving revision 1.11
diff -u -p -r1.10 -r1.11
--- gromacs.spec 18 Feb 2009 14:42:34 -0000 1.10
+++ gromacs.spec 22 May 2009 09:33:15 -0000 1.11
@@ -1,10 +1,11 @@
Name: gromacs
-Version: 4.0.4
+Version: 4.0.5
Release: 1%{?dist}
-Summary: GROMACS - Fast, Free and Flexible Molecular Dynamics
+Summary: Fast, Free and Flexible Molecular Dynamics
Group: Applications/Engineering
License: GPLv2+
URL: http://www.gromacs.org
+BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
Source0: ftp://ftp.gromacs.org/pub/gromacs/gromacs-%{version}.tar.gz
Source1: ftp://ftp.gromacs.org/pub/manual/manual-4.0.pdf
Source2: gromacs-template-makefile-single
@@ -17,9 +18,10 @@ Source6: gromacs-README.fedora
Patch0: gromacs-GMXRC.patch
# Patch gmxdemo for new filenames
Patch1: gromacs-gmxdemo.patch
+# Patch configure for the library suffix
+Patch2: gromacs-configure.patch
-BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
-Requires: gromacs-common = %{version}-%{release}
+Requires: gromacs-common = %{version}-%{release}
BuildRequires: fftw-devel
BuildRequires: gsl-devel
@@ -38,19 +40,19 @@ BuildRequires: libX11-devel
# Check for mpi-selector or environment-modules
-%define selector 0
-%define modules 0
+%global selector 0
+%global modules 0
%if 0%{?fedora} > 9
-%define modules 1
+%global modules 1
%endif
%if 0%{?rhel} == 4
-%define selector 1
+%global selector 1
%endif
%if 0%{?rhel} == 5
-%define selector 1
+%global selector 1
%endif
%if %modules == 1
@@ -63,18 +65,39 @@ BuildRequires: mpi-selector
%description
-GROMACS is a versatile and extremely well optimized package
-to perform molecular dynamics computer simulations and
-subsequent trajectory analysis. It is developed for
-biomolecules like proteins, but the extremely high
-performance means it is used also in several other field
-like polymer chemistry and solid state physics.
+GROMACS is a versatile and extremely well optimized package to perform
+molecular dynamics computer simulations and subsequent trajectory analysis.
+It is developed for biomolecules like proteins, but the extremely high
+performance means it is used also in several other field like polymer chemistry
+and solid state physics.
This package provides single and double precision binaries.
The documentation is in the package gromacs-common.
-N.B. All binaries have names starting with g_, for example
-mdrun has been renamed to g_mdrun.
+N.B. All binaries have names starting with g_, for example mdrun has been
+renamed to g_mdrun.
+
+
+%package debug
+Summary: GROMACS debugging binaries without assembly loops
+Group: Applications/Engineering
+Requires: gromacs-common = %{version}-%{release}
+
+%description debug
+GROMACS is a versatile and extremely well optimized package to perform
+molecular dynamics computer simulations and subsequent trajectory analysis.
+It is developed for biomolecules like proteins, but the extremely high
+performance means it is used also in several other field like polymer chemistry
+and solid state physics.
+
+This package provides debugging versions of single and
+double precision binaries, compiled without assembly loops.
+The documentation is in the package gromacs-common.
+You do not want this package for production purposes.
+
+N.B. All binaries have names starting with g_, for example mdrun has been
+renamed to g_mdrun.
+
%package libs
Summary: GROMACS libraries
@@ -82,15 +105,31 @@ Group: Applications/Engineering
Requires: gromacs-common = %{version}-%{release}
%description libs
-GROMACS is a versatile and extremely well optimized package
-to perform molecular dynamics computer simulations and
-subsequent trajectory analysis. It is developed for
-biomolecules like proteins, but the extremely high
-performance means it is used also in several other field
-like polymer chemistry and solid state physics.
+GROMACS is a versatile and extremely well optimized package to perform
+molecular dynamics computer simulations and subsequent trajectory analysis.
+It is developed for biomolecules like proteins, but the extremely high
+performance means it is used also in several other field like polymer chemistry
+and solid state physics.
+
+This package provides runtime libraries needed for the single and double
+precision binaries.
+
+
+%package debug-libs
+Summary: GROMACS libraries without assembly loops for debugging
+Group: Applications/Engineering
+Requires: gromacs-common = %{version}-%{release}
+
+%description debug-libs
+GROMACS is a versatile and extremely well optimized package to perform
+molecular dynamics computer simulations and subsequent trajectory analysis.
+It is developed for biomolecules like proteins, but the extremely high
+performance means it is used also in several other field like polymer chemistry
+and solid state physics.
+
+This package provides runtime libraries needed for the debugging versions of
+the single and double precision binaries.
-This package provides runtime libraries needed for the
-single and double precision binaries.
%package mpi
@@ -99,31 +138,44 @@ Group: Applications/Engineering
Requires: gromacs-common = %{version}-%{release}
%description mpi
-GROMACS is a versatile and extremely well optimized package
-to perform molecular dynamics computer simulations and
-subsequent trajectory analysis. It is developed for
-biomolecules like proteins, but the extremely high
-performance means it is used also in several other field
-like polymer chemistry and solid state physics.
+GROMACS is a versatile and extremely well optimized package to perform
+molecular dynamics computer simulations and subsequent trajectory analysis.
+It is developed for biomolecules like proteins, but the extremely high
+performance means it is used also in several other field like polymer chemistry
+and solid state physics.
+
+This package provides MPI single precision and double precision binaries.
-This package provides MPI single precision and double
+
+%package debug-mpi
+Summary: GROMACS debugging MPI binaries without assembly loops
+Group: Applications/Engineering
+Requires: gromacs-common = %{version}-%{release}
+
+%description debug-mpi
+GROMACS is a versatile and extremely well optimized package to perform
+molecular dynamics computer simulations and subsequent trajectory analysis.
+It is developed for biomolecules like proteins, but the extremely high
+performance means it is used also in several other field like polymer chemistry
+and solid state physics.
+
+This package provides debugging versions of MPI single precision and double
precision binaries.
+
%package common
Summary: GROMACS shared data and documentation
Group: Applications/Engineering
%description common
-GROMACS is a versatile and extremely well optimized package
-to perform molecular dynamics computer simulations and
-subsequent trajectory analysis. It is developed for
-biomolecules like proteins, but the extremely high
-performance means it is used also in several other field
-like polymer chemistry and solid state physics.
+GROMACS is a versatile and extremely well optimized package to perform
+molecular dynamics computer simulations and subsequent trajectory analysis.
+It is developed for biomolecules like proteins, but the extremely high
+performance means it is used also in several other field like polymer chemistry
+and solid state physics.
-This package includes architecture independent data and
-documentation.
+This package includes architecture independent data and documentation.
%package devel
@@ -133,56 +185,109 @@ Requires: gromacs-common = %{version}-%{
Requires: gromacs-libs = %{version}-%{release}
%description devel
-GROMACS is a versatile and extremely well optimized package
-to perform molecular dynamics computer simulations and
-subsequent trajectory analysis. It is developed for
-biomolecules like proteins, but the extremely high
-performance means it is used also in several other field
-like polymer chemistry and solid state physics.
-
-This package contains header files, development libraries,
-and a program example for the GROMACS molecular
-dynamics software. You need it if you want to write your
-own analysis programs.
+GROMACS is a versatile and extremely well optimized package to perform
+molecular dynamics computer simulations and subsequent trajectory analysis.
+It is developed for biomolecules like proteins, but the extremely high
+performance means it is used also in several other field like polymer chemistry
+and solid state physics.
+
+This package contains header files and development libraries for the GROMACS
+molecular dynamics software. You need it if you want to write your own analysis
+programs.
+
+
+
+%package debug-devel
+Summary: GROMACS debugging header files and development libraries
+Group: Applications/Engineering
+Requires: gromacs-common = %{version}-%{release}
+Requires: gromacs-devel = %{version}-%{release}
+Requires: gromacs-debug-libs = %{version}-%{release}
+
+%description debug-devel
+GROMACS is a versatile and extremely well optimized package to perform
+molecular dynamics computer simulations and subsequent trajectory analysis.
+It is developed for biomolecules like proteins, but the extremely high
+performance means it is used also in several other field like polymer chemistry
+and solid state physics.
+
+This package contains header files and development libraries for the debugging
+version of the GROMACS molecular dynamics software.
+
%package mpi-devel
Summary: GROMACS MPI development libraries
Group: Applications/Engineering
Requires: gromacs-mpi-libs = %{version}-%{release}
-Requires: gromacs-devel = %{version}-%{release}
+Requires: gromacs-devel = %{version}-%{release}
# Need to have this so that yum doesn't install LAM instead
Requires: openmpi
%description mpi-devel
-GROMACS is a versatile and extremely well optimized package
-to perform molecular dynamics computer simulations and
-subsequent trajectory analysis. It is developed for
-biomolecules like proteins, but the extremely high
-performance means it is used also in several other field
-like polymer chemistry and solid state physics.
+GROMACS is a versatile and extremely well optimized package to perform
+molecular dynamics computer simulations and subsequent trajectory analysis.
+It is developed for biomolecules like proteins, but the extremely high
+performance means it is used also in several other field like polymer chemistry
+and solid state physics.
This package contains development libraries for GROMACS MPI.
You need it if you want to write your own analysis programs.
+%package debug-mpi-devel
+Summary: GROMACS debugging MPI development libraries
+Group: Applications/Engineering
+Requires: gromacs-debug-mpi-libs = %{version}-%{release}
+Requires: gromacs-debug-devel = %{version}-%{release}
+# Need to have this so that yum doesn't install LAM instead
+Requires: openmpi
+
+%description debug-mpi-devel
+GROMACS is a versatile and extremely well optimized package to perform
+molecular dynamics computer simulations and subsequent trajectory analysis.
+It is developed for biomolecules like proteins, but the extremely high
+performance means it is used also in several other field like polymer chemistry
+and solid state physics.
+
+This package contains debugging versions of development libraries for the MPI
+version of GROMACS.
+
+
%package mpi-libs
-Summary: GROMACS libraries
+Summary: GROMACS MPI libraries
Group: Applications/Engineering
Requires: gromacs-common = %{version}-%{release}
# Need to have this so that yum doesn't install LAM instead
Requires: openmpi
%description mpi-libs
-GROMACS is a versatile and extremely well optimized package
-to perform molecular dynamics computer simulations and
-subsequent trajectory analysis. It is developed for
-biomolecules like proteins, but the extremely high
-performance means it is used also in several other field
-like polymer chemistry and solid state physics.
+GROMACS is a versatile and extremely well optimized package to perform
+molecular dynamics computer simulations and subsequent trajectory analysis.
+It is developed for biomolecules like proteins, but the extremely high
+performance means it is used also in several other field like polymer chemistry
+and solid state physics.
+
+This package provides runtime libraries needed for the MPI single and double
+precision binaries.
+
+
+%package debug-mpi-libs
+Summary: GROMACS debugging MPI libraries
+Group: Applications/Engineering
+Requires: gromacs-common = %{version}-%{release}
+# Need to have this so that yum doesn't install LAM instead
+Requires: openmpi
+
+%description debug-mpi-libs
+GROMACS is a versatile and extremely well optimized package to perform
+molecular dynamics computer simulations and subsequent trajectory analysis.
+It is developed for biomolecules like proteins, but the extremely high
+performance means it is used also in several other field like polymer chemistry
+and solid state physics.
-This package provides runtime libraries needed for the
-MPI single and double precision binaries.
+This package provides debugging versions of runtime libraries needed for the
+debug versions of the MPI single and double precision binaries.
%package bash
@@ -191,15 +296,13 @@ Group: Applications/Engineering
Requires: bash-completion
%description bash
-GROMACS is a versatile and extremely well optimized package
-to perform molecular dynamics computer simulations and
-subsequent trajectory analysis. It is developed for
-biomolecules like proteins, but the extremely high
-performance means it is used also in several other field
-like polymer chemistry and solid state physics.
+GROMACS is a versatile and extremely well optimized package to perform
+molecular dynamics computer simulations and subsequent trajectory analysis.
+It is developed for biomolecules like proteins, but the extremely high
+performance means it is used also in several other field like polymer chemistry
+and solid state physics.
-This package provides the needed
-bash completion for GROMACS
+This package provides bash completion for GROMACS.
%package zsh
@@ -208,15 +311,14 @@ Group: Applications/Engineering
Requires: zsh
%description zsh
-GROMACS is a versatile and extremely well optimized package
-to perform molecular dynamics computer simulations and
-subsequent trajectory analysis. It is developed for
-biomolecules like proteins, but the extremely high
-performance means it is used also in several other field
-like polymer chemistry and solid state physics.
+GROMACS is a versatile and extremely well optimized package to perform
+molecular dynamics computer simulations and subsequent trajectory analysis.
+It is developed for biomolecules like proteins, but the extremely high
+performance means it is used also in several other field like polymer chemistry
+and solid state physics.
-This package provides scripts needed to run GROMACS with
-zsh, also it provides zsh completion.
+This package provides scripts needed to run GROMACS with zsh and zsh
+completion.
%package csh
@@ -225,15 +327,14 @@ Group: Applications/Engineering
Requires: csh
%description csh
-GROMACS is a versatile and extremely well optimized package
-to perform molecular dynamics computer simulations and
-subsequent trajectory analysis. It is developed for
-biomolecules like proteins, but the extremely high
-performance means it is used also in several other field
-like polymer chemistry and solid state physics.
+GROMACS is a versatile and extremely well optimized package to perform
+molecular dynamics computer simulations and subsequent trajectory analysis.
+It is developed for biomolecules like proteins, but the extremely high
+performance means it is used also in several other field like polymer chemistry
+and solid state physics.
-This package provides scripts needed to run GROMACS with
-csh and a completion script.
+This package provides scripts needed to run GROMACS with csh and a completion
+script.
%package tutor
Summary: GROMACS tutorial files
@@ -241,22 +342,22 @@ Group: Applications/Engineering
Requires: gromacs-common = %{version}-%{release}
%description tutor
-GROMACS is a versatile and extremely well optimized package
-to perform molecular dynamics computer simulations and
-subsequent trajectory analysis. It is developed for
-biomolecules like proteins, but the extremely high
-performance means it is used also in several other field
-like polymer chemistry and solid state physics.
+GROMACS is a versatile and extremely well optimized package to perform
+molecular dynamics computer simulations and subsequent trajectory analysis.
+It is developed for biomolecules like proteins, but the extremely high
+performance means it is used also in several other field like polymer chemistry
+and solid state physics.
This package provides tutorials for the use of GROMACS.
%prep
%setup -q
-%patch0 -p1
-%patch1 -p1
+%patch0 -p1 -b .gmxrc
+%patch1 -p1 -b .gmxdemo
+%patch2 -p1 -b .libsuffix
# Fix incorrect permission
-chmod a-x src/tools/gmx_xpm2ps.c
+#chmod a-x src/tools/gmx_xpm2ps.c
@@ -268,40 +369,71 @@ chmod a-x src/tools/gmx_xpm2ps.c
export CFLAGS="%optflags -Wa,--noexecstack -fPIC"
export LIBS="-lblas -llapack"
+# Default options, used for all compilations
+export DEFOPTS="--enable-shared --disable-static --with-external-blas \
+ --with-external-lapack --with-gsl --with-x"
+export SINGLE="--enable-float" # Single precision
+export DOUBLE="--disable-float" # Double precision
+export MPI="--enable-mpi"
+export NOASM="--disable-ia32-3dnow --disable-ia32-sse --disable-x86-64-sse \
+ --disable-ppc-altivec --disable-ia64-asm"
+
+
# Single precision
mkdir single
cd single
-ln -s ../configure .
-%configure --enable-shared \
- --disable-static --enable-float \
- --with-external-blas --with-external-lapack \
- --with-gsl --with-x
+sed "s|@LIBSUFFIX@||g" < ../configure > configure; chmod 777 configure
+%configure $DEFOPTS $SINGLE
+sed -i 's|^hardcode_libdir_flag_spec=.*|hardcode_libdir_flag_spec=""|g' libtool
+sed -i 's|^runpath_var=LD_RUN_PATH|runpath_var=DIE_RPATH_DIE|g' libtool
+
+make %{?_smp_mflags}
+cd ..
+
+# Single precision, debug version with no assembly loops
+mkdir single-debug
+cd single-debug
+sed "s|@LIBSUFFIX@|_debug|g" < ../configure > configure; chmod 777 configure
+%configure $DEFOPTS $SINGLE $NOASM --program-suffix="_debug"
sed -i 's|^hardcode_libdir_flag_spec=.*|hardcode_libdir_flag_spec=""|g' libtool
sed -i 's|^runpath_var=LD_RUN_PATH|runpath_var=DIE_RPATH_DIE|g' libtool
make %{?_smp_mflags}
cd ..
+
+
# Double precision
mkdir double
cd double
-ln -s ../configure .
-%configure --disable-rpath --enable-shared \
- --disable-static --disable-float \
- --with-external-blas --with-external-lapack \
- --with-gsl --with-x \
- --program-suffix=_d
+sed "s|@LIBSUFFIX@|_d|g" < ../configure > configure; chmod 777 configure
+%configure $DEFOPTS $DOUBLE --program-suffix="_d"
sed -i 's|^hardcode_libdir_flag_spec=.*|hardcode_libdir_flag_spec=""|g' libtool
sed -i 's|^runpath_var=LD_RUN_PATH|runpath_var=DIE_RPATH_DIE|g' libtool
make %{?_smp_mflags}
cd ..
+# Double precision, debug version with no assembly loops
+mkdir double-debug
+cd double-debug
+sed "s|@LIBSUFFIX@|_d_debug|g" < ../configure > configure; chmod 777 configure
+%configure $DEFOPTS $DOUBLE $NOASM --program-suffix="_d_debug"
+sed -i 's|^hardcode_libdir_flag_spec=.*|hardcode_libdir_flag_spec=""|g' libtool
+sed -i 's|^runpath_var=LD_RUN_PATH|runpath_var=DIE_RPATH_DIE|g' libtool
+
+make %{?_smp_mflags}
+cd ..
+
+
+
# Load MPI enviroment
%if %modules == 1
. /etc/profile.d/modules.sh
module load %{_libdir}/openmpi/*/openmpi.module
+# The module overrides CFLAGS, need to set them again..
+export CFLAGS="%optflags -Wa,--noexecstack -fPIC"
%endif
%if %selector == 1
@@ -315,12 +447,19 @@ source /etc/profile.d/mpi-selector.sh
mkdir mpi-single
cd mpi-single
-ln -s ../configure .
-%configure --enable-shared \
- --disable-static --enable-float \
- --with-external-blas --with-external-lapack \
- --with-gsl --with-x --enable-mpi \
- --program-suffix=_mpi
+sed "s|@LIBSUFFIX@|_mpi|g" < ../configure > configure; chmod 777 configure
+%configure $DEFOPTS $SINGLE $MPI --program-suffix="_mpi"
+sed -i 's|^hardcode_libdir_flag_spec=.*|hardcode_libdir_flag_spec=""|g' libtool
+sed -i 's|^runpath_var=LD_RUN_PATH|runpath_var=DIE_RPATH_DIE|g' libtool
+
+make %{?_smp_mflags} mdrun
+#make %{?_smp_mflags}
+cd ..
+
+mkdir mpi-single-debug
+cd mpi-single-debug
+sed "s|@LIBSUFFIX@|_mpi_debug|g" < ../configure > configure; chmod 777 configure
+%configure $DEFOPTS $SINGLE $MPI $NOASM --program-suffix="_mpi_debug"
sed -i 's|^hardcode_libdir_flag_spec=.*|hardcode_libdir_flag_spec=""|g' libtool
sed -i 's|^runpath_var=LD_RUN_PATH|runpath_var=DIE_RPATH_DIE|g' libtool
@@ -328,15 +467,24 @@ make %{?_smp_mflags} mdrun
#make %{?_smp_mflags}
cd ..
+
+
# MPI, double precision
mkdir mpi-double
cd mpi-double
-ln -s ../configure .
-%configure --enable-shared \
- --disable-static --disable-float \
- --with-external-blas --with-external-lapack \
- --with-gsl --with-x --enable-mpi \
- --program-suffix=_mpi_d
+sed "s|@LIBSUFFIX@|_mpi_d|g" < ../configure > configure; chmod 777 configure
+%configure $DEFOPTS $DOUBLE $MPI --program-suffix="_mpi_d"
+sed -i 's|^hardcode_libdir_flag_spec=.*|hardcode_libdir_flag_spec=""|g' libtool
+sed -i 's|^runpath_var=LD_RUN_PATH|runpath_var=DIE_RPATH_DIE|g' libtool
+
+make %{?_smp_mflags} mdrun
+#make %{?_smp_mflags}
+cd ..
+
+mkdir mpi-double-debug
+cd mpi-double-debug
+sed "s|@LIBSUFFIX@|_mpi_d_debug|g" < ../configure > configure; chmod 777 configure
+%configure $DEFOPTS $DOUBLE $MPI $NOASM --program-suffix="_mpi_d_debug"
sed -i 's|^hardcode_libdir_flag_spec=.*|hardcode_libdir_flag_spec=""|g' libtool
sed -i 's|^runpath_var=LD_RUN_PATH|runpath_var=DIE_RPATH_DIE|g' libtool
@@ -353,6 +501,7 @@ rm -rf %{buildroot}
%if %modules == 1
. /etc/profile.d/modules.sh
module load %{_libdir}/openmpi/*/openmpi.module
+export CFLAGS="%optflags -Wa,--noexecstack -fPIC"
%endif
%if %selector == 1
@@ -367,11 +516,19 @@ cd single
make DESTDIR=%{buildroot} INSTALL="install -p" install
cd ..
+cd single-debug
+make DESTDIR=%{buildroot} INSTALL="install -p" install
+cd ..
+
# Double precision
cd double
make DESTDIR=%{buildroot} INSTALL="install -p" install
cd ..
+cd double-debug
+make DESTDIR=%{buildroot} INSTALL="install -p" install
+cd ..
+
# MPI, single precision
@@ -379,11 +536,21 @@ cd mpi-single
make DESTDIR=%{buildroot} INSTALL="install -p" install-mdrun
cd ..
+cd mpi-single-debug
+make DESTDIR=%{buildroot} INSTALL="install -p" install-mdrun
+cd ..
+
+
# MPI, double precision
cd mpi-double
make DESTDIR=%{buildroot} INSTALL="install -p" install-mdrun
cd ..
+cd mpi-double-debug
+make DESTDIR=%{buildroot} INSTALL="install -p" install-mdrun
+cd ..
+
+
# Install manual & packager's note
install -cpm 644 %{SOURCE1} .
install -cpm 644 %{SOURCE6} README.fedora
@@ -404,7 +571,9 @@ chmod a+x %{buildroot}%{_bindir}/GMXRC %
# (This is done here so that we don't need to mess with machine generated makefiles.
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
mv %{buildroot}%{_bindir}/${bin} %{buildroot}%{_bindir}/g_${bin}
+mv %{buildroot}%{_bindir}/${bin}_debug %{buildroot}%{_bindir}/g_${bin}_debug
mv %{buildroot}%{_bindir}/${bin}_d %{buildroot}%{_bindir}/g_${bin}_d
+mv %{buildroot}%{_bindir}/${bin}_d_debug %{buildroot}%{_bindir}/g_${bin}_d_debug
done
for bin in demux.pl xplor2gmx.pl; do
@@ -415,7 +584,9 @@ done
# the possibility to compile all mpi-enabled files
for mpibin in mdrun; do
mv %{buildroot}%{_bindir}/${mpibin}_mpi %{buildroot}%{_bindir}/g_${mpibin}_mpi
+mv %{buildroot}%{_bindir}/${mpibin}_mpi_debug %{buildroot}%{_bindir}/g_${mpibin}_mpi_debug
mv %{buildroot}%{_bindir}/${mpibin}_mpi_d %{buildroot}%{_bindir}/g_${mpibin}_mpi_d
+mv %{buildroot}%{_bindir}/${mpibin}_mpi_d_debug %{buildroot}%{_bindir}/g_${mpibin}_mpi_d_debug
done
# Man pages
@@ -444,10 +615,19 @@ rm -rf %{buildroot}/%{_libdir}/*.la
%postun libs -p /sbin/ldconfig
+%post debug-libs -p /sbin/ldconfig
+
+%postun debug-libs -p /sbin/ldconfig
+
%post mpi-libs -p /sbin/ldconfig
%postun mpi-libs -p /sbin/ldconfig
+%post debug-mpi-libs -p /sbin/ldconfig
+
+%postun debug-mpi-libs -p /sbin/ldconfig
+
+
%clean
rm -rf %{buildroot}
@@ -460,10 +640,16 @@ rm -rf %{buildroot}
%files
%defattr(-,root,root,-)
%{_bindir}/*
-%exclude %{_bindir}/g_mdrun_mpi
-%exclude %{_bindir}/g_mdrun_mpi_d
+%exclude %{_bindir}/*_debug
+%exclude %{_bindir}/g_mdrun_mpi*
%exclude %{_bindir}/GMXRC*
+%files debug
+%defattr(-,root,root,-)
+%{_bindir}/*_debug
+%exclude %{_bindir}/g_mdrun_mpi_debug
+%exclude %{_bindir}/g_mdrun_mpi_d_debug
+
%files libs
%defattr(-,root,root,-)
%{_libdir}/libgmx.so.*
@@ -473,11 +659,25 @@ rm -rf %{buildroot}
%{_libdir}/libmd.so.*
%{_libdir}/libmd_d.so.*
+%files debug-libs
+%defattr(-,root,root,-)
+%{_libdir}/libgmx_debug.so.*
+%{_libdir}/libgmx_d_debug.so.*
+%{_libdir}/libgmxana_debug.so.*
+%{_libdir}/libgmxana_d_debug.so.*
+%{_libdir}/libmd_debug.so.*
+%{_libdir}/libmd_d_debug.so.*
+
+
%files mpi
%defattr(-,root,root,-)
%{_bindir}/g_mdrun_mpi
%{_bindir}/g_mdrun_mpi_d
+%files debug-mpi
+%defattr(-,root,root,-)
+%{_bindir}/g_mdrun_mpi_debug
+%{_bindir}/g_mdrun_mpi_d_debug
%files mpi-libs
%defattr(-,root,root,-)
@@ -486,6 +686,12 @@ rm -rf %{buildroot}
%{_libdir}/libmd_mpi.so.*
%{_libdir}/libmd_mpi_d.so.*
+%files debug-mpi-libs
+%defattr(-,root,root,-)
+%{_libdir}/libgmx_mpi_debug.so.*
+%{_libdir}/libgmx_mpi_d_debug.so.*
+%{_libdir}/libmd_mpi_debug.so.*
+%{_libdir}/libmd_mpi_d_debug.so.*
%files common
@@ -510,6 +716,15 @@ rm -rf %{buildroot}
%{_datadir}/%{name}/template
%exclude %{_datadir}/%{name}/template/Makefile.mpi.*
+%files debug-devel
+%defattr(-,root,root,-)
+%{_libdir}/libgmx_debug.so
+%{_libdir}/libgmx_d_debug.so
+%{_libdir}/libgmxana_debug.so
+%{_libdir}/libgmxana_d_debug.so
+%{_libdir}/libmd_debug.so
+%{_libdir}/libmd_d_debug.so
+
%files mpi-devel
%defattr(-,root,root,-)
%{_libdir}/libgmx_mpi.so
@@ -518,6 +733,13 @@ rm -rf %{buildroot}
%{_libdir}/libmd_mpi_d.so
%{_datadir}/%{name}/template/Makefile.mpi.*
+%files debug-mpi-devel
+%defattr(-,root,root,-)
+%{_libdir}/libgmx_mpi_debug.so
+%{_libdir}/libgmx_mpi_d_debug.so
+%{_libdir}/libmd_mpi_debug.so
+%{_libdir}/libmd_mpi_d_debug.so
+
%files zsh
%defattr(-,root,root,-)
@@ -540,6 +762,11 @@ rm -rf %{buildroot}
%changelog
+* Fri May 22 2009 Jussi Lehtola <jussi.lehtola at iki.fi> - 4.0.5-1
+- Update to 4.0.5.
+- Change spec %%defines to %%globals.
+- Add debug subpackages to make debugging of GROMACS possible.
+
* Tue Feb 17 2009 Jussi Lehtola <jussi.lehtola at iki.fi> - 4.0.4-1
- Update to 4.0.4.
Index: sources
===================================================================
RCS file: /cvs/pkgs/rpms/gromacs/F-9/sources,v
retrieving revision 1.8
retrieving revision 1.9
diff -u -p -r1.8 -r1.9
--- sources 18 Feb 2009 14:42:34 -0000 1.8
+++ sources 22 May 2009 09:33:15 -0000 1.9
@@ -1,2 +1,2 @@
2b6565bef76109a579c39ec1dcb0ecf2 manual-4.0.pdf
-5ae66b152c634ccfde2c57c81266d1fd gromacs-4.0.4.tar.gz
+2db2261852a4d3a97547979f379dee94 gromacs-4.0.5.tar.gz
- Previous message (by thread): rpms/gromacs/F-8 gromacs-configure.patch, NONE, 1.1 gromacs-README.fedora, 1.1, 1.2 gromacs.spec, 1.4, 1.5 sources, 1.4, 1.5
- Next message (by thread): rpms/pyfits/devel pyfits.spec,1.5,1.6
- Messages sorted by:
[ date ]
[ thread ]
[ subject ]
[ author ]
More information about the fedora-extras-commits
mailing list