Commit cc6d07eb authored by Nicholas Breen's avatar Nicholas Breen

Build PDF and HTML documentation locally, in the build-indep target

parent 612d3aec
......@@ -4,6 +4,7 @@ Priority: extra
Maintainer: Debichem Team <>
Uploaders: Nicholas Breen <>
Build-Depends: debhelper (>= 7.0.0), libfftw3-dev, libmpich-dev (>= 3.0.4-6), libopenmpi-dev (>= 1.2.4-5) [alpha amd64 arm64 armel armhf hurd-i386 i386 ia64 kfreebsd-amd64 kfreebsd-i386 mips mips64 mips64el mipsel powerpc powerpcspe ppc64 ppc64el sparc sparc64], libx11-dev, zlib1g-dev, libgsl0-dev, libxml2-dev, libblas-dev, liblapack-dev, libboost-dev, cmake
Build-Depends-Indep: doxygen, graphviz, imagemagick, mscgen, python-sphinx, texlive-latex-base
Standards-Version: 3.9.6
......@@ -47,11 +48,12 @@ Description: GROMACS molecular dynamics sim, data and documentation
This package contains architecture-independent topology and force field
data, documentation, man pages, and example files.
Package: libgromacs0
Package: libgromacs1
Architecture: any
Section: libs
Depends: ${shlibs:Depends}, ${misc:Depends}
Breaks: gromacs (<< 5.1-1~)
Description: GROMACS molecular dynamics sim, shared libraries
GROMACS is a versatile package to perform molecular dynamics, i.e. simulate
the Newtonian equations of motion for systems with hundreds to millions of
......@@ -66,8 +68,8 @@ Description:
Package: libgromacs-dev
Architecture: any
Section: devel
Depends: ${shlibs:Depends}, libgromacs0 (= ${binary:Version}), fftw3-dev, ${misc:Depends}
Section: libdevel
Depends: ${shlibs:Depends}, libgromacs1 (= ${binary:Version}), fftw3-dev, ${misc:Depends}
Recommends: gromacs-data
Suggests: gromacs-mpich (= ${binary:Version}) | gromacs-openmpi (= ${binary:Version}) [alpha amd64 arm64 armel armhf hurd-i386 i386 ia64 kfreebsd-amd64 kfreebsd-i386 mips mips64 mips64el mipsel powerpc powerpcspe ppc64 ppc64el sparc sparc64], libmpich-dev, libx11-dev, zlib1g-dev
Replaces: gromacs-dev (<< 5.1-1~)
......@@ -90,7 +92,8 @@ Description: GROMACS molecular dynamics sim, development kit
Package: gromacs-dev
Architecture: any
Section: metapackages
Depends: libgromacs-dev
Depends: libgromacs-dev, ${misc:Depends}
Description: Dummy package for libgromacs-dev
This is a metapackage to bring in the replacement package libgromacs-dev.
It can safely be removed after that installation.
......@@ -148,7 +148,6 @@ usr/share/man/man1/gmx-pme_error.1 usr/share/man/man1/g_pme_error_d.1
usr/share/man/man1/gmx-polystat.1 usr/share/man/man1/g_polystat_d.1
usr/share/man/man1/gmx-potential.1 usr/share/man/man1/g_potential_d.1
usr/share/man/man1/gmx-principal.1 usr/share/man/man1/g_principal_d.1
usr/share/man/man1/gmx-protonate.1 usr/share/man/man1/g_protonate_d.1
usr/share/man/man1/gmx-rama.1 usr/share/man/man1/g_rama_d.1
usr/share/man/man1/gmx-rdf.1 usr/share/man/man1/g_rdf_d.1
usr/share/man/man1/gmx-rms.1 usr/share/man/man1/g_rms_d.1
......@@ -180,5 +179,4 @@ usr/share/man/man1/gmx-wham.1 usr/share/man/man1/g_wham_d.1
usr/share/man/man1/gmx-wheel.1 usr/share/man/man1/g_wheel_d.1
usr/share/man/man1/gmx-x2top.1 usr/share/man/man1/g_x2top_d.1
usr/share/man/man1/gmx-xpm2ps.1 usr/share/man/man1/xpm2ps_d.1
usr/share/man/man1/g_options.1 usr/share/man/man1/g_options_d.1
usr/share/man/man1/gmx.1 usr/share/man/man1/gmx_d.1
# no need to split out the libraries into separate lib packages,
# or to generate symbol files, since no other package uses them
gromacs: package-name-doesnt-match-sonames
gromacs: no-symbols-control-file
# Adaptive Resolution Molecular Dynamics Simulation
gromacs: spelling-error-in-binary usr/lib/*/ AdResS Address
gromacs: spelling-error-in-binary usr/lib/*/ AdResS Address
# Seems to be a version-specific, platform-specific false positive; not in source
gromacs [amd64]: spelling-error-in-binary usr/lib/x86_64-linux-gnu/ tEH the
gromacs [amd64]: spelling-error-in-binary usr/lib/x86_64-linux-gnu/ tEH the
.TH g_options 1 "Mon 21 Mar 2011" "" "GROMACS suite, VERSION 4.5.4"
g_options \- Utility program for generating GROMACS documentation
.B VERSION 4.5.4
.BI "\-[no]h" ""
.BI "\-[no]version" ""
.BI "\-nice" " int "
\&GROMACS programs have some standard options,
\&of which some are hidden by default:
.BI "\-[no]h" "no "
Print help info and quit
.BI "\-[no]version" "no "
Print version info and quit
.BI "\-nice" " int" " 0"
Set the nicelevel
\- If the configuration script found Motif or Lesstif on your system, you can use the graphical interface (if not, you will get an error):
\fB \-X\fR gmx_bool \fB no\fR Use dialog box GUI to edit command line options
\- When compiled on an SGI\-IRIX system, all GROMACS programs have an additional option:
\fB \-npri\fR int \fB 0\fR Set non blocking priority (try 128)
\- Optional files are not used unless the option is set, in contrast to non\-optional files, where the default file name is used when the option is not set.
\- All GROMACS programs will accept file options without a file extension or filename being specified. In such cases the default filenames will be used. With multiple input file types, such as generic structure format, the directory will be searched for files of each type with the supplied or default name. When no such file is found, or with output files the first file type will be used.
\- All GROMACS programs with the exception of \fB mdrun\fR and \fB eneconv\fR check if the command line options are valid. If this is not the case, the program will be halted.
\- Enumerated options (enum) should be used with one of the arguments listed in the option description, the argument may be abbreviated. The first match to the shortest argument in the list will be selected.
\- Vector options can be used with 1 or 3 parameters. When only one parameter is supplied the two others are also set to this value.
\- All GROMACS programs can read compressed or g\-zipped files. There might be a problem with reading compressed \fB .xtc\fR, \fB .trr\fR and \fB .trj\fR files, but these will not compress very well anyway.
\- Most GROMACS programs can process a trajectory with fewer atoms than the run input or structure file, but only if the trajectory consists of the first n atoms of the run input or structure file.
\- Many GROMACS programs will accept the \fB \-tu\fR option to set the time units to use in output files (e.g. for \fB xmgr\fR graphs or \fB xpm\fR matrices) and in all time options.
.BR gromacs(7)
More information about \fBGROMACS\fR is available at <\fI\fR>.
.TH GMX 1 "2014-07-02" "GROMACS 5.0"
gmx \- master command for GROMACS suite
\fBgmx\fP \fI [ options ]\fP command \fI[ command options ... ]\fP
.B gmx
is the unified interface for nearly all GROMACS operations. For a list of
all available commands, run
.B gmx help command
, and for detailed help on a specific command, e.g. rms, run
.B gmx help rms
or read the (equivalent) man page for
.BR gmx-rms(1).
Selections are used to select atoms/molecules/residues for analysis. In
contrast to traditional index files, selections can be dynamic, i.e., select
different atoms for different trajectory frames.
Each analysis tool requires a different number of selections and the
selections are interpreted differently. The general idea is still the same:
each selection evaluates to a set of positions, where a position can be an
atom position or center-of-mass or center-of-geometry of a set of atoms. The
tool then uses these positions for its analysis to allow very flexible
processing. Some analysis tools may have limitations on the types of
selections allowed.
To get started with selections, run, e.g., \fBgmx select\fP without specifying
selections on the command-line and use the interactive prompt to try out
different selections. This tool provides output options that allow one to see
what is actually selected by the given selections, and the interactive prompt
reports syntax errors immediately, allowing one to try again. The subtopics
listed below give more details on different aspects of selections.
Available subtopics:
.PD 0
\fIarithmetic\fP Arithmetic expressions in selections
\fIcmdline\fP Specifying selections from command line
\fIevaluation\fP Selection evaluation and optimization
\fIexamples\fP Selection examples
\fIkeywords\fP Selection keywords
\fIlimitations\fP Selection limitations
\fIpositions\fP Specifying positions in selections
\fIsyntax\fP Selection syntax
View these selections with \fBgmx help selection SUBTOPIC\fB.
For command specific options, see \fBgmx help COMMAND\fP.
.B \-h
Print help and quit.
.B \-quiet
Do not print common startup info or quotes.
.B \-version
Print extended version information and quit.
.B \-copyright
Print copyright information on startup.
All of these options can be suppressed by a leading "no", e.g. \fB\-noquiet\fP.
......@@ -98,10 +98,10 @@ endif
touch $@
build: configure-stamp build-basic build-mpich build-openmpi
build: build-arch build-indep
build-arch: build
build-indep: build
build-arch: configure-stamp build-basic build-mpich build-openmpi
build-indep: build-manual
build-basic: configure-stamp
......@@ -109,6 +109,18 @@ build-basic: configure-stamp
$(MAKE) -C build/basic-dp
touch $@
build-manual: configure-stamp build-basic
# Build speedy, stripped-down version just for documentation generation.
# Derived from admin/
(mkdir -p build/documentation ; cd build/documentation; \
$(MAKE) gmx -C build/documentation
# Generate PDF
$(MAKE) manual -C build/documentation
# Generate HTML
$(MAKE) webpage -C build/documentation
build-mpich: configure-stamp
$(MAKE) -C build/mpich
......@@ -146,8 +158,9 @@ install: build install-basic install-mpich install-openmpi
dh_installdirs -pgromacs-data
mv $(CURDIR)/debian/gromacs/usr/share/gromacs/top \
mv $(CURDIR)/debian/gromacs/usr/share/gromacs/html \
# mv $(CURDIR)/debian/gromacs/usr/share/gromacs/html \
# $(CURDIR)/debian/gromacs-data/usr/share/doc/gromacs
mv $(CURDIR)/debian/gromacs/usr/share/man \
# some of the default installation directories for documentation and
......@@ -158,14 +171,14 @@ install: build install-basic install-mpich install-openmpi
chmod 644 $(CURDIR)/debian/gromacs-data/usr/share/gromacs/shell-specific/*
dh_link -pgromacs-data usr/share/doc/gromacs/html usr/share/doc/gromacs-data/html
dh_link -pgromacs-data usr/share/doc/gromacs/html usr/share/doc/libgromacs-dev/html
# this name is also give in documentation
# this name is also given in documentation
dh_link -pgromacs-data usr/share/doc/gromacs-data/copyright usr/share/doc/gromacs-data/COPYING
# rename a pair of Perl scripts to drop the .pl extension (Policy 10.4)
mv $(CURDIR)/debian/gromacs/usr/bin/ $(CURDIR)/debian/gromacs/usr/bin/demux
mv $(CURDIR)/debian/gromacs/usr/bin/ $(CURDIR)/debian/gromacs/usr/bin/xplor2gmx
mkdir -p $(CURDIR)/debian/libgromacs0/usr/lib/$(DEB_HOST_MULTIARCH)
dh_install -plibgromacs0
mkdir -p $(CURDIR)/debian/libgromacs1/usr/lib/$(DEB_HOST_MULTIARCH)
mv $(CURDIR)/debian/gromacs/usr/lib/*/*.so.* $(CURDIR)/debian/libgromacs1/usr/lib/$(DEB_HOST_MULTIARCH)/
dh_installdirs -plibgromacs-dev
mv $(CURDIR)/debian/gromacs/usr/include $(CURDIR)/debian/libgromacs-dev/usr/include
......@@ -187,12 +200,7 @@ install-basic: build
dh_installdirs -pgromacs
$(MAKE) -C build/basic install DESTDIR=$(CURDIR)/debian/gromacs
$(MAKE) -C build/basic-dp install DESTDIR=$(CURDIR)/debian/gromacs
# In 5.0, these are removed commands with no documentation; delete symlinks too.
rm $(CURDIR)/debian/gromacs/usr/bin/g_bond \
$(CURDIR)/debian/gromacs/usr/bin/g_bond_d \
$(CURDIR)/debian/gromacs/usr/bin/g_sgangle \
dh_installman -pgromacs debian/man/demux.1 debian/man/g_options.1 debian/man/gmx.1 debian/man/xplor2gmx.1
dh_installman -pgromacs debian/man/demux.1 debian/man/xplor2gmx.1
# Here's a fun part. In 5.0, "gmx command" replaced nearly all of the
# "g_command" names, but the mapping is not 1:1 and some commands were
# renamed, added, deleted, etc. So now we generate the man page symlinks
......@@ -249,7 +257,8 @@ binary-arch: build install
dh_compress -s
dh_fixperms -s
dh_makeshlibs -s
dh_shlibdeps -pgromacs -L gromacs -l debian/gromacs/usr/lib
dh_shlibdeps -plibgromacs1 -L libgromacs1 -l debian/libgromacs1/usr/lib
dh_shlibdeps -pgromacs -L libgromacs1 -l debian/libgromacs1/usr/lib:debian/gromacs/usr/lib
dh_shlibdeps -pgromacs-mpich -L gromacs-mpich -l debian/gromacs-mpich/usr/lib
ifneq (,$(findstring $(DEB_HOST_ARCH),$(OPENMPI_ARCH)))
dh_shlibdeps -pgromacs-openmpi -L gromacs-openmpi -l debian/gromacs-openmpi/usr/lib
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment