From 0cad656a9ec5a7903f3d9c0c80963f5d561b0f02 Mon Sep 17 00:00:00 2001 From: Romain Naour Date: Fri, 30 Jun 2017 23:57:07 +0200 Subject: [PATCH] package/lugaru: backport upstream fix Fixes: http://autobuild.buildroot.net/results/389/38917f8420695a9dbb24830fef04159252fceea0 Signed-off-by: Romain Naour Signed-off-by: Thomas Petazzoni --- ...matched-usage-length-build-fail-on-g.patch | 58 +++++++++++++++++++ 1 file changed, 58 insertions(+) create mode 100644 package/lugaru/0002-Fix-mismatched-usage-length-build-fail-on-g.patch diff --git a/package/lugaru/0002-Fix-mismatched-usage-length-build-fail-on-g.patch b/package/lugaru/0002-Fix-mismatched-usage-length-build-fail-on-g.patch new file mode 100644 index 0000000000..9c362a981e --- /dev/null +++ b/package/lugaru/0002-Fix-mismatched-usage-length-build-fail-on-g.patch @@ -0,0 +1,58 @@ +From 5a0c9f6358169b447840acdb721250ce932cb180 Mon Sep 17 00:00:00 2001 +From: Martin Erik Werner +Date: Wed, 8 Mar 2017 22:51:16 +0100 +Subject: [PATCH] Fix mismatched usage length, build fail on g++ +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +The length of const option::Descriptor usage[] is intended to be +inferred based on the initialisation in Source/main.cpp, however, the +extern declaration in Source/Game.hpp hard-codes it to 13. + +Remove the hard-coded 13 in the extern declaration, in favour of the +inferred length. + +This also fixes the follwoing build failure with g++ (Debian 4.9.2-10) +4.9.2: +(...)/Source/main.cpp:602:5: error: uninitialized const member ‘option::Descriptor::index’ + }; + ^ +(...)/Source/main.cpp:602:5: warning: missing initializer for member ‘option::Descriptor::index’ [-Wmissing-field-initializers] +(...)/Source/main.cpp:602:5: error: uninitialized const member ‘option::Descriptor::type’ +(...)/Source/main.cpp:602:5: warning: missing initializer for member ‘option::Descriptor::type’ [-Wmissing-field-initializers] +(...)/Source/main.cpp:602:5: error: uninitialized const member ‘option::Descriptor::shortopt’ +(...)/Source/main.cpp:602:5: warning: missing initializer for member ‘option::Descriptor::shortopt’ [-Wmissing-field-initializers] +(...)/Source/main.cpp:602:5: error: uninitialized const member ‘option::Descriptor::longopt’ +(...)/Source/main.cpp:602:5: warning: missing initializer for member ‘option::Descriptor::longopt’ [-Wmissing-field-initializers] +(...)/Source/main.cpp:602:5: error: uninitialized const member ‘option::Descriptor::check_arg’ +(...)/Source/main.cpp:602:5: warning: missing initializer for member ‘option::Descriptor::check_arg’ [-Wmissing-field-initializers] +(...)/Source/main.cpp:602:5: warning: missing initializer for member ‘option::Descriptor::help’ [-Wmissing-field-initializers] +CMakeFiles/lugaru.dir/build.make:54: recipe for target 'CMakeFiles/lugaru.dir/Source/main.cpp.o' failed + +Signed-off-by: Martin Erik Werner + +[Romain: backport to v1.2] +Signed-off-by: Romain Naour + +(cherry picked from commit dd685fe9080c2853422d8272792691358ea07dfc) +--- + Source/Game.hpp | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/Source/Game.hpp b/Source/Game.hpp +index 51232cc..9bb6adb 100644 +--- a/Source/Game.hpp ++++ b/Source/Game.hpp +@@ -234,7 +234,7 @@ enum optionIndex + /* Number of options + 1 */ + const int commandLineOptionsNumber = 10; + +-extern const option::Descriptor usage[13]; ++extern const option::Descriptor usage[]; + + extern option::Option commandLineOptions[commandLineOptionsNumber]; + extern option::Option* commandLineOptionsBuffer; +-- +2.9.4 +