diff --git a/BaseLib/BuildInfo.h.in b/BaseLib/BuildInfo.h.in new file mode 100644 index 0000000000000000000000000000000000000000..145411c6c79afdf91edc64b3ce9494a8acb3e082 --- /dev/null +++ b/BaseLib/BuildInfo.h.in @@ -0,0 +1,27 @@ +/** + * \file BuildInfo.h.in + * 24/08/2010 LB Initial implementation + * #defines which gets set through CMake + */ + +#ifndef BUILDINFO_H +#define BUILDINFO_H + +#cmakedefine CMAKE_CMD_ARGS "${CMAKE_CMD_ARGS}" +#cmakedefine CMAKE_BUILD_TYPE "${CMAKE_BUILD_TYPE}" + +// #cmakedefine SVN_REVISION "${SVN_REVISION}" +// #cmakedefine GIT_COMMIT_INFO "${GIT_COMMIT_INFO}" +// #cmakedefine GIT_BRANCH_INFO "${GIT_BRANCH_INFO}" +// #cmakedefine BUILD_TIMESTAMP "${BUILD_TIMESTAMP}" +// #cmakedefine CMAKE_RUN_TIMESTAMP "" +// #cmakedefine CMAKE_SYSTEM "${CMAKE_SYSTEM}-x${BITS}" + +#cmakedefine CMAKE_SYSTEM_PROCESSOR "${CMAKE_SYSTEM_PROCESSOR}" +#cmakedefine CMAKE_CXX_COMPILER "${CMAKE_CXX_COMPILER}" +#cmakedefine CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS}" +#cmakedefine CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG}" +#cmakedefine CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE}" +#cmakedefine CMAKE_GENERATOR "${CMAKE_GENERATOR}" + +#endif // BUILDINFO_H diff --git a/CMakeLists.txt b/CMakeLists.txt index aa96b25ab4005fe55ded399da3f09bc84a590f99..d1a3df61a10e9c9f8f00cc78854ac511a08a37d3 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -34,6 +34,11 @@ IF (OGS_CMAKE_DEBUG) list_all_cmake_variable_values() ENDIF (OGS_CMAKE_DEBUG) +OPTION(OGS_BUILD_INFO "Should build information be generated" ON) +IF (OGS_BUILD_INFO) + ADD_DEFINITIONS (-DOGS_BUILD_INFO) +ENDIF (OGS_BUILD_INFO) + ###################### ### Subdirectories ### ###################### @@ -52,3 +57,7 @@ IF(NOT MSVC) ADD_SUBDIRECTORY( SimpleTests/SolverTests ) ENDIF(NOT MSVC) +# Create Configure.h +CONFIGURE_FILE (BaseLib/BuildInfo.h.in ${PROJECT_BINARY_DIR}/BaseLib/BuildInfo.h) + + diff --git a/SimpleTests/MatrixTests/CMakeLists.txt b/SimpleTests/MatrixTests/CMakeLists.txt index bec0e87864f811454ddfec67f5b3dbe7fffad7a6..3f6ca5d90ca80014c5d32162e666ba3c4392701b 100644 --- a/SimpleTests/MatrixTests/CMakeLists.txt +++ b/SimpleTests/MatrixTests/CMakeLists.txt @@ -12,6 +12,7 @@ ENDIF (CMAKE_USE_PTHREADS_INIT ) INCLUDE_DIRECTORIES( . ${CMAKE_SOURCE_DIR}/BaseLib/ + ${CMAKE_BINARY_DIR}/BaseLib/ ${CMAKE_SOURCE_DIR}/BaseLib/logog/include ${CMAKE_SOURCE_DIR}/MathLib/ ) diff --git a/SimpleTests/MatrixTests/MatVecMultNDPerm.cpp b/SimpleTests/MatrixTests/MatVecMultNDPerm.cpp index 33d6ed2449256aa007951c1a1764199a7534772a..c5059d012c597ac6da5a261f69960566a168e8db 100644 --- a/SimpleTests/MatrixTests/MatVecMultNDPerm.cpp +++ b/SimpleTests/MatrixTests/MatVecMultNDPerm.cpp @@ -9,6 +9,7 @@ #ifdef OGS_BUILD_INFO #include "BuildInfo.h" +#include <sys/unistd.h> #endif // BaseLib @@ -79,7 +80,17 @@ int main(int argc, char *argv[]) logogCout->SetFormatter(*custom_format); #ifdef OGS_BUILD_INFO - INFO("git commit: %s, executed on machine: ", GIT_COMMIT_INFO); + INFO("compiler: %s", CMAKE_CXX_COMPILER); + if (std::string(CMAKE_BUILD_TYPE).compare("Release") == 0) { + INFO("CXX_FLAGS: %s %s", CMAKE_CXX_FLAGS, CMAKE_CXX_FLAGS_RELEASE); + } else { + INFO("CXX_FLAGS: %s %s", CMAKE_CXX_FLAGS, CMAKE_CXX_FLAGS_DEBUG); + } + const size_t length(256); + char *hostname(new char[length]); + gethostname (hostname, length); + INFO("hostname: %s", hostname); + delete [] hostname; #endif // *** reading matrix in crs format from file @@ -95,7 +106,7 @@ int main(int argc, char *argv[]) CS_read(in, n, iA, jA, A); timer.stop(); if (verbose) { - INFO("ok, %e s", timer.elapsed()); + INFO("\t- took %e s", timer.elapsed()); } } else { ERR("error reading matrix from %s", fname_mat.c_str()); @@ -103,7 +114,7 @@ int main(int argc, char *argv[]) } unsigned nnz(iA[n]); if (verbose) { - INFO("Parameters read: n=%d, nnz=%d", n, nnz); + INFO("\tParameters read: n=%d, nnz=%d", n, nnz); } MathLib::CRSMatrixReordered mat(n, iA, jA, A);