source: rtems-tools/rtemstoolkit/rld-elf-types.h @ 3618a62

Last change on this file since 3618a62 was 87e0e76, checked in by Chris Johns <chrisj@…>, on Sep 13, 2014 at 2:09:16 AM

Refactor code into the RTEMS Toolkit.

  • Property mode set to 100644
File size: 1.7 KB
RevLine 
[ec24a37]1/*
[977c3de]2 * Copyright (c) 2011, Chris Johns <chrisj@rtems.org>
[ec24a37]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.
[977c3de]7 *
[ec24a37]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     */
[90d8d43]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;
[5eb6604]50    typedef ::Elf32_Ehdr  elf32_ehdr;
[90d8d43]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;
[ec24a37]57  }
58}
59
60#endif
Note: See TracBrowser for help on using the repository browser.