xref: /OK3568_Linux_fs/buildroot/package/leveldb/0002-CMake-install-libmemenv.a.patch (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1*4882a593SmuzhiyunFrom 2fa960098e5b6f9daa9f7d6cab27188566859be8 Mon Sep 17 00:00:00 2001
2*4882a593SmuzhiyunFrom: Bernd Kuhls <bernd.kuhls@t-online.de>
3*4882a593SmuzhiyunDate: Sat, 12 Oct 2019 14:43:46 +0200
4*4882a593SmuzhiyunSubject: [PATCH] CMake: install libmemenv.a
5*4882a593Smuzhiyun
6*4882a593SmuzhiyunNeeded for qt5webkit
7*4882a593Smuzhiyunhttps://git.busybox.net/buildroot/commit/?id=8a10d9ce311c6cb0490d76921cae55618c258354
8*4882a593Smuzhiyunhttps://git.busybox.net/buildroot/commit/?id=16f847340d07dce620e4c3fc0a099aa79898d86a
9*4882a593Smuzhiyun
10*4882a593SmuzhiyunSigned-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
11*4882a593Smuzhiyun---
12*4882a593Smuzhiyun CMakeLists.txt | 26 +++++++++++++++++++++++++-
13*4882a593Smuzhiyun 1 file changed, 25 insertions(+), 1 deletion(-)
14*4882a593Smuzhiyun
15*4882a593Smuzhiyundiff --git a/CMakeLists.txt b/CMakeLists.txt
16*4882a593Smuzhiyunindex a65afbf..83b2425 100644
17*4882a593Smuzhiyun--- a/CMakeLists.txt
18*4882a593Smuzhiyun+++ b/CMakeLists.txt
19*4882a593Smuzhiyun@@ -187,6 +187,30 @@ target_sources(leveldb
20*4882a593Smuzhiyun     "${LEVELDB_PUBLIC_INCLUDE_DIR}/write_batch.h"
21*4882a593Smuzhiyun )
22*4882a593Smuzhiyun
23*4882a593Smuzhiyun+set(libmemenv_a_sources
24*4882a593Smuzhiyun+    "${PROJECT_SOURCE_DIR}/helpers/memenv/memenv.cc"
25*4882a593Smuzhiyun+    "${PROJECT_SOURCE_DIR}/helpers/memenv/memenv.h"
26*4882a593Smuzhiyun+    )
27*4882a593Smuzhiyun+add_library(memenv STATIC ${libmemenv_a_sources})
28*4882a593Smuzhiyun+target_compile_definitions(memenv
29*4882a593Smuzhiyun+  PRIVATE
30*4882a593Smuzhiyun+    # Used by include/export.h when building shared libraries.
31*4882a593Smuzhiyun+    LEVELDB_COMPILE_LIBRARY
32*4882a593Smuzhiyun+    # Used by port/port.h.
33*4882a593Smuzhiyun+    ${LEVELDB_PLATFORM_NAME}=1
34*4882a593Smuzhiyun+)
35*4882a593Smuzhiyun+if (NOT HAVE_CXX17_HAS_INCLUDE)
36*4882a593Smuzhiyun+  target_compile_definitions(memenv
37*4882a593Smuzhiyun+    PRIVATE
38*4882a593Smuzhiyun+      LEVELDB_HAS_PORT_CONFIG_H=1
39*4882a593Smuzhiyun+  )
40*4882a593Smuzhiyun+endif(NOT HAVE_CXX17_HAS_INCLUDE)
41*4882a593Smuzhiyun+target_include_directories(memenv
42*4882a593Smuzhiyun+  PUBLIC
43*4882a593Smuzhiyun+    $<BUILD_INTERFACE:${PROJECT_SOURCE_DIR}/include>
44*4882a593Smuzhiyun+    $<INSTALL_INTERFACE:${CMAKE_INSTALL_INCLUDEDIR}>
45*4882a593Smuzhiyun+)
46*4882a593Smuzhiyun+
47*4882a593Smuzhiyun if (WIN32)
48*4882a593Smuzhiyun   target_sources(leveldb
49*4882a593Smuzhiyun     PRIVATE
50*4882a593Smuzhiyun@@ -418,7 +436,7 @@ endif(LEVELDB_BUILD_BENCHMARKS)
51*4882a593Smuzhiyun
52*4882a593Smuzhiyun if(LEVELDB_INSTALL)
53*4882a593Smuzhiyun   include(GNUInstallDirs)
54*4882a593Smuzhiyun-  install(TARGETS leveldb
55*4882a593Smuzhiyun+  install(TARGETS leveldb memenv
56*4882a593Smuzhiyun     EXPORT leveldbTargets
57*4882a593Smuzhiyun     RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
58*4882a593Smuzhiyun     LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
59*4882a593Smuzhiyun@@ -444,6 +462,12 @@ if(LEVELDB_INSTALL)
60*4882a593Smuzhiyun     DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/leveldb
61*4882a593Smuzhiyun   )
62*4882a593Smuzhiyun
63*4882a593Smuzhiyun+  install(
64*4882a593Smuzhiyun+    FILES
65*4882a593Smuzhiyun+      "${PROJECT_SOURCE_DIR}/helpers/memenv/memenv.h"
66*4882a593Smuzhiyun+    DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/helpers/memenv
67*4882a593Smuzhiyun+  )
68*4882a593Smuzhiyun+
69*4882a593Smuzhiyun   include(CMakePackageConfigHelpers)
70*4882a593Smuzhiyun   write_basic_package_version_file(
71*4882a593Smuzhiyun       "${PROJECT_BINARY_DIR}/leveldbConfigVersion.cmake"
72*4882a593Smuzhiyun--
73*4882a593Smuzhiyun2.20.1
74*4882a593Smuzhiyun
75