IF YOU WOULD LIKE TO GET AN ACCOUNT, please write an
email to Administrator. User accounts are meant only to access repo
and report issues and/or generate pull requests.
This is a purpose-specific Git hosting for
BaseALT
projects. Thank you for your understanding!
Только зарегистрированные пользователи имеют доступ к сервису!
Для получения аккаунта, обратитесь к администратору.
Do not let canonicalization shrink directory name by 1 character. Or else
that would prevent (in-place) changing of Directory Table entries in
.debug_line section, causing following error in brp-debuginfo:
/usr/lib/rpm/debugedit: canonicalization unexpectedly shrank by one character
Fixes: https://bugzilla.altlinux.org/show_bug.cgi?id=39184
Consider another directory level when searching for vmlinux, for kernel
builds in sub-directory using `make O=output_dir'. Also, improve warning
message making it more understandable.
Reason: ae1ecef8 ("process-debuginfo: Do not call eu-elfcompress if it doesn't exist")
Fixes: 8682814b ("debuginfo: Try to uncompress if debugedit failed to extract sources list")
Do not add (uncompressed) module (or vmlinux) into debuginfo package if
it does not actually exists.
Due to other bugs there could be compressed kernel module, (which
implies adding uncompressed module into debuginfo), but, uncompressed
version (which brp-debuginfo should create) does not exist, making
build errors such as:
error: No such file or directory: /usr/src/tmp/kernel-image-std-def-buildroot/usr/lib/debug/lib/modules/5.8.0-std-def-alt1/kernel/fs/nfs/flexfilelayout/nfs_layout_flexfiles.ko
Reported-by: Anton V. Boyarshinov <boyarsh@altlinux.org>
Fixes: 7aa048df ("Generate debuginfo for kernel packages")
- Removed obsolete ldconfig, update menu, and install info macros.
- Implemented canonicalization of symlink destinations.
- Backported:
+ added a warning on absolute symlinks;
+ disabled calculation of digests for ghost files.
The canonicalization is based on the code lifted from tools/debugedit.c
The new behaviour is enabled by default and controlled by
%_canonicalize_symlinks macro.
While supported of course, absolute symlinks are nasty in many ways
so issue a warning to packagers. Update two affected test-cases.
Related to #668.
(cherry picked from rpm.org commit 8359ded6784579b9f2527a09888132034783e1de)
when the files exist during build time.
The hash will never be used for verification anyway.
This helps making packages build more reproducibly.
(cherry picked from rpm.org commit 8cda485e1150dc6be990a7aa4496da848154cf55)
It might be a rare condition but it /can/ happen, and previously that would cause '\0' written out of bounds (at negative array offset). Also leave room for the terminating '\0' at the end of buffer when calling readlink(), previously a link exactly the size of buffer would've been silently truncated.
(cherry picked from rpm.org commit c499a0b912629eeeabc3554d3e3a95c088e96422)
This removes %post_ldconfig, %post_ldconfig_lib, %post_ldconfig_sys,
and %postun_ldconfig macros which were marked as obsolete by commit
da3de4082f back in 2008.
`%dir /' would cause errors (ALT#38842):
error: No such file or directory: /usr/src/tmp/broken-debug-buildroot/usr/lib/debug/lib/modules
error: No such file or directory: /usr/src/tmp/broken-debug-buildroot/usr/lib/debug/lib/modules/vmlinux
Reported-by: Vitaly Lipatov <lav@altlinux.org>
BZ: https://bugzilla.altlinux.org/show_bug.cgi?id=38842
- debuginfo: Warn if stripped ELFs are found.
- debuginfo: Implement %_stripped_files_terminate_build.
- debuginfo: Try to uncompress if debugedit failed to extract sources.
If debugedit failed to extract sources list, uncompress and try again.
Then compress back.
ps. Interesting relevant reading:
https://blogs.oracle.com/solaris/elf_section_compression-v2
Spelling suggestions by Dmitry V. Levin <ldv@altlinux.org>.
Terminate build if stripped ELF files are found. Usage:
%define _stripped_files_terminate_build 1
Formatting suggestions by Dmitry V. Levin <ldv@altlinux.org>.
Actually, `.debug_line` section is checked (implicitly by debugedit)
which should go together with all `.debug_*` sections. This
simplification will make check faster.
Note: Only non-stripped binaries are checked.
Spelling fixes, usage of `Warning' function, and redirect to stderr is
suggested by Dmitry V. Levin <ldv@altlinux.org>.
- brp-debuginfo: Re-enable processing of kernel modules.
- debuginfo.req: Fix 'vmlinux' processing error on ppc64le.
- process-debuginfo: Do not call eu-elfcompress if it doesn't exist.
E2K arch have old elfutils-0.159 which doesn't have eu-elfcompress.
Error:
/usr/lib/rpm/process-debuginfo: line 68: eu-elfcompress: command not found
Reported-by: Andrey Savchenko <bircoph@altlinux.org>
`vmlinux' on ppc appears to have `Dynamic Section', this triggers its
processing with `/usr/lib/rpm/ldd' which returns error:
ldd: ERROR: /usr/src/tmp/kernel-image-std-test-buildroot/usr/lib/debug/lib/modules/5.4.49-std-test-alt4/vmlinux: failed to find the program interpreter
find-requires: ERROR: /usr/lib/rpm/debuginfo.req failed
error: /bin/sh failed
error: Failed to find Requires
Reported-by: Anton V. Boyarshinov <boyarsh@altlinux.org>
Do not try to process ELF relocatable objects that are not kernel
modules, this fixes the following regression:
/usr/lib/rpm/debugedit: ./usr/lib64/gcc/x86_64-alt-linux/9/crtfastmath.o: DWARF version 0 unhandled
objdump: ./usr/lib64/gcc/x86_64-alt-linux/9/crtfastmath.o: bad value
verify-elf: ERROR: ./usr/lib64/gcc/x86_64-alt-linux/9/crtfastmath.o: objdump failed
Fixes: 7aa048df38 ("Generate debuginfo for kernel packages")
- Generate debuginfo for kernel packages.
- Process debuginfo in parallel using process-debuginfo script.
- debugedit -n to avoid recomputing build-id.
Allow `crash` (gdb-7.6 based) to work out of the box.
Otherwise it will fail with the error:
Dwarf Error: wrong version in compilation unit header (is 0, should be 2, 3, or 4)
Alas, it will not be able to load debuginfo for the ko modules, but, advanced
user can `eu-elfcompress -t none` them manually.
We can't keep modules uncompressed due to `cpio archive too big - 4136M'
RPM build error.
Avoid `DWARF version 0 unhandled' for compressed ELFs in
find-debuginfo-files.
Based on 6e9fd97f6 ("debugedit: Add -n, --no-recompute-build-id.")
by Mark Wielaard <mark@klomp.org>.