Add live ebuild with fixed automagicness.
authorTomas Chvatal <scarabeus@gentoo.org>
Thu, 6 Oct 2011 10:48:09 +0000 (10:48 +0000)
committerTomas Chvatal <scarabeus@gentoo.org>
Thu, 6 Oct 2011 10:48:09 +0000 (10:48 +0000)
Package-Manager: portage-2.2.0_alpha62/cvs/Linux x86_64

media-libs/harfbuzz/ChangeLog
media-libs/harfbuzz/Manifest
media-libs/harfbuzz/files/harfbuzz-automagicness.patch [new file with mode: 0644]
media-libs/harfbuzz/harfbuzz-9999.ebuild [new file with mode: 0644]
media-libs/harfbuzz/metadata.xml

index efbc40d4cf7b64ca8ed3a0c485859de0b9fc7d4d..e9ed613f84ac8ba733f6e6d422cf459f69b2bb30 100644 (file)
@@ -1,6 +1,12 @@
 # ChangeLog for media-libs/harfbuzz
 # Copyright 1999-2011 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/media-libs/harfbuzz/ChangeLog,v 1.5 2011/09/04 15:52:03 scarabeus Exp $
+# $Header: /var/cvsroot/gentoo-x86/media-libs/harfbuzz/ChangeLog,v 1.6 2011/10/06 10:48:09 scarabeus Exp $
+
+*harfbuzz-9999 (06 Oct 2011)
+
+  06 Oct 2011; Tomáš Chvátal <scarabeus@gentoo.org> +harfbuzz-9999.ebuild,
+  +files/harfbuzz-automagicness.patch, metadata.xml:
+  Add live ebuild with fixed automagicness.
 
   04 Sep 2011; Tomáš Chvátal <scarabeus@gentoo.org>
   harfbuzz-0.7.0_pre20110904.ebuild:
index 2f611f1a7adf1e0de8b9813fcd0d1e1563e008e0..8defd6ac920abf1723e83d0cf946ac42943476af 100644 (file)
@@ -1,24 +1,26 @@
 -----BEGIN PGP SIGNED MESSAGE-----
 Hash: SHA1
 
+AUX harfbuzz-automagicness.patch 13459 RMD160 951aead3955bdbfb16a50dfece0fa39db824d2a2 SHA1 a21a323f09e6925d7bc9e6837e526856012d631e SHA256 2875be73250178ff28bb9c084ec2a4840cf8aab2a5a10125b9adabf0f7e06aa3
 DIST harfbuzz-0.7.0_pre20110904.tar.xz 457592 RMD160 950d17e1b2e765b47c0df37b62ad64adaa65f078 SHA1 c4e39156086cdb65e5a3d0c9784721a8182bfebd SHA256 1b65864883da8f95f6148242e85336ea6b3a7a98a1659b8b9256c6a76e68bb98
 EBUILD harfbuzz-0.7.0_pre20110904.ebuild 866 RMD160 b53dd300cd82d131465410061c294a1205192c4c SHA1 5e5cee7a81dd6f5bff6948a8f56a55b11a4fb673 SHA256 b2dc805f895d5af01dd67263c6c1ae6e8c8bd4f3d431bab90bd20144ae7c660b
-MISC ChangeLog 1008 RMD160 70d03633d60fd0d354e33a73a91a47e8ce374859 SHA1 3d40b180fecc0764f3d407867823fa651d7596f2 SHA256 8b386cd03a5db5c0cabaee2d4569a9fc24bb6507e0216ad7d58262a8c9000792
-MISC metadata.xml 164 RMD160 fd8b45464863ba55ec9ffa050f8c7580be4ead20 SHA1 988d65b213818898ef7fc0eeedba86d0af4f18fe SHA256 6dd077e0a4bddf8cac0a6d7fb01d5f992a81c85d77d55787d19c6d4ae4c5aeeb
+EBUILD harfbuzz-9999.ebuild 1250 RMD160 550e36526351965f7e3900bf7abe5c9d86228660 SHA1 7572902b34e5af64dde1ac99ca7b91817970dc38 SHA256 f58af09a4774d71c750c6af15b8e4cb6d80e160d71f8a1ad32fe6f1edb562a3e
+MISC ChangeLog 1214 RMD160 377f70917e81d8d0aca55ec3ed012beae70ac34e SHA1 b4bf88199da5e9dd3822808677587abb2fc6dcad SHA256 866e549a38e53e485e160765303c36b0701e7647fc3e6729a5e9266fab03ccf5
+MISC metadata.xml 375 RMD160 7d24678ad500a40b6454fbe2e13aeff82b3f3e32 SHA1 c8393eec0ba25f6c5636aad166e1fcb916a16caf SHA256 89dc3ba3ae026693c6a25fc1f768fcf2e8be9a1ea67e351b4c72c4d750421c4c
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v2.0.18 (GNU/Linux)
 
