'make' no se vuelve a compilar cuando el archivo fuente ha sido editado

Estoy escribiendo una pequeña implementación del Juego de la vida de Conway en C. El código fuente se divide en tres archivos:main.c yfunctions.c/functions.h, donde pongo las definiciones y declaraciones de mis funciones.

Ahora, para crear una cuadrícula de celdas, tengo una matriz de este tipo:

Cell grid[GRID_HEIGHT][GRID_WIDTH];

dóndeGRID_HEIGHT yGRID_WIDTH son constantes definidas enfunctions.h:

#define GRID_HEIGHT 10
#define GRID_WIDTH 10

El programa funciona bien, compilado con make y Makefile. Pero el problema es: si trato de cambiarGRID_HEIGHT oGRID_WIDTH, cuando vuelvo a ejecutar mi Makefile, dice que todos los archivos están actualizados. He intentado compilar usando la buena maneragcc main.c etc. y funciona como debería. Entonces, ¿por qué make no recompila la fuente?

Este es mi Makefile:

CC = gcc
OBJECTS = main.o functions.o

Game\ of\ Life : $(OBJECTS)
    $(CC) $(OBJECTS) -o Game\ of\ Life -lncurses

%.o : %.c
    $(CC) -c 
CC = gcc
OBJECTS = main.o functions.o

Game\ of\ Life : $(OBJECTS)
    $(CC) $(OBJECTS) -o Game\ of\ Life -lncurses

%.o : %.c
    $(CC) -c $< 
lt;

Respuestas a la pregunta(6)

Su respuesta a la pregunta