2012-01-20 2 views
3

Я пытаюсь написать makefile для компиляции программы с исходными файлами с расширениями .f и .f90. У меня есть правило для компиляции объектов:Makefile с различными типами источников

%.o: %.f90 
     $(FC) $(FFLAGS) -c $< -o $(OBJ)/[email protected] 

Как я могу продлить эту работу с .f файлов, а?

ответ

4

Вам нужно будет иметь два отдельных правила: один для файлов .f и один для файлов .f90. Например:

TARGET := a.out 
OBJFILES := foo.f bar.f90 
OBJ := ./obj 

%.o: %.f90 
    $(FC) $(FFLAGS) -c $< -o $(OBJ)/[email protected] 

%.o: %.f 
    $(FC) $(FFLAGS) -c $< -o $(OBJ)/[email protected] 

%(TARGET): $(OBJFILES) 
    $(FC) $(FFLAGS) -o [email protected] $(addprefix $(OBJ)/,$(OBJFILES)) 

или что-то подобное должно сделать трюк.

+0

Спасибо, что сделал трюк! – user1160480