ia64/xen-unstable

view config/StdGNU.mk @ 13631:db3d03dfe92f

add libelf: an ELF binary parser library.

This patch adds a library with a small collection of helper functions
to parse and load elf binaries. The library handles endianess and
elfsize at runtime.

The patch also shuffles around the include files a bit. Now there is
*one* include file holding all the elf structures
(xen/include/public/elfstructs.h) which is included by everyone who
needs them.

It's dead code with this patch only, putting the code into use happens
in followup patches.

Signed-off-by: Gerd Hoffmann <kraxel@suse.de>
---
tools/libxc/xc_elf.h | 525 -----------------------------------
xen/arch/x86/boot/mkelf32.c | 2
xen/common/Makefile | 2
xen/common/libelf/Makefile | 4
xen/common/libelf/README | 1
xen/common/libelf/libelf-dominfo.c | 420 ++++++++++++++++++++++++++++
xen/common/libelf/libelf-loader.c | 156 ++++++++++
xen/common/libelf/libelf-private.h | 51 +++
xen/common/libelf/libelf-relocate.c | 345 +++++++++++++++++++++++
xen/common/libelf/libelf-tools.c | 225 +++++++++++++++
xen/include/public/elfstructs.h | 527 ++++++++++++++++++++++++++++++++++++
xen/include/public/libelf.h | 238 ++++++++++++++++
xen/include/xen/elf.h | 490 ---------------------------------
13 files changed, 1972 insertions(+), 1014 deletions(-)
author Emmanuel Ackaouy <ack@xensource.com>
date Thu Jan 25 22:16:52 2007 +0000 (2007-01-25)
parents 89d4e80cd1b7
children 9be942ec0247
line source
1 AS = $(CROSS_COMPILE)as
2 LD = $(CROSS_COMPILE)ld
3 CC = $(CROSS_COMPILE)gcc
4 CPP = $(CROSS_COMPILE)gcc -E
5 AR = $(CROSS_COMPILE)ar
6 RANLIB = $(CROSS_COMPILE)ranlib
7 NM = $(CROSS_COMPILE)nm
8 STRIP = $(CROSS_COMPILE)strip
9 OBJCOPY = $(CROSS_COMPILE)objcopy
10 OBJDUMP = $(CROSS_COMPILE)objdump
12 MSGFMT = msgfmt
14 INSTALL = install
15 INSTALL_DIR = $(INSTALL) -d -m0755
16 INSTALL_DATA = $(INSTALL) -m0644
17 INSTALL_PROG = $(INSTALL) -m0755
19 LIB64DIR = lib64
21 SOCKET_LIBS =
22 CURSES_LIBS = -lncurses
23 SONAME_LDFLAG = -soname
24 SHLIB_CFLAGS = -shared
26 ifneq ($(debug),y)
27 # Optimisation flags are overridable
28 CFLAGS ?= -O2 -fomit-frame-pointer
29 else
30 # Less than -O1 produces bad code and large stack frames
31 CFLAGS ?= -O1 -fno-omit-frame-pointer
32 endif