NULL =

# Base and default-included sources and headers

HB_BASE_sources = \
	hb-atomic-private.hh \
	hb-blob.cc \
	hb-buffer-private.hh \
	hb-buffer-serialize.cc \
	hb-buffer.cc \
	hb-cache-private.hh \
	hb-common.cc \
	hb-face-private.hh \
	hb-face.cc \
	hb-font-private.hh \
	hb-font.cc \
	hb-mutex-private.hh \
	hb-object-private.hh \
	hb-open-file-private.hh \
	hb-open-type-private.hh \
	hb-ot-cbdt-table.hh \
	hb-ot-cmap-table.hh \
	hb-ot-glyf-table.hh \
	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-os2-table.hh \
	hb-ot-post-table.hh \
	hb-ot-tag.cc \
	hb-private.hh \
	hb-set-private.hh \
	hb-set.cc \
	hb-shape.cc \
	hb-shape-plan-private.hh \
	hb-shape-plan.cc \
	hb-shaper-list.hh \
	hb-shaper-impl-private.hh \
	hb-shaper-private.hh \
	hb-shaper.cc \
	hb-unicode-private.hh \
	hb-unicode.cc \
	hb-utf-private.hh \
	hb-warning.cc \
	$(NULL)

HB_BASE_RAGEL_GENERATED_sources = \
	hb-buffer-deserialize-json.hh \
	hb-buffer-deserialize-text.hh \
	$(NULL)
HB_BASE_RAGEL_sources = \
	hb-buffer-deserialize-json.rl \
	hb-buffer-deserialize-text.rl \
	$(NULL)

HB_BASE_headers = \
	hb.h \
	hb-blob.h \
	hb-buffer.h \
	hb-common.h \
	hb-deprecated.h \
	hb-face.h \
	hb-font.h \
	hb-set.h \
	hb-shape.h \
	hb-shape-plan.h \
	hb-unicode.h \
	$(NULL)

HB_NODIST_headers = \
	hb-version.h \
	$(NULL)

HB_FALLBACK_sources = hb-fallback-shape.cc

HB_OT_sources = \
	hb-ot-font.cc \
	hb-ot-layout.cc \
	hb-ot-layout-common-private.hh \
	hb-ot-layout-gdef-table.hh \
	hb-ot-layout-gpos-table.hh \
	hb-ot-layout-gsubgpos-private.hh \
	hb-ot-layout-gsub-table.hh \
	hb-ot-layout-jstf-table.hh \
	hb-ot-layout-private.hh \
	hb-ot-map.cc \
	hb-ot-map-private.hh \
	hb-ot-math.cc \
	hb-ot-math-table.hh \
	hb-ot-shape.cc \
	hb-ot-shape-complex-arabic.cc \
	hb-ot-shape-complex-arabic-fallback.hh \
	hb-ot-shape-complex-arabic-private.hh \
	hb-ot-shape-complex-arabic-table.hh \
	hb-ot-shape-complex-arabic-win1256.hh \
	hb-ot-shape-complex-default.cc \
	hb-ot-shape-complex-hangul.cc \
	hb-ot-shape-complex-hebrew.cc \
	hb-ot-shape-complex-indic.cc \
	hb-ot-shape-complex-indic-private.hh \
	hb-ot-shape-complex-indic-table.cc \
	hb-ot-shape-complex-myanmar.cc \
	hb-ot-shape-complex-thai.cc \
	hb-ot-shape-complex-tibetan.cc \
	hb-ot-shape-complex-use.cc \
	hb-ot-shape-complex-use-private.hh \
	hb-ot-shape-complex-use-table.cc \
	hb-ot-shape-complex-private.hh \
	hb-ot-shape-normalize-private.hh \
	hb-ot-shape-normalize.cc \
	hb-ot-shape-fallback-private.hh \
	hb-ot-shape-fallback.cc \
	hb-ot-shape-private.hh \
	hb-ot-var.cc \
	hb-ot-var-avar-table.hh \
	hb-ot-var-fvar-table.hh \
	hb-ot-var-hvar-table.hh \
	hb-ot-var-mvar-table.hh \
	$(NULL)

HB_OT_RAGEL_GENERATED_sources = \
	hb-ot-shape-complex-indic-machine.hh \
	hb-ot-shape-complex-myanmar-machine.hh \
	hb-ot-shape-complex-use-machine.hh \
	$(NULL)
HB_OT_RAGEL_sources = \
	hb-ot-shape-complex-indic-machine.rl \
	hb-ot-shape-complex-myanmar-machine.rl \
	hb-ot-shape-complex-use-machine.rl \
	$(NULL)

HB_OT_headers = \
	hb-ot.h \
	hb-ot-font.h \
	hb-ot-layout.h \
	hb-ot-math.h \
	hb-ot-shape.h \
	hb-ot-tag.h \
	hb-ot-var.h \
	$(NULL)

# Optional Sources and Headers with external deps

HB_FT_sources = hb-ft.cc
HB_FT_headers = hb-ft.h

HB_GLIB_sources = hb-glib.cc
HB_GLIB_headers = hb-glib.h

HB_GRAPHITE2_sources = hb-graphite2.cc
HB_GRAPHITE2_headers = hb-graphite2.h

# System-dependent sources and headers

HB_CORETEXT_sources = hb-coretext.cc
HB_CORETEXT_headers = hb-coretext.h

HB_DIRECTWRITE_sources = hb-directwrite.cc
HB_DIRECTWRITE_headers = hb-directwrite.h

HB_UNISCRIBE_sources = hb-uniscribe.cc
HB_UNISCRIBE_headers = hb-uniscribe.h

# Additional supplemental sources
HB_UCDN_sources  = hb-ucdn.cc

# Sources for libharfbuzz-gobject and libharfbuzz-icu
HB_ICU_sources = hb-icu.cc
HB_ICU_headers = hb-icu.h

HB_GOBJECT_sources = hb-gobject-structs.cc
HB_GOBJECT_STRUCTS_headers = hb-gobject-structs.h
HB_GOBJECT_headers = hb-gobject.h $(HB_GOBJECT_STRUCTS_headers)
HB_GOBJECT_ENUM_sources = hb-gobject-enums.cc
HB_GOBJECT_ENUM_headers = hb-gobject-enums.h
