Opened 8 years ago

Closed 8 years ago

Last modified 8 years ago

#39574 closed enhancement (fixed)

harfbuzz doesn't use graphite2

Reported by: ryandesign (Ryan Schmidt) Owned by: ryandesign (Ryan Schmidt)
Priority: Normal Milestone:
Component: ports Version:
Keywords: Cc:
Port: harfbuzz

Description

In harfbuzz 0.9.18 a new build system was introduced, and icu and graphite2 support, which had previously defaulted to on, now default to off. The NEWS file says:

Overview of changes leading to 0.9.18
Tuesday, May 28, 2013
=====================================

New build system:

- All unneeded code is all disabled by default,

- Uniscribe and CoreText shapers can be enabled with their --with options,

- icu_le and old shapers cannot be enabled for now,

- glib, freetype, and cairo will be detected automatically.
  They can be force on/off'ed with their --with options,

- icu and graphite2 are default off, can be enabled with their --with
  options,

Moreover, ICU support is now build into a separate library:
libharfbuzz-icu.so, and a new harfbuzz-icu.pc is shipped for it.
Distros can enable ICU now without every application on earth
getting linked to via libharfbuzz.so.

For distros I recommend that they make sure they are building --with-glib
--with-freetype --with-cairo, --with-icu, and optionally --with-graphite2;
And package harfbuzz and harfbuzz-icu separately.

In particular note the recommendation in the last line to package harfbuzz-icu separately. I'll see if I can make that into a separate subport.

Change History (4)

comment:1 Changed 8 years ago by ryandesign (Ryan Schmidt)

Summary: harfbuzz doesn't use icu or graphite2harfbuzz doesn't use graphite2

Hmm, contrary to the statement in the NEWS file, icu is still autodetected.

comment:2 Changed 8 years ago by ryandesign (Ryan Schmidt)

Resolution: fixed
Status: newclosed

comment:3 Changed 8 years ago by cooljeanius (Eric Gallager)

In particular note the recommendation in the last line to package harfbuzz-icu separately. I'll see if I can make that into a separate subport.

I think the deactivate hack will need to be used for this new harfbuzz-icu subport:

x ./opt/local/include/hb-icu.h
Error: org.macports.activate for port harfbuzz-icu returned: Image error: /opt/local/lib/libharfbuzz-icu.0.dylib is being used by the active harfbuzz port.  Please deactivate this port first, or use 'port -f activate harfbuzz-icu' to force the activation.
DEBUG: Error code: registry::image-error

Edit: nvm, I still have an old version of harfbuzz installed... I guess that's what I get for using the -p flag...

Last edited 8 years ago by cooljeanius (Eric Gallager) (previous) (diff)

comment:4 Changed 8 years ago by ryandesign (Ryan Schmidt)

The only way you should experience that problem when installing harfbuzz-icu with the -p flag is if harfbuzz failed to build. Did it? If so please file a bug report about that.

Note: See TracTickets for help on using tickets.