[GRASS-dev] GRASS 7: openSUSE RPMLint issues
Glynn Clements
glynn at gclements.plus.com
Sat Oct 6 15:22:35 PDT 2012
Markus Neteler wrote:
> there is a new GRASS 7.svn package (thanks to Angelos Tzotsos) for openSUSE:
>
> https://build.opensuse.org/package/show?package=grass7&project=Application%3AGeo
>
> looking at the "Rpmlint Results" there I found some issues we should fix (how?):
>
> grass7.i586: W: shared-lib-calls-exit
Some of these are correct, e.g. libgis and libdbmi_driver.
Some others are consequences of libraries providing their own "fatal
error" handling rather than using G_fatal_error(); those should be
fixed.
You can identify the object files in question using the database
generated by tools/sql.sh, with:
SELECT * FROM obj_imp WHERE symbol = 'exit' AND object LIKE 'lib/%' ;
> grass7.i586: W: script-without-shebang /opt/grass/tools/html.py
> grass7.i586: W: script-without-shebang /opt/grass/tools/groff.py
> This text file has executable bits set or is located in a path dedicated for
> executables, but lacks a shebang and cannot thus be executed. If the file is
> meant to be an executable script, add the shebang, otherwise remove the
> executable bits or move the file elsewhere.
These shouldn't have executable bits, but they're installed using a
pattern rule for "%.py" which makes all .py files executable. Fixed in
r53328.
> grass7.i586: W: python-bytecode-inconsistent-mtime
> /opt/grass/etc/gui/wxpython/mapdisp/mapwindow.pyc 2012-10-05T20:31:15
> /opt/grass/etc/gui/wxpython/mapdisp/mapwindow.py 2012-10-05T20:31:14
> The timestamp embedded in this python bytecode file isn't equal to the mtime
> of the original source file, which will force the interpreter to recompile the
> .py source every time, ignoring the saved bytecode.
No idea about this, or why it would just be this file.
> grass7.i586: W: non-executable-script
> /opt/grass/etc/gui/wxpython/swipe/main.py 0644L /usr/bin/env
> This text file contains a shebang or is located in a path dedicated for
> executables, but lacks the executable bits and cannot thus be executed. If
> the file is meant to be an executable script, add the executable bits,
> otherwise remove the shebang or move the file elsewhere.
All of the wxPython scripts are installed as non-executable. The GUI
probably fudges the issue by executing them with "python script.py ...".
If these can reasonably be used from outside the GUI, they should have
execute permission and a shebang, otherwise they should have neither.
--
Glynn Clements <glynn at gclements.plus.com>
More information about the grass-dev
mailing list