MinGW/Rpmlint

From FedoraProject

< MinGW(Difference between revisions)
Jump to: navigation, search
(rpmlint on MinGW debuginfo packages is expected to result in a debuginfo-without-sources error.)
(2 intermediate revisions by 2 users not shown)
Line 11: Line 11:
 
See also [https://www.zarb.org/pipermail/rpmlint-discuss/2009-January/000683.html this message]
 
See also [https://www.zarb.org/pipermail/rpmlint-discuss/2009-January/000683.html this message]
 
posted to the rpmlint-discuss list.
 
posted to the rpmlint-discuss list.
 +
 +
<b>Note before running rpmlint on MinGW packages, you should
 +
make sure you have the latest <code>mingw32-filesystem</code>
 +
package installed.</b>
  
 
== devel-file-in-non-devel-package ==
 
== devel-file-in-non-devel-package ==
Line 25: Line 29:
 
Longer term we would like to check whether <code>*.la</code> files
 
Longer term we would like to check whether <code>*.la</code> files
 
are genuinely necessary, and whether we can remove them.
 
are genuinely necessary, and whether we can remove them.
 +
 +
This rpmlint warning is due to the generated <code>*.la</code> files having executable permissions, see [https://bugzilla.redhat.com/show_bug.cgi?id=467397#c4 this comment] for a detailed explanation.
  
 
== spurious-executable-perm ==
 
== spurious-executable-perm ==
Line 68: Line 74:
  
 
Configuration files that occur in %{_mingw32_sysconfdir} (which is /usr/...) should be marked as %config, and rpmlint is wrong to complain about them.
 
Configuration files that occur in %{_mingw32_sysconfdir} (which is /usr/...) should be marked as %config, and rpmlint is wrong to complain about them.
 +
 +
== debuginfo-without-sources ==
 +
 +
MinGW debuginfo packages only contain the debug symbols and not the sources, so this rpmlint error is epxected, see [http://lists.fedoraproject.org/pipermail/mingw/2012-May/005299.html].

Revision as of 22:41, 8 May 2012

Contents

Common rpmlint warnings and errors

Some rpmlint warnings and errors are generated by MinGW packages. This page explains what they mean and whether they can be ignored. Also details of long-term plans to get them fixed.

In general we hope that some future version of rpmlint will be released that allows us to ignore certain warnings for MinGW packages.

See also this message posted to the rpmlint-discuss list.

Note before running rpmlint on MinGW packages, you should make sure you have the latest mingw32-filesystem package installed.

devel-file-in-non-devel-package

All MinGW packages are for development only, so when we passed the guidelines we didn't opt to have a separate -devel subpackage, since the main package would just be empty. See bug 468987.

script-without-shebang [some .la file]

We use *.la files when linking. This is explicitly allowed in the MinGW guidelines that were passed.

Longer term we would like to check whether *.la files are genuinely necessary, and whether we can remove them.

This rpmlint warning is due to the generated *.la files having executable permissions, see this comment for a detailed explanation.

spurious-executable-perm

See this comment for a detailed explanation.

arch-independent-package-contains-binary-or-object

See bug 468989.

non-standard-dir-in-usr i686-pc-mingw32

This breaks the FHS, but is permitted by the MinGW guidelines. These directories in /usr are ugly, but are commonly used by cross-compilation tools. The FHS project upstream is dead, so we can't get the directory added to the standard. It is thought to be very complex to remove the need for this directory from gcc and binutils.

file-not-in-%lang

This is a real error. You can use %find_lang with MinGW packages, although the exact usage isn't that obvious. Use it like this:

Name: mingw32-foo

%install

%find_lang foo

%files -f foo.lang

wrong-script-end-of-line-encoding

This can be a real error, or can be ignored depending on the context.

For example, it occurs with batch files (*.bat). If they are intended to be copied directly over to a Windows machine, then it is OK that the end-of-line encoding matches what Windows requires.

For ordinary text files that are meant to be read by Fedora developers, the usual Unix end-of-line encoding should be used. Apply dos2unix to those files.

config files in /usr

[XXX What's the exact rpmlint error?]

Configuration files that occur in %{_mingw32_sysconfdir} (which is /usr/...) should be marked as %config, and rpmlint is wrong to complain about them.

debuginfo-without-sources

MinGW debuginfo packages only contain the debug symbols and not the sources, so this rpmlint error is epxected, see [1].