Drop support for kernels < 4.4 from scsi instrumentation
[lttng-modules.git] / Makefile
1 # SPDX-License-Identifier: (GPL-2.0-only or LGPL-2.1-only)
2
3 ifneq ($(KERNELRELEASE),)
4
5 # This part of the Makefile is used when called by the kernel build system
6 # and defines the modules to be built.
7
8 obj-$(CONFIG_LTTNG) += src/
9
10 else # KERNELRELEASE
11
12 # This part of the Makefile is used when the 'make' command is runned in the
13 # base directory of the lttng-modules sources. It sets some environment and
14 # calls the kernel build system to build the actual modules.
15
16 KERNELDIR ?= /lib/modules/$(shell uname -r)/build
17 PWD := $(shell pwd)
18
19 # Experimental bitwise enum defaults to disabled.
20 CONFIG_LTTNG_EXPERIMENTAL_BITWISE_ENUM ?= n
21
22 # Emulate Kconfig behavior of setting defines for config options.
23 LKCPPFLAGS = $(KCPPFLAGS)
24 ifeq ($(CONFIG_LTTNG_EXPERIMENTAL_BITWISE_ENUM),y)
25 LKCPPFLAGS += -DCONFIG_LTTNG_EXPERIMENTAL_BITWISE_ENUM=y
26 endif
27
28 default: modules
29
30 modules:
31 $(MAKE) -C $(KERNELDIR) M=$(PWD)/src \
32 CONFIG_LTTNG=m CONFIG_LTTNG_CLOCK_PLUGIN_TEST=m \
33 KCPPFLAGS='$(LKCPPFLAGS)' \
34 modules
35
36 syscalls_extractor:
37 $(MAKE) -C $(KERNELDIR) M=$(PWD)/src \
38 CONFIG_LTTNG_SYSCALLS_EXTRACTOR=m \
39 CONFIG_LTTNG=m CONFIG_LTTNG_CLOCK_PLUGIN_TEST=m \
40 KCPPFLAGS='$(LKCPPFLAGS)' \
41 modules
42
43 modules_install:
44 $(MAKE) -C $(KERNELDIR) M=$(PWD)/src \
45 CONFIG_LTTNG=m CONFIG_LTTNG_CLOCK_PLUGIN_TEST=m \
46 KCPPFLAGS='$(LKCPPFLAGS)' \
47 modules_install
48
49 clean:
50 $(MAKE) -C $(KERNELDIR) M=$(PWD)/src clean
51
52 # The following targets are used for development and debugging. They are not
53 # part of the build system.
54 %.i: %.c
55 $(MAKE) -C $(KERNELDIR) M=$(PWD) \
56 CONFIG_LTTNG=m CONFIG_LTTNG_CLOCK_PLUGIN_TEST=m \
57 KCPPFLAGS='$(LKCPPFLAGS)' \
58 $@
59
60 %.o: %.c
61 $(MAKE) -C $(KERNELDIR) M=$(PWD) \
62 CONFIG_LTTNG=m CONFIG_LTTNG_CLOCK_PLUGIN_TEST=m \
63 KCPPFLAGS='$(LKCPPFLAGS)' \
64 $@
65
66 endif # KERNELRELEASE
This page took 0.029875 seconds and 4 git commands to generate.