blob: 8ad3b22de5a6cf1b33300771f11f70f11a1b1164 [file] [log] [blame]
From 971d48a00ef82880c34e89778bf430a01360ebd5 Mon Sep 17 00:00:00 2001
From: Roy Li <rongqing.li@windriver.com>
Date: Mon, 18 May 2015 16:28:36 +0800
Subject: [PATCH] [PATCH] fix the YACC rule to fix a building failure
Upstream-Statu: Pending
The original rule will create the header file twice, one is that the header
file as the object file is created, other time is when create the C source file.
since YACC always has "-d" parameter.
This lead to a race when compile amd_tok.o, the header file maybe rewritten.
|----------------------
|amd_tok.l:359:10: error: 'RBRACKET' undeclared (first use in this function)
| ")" { return RBRACKET; }
| ^
|../Makefile.rules:64: recipe for target 'amd_tok.o' failed
|----------------------
Signed-off-by: Roy Li <rongqing.li@windriver.com>
---
lib/Makefile | 6 ++++--
modules/Makefile | 3 ++-
2 files changed, 6 insertions(+), 3 deletions(-)
--- a/lib/Makefile
+++ b/lib/Makefile
@@ -53,7 +53,8 @@ mount_xdr.o: mount_xdr.c
nss_tok.c: nss_tok.l
$(LEX) -o$@ -Pnss_ $?
-nss_parse.tab.c nss_parse.tab.h: nss_parse.y
+nss_parse.tab.h: nss_parse.tab.c
+nss_parse.tab.c: nss_parse.y
$(YACC) -v -d -p nss_ -b nss_parse $?
nss_tok.o: nss_tok.c nss_parse.tab.h
--- a/modules/Makefile
+++ b/modules/Makefile
@@ -103,7 +103,8 @@ amd_tok.c: amd_tok.l
amd_tok.o: amd_tok.c amd_parse.tab.h
-amd_parse.tab.c amd_parse.tab.h: amd_parse.y
+amd_parse.tab.h: amd_parse.tab.c
+amd_parse.tab.c: amd_parse.y
$(YACC) -v -d -p amd_ -b amd_parse $?
amd_parse.tab.o: amd_parse.tab.c amd_parse.tab.h
--- a/daemon/Makefile
+++ b/daemon/Makefile
@@ -16,7 +16,7 @@ YACCSRC = master_tok.c master_parse.tab.
version := $(shell cat ../.version)
CFLAGS += -rdynamic $(DAEMON_CFLAGS) -D_GNU_SOURCE -I../include
-CFLAGS += -DAUTOFS_LIB_DIR=\"$(autofslibdir)\"
+CFLAGS += -DAUTOFS_LIB_DIR=\"$(autofslibdir)\"
CFLAGS += -DAUTOFS_MAP_DIR=\"$(autofsmapdir)\"
CFLAGS += -DAUTOFS_CONF_DIR=\"$(autofsconfdir)\"
CFLAGS += -DAUTOFS_FIFO_DIR=\"$(autofsfifodir)\"
@@ -44,7 +44,8 @@ automount: $(OBJS) $(AUTOFS_LIB)
master_tok.c: master_tok.l
$(LEX) -o$@ -Pmaster_ $?
-master_parse.tab.c master_parse.tab.h: master_parse.y
+master_parse.tab.h: master_parse.tab.c
+master_parse.tab.c: master_parse.y
$(YACC) -v -d -p master_ -b master_parse $?
master_tok.o: master_tok.c master_parse.tab.h
@@ -57,5 +58,3 @@ clean:
install: all
install -d -m 755 $(INSTALLROOT)$(sbindir)
install -c automount -m 755 $(INSTALLROOT)$(sbindir)
-
-