forked from 4ZM/mfterm
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Makefile
77 lines (61 loc) · 1.83 KB
/
Makefile
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
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
# Copyright (C) 2011 Anders Sundman <[email protected]>
#
# This file is part of mfterm.
#
# mfterm is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# mfterm is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with mfterm. If not, see <http://www.gnu.org/licenses/>.
CC = gcc
CFLAGS = -g -Wall -std=c99
LDFLAGS = -g -lreadline -lnfc
LEX = flex
LEXCFLAGS = \
-g -std=c99 -Wall \
-Wno-unused-function \
-Wno-implicit-function-declaration
LEXFLAGS =
MFTERM_SRCS = \
mfterm.c \
term_cmd.c \
util.c \
tag.c \
mifare.c \
mifare_ctrl.c \
dictionary.c
MFTERM_LEX = \
dictionary_parser.l
MFTERM_OBJS = $(MFTERM_SRCS:.c=.o) $(MFTERM_LEX:.l=.o)
.PHONY: clean all
all: mfterm
clean:
rm -f mfterm *.o *~ *.bak $(MFTERM_LEX:.l=.c)
mfterm: $(MFTERM_OBJS)
${CC} ${LDFLAGS} -o $@ $^
# Flex generated source is not Wall clean, skip that flag
dictionary_parser.o : dictionary_parser.c Makefile
${CC} ${LEXCFLAGS} -c $<
# Generic compilation rule - make file plumbing
%.o : %.c Makefile
${CC} ${CFLAGS} -c $<
%.c : %.l Makefile
${LEX} ${LEXFLAGS} -o $@ $<
# makedepend section - set up include dependencies
DEPFILE = .depends
DEPTOKEN = '\# MAKEDEPENDS'
DEPFLAGS = -Y -f $(DEPFILE) -s $(DEPTOKEN)
depend:
rm -f $(DEPFILE)
make $(DEPFILE)
$(DEPFILE):
@echo $(DEPTOKEN) > $(DEPFILE)
makedepend $(DEPFLAGS) -- $(CFLAGS) -- *.c 2> /dev/null
sinclude $(DEPFILE)