1 # SPDX-License-Identifier: (GPL-2.0-only or LGPL-2.1-only)
3 ifneq ($(KERNELRELEASE
),)
5 # This part of the Makefile is used when called by the kernel build system
6 # and defines the modules to be built.
8 obj-
$(CONFIG_LTTNG
) += src
/
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.
16 KERNELDIR ?
= /lib
/modules
/$(shell uname
-r
)/build
19 # Experimental bitwise enum defaults to disabled.
20 CONFIG_LTTNG_EXPERIMENTAL_BITWISE_ENUM ?
= n
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
31 $(MAKE
) -C
$(KERNELDIR
) M
=$(PWD
)/src \
32 CONFIG_LTTNG
=m CONFIG_LTTNG_CLOCK_PLUGIN_TEST
=m \
33 KCPPFLAGS
='$(LKCPPFLAGS)' \
37 $(MAKE
) -C
$(KERNELDIR
) M
=$(PWD
)/src \
38 CONFIG_LTTNG
=m CONFIG_LTTNG_CLOCK_PLUGIN_TEST
=m \
39 KCPPFLAGS
='$(LKCPPFLAGS)' \
43 $(MAKE
) -C
$(KERNELDIR
) M
=$(PWD
)/src
clean
45 # The following targets are used for development and debugging. They are not
46 # part of the build system.
48 $(MAKE
) -C
$(KERNELDIR
) M
=$(PWD
) \
49 CONFIG_LTTNG
=m CONFIG_LTTNG_CLOCK_PLUGIN_TEST
=m \
50 KCPPFLAGS
='$(LKCPPFLAGS)' \
54 $(MAKE
) -C
$(KERNELDIR
) M
=$(PWD
) \
55 CONFIG_LTTNG
=m CONFIG_LTTNG_CLOCK_PLUGIN_TEST
=m \
56 KCPPFLAGS
='$(LKCPPFLAGS)' \