Intent to fix license header of *mm stack



Hi mm stack maintainers:

Thanks for your work on maintaining the C++ bindings of various
GTK+/GNOME modules.  As the time passes, there are license disparities
between the COPYING file and various source files, where the former says
"Lesser General Public License version 2.1" while the latter stays at
"Library General Public License version 2".  Perhaps after the license
changed from LGPL-2 to LGPL-2.1 the source file headers are left
intact.  It'll be good to make them sync again, which will ease the work
of packagers where the distribution has strong concern on license issue.

Initially I plan to provide patches through bugzilla, but due to the
amount of *mm packages this seems less efficient.  so I've cooked a
crude and *mm package specific script for this purpose.  It's very
dirty, and depends on the specific source file header format, but should
work in this specific situation.  Please consider run the script for
various *mm packages and check if it works, and then commit.  Thanks.

Regards,
Deng Xiyue

#!/bin/bash

for FILE in `find . -name "*.h" -o -name "*.hg" -o -name "*.cc" -o -name "*.ccg" -o -name "*.m4"` # files for checking.
do
    echo "Fixing $FILE ..."

    grep "GNU General" $FILE > /dev/null # dirty way to check for GPL
    result=$?
    if [ "$result" == "0" ] # if it's GPL-2 then strip "Library"
    then
        sed -e "s/Library\ //g" $FILE > $FILE.new
        mv $FILE.new $FILE
    else # Assume result to be LGPL-2, and then change to LGPL-2.1
        sed -e "s/Library\(\ General\)/Lesser\1/g" $FILE > $FILE.new # LGPL-2.1 uses "Lesser" instead of "Library"
        diff $FILE $FILE.new > /dev/null
        result=$?
        mv $FILE.new $FILE
        if [ "$result" != "0" ]
        then
            sed -e "s/\(\ version\ \)2\ /\12.1 /g" $FILE > $FILE.new
            mv $FILE.new $FILE
        fi
    fi
done


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]