diff options
author | 2023-06-21 15:10:52 +0200 | |
---|---|---|
committer | 2023-06-21 15:10:52 +0200 | |
commit | b0be84a36a69fdd93da63c2b3dac7315471c3df5 (patch) | |
tree | 82536be3718d0dd53825451be5b4b00b4c69aebc | |
parent | 1740d3be089bfeaa2057804dde0300fa264a45ac (diff) | |
download | noide-b0be84a36a69fdd93da63c2b3dac7315471c3df5.tar.gz noide-b0be84a36a69fdd93da63c2b3dac7315471c3df5.zip |
Add update-copyright function
-rwxr-xr-x | noide | 53 |
1 files changed, 53 insertions, 0 deletions
@@ -1,5 +1,6 @@ #!/bin/sh +#- # Copyright (c) 2023, Alessandro Iezzi # # Redistribution and use in source and binary forms, with or without @@ -23,3 +24,55 @@ # OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE # OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +update_copyright() +{ + if [ -z $1 ]; then + echo "$0 --update-copyright <file>" + exit 1 + fi + + ifile=$1 + ffile=license-header.txt + ofile=tmp`date +%s`-2 + ftype="`file $1 | sed -E 's/.*: (.*),.*/\1/g'`" + tmpfile=tmp`date +%s`-1 + + if [ "$ftype" = 'C source' ]; then + s="\/\*-" + m=" \*" + e=" \*\/" + elif [ "$ftype" = 'makefile script' ]; then + s="#-" + m="#" + e="" + elif [ "$ftype" = 'POSIX shell script' ]; then + s="#-" + m="#" + e="" + else + echo "Unknown file type" + exit 1 + fi + + printf "%s\n" $s | sed 's/\\//g' > $tmpfile + cat $ffile | sed "s/^/$m /g" | sed "s/^$m $/$m/g" >> $tmpfile + printf "$e\n" | sed 's/\\//g' >> $tmpfile + + sed " + /^$s/r "$tmpfile" + /^$s/,/^$e$/d + " <"$ifile" >"$ofile" + + mv $ofile $ifile + + rm $tmpfile +} + +while [ $# -gt ]; do + case $1 in + --update-copyright) + update_copyright $@ + ;; + esac + shift +done |