samples: watch_queue: build sample program for target architecture

This userspace program includes UAPI headers exported to usr/include/.
'make headers' always works for the target architecture (i.e. the same
architecture as the kernel), so the sample program should be built for
the target as well. Kbuild now supports 'userprogs' for that.

I also guarded the CONFIG option by 'depends on CC_CAN_LINK' because
$(CC) may not provide libc.

Signed-off-by: Masahiro Yamada <masahiroy@kernel.org>
This commit is contained in:
Masahiro Yamada 2020-06-17 11:08:38 +09:00
parent 2c6d9636ad
commit 214377e9b7
2 changed files with 5 additions and 7 deletions

View File

@ -211,7 +211,7 @@ config SAMPLE_WATCHDOG
config SAMPLE_WATCH_QUEUE
bool "Build example /dev/watch_queue notification consumer"
depends on HEADERS_INSTALL
depends on CC_CAN_LINK && HEADERS_INSTALL
help
Build example userspace program to use the new mount_notify(),
sb_notify() syscalls and the KEYCTL_WATCH_KEY keyctl() function.

View File

@ -1,7 +1,5 @@
# List of programs to build
hostprogs := watch_test
# SPDX-License-Identifier: GPL-2.0-only
userprogs := watch_test
always-y := $(userprogs)
# Tell kbuild to always build the programs
always-y := $(hostprogs)
HOSTCFLAGS_watch_test.o += -I$(objtree)/usr/include
userccflags += -I usr/include