# For the lexer.
grub_script.yy.c grub_script.yy.h: script/yylex.l
$(LEX) -o grub_script.yy.c --header-file=grub_script.yy.h $(srcdir)/script/yylex.l
- sed -i 's/^#include.*\(<stdio\.h>\|<string\.h>\|<errno\.h>\|<stdlib\.h>\|<unistd\.h>\)//g' grub_script.yy.h
- sed -i 's/^#include.*\(<stdio\.h>\|<string\.h>\|<errno\.h>\|<stdlib\.h>\|<unistd\.h>\)//g' grub_script.yy.c
DISTCLEANFILES += grub_script.yy.c grub_script.yy.h
# For grub-script-check.
# For sh.mod.
sh_mod_SOURCES = script/main.c script/script.c script/execute.c \
script/function.c script/lexer.c grub_script.tab.c grub_script.yy.c
-sh_mod_CFLAGS = $(COMMON_CFLAGS)
+sh_mod_CFLAGS = $(COMMON_CFLAGS) $(POSIX_CFLAGS)
sh_mod_LDFLAGS = $(COMMON_LDFLAGS)
ifneq (, $(FONT_SOURCE))
%top{
+#include <sys/types.h>
+
+typedef size_t yy_size_t;
+#define YY_TYPEDEF_YY_SIZE_T 1
+
/*
* Some flex hacks for -nostdinc; XXX We need to fix these when libc
* support becomes availble in GRUB.
*/
-#include <grub/types.h>
-
-typedef grub_size_t size_t;
-typedef grub_size_t yy_size_t;
-#define YY_TYPEDEF_YY_SIZE_T 1
-
-#define FILE void
+#ifndef GRUB_UTIL
#define stdin 0
#define stdout 0
-#define EOF 0
-
-#define errno grub_errno
-#define EINVAL GRUB_ERR_BAD_NUMBER
-#define ENOMEM GRUB_ERR_OUT_OF_MEMORY
-
-#define strlen grub_strlen
-#define memset grub_memset
#define fprintf(...) 0
#define exit(...)
+#endif
#pragma GCC diagnostic warning "-Wunused-variable"
#pragma GCC diagnostic warning "-Wunused-function"