diff mbox

[1/2,RESEND] Prevent zconf.gperf from throwing an error on OSX

Message ID CAEFQu-GfdH0i1C0p5p_4rO7bD5VF0Y-suaEJWp1_hiOYZROnrg@mail.gmail.com
State New
Headers show

Commit Message

Jason Masker Oct. 16, 2014, 4:51 p.m. UTC
Updated zconf.gperf patch to be conditional.

The problem is when compiling with clang/LLVM, so not necessarily
specific to OS X. Offsetof is part of C99 and defined in stddef.h, but
is builtin with gcc. This code will check for a definition and try
including stddef.h if it is not found. As a last resort, offsetof will
be defined. Apologies for the resend. I did not sign off.

Signed-off-by: Jason Masker <jason@masker.net>


register unsigned int len);

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

Comments

Bryan Hundven Dec. 5, 2014, 11:25 a.m. UTC | #1
Jason,

On Thu, Oct 16, 2014 at 9:51 AM, Jason T. Masker <jason@masker.net> wrote:
> Updated zconf.gperf patch to be conditional.
>
> The problem is when compiling with clang/LLVM, so not necessarily
> specific to OS X. Offsetof is part of C99 and defined in stddef.h, but
> is builtin with gcc. This code will check for a definition and try
> including stddef.h if it is not found. As a last resort, offsetof will
> be defined. Apologies for the resend. I did not sign off.
>
> Signed-off-by: Jason Masker <jason@masker.net>
>
>
> diff --git a/kconfig/zconf.gperf b/kconfig/zconf.gperf
> index c9e690e..d758a2a 100644
> --- a/kconfig/zconf.gperf
> +++ b/kconfig/zconf.gperf
> @@ -7,6 +7,15 @@
>  %pic
>  %struct-type
>
> +%{
> +# ifndef offsetof
> +#  include <stddef.h>
> +#  ifndef offsetof
> +#   define offsetof(st, m) ((size_t)(&((st *)0)->m))
> +#  endif
> +# endif
> +%}
> +
>  struct kconf_id;
>
>  static struct kconf_id *kconf_id_lookup(register const char *str,
> register unsigned int len);

Dang, I wanted to apply this but the patch did not apply cleanly.
Would you mind rebasing this patch with latest head and resending?
Then I'll finally get this bad boy applied.

Thanks,

-Bryan

--
For unsubscribe information see http://sourceware.org/lists.html#faq
Jason Masker Dec. 15, 2014, 2:16 a.m. UTC | #2
On Fri, Dec 5, 2014 at 6:25 AM, Bryan Hundven <bryanhundven@gmail.com> wrote:
> Jason,
>
> On Thu, Oct 16, 2014 at 9:51 AM, Jason T. Masker <jason@masker.net> wrote:
>> Updated zconf.gperf patch to be conditional.
>>
>> The problem is when compiling with clang/LLVM, so not necessarily
>> specific to OS X. Offsetof is part of C99 and defined in stddef.h, but
>> is builtin with gcc. This code will check for a definition and try
>> including stddef.h if it is not found. As a last resort, offsetof will
>> be defined. Apologies for the resend. I did not sign off.
>>
>> Signed-off-by: Jason Masker <jason@masker.net>
>>
>>
>> diff --git a/kconfig/zconf.gperf b/kconfig/zconf.gperf
>> index c9e690e..d758a2a 100644
>> --- a/kconfig/zconf.gperf
>> +++ b/kconfig/zconf.gperf
>> @@ -7,6 +7,15 @@
>>  %pic
>>  %struct-type
>>
>> +%{
>> +# ifndef offsetof
>> +#  include <stddef.h>
>> +#  ifndef offsetof
>> +#   define offsetof(st, m) ((size_t)(&((st *)0)->m))
>> +#  endif
>> +# endif
>> +%}
>> +
>>  struct kconf_id;
>>
>>  static struct kconf_id *kconf_id_lookup(register const char *str,
>> register unsigned int len);
>
> Dang, I wanted to apply this but the patch did not apply cleanly.
> Would you mind rebasing this patch with latest head and resending?
> Then I'll finally get this bad boy applied.
>
> Thanks,
>
> -Bryan
--
For unsubscribe information see http://sourceware.org/lists.html#faq
Bryan Hundven Jan. 9, 2015, 3:25 a.m. UTC | #3
Jason,

