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