[lttng-dev] [PATCH lttng-modules 2/2] Rename Makefile.ABI.workarounds to Kbuild.common

Michael Jeanson mjeanson at efficios.com
Fri Jun 23 18:29:43 UTC 2017


This file is now used for code which is common to all Kbuild files.

Signed-off-by: Michael Jeanson <mjeanson at 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



More information about the lttng-dev mailing list