# uClibc API tests
# Licensed under the LGPL v2.1, see the file COPYING.LIB in this tarball.

SHELL_TESTS := shell_tst-API
run: $(SHELL_TESTS)

define get_codes
	$(subst .,,$(sort $(suffix $(subst -,.,$(foreach x,$(1),$(if $(findstring -,$(x)),$(x),))))))
endef
sym_files = $(patsubst %.syms,%,$(wildcard *.syms))
stds = $(patsubst .%,%,$(sort $(suffix $(sym_files))))
tests=$(foreach s,$(stds),$(patsubst %.$(s),%,$(sym_files)))
codes=$(call get_codes,$(tests))

shell_tst-API: uclibc_out=$(patsubst shell_%,%,$@).out
shell_tst-API: glibc_out=$(patsubst shell_%,%_glibc,$@).out
shell_tst-API:
	@exec echo "DISABLED for now, needs improvement"
shell_tst-API_DISABLED:
	$(showtest)
	$(Q)top_builddir=$(top_builddir) AWK=$(AWK) \
	uclibc_out=$(uclibc_out) glibc_out=$(glibc_out) \
	$(SHELL) \
		$(patsubst shell_%,%.sh,$@) $(stds) "$(tests)"
	$(do_showdiff) $(glibc_out) $(uclibc_out) ; \
	exec diff -u "$(glibc_out)" "$(uclibc_out)"