Lines Matching refs:entry

339 new_sub_entry (const struct dir_entry *entry, const char *path,  in new_sub_entry()  argument
343 new_entry->from_file = entry->from_file; in new_sub_entry()
344 new_entry->from_line = entry->from_line; in new_sub_entry()
346 new_entry->flag = entry->flag; in new_sub_entry()
357 add_single_dir (struct dir_entry *entry, int verbose) in add_single_dir() argument
367 if (ptr->ino == entry->ino && ptr->dev == entry->dev) in add_single_dir()
371 error (0, 0, _("Path `%s' given more than once"), entry->path); in add_single_dir()
373 entry->from_file, entry->from_line, in add_single_dir()
377 ptr->flag = entry->flag; in add_single_dir()
378 free (entry->path); in add_single_dir()
379 free (entry); in add_single_dir()
388 dir_entries = entry; in add_single_dir()
390 prev->next = entry; in add_single_dir()
397 add_glibc_hwcaps_subdirectories (struct dir_entry *entry, const char *path) in add_glibc_hwcaps_subdirectories() argument
400 assert (entry->hwcaps == NULL); in add_glibc_hwcaps_subdirectories()
443 entry->path, e->d_name) < 0) in add_glibc_hwcaps_subdirectories()
446 struct dir_entry *new_entry = new_sub_entry (entry, new_path, in add_glibc_hwcaps_subdirectories()
465 struct dir_entry *entry = xmalloc (sizeof (struct dir_entry)); in add_dir_1() local
466 entry->hwcaps = NULL; in add_dir_1()
467 entry->next = NULL; in add_dir_1()
469 entry->from_file = strdup (from_file); in add_dir_1()
470 entry->from_line = from_line; in add_dir_1()
473 entry->path = xstrdup (line); in add_dir_1()
474 char *equal_sign = strchr (entry->path, '='); in add_dir_1()
479 entry->flag = FLAG_ANY; in add_dir_1()
483 entry->flag = lib_types[i].flag; in add_dir_1()
486 if (entry->flag == FLAG_ANY) in add_dir_1()
491 entry->flag = FLAG_ANY; in add_dir_1()
496 i = strlen (entry->path); in add_dir_1()
498 while (i > 0 && isspace (entry->path[i - 1])) in add_dir_1()
499 entry->path[--i] = '\0'; in add_dir_1()
501 while (i > 0 && entry->path[i - 1] == '/') in add_dir_1()
502 entry->path[--i] = '\0'; in add_dir_1()
506 free (entry->path); in add_dir_1()
507 free (entry); in add_dir_1()
511 char *path = entry->path; in add_dir_1()
519 error (0, errno, _("Can't stat %s"), entry->path); in add_dir_1()
520 free (entry->path); in add_dir_1()
521 free (entry); in add_dir_1()
525 entry->ino = stat_buf.st_ino; in add_dir_1()
526 entry->dev = stat_buf.st_dev; in add_dir_1()
528 if (add_single_dir (entry, 1)) in add_dir_1()
530 add_glibc_hwcaps_subdirectories (entry, path); in add_dir_1()
782 search_dir (const struct dir_entry *entry) in search_dir() argument
785 if (entry->hwcaps == NULL) in search_dir()
787 hwcap = path_hwcap (entry->path); in search_dir()
791 printf ("%s: (hwcap: %#.16" PRIx64 ")", entry->path, hwcap); in search_dir()
793 printf ("%s:", entry->path); in search_dir()
800 printf ("%s: (hwcap: \"%s\")", entry->path, in search_dir()
801 glibc_hwcaps_subdirectory_name (entry->hwcaps)); in search_dir()
804 printf (_(" (from %s:%d)\n"), entry->from_file, entry->from_line); in search_dir()
813 dir_name = chroot_canon (opt_chroot, entry->path); in search_dir()
819 dir_name = entry->path; in search_dir()
828 error (0, errno, _("Can't open directory %s"), entry->path); in search_dir()
851 || (entry->hwcaps == NULL in search_dir()
868 len += strlen (entry->path) + 2; in search_dir()
876 sprintf (file_name, "%s/%s", entry->path, direntry->d_name); in search_dir()
948 if (entry->hwcaps == NULL in search_dir()
960 struct dir_entry *new_entry = new_sub_entry (entry, file_name, in search_dir()
1064 && (entry->flag == FLAG_ELF_LIBC5 in search_dir()
1065 || entry->flag == FLAG_ELF_LIBC6)) in search_dir()
1066 flag = entry->flag; in search_dir()
1071 if (flag == FLAG_ELF_LIBC5 && entry->flag != FLAG_ELF_LIBC5 in search_dir()
1072 && entry->flag != FLAG_ANY) in search_dir()
1074 if (flag == FLAG_ELF_LIBC6 && entry->flag != FLAG_ELF_LIBC6 in search_dir()
1075 && entry->flag != FLAG_ANY) in search_dir()
1077 if (flag == FLAG_LIBC4 && entry->flag != FLAG_LIBC4 in search_dir()
1078 && entry->flag != FLAG_ANY) in search_dir()
1109 entry->path); in search_dir()
1151 if (entry->hwcaps == NULL) in search_dir()
1155 create_links (dir_name, entry->path, dlib_ptr->name, in search_dir()
1168 add_to_cache (entry->path, filename, dlib_ptr->soname, in search_dir()
1170 dlib_ptr->isa_level, hwcap, entry->hwcaps); in search_dir()
1191 struct dir_entry *entry; in search_dirs() local
1193 for (entry = dir_entries; entry != NULL; entry = entry->next) in search_dirs()
1194 search_dir (entry); in search_dirs()
1199 entry = dir_entries; in search_dirs()
1201 free (entry->path); in search_dirs()
1202 free (entry); in search_dirs()