Re: [gtk-osx-users] Building on PPC fails



On Jan 17, 2013, at 10:06 AM, Steffen Gutmann <muibase yahoo com> wrote:

>>> Ok, any hint on how such a module could look like?
> 
>> 
>> IIRC, cups has no other dependencies, so I'd think it would be just
>>    <repository type="tarball" 
>> href="http://www.cups.org/"; />
>>    <autotools id='cups' autogen-sh="configure">
>>        <branch 
>> module="software.php?VERSION=1.6.1&FILE=1.6.1/cups-1.6.1-source.tar.bz2" 
>> version="1.6.1" />
>>    </autotools>
> 
> 
> I have tried adding this into a cups.modules file under ~/Source/jhbuild/modulesets and then running
> 'jhbuild build cups' but that's not quite it.  Do you have a pointer on how to write a modules file?  How does jhbuild know the items it can build?

http://developer.gnome.org/jhbuild/unstable/moduleset-syntax.html.en

Jhbuild builds everything that is either included in the "modules" variable (which can also be passed in the --modules argument) or a dependency of one of those.

> 
>>> Back to the build on PPC/Leopard for the 10.4u SDK.  meta-gtk-osx-core 
>> builds now, but when I start gtk-demo the following gets printed and the 
>> application terminates after a couple of seconds without any window ever opened:
>>> 
>>> **
>>> Pango:ERROR:pangocairo-fontmap.c:79:pango_cairo_font_map_new: code should 
>> not be reached
>>> Abort trap
>>> 
>>> The corresponding lines in pangocairo-fontmap.c:79 are:
>>> 
>>> PangoFontMap *
>>> pango_cairo_font_map_new (void)
>>> {
>>>   /* Make sure that the type system is initialized */
>>>   g_type_init ();
>>> 
>>> #if defined(HAVE_CORE_TEXT) && defined (HAVE_CAIRO_QUARTZ)
>>>   return g_object_new (PANGO_TYPE_CAIRO_CORE_TEXT_FONT_MAP, NULL);
>>> #elif defined(HAVE_CAIRO_WIN32)
>>>   return g_object_new (PANGO_TYPE_CAIRO_WIN32_FONT_MAP, NULL);
>>> #elif defined(HAVE_CAIRO_FREETYPE)
>>>   return g_object_new (PANGO_TYPE_CAIRO_FC_FONT_MAP, NULL);
>>> #else
>>>   g_assert_not_reached ();
>>>   return NULL;
>>> #endif
>>> }
>>> 
>>> Have you seen this before?
>> 
>> No, but ISTR Behdad decided that he couldn't support ATSUI any more. He 
>> thought that there was enough of CoreText already in Tiger so that it would 
>> work, but I guess not.
> 
> Is Behdad on this mailing list and maybe know more?  From the few lines of code I would have assumed that HAVE_CORE_TEXT should be defined.
No. You can find him in the Gtk IRC channel or on gtk-i18n-list lists gnome org.
> 
>> You'll have to build meta-gtk-osx-freetype before 
>> meta-gtk-osx-core. That will provide the pangofc2 backend.
> 
> 
> I tried that and that fails with this error message:
> 
> *** Building harfbuzz *** [5/6]
> make  
> make  all-recursive
> Making all in src
>  GEN    hb-gobject-enums.cc
> make  all-recursive
> Making all in hb-old
>  CC     libhb_old_la-harfbuzz-buffer.lo
>  CC     libhb_old_la-harfbuzz-stream.lo
>  CC     libhb_old_la-harfbuzz-gdef.lo
>  CC     libhb_old_la-harfbuzz-gpos.lo
>  CC     libhb_old_la-harfbuzz-gsub.lo
>  CC     libhb_old_la-harfbuzz-impl.lo
>  CC     libhb_old_la-harfbuzz-open.lo
>  CXX    libhb_old_la-harfbuzz-shaper.lo
>  CC     libhb_old_la-harfbuzz-greek.lo
>  CC     libhb_old_la-harfbuzz-tibetan.lo
>  CC     libhb_old_la-harfbuzz-khmer.lo
>  CXX    libhb_old_la-harfbuzz-indic.lo
>  CC     libhb_old_la-harfbuzz-hebrew.lo
>  CC     libhb_old_la-harfbuzz-arabic.lo
>  CC     libhb_old_la-harfbuzz-hangul.lo
>  CC     libhb_old_la-harfbuzz-myanmar.lo
>  CXXLD  libhb-old.la
> Making all in hb-ucdn
>  CC     ucdn.lo
>  CCLD   libhb-ucdn.la
>  CXX    libharfbuzz_la-hb-blob.lo
>  CXX    libharfbuzz_la-hb-buffer.lo
>  CXX    libharfbuzz_la-hb-common.lo
> hb-common.cc: In function 'hb_language_item_t* lang_find_or_insert(const char*)':
> hb-common.cc:208: error: 'OSAtomicCompareAndSwapPtrBarrier' was not declared in this scope
> hb-common.cc: In function 'hb_language_impl_t* hb_language_get_default()':
> hb-common.cc:255: error: 'OSAtomicCompareAndSwapPtrBarrier' was not declared in this scope
> make[4]: *** [libharfbuzz_la-hb-common.lo] Error 1
> make[3]: *** [all-recursive] Error 1
> make[2]: *** [all] Error 2
> make[1]: *** [all-recursive] Error 1
> make: *** [all] Error 2
> 
> Are we sure that Tiger is still supported or should I give up and use Leopard as the minimum supported OS?

Fixed in http://cgit.freedesktop.org/harfbuzz/commit/src/hb-atomic-private.hh?id=071d5b831e6de5f3b24160dc77b139cb040ab886
Get 0.9.10 or later.

That said, it's getting difficult to keep developers to remember to check for functions supported by 10.4. There was yet another bug [1] submitted about it yesterday. Unless you have a bunch of users who are stuck on really old macs for some reason, it's a lot easier to support Leopard-and-later.

Regards,
John Ralls

[1] https://bugzilla.gnome.org/show_bug.cgi?id=691921





[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]