summaryrefslogtreecommitdiffstats
path: root/meta-oe/recipes-graphics
diff options
context:
space:
mode:
authorMarek Vasut <marex@denx.de>2024-03-14 03:54:44 +0100
committerKhem Raj <raj.khem@gmail.com>2024-03-17 13:10:09 -0700
commit4b09b8f12fb62e806968a1805bc1b4418b77f0ef (patch)
tree68dbc20e479cf5ad9553ee138abf0a85f10396e5 /meta-oe/recipes-graphics
parent8186418f5b997c4d38800f952cb966677470c32b (diff)
downloadmeta-openembedded-4b09b8f12fb62e806968a1805bc1b4418b77f0ef.tar.gz
lvgl: Generate proper shared libraries with version suffix
Add missing version suffix to shared libraries. Currently the filename of generated shared libraries is only liblvgl.so, which prevents coexistence of different versions of LVGL on the same system. Set VERSION and SOVERSION to make cmake add the version suffix to generated shared libraries. That changes the filename to liblvgl.so.9.0.0 and includes symlink with major ABI version, i.e. liblvgl.so.9 . Signed-off-by: Marek Vasut <marex@denx.de> Signed-off-by: Khem Raj <raj.khem@gmail.com>
Diffstat (limited to 'meta-oe/recipes-graphics')
-rw-r--r--meta-oe/recipes-graphics/lvgl/files/0007-fix-cmake-generate-versioned-shared-libraries.patch68
-rw-r--r--meta-oe/recipes-graphics/lvgl/lvgl-demo-fb_9.0.0.bb1
-rw-r--r--meta-oe/recipes-graphics/lvgl/lvgl_9.0.0.bb3
3 files changed, 70 insertions, 2 deletions
diff --git a/meta-oe/recipes-graphics/lvgl/files/0007-fix-cmake-generate-versioned-shared-libraries.patch b/meta-oe/recipes-graphics/lvgl/files/0007-fix-cmake-generate-versioned-shared-libraries.patch
new file mode 100644
index 000000000..6997d8415
--- /dev/null
+++ b/meta-oe/recipes-graphics/lvgl/files/0007-fix-cmake-generate-versioned-shared-libraries.patch
@@ -0,0 +1,68 @@
1From 40657a770baadfff30abfecf7638e7b1c340db4d Mon Sep 17 00:00:00 2001
2From: Marek Vasut <marex@denx.de>
3Date: Thu, 14 Mar 2024 03:23:10 +0100
4Subject: [PATCH] fix(cmake): generate versioned shared libraries
5
6Add missing version suffix to shared libraries. Currently the filename of
7generated shared libraries is only liblvgl.so, which prevents coexistence
8of different versions of LVGL on the same system. Set VERSION and SOVERSION
9to make cmake add the version suffix to generated shared libraries. That
10changes the filename to liblvgl.so.9.0.0 and includes symlink with major
11ABI version, i.e. liblvgl.so.9 .
12
13Upstream-Status: Submitted [https://github.com/lvgl/lvgl/pull/5865]
14Signed-off-by: Marek Vasut <marex@denx.de>
15---
16 env_support/cmake/custom.cmake | 11 +++++++++++
17 1 file changed, 11 insertions(+)
18
19diff --git a/env_support/cmake/custom.cmake b/env_support/cmake/custom.cmake
20index 9800468eb..6f33f1cc8 100644
21--- a/env_support/cmake/custom.cmake
22+++ b/env_support/cmake/custom.cmake
23@@ -1,3 +1,6 @@
24+set(LVGL_VERSION "9.0.0")
25+set(LVGL_SOVERSION "9")
26+
27 # Option to define LV_LVGL_H_INCLUDE_SIMPLE, default: ON
28 option(LV_LVGL_H_INCLUDE_SIMPLE
29 "Use #include \"lvgl.h\" instead of #include \"../../lvgl.h\"" ON)
30@@ -119,6 +122,8 @@ install(
31 set_target_properties(
32 lvgl
33 PROPERTIES OUTPUT_NAME lvgl
34+ VERSION ${LVGL_VERSION}
35+ SOVERSION ${LVGL_SOVERSION}
36 ARCHIVE_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/lib"
37 LIBRARY_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/lib"
38 RUNTIME_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/bin"
39@@ -137,6 +142,8 @@ if(NOT LV_CONF_BUILD_DISABLE_THORVG_INTERNAL)
40 set_target_properties(
41 lvgl_thorvg
42 PROPERTIES OUTPUT_NAME lvgl_thorvg
43+ VERSION ${LVGL_VERSION}
44+ SOVERSION ${LVGL_SOVERSION}
45 ARCHIVE_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/lib"
46 LIBRARY_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/lib"
47 RUNTIME_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/bin"
48@@ -155,6 +162,8 @@ if(NOT LV_CONF_BUILD_DISABLE_DEMOS)
49 set_target_properties(
50 lvgl_demos
51 PROPERTIES OUTPUT_NAME lvgl_demos
52+ VERSION ${LVGL_VERSION}
53+ SOVERSION ${LVGL_SOVERSION}
54 ARCHIVE_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/lib"
55 LIBRARY_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/lib"
56 RUNTIME_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/bin"
57@@ -173,6 +182,8 @@ if(NOT LV_CONF_BUILD_DISABLE_EXAMPLES)
58 set_target_properties(
59 lvgl_examples
60 PROPERTIES OUTPUT_NAME lvgl_examples
61+ VERSION ${LVGL_VERSION}
62+ SOVERSION ${LVGL_SOVERSION}
63 ARCHIVE_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/lib"
64 LIBRARY_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/lib"
65 RUNTIME_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/bin"
66--
672.43.0
68
diff --git a/meta-oe/recipes-graphics/lvgl/lvgl-demo-fb_9.0.0.bb b/meta-oe/recipes-graphics/lvgl/lvgl-demo-fb_9.0.0.bb
index 70df822cc..6d3ae1ec3 100644
--- a/meta-oe/recipes-graphics/lvgl/lvgl-demo-fb_9.0.0.bb
+++ b/meta-oe/recipes-graphics/lvgl/lvgl-demo-fb_9.0.0.bb
@@ -13,6 +13,7 @@ SRC_URI = "\
13 file://0004-Factor-out-fbdev-initialization-code.patch \ 13 file://0004-Factor-out-fbdev-initialization-code.patch \
14 file://0005-Add-DRM-KMS-example-support.patch \ 14 file://0005-Add-DRM-KMS-example-support.patch \
15 file://0006-Add-SDL2-example-support.patch \ 15 file://0006-Add-SDL2-example-support.patch \
16 file://0007-fix-cmake-generate-versioned-shared-libraries.patch;patchdir=lvgl \
16 " 17 "
17SRCREV_demo = "dccc6a1ca48372aa993dbea7a8e17dec6f42df6a" 18SRCREV_demo = "dccc6a1ca48372aa993dbea7a8e17dec6f42df6a"
18SRCREV_lvgl = "e29d35b43c509b6d7189f5dac87139441669ae66" 19SRCREV_lvgl = "e29d35b43c509b6d7189f5dac87139441669ae66"
diff --git a/meta-oe/recipes-graphics/lvgl/lvgl_9.0.0.bb b/meta-oe/recipes-graphics/lvgl/lvgl_9.0.0.bb
index b84fc5a3d..8d0848508 100644
--- a/meta-oe/recipes-graphics/lvgl/lvgl_9.0.0.bb
+++ b/meta-oe/recipes-graphics/lvgl/lvgl_9.0.0.bb
@@ -12,6 +12,7 @@ SRC_URI = "\
12 git://github.com/lvgl/lvgl;protocol=https;branch=master \ 12 git://github.com/lvgl/lvgl;protocol=https;branch=master \
13 file://0001-fix-drm-Default-to-XRGB8888-framebuffer.patch \ 13 file://0001-fix-drm-Default-to-XRGB8888-framebuffer.patch \
14 file://0002-fix-sdl-handle-both-LV_IMAGE_SRC_FILE-and-LV_IMAGE_S.patch \ 14 file://0002-fix-sdl-handle-both-LV_IMAGE_SRC_FILE-and-LV_IMAGE_S.patch \
15 file://0007-fix-cmake-generate-versioned-shared-libraries.patch \
15 " 16 "
16SRCREV = "e29d35b43c509b6d7189f5dac87139441669ae66" 17SRCREV = "e29d35b43c509b6d7189f5dac87139441669ae66"
17PV .= "+git${SRCPV}" 18PV .= "+git${SRCPV}"
@@ -30,5 +31,3 @@ FILES:${PN}-dev += "\
30 ${includedir}/${PN}/ \ 31 ${includedir}/${PN}/ \
31 ${includedir}/${PN}/lvgl/ \ 32 ${includedir}/${PN}/lvgl/ \
32 " 33 "
33SOLIBS = ".so"
34FILES_SOLIBSDEV = ""