aboutsummaryrefslogtreecommitdiffstats
path: root/meta-oe/recipes-extended/minifi-cpp/files/fix-libressl-compile.patch
blob: 84b8c8cb0e903b88fbcf7e2279f11ad49e8373bd (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
diff -urN -x .git orig/cmake/LibreSSL.cmake patched/cmake/LibreSSL.cmake
--- orig/cmake/LibreSSL.cmake	2020-08-07 21:58:34.660773928 +0900
+++ patched/cmake/LibreSSL.cmake	2020-08-07 22:51:18.620767245 +0900
@@ -18,6 +18,9 @@
 function(use_libre_ssl SOURCE_DIR BINARY_DIR)
 	message("Using bundled LibreSSL from release")
 	
+	find_package(Patch REQUIRED)
+	set(PATCH "${Patch_EXECUTABLE}" -p1 -i "${SOURCE_DIR}/thirdparty/libressl/avoid-BSWAP-assembly-for-ARM-v6.patch")
+
 	set(BYPRODUCT_PREFIX "lib" CACHE STRING "" FORCE)
 	set(BYPRODUCT_SUFFIX ".a" CACHE STRING "" FORCE)
 	
@@ -27,16 +30,29 @@
 		set(BYPRODUCT_PREFIX "" CACHE STRING "" FORCE)
 	set(BUILD_ARGS " -GVisual Studio 15 2017")
 	endif(WIN32)
+
+	set(BYPRODUCTS
+		"lib/${BYPRODUCT_PREFIX}crypto${BYPRODUCT_SUFFIX}"
+		"lib/${BYPRODUCT_PREFIX}ssl${BYPRODUCT_SUFFIX}"
+		"lib/${BYPRODUCT_PREFIX}tls${BYPRODUCT_SUFFIX}"
+	)
+	set(LIBRESSL_INSTALL_DIR "${BINARY_DIR}/thirdparty/libressl-install" CACHE STRING "" FORCE)
+	FOREACH(BYPRODUCT ${BYPRODUCTS})
+		LIST(APPEND LIBRESSL_LIBRARIES_LIST "${LIBRESSL_INSTALL_DIR}/${BYPRODUCT}")
+	ENDFOREACH(BYPRODUCT)
+
 	ExternalProject_Add(
 	libressl-portable
 	URL https://cdn.openbsd.org/pub/OpenBSD/LibreSSL/libressl-2.8.3.tar.gz https://ftp.openbsd.org/pub/OpenBSD/LibreSSL/libressl-2.8.3.tar.gz https://gentoo.osuosl.org/distfiles/libressl-2.8.3.tar.gz
 	URL_HASH "SHA256=9b640b13047182761a99ce3e4f000be9687566e0828b4a72709e9e6a3ef98477"
 	SOURCE_DIR "${BINARY_DIR}/thirdparty/libressl-src"
+	PATCH_COMMAND ${PATCH}
 	CMAKE_ARGS ${PASSTHROUGH_CMAKE_ARGS}
 				"-DCMAKE_INSTALL_PREFIX=${BINARY_DIR}/thirdparty/libressl-install"
 				"-DLIBRESSL_APPS=OFF"
 				"-DLIBRESSL_TESTS=OFF"
 				"${BUILD_ARGS}"
+	BUILD_BYPRODUCTS ${LIBRESSL_LIBRARIES_LIST}
 	)
 
 	add_library(crypto STATIC IMPORTED)