X-Git-Url: http://git.liburcu.org/?p=lttng-modules.git;a=blobdiff_plain;f=src%2FKbuild;h=a48e1cb13196dccc877c34b68f536c17ecd8d551;hp=e7593fd8db10d08c31d6e7675739f6680388730a;hb=HEAD;hpb=7633c7736aefbf2ac3c308021d7aa2bb3229ae94 diff --git a/src/Kbuild b/src/Kbuild index e7593fd8..a341fd9b 100644 --- a/src/Kbuild +++ b/src/Kbuild @@ -1,8 +1,28 @@ # SPDX-License-Identifier: (GPL-2.0-only or LGPL-2.1-only) +ifdef CONFIG_LOCALVERSION # Check if dot-config is included. + ifeq ($(CONFIG_TRACEPOINTS),) + $(error The option CONFIG_TRACEPOINTS needs to be enabled in your kernel configuration) + endif # CONFIG_TRACEPOINTS +endif # ifdef CONFIG_LOCALVERSION + TOP_LTTNG_MODULES_DIR := $(shell dirname $(lastword $(MAKEFILE_LIST)))/.. -include $(TOP_LTTNG_MODULES_DIR)/Kbuild.common +lttng_check_linux_version = $(shell pwd)/include/linux/version.h +lttng_check_generated_linux_version = $(shell pwd)/include/generated/uapi/linux/version.h + +# +# Check for stale version.h, which can be a leftover from an old Linux +# kernel tree moved to a newer kernel version, only pruned by make +# distclean. +# +ifneq ($(wildcard $(lttng_check_linux_version)),) + ifneq ($(wildcard $(lttng_check_generated_linux_version)),) + $(error Duplicate version.h files found in $(lttng_check_linux_version) and $(lttng_check_generated_linux_version). Consider running make distclean on your kernel, or removing the stale $(lttng_check_linux_version) file) + endif +endif + +include $(TOP_LTTNG_MODULES_DIR)/src/Kbuild.common ccflags-y += -I$(TOP_LTTNG_MODULES_DIR)/include @@ -15,7 +35,7 @@ obj-$(CONFIG_LTTNG) += lttng-ring-buffer-metadata-mmap-client.o obj-$(CONFIG_LTTNG) += lttng-ring-buffer-event-notifier-client.o obj-$(CONFIG_LTTNG) += lttng-counter-client-percpu-32-modular.o -ifneq ($CONFIG_64BIT),) +ifneq ($(CONFIG_64BIT),) obj-$(CONFIG_LTTNG) += lttng-counter-client-percpu-64-modular.o endif # CONFIG_64BIT @@ -64,12 +84,15 @@ lttng-wrapper-objs := wrapper/page_alloc.o \ wrapper/trace-clock.o \ wrapper/kallsyms.o \ wrapper/irqdesc.o \ - wrapper/fdtable.o \ - wrapper/genhd.o \ lttng-wrapper-impl.o ifneq ($(CONFIG_HAVE_SYSCALL_TRACEPOINTS),) lttng-tracer-objs += lttng-syscalls.o + lttng-tracer-objs += lttng-syscalls-entry-table.o + lttng-tracer-objs += lttng-syscalls-entry-compat-table.o + lttng-tracer-objs += lttng-syscalls-exit-table.o + lttng-tracer-objs += lttng-syscalls-exit-compat-table.o + lttng-tracer-objs += lttng-syscalls-enum.o endif # CONFIG_HAVE_SYSCALL_TRACEPOINTS ifneq ($(CONFIG_PERF_EVENTS),) @@ -85,10 +108,7 @@ ifneq ($(CONFIG_PREEMPT),) lttng-tracer-objs += lttng-context-preemptible.o endif -lttng-tracer-objs += $(shell \ - if [ $(VERSION) -ge 4 \ - -o \( $(VERSION) -eq 3 -a $(PATCHLEVEL) -ge 15 \) ] ; then \ - echo "lttng-tracepoint.o" ; fi;) +lttng-tracer-objs += lttng-tracepoint.o lttng-tracer-objs += lttng-context-cgroup-ns.o @@ -125,3 +145,8 @@ lttng-statedump-objs := lttng-statedump-impl.o obj-$(CONFIG_LTTNG) += probes/ obj-$(CONFIG_LTTNG) += lib/ +obj-$(CONFIG_LTTNG) += tests/ + +obj-$(CONFIG_LTTNG_SYSCALLS_EXTRACTOR) += lttng-syscalls-extractor.o + +# vim:syntax=make