1# $FreeBSD: head/gnu/usr.bin/binutils/libbfd/Makefile.arm 162302 2006-09-14 07:48:16Z imp $ |
2 3.if defined(TARGET_BIG_ENDIAN) 4DEFAULT_VECTOR= bfd_elf32_bigarm_vec 5.else 6DEFAULT_VECTOR= bfd_elf32_littlearm_vec 7.endif 8 9SRCS+= cpu-arm.c \ |
10 elf32.c \ |
11 elf32-arm-fbsd.c \ |
12 elf32-gen.c \ 13 elf32-target.h \ 14 elflink.c 15 16VECS+= ${DEFAULT_VECTOR} 17.if defined(TARGET_BIG_ENDIAN) 18VECS+= bfd_elf32_littlearm_vec 19.else 20VECS+= bfd_elf32_bigarm_vec 21.endif 22 |
23CFLAGS+= -DDEFAULT_VECTOR=${DEFAULT_VECTOR} 24 |
25CLEANFILES+= elf32-arm-fbsd.c 26 27# XXX: We should really add the FreeBSD case in elf32_arm_nabi_grok_prstatus 28# instead of defining our own elf32_fbsd_arm_grok_prstatus. 29# 30elf32-arm-fbsd.c: elfarm-nabi.c 31 cat ${.ALLSRC} | sed \ 32 -e s/ELFOSABI_ARM/ELFOSABI_FREEBSD/g \ |
33 -e "s/\(.*#define.*\)elf32_arm_nabi_grok_prstatus/\1elf32_fbsd_arm_grok_prstatus/" \ |
34 -e s/"#include.*elf32-arm.h.*//" >${.TARGET} |
35 echo ' \ |
36 static bfd_boolean \ 37 elf32_fbsd_arm_grok_prstatus(bfd *abfd, Elf_Internal_Note *note) \ 38 { size_t raw_size =68 ; int offset = 28; \ 39 if (note->descsz != 96) return (FALSE); \ 40 if (elf_tdata(abfd)->core_signal == 0) \ 41 elf_tdata (abfd)->core_signal = ((int *)(note->descdata))[5]; \ 42 elf_tdata (abfd)->core_pid = ((int *)(note->descdata))[6]; \ 43 /* Make a ".reg/999" section. */ \ 44 return _bfd_elfcore_make_pseudosection (abfd, ".reg",raw_size, \ 45 note->descpos + offset); \ 46 }' >> ${.TARGET} 47 echo '#include "elf32-arm.h"' >> ${.TARGET} |