On Sun, Dec 14, 2014 at 6:16 PM, Jason T. Masker <jason@masker.net> wrote:
> On Fri, Dec 5, 2014 at 6:25 AM, Bryan Hundven <bryanhundven@gmail.com> wrote:
>> Jason,
>>
>> On Thu, Oct 16, 2014 at 9:51 AM, Jason T. Masker <jason@masker.net> wrote:
>>> Updated zconf.gperf patch to be conditional.
>>>
>>> The problem is when compiling with clang/LLVM, so not necessarily
>>> specific to OS X. Offsetof is part of C99 and defined in stddef.h, but
>>> is builtin with gcc. This code will check for a definition and try
>>> including stddef.h if it is not found. As a last resort, offsetof will
>>> be defined. Apologies for the resend. I did not sign off.
>>>
>>> Signed-off-by: Jason Masker <jason@masker.net>
>>>
>>>
>>> diff --git a/kconfig/zconf.gperf b/kconfig/zconf.gperf
>>> index c9e690e..d758a2a 100644
>>> --- a/kconfig/zconf.gperf
>>> +++ b/kconfig/zconf.gperf
>>> @@ -7,6 +7,15 @@
>>>  %pic
>>>  %struct-type
>>>
>>> +%{
>>> +# ifndef offsetof
>>> +#  include <stddef.h>
>>> +#  ifndef offsetof
>>> +#   define offsetof(st, m) ((size_t)(&((st *)0)->m))
>>> +#  endif
>>> +# endif
>>> +%}
>>> +
>>>  struct kconf_id;
>>>
>>>  static struct kconf_id *kconf_id_lookup(register const char *str,
>>> register unsigned int len);
>>
>> Dang, I wanted to apply this but the patch did not apply cleanly.
>> Would you mind rebasing this patch with latest head and resending?
>> Then I'll finally get this bad boy applied.
>>
>> Thanks,
>>
>> -Bryan

Sorry it's taken me so long to get back to this. I still have issues applying:

bryan@fuzzy:~/crosstool-ng$ pwclient git-am 400328
Applying patch #400328 using 'git am'
Description: [1/2,RESEND] Prevent zconf.gperf from throwing an error on OSX
Applying: Prevent zconf.gperf from throwing an error on OSX
error: patch failed: kconfig/zconf.gperf:7
error: kconfig/zconf.gperf: patch does not apply
Patch failed at 0001 Prevent zconf.gperf from throwing an error on OSX
The copy of the patch that failed is found in:
   /home/bryan/crosstool-ng/.git/rebase-apply/patch
When you have resolved this problem, run "git am --continue".
If you prefer to skip this patch, run "git am --skip" instead.
To restore the original branch and stop patching, run "git am --abort".

If you want to verify the patch applies to a clean checkout of
crosstool-NG and resend again?

Thanks,

-Bryan

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

Patch

diff --git a/kconfig/zconf.gperf b/kconfig/zconf.gperf
index c9e690e..d758a2a 100644
--- a/kconfig/zconf.gperf
+++ b/kconfig/zconf.gperf
@@ -7,6 +7,15 @@ 
 %pic
 %struct-type

+%{
+# ifndef offsetof
+#  include <stddef.h>
+#  ifndef offsetof
+#   define offsetof(st, m) ((size_t)(&((st *)0)->m))
+#  endif
+# endif
+%}
+
 struct kconf_id;

 static struct kconf_id *kconf_id_lookup(register const char *str,