Merged into master, thanks! Mathieu
----- On Jun 23, 2017, at 2:29 PM, Michael Jeanson mjean...@efficios.com wrote: > This file is now used for code which is common to all Kbuild files. > > Signed-off-by: Michael Jeanson <mjean...@efficios.com> > --- > Kbuild.common | 50 ++++++++++++++++++++++++++++++++++++++++++++++++ > Makefile | 2 +- > Makefile.ABI.workarounds | 50 ------------------------------------------------ > lib/Kbuild | 2 +- > probes/Kbuild | 2 +- > tests/Kbuild | 2 +- > 6 files changed, 54 insertions(+), 54 deletions(-) > create mode 100644 Kbuild.common > delete mode 100644 Makefile.ABI.workarounds > > diff --git a/Kbuild.common b/Kbuild.common > new file mode 100644 > index 0000000..2e6c4aa > --- /dev/null > +++ b/Kbuild.common > @@ -0,0 +1,50 @@ > +# Work-around for distro-specific public modules ABI breakages. > +# Some distributions break the public module instrumentation ABI > +# compared to upstream stable kernels without providing other mean than > +# the kernel EXTRAVERSION to figure it out. Translate this information > +# into a define visible from the C preprocessor. > + > +DEB_API_VERSION:=$(shell $(TOP_LTTNG_MODULES_DIR)/abi-debian-version.sh > $(CURDIR)) > + > +ifneq ($(DEB_API_VERSION), 0) > + ccflags-y += -DDEBIAN_API_VERSION=$(DEB_API_VERSION) > +endif > + > +RHEL_API_VERSION:=$(shell $(TOP_LTTNG_MODULES_DIR)/abi-rhel-version.sh > $(CURDIR)) > + > +ifneq ($(RHEL_API_VERSION), 0) > + ccflags-y += -DRHEL_API_VERSION=$(RHEL_API_VERSION) > +endif > + > +SLE_API_VERSION:=$(shell $(TOP_LTTNG_MODULES_DIR)/abi-sle-version.sh > $(CURDIR)) > + > +ifneq ($(SLE_API_VERSION), 0) > + ccflags-y += -DSLE_API_VERSION=$(SLE_API_VERSION) > +endif > + > +RT_PATCH_VERSION:=$(shell $(TOP_LTTNG_MODULES_DIR)/rt-patch-version.sh > $(CURDIR)) > + > +ifneq ($(RT_PATCH_VERSION), 0) > + ccflags-y += -DRT_PATCH_VERSION=$(RT_PATCH_VERSION) > +endif > + > +# Starting with kernel 4.12, the ftrace header was moved to private headers > +# and as such is not available when building against distro headers instead > +# of the full kernel sources. In the situation, define > LTTNG_FTRACE_MISSING_HEADER > +# so we can enable the compat code even if CONFIG_DYNAMIC_FTRACE is enabled. > +ifneq ($(CONFIG_DYNAMIC_FTRACE),) > + ftrace_dep = $(srctree)/kernel/trace/trace.h > + ftrace_dep_check = $(wildcard $(ftrace_dep)) > + have_ftrace_header = $(shell \ > + if [ $(VERSION) -ge 5 -o \( $(VERSION) -eq 4 -a $(PATCHLEVEL) -ge 12 \) > ] ; > then \ > + if [ -z "$(ftrace_dep_check)" ] ; then \ > + echo "no" ; \ > + exit ; \ > + fi; \ > + fi; \ > + echo "yes" ; \ > + ) > + ifeq ($(have_ftrace_header), no) > + ccflags-y += -DLTTNG_FTRACE_MISSING_HEADER > + endif > +endif > diff --git a/Makefile b/Makefile > index f65e463..2cd2df0 100644 > --- a/Makefile > +++ b/Makefile > @@ -29,7 +29,7 @@ ifneq ($(KERNELRELEASE),) > endif > endif > > - include $(TOP_LTTNG_MODULES_DIR)/Makefile.ABI.workarounds > + include $(TOP_LTTNG_MODULES_DIR)/Kbuild.common > > ccflags-y += -I$(TOP_LTTNG_MODULES_DIR) > > diff --git a/Makefile.ABI.workarounds b/Makefile.ABI.workarounds > deleted file mode 100644 > index 2e6c4aa..0000000 > --- a/Makefile.ABI.workarounds > +++ /dev/null > @@ -1,50 +0,0 @@ > -# Work-around for distro-specific public modules ABI breakages. > -# Some distributions break the public module instrumentation ABI > -# compared to upstream stable kernels without providing other mean than > -# the kernel EXTRAVERSION to figure it out. Translate this information > -# into a define visible from the C preprocessor. > - > -DEB_API_VERSION:=$(shell $(TOP_LTTNG_MODULES_DIR)/abi-debian-version.sh > $(CURDIR)) > - > -ifneq ($(DEB_API_VERSION), 0) > - ccflags-y += -DDEBIAN_API_VERSION=$(DEB_API_VERSION) > -endif > - > -RHEL_API_VERSION:=$(shell $(TOP_LTTNG_MODULES_DIR)/abi-rhel-version.sh > $(CURDIR)) > - > -ifneq ($(RHEL_API_VERSION), 0) > - ccflags-y += -DRHEL_API_VERSION=$(RHEL_API_VERSION) > -endif > - > -SLE_API_VERSION:=$(shell $(TOP_LTTNG_MODULES_DIR)/abi-sle-version.sh > $(CURDIR)) > - > -ifneq ($(SLE_API_VERSION), 0) > - ccflags-y += -DSLE_API_VERSION=$(SLE_API_VERSION) > -endif > - > -RT_PATCH_VERSION:=$(shell $(TOP_LTTNG_MODULES_DIR)/rt-patch-version.sh > $(CURDIR)) > - > -ifneq ($(RT_PATCH_VERSION), 0) > - ccflags-y += -DRT_PATCH_VERSION=$(RT_PATCH_VERSION) > -endif > - > -# Starting with kernel 4.12, the ftrace header was moved to private headers > -# and as such is not available when building against distro headers instead > -# of the full kernel sources. In the situation, define > LTTNG_FTRACE_MISSING_HEADER > -# so we can enable the compat code even if CONFIG_DYNAMIC_FTRACE is enabled. > -ifneq ($(CONFIG_DYNAMIC_FTRACE),) > - ftrace_dep = $(srctree)/kernel/trace/trace.h > - ftrace_dep_check = $(wildcard $(ftrace_dep)) > - have_ftrace_header = $(shell \ > - if [ $(VERSION) -ge 5 -o \( $(VERSION) -eq 4 -a $(PATCHLEVEL) -ge 12 \) > ] ; > then \ > - if [ -z "$(ftrace_dep_check)" ] ; then \ > - echo "no" ; \ > - exit ; \ > - fi; \ > - fi; \ > - echo "yes" ; \ > - ) > - ifeq ($(have_ftrace_header), no) > - ccflags-y += -DLTTNG_FTRACE_MISSING_HEADER > - endif > -endif > diff --git a/lib/Kbuild b/lib/Kbuild > index 9680720..5248d37 100644 > --- a/lib/Kbuild > +++ b/lib/Kbuild > @@ -1,6 +1,6 @@ > TOP_LTTNG_MODULES_DIR := $(shell dirname $(lastword $(MAKEFILE_LIST)))/.. > > -include $(TOP_LTTNG_MODULES_DIR)/Makefile.ABI.workarounds > +include $(TOP_LTTNG_MODULES_DIR)/Kbuild.common > > ccflags-y += -I$(TOP_LTTNG_MODULES_DIR) > > diff --git a/probes/Kbuild b/probes/Kbuild > index cc1c065..70a3d86 100644 > --- a/probes/Kbuild > +++ b/probes/Kbuild > @@ -1,6 +1,6 @@ > TOP_LTTNG_MODULES_DIR := $(shell dirname $(lastword $(MAKEFILE_LIST)))/.. > > -include $(TOP_LTTNG_MODULES_DIR)/Makefile.ABI.workarounds > +include $(TOP_LTTNG_MODULES_DIR)/Kbuild.common > > ccflags-y += -I$(TOP_LTTNG_MODULES_DIR) > > diff --git a/tests/Kbuild b/tests/Kbuild > index aabb8e2..0696c0a 100644 > --- a/tests/Kbuild > +++ b/tests/Kbuild > @@ -1,6 +1,6 @@ > TOP_LTTNG_MODULES_DIR := $(shell dirname $(lastword $(MAKEFILE_LIST)))/.. > > -include $(TOP_LTTNG_MODULES_DIR)/Makefile.ABI.workarounds > +include $(TOP_LTTNG_MODULES_DIR)/Kbuild.common > > ccflags-y += -I$(TOP_LTTNG_MODULES_DIR) > > -- > 2.7.4 -- Mathieu Desnoyers EfficiOS Inc. http://www.efficios.com _______________________________________________ lttng-dev mailing list lttng-dev@lists.lttng.org https://lists.lttng.org/cgi-bin/mailman/listinfo/lttng-dev