[oe] [PATCH 2/8] openjpeg: cmake fixes to prepare update of poppler

Khem Raj raj.khem at gmail.com
Sat Dec 22 00:16:20 UTC 2018


Hi Andreas

We applied this patch but its causing regression for mutlilib builds
as reported here

https://github.com/openembedded/meta-openembedded/issues/103

Can you take a look

On Wed, Oct 3, 2018 at 12:25 PM Andreas Müller <schnitzeltony at gmail.com> wrote:
>
> * Move *,cmake from ${libdir}/cmake to ${libdir}/cmake/<name-and-version>
>   That is standard location cmake files are installed.
> * Do not export executables - they will not be found in dependant's sysroot
>
> Signed-off-by: Andreas Müller <schnitzeltony at gmail.com>
> ---
>  ...ke-files-are-installed-at-common-location.patch | 48 ++++++++++++++++++++++
>  ...cmake-to-export-binaries-they-don-t-make-.patch | 31 ++++++++++++++
>  .../recipes-graphics/openjpeg/openjpeg_2.3.0.bb    | 10 ++---
>  3 files changed, 84 insertions(+), 5 deletions(-)
>  create mode 100644 meta-oe/recipes-graphics/openjpeg/openjpeg/0001-Ensure-cmake-files-are-installed-at-common-location.patch
>  create mode 100644 meta-oe/recipes-graphics/openjpeg/openjpeg/0002-Do-not-ask-cmake-to-export-binaries-they-don-t-make-.patch
>
> diff --git a/meta-oe/recipes-graphics/openjpeg/openjpeg/0001-Ensure-cmake-files-are-installed-at-common-location.patch b/meta-oe/recipes-graphics/openjpeg/openjpeg/0001-Ensure-cmake-files-are-installed-at-common-location.patch
> new file mode 100644
> index 000000000..5c5fe64f2
> --- /dev/null
> +++ b/meta-oe/recipes-graphics/openjpeg/openjpeg/0001-Ensure-cmake-files-are-installed-at-common-location.patch
> @@ -0,0 +1,48 @@
> +From fe491c0919f5adc8d626cb98c5ec19d0b99dfe20 Mon Sep 17 00:00:00 2001
> +From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony at gmail.com>
> +Date: Thu, 27 Sep 2018 23:45:04 +0200
> +Subject: [PATCH] Ensure cmake files are installed at common location
> +MIME-Version: 1.0
> +Content-Type: text/plain; charset=UTF-8
> +Content-Transfer-Encoding: 8bit
> +
> +* Otherwise recent poppler is not able to find them
> +* Include path needs adjustment with this change
> +
> +Upstream-Status: Inappropriate [Configuration]
> +
> +Signed-off-by: Andreas Müller <schnitzeltony at gmail.com>
> +---
> + CMakeLists.txt                | 2 +-
> + cmake/OpenJPEGConfig.cmake.in | 2 +-
> + 2 files changed, 2 insertions(+), 2 deletions(-)
> +
> +diff --git a/CMakeLists.txt b/CMakeLists.txt
> +index ff70a06f..23d2fac4 100644
> +--- a/CMakeLists.txt
> ++++ b/CMakeLists.txt
> +@@ -150,7 +150,7 @@ if(NOT OPENJPEG_INSTALL_PACKAGE_DIR)
> +   # We could install *.cmake files in share/ however those files contains
> +   # hardcoded path to libraries on a multi-arch system (fedora/debian) those
> +   # path will be different (lib/i386-linux-gnu vs lib/x86_64-linux-gnu)
> +-  set(OPENJPEG_INSTALL_PACKAGE_DIR "${OPENJPEG_INSTALL_LIB_DIR}/${OPENJPEG_INSTALL_SUBDIR}")
> ++  set(OPENJPEG_INSTALL_PACKAGE_DIR "${OPENJPEG_INSTALL_LIB_DIR}/cmake/${OPENJPEG_INSTALL_SUBDIR}")
> + endif()
> +
> + if (APPLE)
> +diff --git a/cmake/OpenJPEGConfig.cmake.in b/cmake/OpenJPEGConfig.cmake.in
> +index b20294ca..6a2f4baf 100644
> +--- a/cmake/OpenJPEGConfig.cmake.in
> ++++ b/cmake/OpenJPEGConfig.cmake.in
> +@@ -26,7 +26,7 @@ get_filename_component(SELF_DIR "${CMAKE_CURRENT_LIST_FILE}" PATH)
> + if(EXISTS ${SELF_DIR}/OpenJPEGTargets.cmake)
> +   # This is an install tree
> +   include(${SELF_DIR}/OpenJPEGTargets.cmake)
> +-  get_filename_component(OPENJPEG_INCLUDE_ROOT "${SELF_DIR}/../../@OPENJPEG_INSTALL_INCLUDE_DIR@" ABSOLUTE)
> ++  get_filename_component(OPENJPEG_INCLUDE_ROOT "${SELF_DIR}/../../../@OPENJPEG_INSTALL_INCLUDE_DIR@" ABSOLUTE)
> +   set(OPENJPEG_INCLUDE_DIRS ${OPENJPEG_INCLUDE_ROOT})
> +
> + else()
> +--
> +2.14.4
> +
> diff --git a/meta-oe/recipes-graphics/openjpeg/openjpeg/0002-Do-not-ask-cmake-to-export-binaries-they-don-t-make-.patch b/meta-oe/recipes-graphics/openjpeg/openjpeg/0002-Do-not-ask-cmake-to-export-binaries-they-don-t-make-.patch
> new file mode 100644
> index 000000000..0ba13cf88
> --- /dev/null
> +++ b/meta-oe/recipes-graphics/openjpeg/openjpeg/0002-Do-not-ask-cmake-to-export-binaries-they-don-t-make-.patch
> @@ -0,0 +1,31 @@
> +From 4681de07e21f17aa28710d3a51fabe7da60463f9 Mon Sep 17 00:00:00 2001
> +From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony at gmail.com>
> +Date: Fri, 28 Sep 2018 00:38:50 +0200
> +Subject: [PATCH] Do not ask cmake to export binaries - they don't make it
> + dependants sysroots
> +MIME-Version: 1.0
> +Content-Type: text/plain; charset=UTF-8
> +Content-Transfer-Encoding: 8bit
> +
> +Upstream-Status: Inappropriate [OE-Specific]
> +
> +Signed-off-by: Andreas Müller <schnitzeltony at gmail.com>
> +---
> + src/bin/jp2/CMakeLists.txt | 1 -
> + 1 file changed, 1 deletion(-)
> +
> +diff --git a/src/bin/jp2/CMakeLists.txt b/src/bin/jp2/CMakeLists.txt
> +index 4324c36d..2c11fe02 100644
> +--- a/src/bin/jp2/CMakeLists.txt
> ++++ b/src/bin/jp2/CMakeLists.txt
> +@@ -66,7 +66,6 @@ foreach(exe opj_decompress opj_compress opj_dump)
> +   endif()
> +   # Install exe
> +   install(TARGETS ${exe}
> +-    EXPORT OpenJPEGTargets
> +     DESTINATION ${OPENJPEG_INSTALL_BIN_DIR} COMPONENT Applications
> +   )
> +   if(OPJ_USE_DSYMUTIL)
> +--
> +2.14.4
> +
> diff --git a/meta-oe/recipes-graphics/openjpeg/openjpeg_2.3.0.bb b/meta-oe/recipes-graphics/openjpeg/openjpeg_2.3.0.bb
> index d5d06206d..c50d55e4b 100644
> --- a/meta-oe/recipes-graphics/openjpeg/openjpeg_2.3.0.bb
> +++ b/meta-oe/recipes-graphics/openjpeg/openjpeg_2.3.0.bb
> @@ -5,12 +5,12 @@ LIC_FILES_CHKSUM = "file://LICENSE;md5=c648878b4840d7babaade1303e7f108c"
>
>  DEPENDS = "libpng tiff lcms zlib"
>
> -SRC_URI = "git://github.com/uclouvain/openjpeg.git"
> +SRC_URI = " \
> +    git://github.com/uclouvain/openjpeg.git \
> +    file://0001-Ensure-cmake-files-are-installed-at-common-location.patch \
> +    file://0002-Do-not-ask-cmake-to-export-binaries-they-don-t-make-.patch \
> +"
>  SRCREV = "081de4b15f54cb4482035b7bf5e3fb443e4bc84b"
>  S = "${WORKDIR}/git"
>
>  inherit cmake
> -
> -# standard path for *.cmake
> -EXTRA_OECMAKE += "-DOPENJPEG_INSTALL_PACKAGE_DIR=${baselib}/cmake \
> -                  -DOPENJPEG_INSTALL_LIB_DIR:PATH=${libdir}"
> --
> 2.14.4
>
> --
> _______________________________________________
> Openembedded-devel mailing list
> Openembedded-devel at lists.openembedded.org
> http://lists.openembedded.org/mailman/listinfo/openembedded-devel


More information about the Openembedded-devel mailing list