Changeset cc2ee5 for m4


Ignore:
Timestamp:
Dec 29, 2008, 9:46:58 PM (16 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:
a98603
Parents:
02bfde
git-author:
Frederik Heber <heber@…> (12/29/08 21:26:43)
git-committer:
Frederik Heber <heber@…> (12/29/08 21:46:58)
Message:

Just a temporary commit

Location:
m4
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • m4/ac_doxygen.m4

    • Property mode changed from 120000 to 100644
    r02bfde rcc2ee5  
    1 ../../m4/ac_doxygen.m4
     1# This file is part of Autoconf.                       -*- Autoconf -*-
     2
     3# Copyright (C) 2004 Oren Ben-Kiki
     4# This file is distributed under the same terms as the Autoconf macro files.
     5
     6# Generate automatic documentation using Doxygen. Works in concert with the
     7# aminclude.m4 file and a compatible doxygen configuration file. Defines the
     8# following public macros:
     9#
     10# DX_???_FEATURE(ON|OFF) - control the default setting fo a Doxygen feature.
     11# Supported features are 'DOXYGEN' itself, 'DOT' for generating graphics,
     12# 'HTML' for plain HTML, 'CHM' for compressed HTML help (for MS users), 'CHI'
     13# for generating a seperate .chi file by the .chm file, and 'MAN', 'RTF',
     14# 'XML', 'PDF' and 'PS' for the appropriate output formats. The environment
     15# variable DOXYGEN_PAPER_SIZE may be specified to override the default 'a4wide'
     16# paper size.
     17#
     18# By default, HTML, PDF and PS documentation is generated as this seems to be
     19# the most popular and portable combination. MAN pages created by Doxygen are
     20# usually problematic, though by picking an appropriate subset and doing some
     21# massaging they might be better than nothing. CHM and RTF are specific for MS
     22# (note that you can't generate both HTML and CHM at the same time). The XML is
     23# rather useless unless you apply specialized post-processing to it.
     24#
     25# The macro mainly controls the default state of the feature. The use can
     26# override the default by specifying --enable or --disable. The macros ensure
     27# that contradictory flags are not given (e.g., --enable-doxygen-html and
     28# --enable-doxygen-chm, --enable-doxygen-anything with --disable-doxygen, etc.)
     29# Finally, each feature will be automatically disabled (with a warning) if the
     30# required programs are missing.
     31#
     32# Once all the feature defaults have been specified, call DX_INIT_DOXYGEN with
     33# the following parameters: a one-word name for the project for use as a
     34# filename base etc., an optional configuration file name (the default is
     35# 'Doxyfile', the same as Doxygen's default), and an optional output directory
     36# name (the default is 'doxygen-doc').
     37
     38## ----------##
     39## Defaults. ##
     40## ----------##
     41
     42DX_ENV=""
     43AC_DEFUN([DX_FEATURE_doc],  ON)
     44AC_DEFUN([DX_FEATURE_dot],  ON)
     45AC_DEFUN([DX_FEATURE_man],  OFF)
     46AC_DEFUN([DX_FEATURE_html], ON)
     47AC_DEFUN([DX_FEATURE_chm],  OFF)
     48AC_DEFUN([DX_FEATURE_chi],  OFF)
     49AC_DEFUN([DX_FEATURE_rtf],  OFF)
     50AC_DEFUN([DX_FEATURE_xml],  OFF)
     51AC_DEFUN([DX_FEATURE_pdf],  ON)
     52AC_DEFUN([DX_FEATURE_ps],   ON)
     53
     54## --------------- ##
     55## Private macros. ##
     56## --------------- ##
     57
     58# DX_ENV_APPEND(VARIABLE, VALUE)
     59# ------------------------------
     60# Append VARIABLE="VALUE" to DX_ENV for invoking doxygen.
     61AC_DEFUN([DX_ENV_APPEND], [AC_SUBST([DX_ENV], ["$DX_ENV $1='$2'"])])
     62
     63# DX_DIRNAME_EXPR
     64# ---------------
     65# Expand into a shell expression prints the directory part of a path.
     66AC_DEFUN([DX_DIRNAME_EXPR],
     67         [[expr ".$1" : '\(\.\)[^/]*$' \| "x$1" : 'x\(.*\)/[^/]*$']])
     68
     69# DX_IF_FEATURE(FEATURE, IF-ON, IF-OFF)
     70# -------------------------------------
     71# Expands according to the M4 (static) status of the feature.
     72AC_DEFUN([DX_IF_FEATURE], [ifelse(DX_FEATURE_$1, ON, [$2], [$3])])
     73
     74# DX_REQUIRE_PROG(VARIABLE, PROGRAM)
     75# ----------------------------------
     76# Require the specified program to be found for the DX_CURRENT_FEATURE to work.
     77AC_DEFUN([DX_REQUIRE_PROG], [
     78AC_PATH_TOOL([$1], [$2])
     79if test "$DX_FLAG_[]DX_CURRENT_FEATURE$$1" = 1; then
     80    AC_MSG_WARN([$2 not found - will not DX_CURRENT_DESCRIPTION])
     81    AC_SUBST([DX_FLAG_[]DX_CURRENT_FEATURE], 0)
     82fi
     83])
     84
     85# DX_TEST_FEATURE(FEATURE)
     86# ------------------------
     87# Expand to a shell expression testing whether the feature is active.
     88AC_DEFUN([DX_TEST_FEATURE], [test "$DX_FLAG_$1" = 1])
     89
     90# DX_CHECK_DEPEND(REQUIRED_FEATURE, REQUIRED_STATE)
     91# -------------------------------------------------
     92# Verify that a required features has the right state before trying to turn on
     93# the DX_CURRENT_FEATURE.
     94AC_DEFUN([DX_CHECK_DEPEND], [
     95test "$DX_FLAG_$1" = "$2" \
     96|| AC_MSG_ERROR([doxygen-DX_CURRENT_FEATURE ifelse([$2], 1,
     97                            requires, contradicts) doxygen-DX_CURRENT_FEATURE])
     98])
     99
     100# DX_CLEAR_DEPEND(FEATURE, REQUIRED_FEATURE, REQUIRED_STATE)
     101# ----------------------------------------------------------
     102# Turn off the DX_CURRENT_FEATURE if the required feature is off.
     103AC_DEFUN([DX_CLEAR_DEPEND], [
     104test "$DX_FLAG_$1" = "$2" || AC_SUBST([DX_FLAG_[]DX_CURRENT_FEATURE], 0)
     105])
     106
     107# DX_FEATURE_ARG(FEATURE, DESCRIPTION,
     108#                CHECK_DEPEND, CLEAR_DEPEND,
     109#                REQUIRE, DO-IF-ON, DO-IF-OFF)
     110# --------------------------------------------
     111# Parse the command-line option controlling a feature. CHECK_DEPEND is called
     112# if the user explicitly turns the feature on (and invokes DX_CHECK_DEPEND),
     113# otherwise CLEAR_DEPEND is called to turn off the default state if a required
     114# feature is disabled (using DX_CLEAR_DEPEND). REQUIRE performs additional
     115# requirement tests (DX_REQUIRE_PROG). Finally, an automake flag is set and
     116# DO-IF-ON or DO-IF-OFF are called according to the final state of the feature.
     117AC_DEFUN([DX_ARG_ABLE], [
     118    AC_DEFUN([DX_CURRENT_FEATURE], [$1])
     119    AC_DEFUN([DX_CURRENT_DESCRIPTION], [$2])
     120    AC_ARG_ENABLE(doxygen-$1,
     121                  [AS_HELP_STRING(DX_IF_FEATURE([$1], [--disable-doxygen-$1],
     122                                                      [--enable-doxygen-$1]),
     123                                  DX_IF_FEATURE([$1], [don't $2], [$2]))],
     124                  [
     125case "$enableval" in
     126#(
     127y|Y|yes|Yes|YES)
     128    AC_SUBST([DX_FLAG_$1], 1)
     129    $3
     130;; #(
     131n|N|no|No|NO)
     132    AC_SUBST([DX_FLAG_$1], 0)
     133;; #(
     134*)
     135    AC_MSG_ERROR([invalid value '$enableval' given to doxygen-$1])
     136;;
     137esac
     138], [
     139AC_SUBST([DX_FLAG_$1], [DX_IF_FEATURE([$1], 1, 0)])
     140$4
     141])
     142if DX_TEST_FEATURE([$1]); then
     143    $5
     144    :
     145fi
     146if DX_TEST_FEATURE([$1]); then
     147    AM_CONDITIONAL(DX_COND_$1, :)
     148    $6
     149    :
     150else
     151    AM_CONDITIONAL(DX_COND_$1, false)
     152    $7
     153    :
     154fi
     155])
     156
     157## -------------- ##
     158## Public macros. ##
     159## -------------- ##
     160
     161# DX_XXX_FEATURE(DEFAULT_STATE)
     162# -----------------------------
     163AC_DEFUN([DX_DOXYGEN_FEATURE], [AC_DEFUN([DX_FEATURE_doc],  [$1])])
     164AC_DEFUN([DX_MAN_FEATURE],     [AC_DEFUN([DX_FEATURE_man],  [$1])])
     165AC_DEFUN([DX_HTML_FEATURE],    [AC_DEFUN([DX_FEATURE_html], [$1])])
     166AC_DEFUN([DX_CHM_FEATURE],     [AC_DEFUN([DX_FEATURE_chm],  [$1])])
     167AC_DEFUN([DX_CHI_FEATURE],     [AC_DEFUN([DX_FEATURE_chi],  [$1])])
     168AC_DEFUN([DX_RTF_FEATURE],     [AC_DEFUN([DX_FEATURE_rtf],  [$1])])
     169AC_DEFUN([DX_XML_FEATURE],     [AC_DEFUN([DX_FEATURE_xml],  [$1])])
     170AC_DEFUN([DX_XML_FEATURE],     [AC_DEFUN([DX_FEATURE_xml],  [$1])])
     171AC_DEFUN([DX_PDF_FEATURE],     [AC_DEFUN([DX_FEATURE_pdf],  [$1])])
     172AC_DEFUN([DX_PS_FEATURE],      [AC_DEFUN([DX_FEATURE_ps],   [$1])])
     173
     174# DX_INIT_DOXYGEN(PROJECT, [CONFIG-FILE], [OUTPUT-DOC-DIR])
     175# ---------------------------------------------------------
     176# PROJECT also serves as the base name for the documentation files.
     177# The default CONFIG-FILE is "Doxyfile" and OUTPUT-DOC-DIR is "doxygen-doc".
     178AC_DEFUN([DX_INIT_DOXYGEN], [
     179
     180# Files:
     181AC_SUBST([DX_PROJECT], [$1])
     182AC_SUBST([DX_CONFIG], [ifelse([$2], [], Doxyfile, [$2])])
     183AC_SUBST([DX_DOCDIR], [ifelse([$3], [], doxygen-doc, [$3])])
     184
     185# Environment variables used inside doxygen.cfg:
     186DX_ENV_APPEND(SRCDIR, $srcdir)
     187DX_ENV_APPEND(PROJECT, $DX_PROJECT)
     188DX_ENV_APPEND(DOCDIR, $DX_DOCDIR)
     189DX_ENV_APPEND(VERSION, $PACKAGE_VERSION)
     190
     191# Doxygen itself:
     192DX_ARG_ABLE(doc, [generate any doxygen documentation],
     193            [],
     194            [],
     195            [DX_REQUIRE_PROG([DX_DOXYGEN], doxygen)
     196             DX_REQUIRE_PROG([DX_PERL], perl)],
     197            [DX_ENV_APPEND(PERL_PATH, $DX_PERL)])
     198
     199# Dot for graphics:
     200DX_ARG_ABLE(dot, [generate graphics for doxygen documentation],
     201            [DX_CHECK_DEPEND(doc, 1)],
     202            [DX_CLEAR_DEPEND(doc, 1)],
     203            [DX_REQUIRE_PROG([DX_DOT], dot)],
     204            [DX_ENV_APPEND(HAVE_DOT, YES)
     205             DX_ENV_APPEND(DOT_PATH, [`DX_DIRNAME_EXPR($DX_DOT)`])],
     206            [DX_ENV_APPEND(HAVE_DOT, NO)])
     207
     208# Man pages generation:
     209DX_ARG_ABLE(man, [generate doxygen manual pages],
     210            [DX_CHECK_DEPEND(doc, 1)],
     211            [DX_CLEAR_DEPEND(doc, 1)],
     212            [],
     213            [DX_ENV_APPEND(GENERATE_MAN, YES)],
     214            [DX_ENV_APPEND(GENERATE_MAN, NO)])
     215
     216# RTF file generation:
     217DX_ARG_ABLE(rtf, [generate doxygen RTF documentation],
     218            [DX_CHECK_DEPEND(doc, 1)],
     219            [DX_CLEAR_DEPEND(doc, 1)],
     220            [],
     221            [DX_ENV_APPEND(GENERATE_RTF, YES)],
     222            [DX_ENV_APPEND(GENERATE_RTF, NO)])
     223
     224# XML file generation:
     225DX_ARG_ABLE(xml, [generate doxygen XML documentation],
     226            [DX_CHECK_DEPEND(doc, 1)],
     227            [DX_CLEAR_DEPEND(doc, 1)],
     228            [],
     229            [DX_ENV_APPEND(GENERATE_XML, YES)],
     230            [DX_ENV_APPEND(GENERATE_XML, NO)])
     231
     232# (Compressed) HTML help generation:
     233DX_ARG_ABLE(chm, [generate doxygen compressed HTML help documentation],
     234            [DX_CHECK_DEPEND(doc, 1)],
     235            [DX_CLEAR_DEPEND(doc, 1)],
     236            [DX_REQUIRE_PROG([DX_HHC], hhc)],
     237            [DX_ENV_APPEND(HHC_PATH, $DX_HHC)
     238             DX_ENV_APPEND(GENERATE_HTML, YES)
     239             DX_ENV_APPEND(GENERATE_HTMLHELP, YES)],
     240            [DX_ENV_APPEND(GENERATE_HTMLHELP, NO)])
     241
     242# Seperate CHI file generation.
     243DX_ARG_ABLE(chi, [generate doxygen seperate compressed HTML help index file],
     244            [DX_CHECK_DEPEND(chm, 1)],
     245            [DX_CLEAR_DEPEND(chm, 1)],
     246            [],
     247            [DX_ENV_APPEND(GENERATE_CHI, YES)],
     248            [DX_ENV_APPEND(GENERATE_CHI, NO)])
     249
     250# Plain HTML pages generation:
     251DX_ARG_ABLE(html, [generate doxygen plain HTML documentation],
     252            [DX_CHECK_DEPEND(doc, 1) DX_CHECK_DEPEND(chm, 0)],
     253            [DX_CLEAR_DEPEND(doc, 1) DX_CLEAR_DEPEND(chm, 0)],
     254            [],
     255            [DX_ENV_APPEND(GENERATE_HTML, YES)],
     256            [DX_TEST_FEATURE(chm) || DX_ENV_APPEND(GENERATE_HTML, NO)])
     257
     258# PostScript file generation:
     259DX_ARG_ABLE(ps, [generate doxygen PostScript documentation],
     260            [DX_CHECK_DEPEND(doc, 1)],
     261            [DX_CLEAR_DEPEND(doc, 1)],
     262            [DX_REQUIRE_PROG([DX_LATEX], latex)
     263             DX_REQUIRE_PROG([DX_MAKEINDEX], makeindex)
     264             DX_REQUIRE_PROG([DX_DVIPS], dvips)
     265             DX_REQUIRE_PROG([DX_EGREP], egrep)])
     266
     267# PDF file generation:
     268DX_ARG_ABLE(pdf, [generate doxygen PDF documentation],
     269            [DX_CHECK_DEPEND(doc, 1)],
     270            [DX_CLEAR_DEPEND(doc, 1)],
     271            [DX_REQUIRE_PROG([DX_PDFLATEX], pdflatex)
     272             DX_REQUIRE_PROG([DX_MAKEINDEX], makeindex)
     273             DX_REQUIRE_PROG([DX_EGREP], egrep)])
     274
     275# LaTeX generation for PS and/or PDF:
     276if DX_TEST_FEATURE(ps) || DX_TEST_FEATURE(pdf); then
     277    AM_CONDITIONAL(DX_COND_latex, :)
     278    DX_ENV_APPEND(GENERATE_LATEX, YES)
     279else
     280    AM_CONDITIONAL(DX_COND_latex, false)
     281    DX_ENV_APPEND(GENERATE_LATEX, NO)
     282fi
     283
     284# Paper size for PS and/or PDF:
     285AC_ARG_VAR(DOXYGEN_PAPER_SIZE,
     286           [a4wide (default), a4, letter, legal or executive])
     287case "$DOXYGEN_PAPER_SIZE" in
     288#(
     289"")
     290    AC_SUBST(DOXYGEN_PAPER_SIZE, "")
     291;; #(
     292a4wide|a4|letter|legal|executive)
     293    DX_ENV_APPEND(PAPER_SIZE, $DOXYGEN_PAPER_SIZE)
     294;; #(
     295*)
     296    AC_MSG_ERROR([unknown DOXYGEN_PAPER_SIZE='$DOXYGEN_PAPER_SIZE'])
     297;;
     298esac
     299
     300#For debugging:
     301#echo DX_FLAG_doc=$DX_FLAG_doc
     302#echo DX_FLAG_dot=$DX_FLAG_dot
     303#echo DX_FLAG_man=$DX_FLAG_man
     304#echo DX_FLAG_html=$DX_FLAG_html
     305#echo DX_FLAG_chm=$DX_FLAG_chm
     306#echo DX_FLAG_chi=$DX_FLAG_chi
     307#echo DX_FLAG_rtf=$DX_FLAG_rtf
     308#echo DX_FLAG_xml=$DX_FLAG_xml
     309#echo DX_FLAG_pdf=$DX_FLAG_pdf
     310#echo DX_FLAG_ps=$DX_FLAG_ps
     311#echo DX_ENV=$DX_ENV
     312])
  • m4/acx_compilerflags.m4

    • Property mode changed from 120000 to 100644
    r02bfde rcc2ee5  
    1 ../../m4/acx_compilerflags.m4
     1# AC_SET_COMPILER_FLAGS(optimization, debugging, warnings)
     2#----------------------------------------------------------------
     3AC_DEFUN([AC_SET_COMPILER_FLAGS],[
     4AC_MSG_NOTICE([Using AC@&t@_SET_COMPILER_FLAGS macro])
     5
     6dnl optimization
     7if test ! x"$1" = xno; then
     8        if test x"$2" = xno; then
     9                if test x"$1" = xyes; then
     10                        optimization="-O2"
     11                else
     12                        optimization="-O$1"
     13                fi
     14        fi
     15fi
     16dnl debugging info
     17if ! test x"$2" = xno; then
     18        if test x"$2" = xyes; then
     19                debugging="-g3"
     20        else
     21                debugging="-g$2"
     22        fi
     23  AC_DEFINE(HAVE_DEBUG,1, ["Output debugging info"])
     24  AC_SUBST(HAVE_DEBUG)
     25fi
     26
     27dnl enable all warnings
     28if test x"$3" = xsome; then
     29        dnl even without debugging we want some minimal info of something's utterly wrong
     30        Cwarnings="-Wall"
     31        CXXwarnings="-Wall"
     32fi
     33if test x"$3" = xfull; then
     34        Cwarnings="-Wall -W -Wstrict-prototypes -Wmissing-prototypes -Wold-style-definition -Wshadow -Wpointer-arith -Wcast-align -Wcast-qual -Wwrite-strings -Wredundant-decls -Wnested-externs -Wmissing-noreturn -Wformat-security -Wmissing-format-attribute -Winit-self"
     35        CXXwarnings="-Wall -W -Wshadow -Wpointer-arith -Wcast-align -Wcast-qual -Wwrite-strings -Wredundant-decls -Wmissing-noreturn -Wformat-security -Wmissing-format-attribute -Winit-self"
     36fi
     37if test x"$3" = xnone; then
     38        unset Cwarnings
     39        unset CXXwarnings
     40else
     41        AC_DEFINE(HAVE_WARNINGS,$enable_warnings, ["Output compiler warnings"])
     42fi
     43
     44# finally, apply whatever was set
     45CFLAGS="$CFLAGS $debugging $optimization $Cwarnings"
     46CXXFLAGS="$CXXFLAGS $debugging $optimization $CXXwarnings"
     47
     48])
Note: See TracChangeset for help on using the changeset viewer.