X-Git-Url: https://git.liburcu.org/?a=blobdiff_plain;f=src%2FKbuild;h=7137874fa4c7a0bf0a7ce899ff97a2c340f91aa8;hb=HEAD;hp=bb149ffac44e9a1655356afd9ffe76021c2d8fba;hpb=250c663f720a611b8360fbc3d766628dd71e3fb5;p=lttng-modules.git diff --git a/src/Kbuild b/src/Kbuild index bb149ffa..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 @@ -13,13 +33,20 @@ obj-$(CONFIG_LTTNG) += lttng-ring-buffer-client-mmap-discard.o obj-$(CONFIG_LTTNG) += lttng-ring-buffer-client-mmap-overwrite.o 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),) + obj-$(CONFIG_LTTNG) += lttng-counter-client-percpu-64-modular.o +endif # CONFIG_64BIT + obj-$(CONFIG_LTTNG) += lttng-clock.o obj-$(CONFIG_LTTNG) += lttng-tracer.o obj-$(CONFIG_LTTNG) += lttng-wrapper.o -lttng-tracer-objs := lttng-events.o lttng-abi.o lttng-string-utils.o \ +lttng-tracer-objs := lib/msgpack/msgpack.o \ + lttng-events.o lttng-abi.o lttng-string-utils.o \ lttng-probes.o lttng-context.o \ lttng-context-pid.o lttng-context-procname.o \ lttng-context-prio.o lttng-context-nice.o \ @@ -40,26 +67,32 @@ lttng-tracer-objs := lttng-events.o lttng-abi.o lttng-string-utils.o \ lttng-context-vsgid.o \ lttng-context-interruptible.o \ lttng-context-need-reschedule.o \ - lttng-context-callstack.o lttng-calibrate.o \ + lttng-calibrate.o \ lttng-context-hostname.o \ + lttng-context-callstack.o \ probes/lttng.o \ lttng-tracker-id.o \ - lttng-filter.o lttng-filter-interpreter.o \ - lttng-filter-specialize.o \ - lttng-filter-validator.o \ + lttng-bytecode.o lttng-bytecode-interpreter.o \ + lttng-bytecode-specialize.o \ + lttng-bytecode-validator.o \ probes/lttng-probe-user.o \ lttng-tp-mempool.o \ + lttng-event-notifier-notification.o lttng-wrapper-objs := wrapper/page_alloc.o \ wrapper/random.o \ wrapper/trace-clock.o \ wrapper/kallsyms.o \ wrapper/irqdesc.o \ - wrapper/fdtable.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),) @@ -75,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 @@ -115,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