diff options
author | Changqing Li <changqing.li@windriver.com> | 2022-12-29 10:34:41 +0800 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2023-01-26 21:57:48 +0000 |
commit | 3d8b241cf2d76d2ef0b723b27fcd7e7e00bd69dc (patch) | |
tree | 09963cd8794ec73e4b413f0c9cd22365f4a4825b /meta/recipes-devtools/cmake | |
parent | b1ec98f71f196bce3042b6432d7767062529f547 (diff) | |
download | poky-3d8b241cf2d76d2ef0b723b27fcd7e7e00bd69dc.tar.gz |
cmake-native: use internal cmcurl library
This commit is for breaking circular dependency in following condition:
After enabling PACKAGECONFIG nghttp2 for curl, the dependency chain is:
curl-native -> nghttp2-native -> cmake-native -> curl-native.
So change to use internal cmcurl library to fix this. And as using
system curl library before, disable nghttp2 and use system openssl
library for cmcurl.
(From OE-Core rev: f9a5f9fdb69bb61242dc65ed83704f727491ecca)
Signed-off-by: Changqing Li <changqing.li@windriver.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/recipes-devtools/cmake')
-rw-r--r-- | meta/recipes-devtools/cmake/cmake-native_3.25.1.bb | 8 | ||||
-rw-r--r-- | meta/recipes-devtools/cmake/cmake/0001-CMakeLists.txt-disable-USE_NGHTTP2.patch | 31 |
2 files changed, 36 insertions, 3 deletions
diff --git a/meta/recipes-devtools/cmake/cmake-native_3.25.1.bb b/meta/recipes-devtools/cmake/cmake-native_3.25.1.bb index bcc87eb8f2..c150aef5ef 100644 --- a/meta/recipes-devtools/cmake/cmake-native_3.25.1.bb +++ b/meta/recipes-devtools/cmake/cmake-native_3.25.1.bb | |||
@@ -1,21 +1,23 @@ | |||
1 | require cmake.inc | 1 | require cmake.inc |
2 | inherit native | 2 | inherit native |
3 | 3 | ||
4 | DEPENDS += "bzip2-replacement-native xz-native zlib-native curl-native ncurses-native zstd-native" | 4 | DEPENDS += "bzip2-replacement-native xz-native zlib-native ncurses-native zstd-native openssl-native" |
5 | 5 | ||
6 | SRC_URI += "file://OEToolchainConfig.cmake \ | 6 | SRC_URI += "file://OEToolchainConfig.cmake \ |
7 | file://environment.d-cmake.sh \ | 7 | file://environment.d-cmake.sh \ |
8 | file://0001-CMakeDetermineSystem-use-oe-environment-vars-to-load.patch \ | 8 | file://0001-CMakeDetermineSystem-use-oe-environment-vars-to-load.patch \ |
9 | file://0005-Disable-use-of-ext2fs-ext2_fs.h-by-cmake-s-internal-.patch \ | 9 | file://0005-Disable-use-of-ext2fs-ext2_fs.h-by-cmake-s-internal-.patch \ |
10 | file://0001-CMakeLists.txt-disable-USE_NGHTTP2.patch \ | ||
10 | " | 11 | " |
11 | 12 | ||
12 | LICENSE:append = " & BSD-1-Clause & MIT & BSD-2-Clause" | 13 | LICENSE:append = " & BSD-1-Clause & MIT & BSD-2-Clause & curl" |
13 | LIC_FILES_CHKSUM:append = " \ | 14 | LIC_FILES_CHKSUM:append = " \ |
14 | file://Utilities/cmjsoncpp/LICENSE;md5=5d73c165a0f9e86a1342f32d19ec5926 \ | 15 | file://Utilities/cmjsoncpp/LICENSE;md5=5d73c165a0f9e86a1342f32d19ec5926 \ |
15 | file://Utilities/cmlibarchive/COPYING;md5=d499814247adaee08d88080841cb5665 \ | 16 | file://Utilities/cmlibarchive/COPYING;md5=d499814247adaee08d88080841cb5665 \ |
16 | file://Utilities/cmexpat/COPYING;md5=9e2ce3b3c4c0f2670883a23bbd7c37a9 \ | 17 | file://Utilities/cmexpat/COPYING;md5=9e2ce3b3c4c0f2670883a23bbd7c37a9 \ |
17 | file://Utilities/cmlibrhash/COPYING;md5=a8c2a557a5c53b1c12cddbee98c099af \ | 18 | file://Utilities/cmlibrhash/COPYING;md5=a8c2a557a5c53b1c12cddbee98c099af \ |
18 | file://Utilities/cmlibuv/LICENSE;md5=ad93ca1fffe931537fcf64f6fcce084d \ | 19 | file://Utilities/cmlibuv/LICENSE;md5=ad93ca1fffe931537fcf64f6fcce084d \ |
20 | file://Utilities/cmcurl/COPYING;md5=190c514872597083303371684954f238 \ | ||
19 | " | 21 | " |
20 | 22 | ||
21 | B = "${WORKDIR}/build" | 23 | B = "${WORKDIR}/build" |
@@ -30,9 +32,9 @@ CMAKE_EXTRACONF = "\ | |||
30 | -DCMAKE_USE_SYSTEM_LIBRARY_LIBUV=0 \ | 32 | -DCMAKE_USE_SYSTEM_LIBRARY_LIBUV=0 \ |
31 | -DCMAKE_USE_SYSTEM_LIBRARY_LIBRHASH=0 \ | 33 | -DCMAKE_USE_SYSTEM_LIBRARY_LIBRHASH=0 \ |
32 | -DCMAKE_USE_SYSTEM_LIBRARY_EXPAT=0 \ | 34 | -DCMAKE_USE_SYSTEM_LIBRARY_EXPAT=0 \ |
35 | -DCMAKE_USE_SYSTEM_LIBRARY_CURL=0 \ | ||
33 | -DENABLE_ACL=0 -DHAVE_ACL_LIBACL_H=0 \ | 36 | -DENABLE_ACL=0 -DHAVE_ACL_LIBACL_H=0 \ |
34 | -DHAVE_SYS_ACL_H=0 \ | 37 | -DHAVE_SYS_ACL_H=0 \ |
35 | -DCURL_LIBRARIES=-lcurl \ | ||
36 | " | 38 | " |
37 | 39 | ||
38 | do_configure () { | 40 | do_configure () { |
diff --git a/meta/recipes-devtools/cmake/cmake/0001-CMakeLists.txt-disable-USE_NGHTTP2.patch b/meta/recipes-devtools/cmake/cmake/0001-CMakeLists.txt-disable-USE_NGHTTP2.patch new file mode 100644 index 0000000000..d6486cb45f --- /dev/null +++ b/meta/recipes-devtools/cmake/cmake/0001-CMakeLists.txt-disable-USE_NGHTTP2.patch | |||
@@ -0,0 +1,31 @@ | |||
1 | From 3fd6082c52a8140db5995afb59fb391f7d5c19d7 Mon Sep 17 00:00:00 2001 | ||
2 | From: Changqing Li <changqing.li@windriver.com> | ||
3 | Date: Wed, 28 Dec 2022 17:51:27 +0800 | ||
4 | Subject: [PATCH] CMakeLists.txt: disable USE_NGHTTP2 | ||
5 | |||
6 | nghttp2 depends on cmake-native to build, to break circular | ||
7 | dependency, disable nghttp2. | ||
8 | |||
9 | Upstream-Status: Inappropriate [oe specific] | ||
10 | |||
11 | Signed-off-by: Changqing Li <changqing.li@windriver.com> | ||
12 | --- | ||
13 | Utilities/cmcurl/CMakeLists.txt | 2 +- | ||
14 | 1 file changed, 1 insertion(+), 1 deletion(-) | ||
15 | |||
16 | diff --git a/Utilities/cmcurl/CMakeLists.txt b/Utilities/cmcurl/CMakeLists.txt | ||
17 | index f842270b..17b1ce19 100644 | ||
18 | --- a/Utilities/cmcurl/CMakeLists.txt | ||
19 | +++ b/Utilities/cmcurl/CMakeLists.txt | ||
20 | @@ -68,7 +68,7 @@ set(ENABLE_UNIX_SOCKETS OFF CACHE INTERNAL "No curl Unix domain sockets support" | ||
21 | set(HTTP_ONLY OFF CACHE INTERNAL "Curl is not http-only") | ||
22 | set(PICKY_COMPILER OFF CACHE INTERNAL "Enable picky compiler options") | ||
23 | set(USE_LIBIDN2 ON) | ||
24 | -set(USE_NGHTTP2 ON) | ||
25 | +set(USE_NGHTTP2 OFF) | ||
26 | set(USE_NGTCP2 OFF) | ||
27 | set(USE_QUICHE OFF) | ||
28 | set(USE_WIN32_IDN OFF) | ||
29 | -- | ||
30 | 2.25.1 | ||
31 | |||