162306a36Sopenharmony_ci# SPDX-License-Identifier: GPL-2.0
262306a36Sopenharmony_ci
362306a36Sopenharmony_ciifneq ($(CONFIG_UNICODE),)
462306a36Sopenharmony_ciobj-y			+= unicode.o
562306a36Sopenharmony_ciendif
662306a36Sopenharmony_ciobj-$(CONFIG_UNICODE)	+= utf8data.o
762306a36Sopenharmony_ciobj-$(CONFIG_UNICODE_NORMALIZATION_SELFTEST) += utf8-selftest.o
862306a36Sopenharmony_ci
962306a36Sopenharmony_ciunicode-y := utf8-norm.o utf8-core.o
1062306a36Sopenharmony_ci
1162306a36Sopenharmony_ci$(obj)/utf8-data.o: $(obj)/utf8data.c
1262306a36Sopenharmony_ci
1362306a36Sopenharmony_ci# In the normal build, the checked-in utf8data.c is just shipped.
1462306a36Sopenharmony_ci#
1562306a36Sopenharmony_ci# To generate utf8data.c from UCD, put *.txt files in this directory
1662306a36Sopenharmony_ci# and pass REGENERATE_UTF8DATA=1 from the command line.
1762306a36Sopenharmony_ciifdef REGENERATE_UTF8DATA
1862306a36Sopenharmony_ci
1962306a36Sopenharmony_ciquiet_cmd_utf8data = GEN     $@
2062306a36Sopenharmony_ci      cmd_utf8data = $< \
2162306a36Sopenharmony_ci		-a $(srctree)/$(src)/DerivedAge.txt \
2262306a36Sopenharmony_ci		-c $(srctree)/$(src)/DerivedCombiningClass.txt \
2362306a36Sopenharmony_ci		-p $(srctree)/$(src)/DerivedCoreProperties.txt \
2462306a36Sopenharmony_ci		-d $(srctree)/$(src)/UnicodeData.txt \
2562306a36Sopenharmony_ci		-f $(srctree)/$(src)/CaseFolding.txt \
2662306a36Sopenharmony_ci		-n $(srctree)/$(src)/NormalizationCorrections.txt \
2762306a36Sopenharmony_ci		-t $(srctree)/$(src)/NormalizationTest.txt \
2862306a36Sopenharmony_ci		-o $@
2962306a36Sopenharmony_ci
3062306a36Sopenharmony_ci$(obj)/utf8data.c: $(obj)/mkutf8data $(filter %.txt, $(cmd_utf8data)) FORCE
3162306a36Sopenharmony_ci	$(call if_changed,utf8data)
3262306a36Sopenharmony_ci
3362306a36Sopenharmony_cielse
3462306a36Sopenharmony_ci
3562306a36Sopenharmony_ci$(obj)/utf8data.c: $(src)/utf8data.c_shipped FORCE
3662306a36Sopenharmony_ci	$(call if_changed,copy)
3762306a36Sopenharmony_ci
3862306a36Sopenharmony_ciendif
3962306a36Sopenharmony_ci
4062306a36Sopenharmony_citargets += utf8data.c
4162306a36Sopenharmony_cihostprogs += mkutf8data
42