diff options
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 0000000000..6997d84153 --- /dev/null +++ b/meta-oe/recipes-graphics/lvgl/files/0007-fix-cmake-generate-versioned-shared-libraries.patch | |||
| @@ -0,0 +1,68 @@ | |||
| 1 | From 40657a770baadfff30abfecf7638e7b1c340db4d Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Marek Vasut <marex@denx.de> | ||
| 3 | Date: Thu, 14 Mar 2024 03:23:10 +0100 | ||
| 4 | Subject: [PATCH] fix(cmake): generate versioned shared libraries | ||
| 5 | |||
| 6 | Add missing version suffix to shared libraries. Currently the filename of | ||
| 7 | generated shared libraries is only liblvgl.so, which prevents coexistence | ||
| 8 | of different versions of LVGL on the same system. Set VERSION and SOVERSION | ||
| 9 | to make cmake add the version suffix to generated shared libraries. That | ||
| 10 | changes the filename to liblvgl.so.9.0.0 and includes symlink with major | ||
| 11 | ABI version, i.e. liblvgl.so.9 . | ||
| 12 | |||
| 13 | Upstream-Status: Submitted [https://github.com/lvgl/lvgl/pull/5865] | ||
| 14 | Signed-off-by: Marek Vasut <marex@denx.de> | ||
| 15 | --- | ||
| 16 | env_support/cmake/custom.cmake | 11 +++++++++++ | ||
| 17 | 1 file changed, 11 insertions(+) | ||
| 18 | |||
| 19 | diff --git a/env_support/cmake/custom.cmake b/env_support/cmake/custom.cmake | ||
| 20 | index 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 | -- | ||
| 67 | 2.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 70df822ccc..6d3ae1ec37 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 | " |
| 17 | SRCREV_demo = "dccc6a1ca48372aa993dbea7a8e17dec6f42df6a" | 18 | SRCREV_demo = "dccc6a1ca48372aa993dbea7a8e17dec6f42df6a" |
| 18 | SRCREV_lvgl = "e29d35b43c509b6d7189f5dac87139441669ae66" | 19 | SRCREV_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 b84fc5a3d7..8d08485089 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 | " |
| 16 | SRCREV = "e29d35b43c509b6d7189f5dac87139441669ae66" | 17 | SRCREV = "e29d35b43c509b6d7189f5dac87139441669ae66" |
| 17 | PV .= "+git${SRCPV}" | 18 | PV .= "+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 | " |
| 33 | SOLIBS = ".so" | ||
| 34 | FILES_SOLIBSDEV = "" | ||
