GPL_Patcher.sh
82 lines
| 2.7 KiB
| application/x-sh
|
BashLexer
/ scripts / GPL_Patcher.sh
Alexis
|
r8 | echo "=======================================================================================" | ||
echo "---------------------------------------------------------------------------------------" | ||||
Alexis
|
r51 | echo " LPP GPL PATCHER " | ||
Alexis
|
r8 | echo " Copyright (C) 2010 Laboratory of Plasmas Physic. " | ||
echo "=======================================================================================" | ||||
echo '---------------------------------------------------------------------------------------- | ||||
This file is a part of the LPP VHDL IP LIBRARY | ||||
Copyright (C) 2010, Laboratory of Plasmas Physic - CNRS | ||||
This program is free software; you can redistribute it and/or modify | ||||
it under the terms of the GNU General Public License as published by | ||||
Alexis
|
r19 | the Free Software Foundation; either version 3 of the License, or | ||
Alexis
|
r8 | (at your option) any later version. | ||
This program is distributed in the hope that it will be useful, | ||||
but WITHOUT ANY WARRANTY; without even the implied warranty of | ||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||||
GNU General Public License for more details. | ||||
You should have received a copy of the GNU General Public License | ||||
along with this program; if not, write to the Free Software | ||||
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA | ||||
----------------------------------------------------------------------------------------' | ||||
echo | ||||
echo | ||||
echo | ||||
# Absolute path to this script. /home/user/bin/foo.sh | ||||
#SCRIPT=$(readlink -f $0) | ||||
# Absolute path this script is in. /home/user/bin | ||||
#LPP_PATCHPATH=`dirname $SCRIPT` | ||||
LPP_PATCHPATH=`pwd -L` | ||||
Alexis
|
r19 | cd $LPP_PATCHPATH/$3 | ||
echo $LPP_PATCHPATH/$3 | ||||
echo $LPP_PATCHPATH | ||||
Alexis
|
r8 | case $1 in | ||
-R | --recursive ) | ||||
Alexis
|
r19 | for file in $(find . -name *.$2) | ||
Alexis
|
r8 | do | ||
Alexis
|
r19 | if(grep -q "This program is free software" $file); then | ||
Alexis
|
r8 | echo "$file already contains GPL HEADER" | ||
else | ||||
echo "Modifying file : $file" | ||||
Alexis
|
r19 | more $LPP_PATCHPATH/licenses/GPL_V3/${2}HEADER >> $file.tmp | ||
Alexis
|
r8 | cat $file >> $file.tmp | ||
mv $file.tmp $file | ||||
fi | ||||
done | ||||
;; | ||||
-h | --help | --h | -help) | ||||
echo 'Help: | ||||
This script add a GPL HEADER in all vhdl files. | ||||
Alexis
|
r19 | usage: sh GPL_Patcher.sh [-R] [extension] [path] | ||
Alexis
|
r8 | -R or --recurcive: | ||
Alexis
|
r19 | Analyse recurcively folders starting from $LPP_PATCHPATH | ||
extension | ||||
for example vhd,h,c | ||||
path | ||||
starting path' | ||||
Alexis
|
r8 | ;; | ||
* ) | ||||
Alexis
|
r19 | for file in $(ls *.$2) | ||
Alexis
|
r8 | do | ||
if(grep -q "This program is free software" $file); then | ||||
echo "$file already contains GPL HEADER" | ||||
else | ||||
echo "Modifying file : $file" | ||||
Alexis
|
r19 | more $LPP_PATCHPATH/licenses/GPL_V3/${2}HEADER >> $file.tmp | ||
Alexis
|
r8 | cat $file >> $file.tmp | ||
mv $file.tmp $file | ||||
fi | ||||
done | ||||
;; | ||||
esac | ||||
Alexis
|
r19 | cd $LPP_PATCHPATH | ||