cctools added, still work in progress

This commit is contained in:
2018-07-11 10:44:10 +02:00
parent 0d17f4f28b
commit b674162f07
11 changed files with 275 additions and 0 deletions

View File

@@ -0,0 +1,35 @@
--- misc/nm.c 1969-12-31 16:00:00.000000000 -0800
+++ misc/nm.c 2012-09-29 12:36:22.000000000 -0700
@@ -496,7 +496,7 @@ void *cookie)
uint32_t nsymbols;
struct value_diff *value_diffs;
- char *short_name, *has_suffix;
+ char *short_name, *suffix;
enum bool is_framework;
cmd_flags = (struct cmd_flags *)cookie;
@@ -650,9 +650,20 @@ void *cookie)
process_flags.lib_names[j] =
(char *)dl + dl->dylib.name.offset;
short_name = guess_short_name(process_flags.lib_names[j],
- &is_framework, &has_suffix);
- if(short_name != NULL)
- process_flags.lib_names[j] = short_name;
+ &is_framework, &suffix);
+ if(short_name != NULL) {
+ if (suffix) {
+ char *combined_name;
+ asprintf(&combined_name, "%s%s", short_name, suffix);
+ if (combined_name) {
+ process_flags.lib_names[j] = combined_name;
+ free(short_name);
+ free(suffix);
+ }
+ } else {
+ process_flags.lib_names[j] = short_name;
+ }
+ }
j++;
}
lc = (struct load_command *)