^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1) # SPDX-License-Identifier: GPL-2.0
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 2)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 3) obj-$(CONFIG_UNICODE) += unicode.o
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 4) obj-$(CONFIG_UNICODE_NORMALIZATION_SELFTEST) += utf8-selftest.o
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 5)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 6) unicode-y := utf8-norm.o utf8-core.o
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 7)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 8) $(obj)/utf8-norm.o: $(obj)/utf8data.h
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 9)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 10) # In the normal build, the checked-in utf8data.h is just shipped.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 11) #
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 12) # To generate utf8data.h from UCD, put *.txt files in this directory
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 13) # and pass REGENERATE_UTF8DATA=1 from the command line.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 14) ifdef REGENERATE_UTF8DATA
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 15)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 16) quiet_cmd_utf8data = GEN $@
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 17) cmd_utf8data = $< \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 18) -a $(srctree)/$(src)/DerivedAge.txt \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 19) -c $(srctree)/$(src)/DerivedCombiningClass.txt \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 20) -p $(srctree)/$(src)/DerivedCoreProperties.txt \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 21) -d $(srctree)/$(src)/UnicodeData.txt \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 22) -f $(srctree)/$(src)/CaseFolding.txt \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 23) -n $(srctree)/$(src)/NormalizationCorrections.txt \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 24) -t $(srctree)/$(src)/NormalizationTest.txt \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 25) -o $@
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 26)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 27) $(obj)/utf8data.h: $(obj)/mkutf8data $(filter %.txt, $(cmd_utf8data)) FORCE
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 28) $(call if_changed,utf8data)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 29)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 30) else
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 31)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 32) $(obj)/utf8data.h: $(src)/utf8data.h_shipped FORCE
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 33) $(call if_changed,shipped)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 34)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 35) endif
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 36)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 37) targets += utf8data.h
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 38) hostprogs += mkutf8data