From 1609679b1ef3611c71a08900c2f6b94bb97d454d Mon Sep 17 00:00:00 2001 From: Mark Wielaard Date: Tue, 18 Jul 2017 14:12:36 +0200 Subject: backends: Don't depend on linux/bpf.h to compile bpf disassembler. We only need a few constants and one structure definition from linux/bpf. Just define those in a local lib/bpf.h file. This makes sure the bpf disassembler is always build and included even when elfutils is build on older GNU/Linux systems (and even on other platforms). Signed-off-by: Mark Wielaard --- libcpu/ChangeLog | 6 ++++++ libcpu/Makefile.am | 2 -- libcpu/bpf_disasm.c | 7 +------ 3 files changed, 7 insertions(+), 8 deletions(-) (limited to 'libcpu') diff --git a/libcpu/ChangeLog b/libcpu/ChangeLog index 22bec9b3..28b220fc 100644 --- a/libcpu/ChangeLog +++ b/libcpu/ChangeLog @@ -1,3 +1,9 @@ +2017-07-18 Mark Wielaard + + * Makefile.am: Don't check HAVE_LINUX_BPF_H, just define libcpu_bpf. + * bpf_disasm.c: Include bpf.h instead of linux/bpf.h. Don't define + BPF_PSEUDO_MAP_FD. + 2017-04-20 Ulf Hermann * Makefile.am: Add EXEEXT to gendis. diff --git a/libcpu/Makefile.am b/libcpu/Makefile.am index 31fc906b..94de56ef 100644 --- a/libcpu/Makefile.am +++ b/libcpu/Makefile.am @@ -45,11 +45,9 @@ i386_gendis_SOURCES = i386_gendis.c i386_lex.l i386_parse.y i386_disasm.o: i386.mnemonics $(srcdir)/i386_dis.h x86_64_disasm.o: x86_64.mnemonics $(srcdir)/x86_64_dis.h -if HAVE_LINUX_BPF_H noinst_LIBRARIES += libcpu_bpf.a libcpu_bpf_a_SOURCES = bpf_disasm.c libcpu_bpf_a_CFLAGS = $(AM_CFLAGS) -Wno-format-nonliteral -endif %_defs: $(srcdir)/defs/i386 $(AM_V_GEN)m4 -D$* -DDISASSEMBLER $< > $@T diff --git a/libcpu/bpf_disasm.c b/libcpu/bpf_disasm.c index e4bbae4a..054aba2b 100644 --- a/libcpu/bpf_disasm.c +++ b/libcpu/bpf_disasm.c @@ -35,16 +35,11 @@ #include #include #include -#include +#include "bpf.h" #include "../libelf/common.h" #include "../libebl/libeblP.h" -/* BPF_PSEUDO_MAP_FD was only introduced in linux 3.20. */ -#ifndef BPF_PSEUDO_MAP_FD - #define BPF_PSEUDO_MAP_FD 1 -#endif - static const char class_string[8][8] = { [BPF_LD] = "ld", [BPF_LDX] = "ldx", -- cgit v1.2.1