RPM won't erase its installed directories if they have been modified after the initial installation

Solution 1:

rpm uses a database (usually in /var/lib/rpm) where is stores information about installations. If you create (rename, copy) a file into the installation directory, rpm won't remove it since it is not in the database. If you modify a file, rpm will not remove it since it has different information in the database. rpm will not delete a non-empty directory.

If you want to delete the whole directory using rpm, you need to rebuild the database just before the uninstall. See rpm {--initdb|--rebuilddb} [-v] [--dbpath DIRECTORY] [--root DIRECTORY]

http://linux.die.net/man/8/rpm