non-standard-file-perm
The file has a mode different from 0644. In some cases this is intentional, but in other cases this is a bug.
Severity: | warning |
Experimental: | false |
Screens
- toolchain/gnat/ali-read-only
-
In GNAT, the compiler also deals with dependencies and rebuild order. The
.ali
files contain the dependency information required to detect if a.o
is more recent than the closure of all sources it depends upon, or if it should be rebuilt.By convention, a read-only
.ali
file tellsGNAT
to fail if the.o
is obsolete or unavailable, instead of attempting to rebuild. This is recommended for packaged libraries (the.so
or.a
are available but not the.o
files).This convention may seem bizarre according to modern standards, but it has been in use for 25 years, so Adacore would probably need a compelling reason to break it.
See also Debian Policy 8.4, which explicitly requires this:
If the package provides Ada Library Information (
*.ali
) files for use withGNAT
, these files must be installed read-only (mode 0444) so thatGNAT
will not attempt to recompile them. This overrides the normal file mode requirements given in "Permissions and owners.""Nicolas Boulenguez" nicolas@debian.org
See also: Development files (Section 8.4) in the Debian Policy Manual, Bug#986400
See also
Permissions and owners (Section 10.9) in the Debian Policy Manual
- list of all the affected packages
- the source of this tag