summaryrefslogtreecommitdiff
path: root/elfutils/libebl/Makefile.am
diff options
context:
space:
mode:
Diffstat (limited to 'elfutils/libebl/Makefile.am')
-rw-r--r--elfutils/libebl/Makefile.am31
1 files changed, 19 insertions, 12 deletions
diff --git a/elfutils/libebl/Makefile.am b/elfutils/libebl/Makefile.am
index 71514c85..3965185a 100644
--- a/elfutils/libebl/Makefile.am
+++ b/elfutils/libebl/Makefile.am
@@ -1,7 +1,6 @@
## Process this file with automake to create Makefile.in
-## Configure input file for elfutils.
##
-## Copyright (C) 2000, 2001, 2002, 2003, 2004 Red Hat, Inc.
+## Copyright (C) 2000, 2001, 2002, 2003, 2004, 2005 Red Hat, Inc.
##
## This program is Open Source software; you can redistribute it and/or
## modify it under the terms of the Open Software License version 1.0 as
@@ -15,11 +14,12 @@
##
DEFS = -D_GNU_SOURCE -DHAVE_CONFIG_H -DOBJDIR=\"$(shell pwd)\"
if MUDFLAP
-AM_CFLAGS = -Wall -Wshadow -fpic
+AM_CFLAGS = -fmudflap
else
-AM_CFLAGS = -Wall -Werror -Wshadow -fpic
+AM_CFLAGS =
endif
-AM_CFLAGS += -DLIBSTR=\"$$(basename $(libdir))\"
+AM_CFLAGS += -fpic -Wall -Wshadow -Werror -Wunused -Wextra -Wformat=2 \
+ -std=gnu99
INCLUDES = -I$(srcdir) -I$(top_srcdir)/libelf -I$(top_srcdir)/lib -I..
VERSION = 1
@@ -43,18 +43,13 @@ gen_SOURCES = eblopenbackend.c eblclosebackend.c eblstrtab.c \
eblobjecttypename.c eblsymbolbindingname.c \
eblbackendname.c eblshflagscombine.c eblwstrtab.c \
eblgstrtab.c eblosabiname.c eblmachineflagcheck.c \
- eblreloctypecheck.c eblrelocvaliduse.c ebldynamictagcheck.c \
- eblcorenotetypename.c eblobjnotetypename.c \
+ eblreloctypecheck.c eblrelocvaliduse.c eblrelocsimpletype.c \
+ ebldynamictagcheck.c eblcorenotetypename.c eblobjnotetypename.c \
eblcorenote.c eblobjnote.c ebldebugscnp.c \
eblgotpcreloccheck.c
libebl_a_SOURCES = $(gen_SOURCES)
-#
-# XXX Use --enable-new-dtags as soon as ld.so handles DT_RUNPATH when
-# using dlopen correctly.
-# -Wl,--rpath,\$$ORIGIN/elfutils \
-#
i386_SRCS = i386_init.c i386_destr.c i386_symbol.c i386_corenote.c
libebl_i386_pic_a_SOURCES =
am_libebl_i386_pic_a_OBJECTS = $(i386_SRCS:.c=.os)
@@ -67,11 +62,14 @@ libelf = ../libelf/libelf.so
libmudflap =
endif
+textrel_check = if readelf -d $@ | fgrep -q TEXTREL; then exit 1; fi
+
libebl_i386_so_SOURCES =
libebl_i386.so: libebl_i386_pic.a libebl_i386.map
$(CC) -shared -o $@ -Wl,--whole-archive,$<,--no-whole-archive \
-Wl,--version-script,$(srcdir)/libebl_i386.map \
-Wl,-z,defs $(libelf) $(libmudflap)
+ $(textrel_check)
sh_SRCS = sh_init.c sh_destr.c sh_symbol.c
@@ -83,6 +81,7 @@ libebl_sh.so: libebl_sh_pic.a libebl_sh.map
$(CC) -shared -o $@ -Wl,--whole-archive,$<,--no-whole-archive \
-Wl,--version-script,$(srcdir)/libebl_sh.map \
-Wl,-z,defs $(libmudflap)
+ $(textrel_check)
mips_SRCS = mips_init.c mips_destr.c mips_symbol.c
@@ -94,6 +93,7 @@ libebl_mips.so: libebl_mips_pic.a libebl_mips.map
$(CC) -shared -o $@ -Wl,--whole-archive,$<,--no-whole-archive \
-Wl,--version-script,$(srcdir)/libebl_mips.map \
-Wl,-z,defs $(libmudflap)
+ $(textrel_check)
x86_64_SRCS = x86_64_init.c x86_64_destr.c x86_64_symbol.c
@@ -105,6 +105,7 @@ libebl_x86_64.so: libebl_x86_64_pic.a libebl_x86_64.map
$(CC) -shared -o $@ -Wl,--whole-archive,$<,--no-whole-archive \
-Wl,--version-script,$(srcdir)/libebl_x86_64.map \
-Wl,-z,defs $(libelf) $(libmudflap)
+ $(textrel_check)
ia64_SRCS = ia64_init.c ia64_destr.c ia64_symbol.c
@@ -116,6 +117,7 @@ libebl_ia64.so: libebl_ia64_pic.a libebl_ia64.map
$(CC) -shared -o $@ -Wl,--whole-archive,$<,--no-whole-archive \
-Wl,--version-script,$(srcdir)/libebl_ia64.map \
-Wl,-z,defs $(libmudflap)
+ $(textrel_check)
alpha_SRCS = alpha_init.c alpha_destr.c alpha_symbol.c
@@ -127,6 +129,7 @@ libebl_alpha.so: libebl_alpha_pic.a libebl_alpha.map
$(CC) -shared -o $@ -Wl,--whole-archive,$<,--no-whole-archive \
-Wl,--version-script,$(srcdir)/libebl_alpha.map \
-Wl,-z,defs $(libmudflap)
+ $(textrel_check)
arm_SRCS = arm_init.c arm_destr.c arm_symbol.c
@@ -138,6 +141,7 @@ libebl_arm.so: libebl_arm_pic.a libebl_arm.map
$(CC) -shared -o $@ -Wl,--whole-archive,$<,--no-whole-archive \
-Wl,--version-script,$(srcdir)/libebl_arm.map \
-Wl,-z,defs $(libmudflap)
+ $(textrel_check)
sparc_SRCS = sparc_init.c sparc_destr.c sparc_symbol.c
@@ -149,6 +153,7 @@ libebl_sparc.so: libebl_sparc_pic.a libebl_sparc.map
$(CC) -shared -o $@ -Wl,--whole-archive,$<,--no-whole-archive \
-Wl,--version-script,$(srcdir)/libebl_sparc.map \
-Wl,-z,defs $(libmudflap)
+ $(textrel_check)
ppc_SRCS = ppc_init.c ppc_destr.c ppc_symbol.c
@@ -160,6 +165,7 @@ libebl_ppc.so: libebl_ppc_pic.a libebl_ppc.map
$(CC) -shared -o $@ -Wl,--whole-archive,$<,--no-whole-archive \
-Wl,--version-script,$(srcdir)/libebl_ppc.map \
-Wl,-z,defs $(libelf) $(libmudflap)
+ $(textrel_check)
ppc64_SRCS = ppc64_init.c ppc64_destr.c ppc64_symbol.c
@@ -171,6 +177,7 @@ libebl_ppc64.so: libebl_ppc64_pic.a libebl_ppc64.map
$(CC) -shared -o $@ -Wl,--whole-archive,$<,--no-whole-archive \
-Wl,--version-script,$(srcdir)/libebl_ppc64.map \
-Wl,-z,defs $(libelf) $(libmudflap)
+ $(textrel_check)
%.os: %.c %.o