MinGW/Rpmlint

= 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 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  subpackage, since the main package would just be empty. See bug 468987.

script-without-shebang [some .la file]
We use  files when linking. This is explicitly allowed in the MinGW guidelines that were passed.

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

This rpmlint warning is due to the generated  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  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  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. 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.