From 23768a99e08cbe691772b7514c023d3184989ff8 Mon Sep 17 00:00:00 2001 From: Behdad Esfahbod Date: Mon, 17 Jun 2019 20:29:29 -0700 Subject: [PATCH] [config] Replace HAVE_FALLBACK with HB_NO_FALLBACK_SHAPE This disables fallback shaper in tiny builds. Projects that don't use our build system and want to disable fallback shaper (eg. Firefox) should define HB_NO_FALLBACK_SHAPE now. Part of https://github.com/harfbuzz/harfbuzz/issues/1652 --- CMakeLists.txt | 2 -- configure.ac | 8 -------- src/Makefile.am | 4 ---- src/Makefile.sources | 5 +---- src/hb-config.hh | 1 + src/hb-fallback-shape.cc | 3 +++ src/hb-shaper-list.hh | 2 +- 7 files changed, 6 insertions(+), 19 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index cbff81e95..f2b2268a2 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -88,8 +88,6 @@ include_directories(AFTER ${PROJECT_BINARY_DIR}/src ) -add_definitions(-DHAVE_FALLBACK) - # We need PYTHON_EXECUTABLE to be set for running the tests... include (FindPythonInterp) diff --git a/configure.ac b/configure.ac index d48823d25..ade6840e8 100644 --- a/configure.ac +++ b/configure.ac @@ -136,14 +136,6 @@ AM_CONDITIONAL(HAVE_PTHREAD, $have_pthread) dnl ========================================================================== -have_fallback=true -if $have_fallback; then - AC_DEFINE(HAVE_FALLBACK, 1, [Have simple TrueType Layout backend]) -fi -AM_CONDITIONAL(HAVE_FALLBACK, $have_fallback) - -dnl =========================================================================== - AC_ARG_WITH(glib, [AS_HELP_STRING([--with-glib=@<:@yes/no/auto@:>@], [Use glib @<:@default=auto@:>@])],, diff --git a/src/Makefile.am b/src/Makefile.am index d126c4017..016229b34 100644 --- a/src/Makefile.am +++ b/src/Makefile.am @@ -28,10 +28,6 @@ HBSOURCES = $(HB_BASE_sources) HBSOURCES += $(HB_BASE_RAGEL_GENERATED_sources) HBHEADERS = $(HB_BASE_headers) -if HAVE_FALLBACK -HBSOURCES += $(HB_FALLBACK_sources) -endif - if HAVE_PTHREAD HBCFLAGS += $(PTHREAD_CFLAGS) HBNONPCLIBS += $(PTHREAD_LIBS) diff --git a/src/Makefile.sources b/src/Makefile.sources index 70983f135..af0296b67 100644 --- a/src/Makefile.sources +++ b/src/Makefile.sources @@ -36,6 +36,7 @@ HB_BASE_sources = \ hb-dispatch.hh \ hb-face.cc \ hb-face.hh \ + hb-fallback-shape.cc \ hb-font.cc \ hb-font.hh \ hb-iter.hh \ @@ -200,10 +201,6 @@ HB_BASE_headers = \ hb.h \ $(NULL) -HB_FALLBACK_sources = \ - hb-fallback-shape.cc \ - $(NULL) - # Optional Sources and Headers with external deps HB_FT_sources = hb-ft.cc diff --git a/src/hb-config.hh b/src/hb-config.hh index 56c85a042..491979653 100644 --- a/src/hb-config.hh +++ b/src/hb-config.hh @@ -99,6 +99,7 @@ #endif #ifdef HB_NO_LEGACY +#define HB_NO_FALLBACK_SHAPE #define HB_NO_OT_LAYOUT_BLACKLIST #define HB_NO_OT_SHAPE_FALLBACK #endif diff --git a/src/hb-fallback-shape.cc b/src/hb-fallback-shape.cc index 09f02900f..c5b7c2c23 100644 --- a/src/hb-fallback-shape.cc +++ b/src/hb-fallback-shape.cc @@ -26,6 +26,7 @@ #include "hb-shaper-impl.hh" +#ifndef HB_NO_FALLBACK_SHAPE /* * shaper face data @@ -120,3 +121,5 @@ _hb_fallback_shape (hb_shape_plan_t *shape_plan HB_UNUSED, return true; } + +#endif diff --git a/src/hb-shaper-list.hh b/src/hb-shaper-list.hh index 25c584bc0..4108e7aab 100644 --- a/src/hb-shaper-list.hh +++ b/src/hb-shaper-list.hh @@ -47,6 +47,6 @@ HB_SHAPER_IMPLEMENT (directwrite) HB_SHAPER_IMPLEMENT (coretext) #endif -#ifdef HAVE_FALLBACK +#ifndef HB_NO_FALLBACK_SHAPE HB_SHAPER_IMPLEMENT (fallback) /* <--- This should be last. */ #endif