Be gone foul Makefile usage! er I mean use the correct variable... UTILS instead...
[asterisk/asterisk.git] / utils / Makefile
1 #
2 # Asterisk -- A telephony toolkit for Linux.
3
4 # Various utilities
5 #
6 # Copyright (C) 1999-2006, Digium
7 #
8 # Mark Spencer <markster@digium.com>
9 #
10 # This program is free software, distributed under the terms of
11 # the GNU General Public License
12 #
13
14 UTILS:=astman smsq stereorize streamplayer aelparse
15
16 ifeq (${OSARCH},SunOS)
17   SOL=../strcompat.o
18   SOLLIBS=-lsocket -lnsl
19 endif
20
21 ifeq ($(POPT_LIB),)
22   UTILS:=$(filter-out smsq,$(UTILS))
23 endif
24
25 ifeq ($(NEWT_LIB),)
26   UTILS:=$(filter-out astman,$(UTILS))
27 endif
28
29 ifneq ($(filter pbx_ael.so,$(MENUSELECT_PBX)),)
30   UTILS:=$(filter-out aelparse,$(UTILS))
31 endif
32
33 all: depend $(UTILS)
34
35 install:
36         for x in $(UTILS); do \
37                 if [ "$$x" != "none" ]; then \
38                         $(INSTALL) -m 755 $$x $(DESTDIR)$(ASTSBINDIR)/$$x; \
39                 fi; \
40         done 
41
42 uninstall:
43         for x in $(UTILS); do rm -f $$x $(DESTDIR)$(ASTSBINDIR)/$$x; done
44
45 clean-depend:
46         rm -f .depend
47
48 clean: clean-depend
49         rm -f *.o $(UTILS) check_expr
50         rm -f ast_expr2.o ast_expr2f.o
51
52 astman.o: astman.c
53         $(CC) $(CFLAGS) -c -o $@ $<
54
55 astman: astman.o ../md5.o
56         $(CC) $(CFLAGS) -o $@ $< ../md5.o -lnewt
57
58 stereorize: stereorize.o frame.o
59         $(CC) $(CFLAGS) -o stereorize stereorize.o frame.o -lm
60
61 ../ast_expr2.c:
62         bison -o $@ -d --name-prefix=ast_yy ../ast_expr2.y
63
64 ../ast_expr2f.c:
65         flex -o $@ --full ../ast_expr2.fl
66
67 ast_expr2.o: ../ast_expr2.c
68         gcc  $(CFLAGS) -c -o $@ $<
69
70 ast_expr2f.o: ../ast_expr2f.c
71         gcc  $(CFLAGS) -c -DSTANDALONE -o $@ $<
72
73 check_expr: check_expr.c ast_expr2.o ast_expr2f.o
74         $(CC) $(CFLAGS) -o $@ $^
75
76 aelflex.o: ../pbx/ael/ael_lex.c ../include/asterisk/ael_structs.h ../pbx/ael/ael.tab.h
77         $(CC) $(CFLAGS) -I../pbx/ -c -o $@ $<
78
79 aelbison.o: ../pbx/ael/ael.tab.c ../pbx/ael/ael.tab.h ../include/asterisk/ael_structs.h
80         $(CC) $(CFLAGS) -I../pbx/ -c -o $@ $<
81
82 pbx_ael.o: ../pbx/pbx_ael.c
83         $(CC) $(CFLAGS) -c -o $@ $<
84
85 aelparse : aelflex.o aelbison.o pbx_ael.o ael_main.o ast_expr2f.o ast_expr2.o
86         $(CC) $(CFLAGS) -g -o aelparse aelflex.o aelbison.o ael_main.o pbx_ael.o ast_expr2f.o ast_expr2.o
87
88 ael_main.o : ael_main.c ../include/asterisk/ael_structs.h
89         $(CC) $(CFLAGS) -c -g -o ael_main.o ael_main.c
90
91 ael_main1.o : ael_main.c ../include/asterisk/ael_structs.h
92         $(CC) $(CFLAGS) -c -g  -o ael_main1.o ael_main.c
93
94 testexpr2s: ../ast_expr2f.c ../ast_expr2.c ../ast_expr2.h
95         $(CC) -g -c -I../include -DSTANDALONE ../ast_expr2f.c -o ast_expr2f.o
96         $(CC) -g -c -I../include -DSTANDALONE ../ast_expr2.c -o ast_expr2.o
97         $(CC) -g -o testexpr2s ast_expr2f.o ast_expr2.o
98         rm ast_expr2.o ast_expr2f.o 
99         ./testexpr2s expr2.testinput
100
101 smsq.o: smsq.c
102         $(CC) $(CFLAGS) -c -o $@ $<
103
104 smsq: smsq.o
105         $(CC) $(CFLAGS) -o smsq ${SOL} smsq.o -lpopt
106
107 streamplayer: streamplayer.o
108         $(CC) $(CFLAGS) -o streamplayer ${SOL} streamplayer.o ${SOLLIBS}
109
110 ifneq ($(wildcard .depend),)
111   include .depend
112 endif
113
114 depend: .depend
115
116 .depend:
117         ../build_tools/mkdep $(CFLAGS) `ls *.c`
118