From 6eabfa967042e60221a66b4b2cb6f603336a2619 Mon Sep 17 00:00:00 2001 From: Kai Wang Date: Tue, 21 Jan 2014 20:42:15 +0000 Subject: Reapply revisions r237528, r237531 and r238741 which make libelf properly include sys/ headers from the source tree instead of the host. These patches are also applied to libdwarf since libdwarf requires the same sys/ headers as libelf. --- lib/libdwarf/Makefile | 13 +++++++++++++ 1 file changed, 13 insertions(+) (limited to 'lib/libdwarf') diff --git a/lib/libdwarf/Makefile b/lib/libdwarf/Makefile index 5366733c4c1d..aa4197fb1540 100644 --- a/lib/libdwarf/Makefile +++ b/lib/libdwarf/Makefile @@ -75,14 +75,27 @@ SRCS= \ INCS= dwarf.h libdwarf.h +# +# We need to link against the correct version of these files. One +# solution is to include ../../sys in the include path. This causes +# problems when a header file in sys depends on a file in another +# part of the tree, e.g. a machine dependent header. +# +SRCS+= sys/elf32.h sys/elf64.h sys/elf_common.h + GENSRCS= dwarf_pubnames.c dwarf_pubtypes.c dwarf_weaks.c \ dwarf_funcs.c dwarf_vars.c dwarf_types.c \ dwarf_pro_pubnames.c dwarf_pro_weaks.c \ dwarf_pro_funcs.c dwarf_pro_types.c \ dwarf_pro_vars.c CLEANFILES= ${GENSRCS} +CLEANDIRS= sys CFLAGS+= -I. -I${SRCDIR} -I${TOP}/common -I${TOP}/libelf +sys/elf32.h sys/elf64.h sys/elf_common.h: ${.CURDIR}/../../sys/${.TARGET} + mkdir -p ${.OBJDIR}/sys + ln -sf ${.CURDIR}/../../sys/${.TARGET} ${.TARGET} + LDADD+= -lelf DPADD+= ${LIBELF} -- cgit v1.2.3