<div dir="ltr">Hi, Stefan:<div><br></div><div>Thanks for the review, will send a V2.</div><div><br></div><div>the best,</div><div>thank you</div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">Stefan Agner <<a href="mailto:stefan@agner.ch">stefan@agner.ch</a>> æ–¼ 2019å¹´6月17æ—¥ 週一 下åˆ3:18寫é“:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">Hi Ming,<br>
<br>
Thanks for tackling this.<br>
<br>
On 15.06.2019 12:42, <a href="mailto:liu.ming50@gmail.com" target="_blank">liu.ming50@gmail.com</a> wrote:<br>
> From: Ming Liu <<a href="mailto:liu.ming50@gmail.com" target="_blank">liu.ming50@gmail.com</a>><br>
> <br>
> Freescale/NXP <a href="http://I.MX" rel="noreferrer" target="_blank">I.MX</a> Chip image deploy tools, uuu (Universal Update<br>
> Utility), mfgtools 3.0.<br>
> <br>
> Signed-off-by: Ming Liu <<a href="mailto:liu.ming50@gmail.com" target="_blank">liu.ming50@gmail.com</a>><br>
> ---<br>
> .../0001-CMakeLists.txt-fix-libzip-name.patch   | 54 ++++++++++++++++++++++<br>
>Â ...MakeLists.txt-support-building-static-uuu.patch | 32 +++++++++++++<br>
>Â recipes-bsp/mfgtools/<a href="http://mfgtools_git.bb" rel="noreferrer" target="_blank">mfgtools_git.bb</a>Â Â Â Â Â Â Â Â | 31 +++++++++++++<br>
>Â 3 files changed, 117 insertions(+)<br>
>Â create mode 100644<br>
> recipes-bsp/mfgtools/mfgtools/0001-CMakeLists.txt-fix-libzip-name.patch<br>
>Â create mode 100644<br>
> recipes-bsp/mfgtools/mfgtools/0001-CMakeLists.txt-support-building-static-uuu.patch<br>
>Â create mode 100644 recipes-bsp/mfgtools/<a href="http://mfgtools_git.bb" rel="noreferrer" target="_blank">mfgtools_git.bb</a><br>
> <br>
> diff --git<br>
> a/recipes-bsp/mfgtools/mfgtools/0001-CMakeLists.txt-fix-libzip-name.patch<br>
> b/recipes-bsp/mfgtools/mfgtools/0001-CMakeLists.txt-fix-libzip-name.patch<br>
> new file mode 100644<br>
> index 0000000..03f68a5<br>
> --- /dev/null<br>
> +++ b/recipes-bsp/mfgtools/mfgtools/0001-CMakeLists.txt-fix-libzip-name.patch<br>
> @@ -0,0 +1,54 @@<br>
> +From b11bd93be67c5ad92e279f071a812234486c128b Mon Sep 17 00:00:00 2001<br>
> +From: Ming Liu <<a href="mailto:liu.ming50@gmail.com" target="_blank">liu.ming50@gmail.com</a>><br>
> +Date: Thu, 13 Jun 2019 16:52:45 +0200<br>
> +Subject: [PATCH] CMakeLists.txt: fix libzip name<br>
> +<br>
> +Change libzip -> zlib, this is needed for building with OE.<br>
> +<br>
> +Upstream-Status: Inappropriate [oe specific]<br>
> +<br>
> +Signed-off-by: Ming Liu <<a href="mailto:liu.ming50@gmail.com" target="_blank">liu.ming50@gmail.com</a>><br>
> +---<br>
> + libuuu/CMakeLists.txt | 2 +-<br>
> + uuu/CMakeLists.txt  | 5 ++---<br>
> + 2 files changed, 3 insertions(+), 4 deletions(-)<br>
> +<br>
> +diff --git a/libuuu/CMakeLists.txt b/libuuu/CMakeLists.txt<br>
> +index 740d7ed..30324d0 100644<br>
> +--- a/libuuu/CMakeLists.txt<br>
> ++++ b/libuuu/CMakeLists.txt<br>
> +@@ -5,7 +5,7 @@ set(CMAKE_CXX_STANDARD_REQUIRED ON)<br>
> + <br>
> + find_package(PkgConfig REQUIRED)<br>
> + pkg_check_modules(LIBUSB REQUIRED libusb-1.0>=1.0.16)<br>
> +-pkg_check_modules(LIBZIP REQUIRED libzip)<br>
> ++pkg_check_modules(LIBZIP REQUIRED zlib)<br>
> + find_package(Threads)<br>
> + <br>
> + include_directories(${LIBUSB_INCLUDE_DIRS} include)<br>
> +diff --git a/uuu/CMakeLists.txt b/uuu/CMakeLists.txt<br>
> +index a2d8c87..1ca8013 100644<br>
> +--- a/uuu/CMakeLists.txt<br>
> ++++ b/uuu/CMakeLists.txt<br>
> +@@ -5,8 +5,7 @@ set(CMAKE_CXX_STANDARD_REQUIRED ON)<br>
> + <br>
> + find_package(PkgConfig REQUIRED)<br>
> + pkg_check_modules(LIBUSB REQUIRED libusb-1.0>=1.0.16)<br>
> +-pkg_check_modules(LIBZIP REQUIRED libzip)<br>
> +-pkg_check_modules(LIBZ REQUIRED zlib)<br>
> ++pkg_check_modules(LIBZIP REQUIRED zlib)<br>
> + find_package(Threads)<br>
> + <br>
> + <br>
> +@@ -27,7 +26,7 @@ set(LSTS<br>
> +Â Â Â sd_burn_all.lst<br>
> + )<br>
> + <br>
> +-link_directories(${CMAKE_CURRENT_SOURCE_DIR}/libuuu<br>
> ${LIBUSB_LIBRARY_DIRS} ${LIBZIP_LIBRARY_DIRS} ${LIBZ_LIBRARY_DIRS})<br>
> ++link_directories(${CMAKE_CURRENT_SOURCE_DIR}/libuuu<br>
> ${LIBUSB_LIBRARY_DIRS} ${LIBZIP_LIBRARY_DIRS})<br>
> + <br>
> + set(CLIST_EXECUTABLE ${CMAKE_CURRENT_SOURCE_DIR}/gen_txt_include.sh)<br>
> + set(generated_files_dir "${CMAKE_BINARY_DIR}/uuu/gen")<br>
> +-- <br>
> +2.7.4<br>
> +<br>
> diff --git<br>
> a/recipes-bsp/mfgtools/mfgtools/0001-CMakeLists.txt-support-building-static-uuu.patch<br>
> b/recipes-bsp/mfgtools/mfgtools/0001-CMakeLists.txt-support-building-static-uuu.patch<br>
> new file mode 100644<br>
> index 0000000..bb69c87<br>
> --- /dev/null<br>
> +++<br>
> b/recipes-bsp/mfgtools/mfgtools/0001-CMakeLists.txt-support-building-static-uuu.patch<br>
> @@ -0,0 +1,32 @@<br>
> +From 2ccb6fa0ae52981c78f79afa7009ccab11c6703f Mon Sep 17 00:00:00 2001<br>
> +From: Ming Liu <<a href="mailto:liu.ming50@gmail.com" target="_blank">liu.ming50@gmail.com</a>><br>
> +Date: Sat, 15 Jun 2019 05:18:10 +0800<br>
> +Subject: [PATCH] CMakeLists.txt: support building static uuu<br>
> +<br>
> +Upstream-Status: Inappropriate [oe specific]<br>
> +<br>
> +Signed-off-by: Ming Liu <<a href="mailto:liu.ming50@gmail.com" target="_blank">liu.ming50@gmail.com</a>><br>
> +---<br>
> + CMakeLists.txt | 6 ++++++<br>
> + 1 file changed, 6 insertions(+)<br>
> +<br>
> +diff --git a/CMakeLists.txt b/CMakeLists.txt<br>
> +index 302f8cb..f23871e 100644<br>
> +--- a/CMakeLists.txt<br>
> ++++ b/CMakeLists.txt<br>
> +@@ -4,6 +4,12 @@ set(CMAKE_CXX_STANDARD 11)<br>
> + set(CMAKE_CXX_STANDARD_REQUIRED ON)<br>
> + <br>
> + option(BUILD_DOC "Build documentation" OFF)<br>
> ++option(BUILD_STATIC "Build static uuu binary" OFF)<br>
> ++<br>
> ++if (BUILD_STATIC)<br>
> ++Â Â set(CMAKE_FIND_LIBRARY_SUFFIXES ".a")<br>
> ++Â Â set(CMAKE_EXE_LINKER_FLAGS "-static -static-libgcc -static-libstdc++")<br>
> ++endif (BUILD_STATIC)<br>
> + <br>
> + add_subdirectory(libuuu)<br>
> + add_subdirectory(uuu)<br>
> +-- <br>
> +2.7.4<br>
> +<br>
> diff --git a/recipes-bsp/mfgtools/<a href="http://mfgtools_git.bb" rel="noreferrer" target="_blank">mfgtools_git.bb</a><br>
> b/recipes-bsp/mfgtools/<a href="http://mfgtools_git.bb" rel="noreferrer" target="_blank">mfgtools_git.bb</a><br>
> new file mode 100644<br>
> index 0000000..4ba6065<br>
> --- /dev/null<br>
> +++ b/recipes-bsp/mfgtools/<a href="http://mfgtools_git.bb" rel="noreferrer" target="_blank">mfgtools_git.bb</a><br>
> @@ -0,0 +1,31 @@<br>
> +SUMMARY = "uuu (Universal Update Utility), mfgtools 3.0"<br>
> +DESCRIPTION = "Freescale/NXP <a href="http://I.MX" rel="noreferrer" target="_blank">I.MX</a> Chip image deploy tools, uuu<br>
> (Universal Update Utility), mfgtools 3.0."<br>
> +HOMEPAGE = "<a href="https://github.com/NXPmicro/mfgtools" rel="noreferrer" target="_blank">https://github.com/NXPmicro/mfgtools</a>"<br>
> +SECTION = "devel"<br>
> +LICENSE = "BSD"<br>
> +LIC_FILES_CHKSUM = "file://README.md;md5=653656dfc74a26684d74346214abe93a"<br>
> +<br>
> +SRC_URI = "gitsm://<a href="http://github.com/NXPmicro/mfgtools;branch=master" rel="noreferrer" target="_blank">github.com/NXPmicro/mfgtools;branch=master</a> \<br>
> +Â Â Â Â Â Â file://0001-CMakeLists.txt-fix-libzip-name.patch \<br>
> +Â Â Â Â Â Â file://0001-CMakeLists.txt-support-building-static-uuu.patch \<br>
> +Â Â Â Â Â "<br>
> +<br>
> +# uuu_1.2.91<br>
> +SRCREV = "3799f4d7b0464cc9253b4597ba7ccc54deefca20"<br>
> +<br>
> +PV = "1.2.91+git${SRCPV}"<br>
> +<br>
> +S = "${WORKDIR}/git"<br>
> +<br>
> +DEPENDS = "libusb1 zlib bzip2"<br>
> +<br>
> +inherit pkgconfig cmake<br>
> +<br>
> +PACKAGECONFIG ??= "static"<br>
<br>
We use a static build to create a binary which is rather easy to run on<br>
a variety of new and old distributions, but not sure if that is the<br>
default use case.<br>
<br>
I would rather prefer if we enable this package config in a local<br>
bbappend or similar and leave it non-static by default.<br>
<br>
<br>
We might even argue whether compiling statically is something an<br>
upstream recipe should provide. But I leave that decision up to the<br>
maintainers...<br>
<br>
--<br>
Stefan<br>
<br>
> +PACKAGECONFIG[doc] = "-DBUILD_DOC=ON,-DBUILD_DOC=OFF,doxygen-native"<br>
> +PACKAGECONFIG[static] = "-DBUILD_STATIC=ON,-DBUILD_STATIC=OFF"<br>
> +<br>
> +# Do not set RPATH if static build is intended.<br>
> +OECMAKE_RPATH_forcevariable = "${@bb.utils.contains('PACKAGECONFIG',<br>
> 'static', '', '${libdir}', d)}"<br>
> +<br>
> +BBCLASSEXTEND = "native"<br>
> -- <br>
> 2.7.4<br>
</blockquote></div>