forked from paulwratt/bas-2.5-plus
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Makefile.in
113 lines (96 loc) · 3.2 KB
/
Makefile.in
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
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
srcdir= @srcdir@
VPATH= @srcdir@
prefix= @prefix@
exec_prefix= @exec_prefix@
datarootdir= @datarootdir@
localedir= @localedir@
CC= @CC@
RANLIB= @RANLIB@
CFLAGS= @CFLAGS@
CPPFLAGS= @CPPFLAGS@ -DLOCALEDIR=\"$(localedir)\"
LDFLAGS= @LDFLAGS@
LIBS= @LIBS@
CATALOGS= de.mo
all: bas all-po-@USE_NLS@
all-po-no:
all-po-yes: $(CATALOGS)
bas: main.o libbas.a getopt.o getopt1.o
$(CC) -o $@ $(LDFLAGS) main.o libbas.a getopt.o getopt1.o $(LIBS)
token.c: token.l token.h
flex -i -t token.l >token.c
libbas.a: auto.o bas.o fs.o global.o token.o program.o \
str.o value.o var.o
rm -f $@
ar cq $@ auto.o bas.o fs.o global.o token.o program.o \
str.o value.o var.o
@RANLIB@ libbas.a
cppcheck:
cppcheck $(CPPFLAGS) -q --enable=all .
install-po: install-po-@USE_NLS@
install-po-no:
install-po-yes: $(CATALOGS)
for cat in $(CATALOGS); do \
dir=$(localedir)/`basename $$cat .mo`/LC_MESSAGES; \
[ -d $$dir ] || @INSTALL@ -m 755 -d $$dir; \
@INSTALL@ -m 644 $$cat $$dir/bas.mo; \
done
check: bas
for i in test/test*; do ./$$i || break; done
install: all
@INSTALL@ -m 755 -d @bindir@
@INSTALL@ bas @bindir@/bas
@INSTALL@ -m 755 -d @libdir@
@INSTALL@ -m 644 libbas.a @libdir@/libbas.a
@RANLIB@ @libdir@/libbas.a
@INSTALL@ -m 755 -d @mandir@/man1
@INSTALL@ -m 644 bas.1 @mandir@/man1/bas.1
make install-po
.c.o:
$(CC) -c $(CPPFLAGS) $(CFLAGS) $<
.SUFFIXES: .po .mo
.po.mo:
msgfmt -o $@ $<
*.po: bas.pot
for cat in *.po; do \
if msgmerge $$cat bas.pot -o $$cat.tmp; then \
mv -f $$cat.tmp $$cat; \
else \
echo "msgmerge for $$cat failed!"; \
rm -f $$cat.tmp; \
fi; \
done
bas.pot: [a-b]*.[ch] [e-s]*.[ch] v*.[ch]
xgettext --add-comments --keyword=_ [a-b]*.[ch] [e-s]*.[ch] v*.[ch] && test -f messages.po && mv messages.po $@
bas.pdf: bas.1
groff -Tps -t -man bas.1 | ps2pdf - $@
#{{{script}}}#{{{ clean
clean:
rm -f *.out core token.c *.o libbas.a *.mo
#}}}
#{{{ distclean
distclean: clean
rm -rf autom4te.cache bas config.cache config.h config.log config.status configure.lineno Makefile bas.1 test/runbas
#}}}
#{{{ tar
tar: bas.pdf distclean
(b=`pwd`; b=`basename $$b`; cd ..; tar zcvf $$b.tar.gz $$b/LICENSE $$b/INSTALL $$b/Makefile.in $$b/README $$b/NEWS $$b/configure $$b/install-sh $$b/test $$b/[a-z]*.*)
#}}}
#{{{ dependencies
auto.o: auto.c config.h auto.h programtypes.h var.h value.h str.h token.h autotypes.h program.h
bas.o: bas.c config.h getopt.h auto.h programtypes.h var.h value.h str.h token.h autotypes.h \
program.h bas.h error.h fs.h global.h statement.c statement.h
fs.o: fs.c config.h fs.h str.h
getopt.o: getopt.c config.h getopt.h
getopt1.o: getopt1.c config.h getopt.h
global.o: global.c config.h auto.h programtypes.h var.h value.h str.h token.h autotypes.h \
program.h bas.h error.h fs.h global.h
main.o: main.c config.h getopt.h bas.h
program.o: program.c config.h auto.h programtypes.h var.h value.h str.h token.h autotypes.h \
program.h error.h fs.h
statement.o: statement.c config.h statement.h
str.o: str.c config.h str.h
token.o: token.c config.h auto.h programtypes.h var.h value.h str.h token.h autotypes.h \
program.h statement.h
value.o: value.c config.h error.h value.h str.h
var.o: var.c config.h error.h var.h value.h str.h
#}}}