blob: dfcb0856bcb2032a2c8a7ee24c70bd65db5fe566 [file] [log] [blame]
The Android Open Source Projectb6c1cf62008-10-21 07:00:00 -07001#ifndef ELFCOPY_H
2#define ELFCOPY_H
3
4#include <libelf.h>
5#include <libebl.h>
6#include <elf.h>
7#include <gelf.h>
8
9/*
10symbol_filter:
11 On input: symbol_filter[i] indicates whether to keep a symbol (1) or to
12 remove it from the symbol table.
13 On output: symbol_filter[i] indicates whether a symbol was removed (0) or
14 kept (1) in the symbol table.
15*/
16
17void clone_elf(Elf *elf, Elf *newelf,
18 const char *elf_name,
19 const char *newelf_name,
20 bool *symbol_filter,
21 int num_symbols,
22 int shady
23#ifdef SUPPORT_ANDROID_PRELINK_TAGS
24 , int *prelinked,
25 int *elf_little,
26 long *prelink_addr
27#endif
28 , bool rebuild_shstrtab,
29 bool strip_debug,
30 bool dry_run);
31
32#endif/*ELFCOPY_H*/