Refactoring 'test' functions into kunit tests, to test utf-8 support in unicode subsystem. This allows the utf8 tests to be run alongside the KUnit test suite using kunit-tool, quickly compiling and running all desired tests as part of the KUnit test suite, instead of compiling the selftest module and loading it. The refactoring kept the original testing logic intact, while adopting a testing pattern across different kernel modules and leveraging KUnit's benefits. Co-developed-by: Pedro Orlando <porlando@lkcamp.dev> Signed-off-by: Pedro Orlando <porlando@lkcamp.dev> Co-developed-by: Danilo Pereira <dpereira@lkcamp.dev> Signed-off-by: Danilo Pereira <dpereira@lkcamp.dev> Signed-off-by: Gabriela Bittencourt <gbittencourt@lkcamp.dev> Reviewed-by: David Gow <davidgow@google.com> Acked-by: Gabriel Krisman Bertazi <krisman@suse.de> Reviewed-by: Rae Moar <rmoar@google.com> Link: https://lore.kernel.org/r/20241202075545.3648096-6-davidgow@google.com Signed-off-by: Kees Cook <kees@kernel.org>
42 lines
1.0 KiB
Makefile
42 lines
1.0 KiB
Makefile
# SPDX-License-Identifier: GPL-2.0
|
|
|
|
ifneq ($(CONFIG_UNICODE),)
|
|
obj-y += unicode.o
|
|
endif
|
|
obj-$(CONFIG_UNICODE) += utf8data.o
|
|
obj-$(CONFIG_UNICODE_NORMALIZATION_KUNIT_TEST) += utf8-selftest.o
|
|
|
|
unicode-y := utf8-norm.o utf8-core.o
|
|
|
|
$(obj)/utf8-data.o: $(obj)/utf8data.c
|
|
|
|
# In the normal build, the checked-in utf8data.c is just shipped.
|
|
#
|
|
# To generate utf8data.c from UCD, put *.txt files in this directory
|
|
# and pass REGENERATE_UTF8DATA=1 from the command line.
|
|
ifdef REGENERATE_UTF8DATA
|
|
|
|
quiet_cmd_utf8data = GEN $@
|
|
cmd_utf8data = $< \
|
|
-a $(src)/DerivedAge.txt \
|
|
-c $(src)/DerivedCombiningClass.txt \
|
|
-p $(src)/DerivedCoreProperties.txt \
|
|
-d $(src)/UnicodeData.txt \
|
|
-f $(src)/CaseFolding.txt \
|
|
-n $(src)/NormalizationCorrections.txt \
|
|
-t $(src)/NormalizationTest.txt \
|
|
-o $@
|
|
|
|
$(obj)/utf8data.c: $(obj)/mkutf8data $(filter %.txt, $(cmd_utf8data)) FORCE
|
|
$(call if_changed,utf8data)
|
|
|
|
else
|
|
|
|
$(obj)/utf8data.c: $(src)/utf8data.c_shipped FORCE
|
|
$(call if_changed,copy)
|
|
|
|
endif
|
|
|
|
targets += utf8data.c
|
|
hostprogs += mkutf8data
|