BEGIN {
	print "/* generated by awk */";
	print "#ifdef E";
}

END {
	print "#endif";
}

/#define/ {
	comment = $2;
	num = $3;
	# extract the comment, if present
	if (index($0, "/*")) {
		sub(/[^/]*\/\*/, "");
		sub(/ *\*\//, "");
		comment = comment $0;
	}
	printf "E(%3s, \"%s\")\n", num, comment;
}