2013-07-12 16:11:14 +02:00
|
|
|
--- tools/elfdeps.c.orig 2013-01-30 15:33:12.000000000 +0000
|
|
|
|
+++ tools/elfdeps.c 2013-07-12 12:21:47.000000000 +0000
|
|
|
|
@@ -15,6 +15,7 @@
|
2011-06-03 15:20:15 +02:00
|
|
|
int filter_private = 0;
|
|
|
|
int soname_only = 0;
|
2013-07-12 16:11:14 +02:00
|
|
|
int fake_soname = 1;
|
2011-06-03 15:20:15 +02:00
|
|
|
+int assume_exec = 0;
|
|
|
|
|
|
|
|
typedef struct elfInfo_s {
|
|
|
|
Elf *elf;
|
2013-07-12 16:11:14 +02:00
|
|
|
@@ -235,7 +236,7 @@ static int processFile(const char *fn, i
|
|
|
|
if (ehdr->e_type == ET_DYN || ehdr->e_type == ET_EXEC) {
|
|
|
|
ei->marker = mkmarker(ehdr);
|
2011-06-03 15:20:15 +02:00
|
|
|
ei->isDSO = (ehdr->e_type == ET_DYN);
|
|
|
|
- ei->isExec = (st.st_mode & (S_IXUSR|S_IXGRP|S_IXOTH));
|
|
|
|
+ ei->isExec = assume_exec || (st.st_mode & (S_IXUSR|S_IXGRP|S_IXOTH));
|
|
|
|
|
|
|
|
processSections(ei);
|
|
|
|
}
|
2013-07-12 16:11:14 +02:00
|
|
|
@@ -292,6 +293,7 @@ int main(int argc, char *argv[])
|
2011-06-03 15:20:15 +02:00
|
|
|
{ "filter-private", 0, POPT_ARG_VAL, &filter_private, -1, NULL, NULL },
|
|
|
|
{ "soname-only", 0, POPT_ARG_VAL, &soname_only, -1, NULL, NULL },
|
2013-07-12 16:11:14 +02:00
|
|
|
{ "no-fake-soname", 0, POPT_ARG_VAL, &fake_soname, 0, NULL, NULL },
|
2011-06-03 15:20:15 +02:00
|
|
|
+ { "assume-exec", 0, POPT_ARG_VAL, &assume_exec, -1, NULL, NULL },
|
|
|
|
POPT_AUTOHELP
|
|
|
|
POPT_TABLEEND
|
|
|
|
};
|