Changeset da83f8 for molecuilder


Ignore:
Timestamp:
Apr 24, 2008, 1:52:02 PM (17 years ago)
Author:
Frederik Heber <heber@…>
Children:
bd7b85
Parents:
054af7
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

Location:
molecuilder
Files:
5 edited

Legend:

Unmodified
Added
Removed
  • molecuilder/configure.ac

    r054af7 rda83f8  
    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
  • molecuilder/src/Makefile.am

    r054af7 rda83f8  
    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}
  • molecuilder/src/helpers.cpp

    r054af7 rda83f8  
    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.
  • molecuilder/src/helpers.hpp

    r054af7 rda83f8  
    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);
  • molecuilder/src/molecules.cpp

    r054af7 rda83f8  
    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.