Changeset d3a46d


Ignore:
Timestamp:
Apr 24, 2008, 1:52:02 PM (17 years ago)
Author:
Frederik Heber <heber@…>
Branches:
Action_Thermostats, Add_AtomRandomPerturbation, Add_FitFragmentPartialChargesAction, Add_RotateAroundBondAction, Add_SelectAtomByNameAction, Added_ParseSaveFragmentResults, AddingActions_SaveParseParticleParameters, Adding_Graph_to_ChangeBondActions, Adding_MD_integration_tests, Adding_ParticleName_to_Atom, Adding_StructOpt_integration_tests, AtomFragments, Automaking_mpqc_open, AutomationFragmentation_failures, Candidate_v1.5.4, Candidate_v1.6.0, Candidate_v1.6.1, ChangeBugEmailaddress, ChangingTestPorts, ChemicalSpaceEvaluator, CombiningParticlePotentialParsing, Combining_Subpackages, Debian_Package_split, Debian_package_split_molecuildergui_only, Disabling_MemDebug, Docu_Python_wait, EmpiricalPotential_contain_HomologyGraph, EmpiricalPotential_contain_HomologyGraph_documentation, Enable_parallel_make_install, Enhance_userguide, Enhanced_StructuralOptimization, Enhanced_StructuralOptimization_continued, Example_ManyWaysToTranslateAtom, Exclude_Hydrogens_annealWithBondGraph, FitPartialCharges_GlobalError, Fix_BoundInBox_CenterInBox_MoleculeActions, Fix_ChargeSampling_PBC, Fix_ChronosMutex, Fix_FitPartialCharges, Fix_FitPotential_needs_atomicnumbers, Fix_ForceAnnealing, Fix_IndependentFragmentGrids, Fix_ParseParticles, Fix_ParseParticles_split_forward_backward_Actions, Fix_PopActions, Fix_QtFragmentList_sorted_selection, Fix_Restrictedkeyset_FragmentMolecule, Fix_StatusMsg, Fix_StepWorldTime_single_argument, Fix_Verbose_Codepatterns, Fix_fitting_potentials, Fixes, ForceAnnealing_goodresults, ForceAnnealing_oldresults, ForceAnnealing_tocheck, ForceAnnealing_with_BondGraph, ForceAnnealing_with_BondGraph_continued, ForceAnnealing_with_BondGraph_continued_betteresults, ForceAnnealing_with_BondGraph_contraction-expansion, FragmentAction_writes_AtomFragments, FragmentMolecule_checks_bonddegrees, GeometryObjects, Gui_Fixes, Gui_displays_atomic_force_velocity, ImplicitCharges, IndependentFragmentGrids, IndependentFragmentGrids_IndividualZeroInstances, IndependentFragmentGrids_IntegrationTest, IndependentFragmentGrids_Sole_NN_Calculation, JobMarket_RobustOnKillsSegFaults, JobMarket_StableWorkerPool, JobMarket_unresolvable_hostname_fix, MoreRobust_FragmentAutomation, ODR_violation_mpqc_open, PartialCharges_OrthogonalSummation, PdbParser_setsAtomName, PythonUI_with_named_parameters, QtGui_reactivate_TimeChanged_changes, Recreated_GuiChecks, Rewrite_FitPartialCharges, RotateToPrincipalAxisSystem_UndoRedo, SaturateAtoms_findBestMatching, SaturateAtoms_singleDegree, StoppableMakroAction, Subpackage_CodePatterns, Subpackage_JobMarket, Subpackage_LinearAlgebra, Subpackage_levmar, Subpackage_mpqc_open, Subpackage_vmg, Switchable_LogView, ThirdParty_MPQC_rebuilt_buildsystem, TrajectoryDependenant_MaxOrder, TremoloParser_IncreasedPrecision, TremoloParser_MultipleTimesteps, TremoloParser_setsAtomName, Ubuntu_1604_changes, stable
Children:
2cab01c
Parents:
943d02
Message:

added --enable-optimization, thrown -g -O specifics out of Makefile.am's

--enable-optimization is added to each configure.ac and is linked with --enable-debug (no debug and optimization at the same time, debug is normally off and -O2 on), implemented via C(XX)FLAGS
Henceforth, -g, -O and -cc=... specifics are thrown out of the Makefile.am's, so that the optimiziation and debugging is streamlined throughout the whole package

Files:
5 edited

Legend:

