[Rpm-maint] [PATCH] Split the processing programs and libraries

Alexey Gladkov gladkov.alexey at gmail.com
Fri Oct 29 21:10:59 UTC 2010

The elfdeps runs only for executable files, but some
Linux distributions, remove the executable bit from shared libraries.
For example, a quote from debian policy:

"Shared libraries should not be installed executable, since the dynamic
linker does not require this and trying to execute a shared library
usually results in a core dump."


Signed-off-by: Alexey Gladkov <gladkov.alexey at gmail.com>
 fileattrs/elf.attr    |    2 +-
 fileattrs/elflib.attr |    4 ++++
 2 files changed, 5 insertions(+), 1 deletions(-)
 create mode 100644 fileattrs/elflib.attr

diff --git a/fileattrs/elf.attr b/fileattrs/elf.attr
index fba180b..7355b8f 100644
--- a/fileattrs/elf.attr
+++ b/fileattrs/elf.attr
@@ -1,4 +1,4 @@
 %__elf_provides		%{_rpmconfigdir}/elfdeps --provides %{?__filter_GLIBC_PRIVATE:--filter-private}
 %__elf_requires		%{_rpmconfigdir}/elfdeps --requires %{?__filter_GLIBC_PRIVATE:--filter-private}
-%__elf_magic		^ELF (32|64)-bit.*$
+%__elf_magic		^ELF (32|64)-bit.* executable, .*$
 %__elf_flags		exeonly
diff --git a/fileattrs/elflib.attr b/fileattrs/elflib.attr
new file mode 100644
index 0000000..3d7d04a
--- /dev/null
+++ b/fileattrs/elflib.attr
@@ -0,0 +1,4 @@
+%__elf_provides		%{_rpmconfigdir}/elfdeps --provides %{?__filter_GLIBC_PRIVATE:--filter-private}
+%__elf_requires		%{_rpmconfigdir}/elfdeps --requires %{?__filter_GLIBC_PRIVATE:--filter-private}
+%__elf_magic		^ELF (32|64)-bit.* shared object, .*$
+%__elf_flags		%nil

More information about the Rpm-maint mailing list