- #message(STATUS "Git remote: ${remote}")
- execute_process(COMMAND git config --get remote.${remote}.url
- WORKING_DIRECTORY ${CMAKE_HOME_DIRECTORY}/.git/
- OUTPUT_VARIABLE url
- OUTPUT_STRIP_TRAILING_WHITESPACE)
- #message(STATUS "Git url: ${url}")
- if(url)
- execute_process(COMMAND git --git-dir=${CMAKE_HOME_DIRECTORY}/.git log --pretty=oneline --abbrev-commit -1
- WORKING_DIRECTORY ${CMAKE_HOME_DIRECTORY}/.git/
- OUTPUT_VARIABLE GIT_VERSION
- OUTPUT_STRIP_TRAILING_WHITESPACE)
- message(STATUS "Git version: ${GIT_VERSION}")
-
- execute_process(COMMAND git --git-dir=${CMAKE_HOME_DIRECTORY}/.git log -n 1 --pretty=format:%ai .
- WORKING_DIRECTORY ${CMAKE_HOME_DIRECTORY}/.git/
- OUTPUT_VARIABLE GIT_DATE
- OUTPUT_STRIP_TRAILING_WHITESPACE)
- message(STATUS "Git date: ${GIT_DATE}")
- string(REGEX REPLACE " .*" "" GIT_VERSION "${GIT_VERSION}")
-
- execute_process(COMMAND git --git-dir=${CMAKE_HOME_DIRECTORY}/.git log --pretty=format:%H -1
- WORKING_DIRECTORY ${CMAKE_HOME_DIRECTORY}/.git/
- OUTPUT_VARIABLE SIMGRID_GITHASH
- OUTPUT_STRIP_TRAILING_WHITESPACE)
+ # Check for uncommitted changes
+ execute_process(COMMAND git diff --name-only HEAD
+ WORKING_DIRECTORY ${CMAKE_HOME_DIRECTORY}
+ OUTPUT_VARIABLE files_changed)
+ if(files_changed)
+ set(GIT_VERSION "${GIT_VERSION}-dirty")