36 lines
		
	
	
		
			937 B
		
	
	
	
		
			Makefile
		
	
	
	
	
	
			
		
		
	
	
			36 lines
		
	
	
		
			937 B
		
	
	
	
		
			Makefile
		
	
	
	
	
	
PREFIX=/usr
 | 
						|
 | 
						|
#OBJS specifies which files to compile as part of the project
 | 
						|
OBJS = src/whatever.c
 | 
						|
 | 
						|
#CC specifies which compiler to use
 | 
						|
CC = clang
 | 
						|
 | 
						|
#COMPILER_FLAGS specifies the additional compilation options we're using
 | 
						|
# -w suppress all warnings
 | 
						|
COMPILER_FLAGS = -Wall
 | 
						|
 | 
						|
#LINKER_FLAGS specifies the libraries we're linking against
 | 
						|
LINKER_FLAGS = -lSDL2
 | 
						|
 | 
						|
#OBJ_NAME specifies the name of our executable
 | 
						|
OBJ_NAME= whatever
 | 
						|
 | 
						|
#INCLUDES where the INCLUDE directory is
 | 
						|
INCLUDES = -I./include
 | 
						|
 | 
						|
#This is the target that compiles our executable
 | 
						|
all	:	$(OBJS)
 | 
						|
	$(CC) $(OBJS) $(COMPILER_FLAGS) $(INCLUDES) $(LINKER_FLAGS) -o $(OBJ_NAME)
 | 
						|
install :
 | 
						|
	mkdir -p ${PREFIX}/share/${OBJ_NAME}
 | 
						|
	cp ${OBJ_NAME} ${PREFIX}/share/${OBJ_NAME}/
 | 
						|
	ln -si ${PREFIX}/share/${OBJ_NAME}/${OBJ_NAME} ${PREFIX}/bin/${OBJ_NAME}
 | 
						|
uninstall :
 | 
						|
	rm ${PREFIX}/bin/${OBJ_NAME}
 | 
						|
	rm ${PREFIX}/share/${OBJ_NAME}/${OBJ_NAME}
 | 
						|
	rm -r ${PREFIX}/share/${OBJ_NAME}
 | 
						|
clean :
 | 
						|
	rm ${OBJ_NAME}
 | 
						|
 |