1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
|
From c3ada6bf49e6fcf7bc49e5bf09754f384838ca6a Mon Sep 17 00:00:00 2001
From: Denys Dmytriyenko <denys@ti.com>
Date: Mon, 27 Jul 2015 11:51:52 -0400
Subject: [PATCH] Add kernel build dir
We build kernel outside of the source directory and the generated version.h
file ends up being in a separate directory from the rest of kernel headers.
Use another variable to point to the kernel build artifacts.
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
---
configure.ac | 6 ++++++
ipc-linux.mak | 3 +++
linux/src/mm/Makefile.am | 2 +-
packages/ti/ipc/mm/MmRpc.c | 4 ++++
4 files changed, 14 insertions(+), 1 deletion(-)
diff --git a/configure.ac b/configure.ac
index 4d4a559..84ac78b 100644
--- a/configure.ac
+++ b/configure.ac
@@ -71,6 +71,7 @@ AC_SUBST([AM_LDFLAGS])
AC_ARG_VAR(PLATFORM, Platform to build. Options are: 'OMAPL138' 'OMAP54XX' '66AK2E' 'TCI6630' 'TCI6636' 'TCI6638' '66AK2G' 'DRA7XX' and 'AM65XX'. If not defined all platforms will be built.)
AC_ARG_VAR(CMEM_INSTALL_DIR, Installation path directory to the CMEM libraries)
AC_ARG_VAR(KERNEL_INSTALL_DIR, Installation path to the Linux kernel.)
+AC_ARG_VAR(KERNEL_BUILD_DIR, Path to the Linux kernel build artifacts.)
AC_ARG_VAR(AF_RPMSG, Address Family used by the RPMSG driver)
AC_ARG_VAR(DRM_PREFIX, Installation location to the DRM library.)
@@ -113,6 +114,7 @@ AS_IF([test "x$PLATFORM" = "x"], [CMEM_INSTALL_DIR=])
AC_SUBST([PLATFORM])
AC_SUBST([CMEM_INSTALL_DIR])
AC_SUBST([KERNEL_INSTALL_DIR])
+AC_SUBST([KERNEL_BUILD_DIR])
AC_SUBST([AF_RPMSG])
AC_SUBST([DRM_PREFIX])
@@ -130,6 +132,7 @@ AM_CONDITIONAL([AM65XX], [test "x$PLATFORM" = "xAM65XX"])
AM_CONDITIONAL([CMEM], [test "x$CMEM_INSTALL_DIR" != "x"])
AM_CONDITIONAL([KDIR], [test "x$KERNEL_INSTALL_DIR" != "x"])
AM_CONDITIONAL([KERNEL_INSTALL_DIR], [test -n "$KERNEL_INSTALL_DIR"])
+AM_CONDITIONAL([KERNEL_BUILD_DIR], [test -n "$KERNEL_BUILD_DIR"])
AM_CONDITIONAL([DRM], [test "x$DRM_PREFIX" != "x"])
AM_CONDITIONAL([AF_RPMSG], [test -n "$AF_RPMSG"])
@@ -160,6 +163,9 @@ You have configured to build for the '${PLATFORM}' platform
Your KERNEL installation directory is set to:
'${KERNEL_INSTALL_DIR}'
+Your KERNEL build artifacts directory is set to:
+ '${KERNEL_BUILD_DIR}'
+
Your DRM installation directory is set to:
'${DRM_PREFIX}'
diff --git a/ipc-linux.mak b/ipc-linux.mak
index 58a9cea..4e543ff 100644
--- a/ipc-linux.mak
+++ b/ipc-linux.mak
@@ -60,6 +60,7 @@ config:
PLATFORM=$(PLATFORM) \
CMEM_INSTALL_DIR=$(CMEM_INSTALL_DIR) \
KERNEL_INSTALL_DIR=$(KERNEL_INSTALL_DIR) \
+ KERNEL_BUILD_DIR=$(KERNEL_BUILD_DIR) \
DRM_PREFIX=$(DRM_PREFIX) \
AF_RPMSG=$(AF_RPMSG)
@@ -72,6 +73,7 @@ config-static:
PLATFORM=$(PLATFORM) \
CMEM_INSTALL_DIR=$(CMEM_INSTALL_DIR) \
KERNEL_INSTALL_DIR=$(KERNEL_INSTALL_DIR) \
+ KERNEL_BUILD_DIR=$(KERNEL_BUILD_DIR) \
DRM_PREFIX=$(DRM_PREFIX) \
AF_RPMSG=$(AF_RPMSG)
@@ -84,5 +86,6 @@ config-shared:
PLATFORM=$(PLATFORM) \
CMEM_INSTALL_DIR=$(CMEM_INSTALL_DIR) \
KERNEL_INSTALL_DIR=$(KERNEL_INSTALL_DIR) \
+ KERNEL_BUILD_DIR=$(KERNEL_BUILD_DIR) \
DRM_PREFIX=$(DRM_PREFIX) \
AF_RPMSG=$(AF_RPMSG)
diff --git a/linux/src/mm/Makefile.am b/linux/src/mm/Makefile.am
index 59aa312..8fb51a3 100644
--- a/linux/src/mm/Makefile.am
+++ b/linux/src/mm/Makefile.am
@@ -32,7 +32,7 @@
##
# additional include paths necessary to compile the library
-AM_CFLAGS = -Wall @AM_CFLAGS@ -DKERNEL_INSTALL_DIR="$(KERNEL_INSTALL_DIR)"
+AM_CFLAGS = -Wall @AM_CFLAGS@ -DKERNEL_INSTALL_DIR="$(KERNEL_INSTALL_DIR)" -DKERNEL_BUILD_DIR="$(KERNEL_BUILD_DIR)"
###############################################################################
# THE LIBRARIES TO BUILD
diff --git a/packages/ti/ipc/mm/MmRpc.c b/packages/ti/ipc/mm/MmRpc.c
index 2df7420..797e100 100644
--- a/packages/ti/ipc/mm/MmRpc.c
+++ b/packages/ti/ipc/mm/MmRpc.c
@@ -56,7 +56,11 @@
#endif
#define linux_version_include(kd) <kd/include/generated/uapi/linux/version.h>
+#if defined(KERNEL_BUILD_DIR)
+#include linux_version_include(KERNEL_BUILD_DIR)
+#else
#include linux_version_include(KERNEL_INSTALL_DIR)
+#endif
#if LINUX_VERSION_CODE < KERNEL_VERSION(3,14,0)
#define linux_include(kd,m) <kd/include/linux/m.h>
|