aboutsummaryrefslogtreecommitdiffstats
path: root/util/git-hooks/install.sh
diff options
context:
space:
mode:
authorStefan Tauner <stefan.tauner@alumni.tuwien.ac.at>2016-11-27 17:45:49 +0100
committerDavid Hendricks <david.hendricks@gmail.com>2017-06-23 06:08:36 +0000
commit7634708c98a6fa439443e0791dd62563f4baf746 (patch)
treeab92caf9995bf2819ef31a8b4245a13c386027f9 /util/git-hooks/install.sh
parent8624e8cfa88ebd17ecf3bfd55c8dc1a799f47573 (diff)
downloadflashrom-7634708c98a6fa439443e0791dd62563f4baf746.tar.gz
flashrom-7634708c98a6fa439443e0791dd62563f4baf746.tar.bz2
flashrom-7634708c98a6fa439443e0791dd62563f4baf746.zip
Convert flashrom to git
- Drop support for Subversion in the getrevision script and Makefile. - Add .gitignore and .gitattributes file (the latter to limit exports). - Restore modification dates of the exported files from the SCM. - Stop exporting SCM log dumps to CHANGELOG. This makes no sense. - Do not export the pre-"compiled" manpage. It can be generated like anything else from the code dump when we export the respective variable. The latter is added with this change. - Add some initial client-side git hooks * When committing check for obvious stuff you never want anyway: - white space errors * When pushing to the upstream repository check mandatory rules: - existing signoffs and acks in all new commits - no deletions or creation of branches - do not rewrite history of the precious branches, even if forced NOTE: This patch is adapted from Stefan Tauner's original commit: https://mail.coreboot.org/pipermail/flashrom/2016-November/014877.html There are a few major differences: - This uses coreboot's commit-msg hook which includes support for generating and appending Change-Id. - djgpp-dos target removal is moved to a follow-up patch. - Version string changes are moved to a follow-up patch. Change-Id: I64eef21982cac0a0a7419bcd2c8a936672ae9cb2 Signed-off-by: Stefan Tauner <stefan.tauner@alumni.tuwien.ac.at> Signed-off-by: David Hendricks <dhendricks@fb.com> Reviewed-on: https://review.coreboot.org/19206 Reviewed-by: Nico Huber <nico.h@gmx.de> Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org> Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Diffstat (limited to 'util/git-hooks/install.sh')
-rwxr-xr-xutil/git-hooks/install.sh19
1 files changed, 19 insertions, 0 deletions
diff --git a/util/git-hooks/install.sh b/util/git-hooks/install.sh
new file mode 100755
index 00000000..bc90e379
--- /dev/null
+++ b/util/git-hooks/install.sh
@@ -0,0 +1,19 @@
+#!/bin/sh -e
+
+root=$(git rev-parse --show-cdup 2>/dev/null) || \
+ { echo "Not under git control. Cannot install git hooks." >&2 ; exit 0 ; }
+
+dst="${root}"$(git rev-parse --git-path hooks/)
+src=util/git-hooks/ # relative to root
+hooks=$(cd "${root}${src}" && git ls-files -c | grep -Ev 'install.sh|wrapper.sh')
+
+for h in $hooks; do
+ # Test if hook is not already installed, i.e. doesn't point at the wrapper
+ if [ ! "${dst}$h" -ef "${root}${src}wrapper.sh" ]; then
+ # preserve custom hooks if any
+ if [ -e "${dst}$h" ]; then
+ mv "${dst}$h" "${dst}$h.local"
+ fi
+ ln -s "$(git rev-parse --prefix $(git rev-parse --git-path hooks/) --show-cdup)${src}wrapper.sh" "${dst}$h"
+ fi
+done