[mlpack-svn] r16098 - mlpack/trunk/CMake
fastlab-svn at coffeetalk-1.cc.gatech.edu
fastlab-svn at coffeetalk-1.cc.gatech.edu
Fri Jan 3 12:58:59 EST 2014
Author: rcurtin
Date: Fri Jan 3 12:58:58 2014
New Revision: 16098
Log:
CMake script to create svnversion.hpp, if needed.
Added:
mlpack/trunk/CMake/CreateSVNVersionHeader.cmake
Added: mlpack/trunk/CMake/CreateSVNVersionHeader.cmake
==============================================================================
--- (empty file)
+++ mlpack/trunk/CMake/CreateSVNVersionHeader.cmake Fri Jan 3 12:58:58 2014
@@ -0,0 +1,25 @@
+# Using the CMake subversion tools, create svnversion.hpp, which just contains
+# the implementation of GetVersion() assuming that we are working inside of a
+# subversion repository.
+include(FindSubversion)
+Subversion_WC_INFO(${CMAKE_SOURCE_DIR} MLPACK)
+
+# Get the current version, if it exists.
+if(EXISTS ${CMAKE_SOURCE_DIR}/src/mlpack/core/util/svnversion.hpp)
+ file(READ ${CMAKE_SOURCE_DIR}/src/mlpack/core/util/svnversion.hpp
+ _OLD_SVNVERSION_CONTENTS)
+ string(REGEX REPLACE ".*return \"mlpack trunk-r([0-9]+)\".*" "\\1"
+ OLD_SVN_REVISION ${_OLD_SVNVERSION_CONTENTS})
+else(EXISTS ${CMAKE_SOURCE_DIR}/src/mlpack/core/util/svnversion.hpp)
+ set(OLD_SVN_REVISION "notfound")
+endif(EXISTS ${CMAKE_SOURCE_DIR}/src/mlpack/core/util/svnversion.hpp)
+
+if("${OLD_SVN_REVISION}" STREQUAL "${MLPACK_WC_REVISION}")
+ message(STATUS "svnversion.hpp is already up to date.")
+else("${OLD_SVN_REVISION}" STREQUAL "${MLPACK_WC_REVISION}")
+ # Remove the old version.
+ file(REMOVE ${CMAKE_SOURCE_DIR}/src/mlpack/core/util/svnversion.hpp)
+ file(WRITE ${CMAKE_SOURCE_DIR}/src/mlpack/core/util/svnversion.hpp
+ "return \"mlpack trunk-r${MLPACK_WC_REVISION}\";\n")
+ message(STATUS "Updated svnversion.hpp.")
+endif("${OLD_SVN_REVISION}" STREQUAL "${MLPACK_WC_REVISION}")
More information about the mlpack-svn
mailing list