diff options
| author | Adrian Freihofer <adrian.freihofer@scs.ch> | 2018-12-16 14:38:01 +0100 |
|---|---|---|
| committer | Khem Raj <raj.khem@gmail.com> | 2018-12-18 18:44:59 -0800 |
| commit | afadc2ca4d72f5cdf3d191d96ec56057d9ca07b5 (patch) | |
| tree | c9b9de8f2768a0742b9bad9768e59bb9d1157aa2 | |
| parent | a6fe3f7b474388c1d83aa43bb1cc7178595a9e22 (diff) | |
| download | meta-openembedded-afadc2ca4d72f5cdf3d191d96ec56057d9ca07b5.tar.gz | |
flatbuffers: update to 1.10.0
This is in fact an update from 1.7.1 to 1.10.0. (The git hash
of the 1.9.0 recipe referred flatbuffers release 1.7.1.)
This patch is obsolete, a similar fix has been applied upstream:
- 0001-correct-version-for-so-lib.patch
These two patches have been applied upstream:
- 0001-flatbuffers-Move-EndianSwap-template-to-flatbuffers-.patch
- 0002-use-__builtin_bswap16-when-building-with-clang.patch
Signed-off-by: Adrian Freihofer <adrian.freihofer@gmail.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
| -rw-r--r-- | meta-oe/recipes-devtools/flatbuffers/files/0001-correct-version-for-so-lib.patch | 26 | ||||
| -rw-r--r-- | meta-oe/recipes-devtools/flatbuffers/files/0001-flatbuffers-Move-EndianSwap-template-to-flatbuffers-.patch | 113 | ||||
| -rw-r--r-- | meta-oe/recipes-devtools/flatbuffers/files/0002-use-__builtin_bswap16-when-building-with-clang.patch | 30 | ||||
| -rw-r--r-- | meta-oe/recipes-devtools/flatbuffers/flatbuffers_1.10.0.bb (renamed from meta-oe/recipes-devtools/flatbuffers/flatbuffers_1.9.0.bb) | 13 |
4 files changed, 5 insertions, 177 deletions
diff --git a/meta-oe/recipes-devtools/flatbuffers/files/0001-correct-version-for-so-lib.patch b/meta-oe/recipes-devtools/flatbuffers/files/0001-correct-version-for-so-lib.patch deleted file mode 100644 index a7a42f9814..0000000000 --- a/meta-oe/recipes-devtools/flatbuffers/files/0001-correct-version-for-so-lib.patch +++ /dev/null | |||
| @@ -1,26 +0,0 @@ | |||
| 1 | From 8b44dc65d98d50b462843ac9dab6fe3fc25abe36 Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Pascal Bach <pascal.bach@siemens.com> | ||
| 3 | Date: Fri, 12 May 2017 13:54:49 +0200 | ||
| 4 | Subject: [PATCH] correct version for so lib | ||
| 5 | |||
| 6 | Upstream-Status: Pending | ||
| 7 | |||
| 8 | --- | ||
| 9 | CMakeLists.txt | 1 + | ||
| 10 | 1 file changed, 1 insertion(+) | ||
| 11 | |||
| 12 | diff --git a/CMakeLists.txt b/CMakeLists.txt | ||
| 13 | index 3670afe..f4fcd2c 100644 | ||
| 14 | --- a/CMakeLists.txt | ||
| 15 | +++ b/CMakeLists.txt | ||
| 16 | @@ -172,6 +172,7 @@ endif() | ||
| 17 | if(FLATBUFFERS_BUILD_SHAREDLIB) | ||
| 18 | add_library(flatbuffers_shared SHARED ${FlatBuffers_Library_SRCS}) | ||
| 19 | set_target_properties(flatbuffers_shared PROPERTIES OUTPUT_NAME flatbuffers) | ||
| 20 | + set_target_properties(flatbuffers_shared PROPERTIES VERSION "${PV}") | ||
| 21 | endif() | ||
| 22 | |||
| 23 | function(compile_flatbuffers_schema_to_cpp SRC_FBS) | ||
| 24 | -- | ||
| 25 | 2.1.4 | ||
| 26 | |||
diff --git a/meta-oe/recipes-devtools/flatbuffers/files/0001-flatbuffers-Move-EndianSwap-template-to-flatbuffers-.patch b/meta-oe/recipes-devtools/flatbuffers/files/0001-flatbuffers-Move-EndianSwap-template-to-flatbuffers-.patch deleted file mode 100644 index d736f012bb..0000000000 --- a/meta-oe/recipes-devtools/flatbuffers/files/0001-flatbuffers-Move-EndianSwap-template-to-flatbuffers-.patch +++ /dev/null | |||
| @@ -1,113 +0,0 @@ | |||
| 1 | From a614d8e20fa9e4fd16b699d581ddac2956c120f5 Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Khem Raj <raj.khem@gmail.com> | ||
| 3 | Date: Tue, 19 Sep 2017 10:04:02 -0700 | ||
| 4 | Subject: [PATCH 1/2] flatbuffers: Move EndianSwap template to | ||
| 5 | flatbuffers/base.h | ||
| 6 | |||
| 7 | Clang complains | ||
| 8 | call to function 'EndianSwap' that is neither visible in the template definition nor found by argument-dependent lookup | ||
| 9 | return EndianSwap(t); | ||
| 10 | |||
| 11 | This seems to be due to limitation of two-phase lookup of dependent names in template definitions | ||
| 12 | |||
| 13 | Its not being found using associated namespaces therefore | ||
| 14 | it has to be made visible at the template definition site as well | ||
| 15 | |||
| 16 | Signed-off-by: Khem Raj <raj.khem@gmail.com> | ||
| 17 | --- | ||
| 18 | Upstream-Status: Submitted | ||
| 19 | |||
| 20 | include/flatbuffers/base.h | 33 +++++++++++++++++++++++++++++++++ | ||
| 21 | include/flatbuffers/flatbuffers.h | 32 -------------------------------- | ||
| 22 | 2 files changed, 33 insertions(+), 32 deletions(-) | ||
| 23 | |||
| 24 | diff --git a/include/flatbuffers/base.h b/include/flatbuffers/base.h | ||
| 25 | index f051755..c73fb2d 100644 | ||
| 26 | --- a/include/flatbuffers/base.h | ||
| 27 | +++ b/include/flatbuffers/base.h | ||
| 28 | @@ -150,6 +150,39 @@ typedef uintmax_t largest_scalar_t; | ||
| 29 | // We support aligning the contents of buffers up to this size. | ||
| 30 | #define FLATBUFFERS_MAX_ALIGNMENT 16 | ||
| 31 | |||
| 32 | +template<typename T> T EndianSwap(T t) { | ||
| 33 | + #if defined(_MSC_VER) | ||
| 34 | + #define FLATBUFFERS_BYTESWAP16 _byteswap_ushort | ||
| 35 | + #define FLATBUFFERS_BYTESWAP32 _byteswap_ulong | ||
| 36 | + #define FLATBUFFERS_BYTESWAP64 _byteswap_uint64 | ||
| 37 | + #else | ||
| 38 | + #if defined(__GNUC__) && __GNUC__ * 100 + __GNUC_MINOR__ < 408 | ||
| 39 | + // __builtin_bswap16 was missing prior to GCC 4.8. | ||
| 40 | + #define FLATBUFFERS_BYTESWAP16(x) \ | ||
| 41 | + static_cast<uint16_t>(__builtin_bswap32(static_cast<uint32_t>(x) << 16)) | ||
| 42 | + #else | ||
| 43 | + #define FLATBUFFERS_BYTESWAP16 __builtin_bswap16 | ||
| 44 | + #endif | ||
| 45 | + #define FLATBUFFERS_BYTESWAP32 __builtin_bswap32 | ||
| 46 | + #define FLATBUFFERS_BYTESWAP64 __builtin_bswap64 | ||
| 47 | + #endif | ||
| 48 | + if (sizeof(T) == 1) { // Compile-time if-then's. | ||
| 49 | + return t; | ||
| 50 | + } else if (sizeof(T) == 2) { | ||
| 51 | + auto r = FLATBUFFERS_BYTESWAP16(*reinterpret_cast<uint16_t *>(&t)); | ||
| 52 | + return *reinterpret_cast<T *>(&r); | ||
| 53 | + } else if (sizeof(T) == 4) { | ||
| 54 | + auto r = FLATBUFFERS_BYTESWAP32(*reinterpret_cast<uint32_t *>(&t)); | ||
| 55 | + return *reinterpret_cast<T *>(&r); | ||
| 56 | + } else if (sizeof(T) == 8) { | ||
| 57 | + auto r = FLATBUFFERS_BYTESWAP64(*reinterpret_cast<uint64_t *>(&t)); | ||
| 58 | + return *reinterpret_cast<T *>(&r); | ||
| 59 | + } else { | ||
| 60 | + assert(0); | ||
| 61 | + } | ||
| 62 | +} | ||
| 63 | + | ||
| 64 | + | ||
| 65 | template<typename T> T EndianScalar(T t) { | ||
| 66 | #if FLATBUFFERS_LITTLEENDIAN | ||
| 67 | return t; | ||
| 68 | diff --git a/include/flatbuffers/flatbuffers.h b/include/flatbuffers/flatbuffers.h | ||
| 69 | index 9216cf4..f749dcb 100644 | ||
| 70 | --- a/include/flatbuffers/flatbuffers.h | ||
| 71 | +++ b/include/flatbuffers/flatbuffers.h | ||
| 72 | @@ -37,38 +37,6 @@ inline void EndianCheck() { | ||
| 73 | (void)endiantest; | ||
| 74 | } | ||
| 75 | |||
| 76 | -template<typename T> T EndianSwap(T t) { | ||
| 77 | - #if defined(_MSC_VER) | ||
| 78 | - #define FLATBUFFERS_BYTESWAP16 _byteswap_ushort | ||
| 79 | - #define FLATBUFFERS_BYTESWAP32 _byteswap_ulong | ||
| 80 | - #define FLATBUFFERS_BYTESWAP64 _byteswap_uint64 | ||
| 81 | - #else | ||
| 82 | - #if defined(__GNUC__) && __GNUC__ * 100 + __GNUC_MINOR__ < 408 | ||
| 83 | - // __builtin_bswap16 was missing prior to GCC 4.8. | ||
| 84 | - #define FLATBUFFERS_BYTESWAP16(x) \ | ||
| 85 | - static_cast<uint16_t>(__builtin_bswap32(static_cast<uint32_t>(x) << 16)) | ||
| 86 | - #else | ||
| 87 | - #define FLATBUFFERS_BYTESWAP16 __builtin_bswap16 | ||
| 88 | - #endif | ||
| 89 | - #define FLATBUFFERS_BYTESWAP32 __builtin_bswap32 | ||
| 90 | - #define FLATBUFFERS_BYTESWAP64 __builtin_bswap64 | ||
| 91 | - #endif | ||
| 92 | - if (sizeof(T) == 1) { // Compile-time if-then's. | ||
| 93 | - return t; | ||
| 94 | - } else if (sizeof(T) == 2) { | ||
| 95 | - auto r = FLATBUFFERS_BYTESWAP16(*reinterpret_cast<uint16_t *>(&t)); | ||
| 96 | - return *reinterpret_cast<T *>(&r); | ||
| 97 | - } else if (sizeof(T) == 4) { | ||
| 98 | - auto r = FLATBUFFERS_BYTESWAP32(*reinterpret_cast<uint32_t *>(&t)); | ||
| 99 | - return *reinterpret_cast<T *>(&r); | ||
| 100 | - } else if (sizeof(T) == 8) { | ||
| 101 | - auto r = FLATBUFFERS_BYTESWAP64(*reinterpret_cast<uint64_t *>(&t)); | ||
| 102 | - return *reinterpret_cast<T *>(&r); | ||
| 103 | - } else { | ||
| 104 | - assert(0); | ||
| 105 | - } | ||
| 106 | -} | ||
| 107 | - | ||
| 108 | template<typename T> FLATBUFFERS_CONSTEXPR size_t AlignOf() { | ||
| 109 | #ifdef _MSC_VER | ||
| 110 | return __alignof(T); | ||
| 111 | -- | ||
| 112 | 2.14.1 | ||
| 113 | |||
diff --git a/meta-oe/recipes-devtools/flatbuffers/files/0002-use-__builtin_bswap16-when-building-with-clang.patch b/meta-oe/recipes-devtools/flatbuffers/files/0002-use-__builtin_bswap16-when-building-with-clang.patch deleted file mode 100644 index 460159f275..0000000000 --- a/meta-oe/recipes-devtools/flatbuffers/files/0002-use-__builtin_bswap16-when-building-with-clang.patch +++ /dev/null | |||
| @@ -1,30 +0,0 @@ | |||
| 1 | From 626fe5e043de25e970ebdf061b88c646fa689113 Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Khem Raj <raj.khem@gmail.com> | ||
| 3 | Date: Tue, 19 Sep 2017 10:09:31 -0700 | ||
| 4 | Subject: [PATCH 2/2] use __builtin_bswap16 when building with clang | ||
| 5 | |||
| 6 | clang pretends to be gcc 4.2.0 and therefore the code does | ||
| 7 | not use __builtin_bswap16 but tries to synthesize it | ||
| 8 | |||
| 9 | Signed-off-by: Khem Raj <raj.khem@gmail.com> | ||
| 10 | --- | ||
| 11 | Upstream-Status: Submitted | ||
| 12 | include/flatbuffers/base.h | 2 +- | ||
| 13 | 1 file changed, 1 insertion(+), 1 deletion(-) | ||
| 14 | |||
| 15 | diff --git a/include/flatbuffers/base.h b/include/flatbuffers/base.h | ||
| 16 | index c73fb2d..13e8fac 100644 | ||
| 17 | --- a/include/flatbuffers/base.h | ||
| 18 | +++ b/include/flatbuffers/base.h | ||
| 19 | @@ -156,7 +156,7 @@ template<typename T> T EndianSwap(T t) { | ||
| 20 | #define FLATBUFFERS_BYTESWAP32 _byteswap_ulong | ||
| 21 | #define FLATBUFFERS_BYTESWAP64 _byteswap_uint64 | ||
| 22 | #else | ||
| 23 | - #if defined(__GNUC__) && __GNUC__ * 100 + __GNUC_MINOR__ < 408 | ||
| 24 | + #if defined(__GNUC__) && __GNUC__ * 100 + __GNUC_MINOR__ < 408 && !defined(__clang__) | ||
| 25 | // __builtin_bswap16 was missing prior to GCC 4.8. | ||
| 26 | #define FLATBUFFERS_BYTESWAP16(x) \ | ||
| 27 | static_cast<uint16_t>(__builtin_bswap32(static_cast<uint32_t>(x) << 16)) | ||
| 28 | -- | ||
| 29 | 2.14.1 | ||
| 30 | |||
diff --git a/meta-oe/recipes-devtools/flatbuffers/flatbuffers_1.9.0.bb b/meta-oe/recipes-devtools/flatbuffers/flatbuffers_1.10.0.bb index a8df444858..452e1e65ab 100644 --- a/meta-oe/recipes-devtools/flatbuffers/flatbuffers_1.9.0.bb +++ b/meta-oe/recipes-devtools/flatbuffers/flatbuffers_1.10.0.bb | |||
| @@ -10,22 +10,19 @@ RDEPENDS_${PN}-dev += "${PN}-compiler" | |||
| 10 | 10 | ||
| 11 | LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=a873c5645c184d51e0f9b34e1d7cf559" | 11 | LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=a873c5645c184d51e0f9b34e1d7cf559" |
| 12 | 12 | ||
| 13 | SRCREV = "25a15950f5a24d7217689739ed8f6dac64912d62" | 13 | SRCREV = "c0698cc33f1e534bb59c455909b88cc2726089af" |
| 14 | 14 | ||
| 15 | SRC_URI = "git://github.com/google/flatbuffers.git \ | 15 | SRC_URI = "git://github.com/google/flatbuffers.git" |
| 16 | file://0001-correct-version-for-so-lib.patch \ | ||
| 17 | file://0001-flatbuffers-Move-EndianSwap-template-to-flatbuffers-.patch \ | ||
| 18 | file://0002-use-__builtin_bswap16-when-building-with-clang.patch \ | ||
| 19 | " | ||
| 20 | 16 | ||
| 21 | # Make sure C++11 is used, required for example for GCC 4.9 | 17 | # Make sure C++11 is used, required for example for GCC 4.9 |
| 22 | CXXFLAGS += "-std=c++11" | 18 | CXXFLAGS += "-std=c++11" |
| 23 | BUILD_CXXFLAGS += "-std=c++11" | 19 | BUILD_CXXFLAGS += "-std=c++11" |
| 24 | 20 | ||
| 21 | # BUILD_TYPE=Release is required, otherwise flatc is not installed | ||
| 25 | EXTRA_OECMAKE += "\ | 22 | EXTRA_OECMAKE += "\ |
| 26 | -DFLATBUFFERS_BUILD_TESTS=OFF \ | 23 | -DCMAKE_BUILD_TYPE=Release \ |
| 24 | -DFLATBUFFERS_BUILD_TESTS=OFF \ | ||
| 27 | -DFLATBUFFERS_BUILD_SHAREDLIB=ON \ | 25 | -DFLATBUFFERS_BUILD_SHAREDLIB=ON \ |
| 28 | -DPV=${PV} \ | ||
| 29 | " | 26 | " |
| 30 | 27 | ||
| 31 | inherit cmake | 28 | inherit cmake |
