1 #!/bin/sh 1 #!/bin/sh 2 # SPDX-License-Identifier: GPL-2.0-only 2 # SPDX-License-Identifier: GPL-2.0-only 3 3 4 set -eu 4 set -eu 5 5 6 diff_patch=$1 6 diff_patch=$1 7 7 8 mkdir -p "$(dirname "${diff_patch}")" 8 mkdir -p "$(dirname "${diff_patch}")" 9 9 10 git -C "${srctree:-.}" diff HEAD > "${diff_pat 10 git -C "${srctree:-.}" diff HEAD > "${diff_patch}" 11 11 12 if [ ! -s "${diff_patch}" ] || 12 if [ ! -s "${diff_patch}" ] || 13 [ -z "$(git -C "${srctree:-.}" ls-files --o 13 [ -z "$(git -C "${srctree:-.}" ls-files --other --exclude-standard | head -n1)" ]; then 14 exit 14 exit 15 fi 15 fi 16 16 17 # The source tarball, which is generated by 'g 17 # The source tarball, which is generated by 'git archive', contains everything 18 # you committed in the repository. If you have 18 # you committed in the repository. If you have local diff ('git diff HEAD'), 19 # it will go into ${diff_patch}. If untracked 19 # it will go into ${diff_patch}. If untracked files are remaining, the resulting 20 # source package may not be correct. 20 # source package may not be correct. 21 # 21 # 22 # Examples: 22 # Examples: 23 # - You modified a source file to add #includ 23 # - You modified a source file to add #include "new-header.h" 24 # but forgot to add new-header.h 24 # but forgot to add new-header.h 25 # - You modified a Makefile to add 'obj-$(CON 25 # - You modified a Makefile to add 'obj-$(CONFIG_FOO) += new-dirver.o' 26 # but you forgot to add new-driver.c 26 # but you forgot to add new-driver.c 27 # 27 # 28 # You need to commit them, or at least stage t 28 # You need to commit them, or at least stage them by 'git add'. 29 # 29 # 30 # This script does not take care of untracked 30 # This script does not take care of untracked files because doing so would 31 # introduce additional complexity. Instead, pr 31 # introduce additional complexity. Instead, print a warning message here if 32 # untracked files are found. 32 # untracked files are found. 33 # If all untracked files are just garbage, you 33 # If all untracked files are just garbage, you can ignore this warning. 34 echo >&2 "============================ WARNING 34 echo >&2 "============================ WARNING ============================" 35 echo >&2 "Your working tree has diff from HEAD 35 echo >&2 "Your working tree has diff from HEAD, and also untracked file(s)." 36 echo >&2 "Please make sure you did 'git add' f 36 echo >&2 "Please make sure you did 'git add' for all new files you need in" 37 echo >&2 "the source package." 37 echo >&2 "the source package." 38 echo >&2 "==================================== 38 echo >&2 "================================================================="
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.