aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rwxr-xr-xscripts/fixCopyright.sh31
-rwxr-xr-xscripts/hasCopyright.sh18
2 files changed, 49 insertions, 0 deletions
diff --git a/scripts/fixCopyright.sh b/scripts/fixCopyright.sh
new file mode 100755
index 0000000000..cdc3a57a70
--- /dev/null
+++ b/scripts/fixCopyright.sh
@@ -0,0 +1,31 @@
+#!/bin/sh
+
+# Prepend a copyright header to all files given on the command line.
+# Sample usage:
+# find . -type f -name \*.cpp -o -name \*.h | \
+# xargs ~/bin/hasCopyright.sh | grep ": NO COPYRIGHT" | grep "^./src/" | \
+# cut -d ':' -f1 | xargs ~/bin/fixCopyright.sh /tmp/copyright.txt
+
+COPYRIGHT_HEADER=$1
+
+test -f "$COPYRIGHT_HEADER" || exit 16
+shift
+
+echo "Using $COPYRIGHT_HEADER..."
+
+WORKDIR=`mktemp -d`
+test -d "$WORKDIR" || exit 17
+
+for i in $@ ; do
+ echo -n "Fixing $i..."
+ if test -f "$i" && test -s "$i" ; then
+ BASENAME=`basename "$i"`
+ TMP_NAME="$WORKDIR/$BASENAME"
+ sed '/./,$!d' "$i" > "$TMP_NAME" # remove leading empty lines
+ cat "$COPYRIGHT_HEADER" "$TMP_NAME" > "$i"
+ rm "$TMP_NAME"
+ fi
+ echo done.
+done
+
+rmdir "$WORKDIR"
diff --git a/scripts/hasCopyright.sh b/scripts/hasCopyright.sh
new file mode 100755
index 0000000000..41edb0fe38
--- /dev/null
+++ b/scripts/hasCopyright.sh
@@ -0,0 +1,18 @@
+#!/bin/sh
+
+# Scan files given on the command line for a copyright header.
+# Only the first 15 lines will be examined and must contain the
+# string 'Copyright'.
+#
+# Sample usage:
+# find . -type f -name \*.cpp -o -name \*.h | xargs ~/bin/hasCopyright.sh
+
+for i in $@ ; do
+ if test -f "$i" && test -s "$i" ; then
+ if head -n 15 "$i" | grep Copyright > /dev/null 2>&1 ; then
+ echo "$i: Copyright."
+ else
+ echo "$i: NO COPYRIGHT."
+ fi
+ fi
+done