[med-svn] r5085 - in trunk/packages/autodocksuite/trunk/debian: . patches

Steffen Möller moeller at alioth.debian.org
Sun Aug 1 13:58:55 UTC 2010


Author: moeller
Date: 2010-08-01 13:58:53 +0000 (Sun, 01 Aug 2010)
New Revision: 5085

Added:
   trunk/packages/autodocksuite/trunk/debian/patches/
   trunk/packages/autodocksuite/trunk/debian/patches/const_manual_10.patch
   trunk/packages/autodocksuite/trunk/debian/patches/const_manual_25.patch
   trunk/packages/autodocksuite/trunk/debian/patches/const_manual_2nd.patch
   trunk/packages/autodocksuite/trunk/debian/patches/const_manual_30.patch
   trunk/packages/autodocksuite/trunk/debian/patches/const_manual_35.patch
   trunk/packages/autodocksuite/trunk/debian/patches/const_manual_FILEpointer.patch
   trunk/packages/autodocksuite/trunk/debian/patches/const_suggetsions_gcc4.6_1st_iteration.patch
   trunk/packages/autodocksuite/trunk/debian/patches/manual_const_1.patch
   trunk/packages/autodocksuite/trunk/debian/patches/series
Log:
Series of not-yet-accepted patches that I would not want to be lost.



