File: Makefile

package info (click to toggle)
sift 6.2.1-2
  • links: PTS, VCS
  • area: non-free
  • in suites: sid
  • size: 4,784 kB
  • sloc: ansic: 18,272; perl: 219; csh: 164; makefile: 152
file content (55 lines) | stat: -rwxr-xr-x 1,243 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
CC = gcc
LD = gcc

NAME = blimps

OBJ_DIR = obj
SRC_DIR = $(shell pwd)
INC_DIR = ./include
LIB_DIR = ./lib

I_CMD = $(addprefix -I, $(SRC_DIR))
L_CMD = $(addprefix -L, )

CC_FLAGS = $(I_CMD) --pedantic -std=c99 -O2 -Wall -Wno-unused-result -Wno-strict-overflow 
#-Wno-aggressive-loop-optimizations
LD_FLAGS = $(I_CMD) $(L_CMD)

API = $(addprefix $(SRC_DIR)/, global.h errors.h memory.h residues.h blocks.h \
    matrix.h sequences.h aabet.h ntbet.h convert.h frequency.h files.h \
	protomat.h blocksprogs.h license.h strutil.h blastapp.h alphabet.h gcode.h \
	output.h pattern.h)

SRC = $(shell find $(SRC_DIR) -type f -regex ".*\.c" -not -name "blimps\.c")
OBJ = $(subst $(SRC_DIR), $(OBJ_DIR), $(addsuffix .o, $(basename $(SRC))))
DEP = $(OBJ:.o=.d)
INC = $(subst $(SRC_DIR), $(INC_DIR), $(API))
LIB = $(LIB_DIR)/lib$(NAME).a

all: lib include
install: all

include: $(INC)

lib: $(LIB)

$(OBJ_DIR)/%.o: $(SRC_DIR)/%.c
	@echo [CC] $<
	@mkdir -p $(dir $@)
	@$(CC) $< -c -o $@ -MMD $(CC_FLAGS)

$(INC_DIR)/%.h: $(SRC_DIR)/%.h
	@echo [CP] $@
	@mkdir -p $(dir $@)
	@cp $< $@

$(LIB): $(OBJ)
	@echo [AR] $@
	@mkdir -p $(dir $@)
	@ar rcs $(LIB) $(OBJ)

clean:
	@echo [RM] cleaning
	@rm $(LIB) $(LIB_DIR) $(INC_DIR) $(OBJ_DIR) -rf

-include $(DEP)