summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAndrej Valek <andrej.valek@siemens.com>2021-11-14 21:04:34 +0100
committerRichard Purdie <richard.purdie@linuxfoundation.org>2021-11-24 21:12:46 +0000
commit82077a92b2d1791e1be219835e688b73dfd1a33a (patch)
tree6ff31928db08954e42ceadf83049319a40d1c180
parente013219d8c0b3e52e3f52e05caf2f53927004c73 (diff)
downloadpoky-82077a92b2d1791e1be219835e688b73dfd1a33a.tar.gz
mklibs-native: drop deprecated cpp17 exceptions
gcc11 has -std=gnu++17 as default. Remove deprecated C++17 exceptions based on http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2016/p0003r5.html. (From OE-Core rev: 5f310b5ba647196ad42c3c54b9459db0e22d5b41) Signed-off-by: Andrej Valek <andrej.valek@siemens.com> Signed-off-by: Steve Sakoman <steve@sakoman.com> (cherry picked from commit ef8b7946b4793db653ef7dd716e1d3f919a84725) Signed-off-by: Anuj Mittal <anuj.mittal@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-rw-r--r--meta/recipes-devtools/mklibs/files/remove-deprecated-exception-specification-cpp17.patch431
-rw-r--r--meta/recipes-devtools/mklibs/mklibs-native_0.1.44.bb1
2 files changed, 432 insertions, 0 deletions
diff --git a/meta/recipes-devtools/mklibs/files/remove-deprecated-exception-specification-cpp17.patch b/meta/recipes-devtools/mklibs/files/remove-deprecated-exception-specification-cpp17.patch
new file mode 100644
index 0000000000..f96cc7d302
--- /dev/null
+++ b/meta/recipes-devtools/mklibs/files/remove-deprecated-exception-specification-cpp17.patch
@@ -0,0 +1,431 @@
1From 597c7a8333df84a87cc48fb8477b603ffbf372a6 Mon Sep 17 00:00:00 2001
2From: Andrej Valek <andrej.valek@siemens.com>
3Date: Mon, 23 Aug 2021 12:45:11 +0200
4Subject: [PATCH] feat(cpp17): remove deprecated exception specifications for
5 C++ 17
6
7Upstream-Status: Submitted [https://salsa.debian.org/installer-team/mklibs/-/merge_requests/2]
8
9based on: http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2016/p0003r5.html
10
11Signed-off-by: Andrej Valek <andrej.valek@siemens.com>
12---
13 src/mklibs-readelf/elf.cpp | 48 ++++++++++++++++++++---------------------
14 src/mklibs-readelf/elf.hpp | 18 ++++++++--------
15 src/mklibs-readelf/elf_data.hpp | 36 +++++++++++++++----------------
16 3 files changed, 51 insertions(+), 51 deletions(-)
17
18diff --git a/src/mklibs-readelf/elf.cpp b/src/mklibs-readelf/elf.cpp
19index 0e4c0f3..2e6d0f6 100644
20--- a/src/mklibs-readelf/elf.cpp
21+++ b/src/mklibs-readelf/elf.cpp
22@@ -36,7 +36,7 @@ file::~file () throw ()
23 delete *it;
24 }
25
26-file *file::open (const char *filename) throw (std::bad_alloc, std::runtime_error)
27+file *file::open (const char *filename) throw ()
28 {
29 struct stat buf;
30 int fd;
31@@ -72,7 +72,7 @@ file *file::open (const char *filename) throw (std::bad_alloc, std::runtime_erro
32 }
33
34 template<typename _class>
35-file *file::open_class(uint8_t *mem, size_t len) throw (std::bad_alloc, std::runtime_error)
36+file *file::open_class(uint8_t *mem, size_t len) throw ()
37 {
38 switch (mem[EI_DATA])
39 {
40@@ -86,7 +86,7 @@ file *file::open_class(uint8_t *mem, size_t len) throw (std::bad_alloc, std::run
41 }
42
43 template <typename _class, typename _data>
44-file_data<_class, _data>::file_data(uint8_t *mem, size_t len) throw (std::bad_alloc, std::runtime_error)
45+file_data<_class, _data>::file_data(uint8_t *mem, size_t len) throw ()
46 : file(mem, len)
47 {
48 if (mem[EI_CLASS] != _class::id)
49@@ -190,7 +190,7 @@ section_data<_class, _data>::section_data(Shdr *shdr, uint8_t *mem) throw ()
50 }
51
52 template <typename _class, typename _data>
53-void section_data<_class, _data>::update(const file &file) throw (std::bad_alloc)
54+void section_data<_class, _data>::update(const file &file) throw ()
55 {
56 const section_type<section_type_STRTAB> &section =
57 dynamic_cast<const section_type<section_type_STRTAB> &>(file.get_section(file.get_shstrndx()));
58@@ -204,7 +204,7 @@ section_type<section_type_DYNAMIC>::~section_type() throw ()
59 }
60
61 template <typename _class, typename _data>
62-section_real<_class, _data, section_type_DYNAMIC>::section_real(Shdr *header, uint8_t *mem) throw (std::bad_alloc)
63+section_real<_class, _data, section_type_DYNAMIC>::section_real(Shdr *header, uint8_t *mem) throw ()
64 : section_data<_class, _data>(header, mem)
65 {
66 if (this->type != SHT_DYNAMIC)
67@@ -221,7 +221,7 @@ section_real<_class, _data, section_type_DYNAMIC>::section_real(Shdr *header, ui
68 }
69
70 template <typename _class, typename _data>
71-void section_real<_class, _data, section_type_DYNAMIC>::update(const file &file) throw (std::bad_alloc)
72+void section_real<_class, _data, section_type_DYNAMIC>::update(const file &file) throw ()
73 {
74 section_data<_class, _data>::update(file);
75
76@@ -243,7 +243,7 @@ section_type<section_type_DYNSYM>::~section_type() throw ()
77 }
78
79 template <typename _class, typename _data>
80-section_real<_class, _data, section_type_DYNSYM>::section_real(Shdr *header, uint8_t *mem) throw (std::bad_alloc)
81+section_real<_class, _data, section_type_DYNSYM>::section_real(Shdr *header, uint8_t *mem) throw ()
82 : section_data<_class, _data>(header, mem)
83 {
84 if (this->type != SHT_DYNSYM)
85@@ -260,7 +260,7 @@ section_real<_class, _data, section_type_DYNSYM>::section_real(Shdr *header, uin
86 }
87
88 template <typename _class, typename _data>
89-void section_real<_class, _data, section_type_DYNSYM>::update(const file &file) throw (std::bad_alloc)
90+void section_real<_class, _data, section_type_DYNSYM>::update(const file &file) throw ()
91 {
92 section_data<_class, _data>::update (file);
93
94@@ -285,7 +285,7 @@ const version_definition *section_type<section_type_GNU_VERDEF>::get_version_def
95 }
96
97 template <typename _class, typename _data>
98-section_real<_class, _data, section_type_GNU_VERDEF>::section_real(Shdr *header, uint8_t *mem) throw (std::bad_alloc)
99+section_real<_class, _data, section_type_GNU_VERDEF>::section_real(Shdr *header, uint8_t *mem) throw ()
100 : section_data<_class, _data>(header, mem)
101 {
102 if (this->type != SHT_GNU_verdef)
103@@ -307,7 +307,7 @@ section_real<_class, _data, section_type_GNU_VERDEF>::section_real(Shdr *header,
104 }
105
106 template <typename _class, typename _data>
107-void section_real<_class, _data, section_type_GNU_VERDEF>::update(const file &file) throw (std::bad_alloc)
108+void section_real<_class, _data, section_type_GNU_VERDEF>::update(const file &file) throw ()
109 {
110 section_data<_class, _data>::update(file);
111
112@@ -333,7 +333,7 @@ const version_requirement_entry *section_type<section_type_GNU_VERNEED>::get_ver
113
114 template <typename _class, typename _data>
115 section_real<_class, _data, section_type_GNU_VERNEED>::
116-section_real(Shdr *header, uint8_t *mem) throw (std::bad_alloc)
117+section_real(Shdr *header, uint8_t *mem) throw ()
118 : section_data<_class, _data> (header, mem)
119 {
120 if (this->type != SHT_GNU_verneed)
121@@ -355,7 +355,7 @@ section_real(Shdr *header, uint8_t *mem) throw (std::bad_alloc)
122 }
123
124 template <typename _class, typename _data>
125-void section_real<_class, _data, section_type_GNU_VERNEED>::update(const file &file) throw (std::bad_alloc)
126+void section_real<_class, _data, section_type_GNU_VERNEED>::update(const file &file) throw ()
127 {
128 section_data<_class, _data>::update(file);
129
130@@ -372,7 +372,7 @@ void section_real<_class, _data, section_type_GNU_VERNEED>::update(const file &f
131
132 template <typename _class, typename _data>
133 section_real<_class, _data, section_type_GNU_VERSYM>::
134-section_real (Shdr *header, uint8_t *mem) throw (std::bad_alloc)
135+section_real (Shdr *header, uint8_t *mem) throw ()
136 : section_data<_class, _data> (header, mem)
137 {
138 if (this->type != SHT_GNU_versym)
139@@ -399,7 +399,7 @@ segment_data<_class, _data>::segment_data (Phdr *phdr, uint8_t *mem) throw ()
140 }
141
142 template <typename _class, typename _data>
143-segment_real<_class, _data, segment_type_INTERP>::segment_real (Phdr *header, uint8_t *mem) throw (std::bad_alloc)
144+segment_real<_class, _data, segment_type_INTERP>::segment_real (Phdr *header, uint8_t *mem) throw ()
145 : segment_data<_class, _data> (header, mem)
146 {
147 if (this->type != PT_INTERP)
148@@ -429,13 +429,13 @@ dynamic_data<_class, _data>::dynamic_data (Dyn *dyn) throw ()
149 }
150
151 template <typename _class, typename _data>
152-void dynamic_data<_class, _data>::update_string(const section_type<section_type_STRTAB> &section) throw (std::bad_alloc)
153+void dynamic_data<_class, _data>::update_string(const section_type<section_type_STRTAB> &section) throw ()
154 {
155 if (is_string)
156 val_string = section.get_string(val);
157 }
158
159-std::string symbol::get_version () const throw (std::bad_alloc)
160+std::string symbol::get_version () const throw ()
161 {
162 if (verneed)
163 return verneed->get_name();
164@@ -445,7 +445,7 @@ std::string symbol::get_version () const throw (std::bad_alloc)
165 return "Base";
166 }
167
168-std::string symbol::get_version_file () const throw (std::bad_alloc)
169+std::string symbol::get_version_file () const throw ()
170 {
171 if (verneed)
172 return verneed->get_file();
173@@ -453,7 +453,7 @@ std::string symbol::get_version_file () const throw (std::bad_alloc)
174 return "None";
175 }
176
177-std::string symbol::get_name_version () const throw (std::bad_alloc)
178+std::string symbol::get_name_version () const throw ()
179 {
180 std::string ver;
181
182@@ -478,13 +478,13 @@ symbol_data<_class, _data>::symbol_data (Sym *sym) throw ()
183 }
184
185 template <typename _class, typename _data>
186-void symbol_data<_class, _data>::update_string(const section_type<section_type_STRTAB> &section) throw (std::bad_alloc)
187+void symbol_data<_class, _data>::update_string(const section_type<section_type_STRTAB> &section) throw ()
188 {
189 name_string = section.get_string(name);
190 }
191
192 template <typename _class, typename _data>
193-void symbol_data<_class, _data>::update_version(const file &file, uint16_t index) throw (std::bad_alloc)
194+void symbol_data<_class, _data>::update_version(const file &file, uint16_t index) throw ()
195 {
196 if (!file.get_section_GNU_VERSYM())
197 return;
198@@ -531,13 +531,13 @@ version_definition_data<_class, _data>::version_definition_data (Verdef *verdef)
199 }
200
201 template <typename _class, typename _data>
202-void version_definition_data<_class, _data>::update_string(const section_type<section_type_STRTAB> &section) throw (std::bad_alloc)
203+void version_definition_data<_class, _data>::update_string(const section_type<section_type_STRTAB> &section) throw ()
204 {
205 for (std::vector<uint32_t>::iterator it = names.begin(); it != names.end(); ++it)
206 names_string.push_back(section.get_string(*it));
207 }
208
209-version_requirement::version_requirement() throw (std::bad_alloc)
210+version_requirement::version_requirement() throw ()
211 : file_string("None")
212 { }
213
214@@ -561,7 +561,7 @@ version_requirement_data<_class, _data>::version_requirement_data (Verneed *vern
215
216 template <typename _class, typename _data>
217 void version_requirement_data<_class, _data>::
218-update_string(const section_type<section_type_STRTAB> &section) throw (std::bad_alloc)
219+update_string(const section_type<section_type_STRTAB> &section) throw ()
220 {
221 file_string = section.get_string(file);
222
223@@ -596,7 +596,7 @@ version_requirement_entry_data(Vernaux *vna, const version_requirement &verneed)
224
225 template <typename _class, typename _data>
226 void version_requirement_entry_data<_class, _data>::
227-update_string(const section_type<section_type_STRTAB> &section) throw (std::bad_alloc)
228+update_string(const section_type<section_type_STRTAB> &section) throw ()
229 {
230 name_string = section.get_string(name);
231 }
232diff --git a/src/mklibs-readelf/elf.hpp b/src/mklibs-readelf/elf.hpp
233index 70e61cd..afb0c9e 100644
234--- a/src/mklibs-readelf/elf.hpp
235+++ b/src/mklibs-readelf/elf.hpp
236@@ -49,7 +49,7 @@ namespace Elf
237 const uint16_t get_shstrndx() const throw () { return shstrndx; }
238
239 const std::vector<section *> get_sections() const throw () { return sections; };
240- const section &get_section(unsigned int i) const throw (std::out_of_range) { return *sections.at(i); };
241+ const section &get_section(unsigned int i) const throw () { return *sections.at(i); };
242 const section_type<section_type_DYNAMIC> *get_section_DYNAMIC() const throw () { return section_DYNAMIC; };
243 const section_type<section_type_DYNSYM> *get_section_DYNSYM() const throw () { return section_DYNSYM; };
244 const section_type<section_type_GNU_VERDEF> *get_section_GNU_VERDEF() const throw () { return section_GNU_VERDEF; };
245@@ -59,13 +59,13 @@ namespace Elf
246 const std::vector<segment *> get_segments() const throw () { return segments; };
247 const segment_type<segment_type_INTERP> *get_segment_INTERP() const throw () { return segment_INTERP; };
248
249- static file *open(const char *filename) throw (std::bad_alloc, std::runtime_error);
250+ static file *open(const char *filename) throw ();
251
252 protected:
253- file(uint8_t *mem, size_t len) throw (std::bad_alloc) : mem(mem), len(len) { }
254+ file(uint8_t *mem, size_t len) throw () : mem(mem), len(len) { }
255
256 template<typename _class>
257- static file *open_class(uint8_t *, size_t) throw (std::bad_alloc, std::runtime_error);
258+ static file *open_class(uint8_t *, size_t) throw ();
259
260 uint16_t type;
261 uint16_t machine;
262@@ -128,7 +128,7 @@ namespace Elf
263 class section_type<section_type_STRTAB> : public virtual section
264 {
265 public:
266- std::string get_string(uint32_t offset) const throw (std::bad_alloc)
267+ std::string get_string(uint32_t offset) const throw ()
268 {
269 return std::string(reinterpret_cast<const char *> (mem + offset));
270 }
271@@ -263,10 +263,10 @@ namespace Elf
272 uint8_t get_bind () const throw () { return bind; }
273 uint8_t get_type () const throw () { return type; }
274 const std::string &get_name_string() const throw () { return name_string; }
275- std::string get_version() const throw (std::bad_alloc);
276- std::string get_version_file() const throw (std::bad_alloc);
277+ std::string get_version() const throw ();
278+ std::string get_version_file() const throw ();
279 uint16_t get_version_data() const throw () { return versym; }
280- std::string get_name_version() const throw (std::bad_alloc);
281+ std::string get_name_version() const throw ();
282
283 protected:
284 uint32_t name;
285@@ -305,7 +305,7 @@ namespace Elf
286 class version_requirement
287 {
288 public:
289- version_requirement() throw (std::bad_alloc);
290+ version_requirement() throw ();
291 virtual ~version_requirement () throw () { }
292
293 const std::string &get_file() const throw () { return file_string; }
294diff --git a/src/mklibs-readelf/elf_data.hpp b/src/mklibs-readelf/elf_data.hpp
295index 05effee..3871982 100644
296--- a/src/mklibs-readelf/elf_data.hpp
297+++ b/src/mklibs-readelf/elf_data.hpp
298@@ -94,7 +94,7 @@ namespace Elf
299 class file_data : public file
300 {
301 public:
302- file_data(uint8_t *, size_t len) throw (std::bad_alloc, std::runtime_error);
303+ file_data(uint8_t *, size_t len) throw ();
304
305 const uint8_t get_class() const throw () { return _class::id; }
306 const uint8_t get_data() const throw () { return _data::id; }
307@@ -109,7 +109,7 @@ namespace Elf
308 public:
309 section_data(Shdr *, uint8_t *) throw ();
310
311- virtual void update(const file &) throw (std::bad_alloc);
312+ virtual void update(const file &) throw ();
313 };
314
315 template <typename _class, typename _data, typename _type>
316@@ -133,9 +133,9 @@ namespace Elf
317 typedef typename _elfdef<_class>::Shdr Shdr;
318
319 public:
320- section_real(Shdr *, uint8_t *) throw (std::bad_alloc);
321+ section_real(Shdr *, uint8_t *) throw ();
322
323- void update(const file &) throw (std::bad_alloc);
324+ void update(const file &) throw ();
325 };
326
327 template <typename _class, typename _data>
328@@ -147,9 +147,9 @@ namespace Elf
329 typedef typename _elfdef<_class>::Shdr Shdr;
330
331 public:
332- section_real(Shdr *, uint8_t *) throw (std::bad_alloc);
333+ section_real(Shdr *, uint8_t *) throw ();
334
335- void update(const file &) throw (std::bad_alloc);
336+ void update(const file &) throw ();
337 };
338
339 template <typename _class, typename _data>
340@@ -161,9 +161,9 @@ namespace Elf
341 typedef typename _elfdef<_class>::Shdr Shdr;
342
343 public:
344- section_real(Shdr *, uint8_t *) throw (std::bad_alloc);
345+ section_real(Shdr *, uint8_t *) throw ();
346
347- void update(const file &) throw (std::bad_alloc);
348+ void update(const file &) throw ();
349 };
350
351 template <typename _class, typename _data>
352@@ -175,9 +175,9 @@ namespace Elf
353 typedef typename _elfdef<_class>::Shdr Shdr;
354
355 public:
356- section_real(Shdr *, uint8_t *) throw (std::bad_alloc);
357+ section_real(Shdr *, uint8_t *) throw ();
358
359- void update(const file &) throw (std::bad_alloc);
360+ void update(const file &) throw ();
361 };
362
363 template <typename _class, typename _data>
364@@ -189,7 +189,7 @@ namespace Elf
365 typedef typename _elfdef<_class>::Shdr Shdr;
366
367 public:
368- section_real(Shdr *, uint8_t *) throw (std::bad_alloc);
369+ section_real(Shdr *, uint8_t *) throw ();
370 };
371
372 template <typename _class, typename _data>
373@@ -220,7 +220,7 @@ namespace Elf
374 typedef typename _elfdef<_class>::Phdr Phdr;
375
376 public:
377- segment_real (Phdr *, uint8_t *) throw (std::bad_alloc);
378+ segment_real (Phdr *, uint8_t *) throw ();
379 };
380
381 template <typename _class, typename _data>
382@@ -232,7 +232,7 @@ namespace Elf
383 public:
384 dynamic_data (Dyn *) throw ();
385
386- void update_string(const section_type<section_type_STRTAB> &) throw (std::bad_alloc);
387+ void update_string(const section_type<section_type_STRTAB> &) throw ();
388 };
389
390 template <typename _class, typename _data>
391@@ -244,8 +244,8 @@ namespace Elf
392 public:
393 symbol_data (Sym *) throw ();
394
395- void update_string(const section_type<section_type_STRTAB> &) throw (std::bad_alloc);
396- virtual void update_version (const file &, uint16_t) throw (std::bad_alloc);
397+ void update_string(const section_type<section_type_STRTAB> &) throw ();
398+ virtual void update_version (const file &, uint16_t) throw ();
399 };
400
401 template <typename _class, typename _data>
402@@ -257,7 +257,7 @@ namespace Elf
403
404 version_definition_data (Verdef *) throw ();
405
406- void update_string(const section_type<section_type_STRTAB> &) throw (std::bad_alloc);
407+ void update_string(const section_type<section_type_STRTAB> &) throw ();
408 };
409
410 template <typename _class, typename _data>
411@@ -269,7 +269,7 @@ namespace Elf
412
413 version_requirement_data (Verneed *) throw ();
414
415- void update_string(const section_type<section_type_STRTAB> &) throw (std::bad_alloc);
416+ void update_string(const section_type<section_type_STRTAB> &) throw ();
417 };
418
419 template <typename _class, typename _data>
420@@ -280,7 +280,7 @@ namespace Elf
421
422 version_requirement_entry_data (Vernaux *, const version_requirement &) throw ();
423
424- void update_string(const section_type<section_type_STRTAB> &) throw (std::bad_alloc);
425+ void update_string(const section_type<section_type_STRTAB> &) throw ();
426 };
427 }
428
429--
4302.11.0
431
diff --git a/meta/recipes-devtools/mklibs/mklibs-native_0.1.44.bb b/meta/recipes-devtools/mklibs/mklibs-native_0.1.44.bb
index 1784af1f4c..07142e57e0 100644
--- a/meta/recipes-devtools/mklibs/mklibs-native_0.1.44.bb
+++ b/meta/recipes-devtools/mklibs/mklibs-native_0.1.44.bb
@@ -12,6 +12,7 @@ SRC_URI = "http://snapshot.debian.org/archive/debian/20180828T214102Z/pool/main/
12 file://avoid-failure-on-symbol-provided-by-application.patch \ 12 file://avoid-failure-on-symbol-provided-by-application.patch \
13 file://show-GNU-unique-symbols-as-provided-symbols.patch \ 13 file://show-GNU-unique-symbols-as-provided-symbols.patch \
14 file://fix_cross_compile.patch \ 14 file://fix_cross_compile.patch \
15 file://remove-deprecated-exception-specification-cpp17.patch \
15" 16"
16 17
17SRC_URI[md5sum] = "6b6eeb9b4016c6a7317acc28c89e32cc" 18SRC_URI[md5sum] = "6b6eeb9b4016c6a7317acc28c89e32cc"