diff --git a/0001-generate-gcc-pragmas-to-ignore-Wclass-memaccess.patch b/0001-generate-gcc-pragmas-to-ignore-Wclass-memaccess.patch deleted file mode 100644 index f56ec5fddf603146146795582ed575befa68a150..0000000000000000000000000000000000000000 --- a/0001-generate-gcc-pragmas-to-ignore-Wclass-memaccess.patch +++ /dev/null @@ -1,156 +0,0 @@ -From c80316a3efc9244af035e1ebfe2b4df15d691c96 Mon Sep 17 00:00:00 2001 -From: Sergey Avseyev -Date: Thu, 10 Jan 2019 07:37:09 +0300 -Subject: [PATCH] generate gcc pragmas to ignore -Wclass-memaccess - ---- - samples/monster_generated.h | 7 +++++++ - src/idl_gen_cpp.cpp | 7 +++++++ - tests/monster_test_generated.h | 21 +++++++++++++++++++ - .../namespace_test1_generated.h | 7 +++++++ - tests/union_vector/union_vector_generated.h | 14 +++++++++++++ - 5 files changed, 56 insertions(+) - -diff --git a/samples/monster_generated.h b/samples/monster_generated.h -index 5ac4be3..ae1fd04 100644 ---- a/samples/monster_generated.h -+++ b/samples/monster_generated.h -@@ -164,7 +164,14 @@ FLATBUFFERS_MANUALLY_ALIGNED_STRUCT(4) Vec3 FLATBUFFERS_FINAL_CLASS { - - public: - Vec3() { -+#if defined(__GNUC__) -+#pragma GCC diagnostic push -+#pragma GCC diagnostic ignored "-Wclass-memaccess" -+#endif - memset(this, 0, sizeof(Vec3)); -+#if defined(__GNUC__) -+#pragma GCC diagnostic pop -+#endif - } - Vec3(float _x, float _y, float _z) - : x_(flatbuffers::EndianScalar(_x)), -diff --git a/src/idl_gen_cpp.cpp b/src/idl_gen_cpp.cpp -index a0abfdd..8d35673 100644 ---- a/src/idl_gen_cpp.cpp -+++ b/src/idl_gen_cpp.cpp -@@ -2585,7 +2585,14 @@ class CppGenerator : public BaseGenerator { - - // Generate a default constructor. - code_ += " {{STRUCT_NAME}}() {"; -+ code_ += "#if defined(__GNUC__)"; -+ code_ += "#pragma GCC diagnostic push"; -+ code_ += "#pragma GCC diagnostic ignored \"-Wclass-memaccess\""; -+ code_ += "#endif"; - code_ += " memset(this, 0, sizeof({{STRUCT_NAME}}));"; -+ code_ += "#if defined(__GNUC__)"; -+ code_ += "#pragma GCC diagnostic pop"; -+ code_ += "#endif"; - code_ += " }"; - - // Generate a constructor that takes all fields as arguments. -diff --git a/tests/monster_test_generated.h b/tests/monster_test_generated.h -index 0f5e252..4b0aa9f 100644 ---- a/tests/monster_test_generated.h -+++ b/tests/monster_test_generated.h -@@ -269,7 +269,14 @@ FLATBUFFERS_MANUALLY_ALIGNED_STRUCT(2) Test FLATBUFFERS_FINAL_CLASS { - - public: - Test() { -+#if defined(__GNUC__) -+#pragma GCC diagnostic push -+#pragma GCC diagnostic ignored "-Wclass-memaccess" -+#endif - memset(this, 0, sizeof(Test)); -+#if defined(__GNUC__) -+#pragma GCC diagnostic pop -+#endif - } - Test(int16_t _a, int8_t _b) - : a_(flatbuffers::EndianScalar(_a)), -@@ -312,7 +319,14 @@ FLATBUFFERS_MANUALLY_ALIGNED_STRUCT(16) Vec3 FLATBUFFERS_FINAL_CLASS { - - public: - Vec3() { -+#if defined(__GNUC__) -+#pragma GCC diagnostic push -+#pragma GCC diagnostic ignored "-Wclass-memaccess" -+#endif - memset(this, 0, sizeof(Vec3)); -+#if defined(__GNUC__) -+#pragma GCC diagnostic pop -+#endif - } - Vec3(float _x, float _y, float _z, double _test1, Color _test2, const Test &_test3) - : x_(flatbuffers::EndianScalar(_x)), -@@ -384,7 +398,14 @@ FLATBUFFERS_MANUALLY_ALIGNED_STRUCT(4) Ability FLATBUFFERS_FINAL_CLASS { - - public: - Ability() { -+#if defined(__GNUC__) -+#pragma GCC diagnostic push -+#pragma GCC diagnostic ignored "-Wclass-memaccess" -+#endif - memset(this, 0, sizeof(Ability)); -+#if defined(__GNUC__) -+#pragma GCC diagnostic pop -+#endif - } - Ability(uint32_t _id, uint32_t _distance) - : id_(flatbuffers::EndianScalar(_id)), -diff --git a/tests/namespace_test/namespace_test1_generated.h b/tests/namespace_test/namespace_test1_generated.h -index d82a577..a7637bc 100644 ---- a/tests/namespace_test/namespace_test1_generated.h -+++ b/tests/namespace_test/namespace_test1_generated.h -@@ -56,7 +56,14 @@ FLATBUFFERS_MANUALLY_ALIGNED_STRUCT(4) StructInNestedNS FLATBUFFERS_FINAL_CLASS - - public: - StructInNestedNS() { -+#if defined(__GNUC__) -+#pragma GCC diagnostic push -+#pragma GCC diagnostic ignored "-Wclass-memaccess" -+#endif - memset(this, 0, sizeof(StructInNestedNS)); -+#if defined(__GNUC__) -+#pragma GCC diagnostic pop -+#endif - } - StructInNestedNS(int32_t _a, int32_t _b) - : a_(flatbuffers::EndianScalar(_a)), -diff --git a/tests/union_vector/union_vector_generated.h b/tests/union_vector/union_vector_generated.h -index c5b2250..57d208e 100644 ---- a/tests/union_vector/union_vector_generated.h -+++ b/tests/union_vector/union_vector_generated.h -@@ -188,7 +188,14 @@ FLATBUFFERS_MANUALLY_ALIGNED_STRUCT(4) Rapunzel FLATBUFFERS_FINAL_CLASS { - - public: - Rapunzel() { -+#if defined(__GNUC__) -+#pragma GCC diagnostic push -+#pragma GCC diagnostic ignored "-Wclass-memaccess" -+#endif - memset(this, 0, sizeof(Rapunzel)); -+#if defined(__GNUC__) -+#pragma GCC diagnostic pop -+#endif - } - Rapunzel(int32_t _hair_length) - : hair_length_(flatbuffers::EndianScalar(_hair_length)) { -@@ -213,7 +220,14 @@ FLATBUFFERS_MANUALLY_ALIGNED_STRUCT(4) BookReader FLATBUFFERS_FINAL_CLASS { - - public: - BookReader() { -+#if defined(__GNUC__) -+#pragma GCC diagnostic push -+#pragma GCC diagnostic ignored "-Wclass-memaccess" -+#endif - memset(this, 0, sizeof(BookReader)); -+#if defined(__GNUC__) -+#pragma GCC diagnostic pop -+#endif - } - BookReader(int32_t _books_read) - : books_read_(flatbuffers::EndianScalar(_books_read)) { --- -2.20.1 - diff --git a/Handle-git-program-or-.git-folder-absence.patch b/Handle-git-program-or-.git-folder-absence.patch deleted file mode 100644 index da60829cad9199cef561dac765b0bf9b47548d45..0000000000000000000000000000000000000000 --- a/Handle-git-program-or-.git-folder-absence.patch +++ /dev/null @@ -1,53 +0,0 @@ -From 7e4124d6e6ccafb267f80f3e57e3780913d5cbe5 Mon Sep 17 00:00:00 2001 -From: Dmitry Volosnykh -Date: Mon, 4 May 2020 23:23:41 +0300 -Subject: [PATCH] Handle git program or .git folder absence (#5878) - -Assume version is 0.0.0.0 in such cases. ---- - CMake/Version.cmake | 37 +++++++++++++++++++++++++++---------- - 1 file changed, 27 insertions(+), 10 deletions(-) - -diff --git a/CMake/Version.cmake b/CMake/Version.cmake -index db6613b840..0bed50f6e2 100644 ---- a/CMake/Version.cmake -+++ b/CMake/Version.cmake -@@ -1,11 +1,28 @@ -+set(VERSION_MAJOR 1) -+set(VERSION_MINOR 10) -+set(VERSION_PATCH 0) -+set(VERSION_COMMIT 0) -+ - find_program(GIT git) --execute_process( -- COMMAND ${GIT} describe -- WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} -- OUTPUT_VARIABLE GIT_DESCRIBE_DIRTY -- OUTPUT_STRIP_TRAILING_WHITESPACE --) --string(REGEX REPLACE "^v([0-9]+)\\..*" "\\1" VERSION_MAJOR "${GIT_DESCRIBE_DIRTY}") --string(REGEX REPLACE "^v[0-9]+\\.([0-9]+).*" "\\1" VERSION_MINOR "${GIT_DESCRIBE_DIRTY}") --string(REGEX REPLACE "^v[0-9]+\\.[0-9]+\\.([0-9]+).*" "\\1" VERSION_PATCH "${GIT_DESCRIBE_DIRTY}") --string(REGEX REPLACE "^v[0-9]+\\.[0-9]+\\.[0-9]+\\-([0-9]+).*" "\\1" VERSION_COMMIT "${GIT_DESCRIBE_DIRTY}") -+if(GIT) -+ execute_process( -+ COMMAND ${GIT} describe -+ WORKING_DIRECTORY ${CMAKE_SOURCE_DIR} -+ OUTPUT_VARIABLE GIT_DESCRIBE_DIRTY -+ OUTPUT_STRIP_TRAILING_WHITESPACE -+ RESULT_VARIABLE GIT_DESCRIBE_RESULT -+ ) -+ -+ if(GIT_DESCRIBE_RESULT EQUAL 0) -+ string(REGEX REPLACE "^v([0-9]+)\\..*" "\\1" VERSION_MAJOR "${GIT_DESCRIBE_DIRTY}") -+ string(REGEX REPLACE "^v[0-9]+\\.([0-9]+).*" "\\1" VERSION_MINOR "${GIT_DESCRIBE_DIRTY}") -+ string(REGEX REPLACE "^v[0-9]+\\.[0-9]+\\.([0-9]+).*" "\\1" VERSION_PATCH "${GIT_DESCRIBE_DIRTY}") -+ string(REGEX REPLACE "^v[0-9]+\\.[0-9]+\\.[0-9]+\\-([0-9]+).*" "\\1" VERSION_COMMIT "${GIT_DESCRIBE_DIRTY}") -+ else() -+ message(WARNING "git describe failed with exit code: ${GIT_DESCRIBE_RESULT}") -+ endif() -+else() -+ message(WARNING "git is not found") -+endif() -+ -+message("Proceeding with version: ${VERSION_MAJOR}.${VERSION_MINOR}.${VERSION_PATCH}.${VERSION_COMMIT}") diff --git a/fix-compilation-failed.patch b/fix-compilation-failed.patch deleted file mode 100644 index f2fd2bfc4f4e650d0b4d10b7d22b8de0c0d98c56..0000000000000000000000000000000000000000 --- a/fix-compilation-failed.patch +++ /dev/null @@ -1,34 +0,0 @@ -diff -Nur a/include/flatbuffers/base.h b/include/flatbuffers/base.h ---- a/include/flatbuffers/base.h 2018-10-04 03:48:47.000000000 +0800 -+++ b/include/flatbuffers/base.h 2021-08-02 19:48:18.468933100 +0800 -@@ -266,13 +266,30 @@ - return EndianScalar(*reinterpret_cast(p)); - } - -+#if defined(__GNUC__) && !defined(__clang__) -+ #define FLATBUFFERS_GCC (__GNUC__ * 10000 + __GNUC_MINOR__ * 100 + __GNUC_PATCHLEVEL__) -+#else -+ #define FLATBUFFERS_GCC 0 -+#endif -+ -+// See https://github.com/google/flatbuffers/issues/5950 -+#if (FLATBUFFERS_GCC >= 100000) && (FLATBUFFERS_GCC < 110000) -+ #pragma GCC diagnostic push -+ #pragma GCC diagnostic ignored "-Wstringop-overflow" -+#endif -+ - template void WriteScalar(void *p, T t) { - *reinterpret_cast(p) = EndianScalar(t); - } - -+#if (FLATBUFFERS_GCC >= 100000) && (FLATBUFFERS_GCC < 110000) -+ #pragma GCC diagnostic pop -+#endif -+ - // Computes how many bytes you'd have to pad to be able to write an - // "scalar_size" scalar if the buffer had grown to "buf_size" (downwards in - // memory). -+ - inline size_t PaddingBytes(size_t buf_size, size_t scalar_size) { - return ((~buf_size) + 1) & (scalar_size - 1); - } diff --git a/flatbuffers-1.10.0.tar.gz b/flatbuffers-1.10.0.tar.gz deleted file mode 100644 index 34ada24bdd35e785df11093bad6042285d3ed092..0000000000000000000000000000000000000000 Binary files a/flatbuffers-1.10.0.tar.gz and /dev/null differ diff --git a/flatbuffers-2.0.6.tar.gz b/flatbuffers-2.0.6.tar.gz new file mode 100644 index 0000000000000000000000000000000000000000..2aa8f0980f16ba75b6f19cf1d85c49fc679f7f2b Binary files /dev/null and b/flatbuffers-2.0.6.tar.gz differ diff --git a/flatbuffers.spec b/flatbuffers.spec index 744ba944fa3b87b450404ae7b50f76a0684e2a54..f7b7bf18a348a336b8f7d541bde10ecc659bd847 100644 --- a/flatbuffers.spec +++ b/flatbuffers.spec @@ -4,19 +4,15 @@ %bcond_without tests %endif Name: flatbuffers -Version: 1.10.0 -Release: 2 +Version: 2.0.6 +Release: 1 Summary: Memory efficient serialization library License: Apache-2.0 URL: https://github.com/google/flatbuffers -Source0: https://github.com/google/flatbuffers/archive/v%{version}/%{name}-%{version}.tar.gz +Source0: https://github.com/google/flatbuffers/archive/refs/tags/flatbuffers-%{version}.tar.gz Source1: flatc.1 Source2: flatbuffers.7 -Patch0: 0001-generate-gcc-pragmas-to-ignore-Wclass-memaccess.patch -Patch1: Handle-git-program-or-.git-folder-absence.patch -Patch2: fix-compilation-failed.patch - BuildRequires: gcc-c++ cmake >= 2.8.9 Provides: bundled(grpc) %description @@ -31,9 +27,16 @@ Requires: %{name}%{?_isa} = %{version}-%{release} %description devel %{summary}. +%package -n python3-flatbuffers +Summary: The FlatBuffers serialization format for Python +BuildRequires: python3-devel +BuildRequires: python3-setuptools +%description -n python3-flatbuffers +Python runtime library for use with the Flatbuffers serialization format. + %prep %autosetup -p1 -rm -rf js net php python docs go java js biicode {samples/,}android +rm -rf js net php docs go java js biicode {samples/,}android chmod -x readme.md %cmake -DCMAKE_BUILD_TYPE=Release \ -DFLATBUFFERS_BUILD_SHAREDLIB=ON \ @@ -44,12 +47,20 @@ chmod -x readme.md %build %make_build +pushd python +%py3_build +popd + %install %make_install mkdir -p %{buildroot}%{_mandir}/man{1,7} cp -p %SOURCE1 %{buildroot}%{_mandir}/man1/flatc.1 cp -p %SOURCE2 %{buildroot}%{_mandir}/man7/flatbuffers.7 +pushd python +%py3_install +popd + %check %if %{with tests} make test @@ -70,9 +81,22 @@ make test %{_includedir}/flatbuffers %{_libdir}/libflatbuffers.so %{_mandir}/man7/flatbuffers.7* +%{_libdir}/pkgconfig/flatbuffers.pc %{_libdir}/cmake/flatbuffers/*.cmake +%files -n python3-flatbuffers +%{python3_sitelib}/ + %changelog +* Thu Apr 20 2023 Zhang Chao - 2.0.6-1 +- Upgrade to 2.0.6 + +* Tue Nov 22 2022 Bin Hu - 2.0.0-2 +- add python subpackage for tensorflow 2.10 build + +* Tue Aug 17 2021 yaoxin - 2.0.0-1 +- Upgrade 2.0.0 to fix CVE-2020-35864 + * Mon Aug 2 2021 Haiwei Li - 1.10.0-2 - Fix complication failed due to gcc upgrade