From cccee66290a31bdf78c26126782b4b8a2275ea88 Mon Sep 17 00:00:00 2001 From: Sergey Sharybin Date: Thu, 28 Nov 2013 01:41:53 +0600 Subject: Fixes for buildinfo - It was using SOURCE_DIR which is undefined on windows. No idea why it was defined on Linux, could be some co-incident. Correct usage is CMAKE_SOURCE_DIR. - Remove usages of SVN's revision. --- build_files/cmake/buildinfo.cmake | 18 ++++++++++-------- build_files/cmake/packaging.cmake | 24 ++++++++++++++---------- 2 files changed, 24 insertions(+), 18 deletions(-) (limited to 'build_files') diff --git a/build_files/cmake/buildinfo.cmake b/build_files/cmake/buildinfo.cmake index 7fc052eb249..4c3606576d2 100644 --- a/build_files/cmake/buildinfo.cmake +++ b/build_files/cmake/buildinfo.cmake @@ -8,32 +8,34 @@ set(MY_WC_BRANCH "unknown") set(MY_WC_COMMIT_TIMESTAMP 0) # Guess if this is a SVN working copy and then look up the revision -if(EXISTS ${SOURCE_DIR}/.git/) - # The FindSubversion.cmake module is part of the standard distribution +if(EXISTS ${CMAKE_SOURCE_DIR}/.git/) + # The FindGit.cmake module is part of the standard distribution include(FindGit) if(GIT_FOUND) + message("-- Found Git: ${GIT_EXECUTABLE}") + execute_process(COMMAND git rev-parse --short @{u} - WORKING_DIRECTORY ${SOURCE_DIR} + WORKING_DIRECTORY ${CMAKE_SOURCE_DIR} OUTPUT_VARIABLE MY_WC_HASH OUTPUT_STRIP_TRAILING_WHITESPACE) execute_process(COMMAND git rev-parse --abbrev-ref HEAD - WORKING_DIRECTORY ${SOURCE_DIR} + WORKING_DIRECTORY ${CMAKE_SOURCE_DIR} OUTPUT_VARIABLE MY_WC_BRANCH OUTPUT_STRIP_TRAILING_WHITESPACE) execute_process(COMMAND git log -1 --format=%ct - WORKING_DIRECTORY ${SOURCE_DIR} + WORKING_DIRECTORY ${CMAKE_SOURCE_DIR} OUTPUT_VARIABLE MY_WC_COMMIT_TIMESTAMP OUTPUT_STRIP_TRAILING_WHITESPACE) # Update GIT index before getting dirty files execute_process(COMMAND git update-index -q --refresh - WORKING_DIRECTORY ${SOURCE_DIR} + WORKING_DIRECTORY ${CMAKE_SOURCE_DIR} OUTPUT_STRIP_TRAILING_WHITESPACE) execute_process(COMMAND git diff-index --name-only HEAD -- - WORKING_DIRECTORY ${SOURCE_DIR} + WORKING_DIRECTORY ${CMAKE_SOURCE_DIR} OUTPUT_VARIABLE _git_changed_files OUTPUT_STRIP_TRAILING_WHITESPACE) @@ -42,7 +44,7 @@ if(EXISTS ${SOURCE_DIR}/.git/) else() # Unpushed commits are also considered local odifications execute_process(COMMAND git log @{u}.. - WORKING_DIRECTORY ${SOURCE_DIR} + WORKING_DIRECTORY ${CMAKE_SOURCE_DIR} OUTPUT_VARIABLE _git_unpushed_log OUTPUT_STRIP_TRAILING_WHITESPACE) if(NOT _git_unpushed_log STREQUAL "") diff --git a/build_files/cmake/packaging.cmake b/build_files/cmake/packaging.cmake index 8a534bc530e..14848365f2c 100644 --- a/build_files/cmake/packaging.cmake +++ b/build_files/cmake/packaging.cmake @@ -20,25 +20,29 @@ SET(CPACK_PACKAGE_VERSION_PATCH "${PATCH_VERSION}") # Get the build revision, note that this can get out-of-sync, so for packaging run cmake first. -include(FindSubversion) -set(MY_WC_REVISION "unknown") -if(EXISTS ${CMAKE_SOURCE_DIR}/.svn/) - if(Subversion_FOUND) - Subversion_WC_INFO(${CMAKE_SOURCE_DIR} MY) +set(MY_WC_HASH "unknown") +if(EXISTS ${CMAKE_SOURCE_DIR}/.git/) + include(FindGit) + if(GIT_FOUND) + message("-- Found Git: ${GIT_EXECUTABLE}") + execute_process(COMMAND git rev-parse --short @{u} + WORKING_DIRECTORY ${CMAKE_SOURCE_DIR} + OUTPUT_VARIABLE MY_WC_HASH + OUTPUT_STRIP_TRAILING_WHITESPACE) endif() endif() -set(BUILD_REV ${MY_WC_REVISION}) +set(BUILD_REV ${MY_WC_HASH}) # Force Package Name -set(CPACK_PACKAGE_FILE_NAME ${PROJECT_NAME}-${MAJOR_VERSION}.${MINOR_VERSION}.${PATCH_VERSION}-1.r${BUILD_REV}-${CMAKE_SYSTEM_PROCESSOR}) +set(CPACK_PACKAGE_FILE_NAME ${PROJECT_NAME}-${MAJOR_VERSION}.${MINOR_VERSION}.${PATCH_VERSION}-1.${BUILD_REV}-${CMAKE_SYSTEM_PROCESSOR}) if(CMAKE_SYSTEM_NAME MATCHES "Linux") # RPM packages include(build_files/cmake/RpmBuild.cmake) if(RPMBUILD_FOUND AND NOT WIN32) set(CPACK_GENERATOR "RPM") - set(CPACK_RPM_PACKAGE_RELEASE "1.r${BUILD_REV}") + set(CPACK_RPM_PACKAGE_RELEASE "1.${BUILD_REV}") set(CPACK_SET_DESTDIR "true") set(CPACK_PACKAGE_DESCRIPTION_SUMMARY "${PROJECT_DESCRIPTION}") set(CPACK_PACKAGE_RELOCATABLE "false") @@ -75,14 +79,14 @@ endmacro() if(APPLE) add_package_archive( - "${PROJECT_NAME}-${BLENDER_VERSION}-r${BUILD_REV}-OSX-${CMAKE_OSX_ARCHITECTURES}" + "${PROJECT_NAME}-${BLENDER_VERSION}-${BUILD_REV}-OSX-${CMAKE_OSX_ARCHITECTURES}" "zip") elseif(UNIX) # platform name could be tweaked, to include glibc, and ensure processor is correct (i386 vs i686) string(TOLOWER ${CMAKE_SYSTEM_NAME} PACKAGE_SYSTEM_NAME) add_package_archive( - "${PROJECT_NAME}-${BLENDER_VERSION}-r${BUILD_REV}-${PACKAGE_SYSTEM_NAME}-${CMAKE_SYSTEM_PROCESSOR}" + "${PROJECT_NAME}-${BLENDER_VERSION}-${BUILD_REV}-${PACKAGE_SYSTEM_NAME}-${CMAKE_SYSTEM_PROCESSOR}" "tar.bz2") endif() -- cgit v1.2.3