source: rtems-tools/rtemstoolkit/rld-elf-types.h @ 066a64b

4.104.115
Last change on this file since 066a64b was 87e0e76, checked in by Chris Johns <chrisj@…>, on 09/13/14 at 02:09:16

Refactor code into the RTEMS Toolkit.

  • Property mode set to 100644
File size: 1.7 KB
Line 
1/*
2 * Copyright (c) 2011, Chris Johns <chrisj@rtems.org>
3 *
4 * Permission to use, copy, modify, and/or distribute this software for any
5 * purpose with or without fee is hereby granted, provided that the above
6 * copyright notice and this permission notice appear in all copies.
7 *
8 * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
9 * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
10 * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
11 * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
12 * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
13 * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
14 * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
15 */
16/**
17 * @file
18 *
19 * @ingroup rtems-ld
20 *
21 * @brief RTEMS Linker ELF types.
22  *
23 */
24
25#if !defined (_RLD_ELF_TYPES_H_)
26#define _RLD_ELF_TYPES_H_
27
28#define __LIBELF_INTERNAL__ 1
29#include <gelf.h>
30#include <libelf.h>
31
32namespace rld
33{
34  namespace elf
35  {
36    /**
37     * Hide the types from libelf we use.
38     */
39    typedef ::GElf_Half   elf_half;
40    typedef ::GElf_Word   elf_word;
41    typedef ::GElf_Xword  elf_xword;
42    typedef ::GElf_Sxword elf_sxword;
43    typedef ::Elf_Type    elf_type;
44    typedef ::GElf_Addr   elf_addr;
45    typedef ::GElf_Off    elf_off;
46    typedef ::GElf_Sym    elf_sym;
47    typedef ::Elf_Kind    elf_kind;
48    typedef ::Elf_Scn     elf_scn;
49    typedef ::GElf_Ehdr   elf_ehdr;
50    typedef ::Elf32_Ehdr  elf32_ehdr;
51    typedef ::GElf_Shdr   elf_shdr;
52    typedef ::GElf_Phdr   elf_phdr;
53    typedef ::Elf_Data    elf_data;
54    typedef ::GElf_Rel    elf_rel;
55    typedef ::GElf_Rela   elf_rela;
56    typedef ::Elf         elf;
57  }
58}
59
60#endif
Note: See TracBrowser for help on using the repository browser.