don't blow up in the sub Makefiles if menuselect.makeopts is not present. This
[asterisk/asterisk.git] / funcs / Makefile
1 #
2 # Asterisk -- A telephony toolkit for Linux.
3
4 # Makefile for dialplan functions
5 #
6 # Copyright (C) 2005-2006, Digium, Inc.
7 #
8 # Kevin P. Fleming <kpfleming@digium.com>
9 #
10 # This program is free software, distributed under the terms of
11 # the GNU General Public License
12 #
13
14 ifneq ($(wildcard ../menuselect.makeopts),)
15   include ../menuselect.makeopts
16 endif
17
18 SELECTED_MODS:=$(filter-out $(MENUSELECT_FUNCS),$(patsubst %.c,%,$(wildcard func_*.c)))
19
20 # TODO This check needs to be handled with autoconf
21 ifeq ($(OSARCH),SunOS)
22   ifeq ($(shell if [ 0x`$(CROSS_COMPILE_BIN)curl-config --vernum` -ge 0x70907 ]; then echo "OK" ; fi),)
23     MODS:=$(filter-out func_curl,$(MODS))
24   endif
25 else
26   ifeq ($(shell if [[ 0x`$(CROSS_COMPILE_BIN)curl-config --vernum` -ge 0x70907 ]]; then echo "OK" ; fi),)
27     MODS:=$(filter-out func_curl,$(MODS)) 
28   endif
29 endif
30
31 MODS:=$(patsubst %,%.so,$(SELECTED_MODS))
32
33 all: $(MODS)
34
35 clean-depend:
36         rm -f .depend
37
38 clean: clean-depend
39         rm -f *.so *.o
40
41 %.so : %.o
42         $(CC) $(SOLINK) -o $@ $<
43
44 func_curl.so: func_curl.o
45         $(CC) $(SOLINK) -o $@ $< $(CURL_LIB)
46
47 func_curl.o: func_curl.c
48         $(CC) -c -o $@ $(CFLAGS) $(CURL_INCLUDE) $<
49
50 func_odbc.so: func_odbc.o
51         $(CC) $(SOLINK) -o $@ $< $(ODBC_LIB)
52
53 func_odbc.o: func_odbc.c
54         $(CC) -c -o $@ $(CFLAGS) $(ODBC_INCLUDE) $<
55
56 install: all
57         for x in $(MODS); do $(INSTALL) -m 755 $$x $(DESTDIR)$(MODULES_DIR) ; done
58         rm -f $(DESTDIR)$(MODULES_DIR)/pbx_functions.so
59
60 uninstall:
61
62 ifneq ($(wildcard .depend),)
63   include .depend
64 endif
65
66 depend: .depend
67
68 .depend:
69         ../build_tools/mkdep $(CFLAGS) `ls *.c`
70
71 env:
72         env