# Ripped from mt-vxworks5
# Autoconfiguration fails for Elate because dummy.c includes stddef.h
# which pulls in string.h, screwing everything up

HDEFINES = -DNO_SYS_PARAM_H -DNO_SYS_FILE_H
CONFIG_H = econfig.h
NEEDED_LIST = eneeded-list

econfig.h: $(srcdir)/functions.def
	echo "/* !Automatically generated from $(srcdir)/functions.def"\
	    "- DO NOT EDIT! */" >econfig.h
	foo() { grep -q $$1 $(ELATE)/lang/cc/lib/libsys.ism \
	    || echo -e "#ifndef NEED_$$1\n# define NEED_$$1\n#endif"; }; \
	for f in `sed -ne '/^DEF[FV]/s/[^(]*(\([^,]*\).*/\1/p' $(srcdir)/functions.def`; \
	    do foo $$f; done >>econfig.h

eneeded-list: $(srcdir)/functions.def
	sed -ne '/^DEF(/s/DEF(\([^,]*\).*/\1/p' $(srcdir)/functions.def \
	    | xargs -n1 -i -- $(SHELL) -c \
		'grep -q {} $(ELATE)/lang/cc/lib/libsys.ism \
		    || echo -n "{}.o "' >eneeded-list
