CMake adjusted to allow proper releasing.
Mac side is ready.
This commit is contained in:
@@ -79,9 +79,6 @@ set(SM_VERSION_MINOR 0)
|
|||||||
set(SM_VERSION_PATCH 7)
|
set(SM_VERSION_PATCH 7)
|
||||||
set(SM_VERSION_TRADITIONAL "${SM_VERSION_MAJOR}.${SM_VERSION_MINOR}.${SM_VERSION_PATCH}")
|
set(SM_VERSION_TRADITIONAL "${SM_VERSION_MAJOR}.${SM_VERSION_MINOR}.${SM_VERSION_PATCH}")
|
||||||
|
|
||||||
if(WITH_FULL_RELEASE EQUAL ON)
|
|
||||||
set(SM_VERSION_FULL "${SM_VERSION_MAJOR}.${SM_VERSION_MINOR}.${SM_VERSION_PATCH}")
|
|
||||||
else()
|
|
||||||
# Using the deprecated version for now to keep cmake 2.8 users happy.
|
# Using the deprecated version for now to keep cmake 2.8 users happy.
|
||||||
exec_program(git "${SM_ROOT_DIR}"
|
exec_program(git "${SM_ROOT_DIR}"
|
||||||
ARGS "rev-parse" "--short" "HEAD"
|
ARGS "rev-parse" "--short" "HEAD"
|
||||||
@@ -95,7 +92,6 @@ else()
|
|||||||
else()
|
else()
|
||||||
set(SM_VERSION_FULL "${SM_VERSION_MAJOR}.${SM_VERSION_MINOR}-git-${SM_VERSION_GIT_HASH}")
|
set(SM_VERSION_FULL "${SM_VERSION_MAJOR}.${SM_VERSION_MINOR}-git-${SM_VERSION_GIT_HASH}")
|
||||||
endif()
|
endif()
|
||||||
endif()
|
|
||||||
|
|
||||||
# Allow for finding our libraries in a standard location.
|
# Allow for finding our libraries in a standard location.
|
||||||
list(APPEND CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}" "${CMAKE_CURRENT_SOURCE_DIR}/CMake/Modules/")
|
list(APPEND CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}" "${CMAKE_CURRENT_SOURCE_DIR}/CMake/Modules/")
|
||||||
|
|||||||
@@ -29,6 +29,17 @@ File.open("#{Dir.pwd}/ProductInfo.h", "r") do |f|
|
|||||||
end
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
# Determine if the Cmake generated verstub.cpp is available.
|
||||||
|
File.open("#{Dir.pwd}/verstub.cpp", "r") do |verFile|
|
||||||
|
verFile.each do |verLine|
|
||||||
|
if verLine.match( /^extern char const \* const product_version \= "(.*?)"/ )
|
||||||
|
version = $1
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
if (version.length == 0)
|
||||||
# open ver.h in read-only mode
|
# open ver.h in read-only mode
|
||||||
File.open("#{Dir.pwd}/ver.h", "r") do |f|
|
File.open("#{Dir.pwd}/ver.h", "r") do |f|
|
||||||
# read each line, matching for product version
|
# read each line, matching for product version
|
||||||
@@ -38,6 +49,7 @@ File.open("#{Dir.pwd}/ver.h", "r") do |f|
|
|||||||
end
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
end
|
||||||
|
|
||||||
# replace whitespace with hyphens in the version string
|
# replace whitespace with hyphens in the version string
|
||||||
version.gsub!(/\s+/,"-")
|
version.gsub!(/\s+/,"-")
|
||||||
|
|||||||
@@ -9,6 +9,11 @@ include_directories(${PROJECT_BINARY_DIR})
|
|||||||
|
|
||||||
add_executable("VersionUpdater" Main.cpp "${PROJECT_BINARY_DIR}/version.hpp")
|
add_executable("VersionUpdater" Main.cpp "${PROJECT_BINARY_DIR}/version.hpp")
|
||||||
|
|
||||||
|
if (WITH_FULL_RELEASE)
|
||||||
|
sm_add_compile_definition("VersionUpdater" IS_FULL_RELEASE)
|
||||||
|
message(STATUS "Full release mode engaged.")
|
||||||
|
endif()
|
||||||
|
|
||||||
set_property(TARGET "VersionUpdater" PROPERTY FOLDER "Internal Libraries")
|
set_property(TARGET "VersionUpdater" PROPERTY FOLDER "Internal Libraries")
|
||||||
|
|
||||||
if(MSVC)
|
if(MSVC)
|
||||||
|
|||||||
@@ -5,7 +5,11 @@ int smVersionMajor = @SM_VERSION_MAJOR@;
|
|||||||
int smVersionMinor = @SM_VERSION_MINOR@;
|
int smVersionMinor = @SM_VERSION_MINOR@;
|
||||||
int smVersionPatch = @SM_VERSION_PATCH@;
|
int smVersionPatch = @SM_VERSION_PATCH@;
|
||||||
char const * const smVersionGitHash = "@SM_VERSION_GIT_HASH@";
|
char const * const smVersionGitHash = "@SM_VERSION_GIT_HASH@";
|
||||||
|
#if defined(IS_FULL_RELEASE)
|
||||||
|
char const * const smVersionFull = "@SM_VERSION_TRADITIONAL@";
|
||||||
|
#else
|
||||||
char const * const smVersionFull = "@SM_VERSION_FULL@";
|
char const * const smVersionFull = "@SM_VERSION_FULL@";
|
||||||
|
#endif
|
||||||
char const * const smVersionTraditional = "@SM_VERSION_TRADITIONAL@";
|
char const * const smVersionTraditional = "@SM_VERSION_TRADITIONAL@";
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|||||||
Reference in New Issue
Block a user