On 10/24/08, Greg Chicares <[EMAIL PROTECTED]> wrote: > On 2008-10-24 16:13Z, Andrei Deftu wrote: > > On Fri, Oct 24, 2008 at 6:51 PM, Paul Smith <[EMAIL PROTECTED]> wrote: > >> Why can't youjust use a normal pattern rule? Something like: > >> > >> %.cpp_o : %.cpp > >> # bla bla > >> > >> ? > > > > Thanks but this rule matches every .cpp_o files and I want it to match > > only the files from LIST. > > e.g.: > > > > LIST1 := file1.cpp file2.cpp file3.cpp > > LIST2 := file4.cpp file5.cpp file6.cpp > > > > and I want the files from LIST1 to be built using one rule and the > > ones from LIST2 using other rule. Then, your solution does not work. > > > How does the rule vary--can you parameterize it? > > For example, if it varies only by $(CXXFLAGS): > > $(LIST1): CXXFLAGS := flags1 > $(LIST2): CXXFLAGS := flags2 > > %.cpp_o : %.cpp > $(CXX) $(CXXFLAGS) $< -o$@ >
Or you could use static patterns: LIST1 := file1.cpp file2.cpp file3.cpp LIST2 := file4.cpp file5.cpp file6.cpp LIST1_o := $(LIST1:.cpp=.o) LIST2_o := $(LIST2:.cpp=.o) all: $(LIST1_o) $(LIST2_o) $(LIST1_o): %.o: %.cpp @echo "From list 1: gcc $< -o $@" $(LIST2_o): %.o: %.cpp @echo "From list 2: gcc $< -o $@" $ make >From list 1: gcc file1.cpp -o file1.o >From list 1: gcc file2.cpp -o file2.o >From list 1: gcc file3.cpp -o file3.o >From list 2: gcc file4.cpp -o file4.o >From list 2: gcc file5.cpp -o file5.o >From list 2: gcc file6.cpp -o file6.o -Mike _______________________________________________ Help-make mailing list Help-make@gnu.org http://lists.gnu.org/mailman/listinfo/help-make