Makefile: Add a rule to build core module on x86_64 only

core module is currently supported on x86_64. Trying to
build it on powerpc, triggers build failure:

make[3]: Entering directory '/root/kernel/linux'
  CC [M]  /root/upstream/kpatch/kmod/core/core.o
/root/upstream/kpatch/kmod/core/core.c:48:28: fatal error: asm/stacktrace.h: No such file or directory
 #include <asm/stacktrace.h>
                            ^
compilation terminated.
scripts/Makefile.build:294: recipe for target '/root/upstream/kpatch/kmod/core/core.o' failed
make[4]: *** [/root/upstream/kpatch/kmod/core/core.o] Error 1

Add a Makefile rule to build it, only on x86.

Signed-off-by: Josh Poimboeuf <jpoimboe@redhat.com>
Signed-off-by: Kamalesh Babulal <kamalesh@linux.vnet.ibm.com>
This commit is contained in:
Josh Poimboeuf 2017-06-09 01:16:33 -04:00 committed by Kamalesh Babulal
parent 135dcdb3d7
commit a0adebf861
1 changed files with 7 additions and 1 deletions

View File

@ -3,6 +3,8 @@ CC = gcc
INSTALL = /usr/bin/install INSTALL = /usr/bin/install
ARCH = $(shell uname -p)
PREFIX ?= /usr/local PREFIX ?= /usr/local
LIBDIR ?= lib LIBDIR ?= lib
LIBEXEC ?= libexec LIBEXEC ?= libexec
@ -13,7 +15,11 @@ LIBEXECDIR = $(DESTDIR)$(PREFIX)/$(LIBEXEC)/kpatch
DATADIR = $(DESTDIR)$(PREFIX)/share/kpatch DATADIR = $(DESTDIR)$(PREFIX)/share/kpatch
MANDIR = $(DESTDIR)$(PREFIX)/share/man/man1 MANDIR = $(DESTDIR)$(PREFIX)/share/man/man1
SYSTEMDDIR = $(DESTDIR)$(PREFIX)/lib/systemd/system SYSTEMDDIR = $(DESTDIR)$(PREFIX)/lib/systemd/system
BUILDMOD ?= yes
# The core module is only supported on x86_64
ifeq ($(ARCH),x86_64)
BUILDMOD ?= yes
endif
.PHONY: all install clean .PHONY: all install clean
.DEFAULT: all .DEFAULT: all