Added: trunk/packages/autodocksuite/trunk/debian/patches/const_manual_10.patch
===================================================================
--- trunk/packages/autodocksuite/trunk/debian/patches/const_manual_10.patch	                        (rev 0)
+++ trunk/packages/autodocksuite/trunk/debian/patches/const_manual_10.patch	2010-08-01 13:58:53 UTC (rev 5085)
@@ -0,0 +1,1076 @@
+Index: autodocksuite-4.2.3/autodock/calculateEnergies.cc
+===================================================================
+--- autodocksuite-4.2.3.orig/autodock/calculateEnergies.cc	2010-07-31 00:07:37.000000000 +0200
++++ autodocksuite-4.2.3/autodock/calculateEnergies.cc	2010-07-31 23:20:08.000000000 +0200
+@@ -52,11 +52,11 @@
+ //      B_include_1_4_interactions, scale_1_4, qsp_abs_charge,  B_use_non_bond_cutoff );
+ 
+ EnergyBreakdown calculateEnergies(
+-    const int                  natom,                     // input  number of atoms
+-    const int                  ntor,                      // input  number of torsions
+-    const Real                 unbound_internal_FE,       // input  pre-calculated internal energy of unbound state
+-    const Real                 torsFreeEnergy,            // input  constant times number of freely-rotatable bonds
+-    const Boole                B_have_flexible_residues,  // input  boolean whether we have flexible residues in protein
++    const int            natom,                     // input  number of atoms
++    const int            ntor,                      // input  number of torsions
++    const Real           unbound_internal_FE,       // input  pre-calculated internal energy of unbound state
++    const Real           torsFreeEnergy,            // input  constant times number of freely-rotatable bonds
++    const Boole          B_have_flexible_residues,  // input  boolean whether we have flexible residues in protein
+ 
+     // trilinterp
+     const Real           tcoord[MAX_ATOMS][SPACE],  // input  coordinates of atoms to be trilinearly-interpolated
+@@ -64,13 +64,13 @@
+     CONST_FLOAT          abs_charge[MAX_ATOMS],     // input  absolute magnitude of partial charges
+     CONST_INT            type[MAX_ATOMS],           // input  atom type of each atom
+     #include "map_declare.h"
+-    const GridMapSetInfo       *info,                     // input  info->lo[X],info->lo[Y],info->lo[Z],    minimum coordinates in x,y,z
+-    const int                  B_outside,                 // input  boolean whether some atoms are outside grid box
+-    const int                  ignore_inter[MAX_ATOMS],   // input  array of booleans, says to ignore computation intermolecular energies per atom
++    const GridMapSetInfo *const info,               // input  info->lo[X],info->lo[Y],info->lo[Z],    minimum coordinates in x,y,z
++    const int            B_outside,                 // input  boolean whether some atoms are outside grid box
++    const int            ignore_inter[MAX_ATOMS],   // input  array of booleans, says to ignore computation intermolecular energies per atom
+     Real                 elec[MAX_ATOMS],           // output if not NULL - electrostatic energies, atom by atom
+     Real                 emap[MAX_ATOMS],           // output if not NULL - intermolecular energies
+-    Real                 *p_elec_total,             // output if not NULL - total electrostatic energy
+-    Real                 *p_emap_total,             // output if not NULL - total intermolecular energy
++    Real                 *const p_elec_total,       // output if not NULL - total electrostatic energy
++    Real                 *const p_emap_total,       // output if not NULL - total intermolecular energy
+ 
+     // eintcal
+     const NonbondParam *const nonbondlist,          // input  list of nonbonds
+@@ -80,7 +80,7 @@
+     const Boole          B_include_1_4_interactions,// input  boolean whether to include 1,4 interactions as non-bonds
+     const Real           scale_1_4,                 // input  scaling factor for 1,4 interactions, if included
+     const Real           qsp_abs_charge[MAX_ATOMS], // input  q-solvation parameters
+-    const Boole          B_use_non_bond_cutoff     // input  boolean whether to use a nonbond distance cutoff
++    const Boole          B_use_non_bond_cutoff      // input  boolean whether to use a nonbond distance cutoff
+ 
+ )
+ 
+@@ -178,13 +178,13 @@
+     CONST_FLOAT          abs_charge[MAX_ATOMS],     // input  absolute magnitude of partial charges
+     CONST_INT            type[MAX_ATOMS],           // input  atom type of each atom
+     #include "map_declare.h"
+-    const GridMapSetInfo *const info,                     // input  info->lo[X],info->lo[Y],info->lo[Z],    minimum coordinates in x,y,z
++    const GridMapSetInfo *const info,               // input  info->lo[X],info->lo[Y],info->lo[Z],    minimum coordinates in x,y,z
+     const int            B_outside,                 // input  boolean whether some atoms are outside grid box
+-    int                  ignore_inter[MAX_ATOMS],   // input  array of booleans, says to ignore computation intermolecular energies per atom
++    const int            ignore_inter[MAX_ATOMS],   // input  array of booleans, says to ignore computation intermolecular energies per atom
+     Real                 elec[MAX_ATOMS],           // output if not NULL - electrostatic energies, atom by atom
+     Real                 emap[MAX_ATOMS],           // output if not NULL - intermolecular energies
+-    Real                 *p_elec_total,             // output if not NULL - total electrostatic energy
+-    Real                 *p_emap_total,             // output if not NULL - total intermolecular energy
++    Real                 *const p_elec_total,       // output if not NULL - total electrostatic energy
++    Real                 *const p_emap_total,       // output if not NULL - total intermolecular energy
+ 
+     // eintcal
+     const NonbondParam *const nonbondlist,          // input  list of nonbonds
+@@ -237,7 +237,7 @@
+     return eb;
+ } // calculateBindingEnergies()
+ 
+-void update_binding_energy_breakdown( EnergyBreakdown * eb, Unbound_Model ad4_unbound_model )
++void update_binding_energy_breakdown( /* not const */ EnergyBreakdown *const eb, const Unbound_Model ad4_unbound_model )
+ {
+     // total intermolecular energy = (1) + (4)
+     eb->e_inter     = eb->e_inter_moving_fixed + eb->e_inter_moving_moving;
+Index: autodocksuite-4.2.3/autodock/calculateEnergies.h
+===================================================================
+--- autodocksuite-4.2.3.orig/autodock/calculateEnergies.h	2010-07-31 00:07:37.000000000 +0200
++++ autodocksuite-4.2.3/autodock/calculateEnergies.h	2010-07-31 23:18:32.000000000 +0200
+@@ -44,7 +44,7 @@
+     CONST_FLOAT          abs_charge[MAX_ATOMS],     // input  absolute magnitude of partial charges
+     CONST_INT            type[MAX_ATOMS],           // input  atom type of each atom
+     #include "map_declare.h"
+-    const GridMapSetInfo *info,                     // input  info->lo[X],info->lo[Y],info->lo[Z],    minimum coordinates in x,y,z
++    const GridMapSetInfo *const info,               // input  info->lo[X],info->lo[Y],info->lo[Z],    minimum coordinates in x,y,z
+     const int            B_outside,                 // input  boolean whether some atoms are outside grid box
+     const int            ignore_inter[MAX_ATOMS],   // input  array of booleans, says to ignore computation intermolecular energies per atom
+     /* not const */ Real elec[MAX_ATOMS],           // output if not NULL - electrostatic energies, atom by atom
+@@ -84,13 +84,13 @@
+     CONST_FLOAT          abs_charge[MAX_ATOMS],     // input  absolute magnitude of partial charges
+     CONST_INT            type[MAX_ATOMS],           // input  atom type of each atom
+     #include "map_declare.h"
+-    const GridMapSetInfo *info,                     // input  info->lo[X],info->lo[Y],info->lo[Z],    minimum coordinates in x,y,z
++    const GridMapSetInfo *const info,               // input  info->lo[X],info->lo[Y],info->lo[Z],    minimum coordinates in x,y,z
+     const int            B_outside,                 // input  boolean whether some atoms are outside grid box
+     const int            ignore_inter[MAX_ATOMS],   // input  array of booleans, says to ignore computation intermolecular energies per atom
+     Real                 elec[MAX_ATOMS],           // output if not NULL - electrostatic energies, atom by atom
+     Real                 emap[MAX_ATOMS],           // output if not NULL - intermolecular energies
+-    Real                 *p_elec_total,             // output if not NULL - total electrostatic energy
+-    Real                 *p_emap_total,             // output if not NULL - total intermolecular energy
++    Real                 *const p_elec_total,       // output if not NULL - total electrostatic energy
++    Real                 *const p_emap_total,       // output if not NULL - total intermolecular energy
+ 
+     // eintcal
+     const NonbondParam *const nonbondlist,          // input  list of nonbonds
+@@ -105,7 +105,7 @@
+ 
+ );
+ 
+-void update_binding_energy_breakdown( EnergyBreakdown * eb, const Unbound_Model ad4_unbound_model
++void update_binding_energy_breakdown( /* not const */ EnergyBreakdown * eb, const Unbound_Model ad4_unbound_model
+                  );
+ 
+ void initialise_binding_energy_breakdown ( EnergyBreakdown * eb,
+Index: autodocksuite-4.2.3/autodock/changeState.cc
+===================================================================
+--- autodocksuite-4.2.3.orig/autodock/changeState.cc	2010-07-30 22:45:41.000000000 +0200
++++ autodocksuite-4.2.3/autodock/changeState.cc	2010-07-31 01:09:19.000000000 +0200
+@@ -35,12 +35,12 @@
+ #include "changeState.h"
+ 
+ 
+-State  changeState( State last,      /* ...must be a normalized quaternion! */
+-                    Real trnStep,
+-                    Real torStep,
+-                    int   ntor,
+-                    Real F_TorConRange[MAX_TORS][MAX_TOR_CON][2],
+-                    int   N_con[MAX_TORS])
++State  changeState( const State last,      /* ...must be a normalized quaternion! */
++                    const Real trnStep,
++                    const Real torStep,
++                    const int   ntor,
++                    const Real F_TorConRange[MAX_TORS][MAX_TOR_CON][2],
++                    const int   N_con[MAX_TORS])
+ 
+ {
+     register int i;
+Index: autodocksuite-4.2.3/autodock/changeState.h
+===================================================================
+--- autodocksuite-4.2.3.orig/autodock/changeState.h	2010-07-30 22:47:44.000000000 +0200
++++ autodocksuite-4.2.3/autodock/changeState.h	2010-07-30 22:48:16.000000000 +0200
+@@ -27,10 +27,10 @@
+ #ifndef CHANGESTATE
+ #define CHANGESTATE
+ 
+-State  changeState( State last,      /* ...must be a normalized quaternion! */
+-		    Real trnStep,
+-		    Real torStep,
+-		    int   ntor,
+-		    Real F_TorConRange[MAX_TORS][MAX_TOR_CON][2],
+-		    int   N_con[MAX_TORS]);
++State  changeState( const State last,      /* ...must be a normalized quaternion! */
++		    const Real trnStep,
++		    const Real torStep,
++		    const int   ntor,
++		    const Real F_TorConRange[MAX_TORS][MAX_TOR_CON][2],
++		    const int   N_con[MAX_TORS]);
+ #endif
+Index: autodocksuite-4.2.3/autodock/cnv_state_to_coords.cc
+===================================================================
+--- autodocksuite-4.2.3.orig/autodock/cnv_state_to_coords.cc	2010-07-30 23:41:01.000000000 +0200
++++ autodocksuite-4.2.3/autodock/cnv_state_to_coords.cc	2010-07-31 01:09:19.000000000 +0200
+@@ -49,7 +49,7 @@
+                           const int tlist[MAX_TORS][MAX_ATOMS],
+                           const int ntor,
+                           const Real crdpdb[MAX_ATOMS][SPACE],
+-                          Real crd[MAX_ATOMS][SPACE],
++                          /* not const */ Real crd[MAX_ATOMS][SPACE],
+                           const int natom)
+ 
+ {
+Index: autodocksuite-4.2.3/autodock/cnv_state_to_coords.h
+===================================================================
+--- autodocksuite-4.2.3.orig/autodock/cnv_state_to_coords.h	2010-07-30 23:41:01.000000000 +0200
++++ autodocksuite-4.2.3/autodock/cnv_state_to_coords.h	2010-07-30 23:42:13.000000000 +0200
+@@ -37,6 +37,6 @@
+                           const int tlist[MAX_TORS][MAX_ATOMS],
+                           const int ntor,
+                           const Real crdpdb[MAX_ATOMS][SPACE],
+-                          Real crd[MAX_ATOMS][SPACE],
++                          /* not const */ Real crd[MAX_ATOMS][SPACE],
+                           const int natom);
+ #endif
+Index: autodocksuite-4.2.3/autodock/getInitialState.cc
+===================================================================
+--- autodocksuite-4.2.3.orig/autodock/getInitialState.cc	2010-07-30 23:55:48.000000000 +0200
++++ autodocksuite-4.2.3/autodock/getInitialState.cc	2010-07-31 01:09:19.000000000 +0200
+@@ -46,12 +46,12 @@
+ 
+ void getInitialState(
+ 
+-            Real *Addr_e0total,
+-            Real e0max,
++            /* not const */ Real *const Addr_e0total,
++            const Real e0max,
+ 
+-            State *sInit, /* was qtn0[QUAT] and tor0[MAX_TORS] */
+-            State *sMinm, /* was qtnMin[QUAT] and torMin[MAX_TORS] */
+-            State *sLast, /* was qtnLast[QUAT] and torLast[MAX_TORS] */
++            /* not const */ State *const sInit, /* was qtn0[QUAT] and tor0[MAX_TORS] */
++            /* not const */ State *const sMinm, /* was qtnMin[QUAT] and torMin[MAX_TORS] */
++            /* not const */ State *const sLast, /* was qtnLast[QUAT] and torLast[MAX_TORS] */
+ 
+             const Boole B_RandomTran0,
+             const Boole B_RandomQuat0,
+Index: autodocksuite-4.2.3/autodock/getInitialState.h
+===================================================================
+--- autodocksuite-4.2.3.orig/autodock/getInitialState.h	2010-07-30 23:55:48.000000000 +0200
++++ autodocksuite-4.2.3/autodock/getInitialState.h	2010-07-31 00:00:50.000000000 +0200
+@@ -38,12 +38,12 @@
+ #include "timesys.h"
+ 
+ void getInitialState(  
+-            Real *Addr_e0,
+-            Real e0max,
++            /* not const */ Real *const Addr_e0,
++            const Real e0max,
+ 
+-	    State *sInit,
+-	    State *sMin,
+-	    State *sLast,
++	    /* not const */ State *const sInit,
++	    /* not const */ State *const sMin,
++	    /* not const */ State *const sLast,
+ 
+             const Boole B_RandomTran0,
+             const Boole B_RandomQuat0,
+@@ -52,13 +52,13 @@
+             const Real charge[MAX_ATOMS],
+             const Real abs_charge[MAX_ATOMS],
+             const Real qsp_abs_charge[MAX_ATOMS],
+-            const Real crd[MAX_ATOMS][SPACE],
++            /* not const */ Real crd[MAX_ATOMS][SPACE],
+             const Real crdpdb[MAX_ATOMS][SPACE],
+             const char  atomstuff[MAX_ATOMS][MAX_CHARS],
+-            Real elec[MAX_ATOMS],
+-            Real emap[MAX_ATOMS],
++            /* not const */ Real elec[MAX_ATOMS],
++            /* not const */ Real emap[MAX_ATOMS],
+ 
+-            EnergyTables *const ptr_ad_energy_tables,
++            const EnergyTables *const ptr_ad_energy_tables,
+ 
+             const Boole B_calcIntElec,
+                 #include "map_declare.h"
+@@ -71,9 +71,9 @@
+             const Real vt[MAX_TORS][SPACE],
+             const int   irun1,
+             const int   outlev,
+-	       const  int   MaxRetries,
++	    const int   MaxRetries,
+ 
+-	        const Real torsFreeEnergy,
++	    const Real torsFreeEnergy,
+ 
+             const int   ligand_is_inhibitor,
+ 
+Index: autodocksuite-4.2.3/autodock/hybrids.h
+===================================================================
+--- autodocksuite-4.2.3.orig/autodock/hybrids.h	2010-07-31 00:13:27.000000000 +0200
++++ autodocksuite-4.2.3/autodock/hybrids.h	2010-07-31 00:14:39.000000000 +0200
+@@ -115,6 +115,6 @@
+ #ifndef MMM
+ #define MMM
+ 
+-void minmeanmax( FILE *const fp, Population &pop, const int num_its, const GridMapSetInfo *const info );
++void minmeanmax( FILE *const fp, const Population &pop, const int num_its, const GridMapSetInfo *const info );
+ 
+ #endif
+Index: autodocksuite-4.2.3/autodock/mkNewState.cc
+===================================================================
+--- autodocksuite-4.2.3.orig/autodock/mkNewState.cc	2010-07-30 23:36:09.000000000 +0200
++++ autodocksuite-4.2.3/autodock/mkNewState.cc	2010-07-31 01:09:19.000000000 +0200
+@@ -33,21 +33,21 @@
+ #include "mkNewState.h"
+ 
+ 
+-void mkNewState( State *now,
+-                 State *last,        /* ...must be a normalized quaternion! */
+-                 State *change,
++void mkNewState( /* not const */ State *const now,
++                 const State *const last,        /* ...must be a normalized quaternion! */
++                 /* not const */ State *const change,
+ 
+-                Real vt[MAX_TORS][NTRN],
+-                int   tlist[MAX_TORS][MAX_ATOMS],
+-                int   ntor,
+-                Real crd[MAX_ATOMS][NTRN],
+-                Real crdpdb[MAX_ATOMS][NTRN],
+-                int   natom,
+-                Real trnStep,
+-                Real qtwStep,
+-                Real torStep,
+-                Real F_TorConRange[MAX_TORS][MAX_TOR_CON][2],
+-                int N_con[MAX_TORS])
++                const Real vt[MAX_TORS][NTRN],
++                const int   tlist[MAX_TORS][MAX_ATOMS],
++                const int   ntor,
++                /* not const */ Real crd[MAX_ATOMS][NTRN],
++                const Real crdpdb[MAX_ATOMS][NTRN],
++                const int   natom,
++                const Real trnStep,
++                const Real qtwStep,
++                const Real torStep,
++                const Real F_TorConRange[MAX_TORS][MAX_TOR_CON][2],
++                const int N_con[MAX_TORS])
+     // Create a new state, based on the current state
+ {
+     register int i;
+Index: autodocksuite-4.2.3/autodock/mkNewState.h
+===================================================================
+--- autodocksuite-4.2.3.orig/autodock/mkNewState.h	2010-07-30 23:36:09.000000000 +0200
++++ autodocksuite-4.2.3/autodock/mkNewState.h	2010-07-30 23:43:41.000000000 +0200
+@@ -31,9 +31,9 @@
+ #include "qmultiply.h"
+ #include "cnv_state_to_coords.h"
+ 
+-void  mkNewState( State *now,
+-		  State *last,
+-		  State *change,
++void  mkNewState( State *const now,
++		  const State *const last,
++		  State *const change,
+ 		  /*
+ 		  ** Real qtn[NQTN],
+                   ** Real tor[MAX_TORS],
+@@ -42,15 +42,15 @@
+                   ** Real qtnChange[NQTN],
+                   ** Real torChange[MAX_TORS],
+ 		  */
+-                  Real vt[MAX_TORS][NTRN],
+-                  int   tlist[MAX_TORS][MAX_ATOMS],
+-                  int   ntor,
+-                  Real crd[MAX_ATOMS][NTRN],
+-                  Real crdpdb[MAX_ATOMS][NTRN],
+-                  int   natom,
+-                  Real trnStep,
+-                  Real qtwStep,
+-                  Real torStep,
+-	          Real F_TorConRange[MAX_TORS][MAX_TOR_CON][2],
+-		  int   N_con[MAX_TORS]);
++                  const Real vt[MAX_TORS][NTRN],
++                  const int   tlist[MAX_TORS][MAX_ATOMS],
++                  const int   ntor,
++                  /* not const */ Real crd[MAX_ATOMS][NTRN],
++                  const Real crdpdb[MAX_ATOMS][NTRN],
++                  const int   natom,
++                  const Real trnStep,
++                  const Real qtwStep,
++                  const Real torStep,
++	          const Real F_TorConRange[MAX_TORS][MAX_TOR_CON][2],
++		  const int   N_con[MAX_TORS]);
+ #endif
+Index: autodocksuite-4.2.3/autodock/output_state.cc
+===================================================================
+--- autodocksuite-4.2.3.orig/autodock/output_state.cc	2010-07-30 23:46:21.000000000 +0200
++++ autodocksuite-4.2.3/autodock/output_state.cc	2010-07-31 01:09:19.000000000 +0200
+@@ -52,7 +52,7 @@
+                    const char lastmove,
+                    const Boole B_watch,
+                    const char *const FN_watch,
+-                   char atomstuff[MAX_ATOMS][MAX_CHARS],
++                   const char atomstuff[MAX_ATOMS][MAX_CHARS],
+                    const int natom,
+                    const Real crd[MAX_ATOMS][SPACE])
+ /*----------------------------------------------------------------------------*/
+Index: autodocksuite-4.2.3/autodock/output_state.h
+===================================================================
+--- autodocksuite-4.2.3.orig/autodock/output_state.h	2010-07-30 23:46:21.000000000 +0200
++++ autodocksuite-4.2.3/autodock/output_state.h	2010-07-30 23:47:59.000000000 +0200
+@@ -28,16 +28,16 @@
+ #ifndef OUTPUT_STATE
+ #define OUTPUT_STATE
+ #include "constants.h"
+-void  output_state( FILE  *fp,
+-		    State S,
+-                    int   ntor,
+-                    int   istep,
+-                    Real energy,
+-                    Real eint,
+-                    char  lastmove,
+-                    Boole B_watch,
+-                    char  *FN_watch,
+-                    char  atomstuff[MAX_ATOMS][MAX_CHARS],
+-                    int   natom,
+-                    Real crd[MAX_ATOMS][SPACE]);
++void  output_state( FILE  *const fp,
++		    const State S,
++                    const int   ntor,
++                    const int   istep,
++                    const Real energy,
++                    const Real eint,
++                    const char  lastmove,
++                    const Boole B_watch,
++                    const char  *const FN_watch,
++                    const char  atomstuff[MAX_ATOMS][MAX_CHARS],
++                    const int   natom,
++                    const Real crd[MAX_ATOMS][SPACE]);
+ #endif
+Index: autodocksuite-4.2.3/autodock/qtransform.cc
+===================================================================
+--- autodocksuite-4.2.3.orig/autodock/qtransform.cc	2010-07-31 00:32:37.000000000 +0200
++++ autodocksuite-4.2.3/autodock/qtransform.cc	2010-07-31 01:09:19.000000000 +0200
+@@ -36,7 +36,7 @@
+ 
+ void qtransform( const Coord T,
+                  const Quat  q,
+-                 Real tcoord[MAX_ATOMS][SPACE],
++                 /* not const */ Real tcoord[MAX_ATOMS][SPACE],
+                  const int   natom)
+ 
+ /******************************************************************************/
+@@ -129,16 +129,16 @@
+ void reorient( FILE *const logFile, 
+                const int true_ligand_atoms, 
+                const char atomstuff[MAX_ATOMS][MAX_CHARS],
+-               Real crdpdb[MAX_ATOMS][SPACE],  // original PDB coordinates from input
+-               Real charge[MAX_ATOMS],
++               /* not const */ Real crdpdb[MAX_ATOMS][SPACE],  // original PDB coordinates from input
++               const Real charge[MAX_ATOMS],
+                const int type[MAX_ATOMS],
+-               ParameterEntry  parameterArray[MAX_ATOM_TYPES],
+-               Quat q_reorient,
+-               Coord origin,
++               const ParameterEntry  parameterArray[MAX_ATOM_TYPES],
++               const Quat q_reorient,
++               const Coord origin,
+                const int ntor,
+-               int tlist[MAX_TORS][MAX_ATOMS],
+-               Real vt[MAX_TORS][SPACE],
+-               Molecule *ptr_ligand,
++               const int tlist[MAX_TORS][MAX_ATOMS],
++               /* not const */ Real vt[MAX_TORS][SPACE],
++               /* not const */ Molecule *ptr_ligand,
+                const int debug )
+  {
+     // Print out the un-reoriented coordinates
+Index: autodocksuite-4.2.3/autodock/qtransform.h
+===================================================================
+--- autodocksuite-4.2.3.orig/autodock/qtransform.h	2010-07-31 00:32:37.000000000 +0200
++++ autodocksuite-4.2.3/autodock/qtransform.h	2010-07-31 01:04:16.000000000 +0200
+@@ -37,21 +37,21 @@
+ 
+ void qtransform( const Coord T,
+ 	 	 const Quat  q,
+-                 Real tcoord[MAX_ATOMS][SPACE],
++                 /* not const */ Real tcoord[MAX_ATOMS][SPACE],
+ 		 const int   natom);
+ 
+-void reorient( FILE *logFile, 
++void reorient( FILE *const logFile, 
+                const int true_ligand_atoms, 
+-               char atomstuff[MAX_ATOMS][MAX_CHARS],
+-               Real crdpdb[MAX_ATOMS][SPACE],  // original PDB coordinates from input
+-               Real charge[MAX_ATOMS],
+-               int type[MAX_ATOMS],
+-               ParameterEntry parameterArray[MAX_ATOM_TYPES], // input  nonbond and desolvation parameters
+-               Quat q_reorient,
+-               Coord origin,
++               const char atomstuff[MAX_ATOMS][MAX_CHARS],
++               /* not const */ Real crdpdb[MAX_ATOMS][SPACE],  // original PDB coordinates from input
++               const Real charge[MAX_ATOMS],
++               const int type[MAX_ATOMS],
++               const ParameterEntry parameterArray[MAX_ATOM_TYPES], // input  nonbond and desolvation parameters
++               const Quat q_reorient,
++               const Coord origin,
+                const int ntor,
+-               int tlist[MAX_TORS][MAX_ATOMS],
+-               Real vt[MAX_TORS][SPACE],
+-               Molecule *ptr_ligand,
++               const int tlist[MAX_TORS][MAX_ATOMS],
++               /* not const */ Real vt[MAX_TORS][SPACE],
++               /* not const */ Molecule *ptr_ligand,
+                const int debug );
+ #endif
+Index: autodocksuite-4.2.3/autodock/readPDBQT.cc
+===================================================================
+--- autodocksuite-4.2.3.orig/autodock/readPDBQT.cc	2010-07-31 00:48:29.000000000 +0200
++++ autodocksuite-4.2.3/autodock/readPDBQT.cc	2010-07-31 01:09:19.000000000 +0200
+@@ -93,12 +93,12 @@
+                     int *const P_ntorsdof,
+                     const int outlev,
+                     int ignore_inter[MAX_ATOMS],
+-                    int B_include_1_4_interactions,
++                    const int B_include_1_4_interactions,
+ 
+                     Atom atoms[MAX_ATOMS],
+-                    char PDBQT_record[MAX_RECORDS][LINE_LEN],
++                    /* not const */ char PDBQT_record[MAX_RECORDS][LINE_LEN],
+ 
+-                    int end_of_branch[MAX_TORS]
++                    /* not const */ /* not const */ int end_of_branch[MAX_TORS]
+                     )
+ 
+ {
+Index: autodocksuite-4.2.3/autodock/readPDBQT.h
+===================================================================
+--- autodocksuite-4.2.3.orig/autodock/readPDBQT.h	2010-07-31 00:48:29.000000000 +0200
++++ autodocksuite-4.2.3/autodock/readPDBQT.h	2010-07-31 00:56:55.000000000 +0200
+@@ -42,60 +42,60 @@
+ #include "stack.h"
+ 
+ void  readPDBQTLine( char line[LINE_LEN],
+-                     int  *ptr_serial,
++                     int  *const ptr_serial,
+                      Real crd[SPACE], 
+-                     Real *P_q,
++                     Real *const P_q,
+                      ParameterEntry *thisparm);
+ 
+ Molecule readPDBQT( char  line[LINE_LEN],
+ 
+               int   num_atm_maps,
+ 
+-              int   *P_natom,
++              int   *const P_natom,
+               Real crdpdb[MAX_ATOMS][NTRN],
+               Real crdreo[MAX_ATOMS][NTRN],
+               Real charge[MAX_ATOMS],
+-              Boole *P_B_haveCharges,
++              Boole *const P_B_haveCharges,
+               int   type[MAX_ATOMS],
+               int   bondtype[MAX_ATOMS],
+               char  pdbaname[MAX_ATOMS][5],
+ 
+-              char  *pdbqFileName,
+-              char  *FN_flexres,
++              char  *const pdbqFileName,
++              char  *const FN_flexres,
+               Boole B_have_flexible_residues,
+ 
+               char  atomstuff[MAX_ATOMS][MAX_CHARS],
+-              int   *P_n_heavy_atoms_in_ligand,
++              int   *const P_n_heavy_atoms_in_ligand,
+ 
+-              Boole *P_B_constrain,
+-              int   *P_atomC1,
+-              int   *P_atomC2,
+-              Real *P_sqlower,
+-              Real *P_squpper,
+-
+-              int   *P_ntor1,
+-              int   *P_ntor,
+-              int *P_ntor_ligand,
++              Boole *const P_B_constrain,
++              int   *const P_atomC1,
++              int   *const P_atomC2,
++              Real  *const P_sqlower,
++              Real  *const P_squpper,
++
++              int   *const P_ntor1,
++              int   *const P_ntor,
++              int   *const P_ntor_ligand,
+               int   tortree[MAX_TORS][MAX_ATOMS],
+               Real vt[MAX_TORS][NTRN],
+ 
+-              int   *P_Nnb,
+-              NonbondParam *nonbondlist,
++              int   *const P_Nnb,
++              NonbondParam *const nonbondlist,
+ 
+-              Clock jobStart,
+-              struct tms tms_jobStart,
+-              char  hostnm[MAX_CHARS],
++              const Clock jobStart,
++              const struct tms tms_jobStart,
++              const char  hostnm[MAX_CHARS],
+ 
+-              int   *P_ntorsdof,
+-              int   outlev,
++              int   *const P_ntorsdof,
++              const int   outlev,
+ 
+               int   ignore_inter[MAX_ATOMS],
+               
+-              int   B_include_1_4_interactions,
++              const int   B_include_1_4_interactions,
+               
+               Atom  atoms[MAX_ATOMS],
+-              char  PDBQT_record[MAX_RECORDS][LINE_LEN],
++              /* not const */ char  PDBQT_record[MAX_RECORDS][LINE_LEN],
+ 
+-              int end_of_branch[MAX_TORS]
++              /* not const */ int end_of_branch[MAX_TORS]
+               );
+ #endif
+Index: autodocksuite-4.2.3/autodock/read_parameter_library.h
+===================================================================
+--- autodocksuite-4.2.3.orig/autodock/read_parameter_library.h	2010-07-31 00:06:48.000000000 +0200
++++ autodocksuite-4.2.3/autodock/read_parameter_library.h	2010-07-31 00:07:05.000000000 +0200
+@@ -43,7 +43,7 @@
+ char * report_parameter_library();
+ 
+ void setup_distdepdiel( const int outlev, 
+-                        const EnergyTables *const ptr_ad_energy_tables  // Holds vdw+Hb, desolvation & dielectric lookup tables
++                        EnergyTables *const ptr_ad_energy_tables  // Holds vdw+Hb, desolvation & dielectric lookup tables
+                       );
+ 
+ 
+Index: autodocksuite-4.2.3/autodock/simanneal.cc
+===================================================================
+--- autodocksuite-4.2.3.orig/autodock/simanneal.cc	2010-07-30 22:49:07.000000000 +0200
++++ autodocksuite-4.2.3/autodock/simanneal.cc	2010-07-31 01:09:19.000000000 +0200
+@@ -44,92 +44,92 @@
+ extern char *programname;
+ 
+ 
+-void simanneal ( int   *Addr_nconf,
+-                int   Nnb,
+-                Real WallEnergy,
++void simanneal ( int   *const Addr_nconf,
++                const int   Nnb,
++                const Real WallEnergy,
+                 char  atomstuff[MAX_ATOMS][MAX_CHARS],
+                 Real charge[MAX_ATOMS],
+                 Real abs_charge[MAX_ATOMS],
+                 Real qsp_abs_charge[MAX_ATOMS],
+-                Boole B_calcIntElec,
++                const Boole B_calcIntElec,
+                 Real crd[MAX_ATOMS][SPACE],
+                 Real crdpdb[MAX_ATOMS][SPACE],
+-                char  *FN_dpf,
++                const char  *const FN_dpf,
+         
+-                EnergyTables *ptr_ad_energy_tables,
++                EnergyTables *const ptr_ad_energy_tables,
+ 
+-                Real econf[MAX_RUNS],
+-                Boole B_either,
++                /* not const */ Real econf[MAX_RUNS],
++                const Boole B_either,
+                 Real elec[MAX_ATOMS],
+                 Real emap[MAX_ATOMS],
+-                int   NcycMax,
+-                int   irunmax,
+-                Clock jobStart,
++                const int   NcycMax,
++                const int   irunmax,
++                const Clock jobStart,
+                 #include "map_declare.h"
+-                int   naccmax,
+-                int   natom,
+-                NonbondParam *nonbondlist,
+-                int   nrejmax,
+-                int   ntor1,
+-                int   ntor,
+-                int   outlev,
++                const int   naccmax,
++                const int   natom,
++                NonbondParam *const nonbondlist,
++                const int   nrejmax,
++                const int   ntor1,
++                const int   ntor,
++                const int   outlev,
+ 
+                 State sInit, /* tor0, qtn0 */
+-                State sHist[MAX_RUNS], /* was qtnHist, torHist */
++                /* not const */ State sHist[MAX_RUNS], /* was qtnHist, torHist */
+ 
+-                Real qtwFac,
+-                Boole B_qtwReduc,
+-                Real qtwStep0,
+-                Boole B_selectmin,
+-                char  *FN_ligand,
+-                Real lig_center[SPACE],
+-                Real RT0,
+-                Boole B_RTChange,
+-                Real RTFac,
++                const Real qtwFac,
++                const Boole B_qtwReduc,
++                const Real qtwStep0,
++                const Boole B_selectmin,
++                const char  *const FN_ligand,
++                const Real lig_center[SPACE],
++                const Real RT0,
++                const Boole B_RTChange,
++                const Real RTFac,
+                 struct tms tms_jobStart,
+                 int   tlist[MAX_TORS][MAX_ATOMS],
+-                Real torFac,
+-                Boole B_torReduc,
+-                Real torStep0,
+-                char  *FN_trj,
+-                int   trj_cyc_max,
+-                int   trj_cyc_min,
+-                int   trj_freq,
+-                Real trnFac,
+-                Boole B_trnReduc,
+-                Real trnStep0,
+-                int   type[MAX_ATOMS],
++                const Real torFac,
++                const Boole B_torReduc,
++                const Real torStep0,
++                const char  *const FN_trj,
++                const int   trj_cyc_max,
++                const int   trj_cyc_min,
++                const int   trj_freq,
++                const Real trnFac,
++                const Boole B_trnReduc,
++                const Real trnStep0,
++                const int   type[MAX_ATOMS],
+                 Real vt[MAX_TORS][SPACE],
+-                Boole B_writeTrj,
+-                Boole B_constrain,
+-                int   atomC1,
+-                int   atomC2,
+-                Real sqlower,
+-                Real squpper,
+-                Boole B_linear_schedule,
+-                Real RTreduc,
++                const Boole B_writeTrj,
++                const Boole B_constrain,
++                const int   atomC1,
++                const int   atomC2,
++                const Real sqlower,
++                const Real squpper,
++                const Boole B_linear_schedule,
++                const Real RTreduc,
+                 /*Real maxrad,*/
+-                Boole B_watch,
+-                char  *FN_watch,
+-                Boole B_isGaussTorCon,
+-                unsigned short US_torProfile[MAX_TORS][NTORDIVS],
+-                Boole B_isTorConstrained[MAX_TORS],
+-                Boole B_ShowTorE,
+-                unsigned short US_TorE[MAX_TORS],
+-                Real F_TorConRange[MAX_TORS][MAX_TOR_CON][2],
+-                int N_con[MAX_TORS],
+-                Boole B_RandomTran0,
+-                Boole B_RandomQuat0,
+-                Boole B_RandomDihe0,
+-                Real e0max,
++                const Boole B_watch,
++                const char  *const FN_watch,
++                const Boole B_isGaussTorCon,
++                /* not const */ unsigned short US_torProfile[MAX_TORS][NTORDIVS],
++                const Boole B_isTorConstrained[MAX_TORS],
++                const Boole B_ShowTorE,
++                /* not const */ unsigned short US_TorE[MAX_TORS],
++                const Real F_TorConRange[MAX_TORS][MAX_TOR_CON][2],
++                const int N_con[MAX_TORS],
++                const Boole B_RandomTran0,
++                const Boole B_RandomQuat0,
++                const Boole B_RandomDihe0,
++                const Real e0max,
+         
+-                Real torsFreeEnergy,
++                const Real torsFreeEnergy,
+                 
+-        int   MaxRetries,
++        const int   MaxRetries,
+                 
+-        int   ligand_is_inhibitor,
++        const int   ligand_is_inhibitor,
+                 
+-        int   ignore_inter[MAX_ATOMS],
++        const int   ignore_inter[MAX_ATOMS],
+         
+         const Boole         B_include_1_4_interactions,
+         const Real scale_1_4,
+@@ -138,11 +138,11 @@
+ 
+         const Real unbound_internal_FE,
+ 
+-        GridMapSetInfo *info,
+-        Boole B_use_non_bond_cutoff,
+-        Boole B_have_flexible_residues, 
+-        char PDBQT_record[MAX_RECORDS][LINE_LEN],
+-        Unbound_Model ad4_unbound_model
++        GridMapSetInfo *const info,
++        const Boole B_use_non_bond_cutoff,
++        const Boole B_have_flexible_residues, 
++        const char PDBQT_record[MAX_RECORDS][LINE_LEN],
++        const Unbound_Model ad4_unbound_model
+         )
+ 
+ {
+Index: autodocksuite-4.2.3/autodock/simanneal.h
+===================================================================
+--- autodocksuite-4.2.3.orig/autodock/simanneal.h	2010-07-30 23:11:10.000000000 +0200
++++ autodocksuite-4.2.3/autodock/simanneal.h	2010-07-30 23:51:09.000000000 +0200
+@@ -38,98 +38,98 @@
+ #include "eintcal.h"
+ #include "writePDBQT.h"
+ 
+-void simanneal( int   *P_nconf, 
+-                int   Nnb, 
+-                Real WallEnergy, 
++void simanneal( int   *const P_nconf, 
++                const int   Nnb, 
++                const Real WallEnergy, 
+                 char  atomstuff[MAX_ATOMS][MAX_CHARS], 
+                 Real charge[MAX_ATOMS], 
+                 Real abs_charge[MAX_ATOMS], 
+                 Real qsp_abs_charge[MAX_ATOMS], 
+-                Boole B_calcIntElec,
++                const Boole B_calcIntElec,
+                 Real crd[MAX_ATOMS][SPACE], 
+                 Real crdpdb[MAX_ATOMS][SPACE], 
+-                char  *dpfFN,
++                const char  *const dpfFN,
+                 
+-                    EnergyTables *ptr_ad_energy_tables,
++                    EnergyTables *const ptr_ad_energy_tables,
+ 
+-                Real econf[MAX_RUNS], 
+-                Boole B_either, 
++                /* not const */ Real econf[MAX_RUNS], 
++                const Boole B_either, 
+                 Real elec[MAX_ATOMS], 
+                 Real emap[MAX_ATOMS], 
+-                int   icyclemax, 
+-                int   irunmax, 
+-                Clock jobStart, 
++                const int   icyclemax, 
++                const int   irunmax, 
++                const Clock jobStart, 
+                 #include "map_declare.h"
+-                int   naccmax, 
+-                int   natom, 
+-                NonbondParam *nonbondlist, 
+-                int   nrejmax, 
+-                int   ntor1, 
+-                int   ntor, 
+-                int   outlev, 
++                const int   naccmax, 
++                const int   natom, 
++                NonbondParam *const nonbondlist, 
++                const int   nrejmax, 
++                const int   ntor1, 
++                const int   ntor, 
++                const int   outlev, 
+ 
+                 State sInit,                  /* Real qtn0[QUAT], 
+                                            Real tor0[MAX_TORS], */
+-                State sHist[MAX_RUNS],        /* Real qtnHist[MAX_RUNS][QUAT], 
++                /* not const */ State sHist[MAX_RUNS],        /* Real qtnHist[MAX_RUNS][QUAT], 
+                                             Real torHist[MAX_RUNS][MAX_TORS], */
+-                Real qtwFac, 
+-                Boole B_qtwReduc, 
+-                Real qtwStep0, 
+-                Boole B_selectmin, 
+-                char  *smFileName,
+-                Real sml_center[SPACE], 
+-                Real RT0, 
+-                Boole B_RTChange, 
+-                Real RTFac, 
++                const Real qtwFac, 
++                const Boole B_qtwReduc, 
++                const Real qtwStep0, 
++                const Boole B_selectmin, 
++                const char  *const smFileName,
++                const Real sml_center[SPACE], // named lig_center in .cc file
++                const Real RT0, 
++                const Boole B_RTChange, 
++                const Real RTFac, 
+                 struct tms tms_jobStart, 
+                 int   tlist[MAX_TORS][MAX_ATOMS], 
+-                Real torFac, 
+-                Boole B_torReduc, 
+-                Real torStep0, 
+-                char  *trjFileName,
+-                int   trj_cyc_max, 
+-                int   trj_cyc_min, 
+-                int   trj_freq, 
+-                Real trnFac, 
+-                Boole B_trnReduc, 
+-                Real trnStep0, 
+-                int   type[MAX_ATOMS], 
++                const Real torFac, 
++                const Boole B_torReduc, 
++                const Real torStep0, 
++                const char  *const trjFileName,
++                const int   trj_cyc_max, 
++                const int   trj_cyc_min, 
++                const int   trj_freq, 
++                const Real trnFac, 
++                const Boole B_trnReduc, 
++                const Real trnStep0, 
++                const int   type[MAX_ATOMS], 
+                 Real vt[MAX_TORS][SPACE], 
+-                Boole B_write_trj, 
+-                Boole B_constrain, 
+-                int   atomC1, 
+-                int   atomC2, 
+-                Real sqlower, 
+-                Real squpper,
+-                Boole B_linear_schedule,
+-                Real RTreduc,
++                const Boole B_write_trj, 
++                const Boole B_constrain, 
++                const int   atomC1, 
++                const int   atomC2, 
++                const Real sqlower, 
++                const Real squpper,
++                const Boole B_linear_schedule,
++                const Real RTreduc,
+                 /*Real maxrad,*/
+-                Boole B_watch,
+-                char  *FN_watch,
+-                Boole B_isGaussTorCon,
+-                unsigned short US_torProfile[MAX_TORS][NTORDIVS],
+-                Boole B_isTorConstrained[MAX_TORS],
+-                Boole B_ShowTorE,
+-                unsigned short US_TorE[MAX_TORS],
+-                Real F_TorConRange[MAX_TORS][MAX_TOR_CON][2],
+-                int   N_con[MAX_TORS],
+-                Boole B_RandomTran0,
+-                Boole B_RandomQuat0,
+-                Boole B_RandomDihe0,
+-                Real e0max,
+-                Real torsFreeEnergy,
+-                int   MaxRetries,
+-                int   ligand_is_inhibitor,
+-                int   ignore_inter[MAX_ATOMS],
++                const Boole B_watch,
++                const char  *const FN_watch,
++                const Boole B_isGaussTorCon,
++                /* not const */ unsigned short US_torProfile[MAX_TORS][NTORDIVS],
++                const Boole B_isTorConstrained[MAX_TORS],
++                const Boole B_ShowTorE,
++                /* not const */ unsigned short US_TorE[MAX_TORS],
++                const Real F_TorConRange[MAX_TORS][MAX_TOR_CON][2],
++                const int   N_con[MAX_TORS],
++                const Boole B_RandomTran0,
++                const Boole B_RandomQuat0,
++                const Boole B_RandomDihe0,
++                const Real e0max,
++                const Real torsFreeEnergy,
++                const int   MaxRetries,
++                const int   ligand_is_inhibitor,
++                const int   ignore_inter[MAX_ATOMS],
+                 const Boole         B_include_1_4_interactions,
+                 const Real scale_1_4,
+                 const ParameterEntry parameterArray[MAX_ATOM_TYPES], // input  nonbond and desolvation parameters
+                 const Real unbound_internal_FE,
+ 
+-                GridMapSetInfo *info,
+-                Boole B_use_non_bond_cutoff,
+-                Boole B_have_flexible_residues,
+-                char  PDBQT_record[MAX_RECORDS][LINE_LEN],
+-                Unbound_Model ad4_unbound_model);
++                GridMapSetInfo *const info,
++                const Boole B_use_non_bond_cutoff,
++                const Boole B_have_flexible_residues,
++                const char  PDBQT_record[MAX_RECORDS][LINE_LEN],
++                const Unbound_Model ad4_unbound_model);
+ 
+ #endif
+Index: autodocksuite-4.2.3/autodock/torNorVec.cc
+===================================================================
+--- autodocksuite-4.2.3.orig/autodock/torNorVec.cc	2010-07-31 00:36:59.000000000 +0200
++++ autodocksuite-4.2.3/autodock/torNorVec.cc	2010-07-31 01:09:19.000000000 +0200
+@@ -39,10 +39,10 @@
+ extern FILE *logFile;
+ 
+ 
+-void torNorVec( Real crdpdb[MAX_ATOMS][SPACE],
+-		int ntor,
+-		int tlist[MAX_TORS][MAX_ATOMS],
+-		Real vt[MAX_TORS][SPACE] )
++void torNorVec( const Real crdpdb[MAX_ATOMS][SPACE],
++		const int ntor,
++		const int tlist[MAX_TORS][MAX_ATOMS],
++		/* not const */ Real vt[MAX_TORS][SPACE] )
+ {
+ 
+     register int xyz = 0;
+@@ -95,12 +95,12 @@
+     return;
+ }
+ 
+-void update_torsion_vectors( Real crdpdb[MAX_ATOMS][SPACE],
+-                             int ntor,
+-                             int  tlist[MAX_TORS][MAX_ATOMS],
+-                             Real vt[MAX_TORS][SPACE],
+-                             Molecule *ligand,
+-                             int debug )
++void update_torsion_vectors( const Real crdpdb[MAX_ATOMS][SPACE],
++                             const int ntor,
++                             const int  tlist[MAX_TORS][MAX_ATOMS],
++                             /* not const */ Real vt[MAX_TORS][SPACE],
++                             /* not const */ Molecule *ligand,
++                             const int debug )
+ { // Update the unit vectors for the torsion rotations
+     register int i=0, j=0;
+     if (debug > 0) {
+Index: autodocksuite-4.2.3/autodock/torNorVec.h
+===================================================================
+--- autodocksuite-4.2.3.orig/autodock/torNorVec.h	2010-07-31 00:42:56.000000000 +0200
++++ autodocksuite-4.2.3/autodock/torNorVec.h	2010-07-31 00:43:30.000000000 +0200
+@@ -31,16 +31,16 @@
+ #include "stop.h"
+ #include "structs.h"
+ 
+-void  torNorVec( Real crdpdb[MAX_ATOMS][SPACE],
+-                 int   ntor,
+-                 int   tlist[MAX_TORS][MAX_ATOMS],
+-                 Real vt[MAX_TORS][SPACE] );
++void  torNorVec( const Real crdpdb[MAX_ATOMS][SPACE],
++                 const int   ntor,
++                 const int   tlist[MAX_TORS][MAX_ATOMS],
++                 /* not const */ Real vt[MAX_TORS][SPACE] );
+ 
+-void update_torsion_vectors( Real crdpdb[MAX_ATOMS][SPACE],
+-                             int ntor,
+-                             int  tlist[MAX_TORS][MAX_ATOMS],
+-                             Real vt[MAX_TORS][SPACE],
+-                             Molecule *ligand,
+-                             int debug );
++void update_torsion_vectors( const Real crdpdb[MAX_ATOMS][SPACE],
++                             const int ntor,
++                             const int  tlist[MAX_TORS][MAX_ATOMS],
++                             /* not const */ Real vt[MAX_TORS][SPACE],
++                             /* not const */ Molecule *ligand,
++                             const int debug );
+ 
+ #endif
+Index: autodocksuite-4.2.3/autodock/usage.h
+===================================================================
+--- autodocksuite-4.2.3.orig/autodock/usage.h	2010-07-31 00:26:13.000000000 +0200
++++ autodocksuite-4.2.3/autodock/usage.h	2010-07-31 00:26:42.000000000 +0200
+@@ -26,5 +26,5 @@
+ 
+ #ifndef USAGE
+ #define USAGE
+-void  usage(FILE * file, char * programname );
++void  usage(FILE *const file, const char *const  programname );
+ #endif
+Index: autodocksuite-4.2.3/autodock/writePDBQT.cc
+===================================================================
+--- autodocksuite-4.2.3.orig/autodock/writePDBQT.cc	2010-07-30 23:52:15.000000000 +0200
++++ autodocksuite-4.2.3/autodock/writePDBQT.cc	2010-07-31 01:09:19.000000000 +0200
+@@ -67,8 +67,8 @@
+ 		 const Real vt[MAX_TORS][SPACE],
+ 		 const int tlist[MAX_TORS][MAX_ATOMS],
+ 		 const Real crdpdb[MAX_ATOMS][SPACE],
+-		 const NonbondParam *nonbondlist,
+-         const EnergyTables *ptr_ad_energy_tables,
++		 const NonbondParam *const nonbondlist,
++         const EnergyTables *const ptr_ad_energy_tables,
+ 		 const int type[MAX_ATOMS],  // aka 'map_index' in 'ParameterEntry' structures
+ 		 const int Nnb,
+ 		 const Boole B_calcIntElec,
+@@ -80,7 +80,7 @@
+          const ParameterEntry parameterArray[MAX_ATOM_TYPES],
+ 		 const Real unbound_internal_FE,
+ 
+-         const GridMapSetInfo *info,
++         const GridMapSetInfo *const info,
+          const int state_type,  // 0 means the state is unbound, 1 means the state is docked
+          const char PDBQT_record[MAX_RECORDS][LINE_LEN],
+          const Boole B_use_non_bond_cutoff,
+Index: autodocksuite-4.2.3/autodock/writePDBQT.h
+===================================================================
+--- autodocksuite-4.2.3.orig/autodock/writePDBQT.h	2010-07-30 23:52:15.000000000 +0200
++++ autodocksuite-4.2.3/autodock/writePDBQT.h	2010-07-30 23:53:30.000000000 +0200
+@@ -34,14 +34,14 @@
+ #include "cnv_state_to_coords.h"
+ #include "stateLibrary.h"
+ 
+-void writePDBQT(const int irun,FourByteLong seed[2],
++void writePDBQT(const int irun, const FourByteLong seed[2],
+                     const char  *const smFileName,
+                     const char  *dpfFN,
+                     const Real sml_center[SPACE],
+                     /* not const */ State state,
+                     const int   ntor,
+-                    Real (*const Ptr_eintra),
+-                    Real (*const Ptr_einter),
++                    /* not const */ Real (*const Ptr_eintra),
++                    /* not const */ Real (*const Ptr_einter),
+                     const int   natom,
+                     const char  atomstuff[MAX_ATOMS][MAX_CHARS],
+                     /* not const */ Real crd[MAX_ATOMS][SPACE],

Added: trunk/packages/autodocksuite/trunk/debian/patches/const_manual_25.patch
===================================================================
--- trunk/packages/autodocksuite/trunk/debian/patches/const_manual_25.patch	                        (rev 0)
+++ trunk/packages/autodocksuite/trunk/debian/patches/const_manual_25.patch	2010-08-01 13:58:53 UTC (rev 5085)
@@ -0,0 +1,85 @@
+Index: autodocksuite-4.2.3/autodock/coliny.cc
+===================================================================
+--- autodocksuite-4.2.3.orig/autodock/coliny.cc	2010-07-31 23:29:44.000000000 +0200
++++ autodocksuite-4.2.3/autodock/coliny.cc	2010-07-31 23:45:36.000000000 +0200
+@@ -51,7 +51,7 @@
+ //
+ // The AutoDock 'objective function' used within Coliny
+ //
+-double ADEvalFn(double* x, int n);
++double ADEvalFn(/* not const */ double *const x, const int n);
+ 
+ #ifdef COLIN_3_0
+ 
+@@ -69,7 +69,7 @@
+ //// Initialize the "algname" optimizer over the given domain.  An initial
+ //// point is generate as the midpoint over the domain.
+ ////
+-void coliny_init(char* algname, char* domain, int num_vars)
++void coliny_init(const char *const algname, const char *const domain, const int num_vars)
+ {
+ //
+ // If 'algname' equals "help", then print the list of supported
+@@ -143,9 +143,9 @@
+ ////
+ //// To turn on "full debugging", set the false flag to true.
+ ////
+-void coliny_minimize(int seed, std::vector<double>& initpt,
+-                     std::vector<double>& finalpt,
+-                     int& neval, int& niters)
++void coliny_minimize(const int seed, const std::vector<double>& initpt,
++                     /* not const */ std::vector<double>& finalpt,
++                     /* unused */ const int& neval, /* unused */ const int& niters)
+ {
+    coliny_problem->reset();
+ 
+@@ -259,9 +259,9 @@
+ ////
+ //// To turn on "full debugging", set the false flag to true.
+ ////
+-void coliny_minimize(int seed, std::vector<double>& initpt,
+-                     std::vector<double>& finalpt,
+-                     int& neval, int& niters)
++void coliny_minimize(const int seed, const std::vector<double>& initpt,
++                     /* not const */ std::vector<double>& finalpt,
++                     /* unused */ const int& neval, /* unused */ const int& niters)
+ {
+    coliny_problem.reset_neval();
+ 
+Index: autodocksuite-4.2.3/autodock/coliny.h
+===================================================================
+--- autodocksuite-4.2.3.orig/autodock/coliny.h	2010-07-31 23:29:44.000000000 +0200
++++ autodocksuite-4.2.3/autodock/coliny.h	2010-07-31 23:41:42.000000000 +0200
+@@ -40,15 +40,15 @@
+ //
+ // Initialize the 'algname' coliny optimizer over 'domain'
+ //
+-void coliny_init(char* algname, char* domain, int num_vars);
++void coliny_init(const char *const algname, const char *const domain, const int num_vars);
+ 
+ //
+ // Perform minimization with a given seed and initial point. Return
+ // summary statistics
+ //
+-void coliny_minimize(int seed, std::vector<double>& initpt,
+-				std::vector<double>& finalpt,
+-				int& neval, int& niters);
++void coliny_minimize(const int seed, const std::vector<double>& initpt,
++				/* not const */ std::vector<double>& finalpt,
++				/* unused */ const int& neval, /* unused */ const int& niters);
+ 
+ #endif
+ 
+Index: autodocksuite-4.2.3/autodock/eval.cc
+===================================================================
+--- autodocksuite-4.2.3.orig/autodock/eval.cc	2010-07-31 23:31:36.000000000 +0200
++++ autodocksuite-4.2.3/autodock/eval.cc	2010-07-31 23:33:19.000000000 +0200
+@@ -320,7 +320,7 @@
+ 
+ extern Eval evaluate;
+ 
+-double ADEvalFn(double* x, int n)
++double ADEvalFn(/* not const */ double *const x, const int n)
+ {
+ //
+ // Normalize the data

Added: trunk/packages/autodocksuite/trunk/debian/patches/const_manual_2nd.patch
===================================================================
--- trunk/packages/autodocksuite/trunk/debian/patches/const_manual_2nd.patch	                        (rev 0)
+++ trunk/packages/autodocksuite/trunk/debian/patches/const_manual_2nd.patch	2010-08-01 13:58:53 UTC (rev 5085)
@@ -0,0 +1,57 @@
+Index: autodocksuite-4.2.3/autodock/stateLibrary.cc
+===================================================================
+--- autodocksuite-4.2.3.orig/autodock/stateLibrary.cc	2010-07-21 19:53:48.000000000 +0200
++++ autodocksuite-4.2.3/autodock/stateLibrary.cc	2010-07-22 21:18:56.000000000 +0200
+@@ -103,9 +103,9 @@
+     D->e = S.e;
+ }
+ 
+-void printState( FILE *fp, 
++void printState( FILE *const fp, 
+                  State S, 
+-                 int detail )
++                 const int detail )
+ {
+     register int i;
+     Real torDegTmp;
+@@ -153,7 +153,7 @@
+     }
+ }
+ 
+-void writeState( FILE *fp, State S )
++void writeState( FILE *const fp, State S )
+ {
+     register int i;
+     Real torDegTmp;
+@@ -259,7 +259,7 @@
+     return(retval);
+ }
+ 
+-Molecule copyStateToMolecule(State *S, Molecule *mol) /* S is the source */
++Molecule copyStateToMolecule(const State *const S, Molecule *const mol) /* S is the source */
+ {
+     register int i;
+     mol->S.T.x = S->T.x;
+Index: autodocksuite-4.2.3/autodock/stateLibrary.h
+===================================================================
+--- autodocksuite-4.2.3.orig/autodock/stateLibrary.h	2010-07-22 21:17:00.000000000 +0200
++++ autodocksuite-4.2.3/autodock/stateLibrary.h	2010-07-22 21:19:20.000000000 +0200
+@@ -37,14 +37,14 @@
+ void copyState( State *destination,
+ 		State  source);
+ 
+-void printState( FILE *fp,
++void printState( FILE *const fp,
+ 		 State state, 
+-		 int detail );
++		 const int detail );
+ 
+-void writeState( FILE *fp, 
++void writeState( FILE *const fp, 
+ 		 State state );
+ 
+ int checkState( const State *D );
+ 
+-Molecule copyStateToMolecule(State *source, Molecule *mol);
++Molecule copyStateToMolecule(const State *const source, Molecule *const mol);
+ #endif

Added: trunk/packages/autodocksuite/trunk/debian/patches/const_manual_30.patch
===================================================================
--- trunk/packages/autodocksuite/trunk/debian/patches/const_manual_30.patch	                        (rev 0)
+++ trunk/packages/autodocksuite/trunk/debian/patches/const_manual_30.patch	2010-08-01 13:58:53 UTC (rev 5085)
@@ -0,0 +1,527 @@
+Index: autodocksuite-4.2.3/autodock/print_2x.h
+===================================================================
+--- autodocksuite-4.2.3.orig/autodock/print_2x.h	2010-07-31 23:48:12.000000000 +0200
++++ autodocksuite-4.2.3/autodock/print_2x.h	2010-07-31 23:48:31.000000000 +0200
+@@ -29,7 +29,7 @@
+ 
+ #include "constants.h"
+ 
+-void  print_2x( FILE  *stream1,
+-                FILE  *stream2,
++void  print_2x( FILE  *const stream1,
++                FILE  *const stream2,
+                 const char  *string );
+ #endif
+Index: autodocksuite-4.2.3/autodock/rep.cc
+===================================================================
+--- autodocksuite-4.2.3.orig/autodock/rep.cc	2010-07-31 23:49:07.000000000 +0200
++++ autodocksuite-4.2.3/autodock/rep.cc	2010-08-01 00:47:31.000000000 +0200
+@@ -70,7 +70,7 @@
+ //
+ //  This constructor is used to generate the initial (random) instances
+ //  of an integer vector.
+-IntVector::IntVector(int number_of_els)
++IntVector::IntVector(const int number_of_els)
+ : Representation(number_of_els)
+ {
+    register int i;
+@@ -88,7 +88,7 @@
+ 
+ //______________________________________________________________________________
+ //
+-IntVector::IntVector(int num_els, FourByteLong init_low, FourByteLong init_high)
++IntVector::IntVector(const int num_els, const FourByteLong init_low, const FourByteLong init_high)
+ : Representation(num_els)
+ {
+    register int i;
+@@ -132,7 +132,7 @@
+ 
+ //______________________________________________________________________________
+ //
+-void IntVector::write(unsigned char value, int gene)
++void IntVector::write(const unsigned char value, const int gene)
+ {
+ 
+ #ifdef DEBUG
+@@ -145,7 +145,7 @@
+ 
+ //______________________________________________________________________________
+ //
+-void IntVector::write(FourByteLong value, int gene)
++void IntVector::write(const FourByteLong value, const int gene) /* not const */ 
+ {
+ 
+ #ifdef DEBUG
+@@ -163,7 +163,7 @@
+ 
+ //______________________________________________________________________________
+ //
+-void IntVector::write(double value, int gene)
++void IntVector::write(const double value, const int gene)
+ {
+ 
+ #ifdef DEBUG
+@@ -176,7 +176,7 @@
+ 
+ //______________________________________________________________________________
+ //
+-void IntVector::write(const Element value, int gene)
++void IntVector::write(const Element value, const int gene) /* not const */
+ {
+ 
+ #ifdef DEBUG
+@@ -197,7 +197,7 @@
+ 
+ //______________________________________________________________________________
+ //
+-const Element IntVector::gene(unsigned int gene_number) const
++const Element IntVector::gene(const unsigned int gene_number) const
+ {
+    Element retval;
+ 
+@@ -233,14 +233,13 @@
+ Representation &IntVector::operator=(const Representation &original)
+ {
+    register unsigned int i;
+-   FourByteLong *array;
+ 
+ #ifdef DEBUG
+     (void)fprintf(logFile, "\nrep.cc/Representation &IntVector::operator=(const Representation &original) \n");
+ #endif /* DEBUG */
+ 
+ 
+-   array = (FourByteLong *)original.internals();
++   const FourByteLong *const array = (FourByteLong *)original.internals();
+    if (original.type()==T_IntV) {
+       number_of_pts = original.number_of_points();
+       if (vector!=NULL) {
+@@ -268,7 +267,7 @@
+ //  This constructor is used to initialize the starting population, 
+ //  with random values between REALV_LOW and REALV_HIGH.
+ //
+-RealVector::RealVector(int num_els)
++RealVector::RealVector(/* not const */ int num_els)
+ : Representation(num_els)
+ {
+ #ifdef DEBUG
+@@ -292,7 +291,7 @@
+ //  with elements of the vector set to random values between 
+ //  the user-specified values, init_low and init_high.
+ //
+-RealVector::RealVector(int num_els, double init_low, double init_high)
++RealVector::RealVector(/* not const */ int num_els, const double init_low, const double init_high)
+ : Representation(num_els)
+ {
+ #ifdef DEBUG
+@@ -319,7 +318,7 @@
+ //  but the first value in this vector is set to the value supplied as the last argument.
+ //  This is useful for specifying an initial axis-angle rotation angle.
+ //
+-RealVector::RealVector(int num_els, double init_low, double init_high, double init_first_value)
++RealVector::RealVector(const int num_els, const double init_low, const double init_high, const double init_first_value)
+ : Representation(num_els)
+ {
+ #ifdef DEBUG
+@@ -351,7 +350,7 @@
+ //  nx, ny, and nz.
+ //  This is useful for specifying an initial orientation's axis components
+ //
+-RealVector::RealVector( int num_els, double init_low, double init_high, double nx, double ny, double nz )
++RealVector::RealVector( const int num_els, const double init_low, const double init_high, const double nx, const double ny, const double nz )
+ : Representation(num_els)
+ {
+ #ifdef DEBUG
+@@ -380,7 +379,7 @@
+ //  w, x, y, z
+ //  This is useful for specifying an initial quaternion rotation' unit vector.
+ //
+-RealVector::RealVector( int num_els,  double init_low, double init_high,  double x, double y, double z, double w)
++RealVector::RealVector( const int num_els, const double init_low, const double init_high, const double x, const double y, const double z, const double w)
+ : Representation(num_els)
+ {
+ #ifdef DEBUG
+@@ -434,7 +433,7 @@
+ 
+ //______________________________________________________________________________
+ //
+-void RealVector::write(unsigned char value, int gene)
++void RealVector::write(const unsigned char value, const int gene) 
+ {
+ 
+ #ifdef DEBUG
+@@ -447,7 +446,7 @@
+ 
+ //______________________________________________________________________________
+ //
+-void RealVector::write(FourByteLong value, int gene)
++void RealVector::write(const FourByteLong value, const int gene)
+ {
+ 
+ #ifdef DEBUG
+@@ -460,7 +459,7 @@
+ 
+ //______________________________________________________________________________
+ //
+-void RealVector::write(double value, int gene)
++void RealVector::write(const double value, const int gene) /* not const */
+ {
+ 
+ #ifdef DEBUG
+@@ -485,7 +484,7 @@
+ 
+ //______________________________________________________________________________
+ //
+-void RealVector::write(const Element value, int gene)
++void RealVector::write(const Element value, const int gene) /* not const */
+ {
+ 
+ #ifdef DEBUG
+@@ -503,7 +502,7 @@
+ 
+ //______________________________________________________________________________
+ //
+-const Element RealVector::gene(unsigned int gene_number) const
++const Element RealVector::gene(const unsigned int gene_number) const
+ {
+ 
+ #ifdef DEBUG
+@@ -579,7 +578,7 @@
+ 
+ //______________________________________________________________________________
+ //
+-ConstrainedRealVector::ConstrainedRealVector(int num_els)
++ConstrainedRealVector::ConstrainedRealVector(/* not const */ int num_els)
+ :  Representation(num_els)
+ {
+ 
+@@ -599,7 +598,7 @@
+ 
+ //______________________________________________________________________________
+ //
+-ConstrainedRealVector::ConstrainedRealVector(int num_els, double init_low, double init_high)
++ConstrainedRealVector::ConstrainedRealVector(/* not const */ int num_els, const double init_low, const double init_high)
+ :  Representation(num_els)
+ {
+ 
+@@ -644,7 +643,7 @@
+ 
+ //______________________________________________________________________________
+ //
+-void ConstrainedRealVector::write(unsigned char value, int gene)
++void ConstrainedRealVector::write(const unsigned char value, const int gene)
+ {
+ 
+ #ifdef DEBUG
+@@ -657,7 +656,7 @@
+ 
+ //______________________________________________________________________________
+ //
+-void ConstrainedRealVector::write(FourByteLong value, int gene)
++void ConstrainedRealVector::write(const FourByteLong value, const int gene) 
+ {
+ 
+ #ifdef DEBUG
+@@ -670,7 +669,7 @@
+ 
+ //______________________________________________________________________________
+ //
+-void ConstrainedRealVector::write(double value, int gene)
++void ConstrainedRealVector::write(const double value, const int gene) /* not const */
+ {
+ 
+ #ifdef DEBUG
+@@ -722,7 +721,7 @@
+ }
+ //______________________________________________________________________________
+ //
+-void ConstrainedRealVector::write(const Element value, int gene)
++void ConstrainedRealVector::write(const Element value, const int gene) /* not const */
+ {
+ 
+ #ifdef DEBUG
+@@ -742,7 +741,7 @@
+ 
+ //______________________________________________________________________________
+ //
+-void ConstrainedRealVector::normalize(void)
++void ConstrainedRealVector::normalize(void) /* not const */
+ {
+ #ifdef DEBUG
+     (void)fprintf(logFile, "rep.cc/void ConstrainedRealVector::normalize(void) const \n");
+@@ -772,7 +771,7 @@
+ 
+ //______________________________________________________________________________
+ //
+-const Element ConstrainedRealVector::gene(unsigned int gene_number) const
++const Element ConstrainedRealVector::gene(const unsigned int gene_number) const
+ {
+    Element retval;
+ 
+@@ -845,7 +844,7 @@
+ //  This constructor is used to initialize the first
+ //  generation of any particular bitvector.  Right
+ //  now bits are assumed to be unsigned chars.
+-BitVector::BitVector(int num_els)
++BitVector::BitVector(/* not const */ int num_els)
+ : Representation(num_els)
+ {
+ 
+@@ -862,7 +861,7 @@
+ 
+ //______________________________________________________________________________
+ //
+-BitVector::BitVector(int num_els, Real prob)
++BitVector::BitVector(/* not const */ int num_els, const Real prob)
+ : Representation(num_els)
+ {
+ 
+@@ -903,7 +902,7 @@
+ 
+ //______________________________________________________________________________
+ //
+-void BitVector::write(unsigned char value, int gene)
++void BitVector::write(const unsigned char value, const int gene) /* not const */
+ {
+ 
+ #ifdef DEBUG
+@@ -915,7 +914,7 @@
+ 
+ //______________________________________________________________________________
+ //
+-void BitVector::write(FourByteLong value, int gene)
++void BitVector::write(const FourByteLong value, const int gene) 
+ {
+ 
+ #ifdef DEBUG
+@@ -928,7 +927,7 @@
+ 
+ //______________________________________________________________________________
+ //
+-void BitVector::write(double value, int gene)
++void BitVector::write(const double value, const int gene)
+ {
+ 
+ #ifdef DEBUG
+@@ -942,7 +941,7 @@
+ 
+ //______________________________________________________________________________
+ //
+-void BitVector::write(const Element value, int gene)
++void BitVector::write(const Element value, const int gene) /* not const */
+ {
+ 
+ #ifdef DEBUG
+@@ -955,7 +954,7 @@
+ 
+ //______________________________________________________________________________
+ //
+-const Element BitVector::gene(unsigned int gene_number) const
++const Element BitVector::gene(const unsigned int gene_number) const
+ {
+    Element retval;
+ 
+Index: autodocksuite-4.2.3/autodock/rep.h
+===================================================================
+--- autodocksuite-4.2.3.orig/autodock/rep.h	2010-07-31 23:49:07.000000000 +0200
++++ autodocksuite-4.2.3/autodock/rep.h	2010-08-01 00:50:41.000000000 +0200
+@@ -72,7 +72,7 @@
+ 
+    public:
+       Representation(void);
+-      Representation(unsigned int);
++      Representation(const unsigned int);
+       virtual ~Representation(void);
+       virtual Representation &operator=(const Representation &) = 0;
+       unsigned int number_of_points(void) const;
+@@ -80,11 +80,11 @@
+       void set_normalized_true(void);
+       void set_normalized_false(void);
+       virtual RepType type(void) const; 
+-      virtual void write(unsigned char, int) = 0;
+-      virtual void write(FourByteLong, int) = 0;
+-      virtual void write(double, int) = 0;
++      virtual void write(const unsigned char, const int) = 0; /* not const, e.g. in bitvector */
++      virtual void write(const FourByteLong, const int) = 0;
++      virtual void write(const double, const int) = 0; /* not const, e.g. in RealVector */
+       virtual void write(const Element, int) = 0;
+-      virtual const Element gene(unsigned int) const = 0;
++      virtual const Element gene(const unsigned int) const = 0;
+       virtual Representation *clone(void) const = 0;
+       virtual const void *internals(void) const = 0;
+ };
+@@ -101,17 +101,17 @@
+ 
+    public:
+       IntVector(void);
+-      IntVector(int);
+-      IntVector(int, FourByteLong *);
+-      IntVector(int, FourByteLong, FourByteLong);
++      IntVector(const int);
++      IntVector(const int, FourByteLong *const);
++      IntVector(const int, const FourByteLong, const FourByteLong);
+       IntVector(const IntVector &);
+       ~IntVector(void);
+-      void write(unsigned char, int);
+-      void write(FourByteLong, int);
+-      void write(double, int);
+-      void write(const Element, int);
++      void write(const unsigned char, const int); /* not const - inherited */
++      void write(const FourByteLong, const int); /* not const */
++      void write(const double, const int);
++      void write(const Element, const int); /* not const */
+       Representation &operator=(const Representation &);
+-      const Element gene(unsigned int) const;
++      const Element gene(const unsigned int) const;
+ };
+ 
+ class RealVector : public Representation
+@@ -133,20 +133,20 @@
+             mytype = T_RealV;
+         }
+ 
+-      RealVector(int);
+-      RealVector(int, double *);
+-      RealVector(int, double, double);
++      RealVector(/* not const */ int);
++      RealVector(const int, double *const);
++      RealVector(/* not const */ int, const double, const double);
+       // Use this to set the first value in the vector--useful for random quaternions
+-      RealVector(int, double, double, double); 
+-      RealVector(int, double, double, double, double, double, double);  // sets a quaternion's x,y,z,w values
++      RealVector(const int, const double, const double, const double); 
++      RealVector(const int, const double, const double, const double, const double, const double, const double);  // sets a quaternion's x,y,z,w values
+       // Use this to create a vector of length 3 with these values--useful for random quaternions
+-      RealVector(int, double, double, double, double, double ); 
++      RealVector(const int, const double, const double, const double, const double, const double ); 
+       RealVector(const RealVector &);
+       ~RealVector(void);
+-      void write(unsigned char, int);
+-      void write(FourByteLong, int);
++      void write(const unsigned char, const int) /* not const - inherited */;
++      void write(const FourByteLong, const int); /* not const, e.g. in IntVector */
+ //    void write(const void *, int);
+-      void write(const Element, int);
++      void write(const Element, const int) /* not const */;
+       Representation &operator=(const Representation &);
+ //    const void *gene(unsigned int) const;
+ #ifdef DEBUG
+@@ -166,11 +166,11 @@
+       }
+       */
+       // non-inlined versions, possibly with range checking
+-      void write(double, int);
+-      const Element gene(unsigned int) const;
++      void write(const double, const int) /* not const */;
++      const Element gene(const unsigned int) const;
+ #else
+       // non-inlined versions, possibly with range checking
+-      void write(double, int);
++      void write(const double, const int) /* not const */;
+       const Element gene(unsigned int) const;
+ #endif
+ };
+@@ -186,22 +186,22 @@
+ 
+       const void *internals(void) const;
+       Representation *clone(void) const;
+-      void normalize(void);
++      void normalize(void); /* not const */
+ 
+    public:
+       ConstrainedRealVector(void);
+-      ConstrainedRealVector(int);
+-      ConstrainedRealVector(int, double *);
+-      ConstrainedRealVector(int, double, double);
++      ConstrainedRealVector(/* not const */ int);
++      ConstrainedRealVector(int, double *const);
++      ConstrainedRealVector(/* not const */ int, const double, const double);
+       ConstrainedRealVector(const ConstrainedRealVector &);
+       ~ConstrainedRealVector(void);
+-      void write(unsigned char, int);
+-      void write(FourByteLong, int);
+-      void write(double, int);
+-      void write(const Element, int);
++      void write(const unsigned char, const int) /* not const - inherited */;
++      void write(const FourByteLong, const int) /* not const - e.g. in IntVector */;
++      void write(const double, const int); /* not const */ 
++      void write(const Element, const int); /* not const */ 
+       void write(double, double, double, double);
+       Representation &operator=(const Representation &);
+-      const Element gene(unsigned int) const;
++      const Element gene(const unsigned int) const;
+ };
+ 
+ class BitVector : public Representation
+@@ -216,19 +216,19 @@
+ 
+    public:
+       BitVector(void);
+-      BitVector(int);
+-      BitVector(int, unsigned char *);
+-      BitVector(int, Real);
++      BitVector(/* not const */ int);
++      BitVector(int, unsigned char *const);
++      BitVector(/* not const */ int, const Real);
+       BitVector(const BitVector &);
+       ~BitVector(void);
+-      void write(unsigned char, int);
+-      void write(FourByteLong, int);
+-      void write(double, int);
++      void write(const unsigned char, const int); /* not const */
++      void write(const FourByteLong, const int); /* not const - inherited */
++      void write(const double, const int); /* not const - inherited */
+ //      void write(const void *, int);
+-      void write(const Element, int);
++      void write(const Element, const int); /* not const */
+       Representation &operator=(const Representation &);
+ //      const void *gene(unsigned int) const;
+-      const Element gene(unsigned int) const;
++      const Element gene(const unsigned int) const;
+ };
+ 
+ /**************************************************************************
+@@ -241,7 +241,7 @@
+     mytype = T_BASE;
+ }
+ 
+-inline Representation::Representation(unsigned int pts)
++inline Representation::Representation(const unsigned int pts)
+     : number_of_pts(pts) 
+ {
+ }
+@@ -288,7 +288,7 @@
+ }
+ 
+ //  This constructor does a shallow copy of the array
+-inline IntVector::IntVector(int num_els, FourByteLong *array)
++inline IntVector::IntVector(const int num_els, FourByteLong *const array)
+ : Representation(num_els), vector(array)
+ {
+     mytype = T_IntV;
+@@ -308,7 +308,7 @@
+ }
+ 
+ //  This performs a shallow copy of the array
+-inline RealVector::RealVector(int num_els, double *array)
++inline RealVector::RealVector(const int num_els, double *const array)
+ : Representation(num_els), high(REALV_HIGH), low(REALV_LOW), 
+         vector(array)
+ {
+@@ -336,7 +336,7 @@
+    mytype = T_CRealV;
+ }
+ 
+-inline ConstrainedRealVector::ConstrainedRealVector(int num_els, double *array)
++inline ConstrainedRealVector::ConstrainedRealVector(const int num_els, double *const array)
+ :  Representation(num_els)
+ {
+    normalized = 0;
+@@ -365,7 +365,7 @@
+ }
+ 
+ //  Do a shallow copy
+-inline BitVector::BitVector(int num_els, unsigned char *array)
++inline BitVector::BitVector(int num_els, unsigned char *const array)
+ : Representation(num_els)
+ {
+    vector = array;

Added: trunk/packages/autodocksuite/trunk/debian/patches/const_manual_35.patch
===================================================================
--- trunk/packages/autodocksuite/trunk/debian/patches/const_manual_35.patch	                        (rev 0)
+++ trunk/packages/autodocksuite/trunk/debian/patches/const_manual_35.patch	2010-08-01 13:58:53 UTC (rev 5085)
@@ -0,0 +1,482 @@
+Index: autodocksuite-4.2.3/autodock/com.cc
+===================================================================
+--- autodocksuite-4.2.3.orig/autodock/com.cc	2010-08-01 00:52:47.000000000 +0200
++++ autodocksuite-4.2.3/autodock/com.cc	2010-08-01 01:08:29.000000000 +0200
+@@ -36,10 +36,10 @@
+ 
+ extern FILE *logFile;
+ 
+-void advnst(FourByteLong k)
++void advnst(const FourByteLong k)
+ /*
+ **********************************************************************
+-     void advnst(FourByteLong k)
++     void advnst(const FourByteLong k)
+                ADV-a-N-ce ST-ate
+      Advances the state  of  the current  generator  by 2^K values  and
+      resets the initial seed to that value.
+@@ -54,7 +54,7 @@
+ */
+ {
+ #define numg 32L
+-extern void gsrgs(FourByteLong getset,FourByteLong *qvalue);
++extern void gsrgs(const FourByteLong getset,FourByteLong *const qvalue);
+ extern void gscgn(FourByteLong getset,FourByteLong *g);
+ extern FourByteLong Xm1,Xm2,Xa1,Xa2,Xcg1[],Xcg2[];
+ static FourByteLong g,i,ib1,ib2;
+@@ -80,7 +80,7 @@
+ */
+ #undef numg
+ }
+-void getsd(FourByteLong *iseed1,FourByteLong *iseed2)
++void getsd(FourByteLong *const iseed1,FourByteLong *const iseed2)
+ /*
+ **********************************************************************
+      void getsd(FourByteLong *iseed1,FourByteLong *iseed2)
+@@ -98,7 +98,7 @@
+ */
+ {
+ #define numg 32L
+-extern void gsrgs(FourByteLong getset,FourByteLong *qvalue);
++extern void gsrgs(const FourByteLong getset,FourByteLong *const qvalue);
+ extern void gscgn(FourByteLong getset,FourByteLong *g);
+ extern FourByteLong Xcg1[],Xcg2[];
+ static FourByteLong g;
+@@ -133,9 +133,9 @@
+ */
+ {
+ #define numg 32L
+-extern void gsrgs(FourByteLong getset,FourByteLong *qvalue);
+-extern void gssst(FourByteLong getset,FourByteLong *qset);
+-extern void gscgn(FourByteLong getset,FourByteLong *g);
++extern void gsrgs(const FourByteLong getset,FourByteLong *const qvalue);
++extern void gssst(const FourByteLong getset,FourByteLong *const qset);
++extern void gscgn(const FourByteLong getset,FourByteLong *const g);
+ extern void inrgcm(void);
+ extern FourByteLong Xm1,Xm2,Xa1,Xa2,Xcg1[],Xcg2[];
+ extern FourByteLong Xqanti[];
+@@ -171,7 +171,7 @@
+     return ignlgi;
+ #undef numg
+ }
+-void initgn(FourByteLong isdtyp)
++void initgn(const FourByteLong isdtyp)
+ /*
+ **********************************************************************
+      void initgn(FourByteLong isdtyp)
+@@ -193,7 +193,7 @@
+ */
+ {
+ #define numg 32L
+-extern void gsrgs(FourByteLong getset,FourByteLong *qvalue);
++extern void gsrgs(const FourByteLong getset,FourByteLong *const qvalue);
+ extern void gscgn(FourByteLong getset,FourByteLong *g);
+ extern FourByteLong Xm1,Xm2,Xa1w,Xa2w,Xig1[],Xig2[],Xlg1[],Xlg2[],Xcg1[],Xcg2[];
+ static FourByteLong g;
+@@ -244,7 +244,7 @@
+ */
+ {
+ #define numg 32L
+-extern void gsrgs(FourByteLong getset,FourByteLong *qvalue);
++extern void gsrgs(const FourByteLong getset,FourByteLong *const qvalue);
+ extern FourByteLong Xm1,Xm2,Xa1,Xa2,Xa1w,Xa2w,Xa1vw,Xa2vw;
+ extern FourByteLong Xqanti[];
+ static FourByteLong T1;
+@@ -273,7 +273,7 @@
+     gsrgs(1L,&T1);
+ #undef numg
+ }
+-void setall(FourByteLong iseed1,FourByteLong iseed2)
++void setall(const FourByteLong iseed1,const FourByteLong iseed2)
+ /*
+ **********************************************************************
+      void setall(FourByteLong iseed1,FourByteLong iseed2)
+@@ -293,9 +293,9 @@
+ */
+ {
+ #define numg 32L
+-extern void gsrgs(FourByteLong getset,FourByteLong *qvalue);
+-extern void gssst(FourByteLong getset,FourByteLong *qset);
+-extern void gscgn(FourByteLong getset,FourByteLong *g);
++extern void gsrgs(const FourByteLong getset,FourByteLong *const qvalue);
++extern void gssst(const FourByteLong getset,FourByteLong *const qset);
++extern void gscgn(const FourByteLong getset,FourByteLong *const g);
+ extern FourByteLong Xm1,Xm2,Xa1vw,Xa2vw,Xig1[],Xig2[];
+ static FourByteLong T1;
+ static FourByteLong g,ocgn;
+@@ -324,7 +324,7 @@
+     gscgn(1L,&ocgn);
+ #undef numg
+ }
+-void setant(FourByteLong qvalue)
++void setant(const FourByteLong qvalue)
+ /*
+ **********************************************************************
+      void setant(FourByteLong qvalue)
+@@ -347,7 +347,7 @@
+ */
+ {
+ #define numg 32L
+-extern void gsrgs(FourByteLong getset,FourByteLong *qvalue);
++extern void gsrgs(const FourByteLong getset,FourByteLong *const qvalue);
+ extern void gscgn(FourByteLong getset,FourByteLong *g);
+ extern FourByteLong Xqanti[];
+ static FourByteLong g;
+@@ -365,7 +365,7 @@
+     Xqanti[g-1] = qvalue;
+ #undef numg
+ }
+-void setsd(FourByteLong iseed1,FourByteLong iseed2)
++void setsd(const FourByteLong iseed1,const FourByteLong iseed2)
+ /*
+ **********************************************************************
+      void setsd(FourByteLong iseed1,FourByteLong iseed2)
+@@ -384,7 +384,7 @@
+ */
+ {
+ #define numg 32L
+-extern void gsrgs(FourByteLong getset,FourByteLong *qvalue);
++extern void gsrgs(const FourByteLong getset,FourByteLong *const qvalue);
+ extern void gscgn(FourByteLong getset,FourByteLong *g);
+ extern FourByteLong Xig1[],Xig2[];
+ static FourByteLong g;
+Index: autodocksuite-4.2.3/autodock/ranlib.cc
+===================================================================
+--- autodocksuite-4.2.3.orig/autodock/ranlib.cc	2010-08-01 01:01:35.000000000 +0200
++++ autodocksuite-4.2.3/autodock/ranlib.cc	2010-08-01 15:55:22.000000000 +0200
+@@ -38,12 +38,12 @@
+ #define MIN(a,b) ((a) <= (b) ? (a) : (b))
+ #define MAX(a,b) ((a) >= (b) ? (a) : (b))
+ 
+-void ftnstop(const char*);
++void ftnstop(const char *const);
+ 
+ extern FILE *logFile;
+ 
+ 
+-Real genbet(Real aa,Real bb)
++Real genbet(const Real aa,const Real bb)
+ /*
+ **********************************************************************
+      Real genbet(Real aa,Real bb)
+@@ -206,7 +206,7 @@
+ #undef expmax
+ #undef infnty
+ }
+-Real genchi(Real df)
++Real genchi(const Real df)
+ /*
+ **********************************************************************
+      Real genchi(Real df)
+@@ -233,7 +233,7 @@
+     genchi = 2.0*gengam(1.0,df/2.0);
+     return genchi;
+ }
+-Real genexp(Real av)
++Real genexp(const Real av)
+ /*
+ **********************************************************************
+      Real genexp(Real av)
+@@ -260,7 +260,7 @@
+     genexp = sexpo()*av;
+     return genexp;
+ }
+-Real genf(Real dfn,Real dfd)
++Real genf(const Real dfn,const Real dfd)
+ /*
+ **********************************************************************
+      Real genf(Real dfn,Real dfd)
+@@ -302,7 +302,7 @@
+ S30:
+     return genf;
+ }
+-Real gengam(Real a,Real r)
++Real gengam(const Real a,const Real r)
+ /*
+ **********************************************************************
+      Real gengam(Real a,Real r)
+@@ -339,7 +339,7 @@
+     gengam /= a;
+     return gengam;
+ }
+-void genmn(Real *parm,Real *x,Real *work)
++void genmn(const Real *const parm,/* not const */ Real *const x,/* not const */ Real *const work)
+ /*
+ **********************************************************************
+      void genmn(Real *parm,Real *x,Real *work)
+@@ -390,7 +390,7 @@
+         *(x+i-1) = ae+*(parm+i);
+     }
+ }
+-void genmul(FourByteLong n,Real *p,FourByteLong ncat,FourByteLong *ix)
++void genmul(const FourByteLong n,const Real *const p,const FourByteLong ncat,/* not const */ FourByteLong *const ix)
+ /*
+ **********************************************************************
+  
+@@ -451,7 +451,7 @@
+ */
+     return;
+ }
+-Real gennch(Real df,Real xnonc)
++Real gennch(const Real df,const Real xnonc)
+ /*
+ **********************************************************************
+      Real gennch(Real df,Real xnonc)
+@@ -482,7 +482,7 @@
+     gennch = genchi(df-1.0)+pow(gennor(sqrt(xnonc),1.0),2.0);
+     return gennch;
+ }
+-Real gennf(Real dfn,Real dfd,Real xnonc)
++Real gennf(const Real dfn,const Real dfd,const Real xnonc)
+ /*
+ **********************************************************************
+      Real gennf(Real dfn,Real dfd,Real xnonc)
+@@ -534,7 +534,7 @@
+ S30:
+     return gennf;
+ }
+-Real gennor(Real av,Real sd)
++Real gennor(const Real av,const Real sd)
+ /*
+ **********************************************************************
+      Real gennor(Real av,Real sd)
+@@ -561,7 +561,7 @@
+     gennor = sd*snorm()+av;
+     return gennor;
+ }
+-void genprm(FourByteLong *iarray,int larray)
++void genprm(/* not const */ FourByteLong *const iarray,const int larray)
+ /*
+ **********************************************************************
+     void genprm(FourByteLong *iarray,int larray)
+@@ -582,7 +582,7 @@
+         *(iarray+i-1) = itmp;
+     }
+ }
+-Real genunf(Real low,Real high)
++Real genunf(const Real low,const Real high)
+ /*
+ **********************************************************************
+      Real genunf(Real low,Real high)
+@@ -605,7 +605,7 @@
+     genunf = low+(high-low)*ranf();
+     return genunf;
+ }
+-void gscgn(FourByteLong getset,FourByteLong *g)
++void gscgn(const FourByteLong getset,FourByteLong *const g)
+ /*
+ **********************************************************************
+      void gscgn(FourByteLong getset,FourByteLong *g)
+@@ -630,7 +630,7 @@
+     }
+ #undef numg
+ }
+-void gsrgs(FourByteLong getset,FourByteLong *qvalue)
++void gsrgs(const FourByteLong getset,FourByteLong *const qvalue)
+ /*
+ **********************************************************************
+      void gsrgs(FourByteLong getset,FourByteLong *qvalue)
+@@ -647,7 +647,7 @@
+     if(getset == 0) *qvalue = qinit;
+     else qinit = *qvalue;
+ }
+-void gssst(FourByteLong getset,FourByteLong *qset)
++void gssst(const FourByteLong getset,FourByteLong *const qset)
+ /*
+ **********************************************************************
+      void gssst(FourByteLong getset,FourByteLong *qset)
+@@ -663,7 +663,7 @@
+     if(getset != 0) qstate = 1;
+     else  *qset = qstate;
+ }
+-FourByteLong ignbin(FourByteLong n,Real pp)
++FourByteLong ignbin(const FourByteLong n,const Real pp)
+ /*
+ **********************************************************************
+      FourByteLong ignbin(FourByteLong n,Real pp)
+@@ -920,7 +920,7 @@
+     ignbin = ix;
+     return ignbin;
+ }
+-FourByteLong ignnbn(FourByteLong n,Real p)
++FourByteLong ignnbn(const FourByteLong n,const Real p)
+ /*
+ **********************************************************************
+  
+@@ -967,7 +967,7 @@
+     ignnbn = ignpoi(y);
+     return ignnbn;
+ }
+-FourByteLong ignpoi(Real mu)
++FourByteLong ignpoi(const Real mu)
+ /*
+ **********************************************************************
+      FourByteLong ignpoi(Real mu)
+@@ -1206,7 +1206,7 @@
+     ignpoi = k;
+     return ignpoi;
+ }
+-FourByteLong ignuin(FourByteLong low,FourByteLong high)
++FourByteLong ignuin(const FourByteLong low,const FourByteLong high)
+ /*
+ **********************************************************************
+      FourByteLong ignuin(FourByteLong low,FourByteLong high)
+@@ -1261,7 +1261,7 @@
+ #undef err1
+ #undef err2
+ }
+-FourByteLong lennob( char *str )
++FourByteLong lennob( const char *const str )
+ /* 
+ Returns the length of str ignoring trailing blanks but not 
+ other white space.
+@@ -1273,7 +1273,7 @@
+     if ( *(str+i) != ' ' ) i_nb = i;
+ return (i_nb+1);
+     }
+-FourByteLong mltmod(FourByteLong a,FourByteLong s,FourByteLong m)
++FourByteLong mltmod(const FourByteLong a,const FourByteLong s,const FourByteLong m)
+ /*
+ **********************************************************************
+      FourByteLong mltmod(FourByteLong a,FourByteLong s,FourByteLong m)
+@@ -1367,7 +1367,7 @@
+     return mltmod;
+ #undef h
+ }
+-void phrtsd(char* phrase,FourByteLong *seed1,FourByteLong *seed2)
++void phrtsd(const char *const phrase,FourByteLong *const seed1,FourByteLong *const seed2)
+ /*
+ **********************************************************************
+      void phrtsd(char* phrase,FourByteLong *seed1,FourByteLong *seed2)
+@@ -1406,7 +1406,7 @@
+     1L,64L,4096L,262144L,16777216L
+ };
+ static FourByteLong i,ichr,j,lphr,values[5];
+-extern FourByteLong lennob(char *str);
++extern FourByteLong lennob(const char *const str);
+ 
+     *seed1 = 1234567890L;
+     *seed2 = 123456789L;
+@@ -1453,7 +1453,7 @@
+     ranf = ignlgi()*4.656613057E-10;
+     return ranf;
+ }
+-void setgmn(Real *meanv,Real *covm,FourByteLong p,Real *parm)
++void setgmn(const Real *const meanv,Real *const covm,const FourByteLong p,Real *const parm)
+ /*
+ **********************************************************************
+      void setgmn(Real *meanv,Real *covm,FourByteLong p,Real *parm)
+@@ -1477,7 +1477,7 @@
+ **********************************************************************
+ */
+ {
+-extern void spofa(Real *a,FourByteLong lda,FourByteLong n,FourByteLong *info);
++extern void spofa(/* not const */ Real *const a,const FourByteLong lda,const FourByteLong n,/* not const */ FourByteLong *const info);
+ /* not used: static FourByteLong T1; */
+ static FourByteLong i,icount,info,j,D2,D3,D4,D5;
+     /* not used: T1 = p*(p+3)/2+1; */
+@@ -1929,7 +1929,7 @@
+ FTNSTOP:
+ Prints msg to standard error and then exits
+ ************************************************************************/
+-void ftnstop(const char* msg)
++void ftnstop(const char *const msg)
+ /* msg - error message */
+ {
+   if (msg != NULL) fprintf(stderr,"%s\n",msg);
+Index: autodocksuite-4.2.3/autodock/ranlib.h
+===================================================================
+--- autodocksuite-4.2.3.orig/autodock/ranlib.h	2010-08-01 00:57:46.000000000 +0200
++++ autodocksuite-4.2.3/autodock/ranlib.h	2010-08-01 15:48:17.000000000 +0200
+@@ -31,38 +31,38 @@
+ 
+ #include "typedefs.h"
+ 
+-extern void advnst(FourByteLong k);
+-extern Real genbet(Real aa,Real bb);
+-extern Real genchi(Real df);
+-extern Real genexp(Real av);
+-extern Real genf(Real dfn, Real dfd);
+-extern Real gengam(Real a,Real r);
+-extern void genmn(Real *parm,Real *x,Real *work);
+-extern void genmul(FourByteLong n,Real *p,FourByteLong ncat,FourByteLong *ix);
+-extern Real gennch(Real df,Real xnonc);
+-extern Real gennf(Real dfn, Real dfd, Real xnonc);
+-extern Real gennor(Real av,Real sd);
+-extern void genprm(FourByteLong *iarray,int larray);
+-extern Real genunf(Real low,Real high);
+-extern void getsd(FourByteLong *iseed1,FourByteLong *iseed2);
+-extern void gscgn(FourByteLong getset,FourByteLong *g);
+-extern FourByteLong ignbin(FourByteLong n,Real pp);
+-extern FourByteLong ignnbn(FourByteLong n,Real p);
++extern void advnst(const FourByteLong k);
++extern Real genbet(const Real aa,const Real bb);
++extern Real genchi(const Real df);
++extern Real genexp(const Real av);
++extern Real genf(const Real dfn, const Real dfd);
++extern Real gengam(const Real a,const Real r);
++extern void genmn(const Real *const parm, /* not const */ Real *const x, /* not const */ Real *const work);
++extern void genmul(const FourByteLong n,const Real *const p,const FourByteLong ncat,/* not const */ FourByteLong *const ix);
++extern Real gennch(const Real df,const Real xnonc);
++extern Real gennf(const Real dfn, const Real dfd, const Real xnonc);
++extern Real gennor(const Real av,const Real sd);
++extern void genprm(/* not const */FourByteLong *const iarray,const int larray);
++extern Real genunf(const Real low,const Real high);
++extern void getsd(FourByteLong *const iseed1,FourByteLong *const iseed2);
++extern void gscgn(const FourByteLong getset,const FourByteLong *g);
++extern FourByteLong ignbin(const FourByteLong n,const Real pp);
++extern FourByteLong ignnbn(const FourByteLong n,const Real p);
+ extern FourByteLong ignlgi(void);
+-extern FourByteLong ignpoi(Real mu);
+-extern FourByteLong ignuin(FourByteLong low,FourByteLong high);
+-extern void initgn(FourByteLong isdtyp);
+-extern FourByteLong mltmod(FourByteLong a,FourByteLong s,FourByteLong m);
+-extern void phrtsd(char* phrase,FourByteLong* seed1,FourByteLong* seed2);
++extern FourByteLong ignpoi(const Real mu);
++extern FourByteLong ignuin(const FourByteLong low,const FourByteLong high);
++extern void initgn(const FourByteLong isdtyp);
++extern FourByteLong mltmod(const FourByteLong a,const FourByteLong s,const FourByteLong m);
++extern void phrtsd(const char *const phrase,FourByteLong *const seed1,FourByteLong *const seed2);
+ extern Real ranf(void);
+-extern void setall(FourByteLong iseed1,FourByteLong iseed2);
+-extern void setant(FourByteLong qvalue);
+-extern void setgmn(Real *meanv,Real *covm,FourByteLong p,Real *parm);
+-extern void setsd(FourByteLong iseed1,FourByteLong iseed2);
++extern void setall(const FourByteLong iseed1,const FourByteLong iseed2);
++extern void setant(const FourByteLong qvalue);
++extern void setgmn(const Real *const meanv,Real *const covm,const FourByteLong p,Real *const parm);
++extern void setsd(const FourByteLong iseed1,const FourByteLong iseed2);
+ extern Real sexpo(void);
+ extern Real sgamma(Real a);
+ extern Real snorm(void);
+-extern Real rcauchy(Real, Real);
++extern Real rcauchy(const Real, const Real);
+ extern Real scauchy1(void);
+ extern Real scauchy2(void);
+ 
+Index: autodocksuite-4.2.3/autodock/gencau.cc
+===================================================================
+--- autodocksuite-4.2.3.orig/autodock/gencau.cc	2010-08-01 15:47:27.000000000 +0200
++++ autodocksuite-4.2.3/autodock/gencau.cc	2010-08-01 15:47:54.000000000 +0200
+@@ -33,7 +33,7 @@
+ #include "ranlib.h"
+ 
+ 
+-Real rcauchy(Real alpha, Real beta)
++Real rcauchy(const Real alpha, const Real beta)
+ /*
+ **********************************************************************
+      Real rcauchy(Real alpha, Real beta)
+Index: autodocksuite-4.2.3/autodock/linpack.cc
+===================================================================
+--- autodocksuite-4.2.3.orig/autodock/linpack.cc	2010-08-01 15:42:47.000000000 +0200
++++ autodocksuite-4.2.3/autodock/linpack.cc	2010-08-01 15:45:04.000000000 +0200
+@@ -43,7 +43,7 @@
+     sdot = stemp;
+     return sdot;
+ }
+-void spofa(Real *a,FourByteLong lda,FourByteLong n,FourByteLong *info)
++void spofa(/* not const */ Real *const a,const FourByteLong lda,const FourByteLong n,/* not const */ FourByteLong *const info)
+ /*
+      SPOFA FACTORS A REAL SYMMETRIC POSITIVE DEFINITE MATRIX.
+      SPOFA IS USUALLY CALLED BY SPOCO, BUT IT CAN BE CALLED

Added: trunk/packages/autodocksuite/trunk/debian/patches/const_manual_FILEpointer.patch
===================================================================
--- trunk/packages/autodocksuite/trunk/debian/patches/const_manual_FILEpointer.patch	                        (rev 0)
+++ trunk/packages/autodocksuite/trunk/debian/patches/const_manual_FILEpointer.patch	2010-08-01 13:58:53 UTC (rev 5085)
@@ -0,0 +1,2575 @@
+Index: autodocksuite-4.2.3/autodock/banner.cc
+===================================================================
+--- autodocksuite-4.2.3.orig/autodock/banner.cc	2010-07-22 21:22:20.000000000 +0200
++++ autodocksuite-4.2.3/autodock/banner.cc	2010-07-22 21:23:26.000000000 +0200
+@@ -33,7 +33,7 @@
+ 
+ extern FILE *logFile;
+ 
+-void banner( const char * version_num )
++void banner( const char *const version_num )
+ {
+ 
+ /*----------------------------------------------------------------------------*/
+@@ -99,7 +99,7 @@
+ 
+ /*----------------------------------------------------------------------------*/
+ 
+-void show_copyright( FILE *fp )
++void show_copyright( FILE *const fp )
+ {
+ 
+     (void) fprintf( fp, "GNU GENERAL PUBLIC LICENSE\n");
+@@ -361,7 +361,7 @@
+ 
+ /*----------------------------------------------------------------------------*/
+ 
+-void show_warranty( FILE *fp )
++void show_warranty( FILE *const fp )
+ {
+ 
+     (void) fprintf( fp, "NO WARRANTY\n");
+Index: autodocksuite-4.2.3/autodock/banner.h
+===================================================================
+--- autodocksuite-4.2.3.orig/autodock/banner.h	2010-07-22 21:23:28.000000000 +0200
++++ autodocksuite-4.2.3/autodock/banner.h	2010-07-22 21:23:46.000000000 +0200
+@@ -27,7 +27,7 @@
+ #ifndef BANNER
+ #define BANNER
+ #include "typedefs.h"
+-void banner( const char * version_num );
+-void show_copyright( FILE *fp );
+-void show_warranty( FILE *fp );
++void banner( const char *const version_num );
++void show_copyright( FILE *const fp );
++void show_warranty( FILE *const fp );
+ #endif
+Index: autodocksuite-4.2.3/autodock/call_glss.cc
+===================================================================
+--- autodocksuite-4.2.3.orig/autodock/call_glss.cc	2010-07-22 21:24:42.000000000 +0200
++++ autodocksuite-4.2.3/autodock/call_glss.cc	2010-07-23 20:40:39.000000000 +0200
+@@ -55,7 +55,7 @@
+ 
+ Eval evaluate;
+ 
+-Representation **generate_R(int num_torsions, GridMapSetInfo *info)
++Representation **generate_R(const int num_torsions, GridMapSetInfo *info)
+ {
+    Representation **retval;
+    Quat q;
+@@ -96,7 +96,7 @@
+    return(retval);
+ }
+ 
+-Representation **generate_R_quaternion(int num_torsions, GridMapSetInfo *info)
++Representation **generate_R_quaternion(const int num_torsions, const GridMapSetInfo *const info)
+ {
+    Representation **retval;
+    Quat q;
+@@ -145,7 +145,7 @@
+    return(retval);
+ }
+ 
+-Genotype generate_Gtype(int num_torsions, GridMapSetInfo *info)
++Genotype generate_Gtype(const int num_torsions, const GridMapSetInfo *const info)
+ {
+ #ifdef DEBUG
+     // (void)fprintf(logFile,"\ncall_glss.cc/Genotype generate_Gtype() about to call Genotype temp(5, generate_R())...\n");
+@@ -161,7 +161,7 @@
+    return(temp);
+ }
+ 
+-Phenotype generate_Ptype(int num_torsions, GridMapSetInfo *info) 
++Phenotype generate_Ptype(const int num_torsions, const GridMapSetInfo *const info) 
+ {
+ #ifdef DEBUG
+     // (void)fprintf(logFile,"\ncall_glss.cc/Genotype generate_Ptype() about to call Phenotype temp(5, generate_R())...\n");
+@@ -177,7 +177,7 @@
+    return(temp);
+ }
+ 
+-Individual random_ind(int num_torsions,  GridMapSetInfo *info) 
++Individual random_ind(const int num_torsions,  const GridMapSetInfo *const info) 
+ {
+ 
+ #ifdef DEBUG
+@@ -204,7 +204,7 @@
+ }
+ 
+ #ifdef FALSE
+-Individual set_ind(int num_torsions,  GridMapSetInfo *info, State state)
++Individual set_ind(const int num_torsions,  const GridMapSetInfo *const info, const State state)
+ {
+    Genotype temp_Gtype;
+    Phenotype temp_Ptype;
+@@ -251,12 +251,12 @@
+ 
+ State call_glss(Global_Search *global_method, Local_Search *local_method, 
+                 State sInit, 
+-                unsigned int num_evals, unsigned int pop_size, 
+-                int outlev, 
+-                unsigned int extOutputEveryNgens, Molecule *mol, 
+-                Boole B_RandomTran0, Boole B_RandomQuat0, Boole B_RandomDihe0,
+-                GridMapSetInfo *info, char *FN_pop_file,
+-                int end_of_branch[MAX_TORS])
++                const unsigned int num_evals, const unsigned int pop_size, 
++                const int outlev, 
++                const unsigned int extOutputEveryNgens, Molecule *const mol, 
++                const Boole B_RandomTran0, const Boole B_RandomQuat0, const Boole B_RandomDihe0,
++                const GridMapSetInfo *info, const char *const FN_pop_file,
++                const int end_of_branch[MAX_TORS])
+ {
+     register unsigned int i;
+     register int j;
+Index: autodocksuite-4.2.3/autodock/eval.cc
+===================================================================
+--- autodocksuite-4.2.3.orig/autodock/eval.cc	2010-07-22 21:31:09.000000000 +0200
++++ autodocksuite-4.2.3/autodock/eval.cc	2010-07-22 21:31:24.000000000 +0200
+@@ -263,7 +263,7 @@
+    return(retval);
+ }
+ 
+-int Eval::write(FILE *out_file, const Representation *const *const rep)
++int Eval::write(FILE *const out_file, const Representation *const *const rep)
+ {
+     int i=0, retval=0;
+     //char rec14[14];
+Index: autodocksuite-4.2.3/autodock/eval.h
+===================================================================
+--- autodocksuite-4.2.3.orig/autodock/eval.h	2010-07-22 21:31:26.000000000 +0200
++++ autodocksuite-4.2.3/autodock/eval.h	2010-07-22 21:31:36.000000000 +0200
+@@ -123,7 +123,7 @@
+       double eval(const int); // GMM - allows calculation of a particular term of the total energy
+       UnsignedFourByteLong evals(void);
+       void reset(void);
+-      int write(FILE *out_file, const Representation *const *const rep);
++      int write(FILE *const out_file, const Representation *const *const rep);
+       double evalpso(State *state);
+       void compute_intermol_energy(Boole init_B_compute_intermol_energy); // for computing unbound state
+ };
+Index: autodocksuite-4.2.3/autodock/input_state.cc
+===================================================================
+--- autodocksuite-4.2.3.orig/autodock/input_state.cc	2010-07-22 21:31:48.000000000 +0200
++++ autodocksuite-4.2.3/autodock/input_state.cc	2010-07-22 21:44:12.000000000 +0200
+@@ -35,14 +35,14 @@
+ 
+ #define LINELEN 132
+ 
+-int input_state( State *S,
+-		 FILE  *fp,
++int input_state( State *const S,
++		 FILE  *const fp,
+ 		 char  line[LINE_LEN],
+-		 int   ntor,
+-		 int   *p_istep,
+-		 Real *p_energy,
+-		 Real *p_eint,
+-		 char  *p_lastmove )
++		 const int   ntor,
++		 int   *const p_istep,
++		 Real  *const p_energy,
++		 Real  *const p_eint,
++		 char  *const p_lastmove )
+ {
+     int i, istep, status;
+     Real energy, eint;
+Index: autodocksuite-4.2.3/autodock/input_state.h
+===================================================================
+--- autodocksuite-4.2.3.orig/autodock/input_state.h	2010-07-22 21:44:17.000000000 +0200
++++ autodocksuite-4.2.3/autodock/input_state.h	2010-07-22 21:44:52.000000000 +0200
+@@ -30,11 +30,11 @@
+ #include "qmultiply.h"
+ 
+ int input_state( State *S,
+-		 FILE  *fp, 
++		 FILE  *const fp, 
+                  char  line[LINE_LEN], 
+-                 int   ntor, 
+-		 int   *P_istep, 
+-                 Real *P_energy, 
+-		 Real *P_eint, 
+-                 char  *P_lastmove );
++                 const int   ntor, 
++		 int   *const P_istep, 
++                 Real  *const P_energy, 
++		 Real  *const P_eint, 
++                 char  *const P_lastmove );
+ #endif
+Index: autodocksuite-4.2.3/autodock/ls.cc
+===================================================================
+--- autodocksuite-4.2.3.orig/autodock/ls.cc	2010-07-22 21:45:02.000000000 +0200
++++ autodocksuite-4.2.3/autodock/ls.cc	2010-07-22 21:46:43.000000000 +0200
+@@ -42,7 +42,7 @@
+ extern FILE *logFile;
+ 
+ //  This function adds sign * (deviates + bias) to all the reals in the representation
+-Phenotype genPh(const Phenotype &original, Real sign, Real *deviates, Real *bias)
++Phenotype genPh(const Phenotype &original, const Real sign, const Real *const deviates, Real *const bias)
+ {
+    RepType genetype;
+    register unsigned int i, index = 0;
+@@ -106,7 +106,7 @@
+ #ifdef DEBUG
+ //convenience function for debugging
+ #define traceState(msg,vector) printDState(logFile,msg,vector,i,prevxyz,startxyz,prevQuat,startQuat,num_successes,num_failures,temp_rho,bias,deviates)
+-void printDState(FILE *logFile, const char * msg,Phenotype &newPh, int i, Real prevxyz[3],
++void printDState(FILE *const logFile, const char * msg,Phenotype &newPh, int i, Real prevxyz[3],
+                  Real startxyz[3], Quat prevQuat, Quat startQuat, 
+                  unsigned int num_successes, unsigned int num_failures,
+                  Real temp_rho, Real * bias, Real * deviates);
+Index: autodocksuite-4.2.3/autodock/minmeanmax.cc
+===================================================================
+--- autodocksuite-4.2.3.orig/autodock/minmeanmax.cc	2010-07-22 21:49:21.000000000 +0200
++++ autodocksuite-4.2.3/autodock/minmeanmax.cc	2010-07-22 21:51:07.000000000 +0200
+@@ -43,7 +43,7 @@
+ #define which_bin(x, min, max, nbins)  int((nbins)*((x)-(min))/((max)-(min)))
+ #define clamp_range(x, min, max) ((x) < (min)) ? (min) : ((x) > (max)) ? (max) : (x)
+ 
+-void minmeanmax( FILE *fp, Population &pop, int num_generations, GridMapSetInfo *info )
++void minmeanmax( FILE *const fp, const Population &pop, const int num_generations, const GridMapSetInfo *const info )
+ {
+ #ifdef DEBUG
+    fprintf( fp, "minmeanmax.cc/minmeanmax(); initialization\n" );
+Index: autodocksuite-4.2.3/autodock/nonbonds.cc
+===================================================================
+--- autodocksuite-4.2.3.orig/autodock/nonbonds.cc	2010-07-22 21:51:21.000000000 +0200
++++ autodocksuite-4.2.3/autodock/nonbonds.cc	2010-07-22 21:51:52.000000000 +0200
+@@ -242,7 +242,7 @@
+ 
+ /*----------------------------------------------------------------------------*/
+ 
+-void print_1_4_message(FILE *file, Boole B_include_1_4_interactions,  Real scale_1_4)
++void print_1_4_message(FILE *const file, const Boole B_include_1_4_interactions,  const Real scale_1_4)
+ {
+     if (B_include_1_4_interactions == FALSE) {
+         pr(file, "1,4-interactions will be _ignored_ in the non-bonded internal energy calculation.\n\n");
+Index: autodocksuite-4.2.3/autodock/openfile.cc
+===================================================================
+--- autodocksuite-4.2.3.orig/autodock/openfile.cc	2010-07-22 21:52:12.000000000 +0200
++++ autodocksuite-4.2.3/autodock/openfile.cc	2010-07-22 23:36:15.000000000 +0200
+@@ -51,13 +51,12 @@
+ extern FILE *logFile;
+ /*----------------------------------------------------------------------------*/
+ /* fopen rewrite to either use BOINC api or normal system call */
+-FILE *ad_fopen(const char *path, const char *mode)
++FILE *ad_fopen(const char *const path, const char *const mode)
+ {
+   FILE *filep;
+ #ifdef BOINC
+-  int rc;
+   char resolved_name[512];
+-  rc = boinc_resolve_filename(path, resolved_name, sizeof(resolved_name));
++  const int rc = boinc_resolve_filename(path, resolved_name, sizeof(resolved_name));
+   if (rc){
+       fprintf(stderr, "BOINC_ERROR: cannot open filename.%s\n",path);
+       boinc_finish(rc);    /* back to BOINC core */
+@@ -71,8 +70,8 @@
+ }
+ 
+ /*----------------------------------------------------------------------------*/
+-int openfile( char *filename,
+-	      char mode[],
++int openfile( const char *const filename,
++	      const char mode[],
+ 	      FILE **fp )
+ 
+ {
+@@ -85,12 +84,12 @@
+ }
+ 
+ /*----------------------------------------------------------------------------*/
+-int openFile( char       *filename,
+-	      char       mode[],
+-	      FILE       **fp,
+-	      Clock      start,
+-	      struct tms tms_start,
+-	      Boole      mayExit)
++int openFile( const char *const filename,
++	      const char        mode[],
++	      FILE              **fp,
++	      const Clock       start,
++	      struct tms        tms_start,
++	      const Boole       mayExit)
+ 
+ {
+     Clock  jobEnd;
+Index: autodocksuite-4.2.3/autodock/output_state.cc
+===================================================================
+--- autodocksuite-4.2.3.orig/autodock/output_state.cc	2010-07-22 21:57:38.000000000 +0200
++++ autodocksuite-4.2.3/autodock/output_state.cc	2010-07-22 22:00:55.000000000 +0200
+@@ -43,18 +43,18 @@
+ #define PERMS 0666        /* hexadecimal permissions for watch-file */
+ 
+ /*----------------------------------------------------------------------------*/
+-void output_state( FILE *fp,
+-		   State S,
+-                   int ntor,
+-                   int istep,
+-                   Real energy,
+-                   Real eint,
+-                   char lastmove,
+-                   Boole B_watch,
+-                   char *FN_watch,
++void output_state( FILE *const fp,
++		   const State S,
++                   const int ntor,
++                   const int istep,
++                   const Real energy,
++                   const Real eint,
++                   const char lastmove,
++                   const Boole B_watch,
++                   const char *const FN_watch,
+                    char atomstuff[MAX_ATOMS][MAX_CHARS],
+-                   int natom,
+-                   Real crd[MAX_ATOMS][SPACE])
++                   const int natom,
++                   const Real crd[MAX_ATOMS][SPACE])
+ /*----------------------------------------------------------------------------*/
+ {
+     int i;
+Index: autodocksuite-4.2.3/autodock/printEnergies.cc
+===================================================================
+--- autodocksuite-4.2.3.orig/autodock/printEnergies.cc	2010-07-22 22:08:28.000000000 +0200
++++ autodocksuite-4.2.3/autodock/printEnergies.cc	2010-07-22 22:11:38.000000000 +0200
+@@ -42,11 +42,11 @@
+ 
+ #define print1000(file, x) pr(file,  ((fabs((x)) >= 0.0) && ((fabs(x)) <= 1000.)) ? "%+7.2f" : "%+11.2e" , (x));
+ 
+-void print1000_no_sign(FILE* file, double x) {
++void print1000_no_sign(FILE *const file, const double x) {
+     pr(file,  ((fabs((x)) >= 0.01) && ((fabs(x)) <= 1000.)) ? "%7.2f" : "%11.2e" , (x));
+ }
+ 
+-void print_molar(FILE* file, double x) {
++void print_molar(FILE *const file, const double x) {
+     // 1e-3  <= x < 1     mM millimolar
+     // 1e-6  <= x < 1e-3  uM micromolar
+     // 1e-9  <= x < 1e-6  nM nanomolar
+@@ -77,13 +77,13 @@
+     }
+ }
+ 
+-void printEnergies( EnergyBreakdown *eb,
+-                    const char *prefixString,
+-                    int  ligand_is_inhibitor,
+-                    Real emap_total,
+-                    Real elec_total,
+-                    Boole B_have_flexible_residues, 
+-                    Unbound_Model ad4_unbound_model
++void printEnergies( const EnergyBreakdown *const eb,
++                    const char *const prefixString,
++                    const int  ligand_is_inhibitor,
++                    const Real emap_total,
++                    const Real elec_total,
++                    const Boole B_have_flexible_residues, 
++                    const Unbound_Model ad4_unbound_model
+                    )
+ 
+ {
+@@ -172,7 +172,7 @@
+     pr( logFile, "%s\n", prefixString);
+ }
+ 
+-void printStateEnergies( EnergyBreakdown *eb, const char  *prefixString, int ligand_is_inhibitor )
++void printStateEnergies( const EnergyBreakdown *const eb, const char  *const prefixString, const int ligand_is_inhibitor )
+ {
+     // Real deltaG = 0.0;
+     Real Ki = 1.0;
+Index: autodocksuite-4.2.3/autodock/printEnergies.h
+===================================================================
+--- autodocksuite-4.2.3.orig/autodock/printEnergies.h	2010-07-22 22:11:42.000000000 +0200
++++ autodocksuite-4.2.3/autodock/printEnergies.h	2010-07-22 22:12:10.000000000 +0200
+@@ -31,15 +31,15 @@
+ #include "constants.h"
+ #include "structs.h"
+ 
+-void printEnergies( EnergyBreakdown *eb,
++void printEnergies( const EnergyBreakdown *const eb,
+                     const char  *prefixString, 
+-                    int ligand_is_inhibitor,
+-                    Real emap_total,
+-                    Real elec_total,
+-                    Boole B_have_flexible_residues,
+-                    Unbound_Model ad4_unbound_model);
++                    const int ligand_is_inhibitor,
++                    const Real emap_total,
++                    const Real elec_total,
++                    const Boole B_have_flexible_residues,
++                    const Unbound_Model ad4_unbound_model);
+ 
+-void printStateEnergies( EnergyBreakdown *eb,
+-			 const char  *prefixString, 
+-			 int ligand_is_inhibitor);
++void printStateEnergies( const EnergyBreakdown *eb,
++			 const char *const prefixString, 
++			 const int ligand_is_inhibitor);
+ #endif
+Index: autodocksuite-4.2.3/autodock/print_2x.cc
+===================================================================
+--- autodocksuite-4.2.3.orig/autodock/print_2x.cc	2010-07-22 22:01:36.000000000 +0200
++++ autodocksuite-4.2.3/autodock/print_2x.cc	2010-07-22 22:01:56.000000000 +0200
+@@ -32,9 +32,9 @@
+ #include "print_2x.h"
+ 
+ void
+-print_2x( FILE *stream1,
+-	  FILE *stream2,
+-	  const char *string )
++print_2x( FILE *const stream1,
++	  FILE *const stream2,
++	  const char *const string )
+ 
+ {
+ 	fprintf( stream1, string );
+Index: autodocksuite-4.2.3/autodock/print_avsfld.cc
+===================================================================
+--- autodocksuite-4.2.3.orig/autodock/print_avsfld.cc	2010-07-22 22:02:08.000000000 +0200
++++ autodocksuite-4.2.3/autodock/print_avsfld.cc	2010-07-23 20:16:17.000000000 +0200
+@@ -33,14 +33,14 @@
+ #include "autocomm.h"
+ 
+ 
+-void print_avsfld( FILE *logFile,
+-		   int veclen,
+-		   int natom,
+-		   int nframe,
+-		   int offset[VECLENMAX],
+-		   int stride,
+-		   char *label,
+-		   char *filename )
++void print_avsfld( FILE *const logFile,
++		   const int veclen,
++		   const int natom,
++		   const int nframe,
++		   const int offset[VECLENMAX],
++		   const int stride,
++		   const char *const label,
++		   const char *const filename )
+ {
+     int i;
+ 
+Index: autodocksuite-4.2.3/autodock/print_rem.cc
+===================================================================
+--- autodocksuite-4.2.3.orig/autodock/print_rem.cc	2010-07-22 22:12:41.000000000 +0200
++++ autodocksuite-4.2.3/autodock/print_rem.cc	2010-07-22 22:12:55.000000000 +0200
+@@ -32,11 +32,11 @@
+ #include "print_rem.h"
+ 
+ 
+-void print_rem( FILE *outFile,
+-		int Rank,
+-		int NumMem,
+-		int Run,
+-		Real ref_rms)
++void print_rem( FILE *const outFile,
++		const int Rank,
++		const int NumMem,
++		const int Run,
++		const Real ref_rms)
+ {
+     fprintf( outFile, "MODEL     %4d\n", Run );
+     fprintf( outFile, "USER    Run = %d\n", Run );
+Index: autodocksuite-4.2.3/autodock/printdate.cc
+===================================================================
+--- autodocksuite-4.2.3.orig/autodock/printdate.cc	2010-07-22 22:03:16.000000000 +0200
++++ autodocksuite-4.2.3/autodock/printdate.cc	2010-07-22 22:06:26.000000000 +0200
+@@ -39,7 +39,7 @@
+ 
+ #include "printdate.h"
+ 
+-void printdate( FILE *fp, int flag )
++void printdate( FILE *const fp, const int flag )
+ {
+     time_t tn; /* tn = "time_now" */
+     char *StringTimeDate;
+Index: autodocksuite-4.2.3/autodock/qmultiply.cc
+===================================================================
+--- autodocksuite-4.2.3.orig/autodock/qmultiply.cc	2010-07-22 22:13:04.000000000 +0200
++++ autodocksuite-4.2.3/autodock/qmultiply.cc	2010-07-23 00:57:47.000000000 +0200
+@@ -89,15 +89,13 @@
+ void mkUnitQuat( Quat *q )
+     // essentially, convertRotToQuat( Quat q )
+ {	
+-    double inv_nmag, hqang, s;
+-	     
+-    inv_nmag = 1. / hypotenuse( q->nx, q->ny, q->nz );
++    const double inv_nmag = 1. / hypotenuse( q->nx, q->ny, q->nz );
+     q->nx *= inv_nmag;       /* Normalize q */
+     q->ny *= inv_nmag;       /* Normalize q */
+     q->nz *= inv_nmag;       /* Normalize q */
+       
+-    hqang = 0.5 * q->ang;
+-    s     = sin( hqang );
++    const double hqang = 0.5 * q->ang;
++    const double s = sin( hqang );
+     
+     q->w  = cos( hqang );
+     q->x  = s * q->nx;
+@@ -107,26 +105,33 @@
+     /* q->qmag = hypotenuse4( q->x,  q->y,  q->z,  q->w  ); */
+ } // mkUnitQuat( Quat *q )
+ 
+-void printQuat_q( FILE *fp, Quat q )
++//FIXME: q could be passed by reference
++void printQuat_q( FILE *const fp, const Quat q )
+ {
+     (void) fprintf( fp, "Quat(x,y,z,w)=        %5.2f %5.2f %5.2f %5.2f\n", q.x, q.y, q.z, q.w);
+     (void) fprintf( fp, "Mag(Quat(x,y,z,w))=   %5.2f\n", sqrt(q.x*q.x + q.y*q.y + q.z*q.z + q.w*q.w) );
+ } // printQuat_q( Quat q )
+ 
+-void printQuat_r( FILE *fp, Quat q )
++//FIXME: convertQuatToRot should accept const, and the result
++//       be assigned to new variable to be then printed
++//       The variable should then be passed by reference
++void printQuat_r( FILE *const fp, const Quat qsave )
+ {
++    Quat q = qsave;
+     q = convertQuatToRot( q );
+     (void) fprintf( fp, "Axis(nx,ny,nz),Angle= %5.2f %5.2f %5.2f  %5.2f\n", q.nx, q.ny, q.nz, q.ang);
+     (void) fprintf( fp, "Mag(Axis(nx,ny,nz))=  %5.2f\n", sqrt(q.nx*q.nx + q.ny*q.ny + q.nz*q.nz) );
+ } // printQuat_r( Quat q )
+ 
+-void printQuat( FILE *fp, Quat q )
++//       The variable should then be passed by reference
++void printQuat( FILE *const fp, const Quat q )
+ {
+     printQuat_q( fp, q );
+     printQuat_r( fp, q );
+ } // printQuat( Quat q )
+ 
+-void debugQuat( FILE *fp, Quat q, unsigned int linenumber, char *message )
++//FIXME: q could be passed by reference
++void debugQuat( FILE *const fp, const Quat q, const unsigned int linenumber, const char *const message )
+ {
+     pr( fp, "DEBUG_QUAT: %s   (line %u)\n", message,  linenumber );
+     printQuat( fp, q );
+@@ -163,9 +168,9 @@
+ Quat normRot( Quat q )
+     // Normalise the 3D rotation axis or vector nx,ny,nz
+ {
+-    double mag3 = hypotenuse( q.nx, q.ny, q.nz );
++    const double mag3 = hypotenuse( q.nx, q.ny, q.nz );
+     if (mag3 > APPROX_ZERO) {
+-        double inv_mag3 = 1. / mag3;
++        const double inv_mag3 = 1. / mag3;
+         q.nx *= inv_mag3;
+         q.ny *= inv_mag3;
+         q.nz *= inv_mag3;
+@@ -187,6 +192,7 @@
+ }
+ 
+ 
++//FIXME: this routine does not need to change argument q, but it does
+ Quat convertQuatToRot( Quat q )
+     // Convert the quaternion components (x,y,z,w) of the quaternion q,
+     // to the corresponding rotation-about-axis components (nx,ny,nz,ang)
+@@ -218,6 +224,7 @@
+     angle = WrpModRad( angle );  // by convention, angles should be in the range -PI to +PI.
+     retval.ang = angle;
+ 
++    //FIXME: this should move to the top of the function to stop modifying q
+     // Copy the existing x,y,z,w components
+     retval.x = q.x;
+     retval.y = q.y;
+@@ -227,7 +234,8 @@
+     return retval;
+ } // convertQuatToRot( Quat q )
+ 
+-Quat convertRotToQuat( Quat q )
++//FIXME: unchanged so it could be passed by reference
++Quat convertRotToQuat( const Quat q )
+     // Normalize the rotation-about-axis vector 
+     // and convert the rotation-about-axis components (nx,ny,nz,ang)
+     // to the corresponding quaternion components (x,y,z,w)
+@@ -254,7 +262,7 @@
+     return retval;
+ } // Quat convertRotToQuat( Quat q )
+ 
+-Quat raaToQuat( const Real raa[3], Real angle )
++Quat raaToQuat( const Real raa[3], const Real angle )
+ {
+     Quat input;
+ 
+@@ -289,7 +297,7 @@
+     return q;
+ }
+ 
+-Quat uniformQuatByAmount( Real amount )
++Quat uniformQuatByAmount( const Real amount )
+     // returns a quaternion from a random axis and specified angle
+     // amount is an angle in radians
+ {
+@@ -299,7 +307,7 @@
+     return q;
+ }
+ 
+-void unitQuat2rotation( Quat *q )
++void unitQuat2rotation( Quat *const q )
+     // Convert from a unit quaternion to a rotation about an unit 3D-vector
+ {
+     double inv_sin_half_ang;
+@@ -313,7 +321,8 @@
+     return;
+ }
+ 
+-void print_q_reorient_message( FILE *logFile, Quat q_reorient )
++//FIXME: q_reorient should be passed by reference
++void print_q_reorient_message( FILE *const logFile, const Quat q_reorient )
+     // Print message about q_reorient
+ {
+     pr( logFile, "\nRe-orienting the ligand using the following axis (nx, ny, nz) and angle values:\n");
+@@ -328,13 +337,12 @@
+     return;
+ } // Print message about q_reorient
+ 
+-void create_random_orientation( Quat *ptr_quat ) 
++void create_random_orientation( Quat *const ptr_quat ) 
+ {
+     // Generate a random initial orientation for the ligand
+-    Quat q_random;
+     // Generate a uniformly-distributed quaternion:
+     // setting the x,y,z,w components
+-    q_random = uniformQuat();
++    const Quat q_random = uniformQuat();
+     ptr_quat->x = q_random.x;
+     ptr_quat->y = q_random.y;
+     ptr_quat->z = q_random.z;
+@@ -343,6 +351,7 @@
+     *ptr_quat = convertQuatToRot( *ptr_quat );
+ }
+ 
++//FIXME: should be passed by reference
+ Quat conjugate( const Quat q )
+ {
+     Quat conj;
+@@ -355,6 +364,7 @@
+     return conj;
+ }
+ 
++//FIXME: reference
+ Quat inverse( const Quat q )
+ {
+     register Quat conj, inv;
+@@ -372,6 +382,7 @@
+     return inv;
+ }
+ 
++//FIXME: reference
+ Quat slerp0( const Quat q1, const Quat q2, const double u )
+     // See: Shoemake, K. (1985), "Animating Rotation with Quaternion Curves", 
+     //      Computer Graphics, 19 (3): 245-254
+@@ -410,7 +421,7 @@
+     assert( t >= 0.  &&  t <= 1. );
+ 
+ 	// Calculate angle between them.
+-	double cosHalfTheta = qa.w * qb.w + qa.x * qb.x + qa.y * qb.y + qa.z * qb.z;
++	const double cosHalfTheta = qa.w * qb.w + qa.x * qb.x + qa.y * qb.y + qa.z * qb.z;
+ 	// if qa=qb or qa=-qb then theta = 0 and we can return qa
+ 	if (fabs(cosHalfTheta) >= 1.0){
+ 		qm.w = qa.w;qm.x = qa.x;qm.y = qa.y;qm.z = qa.z;
+@@ -492,16 +503,16 @@
+ 
+     assert( t >= 0.  &&  t <= 1. );
+ 
+-	// Calculate angle between them.
+-	double cosHalfTheta = qa.w * qb.w + qa.x * qb.x + qa.y * qb.y + qa.z * qb.z;
++    // Calculate angle between them.
++    double cosHalfTheta = qa.w * qb.w + qa.x * qb.x + qa.y * qb.y + qa.z * qb.z;
+     // Ensure we choose the shorter angular displacement between qa and qb:
+-	if (cosHalfTheta < 0.) {
++    if (cosHalfTheta < 0.) {
+         cosHalfTheta = -cosHalfTheta;
+         qb_local.w = -qb.w;
+         qb_local.x = -qb.x;
+         qb_local.y = -qb.y;
+         qb_local.z = -qb.z;
+-	} else {
++    } else {
+         qb_local = qb;
+     }
+ #ifdef ASSERTQUATOK
+Index: autodocksuite-4.2.3/autodock/qmultiply.h
+===================================================================
+--- autodocksuite-4.2.3.orig/autodock/qmultiply.h	2010-07-22 22:25:37.000000000 +0200
++++ autodocksuite-4.2.3/autodock/qmultiply.h	2010-07-22 22:29:53.000000000 +0200
+@@ -32,8 +32,8 @@
+ #include "structs.h"
+ 
+ Quat uniformQuat( void );
+-Quat convertQuatToRot( Quat q );
+-Quat convertRotToQuat( Quat q );
++Quat convertQuatToRot( /* not const */ Quat q );
++Quat convertRotToQuat( const Quat q );
+ Quat raaToQuat( const Real raa[3], Real angle );
+ Quat normQuat( Quat q );
+ Quat normRot( Quat q );
+@@ -51,16 +51,16 @@
+ void qmultiply( Quat *q, register const Quat *ql, register const Quat *qr );
+ void qconjmultiply( Quat *q, register const Quat *ql, register const Quat *qr );
+ void mkUnitQuat( Quat *q );
+-void printQuat_q( FILE *fp, Quat q );
+-void printQuat_r( FILE *fp, Quat q );
+-void printQuat( FILE *fp, Quat q );
+-void debugQuat( FILE *fp, Quat q, unsigned int linenumber, char *message );
+-Quat uniformQuatByAmount( Real amount );
+-void unitQuat2rotation( Quat *q );
+-void print_q_reorient_message( FILE *logFile, Quat q_reorient );
+-void create_random_orientation( Quat *ptr_quat );
++void printQuat_q( FILE *const fp, const Quat q );
++void printQuat_r( FILE *const fp, const Quat q );
++void printQuat( FILE *const fp, const Quat q );
++void debugQuat( FILE *const fp, const Quat q, const unsigned int linenumber, const char *message );
++Quat uniformQuatByAmount( const Real amount );
++void unitQuat2rotation( Quat *const q );
++void print_q_reorient_message( FILE *const logFile, const Quat q_reorient );
++void create_random_orientation( Quat *const ptr_quat );
+ //void assertQuatOK( const Quat q );
+ const Quat identityQuat();
+-Real a_range_reduction( Real a );
+-Real alerp( Real a, Real b, Real fract );
++Real a_range_reduction( const Real a );
++Real alerp( const Real a, const Real b, const Real fract );
+ #endif
+Index: autodocksuite-4.2.3/autodock/qtransform.cc
+===================================================================
+--- autodocksuite-4.2.3.orig/autodock/qtransform.cc	2010-07-22 22:31:44.000000000 +0200
++++ autodocksuite-4.2.3/autodock/qtransform.cc	2010-07-22 22:33:30.000000000 +0200
+@@ -126,12 +126,12 @@
+     }
+ }
+ 
+-void reorient( FILE *logFile, 
++void reorient( FILE *const logFile, 
+                const int true_ligand_atoms, 
+-               char atomstuff[MAX_ATOMS][MAX_CHARS],
++               const char atomstuff[MAX_ATOMS][MAX_CHARS],
+                Real crdpdb[MAX_ATOMS][SPACE],  // original PDB coordinates from input
+                Real charge[MAX_ATOMS],
+-               int type[MAX_ATOMS],
++               const int type[MAX_ATOMS],
+                ParameterEntry  parameterArray[MAX_ATOM_TYPES],
+                Quat q_reorient,
+                Coord origin,
+Index: autodocksuite-4.2.3/autodock/readGridMap.cc
+===================================================================
+--- autodocksuite-4.2.3.orig/autodock/readGridMap.cc	2010-07-22 22:36:06.000000000 +0200
++++ autodocksuite-4.2.3/autodock/readGridMap.cc	2010-07-22 22:38:35.000000000 +0200
+@@ -45,6 +45,7 @@
+ 
+ char mapf2c(Real);
+ 
++//FIXME: well, one could pass tmsJobStart by reference
+ void readmap( Boole *P_B_HaveMap, 
+              int *P_imap, 
+              int *num_atom_types, 
+@@ -53,17 +54,17 @@
+              char *ExtFldFileName,
+              int ExtGridPts1[SPACE],
+              int ExtGridPts[SPACE],
+-             Clock jobStart,
++             const Clock jobStart,
+              char line[LINE_LEN],
+              char *ExtMacromolFileName,
+                 #include "map_declare.h"
+              Real MapCenter[SPACE],
+              Real MapMax[MAX_MAPS],
+              Real MapMin[MAX_MAPS],
+-             struct tms tmsJobStart,
+-             Boole B_charMap,
+-             int outlev,
+-             GridMap grid_map)
++             const struct tms tmsJobStart,
++             const Boole B_charMap,
++             int outlev, //FIXME: unused
++             GridMap grid_map) //FIXME: unused
+ 
+ {
+     FILE *mapFilePtr;
+Index: autodocksuite-4.2.3/autodock/readPDBQT.cc
+===================================================================
+--- autodocksuite-4.2.3.orig/autodock/readPDBQT.cc	2010-07-22 22:45:03.000000000 +0200
++++ autodocksuite-4.2.3/autodock/readPDBQT.cc	2010-07-22 22:54:24.000000000 +0200
+@@ -54,44 +54,44 @@
+ 
+ /*----------------------------------------------------------------------------*/
+ Molecule readPDBQT(char input_line[LINE_LEN],
+-                    int num_atom_maps,
++                    const int num_atom_maps,
+ 
+-                    int *P_natom,
++                    int *const P_natom,
+                     Real crdpdb[MAX_ATOMS][NTRN],
+                     Real crdreo[MAX_ATOMS][NTRN],
+                     Real charge[MAX_ATOMS],
+-                    Boole * P_B_haveCharges,
++                    Boole *const P_B_haveCharges,
+                     int map_index[MAX_ATOMS], //was:int type[MAX_ATOMS]
+                     int bond_index[MAX_ATOMS],
+                     char pdbaname[MAX_ATOMS][5],
+ 
+-                    char *FN_ligand,
+-                    char *FN_flexres,
+-                    Boole B_have_flexible_residues,
++                    char *const FN_ligand,
++                    char *const FN_flexres,
++                    const Boole B_have_flexible_residues,
+ 
+                     char atomstuff[MAX_ATOMS][MAX_CHARS],
+-                    int *P_n_heavy_atoms_in_ligand,
++                    int *const P_n_heavy_atoms_in_ligand,
+ 
+-                    Boole * P_B_constrain,
+-                    int *P_atomC1,
+-                    int *P_atomC2,
+-                    Real *P_sqlower,
+-                    Real *P_squpper,
+-
+-                    int *P_ntor1,
+-                    int *P_ntor,
+-                    int *P_ntor_ligand,   // the number of torsions in the ligand (excluding the flexible residues in receptor)
++                    Boole *const P_B_constrain,
++                    int *const P_atomC1,
++                    int *const P_atomC2,
++                    Real *const P_sqlower,
++                    Real *const P_squpper,
++
++                    int *const P_ntor1,
++                    int *const P_ntor,
++                    int *const P_ntor_ligand,   // the number of torsions in the ligand (excluding the flexible residues in receptor)
+                     int tlist[MAX_TORS][MAX_ATOMS],
+                     Real vt[MAX_TORS][NTRN],
+ 
+-                    int *P_Nnb,
+-                    NonbondParam *nonbondlist,
++                    int *const P_Nnb,
++                    NonbondParam *const nonbondlist,
+ 
+-                    Clock jobStart,
+-                    struct tms tms_jobStart,
+-                    char *hostnm,
+-                    int *P_ntorsdof,
+-                    int outlev,
++                    const Clock jobStart,
++                    const struct tms tms_jobStart,
++                    const char *const hostnm,
++                    int *const P_ntorsdof,
++                    const int outlev,
+                     int ignore_inter[MAX_ATOMS],
+                     int B_include_1_4_interactions,
+ 
+@@ -638,10 +638,10 @@
+ 
+ void
+ readPDBQTLine( char line[LINE_LEN],
+-               int  *ptr_serial,
++               int  *const ptr_serial,
+                Real crd[SPACE],
+-               Real *ptr_q,
+-               ParameterEntry *this_parameter_entry )
++               Real *const ptr_q,
++               ParameterEntry *const this_parameter_entry )
+ /*----------------------------------------------------------------------------*/
+ {
+     char char8[9];
+Index: autodocksuite-4.2.3/autodock/read_parameter_library.cc
+===================================================================
+--- autodocksuite-4.2.3.orig/autodock/read_parameter_library.cc	2010-07-22 22:42:09.000000000 +0200
++++ autodocksuite-4.2.3/autodock/read_parameter_library.cc	2010-07-22 22:44:52.000000000 +0200
+@@ -42,13 +42,13 @@
+ extern Linear_FE_Model AD4;
+ 
+ 
+-Boole string_begins_with(char *a, char *b);
+-Boole string_ends_with(char *a, char *b);
++Boole string_begins_with(const char *a, const char *b);
++Boole string_ends_with(const char *a, const char *b);
+ static char parameter_library[MAX_CHARS];
+ 
+ void read_parameter_library(
+-        char *FN_parameter_library,
+-        int outlev
++        const char *const FN_parameter_library,
++        const int outlev
+         )
+ {
+     static ParameterEntry thisParameter;
+@@ -190,7 +190,7 @@
+     } // while there is another line of parameters to read in
+ }
+ 
+-void setup_parameter_library( int outlev, const char * model_text, Unbound_Model unbound_model )
++void setup_parameter_library( const int outlev, const char *const model_text, const Unbound_Model unbound_model )
+ {
+     static ParameterEntry thisParameter;
+     char parameter_library_line[LINE_LEN];
+Index: autodocksuite-4.2.3/autodock/readfield.cc
+===================================================================
+--- autodocksuite-4.2.3.orig/autodock/readfield.cc	2010-07-22 22:34:10.000000000 +0200
++++ autodocksuite-4.2.3/autodock/readfield.cc	2010-07-22 22:35:32.000000000 +0200
+@@ -38,10 +38,11 @@
+ 
+ extern FILE *logFile;
+ 
++//FIXME: tms_jobStart could be passed by reference
+ void readfield( GridMapSetInfo *info,
+                 char line[LINE_LEN],
+-                Clock jobStart,
+-                struct tms tms_jobStart )
++                const Clock jobStart,
++                const struct tms tms_jobStart )
+ 
+ 
+ {
+Index: autodocksuite-4.2.3/autodock/readmap.cc
+===================================================================
+--- autodocksuite-4.2.3.orig/autodock/readmap.cc	2010-07-22 22:38:51.000000000 +0200
++++ autodocksuite-4.2.3/autodock/readmap.cc	2010-07-23 20:26:10.000000000 +0200
+@@ -44,19 +44,22 @@
+ extern FILE *logFile;
+ extern int debug;
+ 
+-char mapf2c(Real);
++// char mapf2c(const Real); // not used
+ 
+-Statistics readmap( char           line[LINE_LEN],
+-                    int            outlev,
+-                    Clock          jobStart,
+-                    struct tms     tmsJobStart,
+-                    Boole          B_charMap,
+-                    Boole          *P_B_HaveMap, 
+-                    int            num_maps, 
+-                    GridMapSetInfo *info,
+-                    Real           map[MAX_GRID_PTS][MAX_GRID_PTS][MAX_GRID_PTS][MAX_MAPS],
++Statistics readmap( char                          line[LINE_LEN],
++                    const int                     outlev, // unused
++                    const Clock                   jobStart,
++                    struct tms                    tmsJobStart,
++                    const Boole                   B_charMap,
++                    /* not const */ Boole * const P_B_HaveMap, 
++                    const int                     num_maps, 
++                    const GridMapSetInfo *const   info,
++			
++		    // taken from .h file:
++				#include "map_declare.h"
++                    // orig line:  Real          map[MAX_GRID_PTS][MAX_GRID_PTS][MAX_GRID_PTS][MAX_MAPS],
+                     // double *maps 
+-                    char           map_type
++                    const char                    map_type
+                   )
+ 
+ {
+@@ -320,7 +323,7 @@
+ 
+ 
+ /*
+-    char mapf2c(Real numin)
++    char mapf2c(const Real numin)
+     {
+         char numout;
+         if (numin == 0.) {
+Index: autodocksuite-4.2.3/autodock/setflags.cc
+===================================================================
+--- autodocksuite-4.2.3.orig/autodock/setflags.cc	2010-07-22 23:05:27.000000000 +0200
++++ autodocksuite-4.2.3/autodock/setflags.cc	2010-07-23 20:18:19.000000000 +0200
+@@ -45,14 +45,13 @@
+ extern char *programname;
+ 
+ extern char dock_param_fn[];
+-extern char AutoDockHelp[];
+ extern int  debug;
+ extern int  ignore_errors;
+ extern int  parse_tors_mode;
+ extern int  keepresnum;
+ 
+ 
+-int setflags( int argc, char ** argv, const char * version_num)
++int setflags( /* not const */ int argc, const char ** /* not const */ argv, const char *const version_num)
+ 
+ /*
+ ** naming convention: 
+@@ -97,11 +96,12 @@
+ /* Initialize                                                                 */
+ /*----------------------------------------------------------------------------*/
+     argindex = 1;
+-    programname = argv[0];
++    if (programname) free(programname);
++    programname = strdup(argv[0]); // argv is const, only executed once
+     parFile = stdin;
+     logFile = stdout;
+     char logFileName[PATH_MAX+2];
+-    static char * p_logFileName = "stdout"; // change with -l <NAME> or defaults
++    static char * p_logFileName = strdup("stdout"); // change with -l <NAME> or defaults
+      // to parFile name with last 3 chars changed from "dpf" to "dlg"
+     /*
+      * see autoglobal.h for initialization of debug, keepresnum and logicals...
+@@ -150,7 +150,8 @@
+             fprintf(stderr, "\n%s: command mode is not supported in this version of autodock\n", programname );
+             break;
+         case 'l':
+-	    p_logFileName = argv[2];
++	    if (p_logFileName) free(p_logFileName);
++	    p_logFileName = strdup(argv[2]);
+             argv++;
+             argc--;
+             argindex++;
+Index: autodocksuite-4.2.3/autodock/stack.cc
+===================================================================
+--- autodocksuite-4.2.3.orig/autodock/stack.cc	2010-07-22 22:54:37.000000000 +0200
++++ autodocksuite-4.2.3/autodock/stack.cc	2010-07-22 22:57:24.000000000 +0200
+@@ -7,7 +7,7 @@
+ #include <stdio.h>
+ #include "stack.h"
+ 
+-stack stack_create(int maxsize) 
++stack stack_create(const int maxsize) 
+ {
+     stack s;
+     s = (integer_stack_t *) malloc( sizeof(integer_stack_t) );
+@@ -34,7 +34,7 @@
+     return s->base[s->top];
+ }
+ 
+-void  stack_push(stack s, int i)
++void  stack_push(stack s, const int i)
+ {
+     if (s->trace != NULL) fprintf(s->trace, "Stack(%d/%d) push %d\n",
+         s->top, s->size,i);
+@@ -49,19 +49,20 @@
+     return;
+ }
+ 
+-int stack_depth(stack s)
++int stack_depth(const stack s)
+ {
+     if (s->trace != NULL) fprintf(s->trace, "Stack depth %d/%d\n",
+         s->top, s->size);
+     return s->top;
+ }
+ 
+-int stack_size(stack s)
++int stack_size(const stack s)
+ {
+     return s->size;
+ }
+ 
+-void stack_trace(stack s, FILE *f)
++//FIXME: s could be passed by reference
++void stack_trace(const stack s, FILE *const f)
+ {
+     if (f==NULL && s->trace != NULL) fprintf(s->trace, "Stack trace off\n");
+     s->trace = f;
+Index: autodocksuite-4.2.3/autodock/stack.h
+===================================================================
+--- autodocksuite-4.2.3.orig/autodock/stack.h	2010-07-22 22:57:26.000000000 +0200
++++ autodocksuite-4.2.3/autodock/stack.h	2010-07-22 22:58:08.000000000 +0200
+@@ -10,12 +10,12 @@
+ 
+ typedef integer_stack_t * stack;
+ 
+-stack stack_create(int size);
++stack stack_create(const int size);
+ int   stack_pop(stack s);
+ void  stack_push(stack s, int i);
+-int   stack_size(stack s);
+-void  stack_trace(stack s, FILE *f);
++int   stack_size(const stack s);
++void  stack_trace(const stack s, FILE *f);
+ int   stack_test(void);
+-int   stack_depth(stack s);
++int   stack_depth(const stack s);
+ 
+ #endif
+Index: autodocksuite-4.2.3/autodock/stateLibrary.cc
+===================================================================
+--- autodocksuite-4.2.3.orig/autodock/stateLibrary.cc	2010-07-22 22:58:45.000000000 +0200
++++ autodocksuite-4.2.3/autodock/stateLibrary.cc	2010-07-22 23:01:40.000000000 +0200
+@@ -62,7 +62,7 @@
+ }
+ 
+ void copyState( State *D,  /* Destination -- copy to here */
+-                    State  S ) /* Source      -- copy this.   */
++                const State S ) /* Source      -- copy this.   */
+ {
+     register int i;
+         
+@@ -104,7 +104,7 @@
+ }
+ 
+ void printState( FILE *const fp, 
+-                 State S, 
++                 /* not const */ State S, 
+                  const int detail )
+ {
+     register int i;
+@@ -153,7 +153,7 @@
+     }
+ }
+ 
+-void writeState( FILE *const fp, State S )
++void writeState( FILE *const fp, /* not const */ State S )
+ {
+     register int i;
+     Real torDegTmp;
+Index: autodocksuite-4.2.3/autodock/stateLibrary.h
+===================================================================
+--- autodocksuite-4.2.3.orig/autodock/stateLibrary.h	2010-07-22 23:00:39.000000000 +0200
++++ autodocksuite-4.2.3/autodock/stateLibrary.h	2010-07-22 23:01:56.000000000 +0200
+@@ -35,14 +35,14 @@
+ void initialiseQuat( Quat *Q );
+ 
+ void copyState( State *destination,
+-		State  source);
++		const State source);
+ 
+ void printState( FILE *const fp,
+-		 State state, 
++		 /* not const */ State state, 
+ 		 const int detail );
+ 
+ void writeState( FILE *const fp, 
+-		 State state );
++		 /* not const */ State state );
+ 
+ int checkState( const State *D );
+ 
+Index: autodocksuite-4.2.3/autodock/success.cc
+===================================================================
+--- autodocksuite-4.2.3.orig/autodock/success.cc	2010-07-22 22:50:38.000000000 +0200
++++ autodocksuite-4.2.3/autodock/success.cc	2010-07-23 01:07:57.000000000 +0200
+@@ -39,9 +39,9 @@
+ extern char *programname;
+ extern FILE *logFile;
+ 
+-void success( char *hostnm,
+-		Clock jobStart,
+-		struct tms tms_jobStart )
++void success( const char *const hostnm,
++	      const Clock jobStart,
++	      struct tms tms_jobStart )
+ 
+ {
+     char message[LINE_LEN];
+Index: autodocksuite-4.2.3/autodock/support.cc
+===================================================================
+--- autodocksuite-4.2.3.orig/autodock/support.cc	2010-07-22 23:02:05.000000000 +0200
++++ autodocksuite-4.2.3/autodock/support.cc	2010-07-22 23:03:13.000000000 +0200
+@@ -193,11 +193,11 @@
+    //}
+ //}
+ 
+-void Population::print(FILE *output, const int num) const {
++void Population::print(FILE *const output, const int num) const {
+    register int i;
+ 
+ #ifdef DEBUG
+-   (void)fprintf(logFile, "support.cc/void Population::print(FILE *output, int num=%d)\n", num);
++   (void)fprintf(logFile, "support.cc/void Population::print(FILE *const output, int num=%d)\n", num);
+ #endif /* DEBUG */
+ 
+    (void)fprintf( output, "The top %d individuals in the population:\n\n", num);
+@@ -246,7 +246,7 @@
+   
+    
+ 
+-int Population::printPopulationStatistics(FILE *output, const int level, const Boole appendNewline) const {
++int Population::printPopulationStatistics(FILE *const output, const int level, const Boole appendNewline) const {
+ // write best energy, etc, depending on level
+ // return 0 if OK, non-zero if error
+ // Code adapted from gs.cc  - M Pique  December 2009
+@@ -335,7 +335,7 @@
+     if(appendNewline) fprintf(output, "\n");
+     return returnCode;
+  }
+-int Population::printPopulationStatisticsVerbose(FILE * output, 
++int Population::printPopulationStatisticsVerbose(FILE *const output, 
+  const unsigned int generations, const long int nevals, const char suffix[]) const { /* print with generations & #evals */
+ int returnCode=0;
+    // print "Population at Generation:" line with low/high/mean/median/stddev...
+@@ -347,7 +347,7 @@
+ }
+  	
+ 
+-void Population::printPopulationAsStates(FILE *output, const int num, const int ntor) const {
++void Population::printPopulationAsStates(FILE *const output, const int num, const int ntor) const {
+    register int i;
+ #ifdef DEBUG2
+    register int j;
+@@ -356,7 +356,7 @@
+    double thisValue;
+ 
+ #ifdef DEBUG
+-   (void)fprintf(logFile, "support.cc/void Population::printPopulationAsStates(FILE *output, int num=%d, int ntor=%d)\n", num, ntor);
++   (void)fprintf(logFile, "support.cc/void Population::printPopulationAsStates(FILE *const output, int num=%d, int ntor=%d)\n", num, ntor);
+ #endif /* DEBUG */
+ 
+    // Print an XML-like tag indicating this is a population, with attribute size
+@@ -385,12 +385,12 @@
+    (void)fprintf( output, "</population>\n");
+ }
+ 
+-void Population::printPopulationAsCoordsEnergies(FILE *output, const int num, const int ntor) const {
++void Population::printPopulationAsCoordsEnergies(FILE *const output, const int num, const int ntor) const {
+    register int i;
+    double thisValue;
+ 
+ #ifdef DEBUG
+-   (void)fprintf(logFile, "support.cc/void Population::printPopulationAsCoordsEnergies(FILE *output, int num=%d, int ntor=%d)\n", num, ntor);
++   (void)fprintf(logFile, "support.cc/void Population::printPopulationAsCoordsEnergies(FILE *const output, int num=%d, int ntor=%d)\n", num, ntor);
+ #endif // DEBUG
+ 
+    //(void)fprintf( output, "The top %d individuals in the population:\n\n", num);
+@@ -954,10 +954,10 @@
+     returnedMol = &molcopy;
+ }
+ 
+-void Individual::printIndividualsState(FILE *filePtr, const int ntor, const int detail) const
++void Individual::printIndividualsState(FILE *const filePtr, const int ntor, const int detail) const
+ {
+ #ifdef DEBUG
+-   (void)fprintf(logFile, "support.cc/void Individual::printIndividualsState(FILE *filePtr, int ntor=%d, int detaiil=%d)\n", ntor, detail);
++   (void)fprintf(logFile, "support.cc/void Individual::printIndividualsState(FILE *const filePtr, int ntor=%d, int detaiil=%d)\n", ntor, detail);
+ #endif /* DEBUG */
+ 
+     printState( filePtr, state(ntor), detail ); 
+Index: autodocksuite-4.2.3/autodock/support.h
+===================================================================
+--- autodocksuite-4.2.3.orig/autodock/support.h	2010-07-22 23:03:17.000000000 +0200
++++ autodocksuite-4.2.3/autodock/support.h	2010-07-22 23:03:45.000000000 +0200
+@@ -251,7 +251,7 @@
+       double value(EvalMode); /* evaluation of the individual gives its value */
+       State state(int) const; /* state variables in AutoDock */
+       void  getMol(Molecule *); /* converts phenotype to mol's state and returns this individual's mol data */
+-      void printIndividualsState(FILE *, const int, const int) const; /* print out the state of this individual */
++      void printIndividualsState(FILE *const, const int, const int) const; /* print out the state of this individual */
+       void incrementAge(); /* make individual grow 1 generation older */
+       int serial; // serial number of this individual
+ };
+@@ -279,11 +279,11 @@
+       unsigned int num_individuals(void) const; /* returns the size of the pop. */
+       void msort(int); /* sorts the first m individuals using heap properties */
+       // void print(ostream &, int); /* prints top int energies */
+-      void print(FILE *, const int) const; /* like above */
+-      int printPopulationStatistics(FILE *, const int, const Boole) const; /* prints best, worse, mean, etc energies */
+-      int printPopulationStatisticsVerbose(FILE *, const unsigned int, const long int, const char []) const; /* print with generations & #evals */
+-      void printPopulationAsStates(FILE *, const int, const int) const; /*prints energies,states of top energies */
+-      void printPopulationAsCoordsEnergies(FILE *, const int, const int) const; /*prints energies,states of top energies */
++      void print(FILE *const, const int) const; /* like above */
++      int printPopulationStatistics(FILE *const, const int, const Boole) const; /* prints best, worse, mean, etc energies */
++      int printPopulationStatisticsVerbose(FILE *const, const unsigned int, const long int, const char []) const; /* print with generations & #evals */
++      void printPopulationAsStates(FILE *const, const int, const int) const; /*prints energies,states of top energies */
++      void printPopulationAsCoordsEnergies(FILE *const, const int, const int) const; /*prints energies,states of top energies */
+       void set_eob(const int init_end_of_branch[MAX_TORS]); // For Branch Crossover Mode
+       int get_eob(const int init_tor) const; // For Branch Crossover Mode
+ };
+Index: autodocksuite-4.2.3/autodock/usage.cc
+===================================================================
+--- autodocksuite-4.2.3.orig/autodock/usage.cc	2010-07-22 23:04:03.000000000 +0200
++++ autodocksuite-4.2.3/autodock/usage.cc	2010-07-22 23:04:59.000000000 +0200
+@@ -32,13 +32,11 @@
+ #include "usage.h"
+ 
+ 
+-extern char    AutoDockHelp[];
+-
+ /*----------------------------------------------------------------------------*/
+-void usage( FILE * file, char * programname )
++void usage( FILE *const file, const char *const programname )
+ /*----------------------------------------------------------------------------*/
+ {
+-    char    AutoDockHelp[] = \
++    const char AutoDockHelp[] = \
+     "\t-p parameter_filename\n" \
+     "\t\t\t-l log_filename\n" \
+     "\t\t\t-k (Keep original residue numbers)\n" \
+Index: autodocksuite-4.2.3/autodock/writePDBQT.cc
+===================================================================
+--- autodocksuite-4.2.3.orig/autodock/writePDBQT.cc	2010-07-22 23:06:53.000000000 +0200
++++ autodocksuite-4.2.3/autodock/writePDBQT.cc	2010-07-23 00:36:33.000000000 +0200
+@@ -45,47 +45,47 @@
+ extern Real nb_group_energy[3];
+ 
+ void
+-writePDBQT(int irun, FourByteLong seed[2],
++writePDBQT(const int irun, const FourByteLong seed[2],
+ 
+-		 char *smFileName,
+-		 char *dpfFN,
+-		 Real sml_center[SPACE],
+-		 State state,
+-		 int ntor,
+-		 Real * Ptr_eintra,
+-		 Real * Ptr_einter,
+-		 int natom,
+-		 char atomstuff[MAX_ATOMS][MAX_CHARS],
+-		 Real crd[MAX_ATOMS][SPACE],
+-		 Real emap[MAX_ATOMS],
+-		 Real elec[MAX_ATOMS],
+-		 Real charge[MAX_ATOMS],
+-		 Real abs_charge[MAX_ATOMS],
+-		 Real qsp_abs_charge[MAX_ATOMS],
+-		 int ligand_is_inhibitor,
+-		 Real torsFreeEnergy,
+-		 Real vt[MAX_TORS][SPACE],
+-		 int tlist[MAX_TORS][MAX_ATOMS],
+-		 Real crdpdb[MAX_ATOMS][SPACE],
+-		 NonbondParam *nonbondlist,
+-         EnergyTables *ptr_ad_energy_tables,
+-		 int type[MAX_ATOMS],  // aka 'map_index' in 'ParameterEntry' structures
+-		 int Nnb,
+-		 Boole B_calcIntElec,
++		 const char *const smFileName,
++		 const char *const dpfFN,
++		 const Real sml_center[SPACE],
++		 /* not const */ State state,
++		 const int ntor,
++		 /* not const */ Real *const  Ptr_eintra,
++		 /* not const */ Real *const  Ptr_einter,
++		 const int natom,
++		 const char atomstuff[MAX_ATOMS][MAX_CHARS],
++		 /* not const */ Real crd[MAX_ATOMS][SPACE],
++		 /* not const */ Real emap[MAX_ATOMS],
++		 /* not const */ Real elec[MAX_ATOMS],
++		 const Real charge[MAX_ATOMS],
++		 const Real abs_charge[MAX_ATOMS],
++		 const Real qsp_abs_charge[MAX_ATOMS],
++		 const int ligand_is_inhibitor,
++		 const Real torsFreeEnergy,
++		 const Real vt[MAX_TORS][SPACE],
++		 const int tlist[MAX_TORS][MAX_ATOMS],
++		 const Real crdpdb[MAX_ATOMS][SPACE],
++		 const NonbondParam *nonbondlist,
++         const EnergyTables *ptr_ad_energy_tables,
++		 const int type[MAX_ATOMS],  // aka 'map_index' in 'ParameterEntry' structures
++		 const int Nnb,
++		 const Boole B_calcIntElec,
+          #include "map_declare.h"
+-		 int outlev,
+-		 int ignore_inter[MAX_ATOMS],
++		 const int outlev,
++		 const int ignore_inter[MAX_ATOMS],
+ 		 const Boole B_include_1_4_interactions,
+ 		 const Real scale_1_4,
+          const ParameterEntry parameterArray[MAX_ATOM_TYPES],
+ 		 const Real unbound_internal_FE,
+ 
+-         GridMapSetInfo *info,
+-         int state_type,  // 0 means the state is unbound, 1 means the state is docked
+-         char PDBQT_record[MAX_RECORDS][LINE_LEN],
+-         Boole B_use_non_bond_cutoff,
+-         Boole B_have_flexible_residues,
+-         Unbound_Model ad4_unbound_model
++         const GridMapSetInfo *info,
++         const int state_type,  // 0 means the state is unbound, 1 means the state is docked
++         const char PDBQT_record[MAX_RECORDS][LINE_LEN],
++         const Boole B_use_non_bond_cutoff,
++         const Boole B_have_flexible_residues,
++         const Unbound_Model ad4_unbound_model
+          )
+ 
+ {
+@@ -314,7 +314,7 @@
+     } // outlev > -1
+ } // writePDBQT()
+ 
+-void print_PDBQT( FILE *logFile, 
++void print_PDBQT( FILE *const logFile, 
+                   const int true_ligand_atoms,
+                   const char atomstuff[MAX_ATOMS][MAX_CHARS],
+                   const Real crdpdb[MAX_ATOMS][SPACE],
+@@ -338,15 +338,15 @@
+     pr( logFile, "\n\n" );
+ } // end Print out the coordinates
+ 
+-void print_PDBQ_atom_resstr( FILE *logFile, 
++void print_PDBQ_atom_resstr( FILE *const logFile, 
+                   const char prefix[MAX_CHARS],
+-                  int atom_num, // 0-origin 
++                  const int atom_num, // 0-origin 
+                   const char atomstuff[],
+                   const Real crd[MAX_ATOMS][SPACE],
+                   const Real vdW,
+                   const Real Elec,
+                   const Real charge,
+-                  const char * suffix //newline or empty
++                  const char *const suffix //newline or empty
+                   )
+ {
+     char  rec15[16];
+@@ -358,16 +358,16 @@
+        vdW, Elec,  charge, suffix);
+ }
+ 
+-void print_PDBQ_atom_resnum( FILE *logFile, 
++void print_PDBQ_atom_resnum( FILE *const logFile, 
+                   const char prefix[MAX_CHARS],
+-                  int atom_num, // 0-origin 
++                  const int atom_num, // 0-origin 
+                   const char atomstuff[],
+                   const int resnum,
+                   const Real crd[MAX_ATOMS][SPACE],
+                   const Real vdW,
+                   const Real Elec,
+                   const Real charge,
+-                  const char * suffix //newline or empty
++                  const char *const suffix //newline or empty
+                   )
+ {
+     char  rec10[11];
+Index: autodocksuite-4.2.3/autodock/check_header_line.cc
+===================================================================
+--- autodocksuite-4.2.3.orig/autodock/check_header_line.cc	2010-07-22 23:28:23.000000000 +0200
++++ autodocksuite-4.2.3/autodock/check_header_line.cc	2010-07-22 23:28:47.000000000 +0200
+@@ -37,7 +37,7 @@
+ extern FILE *logFile;
+ 
+ 
+-void check_header_line( char s1[], char s2[] )
++void check_header_line( const char s1[], const char s2[] )
+ 
+ {
+     if ( !equal(s1, s2, strlen(s1) ) ) {
+Index: autodocksuite-4.2.3/autodock/check_header_line.h
+===================================================================
+--- autodocksuite-4.2.3.orig/autodock/check_header_line.h	2010-07-22 23:28:52.000000000 +0200
++++ autodocksuite-4.2.3/autodock/check_header_line.h	2010-07-22 23:28:58.000000000 +0200
+@@ -29,6 +29,6 @@
+ 
+ #include "constants.h"
+ 
+-void  check_header_line( char  s1[], 
+-                         char  s2[]);
++void  check_header_line( const char  s1[], 
++                         const char  s2[]);
+ #endif
+Index: autodocksuite-4.2.3/autodock/openfile.h
+===================================================================
+--- autodocksuite-4.2.3.orig/autodock/openfile.h	2010-07-22 23:36:17.000000000 +0200
++++ autodocksuite-4.2.3/autodock/openfile.h	2010-07-22 23:37:47.000000000 +0200
+@@ -34,18 +34,18 @@
+ #include <time.h>           /*time_t time(time_t *tloc); */
+ #include <sys/times.h>
+ 
+-int  openfile( char  *filename,
+-               char  mode[],
++int  openfile( const char *const filename,
++               const char mode[],
+                FILE  **fp );
+ 
+ 
+-int openFile( char       *filename,
+-              char       mode[],
+-              FILE       **fp,
+-              Clock      start,
+-              struct tms tms_start,
+-	      Boole	 mayExit);
++int openFile( const char *const filename,
++              const char        mode[],
++              FILE            **fp,
++              const Clock       start,
++              struct tms        tms_start,
++	      const Boole       mayExit);
+ 
+-FILE *ad_fopen(const char *path, const char *mode);
++FILE *ad_fopen(const char *const path, const char *const mode);
+ 
+ #endif
+Index: autodocksuite-4.2.3/autodock/read_parameter_library.h
+===================================================================
+--- autodocksuite-4.2.3.orig/autodock/read_parameter_library.h	2010-07-22 23:33:44.000000000 +0200
++++ autodocksuite-4.2.3/autodock/read_parameter_library.h	2010-07-22 23:35:11.000000000 +0200
+@@ -30,20 +30,20 @@
+ #include "autocomm.h"
+ 
+ void read_parameter_library(
+-        char *FN_parameter_library,
+-        int outlev
++        const char *const FN_parameter_library,
++        const int outlev
+         );
+ 
+ void setup_parameter_library(
+-        int outlev,
+-        const char * model_text,
+-        Unbound_Model unbound_model
++        const int outlev,
++        const char *const model_text,
++        const Unbound_Model unbound_model
+         );
+ 
+ char * report_parameter_library();
+ 
+-void setup_distdepdiel( int outlev, 
+-                        EnergyTables *ptr_ad_energy_tables  // Holds vdw+Hb, desolvation & dielectric lookup tables
++void setup_distdepdiel( const int outlev, 
++                        const EnergyTables *const ptr_ad_energy_tables  // Holds vdw+Hb, desolvation & dielectric lookup tables
+                       );
+ 
+ 
+Index: autodocksuite-4.2.3/autodock/readmap.h
+===================================================================
+--- autodocksuite-4.2.3.orig/autodock/readmap.h	2010-07-22 23:31:11.000000000 +0200
++++ autodocksuite-4.2.3/autodock/readmap.h	2010-07-23 20:24:02.000000000 +0200
+@@ -55,20 +55,20 @@
+ #include "structs.h"
+ 
+ Statistics readmap( char line[LINE_LEN],
+-             int outlev,
++             const int outlev,
+ 
+-             Clock jobStart,
+-             struct tms tmsJobStart,
++             const Clock jobStart,
++             /* not const */ struct tms tmsJobStart,
+         
+-             Boole B_charMap,
++             const Boole B_charMap,
+ 
+-             Boole *P_B_HaveMap, 
+-             int num_maps, 
++             Boole *const P_B_HaveMap, 
++             const int num_maps, 
+              
+-             GridMapSetInfo *info,
++             const GridMapSetInfo *const info,
+              // double *maps 
+                 #include "map_declare.h"
+-             char map_type
++             const char map_type
+              );
+ 
+ #endif
+Index: autodocksuite-4.2.3/autodock/success.h
+===================================================================
+--- autodocksuite-4.2.3.orig/autodock/success.h	2010-07-22 23:32:53.000000000 +0200
++++ autodocksuite-4.2.3/autodock/success.h	2010-07-23 01:08:10.000000000 +0200
+@@ -32,7 +32,7 @@
+ #include "print_2x.h"
+ #include "timesyshms.h"
+ 
+-void  success( char  hostnm[MAX_CHARS],
+-               Clock jobStart,
++void  success( const char  hostnm[MAX_CHARS],
++               const Clock jobStart,
+                struct tms tms_jobStart );
+ #endif
+Index: autodocksuite-4.2.3/autodock/calculateEnergies.cc
+===================================================================
+--- autodocksuite-4.2.3.orig/autodock/calculateEnergies.cc	2010-07-23 00:23:48.000000000 +0200
++++ autodocksuite-4.2.3/autodock/calculateEnergies.cc	2010-07-23 00:45:48.000000000 +0200
+@@ -52,11 +52,11 @@
+ //      B_include_1_4_interactions, scale_1_4, qsp_abs_charge,  B_use_non_bond_cutoff );
+ 
+ EnergyBreakdown calculateEnergies(
+-    int                  natom,                     // input  number of atoms
+-    int                  ntor,                      // input  number of torsions
+-    Real                 unbound_internal_FE,       // input  pre-calculated internal energy of unbound state
+-    Real                 torsFreeEnergy,            // input  constant times number of freely-rotatable bonds
+-    Boole                B_have_flexible_residues,  // input  boolean whether we have flexible residues in protein
++    const int                  natom,                     // input  number of atoms
++    const int                  ntor,                      // input  number of torsions
++    const Real                 unbound_internal_FE,       // input  pre-calculated internal energy of unbound state
++    const Real                 torsFreeEnergy,            // input  constant times number of freely-rotatable bonds
++    const Boole                B_have_flexible_residues,  // input  boolean whether we have flexible residues in protein
+ 
+     // trilinterp
+     const Real           tcoord[MAX_ATOMS][SPACE],  // input  coordinates of atoms to be trilinearly-interpolated
+@@ -64,17 +64,17 @@
+     CONST_FLOAT          abs_charge[MAX_ATOMS],     // input  absolute magnitude of partial charges
+     CONST_INT            type[MAX_ATOMS],           // input  atom type of each atom
+     #include "map_declare.h"
+-    GridMapSetInfo       *info,                     // input  info->lo[X],info->lo[Y],info->lo[Z],    minimum coordinates in x,y,z
+-    int                  B_outside,                 // input  boolean whether some atoms are outside grid box
+-    int                  ignore_inter[MAX_ATOMS],   // input  array of booleans, says to ignore computation intermolecular energies per atom
++    const GridMapSetInfo       *info,                     // input  info->lo[X],info->lo[Y],info->lo[Z],    minimum coordinates in x,y,z
++    const int                  B_outside,                 // input  boolean whether some atoms are outside grid box
++    const int                  ignore_inter[MAX_ATOMS],   // input  array of booleans, says to ignore computation intermolecular energies per atom
+     Real                 elec[MAX_ATOMS],           // output if not NULL - electrostatic energies, atom by atom
+     Real                 emap[MAX_ATOMS],           // output if not NULL - intermolecular energies
+     Real                 *p_elec_total,             // output if not NULL - total electrostatic energy
+     Real                 *p_emap_total,             // output if not NULL - total intermolecular energy
+ 
+     // eintcal
+-    NonbondParam * const         nonbondlist,       // input  list of nonbonds
+-    const EnergyTables   *ptr_ad_energy_tables,     // input  pointer to AutoDock intermolecular, dielectric, solvation lookup tables
++    const NonbondParam *const nonbondlist,          // input  list of nonbonds
++    const EnergyTables *const ptr_ad_energy_tables, // input  pointer to AutoDock intermolecular, dielectric, solvation lookup tables
+     const int            Nnb,                       // input  total number of nonbonds
+     const Boole          B_calcIntElec,             // input  boolean whether we must calculate internal electrostatics
+     const Boole          B_include_1_4_interactions,// input  boolean whether to include 1,4 interactions as non-bonds
+@@ -122,7 +122,7 @@
+     return eb;
+ } // calculateEnergies()
+ 
+-void update_energy_breakdown( EnergyBreakdown * eb )
++void update_energy_breakdown( /* not const */ EnergyBreakdown * eb )
+ {
+     // total intermolecular energy = (1) + (4)
+     eb->e_inter     = eb->e_inter_moving_fixed + eb->e_inter_moving_moving;
+@@ -140,9 +140,9 @@
+     eb->deltaG = eb->e_inter + eb->e_intra + eb->e_torsFreeEnergy - eb->e_unbound_internal_FE;
+ }
+ 
+-void initialise_energy_breakdown ( EnergyBreakdown * eb,
+-                                   Real torsFreeEnergy, 
+-                                   Real unbound_internal_FE )
++void initialise_energy_breakdown ( /* not const */ EnergyBreakdown * eb,
++                                   const Real torsFreeEnergy, 
++                                   const Real unbound_internal_FE )
+ {
+     eb->e_inter_moving_fixed = 0.0;      // (1)  // trilinterp( 0, true_ligand_atoms, ...)
+     eb->e_intra_moving_fixed_rec = 0.0;  // (2)  // trilinterp( true_ligand_atoms, natom, ...)
+@@ -166,11 +166,11 @@
+ // which might create conformations with high internal energies.
+ 
+ EnergyBreakdown calculateBindingEnergies(
+-    int                  natom,                     // input  number of atoms
+-    int                  ntor,                      // input  number of torsions
+-    Real                 unbound_internal_FE,       // input  pre-calculated internal energy of unbound state
+-    Real                 torsFreeEnergy,            // input  constant times number of freely-rotatable bonds
+-    Boole                B_have_flexible_residues,  // input  boolean whether we have flexible residues in protein
++    const int            natom,                     // input  number of atoms
++    const int            ntor,                      // input  number of torsions
++    const Real           unbound_internal_FE,       // input  pre-calculated internal energy of unbound state
++    const Real           torsFreeEnergy,            // input  constant times number of freely-rotatable bonds
++    const Boole          B_have_flexible_residues,  // input  boolean whether we have flexible residues in protein
+ 
+     // trilinterp
+     const Real           tcoord[MAX_ATOMS][SPACE],  // input  coordinates of atoms to be trilinearly-interpolated
+@@ -178,8 +178,8 @@
+     CONST_FLOAT          abs_charge[MAX_ATOMS],     // input  absolute magnitude of partial charges
+     CONST_INT            type[MAX_ATOMS],           // input  atom type of each atom
+     #include "map_declare.h"
+-    GridMapSetInfo       *info,                     // input  info->lo[X],info->lo[Y],info->lo[Z],    minimum coordinates in x,y,z
+-    int                  B_outside,                 // input  boolean whether some atoms are outside grid box
++    const GridMapSetInfo *const info,                     // input  info->lo[X],info->lo[Y],info->lo[Z],    minimum coordinates in x,y,z
++    const int            B_outside,                 // input  boolean whether some atoms are outside grid box
+     int                  ignore_inter[MAX_ATOMS],   // input  array of booleans, says to ignore computation intermolecular energies per atom
+     Real                 elec[MAX_ATOMS],           // output if not NULL - electrostatic energies, atom by atom
+     Real                 emap[MAX_ATOMS],           // output if not NULL - intermolecular energies
+@@ -187,15 +187,15 @@
+     Real                 *p_emap_total,             // output if not NULL - total intermolecular energy
+ 
+     // eintcal
+-    NonbondParam * const         nonbondlist,       // input  list of nonbonds
+-    const EnergyTables   *ptr_ad_energy_tables,     // input  pointer to AutoDock intermolecular, dielectric, solvation lookup tables
++    const NonbondParam *const nonbondlist,          // input  list of nonbonds
++    const EnergyTables *const ptr_ad_energy_tables, // input  pointer to AutoDock intermolecular, dielectric, solvation lookup tables
+     const int            Nnb,                       // input  total number of nonbonds
+     const Boole          B_calcIntElec,             // input  boolean whether we must calculate internal electrostatics
+     const Boole          B_include_1_4_interactions,// input  boolean whether to include 1,4 interactions as non-bonds
+     const Real           scale_1_4,                 // input  scaling factor for 1,4 interactions, if included
+     const Real           qsp_abs_charge[MAX_ATOMS], // input  q-solvation parameters
+     const Boole          B_use_non_bond_cutoff,     // input  boolean whether to use a nonbond distance cutoff
+-    Unbound_Model ad4_unbound_model
++    const Unbound_Model  ad4_unbound_model
+ 
+ )
+ 
+Index: autodocksuite-4.2.3/autodock/calculateEnergies.h
+===================================================================
+--- autodocksuite-4.2.3.orig/autodock/calculateEnergies.h	2010-07-23 00:21:22.000000000 +0200
++++ autodocksuite-4.2.3/autodock/calculateEnergies.h	2010-07-23 00:45:11.000000000 +0200
+@@ -32,11 +32,11 @@
+ #include "structs.h"
+ 
+ EnergyBreakdown calculateEnergies(
+-    int                  natom,                     // input  number of atoms
+-    int                  ntor,                      // input  number of torsions
+-    Real                 unbound_internal_FE,       // input  pre-calculated internal energy of unbound state
+-    Real                 torsFreeEnergy,            // input  constant times number of freely-rotatable bonds
+-    Boole                B_have_flexible_residues,  // input  boolean whether we have flexible residues in protein
++    const int            natom,                     // input  number of atoms
++    const int            ntor,                      // input  number of torsions
++    const Real           unbound_internal_FE,       // input  pre-calculated internal energy of unbound state
++    const Real           torsFreeEnergy,            // input  constant times number of freely-rotatable bonds
++    const Boole          B_have_flexible_residues,  // input  boolean whether we have flexible residues in protein
+ 
+     // trilinterp
+     const Real           tcoord[MAX_ATOMS][SPACE],  // input  coordinates of atoms to be trilinearly-interpolated
+@@ -44,24 +44,24 @@
+     CONST_FLOAT          abs_charge[MAX_ATOMS],     // input  absolute magnitude of partial charges
+     CONST_INT            type[MAX_ATOMS],           // input  atom type of each atom
+     #include "map_declare.h"
+-    GridMapSetInfo       *info,                     // input  info->lo[X],info->lo[Y],info->lo[Z],    minimum coordinates in x,y,z
+-    int                  B_outside,                 // input  boolean whether some atoms are outside grid box
+-    int                  ignore_inter[MAX_ATOMS],   // input  array of booleans, says to ignore computation intermolecular energies per atom
+-    Real                 elec[MAX_ATOMS],           // output if not NULL - electrostatic energies, atom by atom
+-    Real                 emap[MAX_ATOMS],           // output if not NULL - intermolecular energies
+-    Real                 *p_elec_total,             // output if not NULL - total electrostatic energy
+-    Real                 *p_emap_total,             // output if not NULL - total intermolecular energy
++    const GridMapSetInfo *info,                     // input  info->lo[X],info->lo[Y],info->lo[Z],    minimum coordinates in x,y,z
++    const int            B_outside,                 // input  boolean whether some atoms are outside grid box
++    const int            ignore_inter[MAX_ATOMS],   // input  array of booleans, says to ignore computation intermolecular energies per atom
++    /* not const */ Real elec[MAX_ATOMS],           // output if not NULL - electrostatic energies, atom by atom
++    /* not const */ Real emap[MAX_ATOMS],           // output if not NULL - intermolecular energies
++    /* not const */ Real *p_elec_total,             // output if not NULL - total electrostatic energy
++    /* not const */ Real *p_emap_total,             // output if not NULL - total intermolecular energy
+ 
+     // eintcal
+-    NonbondParam * const         nonbondlist,       // input  list of nonbonds
+-    const EnergyTables   *ptr_ad_energy_tables,     // input  pointer to AutoDock intermolecular, dielectric, solvation lookup tables
++    const NonbondParam *const nonbondlist,          // input  list of nonbonds
++    const EnergyTables *const ptr_ad_energy_tables, // input  pointer to AutoDock intermolecular, dielectric, solvation lookup tables
+     const int            Nnb,                       // input  total number of nonbonds
+     const Boole          B_calcIntElec,             // input  boolean whether we must calculate internal electrostatics
+     const Boole          B_include_1_4_interactions,// input  boolean whether to include 1,4 interactions as non-bonds
+     const Real           scale_1_4,                 // input  scaling factor for 1,4 interactions, if included
+     const Real           qsp_abs_charge[MAX_ATOMS], // input  q-solvation parameters
+     const Boole          B_use_non_bond_cutoff,     // input  boolean whether to use a nonbond distance cutoff
+-    Unbound_Model ad4_unbound_model
++    const Unbound_Model  ad4_unbound_model
+ 
+ );
+ 
+@@ -72,11 +72,11 @@
+                                    Real unbound_internal_FE );
+ 
+ EnergyBreakdown calculateBindingEnergies(
+-    int                  natom,                     // input  number of atoms
+-    int                  ntor,                      // input  number of torsions
+-    Real                 unbound_internal_FE,       // input  pre-calculated internal energy of unbound state
+-    Real                 torsFreeEnergy,            // input  constant times number of freely-rotatable bonds
+-    Boole                B_have_flexible_residues,  // input  boolean whether we have flexible residues in protein
++    const int            natom,                     // input  number of atoms
++    const int            ntor,                      // input  number of torsions
++    const Real           unbound_internal_FE,       // input  pre-calculated internal energy of unbound state
++    const Real           torsFreeEnergy,            // input  constant times number of freely-rotatable bonds
++    const Boole          B_have_flexible_residues,  // input  boolean whether we have flexible residues in protein
+ 
+     // trilinterp
+     const Real           tcoord[MAX_ATOMS][SPACE],  // input  coordinates of atoms to be trilinearly-interpolated
+@@ -84,32 +84,32 @@
+     CONST_FLOAT          abs_charge[MAX_ATOMS],     // input  absolute magnitude of partial charges
+     CONST_INT            type[MAX_ATOMS],           // input  atom type of each atom
+     #include "map_declare.h"
+-    GridMapSetInfo       *info,                     // input  info->lo[X],info->lo[Y],info->lo[Z],    minimum coordinates in x,y,z
+-    int                  B_outside,                 // input  boolean whether some atoms are outside grid box
+-    int                  ignore_inter[MAX_ATOMS],   // input  array of booleans, says to ignore computation intermolecular energies per atom
++    const GridMapSetInfo *info,                     // input  info->lo[X],info->lo[Y],info->lo[Z],    minimum coordinates in x,y,z
++    const int            B_outside,                 // input  boolean whether some atoms are outside grid box
++    const int            ignore_inter[MAX_ATOMS],   // input  array of booleans, says to ignore computation intermolecular energies per atom
+     Real                 elec[MAX_ATOMS],           // output if not NULL - electrostatic energies, atom by atom
+     Real                 emap[MAX_ATOMS],           // output if not NULL - intermolecular energies
+     Real                 *p_elec_total,             // output if not NULL - total electrostatic energy
+     Real                 *p_emap_total,             // output if not NULL - total intermolecular energy
+ 
+     // eintcal
+-    NonbondParam * const         nonbondlist,       // input  list of nonbonds
+-    const EnergyTables   *ptr_ad_energy_tables,     // input  pointer to AutoDock intermolecular, dielectric, solvation lookup tables
++    const NonbondParam *const nonbondlist,          // input  list of nonbonds
++    const EnergyTables *const ptr_ad_energy_tables, // input  pointer to AutoDock intermolecular, dielectric, solvation lookup tables
+     const int            Nnb,                       // input  total number of nonbonds
+     const Boole          B_calcIntElec,             // input  boolean whether we must calculate internal electrostatics
+     const Boole          B_include_1_4_interactions,// input  boolean whether to include 1,4 interactions as non-bonds
+     const Real           scale_1_4,                 // input  scaling factor for 1,4 interactions, if included
+     const Real           qsp_abs_charge[MAX_ATOMS], // input  q-solvation parameters
+     const Boole          B_use_non_bond_cutoff,     // input  boolean whether to use a nonbond distance cutoff
+-    Unbound_Model ad4_unbound_model
++    const Unbound_Model  ad4_unbound_model
+ 
+ );
+ 
+-void update_binding_energy_breakdown( EnergyBreakdown * eb, Unbound_Model ad4_unbound_model
++void update_binding_energy_breakdown( EnergyBreakdown * eb, const Unbound_Model ad4_unbound_model
+                  );
+ 
+ void initialise_binding_energy_breakdown ( EnergyBreakdown * eb,
+-                                           Real torsFreeEnergy, 
+-                                           Real unbound_internal_FE,
+-                                           Unbound_Model ad4_unbound_model);
++                                           const Real torsFreeEnergy, 
++                                           const Real unbound_internal_FE,
++                                           const Unbound_Model ad4_unbound_model);
+ #endif
+Index: autodocksuite-4.2.3/autodock/cnv_state_to_coords.cc
+===================================================================
+--- autodocksuite-4.2.3.orig/autodock/cnv_state_to_coords.cc	2010-07-23 00:09:32.000000000 +0200
++++ autodocksuite-4.2.3/autodock/cnv_state_to_coords.cc	2010-07-23 00:16:14.000000000 +0200
+@@ -45,10 +45,10 @@
+ extern int true_ligand_atoms;
+ 
+ void cnv_state_to_coords( const State now,
+-                          Real vt[MAX_TORS][SPACE],
+-                          int tlist[MAX_TORS][MAX_ATOMS],
++                          const Real vt[MAX_TORS][SPACE],
++                          const int tlist[MAX_TORS][MAX_ATOMS],
+                           const int ntor,
+-                          Real crdpdb[MAX_ATOMS][SPACE],
++                          const Real crdpdb[MAX_ATOMS][SPACE],
+                           Real crd[MAX_ATOMS][SPACE],
+                           const int natom)
+ 
+@@ -68,7 +68,7 @@
+ 
+     //  Apply torsions, if any
+     if (ntor > 0) {
+-        torsion( now, crd, vt, tlist, ntor );
++        torsion( now, crd, vt, tlist, ntor ); /* all const except for crd */
+     }
+ 
+ #ifdef LSQFIT
+@@ -92,7 +92,7 @@
+ #endif
+ 
+     //  Apply quaternion rigid-body rotation and translation...
+-    qtransform( now.T, now.Q, crd, true_ligand_atoms );
++    qtransform( now.T, now.Q, crd, true_ligand_atoms ); // all const except crd
+ 
+ #ifdef DEBUG
+     } else {
+Index: autodocksuite-4.2.3/autodock/cnv_state_to_coords.h
+===================================================================
+--- autodocksuite-4.2.3.orig/autodock/cnv_state_to_coords.h	2010-07-23 00:16:16.000000000 +0200
++++ autodocksuite-4.2.3/autodock/cnv_state_to_coords.h	2010-07-23 00:16:25.000000000 +0200
+@@ -33,10 +33,10 @@
+ 
+ 
+ void cnv_state_to_coords( const State now,
+-                          Real vt[MAX_TORS][SPACE],
+-                          int tlist[MAX_TORS][MAX_ATOMS],
++                          const Real vt[MAX_TORS][SPACE],
++                          const int tlist[MAX_TORS][MAX_ATOMS],
+                           const int ntor,
+-                          Real crdpdb[MAX_ATOMS][SPACE],
++                          const Real crdpdb[MAX_ATOMS][SPACE],
+                           Real crd[MAX_ATOMS][SPACE],
+                           const int natom);
+ #endif
+Index: autodocksuite-4.2.3/autodock/eintcal.cc
+===================================================================
+--- autodocksuite-4.2.3.orig/autodock/eintcal.cc	2010-07-23 00:41:07.000000000 +0200
++++ autodocksuite-4.2.3/autodock/eintcal.cc	2010-07-23 00:42:00.000000000 +0200
+@@ -42,7 +42,7 @@
+ #ifndef EINTCALPRINT
+ 
+ // Calculate internal energy
+-Real eintcal( NonbondParam * const nonbondlist,
++Real eintcal( const NonbondParam * const nonbondlist,
+               const EnergyTables  *ptr_ad_energy_tables,
+               const Real tcoord[MAX_ATOMS][SPACE],
+               const int           Nnb,
+Index: autodocksuite-4.2.3/autodock/eintcal.h
+===================================================================
+--- autodocksuite-4.2.3.orig/autodock/eintcal.h	2010-07-23 00:42:03.000000000 +0200
++++ autodocksuite-4.2.3/autodock/eintcal.h	2010-07-23 00:42:09.000000000 +0200
+@@ -31,7 +31,7 @@
+ #include "constants.h"
+ #include "structs.h"
+ 
+-Real  eintcal( NonbondParam * const nonbondlist, 
++Real  eintcal( const NonbondParam * const nonbondlist, 
+                const EnergyTables  *ad_energy_tables,
+                const Real tcoord[MAX_ATOMS][SPACE], 
+                const int  Nnb,
+Index: autodocksuite-4.2.3/autodock/getInitialState.cc
+===================================================================
+--- autodocksuite-4.2.3.orig/autodock/getInitialState.cc	2010-07-23 01:10:19.000000000 +0200
++++ autodocksuite-4.2.3/autodock/getInitialState.cc	2010-07-23 01:18:58.000000000 +0200
+@@ -53,39 +53,39 @@
+             State *sMinm, /* was qtnMin[QUAT] and torMin[MAX_TORS] */
+             State *sLast, /* was qtnLast[QUAT] and torLast[MAX_TORS] */
+ 
+-            Boole B_RandomTran0,
+-            Boole B_RandomQuat0,
+-            Boole B_RandomDihe0,
+-
+-            Real charge[MAX_ATOMS],
+-            Real abs_charge[MAX_ATOMS],
+-            Real qsp_abs_charge[MAX_ATOMS],
+-            Real crd[MAX_ATOMS][SPACE],
+-            Real crdpdb[MAX_ATOMS][SPACE],
+-            char  atomstuff[MAX_ATOMS][MAX_CHARS],
+-            Real elec[MAX_ATOMS],
+-            Real emap[MAX_ATOMS],
++            const Boole B_RandomTran0,
++            const Boole B_RandomQuat0,
++            const Boole B_RandomDihe0,
++
++            const Real charge[MAX_ATOMS],
++            const Real abs_charge[MAX_ATOMS],
++            const Real qsp_abs_charge[MAX_ATOMS],
++            /* not const */ Real crd[MAX_ATOMS][SPACE],
++            const Real crdpdb[MAX_ATOMS][SPACE],
++            const char  atomstuff[MAX_ATOMS][MAX_CHARS],
++            /* not const */ Real elec[MAX_ATOMS],
++            /* not const */ Real emap[MAX_ATOMS],
+ 
+-            EnergyTables *ptr_ad_energy_tables,
++            const EnergyTables *const ptr_ad_energy_tables,
+ 
+-            Boole B_calcIntElec,
++            const Boole B_calcIntElec,
+                 #include "map_declare.h"
+-            int   natom,
+-            int   Nnb,
+-            NonbondParam *nonbondlist,
+-            int   ntor,
+-            int   tlist[MAX_TORS][MAX_ATOMS],
+-            int   type[MAX_ATOMS],
+-            Real vt[MAX_TORS][SPACE],
+-            int   irun1,
+-            int   outlev,
+-            int   MaxRetries,
++            const int   natom,
++            const int   Nnb,
++            const NonbondParam *const nonbondlist,
++            const int   ntor,
++            const int   tlist[MAX_TORS][MAX_ATOMS],
++            const int   type[MAX_ATOMS],
++            const Real vt[MAX_TORS][SPACE],
++            const int   irun1,
++            const int   outlev,
++            const int   MaxRetries,
+ 
+-            Real torsFreeEnergy,
++            const Real torsFreeEnergy,
+ 
+-            int   ligand_is_inhibitor,
++            const int   ligand_is_inhibitor,
+ 
+-            int   ignore_inter[MAX_ATOMS],
++            const int   ignore_inter[MAX_ATOMS],
+ 
+             const Boole         B_include_1_4_interactions,
+             const Real scale_1_4,
+@@ -93,10 +93,10 @@
+ 
+             const Real unbound_internal_FE,
+ 
+-            GridMapSetInfo *info,
+-            Boole B_use_non_bond_cutoff,
+-            Boole B_have_flexible_residues,
+-            Unbound_Model ad4_unbound_model
++            const GridMapSetInfo *const info,
++            const Boole B_use_non_bond_cutoff,
++            const Boole B_have_flexible_residues,
++            const Unbound_Model ad4_unbound_model
+            )
+ 
+ {
+Index: autodocksuite-4.2.3/autodock/getInitialState.h
+===================================================================
+--- autodocksuite-4.2.3.orig/autodock/getInitialState.h	2010-07-23 01:09:10.000000000 +0200
++++ autodocksuite-4.2.3/autodock/getInitialState.h	2010-07-23 01:10:14.000000000 +0200
+@@ -45,39 +45,39 @@
+ 	    State *sMin,
+ 	    State *sLast,
+ 
+-            Boole B_RandomTran0,
+-            Boole B_RandomQuat0,
+-            Boole B_RandomDihe0,
+-
+-            Real charge[MAX_ATOMS],
+-            Real abs_charge[MAX_ATOMS],
+-            Real qsp_abs_charge[MAX_ATOMS],
+-            Real crd[MAX_ATOMS][SPACE],
+-            Real crdpdb[MAX_ATOMS][SPACE],
+-            char  atomstuff[MAX_ATOMS][MAX_CHARS],
++            const Boole B_RandomTran0,
++            const Boole B_RandomQuat0,
++            const Boole B_RandomDihe0,
++
++            const Real charge[MAX_ATOMS],
++            const Real abs_charge[MAX_ATOMS],
++            const Real qsp_abs_charge[MAX_ATOMS],
++            const Real crd[MAX_ATOMS][SPACE],
++            const Real crdpdb[MAX_ATOMS][SPACE],
++            const char  atomstuff[MAX_ATOMS][MAX_CHARS],
+             Real elec[MAX_ATOMS],
+             Real emap[MAX_ATOMS],
+ 
+-            EnergyTables *ptr_ad_energy_tables,
++            EnergyTables *const ptr_ad_energy_tables,
+ 
+-            Boole B_calcIntElec,
++            const Boole B_calcIntElec,
+                 #include "map_declare.h"
+-            int   natom,
+-            int   Nnb,
+-            NonbondParam *nonbondlist,
+-            int   ntor,
+-            int   tlist[MAX_TORS][MAX_ATOMS],
+-            int   type[MAX_ATOMS],
+-            Real vt[MAX_TORS][SPACE],
+-            int   irun1,
+-            int   outlev,
+-	        int   MaxRetries,
++            const int   natom,
++            const int   Nnb,
++            const NonbondParam *const nonbondlist,
++            const int   ntor,
++            const int   tlist[MAX_TORS][MAX_ATOMS],
++            const int   type[MAX_ATOMS],
++            const Real vt[MAX_TORS][SPACE],
++            const int   irun1,
++            const int   outlev,
++	       const  int   MaxRetries,
+ 
+-	        Real torsFreeEnergy,
++	        const Real torsFreeEnergy,
+ 
+-            int   ligand_is_inhibitor,
++            const int   ligand_is_inhibitor,
+ 
+-            int ignore_inter[MAX_ATOMS],
++            const int ignore_inter[MAX_ATOMS],
+ 
+             const Boole         B_include_1_4_interactions,
+             const Real scale_1_4,
+@@ -85,10 +85,10 @@
+ 
+             const Real unbound_internal_FE,
+ 
+-            GridMapSetInfo *info,
+-            Boole B_use_non_bond_cutoff,
+-            Boole B_have_flexible_residues,
+-            Unbound_Model ad4_unbound_model
++            const GridMapSetInfo *const info,
++            const Boole B_use_non_bond_cutoff,
++            const Boole B_have_flexible_residues,
++            const Unbound_Model ad4_unbound_model
+            );
+ 
+ #endif
+Index: autodocksuite-4.2.3/autodock/initautodock.cc
+===================================================================
+--- autodocksuite-4.2.3.orig/autodock/initautodock.cc	2010-07-23 01:12:18.000000000 +0200
++++ autodocksuite-4.2.3/autodock/initautodock.cc	2010-07-23 01:15:18.000000000 +0200
+@@ -42,16 +42,16 @@
+ extern FILE *logFile;
+ extern char  *programname;
+ 
+-void initautodock(  char  atomstuff[MAX_ATOMS][MAX_CHARS],
+-                    Real crd[MAX_ATOMS][SPACE],
+-                    Real crdpdb[MAX_ATOMS][SPACE],
+-                    int   natom,
+-                    int   ntor,
+-                    State *s0,
+-                    int   tlist[MAX_TORS][MAX_ATOMS],
+-                    Real vt[MAX_TORS][SPACE],
+-                    int   outlev,
+-                    GridMapSetInfo *info )
++void initautodock(  const char  atomstuff[MAX_ATOMS][MAX_CHARS],
++                    /* not const */ Real crd[MAX_ATOMS][SPACE],
++                    const Real crdpdb[MAX_ATOMS][SPACE],
++                    const int   natom,
++                    const int   ntor,
++                    /* not const */ State *const s0,
++                    const int   tlist[MAX_TORS][MAX_ATOMS],
++                    const Real vt[MAX_TORS][SPACE],
++                    const int   outlev,
++                    const GridMapSetInfo *const info )
+ 
+ {
+     Boole B_change = FALSE;
+@@ -146,7 +146,7 @@
+         }
+ 
+         mkUnitQuat( &(s0->Q) );
+-        cnv_state_to_coords( *s0,  vt, tlist, ntor,  crdpdb, crd, natom);
++        cnv_state_to_coords( *s0,  vt, tlist, ntor,  crdpdb, crd, natom); // all const except crd
+ 
+         for (i = 0;  i < natom;  i++) {
+             B_outside = is_out_grid_info( crd[i][X], crd[i][Y], crd[i][Z] );
+Index: autodocksuite-4.2.3/autodock/initautodock.h
+===================================================================
+--- autodocksuite-4.2.3.orig/autodock/initautodock.h	2010-07-23 01:14:39.000000000 +0200
++++ autodocksuite-4.2.3/autodock/initautodock.h	2010-07-23 01:15:07.000000000 +0200
+@@ -33,14 +33,14 @@
+ #include "print_2x.h"
+ 
+ void initautodock(
+-	    char  atomstuff[MAX_ATOMS][MAX_CHARS],
+-	    Real crd[MAX_ATOMS][SPACE],
+-	    Real crdpdb[MAX_ATOMS][SPACE],
+-	    int   natom,
+-	    int   ntor,
+-	    State *s0,
+-	    int   tlist[MAX_TORS][MAX_ATOMS],
+-	    Real vt[MAX_TORS][SPACE],
+-	    int   outlev,
+-            GridMapSetInfo *info );
++	    const char  atomstuff[MAX_ATOMS][MAX_CHARS],
++	    /* not const */ Real crd[MAX_ATOMS][SPACE],
++	    const Real crdpdb[MAX_ATOMS][SPACE],
++	    const int   natom,
++	    const int   ntor,
++	    /* not const */ State *const s0,
++	    const int   tlist[MAX_TORS][MAX_ATOMS],
++	    const Real vt[MAX_TORS][SPACE],
++	    const int   outlev,
++            const GridMapSetInfo *const info );
+ #endif
+Index: autodocksuite-4.2.3/autodock/main.cc
+===================================================================
+--- autodocksuite-4.2.3.orig/autodock/main.cc	2010-07-23 01:01:28.000000000 +0200
++++ autodocksuite-4.2.3/autodock/main.cc	2010-07-23 20:28:09.000000000 +0200
+@@ -125,7 +125,7 @@
+ double xmin[D_max], xmax[D_max]; // Intervals defining the search space
+ double Vmin[D_max], Vmax[D_max]; // Intervals defining the search space
+ 
+-int main (int argc, char ** argv)
++int main (int argc, const char ** argv)
+ 
+ 
+ {
+@@ -4573,6 +4573,8 @@
+ // delete arrays
+ delete []nonbondlist;
+ 
++if (NULL != programname) free(programname); programname=(char *) NULL;
++
+ 
+ //________________________________________________________________________________
+ /*
+Index: autodocksuite-4.2.3/autodock/parse_PDBQT_line.cc
+===================================================================
+--- autodocksuite-4.2.3.orig/autodock/parse_PDBQT_line.cc	2010-07-23 00:39:12.000000000 +0200
++++ autodocksuite-4.2.3/autodock/parse_PDBQT_line.cc	2010-07-23 00:39:36.000000000 +0200
+@@ -36,7 +36,7 @@
+ extern FILE *logFile;
+ 
+ 
+-int parse_PDBQT_line( char line[LINE_LEN] )
++int parse_PDBQT_line( const char line[LINE_LEN] )
+ 
+ /******************************************************************************/
+ /*      Name: parse_PDBQT_line                                                 */
+Index: autodocksuite-4.2.3/autodock/parse_PDBQT_line.h
+===================================================================
+--- autodocksuite-4.2.3.orig/autodock/parse_PDBQT_line.h	2010-07-23 00:39:39.000000000 +0200
++++ autodocksuite-4.2.3/autodock/parse_PDBQT_line.h	2010-07-23 00:39:44.000000000 +0200
+@@ -31,6 +31,6 @@
+ #include "strindex.h"
+ #include "PDBQT_tokens.h"
+ 
+-int  parse_PDBQT_line( char  line[LINE_LEN] );
++int  parse_PDBQT_line( const char  line[LINE_LEN] );
+ 
+ #endif
+Index: autodocksuite-4.2.3/autodock/prInitialState.h
+===================================================================
+--- autodocksuite-4.2.3.orig/autodock/prInitialState.h	2010-07-23 01:23:32.000000000 +0200
++++ autodocksuite-4.2.3/autodock/prInitialState.h	2010-07-23 01:23:50.000000000 +0200
+@@ -32,17 +32,17 @@
+ #include "printEnergies.h"
+ 
+ void  prInitialState( 
+-    EnergyBreakdown *eb,
+-    int natom,
+-    Real crd[MAX_ATOMS][SPACE],
+-    char atomstuff[MAX_ATOMS][MAX_CHARS],
+-    int type[MAX_ATOMS],
+-    Real emap[MAX_ATOMS],
+-    Real elec[MAX_ATOMS],
+-    Real charge[MAX_ATOMS],
+-    int ligand_is_inhibitor,
+-    Boole B_have_flexible_residues,
+-    Unbound_Model ad4_unbound_model
++    const EnergyBreakdown *eb,
++    const int natom,
++    const Real crd[MAX_ATOMS][SPACE],
++    const char atomstuff[MAX_ATOMS][MAX_CHARS],
++    const int type[MAX_ATOMS],
++    const Real emap[MAX_ATOMS],
++    const Real elec[MAX_ATOMS],
++    const Real charge[MAX_ATOMS],
++    const int ligand_is_inhibitor,
++    const Boole B_have_flexible_residues,
++    const Unbound_Model ad4_unbound_model
+     );
+ 
+ #endif
+Index: autodocksuite-4.2.3/autodock/trilinterp.cc
+===================================================================
+--- autodocksuite-4.2.3.orig/autodock/trilinterp.cc	2010-07-23 00:29:03.000000000 +0200
++++ autodocksuite-4.2.3/autodock/trilinterp.cc	2010-07-23 00:30:31.000000000 +0200
+@@ -53,13 +53,13 @@
+  const Real abs_charge[MAX_ATOMS], // absolute magnitude of partial charges
+  const int   type[MAX_ATOMS], // atom type of each atom
+  #include "map_declare.h"
+- GridMapSetInfo *info, // info->lo[X],info->lo[Y],info->lo[Z],    minimum coordinates in x,y,z
+- int some_atoms_outside_grid, // boolean
+- int ignore_inter[MAX_ATOMS], // array of booleans, says to ignore computation intermolecular energies per atom
+- Real elec[MAX_ATOMS], // set if not NULL - electrostatic energies, atom by atom
+- Real emap[MAX_ATOMS],  // set if not NULL - intermolecular energies
+- Real *p_elec_total, // set if not NULL - total electrostatic energy
+- Real *p_emap_total // set if not NULL - total intermolecular energy
++ const GridMapSetInfo *const info, // info->lo[X],info->lo[Y],info->lo[Z],    minimum coordinates in x,y,z
++ const int some_atoms_outside_grid, // boolean
++ const int ignore_inter[MAX_ATOMS], // array of booleans, says to ignore computation intermolecular energies per atom
++ /* not const */ Real elec[MAX_ATOMS], // set if not NULL - electrostatic energies, atom by atom
++ /* not const */ Real emap[MAX_ATOMS],  // set if not NULL - intermolecular energies
++ /* not const */ Real *p_elec_total, // set if not NULL - total electrostatic energy
++ /* not const */ Real *p_emap_total // set if not NULL - total intermolecular energy
+  )
+ 
+ /******************************************************************************/
+Index: autodocksuite-4.2.3/autodock/trilinterp.h
+===================================================================
+--- autodocksuite-4.2.3.orig/autodock/trilinterp.h	2010-07-23 00:30:35.000000000 +0200
++++ autodocksuite-4.2.3/autodock/trilinterp.h	2010-07-23 00:31:02.000000000 +0200
+@@ -50,13 +50,13 @@
+  CONST_FLOAT abs_charge[MAX_ATOMS], 
+  CONST_INT   type[MAX_ATOMS], // atom type of each atom
+  #include "map_declare.h"
+- GridMapSetInfo *info, // info->lo[X],info->lo[Y],info->lo[Z],    minimum coordinates in x,y,z
+- int some_atoms_outside_grid, // boolean
+- int ignore_inter[MAX_ATOMS], // array of booleans, says to ignore computation intermolecular energies per atom
+- Real elec[MAX_ATOMS], // set if not NULL - electrostatic energies, atom by atom
+- Real emap[MAX_ATOMS],  // set if not NULL - intermolecular energies
+- Real *p_elec_total, // set if not NULL - total electrostatic energy
+- Real *p_emap_total // set if not NULL - total intermolecular energy
++ const GridMapSetInfo *const info, // info->lo[X],info->lo[Y],info->lo[Z],    minimum coordinates in x,y,z
++ const int some_atoms_outside_grid, // boolean
++ const int ignore_inter[MAX_ATOMS], // array of booleans, says to ignore computation intermolecular energies per atom
++ /* not const */ Real elec[MAX_ATOMS], // set if not NULL - electrostatic energies, atom by atom
++ /* not const */ Real emap[MAX_ATOMS],  // set if not NULL - intermolecular energies
++ /* not const */ Real *p_elec_total, // set if not NULL - total electrostatic energy
++ /* not const */ Real *p_emap_total // set if not NULL - total intermolecular energy
+  );
+ 
+ #endif
+Index: autodocksuite-4.2.3/autodock/writePDBQT.h
+===================================================================
+--- autodocksuite-4.2.3.orig/autodock/writePDBQT.h	2010-07-23 00:02:41.000000000 +0200
++++ autodocksuite-4.2.3/autodock/writePDBQT.h	2010-07-23 00:37:20.000000000 +0200
+@@ -34,48 +34,48 @@
+ #include "cnv_state_to_coords.h"
+ #include "stateLibrary.h"
+ 
+-void writePDBQT(int irun,FourByteLong seed[2],
+-                    char  *smFileName,
+-                    char  *dpfFN,
+-                    Real sml_center[SPACE],
+-                    State state,
+-                    int   ntor,
+-                    Real (*Ptr_eintra),
+-                    Real (*Ptr_einter),
+-                    int   natom,
+-                    char  atomstuff[MAX_ATOMS][MAX_CHARS],
+-                    Real crd[MAX_ATOMS][SPACE],
+-                    Real emap[MAX_ATOMS],
+-                    Real elec[MAX_ATOMS],
+-                    Real charge[MAX_ATOMS],
+-                    Real abs_charge[MAX_ATOMS],
+-                    Real qsp_abs_charge[MAX_ATOMS],
+-                    int ligand_is_inhibitor,
+-                    Real torsFreeEnergy,
+-                    Real vt[MAX_TORS][SPACE],
+-                    int   tlist[MAX_TORS][MAX_ATOMS],
+-                    Real crdpdb[MAX_ATOMS][SPACE],
+-                    NonbondParam *nonbondlist,
+-                    EnergyTables *ptr_ad_energy_tables,
+-                    int   type[MAX_ATOMS],
+-                    int   Nnb,
+-                    Boole B_calcIntElec,
++void writePDBQT(const int irun,FourByteLong seed[2],
++                    const char  *const smFileName,
++                    const char  *dpfFN,
++                    const Real sml_center[SPACE],
++                    /* not const */ State state,
++                    const int   ntor,
++                    Real (*const Ptr_eintra),
++                    Real (*const Ptr_einter),
++                    const int   natom,
++                    const char  atomstuff[MAX_ATOMS][MAX_CHARS],
++                    /* not const */ Real crd[MAX_ATOMS][SPACE],
++                    /* not const */ Real emap[MAX_ATOMS],
++                    /* not const */ Real elec[MAX_ATOMS],
++                    const Real charge[MAX_ATOMS],
++                    const Real abs_charge[MAX_ATOMS],
++                    const Real qsp_abs_charge[MAX_ATOMS],
++                    const int ligand_is_inhibitor,
++                    const Real torsFreeEnergy,
++                    const Real vt[MAX_TORS][SPACE],
++                    const int   tlist[MAX_TORS][MAX_ATOMS],
++                    const Real crdpdb[MAX_ATOMS][SPACE],
++                    const NonbondParam *const nonbondlist,
++                    const EnergyTables *const ptr_ad_energy_tables,
++                    const int   type[MAX_ATOMS],
++                    const int   Nnb,
++                    const Boole B_calcIntElec,
+                 #include "map_declare.h"
+-                    int outlev,
+-                    int   ignore_inter[MAX_ATOMS],
+-                    const Boole         B_include_1_4_interactions,
++                    const int outlev,
++                    const int   ignore_inter[MAX_ATOMS],
++                    const Boole B_include_1_4_interactions,
+                     const Real scale_1_4,
+                     const ParameterEntry parameterArray[MAX_ATOM_TYPES], // input  nonbond and desolvation parameters
+                     const Real unbound_internal_FE,
+-                    GridMapSetInfo *info,
+-                    int state_type,  // 0 means unbound, 1 means docked
+-                    char PDBQT_record[MAX_RECORDS][LINE_LEN],
+-                    Boole B_use_non_bond_cutoff,
+-                    Boole B_have_flexible_residues,
+-                    Unbound_Model ad4_unbound_model
++                    const GridMapSetInfo *const info,
++                    const int state_type,  // 0 means unbound, 1 means docked
++                    const char PDBQT_record[MAX_RECORDS][LINE_LEN],
++                    const Boole B_use_non_bond_cutoff,
++                    const Boole B_have_flexible_residues,
++                    const Unbound_Model ad4_unbound_model
+                     );
+ 
+-void print_PDBQT( FILE *logFile, 
++void print_PDBQT( FILE *const logFile, 
+                   const int true_ligand_atoms,
+                   const char atomstuff[MAX_ATOMS][MAX_CHARS],
+                   const Real crdpdb[MAX_ATOMS][SPACE],
+@@ -86,7 +86,7 @@
+ 
+ 
+ 
+-void print_PDBQ_atom_resstr( FILE *logFile, 
++void print_PDBQ_atom_resstr( FILE *const logFile, 
+                   const char prefix[MAX_CHARS],
+                   int atom_num, // 0-origin 
+                   const char atomstuff[],
+@@ -94,20 +94,20 @@
+                   const Real vdW,
+                   const Real Elec,
+                   const Real charge,
+-                  const char * suffix //newline or empty
++                  const char *const suffix //newline or empty
+                   );
+         
+ 
+-void print_PDBQ_atom_resnum( FILE *logFile, 
++void print_PDBQ_atom_resnum( FILE *const logFile, 
+                   const char prefix[MAX_CHARS],
+-                  int atom_num, // 0-origin 
++                  const int atom_num, // 0-origin 
+                   const char atomstuff[],
+                   const int resnum,
+                   const Real crdpdb[MAX_ATOMS][SPACE],
+                   const Real vdW,
+                   const Real Elec,
+                   const Real charge,
+-                  const char * suffix //newline or empty
++                  const char *const suffix //newline or empty
+                   );
+         
+ #endif
+Index: autodocksuite-4.2.3/autodock/hybrids.h
+===================================================================
+--- autodocksuite-4.2.3.orig/autodock/hybrids.h	2010-07-23 20:33:37.000000000 +0200
++++ autodocksuite-4.2.3/autodock/hybrids.h	2010-07-23 20:40:35.000000000 +0200
+@@ -45,22 +45,22 @@
+ #define CALL_GLSS
+ 
+ State call_glss(Global_Search *global_method, Local_Search *local_method, 
+-		State now, unsigned int num_evals, unsigned int pop_size, 
+-		int outlev, unsigned int extOutputEveryNgens, Molecule *mol,
+-		Boole B_RandomTran0, Boole B_RandomQuat0, Boole B_RandomDihe0,
+-        GridMapSetInfo *info, char *FN_pop_file,
+-        int end_of_branch[MAX_TORS] );
++		State now, const unsigned int num_evals, const unsigned int pop_size, 
++		const int outlev, const unsigned int extOutputEveryNgens, Molecule *const mol,
++		const Boole B_RandomTran0, const Boole B_RandomQuat0, const Boole B_RandomDihe0,
++        const GridMapSetInfo *const info, const char *const FN_pop_file,
++        const int end_of_branch[MAX_TORS] );
+ 
+ 
+-Representation **generate_R(int num_torsions, GridMapSetInfo *info );
++Representation **generate_R(const int num_torsions, const GridMapSetInfo *const info );
+ 
+-Representation **generate_R_quaternion(int num_torsions, GridMapSetInfo *info );
++Representation **generate_R_quaternion(const int num_torsions, const GridMapSetInfo *const info );
+ 
+-Genotype generate_Gtype(int num_torsions, GridMapSetInfo *info );
++Genotype generate_Gtype(const int num_torsions, const GridMapSetInfo *const info );
+ 
+-Phenotype generate_Ptype(int num_torsions, GridMapSetInfo *info );
++Phenotype generate_Ptype(const int num_torsions, const GridMapSetInfo *const info );
+ 
+-Individual random_ind(int num_torsions, GridMapSetInfo *info );
++Individual random_ind(const int num_torsions, const GridMapSetInfo *const info );
+ 
+ #endif
+ 
+@@ -115,6 +115,6 @@
+ #ifndef MMM
+ #define MMM
+ 
+-void minmeanmax( FILE *fp, Population &pop, int num_its, GridMapSetInfo *info );
++void minmeanmax( FILE *const fp, Population &pop, const int num_its, const GridMapSetInfo *const info );
+ 
+ #endif
+Index: autodocksuite-4.2.3/autodock/intnbtable.cc
+===================================================================
+--- autodocksuite-4.2.3.orig/autodock/intnbtable.cc	2010-07-23 20:41:54.000000000 +0200
++++ autodocksuite-4.2.3/autodock/intnbtable.cc	2010-07-23 20:46:56.000000000 +0200
+@@ -54,17 +54,17 @@
+ extern int debug;
+ 
+ void intnbtable( Boole *P_B_havenbp,
+-                 int a1,
+-                 int a2, 
+-                 GridMapSetInfo *info,
+-                 Real cA, 
+-                 Real cB, 
+-                 int xA, 
+-                 int xB,
+-                 double coeff_desolv,
+-                 double sigma,
+-                 EnergyTables *ad_tables,
+-                 Boole B_is_unbound_calculation )
++                 const int a1,
++                 const int a2, 
++                 const GridMapSetInfo *const info,
++                 const Real cA, 
++                 const Real cB, 
++                 const int xA, 
++                 const int xB,
++                 const double coeff_desolv,
++                 const double sigma,
++                 /* not const */ EnergyTables *const ad_tables,
++                 const Boole B_is_unbound_calculation )
+ {
+     /* Local variables: */
+ 
+@@ -160,8 +160,8 @@
+ /* end of intnbtable */
+ 
+ 
+-void setup_distdepdiel( int outlev, 
+-                        EnergyTables *ptr_ad_energy_tables  // Holds vdw+Hb, desolvation & dielectric lookup tables
++void setup_distdepdiel( const int outlev, 
++                        EnergyTables *const ptr_ad_energy_tables  // Holds vdw+Hb, desolvation & dielectric lookup tables
+                       )
+ {
+     register int i=0;
+Index: autodocksuite-4.2.3/autodock/intnbtable.h
+===================================================================
+--- autodocksuite-4.2.3.orig/autodock/intnbtable.h	2010-07-23 20:44:15.000000000 +0200
++++ autodocksuite-4.2.3/autodock/intnbtable.h	2010-07-23 20:45:36.000000000 +0200
+@@ -30,16 +30,16 @@
+ #include "timesys.h"
+ #include "structs.h"
+ 
+-void intnbtable(Boole *P_B_havenbp,
+-                int   a1,
+-                int   a2,
+-                GridMapSetInfo *info,
+-                Real cA,
+-                Real cB,
+-                int   xA,
+-                int   xB,
+-                double coeff_desolv,
+-                double sigma,
+-                EnergyTables *ad_tables,
+-                Boole B_is_unbound_calculation );
++void intnbtable(/* not const */ Boole *P_B_havenbp,
++                const int   a1,
++                const int   a2,
++                const GridMapSetInfo *const info,
++                const Real cA,
++                const Real cB,
++                const int   xA,
++                const int   xB,
++                const double coeff_desolv,
++                const double sigma,
++                /* not const */ EnergyTables *const ad_tables,
++                const Boole B_is_unbound_calculation );
+ #endif
+Index: autodocksuite-4.2.3/autodock/main.h
+===================================================================
+--- autodocksuite-4.2.3.orig/autodock/main.h	2010-07-23 20:28:30.000000000 +0200
++++ autodocksuite-4.2.3/autodock/main.h	2010-07-23 20:28:45.000000000 +0200
+@@ -63,7 +63,7 @@
+ #define UNBOUND 0
+ #define DOCKED 1
+ 
+-int  main( int  argc, char **argv);
++int  main( int  argc, const char **argv);
+ //int main (int argc, char * const argv[], char * const envp[]);
+ 
+ #endif
+Index: autodocksuite-4.2.3/autodock/print_atomic_energies.cc
+===================================================================
+--- autodocksuite-4.2.3.orig/autodock/print_atomic_energies.cc	2010-07-23 20:12:33.000000000 +0200
++++ autodocksuite-4.2.3/autodock/print_atomic_energies.cc	2010-07-23 20:13:15.000000000 +0200
+@@ -36,12 +36,12 @@
+ extern FILE *logFile;
+ 
+ /*----------------------------------------------------------------------------*/
+-void print_atomic_energies( int natom, 
+-			    char atomstuff[MAX_ATOMS][MAX_CHARS],
+-			    int type[MAX_ATOMS],
+-			    Real emap[MAX_ATOMS],
+-			    Real elec[MAX_ATOMS],
+-			    Real charge[MAX_ATOMS] )
++void print_atomic_energies( const int natom, 
++			    const char atomstuff[MAX_ATOMS][MAX_CHARS],
++			    const int type[MAX_ATOMS],
++			    const Real emap[MAX_ATOMS],
++			    const Real elec[MAX_ATOMS],
++			    const Real charge[MAX_ATOMS] )
+ 
+ /*----------------------------------------------------------------------------*/
+ {
+Index: autodocksuite-4.2.3/autodock/print_atomic_energies.h
+===================================================================
+--- autodocksuite-4.2.3.orig/autodock/print_atomic_energies.h	2010-07-23 20:11:39.000000000 +0200
++++ autodocksuite-4.2.3/autodock/print_atomic_energies.h	2010-07-23 20:12:10.000000000 +0200
+@@ -29,10 +29,10 @@
+ 
+ #include "constants.h"
+ 
+-void  print_atomic_energies(int   natom,
+-                            char  atomstuff[MAX_ATOMS][MAX_CHARS],
+-                            int   type[MAX_ATOMS],
+-                            Real emap[MAX_ATOMS],
+-                            Real elec[MAX_ATOMS],
+-                            Real charge[MAX_ATOMS] );
++void  print_atomic_energies(const int   natom,
++                            const char  atomstuff[MAX_ATOMS][MAX_CHARS],
++                            const int   type[MAX_ATOMS],
++                            const Real emap[MAX_ATOMS],
++                            const Real elec[MAX_ATOMS],
++                            const Real charge[MAX_ATOMS] );
+ #endif
+Index: autodocksuite-4.2.3/autodock/print_avsfld.h
+===================================================================
+--- autodocksuite-4.2.3.orig/autodock/print_avsfld.h	2010-07-23 20:15:35.000000000 +0200
++++ autodocksuite-4.2.3/autodock/print_avsfld.h	2010-07-23 20:15:56.000000000 +0200
+@@ -29,12 +29,12 @@
+ 
+ #include "constants.h"
+ 
+-void  print_avsfld(FILE  *logFile,
+-                   int   veclen,
+-                   int   natom,
+-                   int   nframe,
+-                   int   offset[VECLENMAX],
+-                   int   stride,
+-                   char  *label,
+-                   char  *filename );
++void  print_avsfld(FILE  *const logFile,
++                   const int   veclen,
++                   const int   natom,
++                   const int   nframe,
++                   const int   offset[VECLENMAX],
++                   const int   stride,
++                   const char  *const label,
++                   const char  *const filename );
+ #endif
+Index: autodocksuite-4.2.3/autodock/setflags.h
+===================================================================
+--- autodocksuite-4.2.3.orig/autodock/setflags.h	2010-07-23 20:18:20.000000000 +0200
++++ autodocksuite-4.2.3/autodock/setflags.h	2010-07-23 20:18:44.000000000 +0200
+@@ -29,8 +29,8 @@
+ #include "constants.h"
+ #include "usage.h"
+ 
+-int setflags( int argc, 
+-              char ** argv,
+-              const char * version_num);
++int setflags( /* not const */int argc, 
++              const char ** /* not const */ argv,
++              const char *const version_num);
+ 
+ #endif

Added: trunk/packages/autodocksuite/trunk/debian/patches/const_suggetsions_gcc4.6_1st_iteration.patch
===================================================================
--- trunk/packages/autodocksuite/trunk/debian/patches/const_suggetsions_gcc4.6_1st_iteration.patch	                        (rev 0)
+++ trunk/packages/autodocksuite/trunk/debian/patches/const_suggetsions_gcc4.6_1st_iteration.patch	2010-08-01 13:58:53 UTC (rev 5085)
@@ -0,0 +1,228 @@
+Index: autodocksuite-4.2.3/autodock/ls.cc
+===================================================================
+--- autodocksuite-4.2.3.orig/autodock/ls.cc	2010-07-20 21:57:43.000000000 +0200
++++ autodocksuite-4.2.3/autodock/ls.cc	2010-07-20 22:01:44.000000000 +0200
+@@ -106,10 +106,10 @@
+ #ifdef DEBUG
+ //convenience function for debugging
+ #define traceState(msg,vector) printDState(logFile,msg,vector,i,prevxyz,startxyz,prevQuat,startQuat,num_successes,num_failures,temp_rho,bias,deviates)
+-void printDState(FILE *logFile,char * msg,Phenotype &newPh, int i, Real prevxyz[3],
++void printDState(FILE *logFile, const char * msg,Phenotype &newPh, int i, Real prevxyz[3],
+                  Real startxyz[3], Quat prevQuat, Quat startQuat, 
+                  unsigned int num_successes, unsigned int num_failures,
+-                 Real temp_rho, Real * bias, Real * deviates);
++                 Real temp_rho, Real * bias, Real * deviates) const;
+    Real xyz[3];
+    Real prevxyz[3];
+    Real startxyz[3];
+@@ -413,7 +413,7 @@
+ 	}
+ }
+ 
+-int Pattern_Search::terminate(void)
++int Pattern_Search::terminate(void) const
+ {
+    return (0);
+ }
+@@ -508,7 +508,7 @@
+   return newBase;
+ }
+ 
+-Phenotype Pattern_Search::pattern_explore(const Phenotype& base) {
++Phenotype Pattern_Search::pattern_explore(const Phenotype& base) const {
+   Phenotype newPoint = pattern_move(base);
+   reset_pattern();
+   Phenotype newBase = exploratory_move(newPoint);
+@@ -523,10 +523,10 @@
+   return newPoint;
+ }
+ //void printDState(logFile,msg,vector,i,prevxyz,startxyz, prevQuat,startQuat,num_successes,num_failures,temp_rho,bias,deviates); 
+-void printDState(FILE *logFile,char * msg,Phenotype &newPh, int i, Real prevxyz[3],
++void printDState(FILE *logFile, const char * msg,Phenotype &newPh, int i, Real prevxyz[3],
+                  Real startxyz[3], Quat prevQuat, Quat startQuat, 
+                  unsigned int num_successes, unsigned int num_failures,
+-                 Real temp_rho, Real * bias, Real * deviates) 
++                 Real temp_rho, Real * bias, Real * deviates) const
+ {
+ #ifdef DEBUG
+    Real dt; // translation step scalar
+Index: autodocksuite-4.2.3/autodock/ls.h
+===================================================================
+--- autodocksuite-4.2.3.orig/autodock/ls.h	2010-07-20 21:58:50.000000000 +0200
++++ autodocksuite-4.2.3/autodock/ls.h	2010-07-20 22:03:14.000000000 +0200
+@@ -66,7 +66,7 @@
+       //int HJ_bias; // not implemented
+       //Real * step_scales; // not implemented
+ 			Phenotype exploratory_move(const Phenotype&);
+-			Phenotype pattern_explore(const Phenotype&);
++			Phenotype pattern_explore(const Phenotype&) const;
+ 			Phenotype pattern_move(const Phenotype&);
+ 			void reset_pattern(void);
+ 			void reset_indexes(void);
+@@ -76,7 +76,7 @@
+       Pattern_Search(unsigned int, unsigned int, Real, Real, Real, Real, Real);
+       ~Pattern_Search(void);
+       void reset(void);
+-      int terminate(void);
++      int terminate(void) const;
+       int search(Individual &);
+ };
+ 
+@@ -95,7 +95,7 @@
+       virtual double gen_deviates(Real) = 0;
+       virtual Boole SW(Phenotype &) = 0;
+       virtual void reset(void);
+-      virtual int terminate(void);
++      virtual int terminate(void) const;
+       int search(Individual &);
+ };
+ 
+@@ -208,7 +208,7 @@
+    count = 0; // reset Statistics
+ }
+ 
+-inline int Solis_Wets_Base::terminate(void)
++inline int Solis_Wets_Base::terminate(void) const
+ {
+    return(0);  //  Don't terminate
+ }
+Index: autodocksuite-4.2.3/autodock/qmultiply.cc
+===================================================================
+--- autodocksuite-4.2.3.orig/autodock/qmultiply.cc	2010-07-20 22:04:07.000000000 +0200
++++ autodocksuite-4.2.3/autodock/qmultiply.cc	2010-07-20 22:05:29.000000000 +0200
+@@ -343,7 +343,7 @@
+     *ptr_quat = convertQuatToRot( *ptr_quat );
+ }
+ 
+-Quat conjugate( const Quat q )
++Quat conjugate( const Quat q ) const
+ {
+     Quat conj;
+ 
+@@ -355,7 +355,7 @@
+     return conj;
+ }
+ 
+-Quat inverse( const Quat q )
++Quat inverse( const Quat q ) const
+ {
+     register Quat conj, inv;
+     register double inv_squared_magnitude;
+@@ -552,7 +552,7 @@
+     return normQuat( Q );
+ }
+ 
+-const Quat identityQuat()
++const Quat identityQuat() const
+ {
+     Quat Q;
+     Q.x = Q.y = Q.z = 0.;
+@@ -568,7 +568,7 @@
+ #define MIN_ANGLE -HALF_ROTATION // Angles that go from 0 to one-rotation // #define MIN_ANGLE 0.
+ #define MAX_ANGLE HALF_ROTATION // Angles that go from 0 to one-rotation // #define MAX_ANGLE ONE_ROTATION
+ 
+-Real a_range_reduction( Real a )
++Real a_range_reduction( Real a ) const
+ {
+     if (a <= MIN_ANGLE) {
+         do a += ONE_ROTATION;
+@@ -580,7 +580,7 @@
+     return a;
+ }
+ 
+-Real alerp( Real a, Real b, Real fract )
++Real alerp( Real a, Real b, Real fract ) const
+ {
+     // if fract==0, return a
+     // if fract==1, return b
+Index: autodocksuite-4.2.3/autodock/qmultiply.h
+===================================================================
+--- autodocksuite-4.2.3.orig/autodock/qmultiply.h	2010-07-20 22:05:31.000000000 +0200
++++ autodocksuite-4.2.3/autodock/qmultiply.h	2010-07-20 22:06:23.000000000 +0200
+@@ -39,8 +39,8 @@
+ Quat normRot( Quat q );
+ Real quatDifferenceToAngle( const Quat ql, const Quat qr );
+ Real quatDifferenceToAngleDeg( const Quat ql, const Quat qr );
+-Quat conjugate( const Quat q );
+-Quat inverse( const Quat q );
++Quat conjugate( const Quat q ) const;
++Quat inverse( const Quat q ) const;
+ Quat slerp( const Quat qa, const Quat qb, const double t );
+ Quat slerp0( const Quat qa, const Quat qb, const double t );
+ Quat slerp1( const Quat qa, const Quat qb, const double t );
+@@ -60,7 +60,7 @@
+ void print_q_reorient_message( FILE *logFile, Quat q_reorient );
+ void create_random_orientation( Quat *ptr_quat );
+ //void assertQuatOK( const Quat q );
+-const Quat identityQuat();
+-Real a_range_reduction( Real a );
+-Real alerp( Real a, Real b, Real fract );
++const Quat identityQuat() const;
++Real a_range_reduction( Real a ) const;
++Real alerp( Real a, Real b, Real fract ) const;
+ #endif
+Index: autodocksuite-4.2.3/autodock/ranlib.cc
+===================================================================
+--- autodocksuite-4.2.3.orig/autodock/ranlib.cc	2010-07-20 22:07:08.000000000 +0200
++++ autodocksuite-4.2.3/autodock/ranlib.cc	2010-07-20 22:07:29.000000000 +0200
+@@ -1918,7 +1918,7 @@
+     u = ranf();
+     goto S140;
+ }
+-Real fsign( Real num, Real sign )
++Real fsign( Real num, Real sign ) const
+ /* Transfers sign of argument sign to argument num */
+ {
+ if ( ( sign>0.0f && num<0.0f ) || ( sign<0.0f && num>0.0f ) )
+Index: autodocksuite-4.2.3/autodock/read_parameter_library.cc
+===================================================================
+--- autodocksuite-4.2.3.orig/autodock/read_parameter_library.cc	2010-07-20 21:54:40.000000000 +0200
++++ autodocksuite-4.2.3/autodock/read_parameter_library.cc	2010-07-20 21:55:06.000000000 +0200
+@@ -348,7 +348,7 @@
+     } // while there is another line of parameters to read in
+ }
+ 
+-char * report_parameter_library(){
++char * report_parameter_library() const {
+     return parameter_library;
+ }
+ 
+Index: autodocksuite-4.2.3/autodock/read_parameter_library.h
+===================================================================
+--- autodocksuite-4.2.3.orig/autodock/read_parameter_library.h	2010-07-20 21:55:11.000000000 +0200
++++ autodocksuite-4.2.3/autodock/read_parameter_library.h	2010-07-20 21:57:04.000000000 +0200
+@@ -40,7 +40,7 @@
+         Unbound_Model unbound_model
+         );
+ 
+-char * report_parameter_library();
++char * report_parameter_library() const;
+ 
+ void setup_distdepdiel( int outlev, 
+                         EnergyTables *ptr_ad_energy_tables  // Holds vdw+Hb, desolvation & dielectric lookup tables
+Index: autodocksuite-4.2.3/autodock/readmap.cc
+===================================================================
+--- autodocksuite-4.2.3.orig/autodock/readmap.cc	2010-07-20 21:52:36.000000000 +0200
++++ autodocksuite-4.2.3/autodock/readmap.cc	2010-07-20 21:53:57.000000000 +0200
+@@ -305,7 +305,7 @@
+     return map_stats;
+ }
+ 
+-Real mapc2f(char numin)
++Real mapc2f(const char numin) const
+ {
+     Real numout;
+     if (numin == 0) {
+Index: autodocksuite-4.2.3/autodock/readmap.h
+===================================================================
+--- autodocksuite-4.2.3.orig/autodock/readmap.h	2010-07-20 21:54:05.000000000 +0200
++++ autodocksuite-4.2.3/autodock/readmap.h	2010-07-20 21:54:18.000000000 +0200
+@@ -37,7 +37,7 @@
+ #include "check_header_float.h"
+ #include "check_header_int.h"
+ #include "timesys.h"
+-Real   mapc2f( char C_mapValue );
++Real   mapc2f( char C_mapValue ) const;
+ #endif
+ 
+ #ifndef READMAP

Added: trunk/packages/autodocksuite/trunk/debian/patches/manual_const_1.patch
===================================================================
--- trunk/packages/autodocksuite/trunk/debian/patches/manual_const_1.patch	                        (rev 0)
+++ trunk/packages/autodocksuite/trunk/debian/patches/manual_const_1.patch	2010-08-01 13:58:53 UTC (rev 5085)
@@ -0,0 +1,578 @@
+Index: autodocksuite-4.2.3/autodock/gs.cc
+===================================================================
+--- autodocksuite-4.2.3.orig/autodock/gs.cc	2010-07-20 23:43:06.000000000 +0200
++++ autodocksuite-4.2.3/autodock/gs.cc	2010-07-20 23:46:25.000000000 +0200
+@@ -74,12 +74,11 @@
+ //#define DEBUG_MUTATION
+ 
+ 
+-double worst_in_window(double *window, int size)
++double worst_in_window(const double *const window, const int size) 
+ {
+    register int i;
+-   double worst;
+ 
+-   worst = window[0];
++   double worst = window[0];
+ 
+ #ifdef DEBUG2
+    (void)fprintf(logFile, "gs.cc/double worst_in_window(double *window, int size)_________________________\n");//debug
+@@ -108,10 +107,10 @@
+    return(worst);
+ }
+ 
+-double avg_in_window(double *window, int size)
++double avg_in_window(const double *const window, const int size) 
+ {
+    register int i;
+-   double mysum = 0.0, myavg = 0.0;
++   double mysum = 0.0;
+ 
+ #ifdef DEBUG2
+    (void)fprintf(logFile, "gs.cc/avg_in_window(double *window, int size)_________________________\n");//debug
+@@ -122,7 +121,7 @@
+       (void)fprintf(logFile, "gs.cc/mysum= %.3f\twindow[%d]= %.3f\n",mysum, i, window[i]);//debug
+ #endif
+    }
+-   myavg = mysum / size;
++   const double myavg = mysum / size;
+ #ifdef DEBUG2
+    (void)fprintf(logFile, "gs.cc/Returning: myavg= %.3f\n\n",myavg);//debug
+ #endif
+@@ -130,8 +129,8 @@
+    return(myavg);
+ }
+ 
+-//  Also set avg
+-double Genetic_Algorithm::worst_this_generation(Population &pop)
++//  Also set avg -- and because of avg this is not a const function
++double Genetic_Algorithm::worst_this_generation(const Population &pop)
+ {
+    register unsigned int i;
+    double worstval, avgval;
+@@ -170,16 +169,16 @@
+ 
+ //  This could be made inline
+ 
+-Genetic_Algorithm::Genetic_Algorithm( EvalMode init_e_mode, 
+-                                      Selection_Mode init_s_mode, 
+-                                      Xover_Mode init_c_mode,
+-                                      Worst_Mode init_w_mode, 
+-                                      int init_elitism, 
+-                                      Real init_c_rate, 
+-                                      Real init_m_rate, 
+-                                      int init_window_size, 
+-                                      unsigned int init_max_generations,
+-                                      unsigned int outputEveryNgens)
++Genetic_Algorithm::Genetic_Algorithm( const EvalMode init_e_mode, 
++                                      const Selection_Mode init_s_mode, 
++                                      const Xover_Mode init_c_mode,
++                                      const Worst_Mode init_w_mode, 
++                                      const int init_elitism, 
++                                      const Real init_c_rate, 
++                                      const Real init_m_rate, 
++                                      const int init_window_size, 
++                                      const unsigned int init_max_generations,
++                                      const unsigned int outputEveryNgens)
+ 
+ :  e_mode(init_e_mode),
+ s_mode(init_s_mode),
+@@ -216,7 +215,7 @@
+    worst_window = new double[window_size];
+ }
+ 
+-int Genetic_Algorithm::set_linear_ranking_selection_probability_ratio(Real r)
++int Genetic_Algorithm::set_linear_ranking_selection_probability_ratio(const Real r)
+ {
+     if (r<0.) return -1;  //ERROR!
+     linear_ranking_selection_probability_ratio = r;
+@@ -225,7 +224,7 @@
+ 
+ 
+ 
+-void Genetic_Algorithm::set_worst(Population &currentPop)
++void Genetic_Algorithm::set_worst(const Population &currentPop)
+ {
+    double temp = 0.0;
+ 
+@@ -264,7 +263,7 @@
+    }
+ }
+ 
+-M_mode Genetic_Algorithm::m_type(RepType type)
++M_mode Genetic_Algorithm::m_type(const RepType type) const
+ {
+ 
+ #ifdef DEBUG
+@@ -285,7 +284,7 @@
+    }
+ }
+ 
+-void Genetic_Algorithm::make_table(int size, Real prob)
++void Genetic_Algorithm::make_table(const int size, const Real prob)
+ {
+    register int i, j;
+    double L = 0.0L;
+@@ -352,7 +351,7 @@
+ #endif
+ }
+ 
+-int Genetic_Algorithm::check_table(Real prob)
++int Genetic_Algorithm::check_table(const Real prob)
+ {
+    int low, high;
+ 
+@@ -394,7 +393,7 @@
+    return(low);
+ }
+ 
+-void Genetic_Algorithm::initialize(unsigned int pop_size, unsigned int num_poss_mutations)
++void Genetic_Algorithm::initialize(const unsigned int pop_size, const unsigned int num_poss_mutations)
+ {
+    register unsigned int i;
+ 
+@@ -427,7 +426,7 @@
+    make_table(pop_size*num_poss_mutations, m_rate);
+ }
+ 
+-void Genetic_Algorithm::mutate(Genotype &mutant, int gene_number)
++void Genetic_Algorithm::mutate(Genotype &mutant, const int gene_number)
+ {
+    Element tempvar;
+ 
+@@ -796,7 +795,7 @@
+ }
+ 
+ 
+-void Genetic_Algorithm::crossover_uniform(Genotype &father, Genotype &mother, unsigned int num_genes)
++void Genetic_Algorithm::crossover_uniform(Genotype &father, Genotype &mother, const unsigned int num_genes)
+ {
+ #ifdef DEBUG
+     (void)fprintf(logFile, "gs.cc/void Genetic_Algorithm::crossover_uniform(Genotype");
+@@ -873,7 +872,7 @@
+     } // next i
+ }
+ 
+-void Genetic_Algorithm::crossover_arithmetic(Genotype &A, Genotype &B, Real alpha)
++void Genetic_Algorithm::crossover_arithmetic(Genotype &A, Genotype &B, const Real alpha)
+ {
+    register unsigned int i;
+    Element temp_A, temp_B;
+Index: autodocksuite-4.2.3/autodock/gs.h
+===================================================================
+--- autodocksuite-4.2.3.orig/autodock/gs.h	2010-07-20 23:43:06.000000000 +0200
++++ autodocksuite-4.2.3/autodock/gs.h	2010-07-20 23:46:25.000000000 +0200
+@@ -88,11 +88,11 @@
+       double *worst_window;
+       Real linear_ranking_selection_probability_ratio;
+ 
+-      double worst_this_generation(Population &);
+-      void set_worst(Population &);
++      double worst_this_generation(const Population &);
++      void set_worst(const Population &);
+       void make_table(int, Real);
+       int check_table(Real);
+-      M_mode m_type(RepType);
++      M_mode m_type(RepType) const;
+       void mutate(Genotype &, int);
+       void mutation(Population &);
+       void crossover(Population &);
+Index: autodocksuite-4.2.3/autodock/ls.cc
+===================================================================
+--- autodocksuite-4.2.3.orig/autodock/ls.cc	2010-07-20 23:43:06.000000000 +0200
++++ autodocksuite-4.2.3/autodock/ls.cc	2010-07-20 23:46:25.000000000 +0200
+@@ -472,9 +472,9 @@
+   return (0);
+ }
+ 
+-Phenotype Pattern_Search::exploratory_move(const Phenotype& base) {
++Phenotype Pattern_Search::exploratory_move(const Phenotype& base) /* not const */ {
+   Phenotype newBase(base);
+-	shuffle_indexes();
++	shuffle_indexes(); 
+ 	unsigned int current_index;
+ 	int direction;
+ 
+@@ -508,14 +508,14 @@
+   return newBase;
+ }
+ 
+-Phenotype Pattern_Search::pattern_explore(const Phenotype& base) const {
++Phenotype Pattern_Search::pattern_explore(const Phenotype& base) /* not const */ {
+   Phenotype newPoint = pattern_move(base);
+   reset_pattern();
+   Phenotype newBase = exploratory_move(newPoint);
+   return newBase;
+ }
+ 
+-Phenotype Pattern_Search::pattern_move(const Phenotype& base) {
++Phenotype Pattern_Search::pattern_move(const Phenotype& base) const {
+   Phenotype newPoint(base);
+   for (unsigned int i=0; i < size; i++) {
+     newPoint.write(newPoint.gread(i).real + pattern[i] , i);
+@@ -524,9 +524,9 @@
+ }
+ //void printDState(logFile,msg,vector,i,prevxyz,startxyz, prevQuat,startQuat,num_successes,num_failures,temp_rho,bias,deviates); 
+ void printDState(FILE *logFile, const char * msg,Phenotype &newPh, int i, Real prevxyz[3],
+-                 Real startxyz[3], Quat prevQuat, Quat startQuat, 
++                 Real startxyz[3], const Quat prevQuat, const Quat startQuat, 
+                  unsigned int num_successes, unsigned int num_failures,
+-                 Real temp_rho, Real * bias, Real * deviates) const
++                 Real temp_rho, Real * bias, Real * deviates)
+ {
+ #ifdef DEBUG
+    Real dt; // translation step scalar
+Index: autodocksuite-4.2.3/autodock/ls.h
+===================================================================
+--- autodocksuite-4.2.3.orig/autodock/ls.h	2010-07-20 23:43:06.000000000 +0200
++++ autodocksuite-4.2.3/autodock/ls.h	2010-07-21 00:10:38.000000000 +0200
+@@ -47,7 +47,7 @@
+       Local_Search(void);
+       virtual ~Local_Search(void);
+       virtual void reset(void) = 0;
+-      virtual int terminate(void) = 0;
++      virtual int terminate(void) const = 0;
+       virtual int search(Individual &) = 0;
+       unsigned int count;//search invocation count, for run statistics
+ };
+@@ -65,19 +65,19 @@
+ 			unsigned int successes;
+       //int HJ_bias; // not implemented
+       //Real * step_scales; // not implemented
+-			Phenotype exploratory_move(const Phenotype&);
+-			Phenotype pattern_explore(const Phenotype&) const;
+-			Phenotype pattern_move(const Phenotype&);
+-			void reset_pattern(void);
+-			void reset_indexes(void);
+-			void shuffle_indexes(void);
++			Phenotype exploratory_move(const Phenotype&) /* not const */;
++			Phenotype pattern_explore(const Phenotype&) /* not const */;
++			Phenotype pattern_move(const Phenotype&) const;
++			void reset_pattern(void) /* not const */ ;
++			void reset_indexes(void) /* not const */ ;
++			void shuffle_indexes(void) /* not const */ ;
+    public:
+       Pattern_Search(void);
+       Pattern_Search(unsigned int, unsigned int, Real, Real, Real, Real, Real);
+       ~Pattern_Search(void);
+       void reset(void);
+       int terminate(void) const;
+-      int search(Individual &);
++      int search(/* not const */ Individual &);
+ };
+ 
+ class Solis_Wets_Base : public Local_Search
+Index: autodocksuite-4.2.3/autodock/support.cc
+===================================================================
+--- autodocksuite-4.2.3.orig/autodock/support.cc	2010-07-20 23:43:06.000000000 +0200
++++ autodocksuite-4.2.3/autodock/support.cc	2010-07-21 00:52:35.000000000 +0200
+@@ -45,7 +45,7 @@
+ //  These are the member functions for the support classes.
+ 
+ 
+-Population::Population(Population &original)
++Population::Population(const Population &original)
+ : lhb(original.lhb), size(original.size)
+ {
+    register int i;
+@@ -193,7 +193,7 @@
+    //}
+ //}
+ 
+-void Population::print(FILE *output, int num) {
++void Population::print(FILE *output, const int num) const {
+    register int i;
+ 
+ #ifdef DEBUG
+@@ -246,7 +246,7 @@
+   
+    
+ 
+-int Population::printPopulationStatistics(FILE *output, int level, Boole appendNewline) {
++int Population::printPopulationStatistics(FILE *output, const int level, const Boole appendNewline) const {
+ // write best energy, etc, depending on level
+ // return 0 if OK, non-zero if error
+ // Code adapted from gs.cc  - M Pique  December 2009
+@@ -336,7 +336,7 @@
+     return returnCode;
+  }
+ int Population::printPopulationStatisticsVerbose(FILE * output, 
+- unsigned int generations, long int nevals, const char suffix[]){ /* print with generations & #evals */
++ const unsigned int generations, const long int nevals, const char suffix[]) const { /* print with generations & #evals */
+ int returnCode=0;
+    // print "Population at Generation:" line with low/high/mean/median/stddev...
+    (void) fprintf(output, "Population at Generation: %3u ", generations);
+@@ -347,7 +347,7 @@
+ }
+  	
+ 
+-void Population::printPopulationAsStates(FILE *output, int num, int ntor) {
++void Population::printPopulationAsStates(FILE *output, const int num, const int ntor) const {
+    register int i;
+ #ifdef DEBUG2
+    register int j;
+@@ -385,7 +385,7 @@
+    (void)fprintf( output, "</population>\n");
+ }
+ 
+-void Population::printPopulationAsCoordsEnergies(FILE *output, int num, int ntor) {
++void Population::printPopulationAsCoordsEnergies(FILE *output, const int num, const int ntor) const {
+    register int i;
+    double thisValue;
+ 
+@@ -425,7 +425,7 @@
+    (void)fprintf( output, "\n");
+ }
+ 
+-void Population::set_eob(int init_end_of_branch[MAX_TORS])
++void Population::set_eob(const int init_end_of_branch[MAX_TORS])
+ // Set the end_of_branch[MAX_TORS] array
+ {
+    for (register int i=0; i<MAX_TORS; i++) {
+@@ -433,7 +433,7 @@
+    }
+ }
+ 
+-int Population::get_eob(int init_tor)
++int Population::get_eob(const int init_tor) const
+ // Get the end_of_branch[] value for the supplied torsion number, init_tor
+ {
+     if ((init_tor >= 0) && (init_tor < MAX_TORS)) {
+@@ -903,7 +903,7 @@
+    return(value);
+ }
+ 
+-State Phenotype::make_state(int ntor)
++State Phenotype::make_state(const int ntor) const
+ {
+    State retval;
+ 
+@@ -917,7 +917,7 @@
+    return(retval);
+ }
+ 
+-Individual &Population::operator[](int ind_num)
++Individual &Population::operator[](const int ind_num) const
+ {
+ 
+ #ifdef DEBUG
+@@ -932,7 +932,7 @@
+    }
+ }
+ 
+-State Individual::state(int ntor)
++State Individual::state(int ntor) const
+ {
+ 
+ #ifdef DEBUG
+@@ -954,7 +954,7 @@
+     returnedMol = &molcopy;
+ }
+ 
+-void Individual::printIndividualsState(FILE *filePtr, int ntor, int detail) 
++void Individual::printIndividualsState(FILE *filePtr, const int ntor, const int detail) const
+ {
+ #ifdef DEBUG
+    (void)fprintf(logFile, "support.cc/void Individual::printIndividualsState(FILE *filePtr, int ntor=%d, int detaiil=%d)\n", ntor, detail);
+Index: autodocksuite-4.2.3/autodock/support.h
+===================================================================
+--- autodocksuite-4.2.3.orig/autodock/support.h	2010-07-20 23:43:06.000000000 +0200
++++ autodocksuite-4.2.3/autodock/support.h	2010-07-21 00:07:08.000000000 +0200
+@@ -220,7 +220,7 @@
+       void write(double, int);
+       void write(const Representation &, int);
+       double evaluate(EvalMode);  //  This should return evaluation if that's the right answer, and it should evaluate otherwise.
+-      State make_state(int);
++      State make_state(int) const;
+       unsigned int num_dimensions(void);
+       unsigned int num_pts(void);
+       Quat readQuat();
+@@ -249,9 +249,9 @@
+       //Phenotype mapping(void); /* takes the genotype and converts it into a phenotype.  */
+       //Genotype inverse_mapping(void);  // Scott should do: Also copy Phenotype's value
+       double value(EvalMode); /* evaluation of the individual gives its value */
+-      State state(int); /* state variables in AutoDock */
++      State state(int) const; /* state variables in AutoDock */
+       void  getMol(Molecule *); /* converts phenotype to mol's state and returns this individual's mol data */
+-      void printIndividualsState(FILE *, int, int); /* print out the state of this individual */
++      void printIndividualsState(FILE *, const int, const int) const; /* print out the state of this individual */
+       void incrementAge(); /* make individual grow 1 generation older */
+       int serial; // serial number of this individual
+ };
+@@ -270,22 +270,22 @@
+ 
+    public:
+       Population(void);
+-      Population(int); /* create a pop. with this many individuals */
+-      Population(int, Individual *); /* takes an array of ind's and turns into pop. */
+-      Population(Population &); /* copy constructor */
++      Population(const int); /* create a pop. with this many individuals */
++      Population(const int, Individual *); /* takes an array of ind's and turns into pop. */
++      Population(const Population &); /* copy constructor */
+       ~Population(void); /* destructor */
+-      Individual &operator[](int);  /* for accessing a particular indiv.in pop*/
++      Individual &operator[](const int) const;  /* for accessing a particular indiv.in pop*/
+       Population &operator=(const Population &);
+-      unsigned int num_individuals(void); /* returns the size of the pop. */
++      unsigned int num_individuals(void) const; /* returns the size of the pop. */
+       void msort(int); /* sorts the first m individuals using heap properties */
+       // void print(ostream &, int); /* prints top int energies */
+-      void print(FILE *, int); /* like above */
+-      int printPopulationStatistics(FILE *, int, Boole); /* prints best, worse, mean, etc energies */
+-      int printPopulationStatisticsVerbose(FILE *, unsigned int, long int, const char []); /* print with generations & #evals */
+-      void printPopulationAsStates(FILE *, int, int); /*prints energies,states of top energies */
+-      void printPopulationAsCoordsEnergies(FILE *, int, int); /*prints energies,states of top energies */
+-      void set_eob(int init_end_of_branch[MAX_TORS]); // For Branch Crossover Mode
+-      int get_eob(int init_tor); // For Branch Crossover Mode
++      void print(FILE *, const int) const; /* like above */
++      int printPopulationStatistics(FILE *, const int, const Boole) const; /* prints best, worse, mean, etc energies */
++      int printPopulationStatisticsVerbose(FILE *, const unsigned int, const long int, const char []) const; /* print with generations & #evals */
++      void printPopulationAsStates(FILE *, const int, const int) const; /*prints energies,states of top energies */
++      void printPopulationAsCoordsEnergies(FILE *, const int, const int) const; /*prints energies,states of top energies */
++      void set_eob(const int init_end_of_branch[MAX_TORS]); // For Branch Crossover Mode
++      int get_eob(const int init_tor) const; // For Branch Crossover Mode
+ };
+ 
+ /**************************************************************************
+@@ -406,7 +406,7 @@
+     }
+ }
+ 
+-inline Population::Population(int num_inds)
++inline Population::Population(const int num_inds)
+ : lhb(num_inds-1), size(num_inds)
+ {
+    heap = new Individual[num_inds];
+@@ -415,7 +415,7 @@
+     }
+ }
+ 
+-inline Population::Population(int newpopsize, Individual *newpop)
++inline Population::Population(const int newpopsize, Individual *const newpop)
+ : size(newpopsize), heap(newpop)
+ {
+    //  Do initialization stuff
+@@ -432,7 +432,7 @@
+    }
+ }
+ 
+-inline unsigned int Population::num_individuals(void)
++inline unsigned int Population::num_individuals(void) const
+ {
+    return(size);
+ }
+Index: autodocksuite-4.2.3/autodock/eval.cc
+===================================================================
+--- autodocksuite-4.2.3.orig/autodock/eval.cc	2010-07-21 00:01:25.000000000 +0200
++++ autodocksuite-4.2.3/autodock/eval.cc	2010-07-21 00:42:24.000000000 +0200
+@@ -65,7 +65,7 @@
+        tor 1, ..., tor N are the ntor torsion angles
+ */
+ 
+-void make_state_from_rep(Representation **rep, State *stateNow)
++void make_state_from_rep(const Representation *const *const rep, State *stateNow) /* not a member function */
+ /*
+     This routine modifies the various components of stateNow to correspond
+     to the chromosome.  
+@@ -114,13 +114,13 @@
+    // mkUnitQuat(&(stateNow->Q));
+ }
+ 
+-double Eval::operator()(Representation **rep)
++double Eval::operator()(const Representation *const *const rep)
+ {
+    make_state_from_rep(rep, &stateNow);
+    return eval();
+ }
+ 
+-double Eval::operator()(Representation **rep, int term)
++double Eval::operator()(const Representation *const *const rep, int term)
+ {
+    make_state_from_rep(rep, &stateNow);
+    return eval(term);
+@@ -136,7 +136,7 @@
+ }
+ 
+ 
+-double Eval::eval(int term)
++double Eval::eval(const int term)
+ 
+ // Use this method, eval(int term), to compute just one particular term of the total energy
+ //
+@@ -263,7 +263,7 @@
+    return(retval);
+ }
+ 
+-int Eval::write(FILE *out_file, Representation **rep)
++int Eval::write(FILE *out_file, const Representation *const *const rep)
+ {
+     int i=0, retval=0;
+     //char rec14[14];
+@@ -283,14 +283,14 @@
+ }
+ 
+ #if defined(USING_COLINY) // {
+-double Eval::operator()(double* vec, int len)
++double Eval::operator()(double* vec, const int len)
+ {
+    make_state_from_rep(vec, len, &stateNow);
+    return eval();
+ }
+ 
+ 
+-void make_state_from_rep(double *rep, int n, State *now)
++void make_state_from_rep(double *rep, const int n, State *now)
+ {
+ #   ifdef DEBUG
+     (void)fprintf(logFile, "eval.cc/make_state_from_rep(double *rep, int n, State *now)\n");
+Index: autodocksuite-4.2.3/autodock/eval.h
+===================================================================
+--- autodocksuite-4.2.3.orig/autodock/eval.h	2010-07-21 00:33:26.000000000 +0200
++++ autodocksuite-4.2.3/autodock/eval.h	2010-07-21 00:51:01.000000000 +0200
+@@ -46,10 +46,10 @@
+ #endif
+ 
+ #if defined(USING_COLINY)
+-void make_state_from_rep(double *x, int n, State *now);
++void make_state_from_rep(double *x, const int n, State *now);
+ #endif
+ 
+-void make_state_from_rep(Representation **rep, State *stateNow);
++void make_state_from_rep(const Representation *const *const rep, State *stateNow);
+ 
+ class Eval
+ {
+@@ -114,16 +114,16 @@
+       void update_crds( Real init_crdreo[MAX_ATOMS][SPACE], 
+                         Real init_vt[MAX_TORS][SPACE] );
+ 
+-      double operator()(Representation **);
+-      double operator()(Representation **, int); // GMM - allows calculation of a particular term of the total energy
++      double operator()(const Representation *const *const );
++      double operator()(const Representation *const *const , int); // GMM - allows calculation of a particular term of the total energy
+ #if defined(USING_COLINY)
+       double operator()(double*, int);
+ #endif
+       double eval();    // WEH - a basic change that facilitates the use of Coliny
+-      double eval(int); // GMM - allows calculation of a particular term of the total energy
++      double eval(const int); // GMM - allows calculation of a particular term of the total energy
+       UnsignedFourByteLong evals(void);
+       void reset(void);
+-      int write(FILE *out_file, Representation **rep);
++      int write(FILE *out_file, const Representation *const *const rep);
+       double evalpso(State *state);
+       void compute_intermol_energy(Boole init_B_compute_intermol_energy); // for computing unbound state
+ };
+Index: autodocksuite-4.2.3/autodock/ranlib.cc
+===================================================================
+--- autodocksuite-4.2.3.orig/autodock/ranlib.cc	2010-07-21 00:31:12.000000000 +0200
++++ autodocksuite-4.2.3/autodock/ranlib.cc	2010-07-21 00:31:19.000000000 +0200
+@@ -38,7 +38,7 @@
+ #define MIN(a,b) ((a) <= (b) ? (a) : (b))
+ #define MAX(a,b) ((a) >= (b) ? (a) : (b))
+ 
+-void ftnstop(char*);
++void ftnstop(const char*);
+ 
+ extern FILE *logFile;
+ 

Added: trunk/packages/autodocksuite/trunk/debian/patches/series
===================================================================
--- trunk/packages/autodocksuite/trunk/debian/patches/series	                        (rev 0)
+++ trunk/packages/autodocksuite/trunk/debian/patches/series	2010-08-01 13:58:53 UTC (rev 5085)
@@ -0,0 +1,9 @@
+const_suggetsions_gcc4.6_1st_iteration.patch
+manual_const_1.patch
+const_manual_2nd.patch
+const_manual_FILEpointer.patch
+const_manual_10.patch
+const_manual_20.patch
+const_manual_25.patch
+const_manual_30.patch
+const_manual_35.patch




More information about the debian-med-commit mailing list