Branch : - branch - master - tag - release-1.1b release-1.4.0-beta release-1.4.1-beta release-1.4.10-stable release-1.4.11-stable release-1.4.12-stable release-1.4.13-stable release-1.4.14-stable release-1.4.14b-stable release-1.4.15-stable release-1.4.2-rc release-1.4.3-stable release-1.4.4-stable release-1.4.5-stable release-1.4.6 release-1.4.7-stable release-1.4.8-stable release-1.4.9-stable release-2.0.1-alpha release-2.0.10-stable release-2.0.11-stable release-2.0.12-stable release-2.0.13-stable release-2.0.14-stable release-2.0.15-stable release-2.0.16-stable release-2.0.17-stable release-2.0.18-stable release-2.0.19-stable release-2.0.20-stable release-2.0.21-stable release-2.0.22-stable release-2.0.23-beta release-2.0.3-alpha release-2.0.4-alpha release-2.0.5-beta release-2.0.6-rc release-2.0.7-rc release-2.0.8-rc release-2.0.9-rc release-2.1.1-alpha release-2.1.10-stable release-2.1.11-stable release-2.1.12-stable release-2.1.2-alpha release-2.1.3-alpha release-2.1.4-alpha release-2.1.5-beta release-2.1.6-beta release-2.1.7-rc release-2.1.8-stable release-2.1.9-beta release-2.2.1-alpha
# This module defines the following variables utilizing # git to determine the parent tag. And if found the macro # will attempt to parse them in the github tag format # # Useful for auto-versioning in our CMakeLists # # EVENT_GIT___VERSION_MAJOR - Major version. # EVENT_GIT___VERSION_MINOR - Minor version # EVENT_GIT___VERSION_STAGE - Stage version # # Example usage: # # event_fuzzy_version_from_git() # message("Libvent major=${EVENT_GIT___VERSION_MAJOR}") # message(" minor=${EVENT_GIT___VERSION_MINOR}") # message(" patch=${EVENT_GIT___VERSION_PATCH}") # message(" stage=${EVENT_GIT___VERSION_STAGE}") # endif() include(FindGit) macro(event_fuzzy_version_from_git) # set our defaults. set(EVENT_GIT___VERSION_MAJOR 2) set(EVENT_GIT___VERSION_MINOR 2) set(EVENT_GIT___VERSION_PATCH 1) set(EVENT_GIT___VERSION_STAGE "alpha-dev") find_package(Git) if (GIT_FOUND) execute_process( COMMAND ${GIT_EXECUTABLE} describe --abbrev=0 --always WORKING_DIRECTORY ${PROJECT_SOURCE_DIR} RESULT_VARIABLE GITRET OUTPUT_VARIABLE GITVERSION OUTPUT_STRIP_TRAILING_WHITESPACE ) string(REGEX REPLACE "[\\._-]" ";" VERSION_LIST "${GITVERSION}") if(VERSION_LIST) list(LENGTH VERSION_LIST VERSION_LIST_LENGTH) endif() if ((GITRET EQUAL 0) AND (VERSION_LIST_LENGTH EQUAL 5)) list(GET VERSION_LIST 1 _MAJOR) list(GET VERSION_LIST 2 _MINOR) list(GET VERSION_LIST 3 _PATCH) list(GET VERSION_LIST 4 _STAGE) set(_DEFAULT_VERSION "${EVENT_GIT___VERSION_MAJOR}.${EVENT_GIT___VERSION_MINOR}.${EVENT_GIT___VERSION_PATCH}-${EVENT_GIT___VERSION_STAGE}") set(_GIT_VERSION "${_MAJOR}.${_MINOR}.${_PATCH}-${_STAGE}") if (${_DEFAULT_VERSION} VERSION_LESS ${_GIT_VERSION}) set(EVENT_GIT___VERSION_MAJOR ${_MAJOR}) set(EVENT_GIT___VERSION_MINOR ${_MINOR}) set(EVENT_GIT___VERSION_PATCH ${_PATCH}) set(EVENT_GIT___VERSION_STAGE ${_STAGE}) endif() endif() endif() endmacro()