diff options
Diffstat (limited to 'meta/recipes-extended/ltp/ltp/determinism.patch')
-rw-r--r-- | meta/recipes-extended/ltp/ltp/determinism.patch | 43 |
1 files changed, 43 insertions, 0 deletions
diff --git a/meta/recipes-extended/ltp/ltp/determinism.patch b/meta/recipes-extended/ltp/ltp/determinism.patch new file mode 100644 index 0000000000..76d40721b8 --- /dev/null +++ b/meta/recipes-extended/ltp/ltp/determinism.patch @@ -0,0 +1,43 @@ +open_posix_testsuite/generate-makefiles.sh: Fix determinism issue + +Currently the list of tests is generated by the order of the files found +within the directories. This results in differences in the run.sh and +Makefiles. Within Yocto Project this results in differing target +test packages. The fix is simple, just sort the output from locate-test. + +mk/lib.mk: Sort wildcard expansion for determinism + +The order of the objects linked into libltp.a varies depending on the +order of the files found on disk. This results in most ltp binaries +differing depending on that order too. + +Sort the wildcard expansion of *.c which leads to reproducible binaries. + +Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> +Upstream-Status: Submitted [http://lists.linux.it/pipermail/ltp/2021-March/021272.html http://lists.linux.it/pipermail/ltp/2021-March/021273.html] + +Index: git/testcases/open_posix_testsuite/scripts/generate-makefiles.sh +=================================================================== +--- git.orig/testcases/open_posix_testsuite/scripts/generate-makefiles.sh ++++ git/testcases/open_posix_testsuite/scripts/generate-makefiles.sh +@@ -24,7 +24,7 @@ generate_locate_test_makefile() { + + echo "Generating $maketype Makefiles" + +- locate-test --$maketype | sed -e 's,^./,,g' > make-gen.$maketype ++ locate-test --$maketype | sed -e 's,^./,,g' | sort > make-gen.$maketype + + generate_makefiles make-gen.$maketype $* + +Index: git/include/mk/lib.mk +=================================================================== +--- git.orig/include/mk/lib.mk ++++ git/include/mk/lib.mk +@@ -50,6 +50,7 @@ endif + MAKE_TARGETS += $(LIB) + + LIBSRCS ?= $(wildcard $(abs_srcdir)/*.c) ++LIBSRCS := $(sort $(LIBSRCS)) + LIBSRCS := $(abspath $(LIBSRCS)) + LIBSRCS := $(subst $(abs_srcdir)/,,$(wildcard $(LIBSRCS))) + LIBSRCS := $(filter-out $(FILTER_OUT_LIBSRCS),$(LIBSRCS)) |