setlocalversion (992ebfab2a75c276fe27f7fd7a3fb326ccd7225b) | setlocalversion (75280bdf49b2f563fb5404df7c7b735c118695fe) |
---|---|
1#!/bin/sh 2# SPDX-License-Identifier: GPL-2.0 3# 4# This scripts adds local version information from the version 5# control systems git, mercurial (hg) and subversion (svn). 6# 7# If something goes wrong, send a mail the kernel build mailinglist 8# (see MAINTAINERS) and CC Nico Schottelius --- 20 unchanged lines hidden (view full) --- 29 local short 30 short=false 31 32 cd "$srctree" 33 if test "$1" = "--short"; then 34 short=true 35 fi 36 | 1#!/bin/sh 2# SPDX-License-Identifier: GPL-2.0 3# 4# This scripts adds local version information from the version 5# control systems git, mercurial (hg) and subversion (svn). 6# 7# If something goes wrong, send a mail the kernel build mailinglist 8# (see MAINTAINERS) and CC Nico Schottelius --- 20 unchanged lines hidden (view full) --- 29 local short 30 short=false 31 32 cd "$srctree" 33 if test "$1" = "--short"; then 34 short=true 35 fi 36 |
37 # Check for git and a git repo. 38 if test -z "$(git rev-parse --show-cdup 2>/dev/null)" && 39 head=$(git rev-parse --verify HEAD 2>/dev/null); then | 37 if test -n "$(git rev-parse --show-cdup 2>/dev/null)"; then 38 return 39 fi |
40 | 40 |
41 # If we are at a tagged commit (like "v2.6.30-rc6"), we ignore 42 # it, because this version is defined in the top level Makefile. 43 if [ -z "$(git describe --exact-match 2>/dev/null)" ]; then | 41 if ! head=$(git rev-parse --verify HEAD 2>/dev/null); then 42 return 43 fi |
44 | 44 |
45 # If only the short version is requested, don't bother 46 # running further git commands 47 if $short; then 48 echo "+" 49 return 50 fi 51 # If we are past a tagged commit (like 52 # "v2.6.30-rc5-302-g72357d5"), we pretty print it. 53 if atag="$(git describe 2>/dev/null)"; then 54 echo "$atag" | awk -F- '{printf("-%05d", $(NF-1))}' 55 fi | 45 # If we are at a tagged commit (like "v2.6.30-rc6"), we ignore it 46 # because this version is defined in the top level Makefile. 47 if [ -z "$(git describe --exact-match 2>/dev/null)" ]; then |
56 | 48 |
57 # Add -g and exactly 12 hex chars. 58 printf '%s%s' -g "$(echo $head | cut -c1-12)" | 49 # If only the short version is requested, don't bother 50 # running further git commands 51 if $short; then 52 echo "+" 53 return |
59 fi | 54 fi |
60 61 # Check for uncommitted changes. 62 # This script must avoid any write attempt to the source tree, 63 # which might be read-only. 64 # You cannot use 'git describe --dirty' because it tries to 65 # create .git/index.lock . 66 # First, with git-status, but --no-optional-locks is only 67 # supported in git >= 2.14, so fall back to git-diff-index if 68 # it fails. Note that git-diff-index does not refresh the 69 # index, so it may give misleading results. See 70 # git-update-index(1), git-diff-index(1), and git-status(1). 71 if { 72 git --no-optional-locks status -uno --porcelain 2>/dev/null || 73 git diff-index --name-only HEAD 74 } | read dummy; then 75 printf '%s' -dirty | 55 # If we are past a tagged commit (like 56 # "v2.6.30-rc5-302-g72357d5"), we pretty print it. 57 if atag="$(git describe 2>/dev/null)"; then 58 echo "$atag" | awk -F- '{printf("-%05d", $(NF-1))}' |
76 fi | 59 fi |
60 61 # Add -g and exactly 12 hex chars. 62 printf '%s%s' -g "$(echo $head | cut -c1-12)" |
|
77 fi | 63 fi |
64 65 # Check for uncommitted changes. 66 # This script must avoid any write attempt to the source tree, which 67 # might be read-only. 68 # You cannot use 'git describe --dirty' because it tries to create 69 # .git/index.lock . 70 # First, with git-status, but --no-optional-locks is only supported in 71 # git >= 2.14, so fall back to git-diff-index if it fails. Note that 72 # git-diff-index does not refresh the index, so it may give misleading 73 # results. 74 # See git-update-index(1), git-diff-index(1), and git-status(1). 75 if { 76 git --no-optional-locks status -uno --porcelain 2>/dev/null || 77 git diff-index --name-only HEAD 78 } | read dummy; then 79 printf '%s' -dirty 80 fi |
|
78} 79 80collect_files() 81{ 82 local file res= 83 84 for file; do 85 case "$file" in --- 42 unchanged lines hidden --- | 81} 82 83collect_files() 84{ 85 local file res= 86 87 for file; do 88 case "$file" in --- 42 unchanged lines hidden --- |