Patchwork [1,of,1] patches/binutils/2.22: do not fwd declare struct stat

login
register
mail settings
Submitter Titus von Boxberg
Date Nov. 16, 2012, 9:22 p.m.
Message ID <417a15d4277913841ddd.1353100974@tschetwerikow.boxberg.lan>
Download mbox | patch
Permalink /patch/199733/
State Accepted
Commit f7a40ba0b651
Headers show

Comments

Titus von Boxberg - Nov. 16, 2012, 9:22 p.m.
# HG changeset patch
# User Titus von Boxberg <titus@v9g.de>
# Date 1352220159 -3600
# Node ID 417a15d4277913841ddd522e8f527821eb48a99c
# Parent  f045122f53c7d3739cc94397e0dff269f825e2fa
patches/binutils/2.22: do not fwd declare struct stat.

For canadian cross to host i686-mingw32 fwd declaring
struct stat is not possible.
Instead #include <sys/stat.h>

Signed-off-by: Titus von Boxberg <titus@v9g.de>


--
For unsubscribe information see http://sourceware.org/lists.html#faq
Yann E. MORIN - Nov. 16, 2012, 9:46 p.m.
Titus, All,

On Friday 16 November 2012 Titus von Boxberg wrote:
> # HG changeset patch
> # User Titus von Boxberg <titus@v9g.de>
> # Date 1352220159 -3600
> # Node ID 417a15d4277913841ddd522e8f527821eb48a99c
> # Parent  f045122f53c7d3739cc94397e0dff269f825e2fa
> patches/binutils/2.22: do not fwd declare struct stat.
> 
> For canadian cross to host i686-mingw32 fwd declaring
> struct stat is not possible.
> Instead #include <sys/stat.h>
> 
> Signed-off-by: Titus von Boxberg <titus@v9g.de>

Thank you!

For whatever reason I have yet to understand, this patch breaks pwclient,
the XMLRPC CLI client for patchwork. Sigh... :-(

Please bear with me a little bit more while I attempt debugging this
issue (if I can). At worst, I'll apply it tonight, but probably late.

Regards,
Yann E. MORIN.
Yann E. MORIN - Nov. 16, 2012, 10:44 p.m.
Titus, All,

On Friday 16 November 2012 Yann E. MORIN wrote:
> On Friday 16 November 2012 Titus von Boxberg wrote:
> > # HG changeset patch
> > # User Titus von Boxberg <titus@v9g.de>
> > # Date 1352220159 -3600
> > # Node ID 417a15d4277913841ddd522e8f527821eb48a99c
> > # Parent  f045122f53c7d3739cc94397e0dff269f825e2fa
> > patches/binutils/2.22: do not fwd declare struct stat.

> For whatever reason I have yet to understand, this patch breaks pwclient,
> the XMLRPC CLI client for patchwork. Sigh... :-(
> 
> Please bear with me a little bit more while I attempt debugging this
> issue (if I can). At worst, I'll apply it tonight, but probably late.

Doh, that's a libexpat bug... It seems libexpat does not accept ASCII chars
lower or equal to 0x0C, and 0x0C is a form-feed, which appears in binutils
source code, and thus also appears in this patch.

Sigh... :-(

Regards,
Yann E. MORIN.
Yann E. MORIN - Nov. 18, 2012, 11:50 p.m.
Titus, All,

Your patch:
    binutils/binutils: do not fwd declare struct stat (2.22).

has been applied as: #f7a40ba0b651
    http://crosstool-ng.org/hg/crosstool-ng/rev/f7a40ba0b651

Thank you!

Regards,
Yann E. MORIN.



--
For unsubscribe information see http://sourceware.org/lists.html#faq

Patch

diff -r f045122f53c7 -r 417a15d42779 patches/binutils/2.22/500-fix-struct-stat.patch
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/patches/binutils/2.22/500-fix-struct-stat.patch	Tue Nov 06 17:42:39 2012 +0100
@@ -0,0 +1,42 @@ 
+diff -ur binutils-2.22.org/bfd/bfd-in2.h binutils-2.22/bfd/bfd-in2.h
+--- binutils-2.22.org/bfd/bfd-in2.h	2011-09-16 03:15:18.000000000 +0200
++++ binutils-2.22/bfd/bfd-in2.h	2012-11-03 18:25:20.365668349 +0100
+@@ -32,6 +32,8 @@
+ #ifndef __BFD_H_SEEN__
+ #define __BFD_H_SEEN__
+ 
++#include <sys/stat.h>
++
+ #ifdef __cplusplus
+ extern "C" {
+ #endif
+@@ -308,8 +310,6 @@
+    && (sec)->sec_info_type != ELF_INFO_TYPE_MERGE		\
+    && (sec)->sec_info_type != ELF_INFO_TYPE_JUST_SYMS)
+ 
+-/* Forward define.  */
+-struct stat;
+ 
+ typedef enum bfd_print_symbol
+ {
+diff -ur binutils-2.22.org/bfd/bfd-in.h binutils-2.22/bfd/bfd-in.h
+--- binutils-2.22.org/bfd/bfd-in.h	2011-09-16 03:15:18.000000000 +0200
++++ binutils-2.22/bfd/bfd-in.h	2012-11-03 18:24:43.397783645 +0100
+@@ -25,6 +25,8 @@
+ #ifndef __BFD_H_SEEN__
+ #define __BFD_H_SEEN__
+ 
++#include <sys/stat.h>
++
+ #ifdef __cplusplus
+ extern "C" {
+ #endif
+@@ -301,8 +303,6 @@
+    && (sec)->sec_info_type != ELF_INFO_TYPE_MERGE		\
+    && (sec)->sec_info_type != ELF_INFO_TYPE_JUST_SYMS)
+ 
+-/* Forward define.  */
+-struct stat;
+ 
+ typedef enum bfd_print_symbol
+ {