8#ifndef __ABG_TOOLS_UTILS_H
9#define __ABG_TOOLS_UTILS_H
17#include "abg-suppression.h"
43 const vector<char**>& debug_info_root_paths);
45 const vector<char**>& debug_info_root_paths);
47 const vector<char**>& debug_info_root_paths);
57 string& path_dir_name,
58 bool keep_separator_at_end=
false);
59void real_path(
const string&path,
string& realpath);
62ostream&
emit_prefix(
const string& prog_name, ostream& out);
63bool check_file(
const string& path, ostream& out,
const string& prog_name =
"");
64bool check_dir(
const string& path, ostream& out,
const string& prog_name=
"");
69bool split_string(
const string&,
const string&, vector<string>&);
77 vector<string>& arguments);
79 set<string>& provided_dsos);
90 const vector<string>& hdr_files);
94 const vector<string>& header_files);
98 (
const vector<string>& abi_whitelist_paths);
102 string& vmlinux_path);
106 const string& debug_info_root_path,
107 string& vmlinux_path,
108 vector<string>& module_paths);
112 string& vmlinux_path,
113 vector<string>& module_paths);
129 const string& file_path_to_look_for,
134 const string& file_path_to_look_for,
142 const vector<string>& binaries,
143 const vector<string>& deps_dirs,
144 corpus_group& group);
148 const corpus& korpus,
149 const vector<string>& deps_dirs,
150 corpus_group& group);
154 const corpus_sptr& korpus,
155 const vector<string>& binaries,
156 const vector<string>& deps_dirs);
160 const corpus_sptr& korpus,
161 const vector<string>& deps_dirs);
183 std::unique_ptr<priv> priv_;
222 FILE_TYPE_XML_CORPUS,
225 FILE_TYPE_XML_CORPUS_GROUP,
295 std::unique_ptr<priv> priv_;
310 bool value(time_t& hours,
313 time_t& milliseconds)
const;
342 const string& file_name);
356 const string debug_info_root,
357 const string& vmlinux_path,
358 vector<string>& suppr_paths,
359 vector<string>& kabi_wl_paths,
367 const vector<char**>& debug_info_root_paths,
371 bool linux_kernel_mode =
false);
379#define ABG_ASSERT_NOT_REACHED \
381 std::cerr << "in " << __FUNCTION__ \
382 << " at: " << __FILE__ << ":" << __LINE__ \
383 << ": execution should not have reached this point!\n"; \
This file contains the declarations for an elf-based. DWARF and CTF readers can inherit this one.
origin
This abstracts where the corpus comes from. That is, either it has been read from the native xml form...
This is an abstraction of the set of resources necessary to manage several aspects of the internal re...
vector< suppression_sptr > suppressions_type
Convenience typedef for a vector of suppression_sptr.
shared_ptr< type_suppression > type_suppression_sptr
Convenience typedef for a shared pointer to type_suppression.
Toplevel namespace for libabigail.