Re: [PATCH 2/4] trace-cmd: No automagic dependency on udis86

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Patrick,

Thanks for sending these. Some questions below.

On Fri, 19 Jul 2019 20:03:42 -0700
Patrick McLean <chutzpah@xxxxxxxxxx> wrote:

> From: Patrick McLean <patrick.mclean@xxxxxxxx>
> 
> Currently if udis86 is detected on the system, trace-cmd automatically
> uses it. This is generally a problem for packagers since if the build
> machine happens to have udis86, now there is a dependency on it that may
> or may not be tracked.
> 
> This adds a NO_UDIS86 variable that can be set by the packager to
> disable using udis86 completely.
> 
> Signed-off-by: Patrick McLean <patrick.mclean@xxxxxxxx>
> ---
>  Makefile | 8 +++++++-
>  1 file changed, 7 insertions(+), 1 deletion(-)
> 
> diff --git a/Makefile b/Makefile
> index 3579f27..6b85e21 100644
> --- a/Makefile
> +++ b/Makefile
> @@ -136,8 +136,13 @@ export NO_PYTHON
>  test-build = $(if $(shell sh -c 'echo "$(1)" | \
>  	$(CC) -o /dev/null -c -x c - > /dev/null 2>&1 && echo y'), $2)
>  
> +ifndef NO_UDIS86
>  # have udis86 disassembler library?
> -udis86-flags := $(call test-build,\#include <udis86.h>,-DHAVE_UDIS86 -ludis86)
> +udis86-flags := -DHAVE_UDIS86
> +udis86-ldflags := -ludis86

Can we keep the test here? If NO_UDIS86 is not defined. That is, if you
compile without this define, this change assumes you have it.

It's fine to force not having it, but we shouldn't force having it if
we don't.


> +else
> +udis86-flags := -UHAVE_UDIS86

I'm not sure this is needed, We shouldn't have anything defining
HAVE_UDIS86.

-- Steve


> +endif # NO_UDIS86
>  
>  define BLK_TC_FLUSH_SOURCE
>  #include <linux/blktrace_api.h>
> @@ -237,6 +242,7 @@ endif
>  # Append required CFLAGS
>  override CFLAGS += $(INCLUDES) $(PLUGIN_DIR_SQ) $(VAR_DIR)
>  override CFLAGS += $(udis86-flags) $(blk-flags)
> +override LDFLAGS += $(udis86-ldflags)
>  
>  CMD_TARGETS = trace-cmd $(BUILD_PYTHON)
>  




[Index of Archives]     [Linux USB Development]     [Linux USB Development]     [Linux Audio Users]     [Yosemite Hiking]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux