diff mbox series

[1/1] package/leveldb: fix build for gcc < 5.x

Message ID 20191026192707.23083-1-bernd.kuhls@t-online.de
State Accepted
Headers show
Series [1/1] package/leveldb: fix build for gcc < 5.x | expand

Commit Message

Bernd Kuhls Oct. 26, 2019, 7:27 p.m. UTC
Without defining LEVELDB_HAS_PORT_CONFIG_H port/port_config.h will not
be included:
https://github.com/google/leveldb/blob/master/port/port_stdcxx.h#L8

which breaks endian detection. Add the define to our memenv patch to fix
building with gcc < 5.
__has_include was added in gcc5: https://gcc.gnu.org/gcc-5/changes.html

Fixes:
http://autobuild.buildroot.net/results/4ac/4ac8fbed79307326086ab294eba9e68cf208e6ac/

Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
---
 package/leveldb/0002-CMake-install-libmemenv.a.patch | 6 ++++++
 1 file changed, 6 insertions(+)

Comments

Thomas Petazzoni Oct. 27, 2019, 9:18 a.m. UTC | #1
On Sat, 26 Oct 2019 21:27:07 +0200
Bernd Kuhls <bernd.kuhls@t-online.de> wrote:

> Without defining LEVELDB_HAS_PORT_CONFIG_H port/port_config.h will not
> be included:
> https://github.com/google/leveldb/blob/master/port/port_stdcxx.h#L8
> 
> which breaks endian detection. Add the define to our memenv patch to fix
> building with gcc < 5.
> __has_include was added in gcc5: https://gcc.gnu.org/gcc-5/changes.html
> 
> Fixes:
> http://autobuild.buildroot.net/results/4ac/4ac8fbed79307326086ab294eba9e68cf208e6ac/
> 
> Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
> ---
>  package/leveldb/0002-CMake-install-libmemenv.a.patch | 6 ++++++
>  1 file changed, 6 insertions(+)

Applied, thanks. Could you work with leveldb upstream to find a
solution to install the memenv library that they can accept ?

Thanks!

Thomas
diff mbox series

Patch

diff --git a/package/leveldb/0002-CMake-install-libmemenv.a.patch b/package/leveldb/0002-CMake-install-libmemenv.a.patch
index 85ee8a824b..f2e88a8a6c 100644
--- a/package/leveldb/0002-CMake-install-libmemenv.a.patch
+++ b/package/leveldb/0002-CMake-install-libmemenv.a.patch
@@ -32,6 +32,12 @@  index a65afbf..83b2425 100644
 +    # Used by port/port.h.
 +    ${LEVELDB_PLATFORM_NAME}=1
 +)
++if (NOT HAVE_CXX17_HAS_INCLUDE)
++  target_compile_definitions(memenv
++    PRIVATE
++      LEVELDB_HAS_PORT_CONFIG_H=1
++  )
++endif(NOT HAVE_CXX17_HAS_INCLUDE)
 +target_include_directories(memenv
 +  PUBLIC
 +    $<BUILD_INTERFACE:${PROJECT_SOURCE_DIR}/include>