Unmodified
Added
Removed
  • configure.ac

    r943d02 rd3a46d  
    1616
    1717
    18 AC_FUNC_MALLOC
    19 AC_FUNC_REALLOC
    20 AC_CHECK_FUNCS([floor pow sqrt strchr])
    21 
    2218# Checks for libraries.
    2319AC_CHECK_LIB(m, sqrt, ,AC_MSG_ERROR([compatible libc math library not found]))
     
    2723AC_CHECK_HEADERS([sys/time.h])
    2824AC_HEADER_STDBOOL
     25
     26AC_FUNC_MALLOC
     27AC_FUNC_REALLOC
     28AC_CHECK_FUNCS([floor pow sqrt strchr])
    2929
    3030# Checks for typedefs, structures, and compiler characteristics.
     
    4141
    4242# debugging info
    43 AC_ARG_ENABLE([debug],AS_HELP_STRING([--enable-debug],[Output debugging information (default is no)]),
    44               [enable_debug=$enableval], [enable_debug=maybe])
    45 if test x"$enable_debug" = xyes; then
     43AC_ARG_ENABLE([debug],AS_HELP_STRING([--enable-debug],[Output debugging information, argument is yes or debugging level (default is no).]),
     44              [enable_debug=$enableval], [enable_debug=no])
     45if ! test x"$enable_debug" = xno; then
     46        if test x"${enable_debug}" = xyes; then
     47                CFLAGS="-g3"
     48                CXXFLAGS="-g3"
     49        else
     50                CFLAGS="-g${enable_debug}"
     51                CXXFLAGS="-g${enable_debug}"
     52        fi
    4653  AC_DEFINE(HAVE_DEBUG,1, ["Output debugging info"])
    4754  AC_SUBST(HAVE_DEBUG)
     55fi
     56
     57# optimization level
     58AC_ARG_ENABLE([optimization],AS_HELP_STRING([--enable-optimization],[Optimization level of compiler. Argument is yes or debugging level. (default is 2)]),
     59              [enable_optimization=$enableval], [enable_optimization=yes])
     60if test ! x"$enable_optimization" = xno; then
     61        if test x"$enable_debug" = xno; then
     62                if test x"${enable_optimization}" = xyes; then
     63                        CFLAGS="-O2"
     64                        CXXFLAGS="-O2"
     65                else
     66                        CFLAGS="-O${enable_optimization}"
     67                        CXXFLAGS="-O${enable_optimization}"
     68                fi
     69        else
     70                AC_MSG_WARN(["Already specified --enable-debug!"])
     71        fi
    4872fi
    4973
  • src/Makefile.am

    r943d02 rd3a46d  
    88joiner_SOURCES = joiner.cpp parser.cpp helpers.cpp verbose.cpp helpers.hpp parser.hpp
    99analyzer_SOURCES = analyzer.cpp parser.cpp datacreator.cpp helpers.cpp verbose.cpp helpers.hpp parser.hpp datacreator.hpp
    10 #molecuilder_CXXFLAGS = -cc=/opt/packages/gcc-4.0.2/bin/gcc  -g -O -march=nocona -Wall -DBIGENDIAN=0
    11 molecuilder_CXXFLAGS = -g3 -march=nocona -Wall -DBIGENDIAN=0
    12 joiner_CXXFLAGS = -g3 -march=nocona -Wall -DBIGENDIAN=0
    13 analyzer_CXXFLAGS = -g3 -march=nocona -Wall -DBIGENDIAN=0
     10molecuilder_CXXFLAGS = -march=nocona -Wall -DBIGENDIAN=0
     11joiner_CXXFLAGS = -march=nocona -Wall -DBIGENDIAN=0
     12analyzer_CXXFLAGS = -march=nocona -Wall -DBIGENDIAN=0
    1413
    1514#EXTRA_DIST = ${molecuilder_DATA}
  • src/helpers.cpp

    r943d02 rd3a46d  
    2323};
    2424
     25/** Output of a debug message to stderr.
     26 * \param *P Problem at hand, points to ParallelSimulationData#me
     27 * \param output output string
     28 */
     29#ifdef HAVE_DEBUG
     30void debug_in(const char *output, const char *file, const int line) {
     31  if (output) fprintf(stderr,"DEBUG: in %s at line %i: %s\n", file, line, output);
     32}
     33#else
     34void debug_in(const char *output, const char *file, const int line) {}  // print nothing
     35#endif
    2536
    2637/** Wrapper for allocating'ing a memory range with *output if it fails.
  • src/helpers.hpp

    r943d02 rd3a46d  
    2222
    2323/********************************************** helpful functions *********************************/
     24
     25// taken out of TREMOLO
     26/*@-namechecks@*/
     27#ifndef __GNUC__
     28# undef __attribute__
     29# define __attribute__(x)
     30#endif
     31/*@=namechecks@*/
     32
     33/* Behandelt aufgetretene Fehler. error ist der Fehlertyp(enum Errors)
     34   void *SpecialData ist ein untypisierter Zeiger auf Spezielle Daten zur Fehlerbehandlung.
     35   Man koennte auch noch einen Zeiger auf eine Funktion uebergeben */
     36extern void /*@exits@*/ debug(const char *output);
     37  //__attribute__ ((__return__));
     38#define debug(data) debug_in((data), __FILE__, __LINE__)
     39
     40extern void /*@exits@*/ debug_in(const char *output,
     41    const char *file, const int line);
     42  //__attribute__ ((__return__));
    2443
    2544double ask_value(const char *text);
  • src/molecules.cpp

    r943d02 rd3a46d  
    18711871  MoleculeLeafClass *Subgraphs = NULL;      // list of subgraphs from DFS analysis
    18721872
     1873#ifdef ADDHYDROGEN
     1874  debug("Test");
     1875  cout << Verbose(0) << "I will treat hydrogen special and saturate dangling bonds with it." << endl;
     1876#else
     1877  debug("Test2");
     1878  cout << Verbose(0) << "Hydrogen is treated just like the rest of the lot." << endl;
     1879#endif
     1880 
    18731881  CreateListOfBondsPerAtom(out);
    18741882
Note: See TracChangeset for help on using the changeset viewer.