Use Subversion to automatically generate date and version information when building with CMake.
This commit is contained in:
parent
9021d9d01a
commit
994e4e5d7e
|
@ -25,6 +25,23 @@ if(CMAKE_COMPILER_IS_GNUCXX)
|
|||
set(CMAKE_CXX_FLAGS_DEBUG "-Wall -g3 -ggdb3 -DDEBUG")
|
||||
endif(CMAKE_COMPILER_IS_GNUCXX)
|
||||
|
||||
# Include Subversion support to automagically create version header file.
|
||||
find_package( Subversion )
|
||||
if( Subversion_FOUND )
|
||||
Subversion_WC_INFO( ${PROJECT_SOURCE_DIR} Kicad )
|
||||
string( REGEX REPLACE "^([0-9]+)\\-([0-9]+)\\-([0-9]+).*" "\\1\\2\\3"
|
||||
_kicad_svn_date ${Kicad_WC_LAST_CHANGED_DATE} )
|
||||
set( KICAD_SVN_VERSION
|
||||
"(${_kicad_svn_date} SVN-R${Kicad_WC_LAST_CHANGED_REV})" )
|
||||
|
||||
# Definition to conditionally use date and revision returned from the
|
||||
# Subversion info command instead of hand coded date and revision in
|
||||
# "include/build_verison.h". If subversion is not found or the hand
|
||||
# coded make files are used then the date and version information must
|
||||
# be manually edited.
|
||||
add_definitions( -DHAVE_SVN_VERSION )
|
||||
endif( Subversion_FOUND )
|
||||
|
||||
# Locations for install targets.
|
||||
set(KICAD_BIN bin CACHE PATH "Location of KiCad binaries.")
|
||||
|
||||
|
@ -78,10 +95,15 @@ include(${wxWidgets_USE_FILE})
|
|||
# Include MinGW resource compiler.
|
||||
include(MinGWResourceCompiler)
|
||||
|
||||
# Generate config.h.
|
||||
configure_file( ${CMAKE_SOURCE_DIR}/CMakeModules/config.h.cmake
|
||||
${CMAKE_BINARY_DIR}/config.h )
|
||||
|
||||
# Include paths.
|
||||
include_directories(
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/include
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/share)
|
||||
${CMAKE_SOURCE_DIR}/include
|
||||
${CMAKE_SOURCE_DIR}/share
|
||||
${CMAKE_BINARY_DIR})
|
||||
|
||||
# CMake will look in these dirs for nested 'CMakeLists.txt' files.
|
||||
# Binaries.
|
||||
|
|
|
@ -0,0 +1,8 @@
|
|||
/* Do not modify this file, it was automatically generated by CMake */
|
||||
|
||||
#ifndef __KICAD_SVN_VERSION_H__
|
||||
#define __KICAD_SVN_VERSION_H__
|
||||
|
||||
#cmakedefine KICAD_SVN_VERSION "@KICAD_SVN_VERSION@"
|
||||
|
||||
#endif /* __KICAD_SVN_VERSION_H__ */
|
|
@ -5,6 +5,13 @@ Started 2007-June-11
|
|||
Please add newer entries at the top, list the date and your name with
|
||||
email address.
|
||||
|
||||
2008-May-2 UPDATE Wayne Stambaugh <stambaughw@verizon.net>
|
||||
================================================================================
|
||||
+cmake
|
||||
* Use Subversion to automatically generate build date and revision level
|
||||
when building with CMake. Header file build_version.h will still need
|
||||
manual updates when using the hand written make files.
|
||||
|
||||
|
||||
2008-May-2 UPDATE Dick Hollenbeck <dick@softplc.com>
|
||||
================================================================================
|
||||
|
|
|
@ -5,7 +5,12 @@
|
|||
|
||||
COMMON_GLOBL wxString g_BuildVersion
|
||||
#ifdef EDA_BASE
|
||||
(wxT("(20080429-r1010)"))
|
||||
# ifdef HAVE_SVN_VERSION
|
||||
# include "config.h"
|
||||
(wxT(KICAD_SVN_VERSION))
|
||||
# else
|
||||
(wxT("(20080429-r1010)"))
|
||||
# endif
|
||||
#endif
|
||||
;
|
||||
|
||||
|
|
Loading…
Reference in New Issue