44 lines
		
	
	
		
			842 B
		
	
	
	
		
			Makefile
		
	
	
		
			Executable File
		
	
	
			
		
		
	
	
			44 lines
		
	
	
		
			842 B
		
	
	
	
		
			Makefile
		
	
	
		
			Executable File
		
	
	
| MAKEFLAGS += --no-print-directory
 | |
| PREFIX ?= /usr
 | |
| BINDIR ?= $(PREFIX)/bin
 | |
| MANDIR ?= $(PREFIX)/share/man
 | |
| PKG_CONFIG ?= pkg-config
 | |
| 
 | |
| MKDIR ?= $(shell pwd)
 | |
| INC_DIR ?= $(MKDIR)/include
 | |
| SRC_DIR ?= $(MKDIR)/src
 | |
| OBJ_DIR ?= $(MKDIR)/src
 | |
| BIN_DIR ?= $(MKDIR)
 | |
| 
 | |
| SRC ?= ${wildcard ${SRC_DIR}/*.c}
 | |
| OBJS ?= ${patsubst %.c, $(OBJ_DIR)/%.o, ${notdir ${SRC}}}
 | |
| 
 | |
| 
 | |
| TARGET ?= btrf
 | |
| BIN_TARGET ?= ${BIN_DIR}/${TARGET}
 | |
| 
 | |
| CC ?= gcc
 | |
| CFLAGS ?= -O2 -g
 | |
| CFLAGS += -Wall -Wundef -Wstrict-prototypes -Wno-trigraphs -fno-strict-aliasing -fno-common -Werror-implicit-function-declaration
 | |
| CFLAGS += -I${INC_DIR}
 | |
| 
 | |
| ifeq ($(V),1)
 | |
| Q=
 | |
| NQ=true
 | |
| else
 | |
| Q=@
 | |
| NQ=echo
 | |
| endif
 | |
| 
 | |
| ${OBJ_DIR}/%.o: ${SRC_DIR}/%.c
 | |
| 	@$(NQ) ' CC  ' $@
 | |
| 	$(Q)$(CC) $(CFLAGS) -c -o $@ $<
 | |
| 
 | |
| ${BIN_TARGET}: $(OBJS)
 | |
| 	@$(NQ) ' CC  ' btrf
 | |
| 	$(Q)$(CC) $(LDFLAGS) $(OBJS) -lpthread -o btrf
 | |
| 
 | |
| 
 | |
| clean:
 | |
| 	$(Q)rm -f btrf $(OBJ_DIR)/*.o *~
 |