Răsfoiți Sursa

Merge branch 'bugfix/improve-git-describe-handling' into 'master'

build system: more accurate error information for git_describe

Closes IDFGH-7504

See merge request espressif/esp-idf!23891
Zim Kalinowski 2 ani în urmă
părinte
comite
c74c18520e

+ 1 - 2
tools/cmake/project.cmake

@@ -79,8 +79,7 @@ function(__project_get_revision var)
             if(PROJECT_VER_GIT)
                 set(PROJECT_VER ${PROJECT_VER_GIT})
             else()
-                message(STATUS "Project is not inside a git repository, or git repository has no commits;"
-                        " will not use 'git describe' to determine PROJECT_VER.")
+                message(STATUS "Could not use 'git describe' to determine PROJECT_VER.")
                 set(PROJECT_VER 1)
             endif()
         endif()

+ 8 - 2
tools/cmake/third_party/GetGitRevisionDescription.cmake

@@ -53,10 +53,13 @@ function(get_git_head_revision _refspecvar _hashvar _repo_dir)
         res
         OUTPUT_VARIABLE
         GIT_DIR
-        ERROR_QUIET
+        ERROR_VARIABLE
+        error
         OUTPUT_STRIP_TRAILING_WHITESPACE)
 
     if(NOT res EQUAL 0)
+        string(STRIP "${error}" error)
+        message(STATUS "git rev-parse returned '${error}'")
         return()
     endif()
 
@@ -123,9 +126,12 @@ function(git_describe _var _repo_dir)
         res
         OUTPUT_VARIABLE
         out
-        ERROR_QUIET
+        ERROR_VARIABLE
+        error
         OUTPUT_STRIP_TRAILING_WHITESPACE)
     if(NOT res EQUAL 0)
+        string(STRIP "${error}" error)
+        message(STATUS "git describe returned '${error}'")
         set(out "${out}-${res}-NOTFOUND")
     endif()