Modified Makefile to deal with deps and other .c's better
This commit is contained in:
		
							parent
							
								
									b0eb5be2c0
								
							
						
					
					
						commit
						65464112a6
					
				
							
								
								
									
										44
									
								
								Makefile
									
									
									
									
									
								
							
							
						
						
									
										44
									
								
								Makefile
									
									
									
									
									
								
							@ -1,24 +1,30 @@
 | 
			
		||||
.POSIX:
 | 
			
		||||
 | 
			
		||||
# DIRECTORIES
 | 
			
		||||
SRC_DIR = src
 | 
			
		||||
OBJ_DIR = obj
 | 
			
		||||
 | 
			
		||||
ALL_OBJS =  $(wildcard $(OBJ_DIR)/*.o)
 | 
			
		||||
 | 
			
		||||
SRC =  $(wildcard $(SRC_DIR)/*.c)
 | 
			
		||||
OBJ = $(addprefix $(OBJ_DIR)/, $(notdir $(SRC:.c=.o))) 
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
X_STRING_DIR = $(SRC_DIR)/xlibc/x_string
 | 
			
		||||
X_STRING_SRC = $(wildcard $(X_STRING_DIR)/src/*.c)
 | 
			
		||||
X_STRING_OBJ = $(addprefix $(OBJ_DIR)/, $(notdir $(X_STRING_SRC:.c=.o))) 
 | 
			
		||||
 | 
			
		||||
SQLITE_DIR = $(SRC_DIR)/sqlite3
 | 
			
		||||
SQLITE_SRC = $(wildcard $(SQLITE_DIR)/src/*.c)
 | 
			
		||||
SQLITE_OBJ = $(addprefix $(OBJ_DIR)/, $(notdir $(SQLITE_SRC:.c=.o)))
 | 
			
		||||
SQLITE_DB_SCHEMA = $(SRC_DIR)/dodo.schema
 | 
			
		||||
 | 
			
		||||
INC_DIRS=$(X_STRING_DIR)/src
 | 
			
		||||
# Sources 
 | 
			
		||||
SRC =  $(wildcard $(SRC_DIR)/*.c)
 | 
			
		||||
X_STRING_SRC = $(wildcard $(X_STRING_DIR)/src/*.c)
 | 
			
		||||
SQLITE_SRC = $(wildcard $(SQLITE_DIR)/src/*.c)
 | 
			
		||||
 | 
			
		||||
# Headers
 | 
			
		||||
HEADERS =  $(wildcard $(SRC_DIR)/*.h)
 | 
			
		||||
X_STRING_HEADERS = $(wildcard $(X_STRING_DIR)/src/*.h)
 | 
			
		||||
SQLITE_HEADERS = $(wildcard $(SQLITE_DIR)/src/*.h)
 | 
			
		||||
 | 
			
		||||
# Objects
 | 
			
		||||
OBJ = $(patsubst $(SRC_DIR)/%.c, $(OBJ_DIR)/%.o, $(SRC)) 
 | 
			
		||||
X_STRING_OBJ = $(patsubst $(X_STRING_DIR)/src/%.c, $(OBJ_DIR)/%.o, $(X_STRING_SRC))
 | 
			
		||||
SQLITE_OBJ = $(patsubst $(SQLITE_DIR)/src/%.c, $(OBJ_DIR)/%.o, $(SQLITE_SRC))
 | 
			
		||||
ALL_OBJS = $(wildcard $(OBJ_DIR)/*.o)
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
SQLITE_DB_SCHEMA = $(SRC_DIR)/dodo.schema
 | 
			
		||||
INC_DIRS=-I./$(X_STRING_DIR)/src/ -I./$(SQLITE_DIR)/src/
 | 
			
		||||
 | 
			
		||||
HOME_DIR = $$HOME
 | 
			
		||||
CONFIG_DIR = /.config/dodo
 | 
			
		||||
@ -28,16 +34,16 @@ DFLAGS = -DDB_PATH=\"$(DB_FILE)\"
 | 
			
		||||
 | 
			
		||||
all: dodo
 | 
			
		||||
 | 
			
		||||
$(OBJ): $(X_STRING_OBJ)
 | 
			
		||||
	$(CC) -c -o $(OBJ_DIR)/$(@F) -I./$(INC_DIRS)/ $(DFLAGS) $(SRC)
 | 
			
		||||
$(OBJ): $(X_STRING_OBJ) $(SQLITE_OBJ) $(HEADERS)  
 | 
			
		||||
	$(CC) -c -o $(OBJ_DIR)/$(@F) $(INC_DIRS) $(DFLAGS) $(SRC_DIR)/$(@F:.o=.c)
 | 
			
		||||
 | 
			
		||||
$(X_STRING_OBJ):
 | 
			
		||||
$(X_STRING_OBJ): $(X_STRING_HEADERS)
 | 
			
		||||
	$(CC) -c -o $(OBJ_DIR)/$(@F) $(X_STRING_SRC)
 | 
			
		||||
 | 
			
		||||
$(SQLITE_OBJ):
 | 
			
		||||
$(SQLITE_OBJ): $(SQLITE_HEADERS)
 | 
			
		||||
	$(CC) -c -o $(OBJ_DIR)/$(@F) $(SQLITE_SRC)
 | 
			
		||||
 | 
			
		||||
dodo: $(OBJ) $(X_STRING_OBJ) $(SQLITE_OBJ)
 | 
			
		||||
dodo: $(OBJ)
 | 
			
		||||
	$(CC) -o $@ $(ALL_OBJS)
 | 
			
		||||
 | 
			
		||||
install:
 | 
			
		||||
 | 
			
		||||
		Loading…
	
		Reference in New Issue
	
	Block a user