On Friday 11 November 2011 11:46:58 Thomas Baumgart wrote: > Hi, > > on Thursday 10 November 2011 14:45:58 Alvaro Soliverez wrote: > > On Thu, Nov 10, 2011 at 10:39 AM, Thomas Baumgart <t...@net-bembel.de> wrote: > > > Hi, > > > > > > on Thursday 10 November 2011 12:47:40 Alvaro Soliverez wrote: > > > > On Thu, Nov 10, 2011 at 6:37 AM, David Houlden <djhoul...@gmail.com> > > > > > > wrote: > > > > > On Thursday 10 November 2011 01:49:28 Alvaro Soliverez wrote: > > > > > > Hello all, > > > > > > the move to git has been completed. > > > > > > > > > > Hi, > > > > > > > > > > Thanks for information and the tutorial. I have a couple of > > > > > questions. Apologies in advance if I'm jumping the gun and they are > > > > > being worked > > > > > > on. > > > > > > > > 1. There used to be an SVN revision number displayed in the About > > > > > KMyMoney dialog. This is now gone. Will it be replaced by a git > > > > > reference? If we report > > > > > bugs after building from git master how should we report the exact > > > > > version we > > > > > are running? Maybe the commit number from "git log -1"? > > > > > > > > Each commit has a unique hash. That's enough to locate it even if > > > > it's present in several branches. You also have a date and time for > > > > each > > > > > > commit, > > > > > > > in case you need help locating it in the log. > > > > > > I played a bit with it here locally. I currently see: > > > 4.6.90-bko-238105-4.6.0-79-g8324cfb > > > > > > '4.6.90' as contained in CMakeLists.txt > > > 'bko-238105' as my local branch name I am currently on > > > '4.6.0-79-g8324cfb' as generated by 'git describe' > > > > > > Does that make sense? > > > > I don't follow. Just noting the commit id should be enough to pinpoint > > the version that is running, and even running git bisect if needed to > > find a regression. > > The commit id is unique, no matter which branch it is in. > > Now available in master. The version would be something like: > > 4.6.90-a7dfac98ae > > where the suffix is the beginning of the commit id. This way the following > is possible: > > thb@thb-nb:~/devel/kmymoney/build> git show a7dfac98a > commit a7dfac98ae4f913f43e55ff318f7f00806d2a215 > Author: Thomas Baumgart <t...@net-bembel.de> > Date: Fri Nov 11 12:40:46 2011 +0100 > > Add generation of version suffix for Git based repository > > diff --git a/CMakeLists.txt b/CMakeLists.txt > index 95da58a..3a3bd82 100644 > --- a/CMakeLists.txt > +++ b/CMakeLists.txt > @@ -40,6 +40,22 @@ IF(EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/.svn) > SET(ENV{LANG} ${LANG}) > ENDIF(EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/.svn) > > +# Determine the GIT reference (if we're based on GIT) > +IF(EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/.git) > + # make sure we don't use translated messages here > + SET(LANG $ENV{LANG}) > + SET(ENV{LANG} "C") > + EXECUTE_PROCESS(COMMAND git log -1 COMMAND head -n 1 OUTPUT_VARIABLE > BRANCH) > + # extract branch name > + STRING(REGEX MATCH "commit ([^$]+)" BRANCH "${BRANCH}") > + SET(BRANCH ${CMAKE_MATCH_1}) > + # and use the first 10 chars of the commit id > + STRING(SUBSTRING ${BRANCH} 0 10 BRANCH) > + SET(VERSION_SUFFIX "-${BRANCH}") > + # switch back to the original language setting > + SET(ENV{LANG} ${LANG}) > +ENDIF(EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/.git) > + > ######################### General Requirements ########################## > > # setup default CMAKE_INSTALL_PREFIX before calling FIND_PACKAGE(KDE4)
Unfortunately this has broken my build process. It may be unusual but I have my build directory outside of the source tree. When I run "cmake ../kmymoney" I get an error now. fatal: Not a git repository (or any parent up to mount parent /usr) Stopping at filesystem boundary (GIT_DISCOVERY_ACROSS_FILESYSTEM not set). CMake Error at CMakeLists.txt:53 (STRING): string sub-command SUBSTRING requires four arguments. I think the git log command is being run outside the git tree so it fails. Regards, Dave. _______________________________________________ KMyMoney-devel mailing list KMyMoney-devel@kde.org https://mail.kde.org/mailman/listinfo/kmymoney-devel