Spot went through this bug that has been around forever, and wrote up
some review comments. I cleaned up some of the low hanging fruit, but
there's still a few that I'm uncertain on. input welcomed.
> kernel.x86_64: E: shared-lib-without-dependency-information
> /lib/modules/2.6.36-1.fc15.x86_64/vdso/vdso32-syscall.so
> kernel.x86_64: E: shared-lib-without-dependency-information
> /lib/modules/2.6.36-1.fc15.x86_64/vdso/vdso.so
> kernel.x86_64: E: shared-lib-without-dependency-information
> /lib/modules/2.6.36-1.fc15.x86_64/vdso/vdso32-int80.so
> kernel.x86_64: E: missing-PT_GNU_STACK-section
> /lib/modules/2.6.36-1.fc15.x86_64/vdso/vdso32-syscall.so
> kernel.x86_64: E: missing-PT_GNU_STACK-section
> /lib/modules/2.6.36-1.fc15.x86_64/vdso/vdso.so
> kernel.x86_64: E: missing-PT_GNU_STACK-section
> /lib/modules/2.6.36-1.fc15.x86_64/vdso/vdso32-int80.so
>
> (I don't begin to claim that I understand what's happening here, but I suspect
> that these vdso files server a specific purpose and that these warnings do not
> apply to them.)
I'm going to assume this is to be expected, as they aren't 'real' libraries. Roland ?
> kernel.x86_64: W: no-documentation
>
> (At a minimum, COPYING should be present as %doc with the GPLv2 terms.)
I'm not sure this makes sense when we have a kernel-doc package.
Though I note we don't have COPYING in there either.
> kernel.x86_64: W: dangling-relative-symlink
> /lib/modules/2.6.36-1.fc15.x86_64/build
> ../../../usr/src/kernels/2.6.36-1.fc15.x86_64
>
> (It seems odd that /lib/modules/2.6.36-1.fc15.x86_64/build is packaged in
> kernel, but the symlink it points to is in kernel-devel. Is there a reason that
> the /lib/modules/2.6.36-1.fc15.x86_64/build ownership isn't in kernel-devel?)
We flip-flopped on this a few years ago. It used to be that way iirc, but I'm
not recalling the exact reasoning for why it changed.
> kernel.x86_64: W: non-conffile-in-etc
> /etc/ld.so.conf.d/kernel-2.6.36-1.fc15.x86_64.conf
>
> (Should this be marked as %config(noreplace)?)
it's versioned, so no ? I think ?
> kernel-devel.x86_64: W: no-documentation
> (There are documentation files included in kernel-devel, they are not marked as
> %doc though. Recognizing that the kernel-devel file list is autogenerated, I
> can't see a good way to accomplish this file marking, so I propose that this is
> safe to ignore.)
ack.
> kernel-devel.x86_64: E: zero-length
> /usr/src/kernels/2.6.36-1.fc15.x86_64/include/config/fb/via.h
> [ ... repeated for several hundred empty kernel .h files ... ]
>
> (I assume that all of these zero length header files are kernel header files
> which are not intended to be exposed/exported to userspace. Perhaps it makes
> sense to iterate through the buildroot at the end of install and delete all of
> the zero length header files? Might speed up the -devel transaction.)
Something in the tree could be #include'ing them, but I don't see anything
from a quick grep. Not sure about this. (They're autogenerated, and their
content varies depending on CONFIG options being set).
> kernel-devel.x86_64: E: non-executable-script
> /usr/src/kernels/2.6.36-1.fc15.x86_64/scripts/rt-tester/rt-tester.py 0644L
> /usr/bin/python
> kernel-devel.x86_64: E: non-executable-script
> /usr/src/kernels/2.6.36-1.fc15.x86_64/scripts/headers_install.pl 0644L
> /usr/bin/perl
> kernel-devel.x86_64: E: non-executable-script
> /usr/src/kernels/2.6.36-1.fc15.x86_64/scripts/gcc-x86_32-has-stack-protector.sh
> 0644L /bin/sh
> kernel-devel.x86_64: E: non-executable-script
> /usr/src/kernels/2.6.36-1.fc15.x86_64/scripts/gfp-translate 0644L /bin/bash
> kernel-devel.x86_64: E: non-executable-script
> /usr/src/kernels/2.6.36-1.fc15.x86_64/scripts/kconfig/lxdialog/check-lxdialog.sh
> 0644L /bin/sh
> kernel-devel.x86_64: E: non-executable-script
> /usr/src/kernels/2.6.36-1.fc15.x86_64/scripts/export_report.pl 0644L
> /usr/bin/perl
> kernel-devel.x86_64: E: non-executable-script
> /usr/src/kernels/2.6.36-1.fc15.x86_64/scripts/mksysmap 0644L /bin/sh
> kernel-devel.x86_64: E: non-executable-script
> /usr/src/kernels/2.6.36-1.fc15.x86_64/scripts/package/builddeb 0644L /bin/sh
> kernel-devel.x86_64: E: non-executable-script
> /usr/src/kernels/2.6.36-1.fc15.x86_64/scripts/gen_initramfs_list.sh 0644L
> /bin/bash
> kernel-devel.x86_64: E: non-executable-script
> /usr/src/kernels/2.6.36-1.fc15.x86_64/scripts/bootgraph.pl 0644L /usr/bin/perl
> kernel-devel.x86_64: E: non-executable-script
> /usr/src/kernels/2.6.36-1.fc15.x86_64/scripts/tracing/draw_functrace.py 0644L
> /usr/bin/python
> kernel-devel.x86_64: E: non-executable-script
> /usr/src/kernels/2.6.36-1.fc15.x86_64/scripts/headers_check.pl 0644L
> /usr/bin/perl
> kernel-devel.x86_64: E: non-executable-script
> /usr/src/kernels/2.6.36-1.fc15.x86_64/scripts/selinux/install_policy.sh 0644L
> /bin/sh
> kernel-devel.x86_64: E: non-executable-script
> /usr/src/kernels/2.6.36-1.fc15.x86_64/scripts/gcc-version.sh 0644L /bin/sh
> kernel-devel.x86_64: E: non-executable-script
> /usr/src/kernels/2.6.36-1.fc15.x86_64/scripts/profile2linkerlist.pl 0644L
> /usr/bin/perl
> kernel-devel.x86_64: E: non-executable-script
> /usr/src/kernels/2.6.36-1.fc15.x86_64/scripts/kconfig/streamline_config.pl
> 0644L /usr/bin/perl
> kernel-devel.x86_64: E: non-executable-script
> /usr/src/kernels/2.6.36-1.fc15.x86_64/scripts/markup_oops.pl 0644L
> /usr/bin/perl
> kernel-devel.x86_64: E: non-executable-script
> /usr/src/kernels/2.6.36-1.fc15.x86_64/scripts/mkmakefile 0644L /bin/sh
> kernel-devel.x86_64: E: non-executable-script
> /usr/src/kernels/2.6.36-1.fc15.x86_64/scripts/package/buildtar 0644L /bin/sh
> kernel-devel.x86_64: E: non-executable-script
> /usr/src/kernels/2.6.36-1.fc15.x86_64/scripts/gcc-x86_64-has-stack-protector.sh
> 0644L /bin/sh
>
> (These script files are being packaged, but probably set to chmod -x to prevent
> kernel-devel from picking up dependencies. This list of files should be
> reviewed to see whether they should remain in kernel-devel or be deleted from
> the buildroot at the end of %install. If any of these files are useful and are
> kept in kernel-devel, they should be set executable so proper dependencies are
> found for these scripts by RPM.)
I think we can probably just kill all of these.
everything else on spots list I committed already.
Dave