-iQIcBAEBAgAGBQJOY56pAAoJEOSiRoyO7jvoe1IP/0Bvm/Cn798IZZzoCSCWkCfG
-+iZPWbWsPvNqhbZ3R4t1x+6MhPlKfYDWdhDjuZ18kSna+vCFvxfs3z57cacEp8hQ
-wySY7IrypcvQYiQ4g0YM3bGx9FjbmCbxsogMt0/be9W4PK0qyZDZ1t8BFvc3zZ30
-CO411AmdWKwXswkbiAhnaz5NO7PVeUF3WKbsEs95WO6DSgdO38bHkW8zANYs5u1a
-/PGmKopTe5fubjQoiYSpjdBlnR41iTcD5SgBDOMuQCcZvJrYshZtTiLvh4+awkoL
-6G3kwNZUWbNX5UQ+7T+oJdbzo6Mr8IJ5FqGv0RBAjQSVZ9FXU0Ng/NLpUDqt+/se
-DQ+gcDV3pEn+HfyxC8tKkZURYRa2L0ffd35Kn5EIrtBYhaiDV9i1+LxnowfmuD5j
-7XS/18xyJUZyDj5mkD6zgMJ8Bb44i7RFrNjNmDH7guEgVYW2oi4MHkmjQ5vfThA9
-++lP2+YlzqgoQsTI4EUMXSKPfpFGUuuyfnYJnjIL7+pEdqVUQrsKxtV2S9MJ9zNO
-2Dz+dED7Q5x0mnGwUyQpCMxQA8MXkFTrj3Px90hZAWRD+nysXm1L08SKT/ksnSZ9
-2VMTOyL7xCHbll43v7u3rZAi2ytfCvXjsURVaWZShAVIIQBnGYEOfnt44EG73qEh
-/CR9/AvnII1mlvTvVi6F
-=hW6s
+iQIcBAEBAgAGBQJOjYcrAAoJEOSiRoyO7jvoneIP/izj+nyBAoPf7PGOB9xUiDV3
+hFcsDvI++OwQcJaoGTEuwZmX2458oYBy+zqn3TJNQFwLwycAdCu4+wZPab+uUvcF
+kw57JFOc9ZA0+SCRjGVjaJ90W6KjxQHgORl2KpzvphHfly39uxhzed42cTGKIZs4
+MjBDXZjTF4Nnm9Fe5QtuRj9WKffZ48iJlPr816KVxC5bjhx2iGOb2pxjBzcnKQ+q
+2VhhfiDuvocYGN84S0+Gy6NL9aM6/OaL9lNifgTKcOQwyGIW/OAMvsLbob8SqkK3
+9SSL8fxPuUvSMockNVUMVgM3Dij3/eb0R6kC36kdhZ3U/peskwg55zX62A/AjqX5
+iY97Ap6ofTikhtbFmOMX2KnvScrbXOp+SlSRRXURdYFBr8KyA3huY7z57jVBwnQl
+cp6KoeI+N6YlYScfazZJpDY+Z+e3GmuC3jCRDBsgYPq8wh4FgUt2CbgsYmud7qTM
+5T1fKdKWdYBL8WU/zmS1WAzTZngUcxXoL9qNBqKDcTX9sRBH6RkSNZCxOwUAAkFd
+IaLJ2XjsBrYg8NURRs//Ijznr/la6FUcpV6bdKTSJl0GDFeFKqrkcODoP1EUoTUH
+w4BUleugUXALbZvqZbJTVZO4q+bIZGsaMTtdfDjiEeutagPZeyScd/zX7QmfKf5n
+TfXDVI0Q6LNP8YiVgH6W
+=JsKR
 -----END PGP SIGNATURE-----
