[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Emacs-diffs] harfbuzz ab93444 1/7: Add support for building with HarfBu
From: |
Khaled Hosny |
Subject: |
[Emacs-diffs] harfbuzz ab93444 1/7: Add support for building with HarfBuzz |
Date: |
Sun, 9 Dec 2018 17:09:21 -0500 (EST) |
branch: harfbuzz
commit ab93444cbbd06096cdf33a7a76d8e6ee6c37c04a
Author: Khaled Hosny <address@hidden>
Commit: Khaled Hosny <address@hidden>
Add support for building with HarfBuzz
Not used yet.
---
configure.ac | 21 ++++++++++++++++++++-
src/Makefile.in | 6 ++++--
2 files changed, 24 insertions(+), 3 deletions(-)
diff --git a/configure.ac b/configure.ac
index 8b34c3b..3c671b5 100644
--- a/configure.ac
+++ b/configure.ac
@@ -358,6 +358,7 @@ OPTION_DEFAULT_ON([imagemagick],[don't compile with
ImageMagick image support])
OPTION_DEFAULT_ON([json], [don't compile with native JSON support])
OPTION_DEFAULT_ON([xft],[don't use XFT for anti aliased fonts])
+OPTION_DEFAULT_OFF([harfbuzz],[use HarfBuzz for text shaping (experimental)])
OPTION_DEFAULT_ON([libotf],[don't use libotf for OpenType font support])
OPTION_DEFAULT_ON([m17n-flt],[don't use m17n-flt for text shaping])
@@ -3307,10 +3308,24 @@ if test "${HAVE_X11}" = "yes"; then
test "$HAVE_FREETYPE" = "no" && AC_MSG_ERROR(libxft requires
libfreetype)
fi
+ HAVE_HARFBUZZ=no
HAVE_LIBOTF=no
if test "${HAVE_FREETYPE}" = "yes"; then
AC_DEFINE(HAVE_FREETYPE, 1,
[Define to 1 if using the freetype and fontconfig libraries.])
+ if test "${with_harfbuzz}" != "no"; then
+ EMACS_CHECK_MODULES([HARFBUZZ], [harfbuzz])
+ if test "$HAVE_HARFBUZZ" = "yes"; then
+ AC_DEFINE(HAVE_HARFBUZZ, 1, [Define to 1 if using HarfBuzz.])
+ AC_CHECK_LIB(harfbuzz, hb_ft_font_create_referenced,
+ HAVE_HB_FT_FONT_CREATE_REFERENCED=yes,
+ HAVE_HB_FT_FONT_CREATE_REFERENCED=no)
+ if test "${HAVE_HB_FT_FONT_CREATE_REFERENCED}" = "yes"; then
+ AC_DEFINE(HAVE_HB_FT_FONT_CREATE_REFERENCED, 1,
+ [Define to 1 if HarfBuzz has
hb_ft_font_create_referenced.])
+ fi
+ fi
+ fi
if test "${with_libotf}" != "no"; then
EMACS_CHECK_MODULES([LIBOTF], [libotf])
if test "$HAVE_LIBOTF" = "yes"; then
@@ -3344,6 +3359,7 @@ if test "${HAVE_X11}" = "yes"; then
else
HAVE_XFT=no
HAVE_FREETYPE=no
+ HAVE_HARFBUZZ=no
HAVE_LIBOTF=no
HAVE_M17N_FLT=no
fi
@@ -3354,6 +3370,8 @@ AC_SUBST(FREETYPE_CFLAGS)
AC_SUBST(FREETYPE_LIBS)
AC_SUBST(FONTCONFIG_CFLAGS)
AC_SUBST(FONTCONFIG_LIBS)
+AC_SUBST(HARFBUZZ_CFLAGS)
+AC_SUBST(HARFBUZZ_LIBS)
AC_SUBST(LIBOTF_CFLAGS)
AC_SUBST(LIBOTF_LIBS)
AC_SUBST(M17N_FLT_CFLAGS)
@@ -5461,7 +5479,7 @@ Configured for '${canonical}'.
optsep=
emacs_config_features=
for opt in XAW3D XPM JPEG TIFF GIF PNG RSVG CAIRO IMAGEMAGICK SOUND GPM DBUS \
- GCONF GSETTINGS GLIB NOTIFY ACL LIBSELINUX GNUTLS LIBXML2 FREETYPE M17N_FLT \
+ GCONF GSETTINGS GLIB NOTIFY ACL LIBSELINUX GNUTLS LIBXML2 FREETYPE HARFBUZZ
M17N_FLT \
LIBOTF XFT ZLIB TOOLKIT_SCROLL_BARS X_TOOLKIT OLDXMENU X11 XDBE XIM \
NS MODULES THREADS XWIDGETS LIBSYSTEMD JSON CANNOT_DUMP LCMS2 GMP; do
@@ -5520,6 +5538,7 @@ AS_ECHO([" Does Emacs use -lXaw3d?
${HAVE_XAW3D
Does Emacs use -lgnutls? ${HAVE_GNUTLS}
Does Emacs use -lxml2? ${HAVE_LIBXML2}
Does Emacs use -lfreetype? ${HAVE_FREETYPE}
+ Does Emacs use HarfBuzz? ${HAVE_HARFBUZZ}
Does Emacs use -lm17n-flt? ${HAVE_M17N_FLT}
Does Emacs use -lotf? ${HAVE_LIBOTF}
Does Emacs use -lxft? ${HAVE_XFT}
diff --git a/src/Makefile.in b/src/Makefile.in
index 6b2e54a..a8fa5c3 100644
--- a/src/Makefile.in
+++ b/src/Makefile.in
@@ -133,6 +133,8 @@ FONTCONFIG_CFLAGS = @FONTCONFIG_CFLAGS@
FONTCONFIG_LIBS = @FONTCONFIG_LIBS@
FREETYPE_CFLAGS = @FREETYPE_CFLAGS@
FREETYPE_LIBS = @FREETYPE_LIBS@
+HARFBUZZ_CFLAGS = @HARFBUZZ_CFLAGS@
+HARFBUZZ_LIBS = @HARFBUZZ_LIBS@
LIBOTF_CFLAGS = @LIBOTF_CFLAGS@
LIBOTF_LIBS = @LIBOTF_LIBS@
M17N_FLT_CFLAGS = @M17N_FLT_CFLAGS@
@@ -370,7 +372,7 @@ EMACS_CFLAGS=-Demacs $(MYCPPFLAGS) -I. -I$(srcdir) \
$(XRANDR_CFLAGS) $(XINERAMA_CFLAGS) $(XFIXES_CFLAGS) $(XDBE_CFLAGS) \
$(WEBKIT_CFLAGS) $(LCMS2_CFLAGS) \
$(SETTINGS_CFLAGS) $(FREETYPE_CFLAGS) $(FONTCONFIG_CFLAGS) \
- $(LIBOTF_CFLAGS) $(M17N_FLT_CFLAGS) $(DEPFLAGS) \
+ $(HARFBUZZ_CFLAGS) $(LIBOTF_CFLAGS) $(M17N_FLT_CFLAGS) $(DEPFLAGS) \
$(LIBSYSTEMD_CFLAGS) $(JSON_CFLAGS) \
$(LIBGNUTLS_CFLAGS) $(NOTIFY_CFLAGS) $(CAIRO_CFLAGS) \
$(WERROR_CFLAGS)
@@ -500,7 +502,7 @@ LIBES = $(LIBS) $(W32_LIBS) $(LIBS_GNUSTEP) $(LIBX_BASE)
$(LIBIMAGE) \
$(XDBE_LIBS) \
$(LIBXML2_LIBS) $(LIBGPM) $(LIBS_SYSTEM) $(CAIRO_LIBS) \
$(LIBS_TERMCAP) $(GETLOADAVG_LIBS) $(SETTINGS_LIBS) $(LIBSELINUX_LIBS) \
- $(FREETYPE_LIBS) $(FONTCONFIG_LIBS) $(LIBOTF_LIBS) $(M17N_FLT_LIBS) \
+ $(FREETYPE_LIBS) $(FONTCONFIG_LIBS) $(HARFBUZZ_LIBS) $(LIBOTF_LIBS)
$(M17N_FLT_LIBS) \
$(LIBGNUTLS_LIBS) $(LIB_PTHREAD) $(GETADDRINFO_A_LIBS) $(LCMS2_LIBS) \
$(NOTIFY_LIBS) $(LIB_MATH) $(LIBZ) $(LIBMODULES) $(LIBSYSTEMD_LIBS) \
$(JSON_LIBS) $(GMP_LIB)
- [Emacs-diffs] branch harfbuzz created (now 981b3d2), Khaled Hosny, 2018/12/09
- [Emacs-diffs] harfbuzz ca0b6e9 4/7: Cache hb_font_t, Khaled Hosny, 2018/12/09
- [Emacs-diffs] harfbuzz 9014e05 3/7: Allow turning HarfBuzz off at run time, Khaled Hosny, 2018/12/09
- [Emacs-diffs] harfbuzz ab93444 1/7: Add support for building with HarfBuzz,
Khaled Hosny <=
- [Emacs-diffs] harfbuzz 0a1e695 6/7: WIP: implement some Unicode callback functions, Khaled Hosny, 2018/12/09
- [Emacs-diffs] harfbuzz a2bea37 2/7: First attempt at HarfBuzz shaping, Khaled Hosny, 2018/12/09
- [Emacs-diffs] harfbuzz 981b3d2 7/7: Fix uni_combining(), Khaled Hosny, 2018/12/09
- [Emacs-diffs] harfbuzz 68e675d 5/7: Set cluster level to one, Khaled Hosny, 2018/12/09