33 lines
		
	
	
		
			483 B
		
	
	
	
		
			Makefile
		
	
	
	
	
	
			
		
		
	
	
			33 lines
		
	
	
		
			483 B
		
	
	
	
		
			Makefile
		
	
	
	
	
	
NAME=vriscv
 | 
						|
CC=gcc
 | 
						|
CFLAGS=-O3 -Wall -I src
 | 
						|
LDFLAGS=-lpthread
 | 
						|
BUILD_DIR=build
 | 
						|
 | 
						|
C_FILES := $(shell find src/ -name '*.c')
 | 
						|
 | 
						|
all: $(BUILD_DIR)/$(NAME)
 | 
						|
 | 
						|
# Top-level targets
 | 
						|
$(BUILD_DIR)/$(NAME): $(C_FILES) | $(BUILD_DIR)
 | 
						|
	$(CC) $(CFLAGS) -o $@ $^ $(LDFLAGS)
 | 
						|
 | 
						|
# Build directory
 | 
						|
$(BUILD_DIR):
 | 
						|
	mkdir -p $(BUILD_DIR)
 | 
						|
 | 
						|
# Phony targets
 | 
						|
.PHONY: clean
 | 
						|
clean:
 | 
						|
	rm -rf $(BUILD_DIR)
 | 
						|
 | 
						|
.PHONY: run
 | 
						|
.SILENT: run
 | 
						|
run: all
 | 
						|
	./$(BUILD_DIR)/$(NAME)
 | 
						|
 | 
						|
.PHONY: tests
 | 
						|
.SILENT: tests
 | 
						|
tests: all
 | 
						|
	make -C tests
 |