Isn't 'make depend' optional?

Bang Jun-Young junyoung at mogua.com
Mon Aug 5 01:46:42 CDT 2002


Hi,

I got the following error with wine-20020804 when I skipped 'make depend'
before doing 'make':

gmake[2]: Entering directory `/u0/work/wine-20020804/tools/widl'
gcc -c -I. -I. -I../../include -I../../include  -O2 -Wall -mpreferred-stack-boundary=2  -D__WINE__ -D_REENTRANT -I/usr/X11R6/include -o header.o header.c
header.c:36: y.tab.h: No such file or directory
gmake[2]: *** [header.o] Error 1
gmake[2]: Leaving directory `/u0/work/wine-20020804/tools/widl'
gmake[1]: *** [widl] Error 2
gmake[1]: Leaving directory `/u0/work/wine-20020804/tools'
gmake: *** [tools] Error 2

This was due to dependency that widl/*.c require y.tab.h in common but 
y.tab.h is not generated before compilation is being done. I have worked
around it as follows:

--- Make.rules.in.orig	Sat Aug  3 04:34:21 2002
+++ Make.rules.in	Mon Aug  5 14:57:17 2002
@@ -112,7 +112,7 @@
 CLEAN_FILES     = *.o *.a *.so *.ln *.$(LIBEXT) \\\#*\\\# *~ *% .\\\#* *.bak *.orig *.rej \
                   *.flc *.spec.c *.spec.def *.glue.c *.dbg.c y.tab.c y.tab.h @LEX_OUTPUT_ROOT at .c core
 
-OBJS = $(C_SRCS:.c=.o) $(GEN_C_SRCS:.c=.o) $(GEN_ASM_SRCS:.s=.o) $(ASM_SRCS:.S=.o) $(EXTRA_OBJS)
+OBJS = $(EXTRA_OBJS) $(C_SRCS:.c=.o) $(GEN_C_SRCS:.c=.o) $(GEN_ASM_SRCS:.s=.o) $(ASM_SRCS:.S=.o)
 
 RCOBJS = $(RC_SRCS:.rc=.res.o)
 LINTS  = $(C_SRCS:.c=.ln)

Obviously the patch doesn't look good. Is there any better solution
for this? What about introducing PREEXTRA_OBJS and POSTEXTRA_OBJS?

Jun-Young

-- 
Bang Jun-Young <junyoung at mogua.com>



More information about the wine-devel mailing list