CppAD: A C++ Algorithmic Differentiation Package 20110419
|
00001 /* $Id$ */ 00002 /* This file may be inclued multiple times so comment out ifndef and define 00003 # ifndef CPPAD_CONFIGURE_INCLUDED 00004 # define CPPAD_CONFIGURE_INCLUDED 00005 */ 00006 00007 /* -------------------------------------------------------------------------- 00008 CppAD: C++ Algorithmic Differentiation: Copyright (C) 2003-11 Bradley M. Bell 00009 00010 CppAD is distributed under multiple licenses. This distribution is under 00011 the terms of the 00012 Common Public License Version 1.0. 00013 00014 A copy of this license is included in the COPYING file of this distribution. 00015 Please visit http://www.coin-or.org/CppAD/ for information on other licenses. 00016 -------------------------------------------------------------------------- */ 00017 00018 /*! 00019 \file configure.hpp 00020 Wrapper for the cppad/local/config.h file generated by autoconf and configure. 00021 00022 \li 00023 Un-define all the preprocessor symbols in config.h that do not begin with 00024 CPPAD_. 00025 00026 \li 00027 Include config.h. 00028 00029 \li 00030 Repeat Un-define all the preprocessor symbols in config.h that do not begin 00031 with CPPAD_. 00032 00033 \li 00034 Define CPPAD_PACKAGE_STRING as equal to "CppAD yyyymmdd" where 00035 yyyy is year, mm is month, and dd is day. 00036 */ 00037 # undef PACKAGE 00038 # undef PACKAGE_BUGREPORT 00039 # undef PACKAGE_NAME 00040 # undef PACKAGE_STRING 00041 # undef PACKAGE_TARNAME 00042 # undef PACKAGE_VERSION 00043 # undef VERSION 00044 00045 // now it is safe to use the config.h file 00046 # include <cppad/config.h> 00047 00048 00049 // undefine all the preprocessor symbols that do not have CPPAD_ in front 00050 // (all such symbols are in the config.h file created by autoconf). 00051 # undef PACKAGE 00052 # undef PACKAGE_BUGREPORT 00053 # undef PACKAGE_NAME 00054 # undef PACKAGE_STRING 00055 # undef PACKAGE_TARNAME 00056 # undef PACKAGE_VERSION 00057 # undef VERSION 00058 00059 /*! 00060 \def CPPAD_PACKAGE_STRING 00061 cppad-yyyymmdd as a C string where yyyy is year, mm is month, and dd is day. 00062 */ 00063 # define CPPAD_PACKAGE_STRING "CppAD 20110419" 00064 00065 /* 00066 $begin configure$$ 00067 $spell 00068 config 00069 cppad 00070 autoconf 00071 CppAD 00072 undef 00073 $$ 00074 00075 $section Preprocessor Definitions Used by CppAD$$ 00076 $index configure, symbol$$ 00077 $index symbol, configure$$ 00078 $index PACKAGE, symbol$$ 00079 $index VERSION, symbol$$ 00080 00081 $head Preprocessor Symbols$$ 00082 $index preprocessor, symbol$$ 00083 $index symbol, processor$$ 00084 All of the preprocessor symbols used by CppAD begin either with 00085 $code CppAD$$ or with $code CPPAD_$$. 00086 00087 $head Example$$ 00088 For example, 00089 the preprocessor symbol 00090 $small $cref/CPPAD_TEST_VECTOR/test_vector/$$ $$ 00091 determines which 00092 $xref/SimpleVector/$$ template class is extensively used 00093 by the tests in the $code Example$$ and $code TestMore$$ directories. 00094 00095 $head config.h$$ 00096 $index config.h$$ 00097 The following is a list of exceptions to the rule above. 00098 These preprocessor symbols are placed in the file $code cppad/config.h$$ 00099 by $code autoconf$$ (which is used to generate the CppAD distribution). 00100 Directly after you include a CppAD file, these symbols may be undefined: 00101 $code PACKAGE$$, 00102 $code PACKAGE_BUGREPORT$$, 00103 $code PACKAGE_NAME$$, 00104 $code PACKAGE_STRING$$, 00105 $code PACKAGE_TARNAME$$, 00106 $code PACKAGE_VERSION$$, 00107 $code VERSION$$. 00108 00109 $end 00110 */ 00111