diff --git a/media-libs/harfbuzz/files/harfbuzz-automagicness.patch b/media-libs/harfbuzz/files/harfbuzz-automagicness.patch
new file mode 100644 (file)
index 0000000..3444e6a
--- /dev/null
@@ -0,0 +1,526 @@
+From 6cf7a9d9e34b6cce202d1286d8c1b5738238bb02 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Tom=C3=A1=C5=A1=20Chv=C3=A1tal?= <tchvatal@suse.cz>
+Date: Tue, 27 Sep 2011 09:34:59 +0200
+Subject: [PATCH] Update configure to avoid automagicness.
+
+Fixes also some missing definitions from configure.ac/am about libtool
+Removes redundant defines. And their conditionals in code.
+Updates gitignore to ingore all autotools produced code.
+---
+ .gitignore       |   53 +++++++++++++++
+ Makefile.am      |    2 +
+ configure.ac     |  189 ++++++++++++++++++++++++++++--------------------------
+ src/Makefile.am  |   47 +++++--------
+ src/hb-shape.cc  |    6 +--
+ test/Makefile.am |   12 +---
+ test/test-c.c    |    2 -
+ util/Makefile.am |    5 +-
+ 8 files changed, 176 insertions(+), 140 deletions(-)
+ create mode 100644 .gitignore
+
+diff --git a/.gitignore b/.gitignore
+new file mode 100644
+index 0000000..22d4d21
+--- /dev/null
++++ b/.gitignore
+@@ -0,0 +1,53 @@
++/*.bak
++/*.lo
++/*.o
++/*.orig
++/*.rej
++/*.tab.c
++/*.tar.*
++/*~
++/.*.sw[nop]
++/.deps
++/.libs
++/ChangeLog
++/GPATH
++/GRTAGS
++/GSYMS
++/GTAGS
++/ID
++/INSTALL
++/Makefile
++/Makefile.in
++/TAGS
++/_libs
++/aclocal.m4
++/autom4te.cache
++/autoscan.log
++/compile
++/config.cache
++/config.guess
++/config.h
++/config.h.in
++/config.log
++/config.lt
++/config.status
++/config.status.lineno
++/config.sub
++/configure
++/configure.lineno
++/configure.scan
++/depcomp
++/harfbuzz.pc
++/install-sh
++/libtool
++/ltmain.sh
++/m4/
++/missing
++/mkinstalldirs
++/so_locations
++/src/Makefile.in
++/src/hb-gobject-enums.cc
++/stamp-h1
++/tags
++/test/Makefile.in
++/util/Makefile.in
+diff --git a/Makefile.am b/Makefile.am
+index 8b69c2d..4fc7c66 100644
+--- a/Makefile.am
++++ b/Makefile.am
+@@ -1,5 +1,7 @@
+ # Process this file with automake to produce Makefile.in
++ACLOCAL_AMFLAGS = -I m4
++
+ NULL =
+ SUBDIRS = src util test
+diff --git a/configure.ac b/configure.ac
+index 856fb98..98e0670 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -1,20 +1,26 @@
+-AC_PREREQ([2.64])
++AC_PREREQ([2.65])
+ AC_INIT([harfbuzz],
+-        [0.7.0],
+-        [http://bugs.freedesktop.org/enter_bug.cgi?product=harfbuzz],
+-        [harfbuzz],
+-        [http://harfbuzz.org/])
++      [0.7.0],
++      [http://bugs.freedesktop.org/enter_bug.cgi?product=harfbuzz],
++      [harfbuzz],
++      [http://harfbuzz.org/])
++AC_CONFIG_MACRO_DIR([m4])
+ AC_CONFIG_SRCDIR([harfbuzz.pc.in])
+ AC_CONFIG_HEADERS([config.h])
+-AM_INIT_AUTOMAKE([1.11.1 gnu dist-bzip2 no-dist-gzip -Wall no-define])
++AM_INIT_AUTOMAKE([1.11 gnu dist-xz dist-bzip2 no-dist-gzip -Wall no-define])
+ AM_SILENT_RULES([yes])
++AC_LANG([C++])
+ # Check for programs
+ AC_PROG_CC
+ AM_PROG_CC_C_O
+ AC_PROG_CXX
++AC_PROG_INSTALL
++AC_PROG_LN_S
++AC_PROG_LIBTOOL
++PKG_PROG_PKG_CONFIG([0.20])
+ # Initialize libtool
+ LT_PREREQ([2.2])
+@@ -57,113 +63,101 @@ AC_CHECK_HEADERS(unistd.h sys/mman.h io.h)
+ # Compiler flags
+ AC_CANONICAL_HOST
+-if test "x$GCC" = "xyes"; then
+-
++AS_IF([test "x$GCC" = "xyes"], [
+       # Make symbols link locally
+-      LDFLAGS="$LDFLAGS -Bsymbolic-functions"
++      LDFLAGS="$LDFLAGS -Bsymbolic-functions -Wl,--as-needed -no-undefined"
+       # Make sure we don't link to libstdc++
+       CXXFLAGS="$CXXFLAGS -fno-rtti -fno-exceptions"
+-
+-      case "$host" in
+-              arm-*-*)
++      AS_CASE([$host],
++              [arm-*-*], [
+                       # Request byte alignment on arm
+                       CXXFLAGS="$CXXFLAGS -mstructure-size-boundary=8"
+-              ;;
+-      esac
+-fi
++              ]
++      )
++])
+ dnl ==========================================================================
+-
+-PKG_CHECK_MODULES(GLIB, glib-2.0 >= 2.16, have_glib=true, have_glib=false)
+-if $have_glib; then
++AC_ARG_WITH([glib],
++      [AS_HELP_STRING([--without-glib], [Build with glib library])]
++)
++AS_IF([test "x$with_glib" != "xno"], [
++      PKG_CHECK_MODULES(GLIB, glib-2.0 >= 2.16 gthread-2.0 gobject-2.0, have_glib=yes, have_glib=no)
++], [
++      have_glib=no
++])
++AS_IF([test "x$have_glib" = "xyes"], [
+       AC_DEFINE(HAVE_GLIB, 1, [Have glib2 library])
+-fi
+-AM_CONDITIONAL(HAVE_GLIB, $have_glib)
+-
+-PKG_CHECK_MODULES(GTHREAD, gthread-2.0, have_gthread=true, have_gthread=false)
+-if $have_gthread; then
+-      AC_DEFINE(HAVE_GTHREAD, 1, [Have gthread2 library])
+-fi
+-AM_CONDITIONAL(HAVE_GTHREAD, $have_gthread)
+-
+-PKG_CHECK_MODULES(GOBJECT, gobject-2.0, have_gobject=true, have_gobject=false)
+-if $have_gobject; then
+-      AC_DEFINE(HAVE_GOBJECT, 1, [Have gobject2 library])
+       GLIB_MKENUMS=`$PKG_CONFIG --variable=glib_mkenums glib-2.0`
+       AC_SUBST(GLIB_MKENUMS)
+-fi
+-AM_CONDITIONAL(HAVE_GOBJECT, $have_gobject)
++], [
++      AS_IF([test "x$with_glib" = "xyes"], [AC_MSG_ERROR([glib requested but not found])])
++])
++AM_CONDITIONAL([HAVE_GLIB], [test "x$have_glib" != "xno"])
+ dnl ==========================================================================
+-
+-PKG_CHECK_MODULES(CAIRO, cairo >= 1.8.0, have_cairo=true, have_cairo=false)
+-if $have_cairo; then
++AC_ARG_WITH([cairo],
++      [AS_HELP_STRING([--without-cairo], [Build with cairo library])]
++)
++AS_IF([test "x$with_cairo" != "xno"], [
++      PKG_CHECK_MODULES(CAIRO, cairo >= 1.8.0 cairo-ft, have_cairo=yes, have_cairo=no)
++], [
++      have_cairo=no
++])
++AS_IF([test "x$have_cairo" = "xyes"], [
+       AC_DEFINE(HAVE_CAIRO, 1, [Have cairo graphics library])
+-fi
+-AM_CONDITIONAL(HAVE_CAIRO, $have_cairo)
+-
+-PKG_CHECK_MODULES(CAIRO_FT, cairo-ft, have_cairo_ft=true, have_cairo_ft=false)
+-if $have_cairo_ft; then
+-      AC_DEFINE(HAVE_CAIRO_FT, 1, [Have cairo-ft support in cairo graphics library])
+-fi
+-AM_CONDITIONAL(HAVE_CAIRO_FT, $have_cairo_ft)
++], [
++      AS_IF([test "x$with_cairo" = "xyes"], [AC_MSG_ERROR([cairo requested but not found])])
++])
++AM_CONDITIONAL([HAVE_CAIRO], [test "x$have_cairo" != "xno"])
+ dnl ==========================================================================
+-
+-PKG_CHECK_MODULES(ICU, icu, have_icu=true, [
+-      have_icu=true
+-      AC_CHECK_HEADERS(unicode/uchar.h,, have_icu=false)
+-      AC_MSG_CHECKING([for libicuuc])
+-      LIBS_old=$LIBS
+-      LIBS="$LIBS -licuuc"
+-      AC_TRY_LINK([#include <unicode/uchar.h>],
+-                  [u_getIntPropertyValue (0, (UProperty)0);],
+-                  AC_MSG_RESULT(yes),
+-                  AC_MSG_RESULT(no);have_icu=false)
+-      LIBS=$LIBS_old
+-      if $have_icu; then
+-              ICU_CFLAGS=-D_REENTRANT
+-              ICU_LIBS="-licuuc"
+-              AC_SUBST(ICU_CFLAGS)
+-              AC_SUBST(ICU_LIBS)
+-      fi
++AC_ARG_WITH([icu],
++      [AS_HELP_STRING([--without-icu], [Build with icu library])]
++)
++AS_IF([test "x$with_icu" != "xno"], [
++      PKG_CHECK_MODULES(ICU, icu-uc, have_icu=yes, have_icu=no)
++], [
++      have_icu=no
+ ])
+-if $have_icu; then
+-      AC_DEFINE(HAVE_ICU, 1, [Have ICU library])
+-fi
+-AM_CONDITIONAL(HAVE_ICU, $have_icu)
++AS_IF([test "x$have_cairo" = "xyes"], [
++      AC_DEFINE(HAVE_ICU, 1, [Have icu library])
++], [
++      AS_IF([test "x$with_icu" = "xyes"], [AC_MSG_ERROR([icu requested but not found])])
++])
++AM_CONDITIONAL([HAVE_ICU], [test "x$have_icu" != "xno"])
+ dnl ==========================================================================
+-
+-PKG_CHECK_MODULES(GRAPHITE, graphite2, have_graphite=true, have_graphite=false)
+-if $have_graphite; then
+-    AC_DEFINE(HAVE_GRAPHITE, 1, [Have Graphite library])
+-fi
+-AM_CONDITIONAL(HAVE_GRAPHITE, $have_graphite)
++AC_ARG_WITH([graphite],
++      [AS_HELP_STRING([--without-graphite], [Build with graphite2 library])]
++)
++AS_IF([test "x$with_graphite" != "xno"], [
++      PKG_CHECK_MODULES(GRAPHITE, graphite, have_graphite=yes, have_graphite=no)
++], [
++      have_graphite=no
++])
++AS_IF([test "x$have_graphite" = "xyes"], [
++      AC_DEFINE(HAVE_GRAPHITE, 1, [Have graphite graphics library])
++], [
++      AS_IF([test "x$with_graphite" = "xyes"], [AC_MSG_ERROR([graphite requested but not found])])
++])
++AM_CONDITIONAL([HAVE_GRAPHITE], [test "x$have_graphite" != "xno"])
+ dnl ==========================================================================
+-
+-PKG_CHECK_MODULES(FREETYPE, freetype2 >= 2.3.8, have_freetype=true, have_freetype=false)
+-if $have_freetype; then
+-      AC_DEFINE(HAVE_FREETYPE, 1, [Have FreeType 2 library])
+-      _save_libs="$LIBS"
+-      _save_cflags="$CFLAGS"
+-      LIBS="$LIBS $FREETYPE_LIBS"
+-      CFLAGS="$CFLAGS $FREETYPE_CFLAGS"
+-      AC_CHECK_FUNCS(FT_Face_GetCharVariantIndex)
+-      LIBS="$_save_libs"
+-      CFLAGS="$_save_cflags"
+-fi
+-AM_CONDITIONAL(HAVE_FREETYPE, $have_freetype)
+-
+-dnl ===========================================================================
+-
+-have_ot=true;
+-if $have_ot; then
+-      AC_DEFINE(HAVE_OT, 1, [Have native OpenType Layout backend])
+-fi
+-AM_CONDITIONAL(HAVE_OT, $have_ot)
++AC_ARG_WITH([freetype],
++      [AS_HELP_STRING([--without-freetype], [Build with freetype2 library])]
++)
++AS_IF([test "x$with_freetype" != "xno"], [
++      PKG_CHECK_MODULES(FREETYPE, freetype2 >= 2.3.8, have_freetype=yes, have_freetype=no)
++], [
++      have_freetype=no
++])
++AS_IF([test "x$have_freetype" = "xyes"], [
++      AC_DEFINE(HAVE_FREETYPE, 1, [Have freetype graphics library])
++], [
++      AS_IF([test "x$with_freetype" = "xyes"], [AC_MSG_ERROR([freetype requested but not found])])
++])
++AM_CONDITIONAL([HAVE_FREETYPE], [test "x$have_freetype" != "xno"])
+ dnl ===========================================================================
+@@ -187,3 +181,14 @@ test/Makefile
+ ])
+ AC_OUTPUT
++
++AC_MSG_NOTICE([
++==============================================================================
++Build configuration:
++      glib:         ${have_glib}
++      cairo:        ${have_cairo}
++      icu:          ${have_icu}
++      graphite:     ${have_graphite}
++      freetype:     ${have_freetype}
++==============================================================================
++])
+diff --git a/src/Makefile.am b/src/Makefile.am
+index 4170663..9d2dd1b 100644
+--- a/src/Makefile.am
++++ b/src/Makefile.am
+@@ -30,28 +30,6 @@ HBSOURCES =  \
+       hb-ot-head-table.hh \
+       hb-ot-hhea-table.hh \
+       hb-ot-hmtx-table.hh \
+-      hb-ot-maxp-table.hh \
+-      hb-ot-name-table.hh \
+-      hb-ot-tag.cc \
+-      hb-private.hh \
+-      hb-shape.cc \
+-      hb-tt-font.cc \
+-      hb-unicode-private.hh \
+-      hb-unicode.cc \
+-      $(NULL)
+-HBHEADERS = \
+-      hb.h \
+-      hb-blob.h \
+-      hb-buffer.h \
+-      hb-common.h \
+-      hb-font.h \
+-      hb-shape.h \
+-      hb-unicode.h \
+-      hb-version.h \
+-      $(NULL)
+-
+-if HAVE_OT
+-HBSOURCES += \
+       hb-ot-layout.cc \
+       hb-ot-layout-common-private.hh \
+       hb-ot-layout-gdef-table.hh \
+@@ -61,6 +39,8 @@ HBSOURCES += \
+       hb-ot-layout-private.hh \
+       hb-ot-map.cc \
+       hb-ot-map-private.hh \
++      hb-ot-maxp-table.hh \
++      hb-ot-name-table.hh \
+       hb-ot-shape.cc \
+       hb-ot-shape-complex-arabic.cc \
+       hb-ot-shape-complex-arabic-table.hh \
+@@ -71,25 +51,34 @@ HBSOURCES += \
+       hb-ot-shape-complex-private.hh \
+       hb-ot-shape-normalize.cc \
+       hb-ot-shape-private.hh \
++      hb-ot-tag.cc \
++      hb-private.hh \
++      hb-shape.cc \
++      hb-tt-font.cc \
++      hb-unicode-private.hh \
++      hb-unicode.cc \
+       $(NULL)
+-HBHEADERS += \
++HBHEADERS = \
++      hb.h \
++      hb-blob.h \
++      hb-buffer.h \
++      hb-common.h \
++      hb-font.h \
+       hb-ot.h \
+       hb-ot-layout.h \
+       hb-ot-shape.h \
+       hb-ot-tag.h \
++      hb-shape.h \
++      hb-unicode.h \
++      hb-version.h \
+       $(NULL)
+-endif
+ if HAVE_GLIB
+-HBCFLAGS += $(GLIB_CFLAGS)
++HBCFLAGS += $(GLIB_CFLAGS) 
+ HBLIBS   += $(GLIB_LIBS)
+ HBSOURCES += hb-glib.cc
+ HBHEADERS += hb-glib.h
+-endif
+-if HAVE_GOBJECT
+-HBCFLAGS += $(GOBJECT_CFLAGS)
+-HBLIBS   += $(GOBJECT_LIBS)
+ HBSOURCES += hb-gobject-structs.cc
+ nodist_HBSOURCES = hb-gobject-enums.cc
+ HBHEADERS += hb-gobject.h
+diff --git a/src/hb-shape.cc b/src/hb-shape.cc
+index 9357f81..25732b7 100644
+--- a/src/hb-shape.cc
++++ b/src/hb-shape.cc
+@@ -36,9 +36,7 @@
+ #ifdef HAVE_UNISCRIBE
+ # include "hb-uniscribe.h"
+ #endif
+-#ifdef HAVE_OT
+-# include "hb-ot-shape.h"
+-#endif
++#include "hb-ot-shape.h"
+ #include "hb-fallback-shape-private.hh"
+ typedef hb_bool_t (*hb_shape_func_t) (hb_font_t          *font,
+@@ -59,9 +57,7 @@ static struct hb_shaper_pair_t {
+ #ifdef HAVE_UNISCRIBE
+   HB_SHAPER_IMPLEMENT (uniscribe),
+ #endif
+-#ifdef HAVE_OT
+   HB_SHAPER_IMPLEMENT (ot),
+-#endif
+   HB_SHAPER_IMPLEMENT (fallback) /* should be last */
+ };
+ #undef HB_SHAPER_IMPLEMENT
+diff --git a/test/Makefile.am b/test/Makefile.am
+index b3c8cc2..8e90483 100644
+--- a/test/Makefile.am
++++ b/test/Makefile.am
+@@ -7,13 +7,12 @@ DISTCLEANFILES =
+ MAINTAINERCLEANFILES =
+ if HAVE_GLIB
+-AM_CPPFLAGS = -DSRCDIR="\"$(srcdir)\"" -I$(top_srcdir)/src/ -I$(top_builddir)/src/ $(GLIB_CFLAGS) $(GTHREAD_CFLAGS)
+-LDADD = $(top_builddir)/src/libharfbuzz.la $(GLIB_LIBS) $(GTHREAD_LIBS)
++AM_CPPFLAGS = -DSRCDIR="\"$(srcdir)\"" -I$(top_srcdir)/src/ -I$(top_builddir)/src/ $(GLIB_CFLAGS)
++LDADD = $(top_builddir)/src/libharfbuzz.la $(GLIB_LIBS)
+ EXTRA_DIST += hb-test.h
+ check_PROGRAMS = $(TEST_PROGS)
+-noinst_PROGRAMS = $(TEST_PROGS)
+ TEST_PROGS = \
+       test-blob \
+@@ -21,17 +20,12 @@ TEST_PROGS = \
+       test-common \
+       test-font \
+       test-object \
++      test-ot-tag \
+       test-shape \
+       test-unicode \
+       test-version \
+       $(NULL)
+-if HAVE_OT
+-TEST_PROGS += \
+-      test-ot-tag \
+-      $(NULL)
+-endif
+-
+ # Tests for header compilation
+ TEST_PROGS += \
+       test-c \
+diff --git a/test/test-c.c b/test/test-c.c
+index 7e7c502..0120744 100644
+--- a/test/test-c.c
++++ b/test/test-c.c
+@@ -43,9 +43,7 @@
+ #include <hb-ft.h>
+ #endif
+-#ifdef HAVE_OT
+ #include <hb-ot.h>
+-#endif
+ #ifdef HAVE_UNISCRIBE
+ #include <hb-uniscribe.h>
+diff --git a/util/Makefile.am b/util/Makefile.am
+index 223a59a..110d8ff 100644
+--- a/util/Makefile.am
++++ b/util/Makefile.am
+@@ -13,7 +13,7 @@ AM_CPPFLAGS = \
+       -I$(top_builddir)/src/ \
+       $(GLIB_CFLAGS) \
+       $(FREETYPE_CFLAGS) \
+-      $(CAIRO_FT_CFLAGS) \
++      $(CAIRO_CFLAGS) \
+       $(NULL)
+ LDADD = \
+       $(top_builddir)/src/libharfbuzz.la \
+@@ -24,7 +24,7 @@ LDADD = \
+ if HAVE_GLIB
+ if HAVE_FREETYPE
+-if HAVE_CAIRO_FT
++if HAVE_CAIRO
+ hb_view_SOURCES = \
+       hb-view.cc \
+       hb-view.hh \
+@@ -38,7 +38,6 @@ hb_view_SOURCES = \
+ hb_view_LDADD = \
+       $(LDADD) \
+       $(CAIRO_LIBS) \
+-      $(CAIRO_FT_LIBS) \
+       $(NULL)
+ bin_PROGRAMS += hb-view
+ endif
+-- 
+1.7.6.3
+
diff --git a/media-libs/harfbuzz/harfbuzz-9999.ebuild b/media-libs/harfbuzz/harfbuzz-9999.ebuild
new file mode 100644 (file)
index 0000000..d8a63a0
--- /dev/null
@@ -0,0 +1,55 @@
+# Copyright 1999-2011 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/media-libs/harfbuzz/harfbuzz-9999.ebuild,v 1.1 2011/10/06 10:48:09 scarabeus Exp $
+
+EAPI=4
+
+EGIT_REPO_URI="git://anongit.freedesktop.org/harfbuzz"
+[[ ${PV} == 9999 ]] && SCM_ECLASS="git-2 autotools"
+inherit base ${SCM_ECLASS}
+
+DESCRIPTION="An OpenType text shaping engine"
+HOMEPAGE="http://www.freedesktop.org/wiki/Software/HarfBuzz"
+SRC_URI=""
+
+LICENSE="MIT"
+SLOT="0"
+[[ ${PV} == 9999 ]] || KEYWORDS="~amd64 ~ppc ~x86 ~amd64-linux ~x86-linux"
+IUSE="cairo +glib graphite +icu static-libs +truetype"
+
+RDEPEND="
+       cairo? ( x11-libs/cairo )
+       glib? ( dev-libs/glib:2 )
+       graphite? ( media-gfx/graphite2 )
+       icu? ( dev-libs/icu )
+       truetype? ( media-libs/freetype:2 )
+"
+DEPEND="${RDEPEND}
+       dev-util/ragel
+       dev-util/pkgconfig
+"
+
+PATCHES=(
+       "${FILESDIR}/${PN}-automagicness.patch"
+)
+
+src_prepare() {
+       base_src_prepare
+       libtoolize --force --copy
+       eautoreconf
+}
+
+src_configure() {
+       econf \
+               $(use_enable static-libs static) \
+               $(use_with cairo) \
+               $(use_with glib) \
+               $(use_with graphite) \
+               $(use_with icu) \
+               $(use_with truetype freetype)
+}
+
+src_install() {
+       default
+       find "${ED}" -name '*.la' -exec rm -f {} +
+}
index 5d46203011d692818de0c4f55fc842d07bb281e7..65d694f1d1ecc8e83f6bf5fb31861fe8434bf0e9 100644 (file)
@@ -2,4 +2,8 @@
 <!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
 <pkgmetadata>
        <herd>openoffice</herd>
+       <use>
+               <flag name='glib'>Enable support for C library routines from <pkg>dev-libs/glib</pkg></flag>
+               <flag name='graphite'>Enable support for non-Roman fonts via <pkg>media-gfx/graphite2</pkg></flag>
+       </use>
 </pkgmetadata>