CC = gcc CFLAGS = -Wall -Wextra -Werror -O2 -std=c99 -D_DEFAULT_SOURCE CFLAGS += -fstack-protector-strong -D_FORTIFY_SOURCE=2 LDFLAGS = -z relro -z now SOURCES = main.c vm_core.c OBJECTS = $(SOURCES:.c=.o) TARGET = popvm all: $(TARGET) $(TARGET): $(OBJECTS) $(CC) $(LDFLAGS) -o $@ $^ %.o: %.c $(CC) $(CFLAGS) -c $< -o $@ clean: rm -f $(OBJECTS) $(TARGET) .PHONY: all clean