On 03/24/2015 07:22 PM, Michal Marek wrote: > Dne 24.3.2015 v 18:37 Jiri Slaby napsal(a): >> Oh, it's cut&paste, I see. This does not look correct though. The hack >> inclusive. Host progs are intended to be run on the host where the >> kernel is built. During the compilation or such (like x/menuconfig). >> Quite misleading naming if you are used to the autotools one. > > when cross compiling, we are a bit between a rock and a hard place with > the sample userspace programs: > - The target toolchain might not have libc support > - The host toolchain might be lacking recent kernel headers (therefore > the need to do make headers_install) > - It's not clean whether the samples are meant to be ran on the build > host or target. Exactly. I just checked in a cross-compiled source tree, and none of the compiled standalone executables from samples/ or Documentation/ are actually built for the target platform. Only the samples which come as kernel modules are. > There has been some work by Sam Ravnborg to introduce uapiprogs-y to for > sample userspace programs, but for now, please use hostprogs-y, > -Iusr/include and make each sample opt-in. Alright then. Does the attached patch fix your problem, Jiri? Thanks, Daniel
From 56309ab0717720fb086ec3209f1b1fa719072f61 Mon Sep 17 00:00:00 2001 From: Daniel Mack <daniel@xxxxxxxxxx> Date: Tue, 24 Mar 2015 19:41:56 +0100 Subject: [PATCH] kdbus: sample: build kdbus-workers conditionally Give the kdbus sample its own config switch and only build it if it's explicitly switched on. Reported-by: Jiri Slaby <jslaby@xxxxxxx> Signed-off-by: Daniel Mack <daniel@xxxxxxxxxx> --- samples/Kconfig | 7 +++++++ samples/kdbus/Makefile | 2 +- 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/samples/Kconfig b/samples/Kconfig index 224ebb4..a4c6b2f 100644 --- a/samples/Kconfig +++ b/samples/Kconfig @@ -55,6 +55,13 @@ config SAMPLE_KDB Build an example of how to dynamically add the hello command to the kdb shell. +config SAMPLE_KDBUS + bool "Build kdbus API example" + depends on KDBUS + help + Build an example of how the kdbus API can be used from + userspace. + config SAMPLE_RPMSG_CLIENT tristate "Build rpmsg client sample -- loadable modules only" depends on RPMSG && m diff --git a/samples/kdbus/Makefile b/samples/kdbus/Makefile index d009025..9e40c68 100644 --- a/samples/kdbus/Makefile +++ b/samples/kdbus/Makefile @@ -1,7 +1,7 @@ # kbuild trick to avoid linker error. Can be omitted if a module is built. obj- := dummy.o -hostprogs-y += kdbus-workers +hostprogs-$(CONFIG_SAMPLE_KDBUS) += kdbus-workers always := $(hostprogs-y) -- 2.3.3