[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
implicit prerequisites *.w
From: |
Jens Schweikhardt |
Subject: |
implicit prerequisites *.w |
Date: |
Thu, 5 Apr 2001 17:25:39 +0200 |
User-agent: |
Mutt/1.2.5i |
hello, world\n
I'm trying to reduce make's workload a little bit by removing suffix
rules and match-anything rules. However, even though I've cleared the
.SUFFIXES, gmake tries to derive a hello.c from a hello.w and calls that
"Trying implicit prerequisite". Why does gmake also consider a web (of
TeX) file even though it does not consider lex (.l) and yacc (.y) files
for creation of a *.c file? I expected that clearing the .SUFFIXES would
inhibit that.
I know I can use -r, but this is not what I want. I want the effect of
-r using frobs *within* the Makefile.
address@hidden:~/tmp/make $ cat Makefile
.SUFFIXES:
% :: %,v
% :: RCS/%,v
% :: RCS/%
% :: s.%
% :: SCCS/s.%
hello: hello.c
gcc -o $@ $<
address@hidden:~/tmp/make $ gmake -d
GNU Make version 3.79.1, by Richard Stallman and Roland McGrath.
Built for i386--freebsd4.2
Copyright (C) 1988, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 2000
Free Software Foundation, Inc.
This is free software; see the source for copying conditions.
There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A
PARTICULAR PURPOSE.
Report bugs to <address@hidden>.
Reading makefiles...
Reading makefile `Makefile'...
Updating makefiles....
Considering target file `Makefile'.
Looking for an implicit rule for `Makefile'.
No implicit rule found for `Makefile'.
Finished prerequisites of target file `Makefile'.
No need to remake target `Makefile'.
Updating goal targets....
Considering target file `hello'.
File `hello' does not exist.
Considering target file `hello.c'.
Looking for an implicit rule for `hello.c'.
Trying pattern rule with stem `hello'.
Trying implicit prerequisite `hello.w'. <---------
Trying pattern rule with stem `hello'.
Trying implicit prerequisite `hello.w'. <--why again?
Looking for a rule with intermediate file `hello.w'.
Avoiding implicit rule recursion.
No implicit rule found for `hello.c'.
Finished prerequisites of target file `hello.c'.
No need to remake target `hello.c'.
Finished prerequisites of target file `hello'.
Must remake target `hello'.
gcc -o hello hello.c
Child access: user 1897 (real 1897), group 110 (real 110)
Putting child 0x0806f600 (hello) PID 22222 on the chain.
Live child 0x0806f600 (hello) PID 22222
Got a SIGCHLD; 1 unreaped children.
Reaping winning child 0x0806f600 PID 22222
Removing child 0x0806f600 PID 22222 from chain.
Successfully remade target file `hello'.
Regards,
Jens
--
Jens Schweikhardt http://www.schweikhardt.net/
SIGSIG -- signature too long (core dumped)
- implicit prerequisites *.w,
Jens Schweikhardt <=