On Thu, Aug 07, 2003 at 02:42:30PM -0400, Andrew Gallatin wrote: > > Using BSD make, how can I apply different rules based on different > directories while using only a single makefile? > There's a .CURDIR variable that can be used to conditionalize parts of a makefile.
> Ie, the appended Makefile results in the following compilations: > > gcc -DLIB -c lib/foo.c -o lib/foo.o > gcc -DLIB -c lib/bar.c -o lib/bar.o > gcc -DMCP -c mcp/baz.c -o mcp/baz.o > > Is it possible to do something similar with BSD make? > It just works "as is" with bmake. What's your problem, Drew? ;-) $ make -n cc -O -pipe -march=pentiumpro -c lib/foo.c cc -O -pipe -march=pentiumpro -c lib/bar.c cc -O -pipe -march=pentiumpro -c mcp/baz.c > ################################### > .SUFFIXES: > .SUFFIXES: .o .c > > LIB=\ > lib/foo.c \ > lib/bar.c > > MCP=\ > mcp/baz.c > > all: $(LIB:.c=.o) $(MCP:.c=.o) > > lib/%.o: lib/%.c > gcc -DLIB -c $< -o $@ > > mcp/%.o: mcp/%.c > gcc -DMCP -c $< -o $@ > > .PHONY: clean > clean: > rm -f $(LIB:.c=.o) $(MCP:.c=.o) > ################################### -- Ruslan Ermilov Sysadmin and DBA, [EMAIL PROTECTED] Sunbay Software Ltd, [EMAIL PROTECTED] FreeBSD committer
pgp00000.pgp
Description: PGP signature