[blfs-dev] ... pygobject patch

Armin K. krejzi at email.com
Tue Mar 4 12:23:52 PST 2014


On 03/04/2014 08:52 PM, Fernando de Oliveira wrote:
> Em 04-03-2014 13:32, Armin K. escreveu:
>> On 03/04/2014 05:06 PM, Fernando de Oliveira wrote:
>>> Em 04-03-2014 12:05, Armin K. escreveu:
>>>> I've missed one step (for future reference), see below:
>>>>
>>>> On 03/04/2014 04:04 PM, Armin K. wrote:
>>>>> On 03/04/2014 03:33 PM, Fernando de Oliveira wrote:
>>>>>> Em 03-03-2014 11:30, Armin K. escreveu:
>>>>>>> On 03/03/2014 03:06 PM, thomas kaeding wrote:
>>>>>>>> This might be important for anyone wanting to build pygtk.
>>>>>>>> It's a patch to pygobject.
>>>>>>>>
>>>>>>>> https://bug668522.bugzilla-attachments.gnome.org/attachment.cgi?id=209543
>>>>>>>>
>>>>>>>
>>>>>>> Forwarding to blfs-dev since it's a blfs package, not lfs. Be sure to
>>>>>>> subscribe to the list before replying.
>>>>>>>
>>>>>>> The git repository contains 15 patches for pygobject after the last 2.28
>>>>>>> release, so I propose that all should be included in the book in a
>>>>>>> single patch. Note that the patch from that bug and the one that is
>>>>>>> currently in the blfs will also be the part of that patch, given that
>>>>>>> all fixes are included.
>>>>>>>
>>>>>>> https://git.gnome.org/browse/pygobject/log/?h=pygobject-2-28
>>>>>>>
>>>>>>
>>>>>> I don't know what exactly to do. Please, someone could have a look at this?
>>>>>>
>>>>>>
>>>>>
>>>>> git clone git://git.gnome.org/pygobject -b pygobject-2-28
>>>>> cd pygobject
>>>> git format-patch -15
>>>>> cat 00*.patch > ../pygobject.patch
>>>>> cd ..
>>>>> wget
>>>>> http://ftp.gnome.org/pub/gnome/sources/pygobject/2.28/pygobject-2.28.6.tar.xz
>>>>> tar xf pygobject-2.28.6.tar.xz
>>>>> mv pygobject-2.28.6 b
>>>>> cp -a b a
>>>>> cd b
>>>>> patch -Np1 -i ../pygobject.patch
>>>>> cd ..
>>>>> diff -Naur a b > pygobject-2.28.6-git_fixes-1.patch
>>>>> sed -i "/diff -Naur/d" pygobject-2.28.6-git_fixes-1.patch
>>>>>
>>>>> Final patch is in attachment.
>>>>>
>>>>
>>>>
>>>
>>> Thanks, Armin,
> 
> 
>>>
>>> 1. That patch you attached can be used, otr I need to redo the process
>>> you tought me?
>>>
>>
>> Yes, this is the final patch. I've included commands here so they might
>> help you later.
>>
>>> 2. The patch is to be included and keep also the one already in the book?
>>>
>>
>> This patch includes the one that's currently in the book.
>>
>>> 3. Target is 7.5, or I can do it a little later for 7.6?
>>>
>>>
>>>
>>
>> Your choice. It contains bugfixes only so I believe it's suitable for
>> 7.5 too.
>>
> 
> Didn't you get a problem, when testing the patch?
> 
> Only if I first apply pygobject-2.28.6-introspection-1.patch that is in
> the book, then, apply pygobject-2.28.6-git_fixes-1.patch, it works.
> 
> With just
> 
> patch -Np1 -i ../pygobject-2.28.6-git_fixes-1.patch, "make" breaks with
> messages:
> 
> {{{
> pygi-repository.c: In function '_wrap_g_irepository_require':
> pygi-repository.c:92:15: warning: variable 'typelib' set but not used
> [-Wunused-but-set-variable]
>      GTypelib *typelib;
>                ^
>   CC     _gi_la-pygi-info.lo
> pygi-info.c: In function '_pygi_info_new':
> pygi-info.c:165:14: error: 'GI_INFO_TYPE_ERROR_DOMAIN' undeclared (first
> use in this function)
>          case GI_INFO_TYPE_ERROR_DOMAIN:
>               ^
> pygi-info.c:165:14: note: each undeclared identifier is reported only
> once for each function it appears in
> pygi-info.c:135:5: warning: enumeration value 'GI_INFO_TYPE_INVALID_0'
> not handled in switch [-Wswitch]
>      switch (info_type)
>      ^
> pygi-info.c: In function '_pygi_g_type_info_size':
> pygi-info.c:484:22: error: 'GI_INFO_TYPE_ERROR_DOMAIN' undeclared (first
> use in this function)
>                  case GI_INFO_TYPE_ERROR_DOMAIN:
>                       ^
> pygi-info.c:448:13: warning: enumeration value 'GI_INFO_TYPE_INVALID_0'
> not handled in switch [-Wswitch]
>              switch (info_type) {
>              ^
> pygi-info.c: In function 'pygi_g_struct_info_is_simple':
> pygi-info.c:863:26: error: 'GI_INFO_TYPE_ERROR_DOMAIN' undeclared (first
> use in this function)
>                      case GI_INFO_TYPE_ERROR_DOMAIN:
>                           ^
> pygi-info.c:835:17: warning: enumeration value 'GI_INFO_TYPE_INVALID_0'
> not handled in switch [-Wswitch]
>                  switch (info_type) {
>                  ^
> Makefile:528: recipe for target '_gi_la-pygi-info.lo' failed
> make[3]: *** [_gi_la-pygi-info.lo] Error 1
> make[3]: Leaving directory
> '/home/fernando/tmp/paco-build-2014.03.04-16h40m46s/pygobject-2.28.6/gi'
> Makefile:690: recipe for target 'all-recursive' failed
> make[2]: *** [all-recursive] Error 1
> make[2]: Leaving directory
> '/home/fernando/tmp/paco-build-2014.03.04-16h40m46s/pygobject-2.28.6/gi'
> Makefile:615: recipe for target 'all-recursive' failed
> make[1]: *** [all-recursive] Error 1
> make[1]: Leaving directory
> '/home/fernando/tmp/paco-build-2014.03.04-16h40m46s/pygobject-2.28.6'
> Makefile:376: recipe for target 'all' failed
> make: *** [all] Error 2
> }}}
> 
> which seems exactly the fix needed from
> pygobject-2.28.6-introspection-1.patch.
> 
> Unfortunately, I do not feel we can end the discussion before 7.5 is
> released.
> 
> My doubts, first, is this new patch required or optional, because the
> other one is optional? second, should it be a second patch, not a
> replacement patch?
> 

Hm, indeed you need the patch that's in the book. My suggestion is
squashing both of them into one single patch and adding it into the
book. Required seems to be a good choice since it will also fix a
crasher in pygtk apps that I've seen some time ago.

-- 
Note: My last name is not Krejzi.



More information about the blfs-dev mailing list