From: Gary Bisson Date: Wed, 3 Oct 2018 10:24:42 +0000 (+0200) Subject: imx-vpu-hantro: fix build issue X-Git-Url: https://code.ossystems.io/gitweb?a=commitdiff_plain;h=387b285adc25aa244bfe90f4083320304af237c5;p=meta-freescale.git imx-vpu-hantro: fix build issue The source code uses LINUX_VERSION_CODE at many places which constraints the package to be built with a toolchain whose headers match the kernel. This is a far from ideal solution, especially if one wants to use a prebuilt toolchain (with unknown kernel header version). So change the CFLAGS to consider the kernel build folder so that the Linux version test actually matches the kernel built. Signed-off-by: Gary Bisson Signed-off-by: Otavio Salvador --- diff --git a/recipes-bsp/imx-vpu-hantro/imx-vpu-hantro/0002-Fix-version.h-inclusion-to-be-from-kernel-build-fold.patch b/recipes-bsp/imx-vpu-hantro/imx-vpu-hantro/0002-Fix-version.h-inclusion-to-be-from-kernel-build-fold.patch new file mode 100644 index 00000000..e9bf9257 --- /dev/null +++ b/recipes-bsp/imx-vpu-hantro/imx-vpu-hantro/0002-Fix-version.h-inclusion-to-be-from-kernel-build-fold.patch @@ -0,0 +1,44 @@ +From 1d7b7046c8f735e150e92aeace3fe6d0686b9bc9 Mon Sep 17 00:00:00 2001 +From: Gary Bisson +Date: Wed, 3 Oct 2018 10:52:29 +0200 +Subject: [PATCH] Fix version.h inclusion to be from kernel build folder + +Instead of relying on Toolchain headers which can be from newer kernel. + +Signed-off-by: Gary Bisson +--- + Makefile_G1G2 | 3 +++ + Makefile_H1 | 3 +++ + 2 files changed, 6 insertions(+) + +diff --git a/Makefile_G1G2 b/Makefile_G1G2 +index 29866a4..c473bcb 100755 +--- a/Makefile_G1G2 ++++ b/Makefile_G1G2 +@@ -16,6 +16,9 @@ INCLUDE_HEADERS += -I$(LINUX_KERNEL_ROOT)/include/uapi -I$(LINUX_KERNEL_ROOT)/in + # ION header location + INCLUDE_HEADERS += -I$(LINUX_KERNEL_ROOT)/drivers/staging/android/uapi + ++# LINUX_VERSION_CODE from kernel build folder instead of toolchain headers ++INCLUDE_HEADERS += -I$(LINUX_KERNEL_BUILD)/include/generated/uapi ++ + CFLAGS += -DDEC_MODULE_PATH=\"/dev/mxc_hantro\" -DUSE_FAKE_RFC_TABLE -DFIFO_DATATYPE=void* -DNDEBUG -DDOWN_SCALER \ + -DUSE_EXTERNAL_BUFFER -DUSE_FAST_EC -DUSE_VP9_EC -DGET_FREE_BUFFER_NON_BLOCK \ + -DDEC_X170_OUTPUT_FORMAT=0 -DDEC_X170_TIMEOUT_LENGTH=-1 -DENABLE_HEVC_SUPPORT \ +diff --git a/Makefile_H1 b/Makefile_H1 +index 56b4332..0be43ce 100755 +--- a/Makefile_H1 ++++ b/Makefile_H1 +@@ -23,6 +23,9 @@ ENV += -I$(SDKTARGETSYSROOT)/usr/imx/include + # ION header location + ENV += -I$(LINUX_KERNEL_ROOT)/drivers/staging/android/uapi + ++# LINUX_VERSION_CODE from kernel build folder instead of toolchain headers ++INCLUDE_HEADERS += -I$(LINUX_KERNEL_BUILD)/include/generated/uapi ++ + LIBENCNAME = libcodec_enc + LIBSENC = -L./ -lhantro_h1 -lpthread + +-- +2.19.0 + diff --git a/recipes-bsp/imx-vpu-hantro/imx-vpu-hantro_1.8.0.bb b/recipes-bsp/imx-vpu-hantro/imx-vpu-hantro_1.8.0.bb index 243f1f35..b5fc8468 100644 --- a/recipes-bsp/imx-vpu-hantro/imx-vpu-hantro_1.8.0.bb +++ b/recipes-bsp/imx-vpu-hantro/imx-vpu-hantro_1.8.0.bb @@ -12,6 +12,7 @@ PROVIDES = "virtual/imxvpu" SRC_URI = " \ ${FSL_MIRROR}/${PN}-${PV}.bin;fsl-eula=true \ file://0001-Fix-ion.h-header-inclusion-to-be-standard.patch \ + file://0002-Fix-version.h-inclusion-to-be-from-kernel-build-fold.patch \ " SRC_URI[md5sum] = "140796ddd6f1be47cffb7e5e2bfe0fb6" SRC_URI[sha256sum] = "c092a5b0f8897bae54154f58e47b6d2de033da01ee231a8cd779a51bbe962606" @@ -24,7 +25,9 @@ PLATFORM_mx8mm = "IMX8MM" PLATFORM_mx8mq = "IMX8MQ" do_compile () { - oe_runmake CROSS_COMPILE="${HOST_PREFIX}" LINUX_KERNEL_ROOT="${STAGING_KERNEL_DIR}" SDKTARGETSYSROOT="${STAGING_DIR_TARGET}" PLATFORM="${PLATFORM}" all + oe_runmake CROSS_COMPILE="${HOST_PREFIX}" LINUX_KERNEL_BUILD="${STAGING_KERNEL_BUILDDIR}" \ + LINUX_KERNEL_ROOT="${STAGING_KERNEL_DIR}" SDKTARGETSYSROOT="${STAGING_DIR_TARGET}" \ + PLATFORM="${PLATFORM}" all } do_install () {