1 | include ../include.mk |
---|
2 | |
---|
3 | ifeq ($(TYPE),debug) |
---|
4 | DEBUG_FLAGS = -Ddebug +debug_info |
---|
5 | else |
---|
6 | DEBUG_FLAGS = |
---|
7 | endif |
---|
8 | |
---|
9 | include ../vsn.mk |
---|
10 | VSN=$(YAWS_VSN) |
---|
11 | |
---|
12 | |
---|
13 | ## the websocket code uses new modern bits stuff |
---|
14 | ifeq ($(BITS_SUPPORT),true) |
---|
15 | BITSMODS=yaws_websockets |
---|
16 | endif |
---|
17 | |
---|
18 | |
---|
19 | MODULES=yaws \ |
---|
20 | yaws_app \ |
---|
21 | yaws_ticker \ |
---|
22 | yaws_config \ |
---|
23 | yaws_server \ |
---|
24 | yaws_sup \ |
---|
25 | yaws_api \ |
---|
26 | yaws_log \ |
---|
27 | yaws_trace \ |
---|
28 | yaws_logger \ |
---|
29 | yaws_ls \ |
---|
30 | yaws_debug \ |
---|
31 | yaws_compile \ |
---|
32 | yaws_ctl \ |
---|
33 | yaws_cgi \ |
---|
34 | yaws_zlib \ |
---|
35 | yaws_generated \ |
---|
36 | mime_type_c \ |
---|
37 | mime_types \ |
---|
38 | yaws_session_server \ |
---|
39 | yaws_outmod \ |
---|
40 | yaws_revproxy \ |
---|
41 | yaws_html \ |
---|
42 | yaws_log_file_h \ |
---|
43 | yaws_rss \ |
---|
44 | yaws_dav \ |
---|
45 | yaws_davlock \ |
---|
46 | yaws_pam \ |
---|
47 | json json2 jsonrpc yaws_jsonrpc yaws_xmlrpc\ |
---|
48 | haxe yaws_rpc \ |
---|
49 | yaws_soap_srv yaws_soap_lib yaws_soap12_lib \ |
---|
50 | authmod_gssapi \ |
---|
51 | yaws_appmod_cgi \ |
---|
52 | yaws_appmod_fcgi \ |
---|
53 | yaws_sendfile \ |
---|
54 | yaws_sup_restarts \ |
---|
55 | yaws_stats \ |
---|
56 | yaws_vdir \ |
---|
57 | yaws_multipart \ |
---|
58 | yaws_shaper \ |
---|
59 | yaws_dime \ |
---|
60 | yaws_exhtml \ |
---|
61 | yaws_sse \ |
---|
62 | $(BITSMODS) |
---|
63 | |
---|
64 | |
---|
65 | |
---|
66 | EBIN_FILES=$(MODULES:%=../ebin/%.$(EMULATOR)) ../ebin/yaws.app ../ebin/yaws.appup |
---|
67 | ERLC_FLAGS+=-W $(DEBUG_FLAGS) -pa ../../yaws -I ../include |
---|
68 | |
---|
69 | # |
---|
70 | # Targets |
---|
71 | # |
---|
72 | all: yaws_generated.erl yaws_configure.hrl $(EBIN_FILES) |
---|
73 | |
---|
74 | dav: |
---|
75 | $(MAKE) MODULES="$(MODULES) yaws_dav" |
---|
76 | |
---|
77 | $(EBIN_FILES) : ../include/yaws.hrl ../include/yaws_api.hrl |
---|
78 | |
---|
79 | ../ebin/yaws_sendfile.$(EMULATOR): yaws_configure.hrl |
---|
80 | |
---|
81 | yaws_generated.erl: yaws_generated.template ../vsn.mk |
---|
82 | $(MAKE) IS_LOCAL_INSTALL=true gen_yaws_generated |
---|
83 | |
---|
84 | yaws_configure.hrl: ../vsn.mk ../include.mk |
---|
85 | if [ $(HAVE_YAWS_SENDFILE) = "true" ]; then \ |
---|
86 | echo "-define(HAVE_YAWS_SENDFILE, true)." > yaws_configure.hrl; \ |
---|
87 | else touch yaws_configure.hrl; fi |
---|
88 | |
---|
89 | mime_types.erl: ../priv/charset.def ../priv/mime.types \ |
---|
90 | ../ebin/yaws_generated.$(EMULATOR) ../ebin/mime_type_c.$(EMULATOR) |
---|
91 | $(ERL) -noshell -pa ../ebin -s mime_type_c generate |
---|
92 | |
---|
93 | |
---|
94 | debug: |
---|
95 | $(MAKE) TYPE=debug |
---|
96 | |
---|
97 | clean: |
---|
98 | rm -f $(EBIN_FILES) yaws_generated.erl yaws_configure.hrl mime_types.erl |
---|
99 | |
---|
100 | install: all docsinstall |
---|
101 | $(MAKE) IS_LOCAL_INSTALL=false gen_yaws_generated |
---|
102 | $(INSTALL) -d $(DESTDIR)$(LIBDIR)/yaws/examples/ebin |
---|
103 | $(INSTALL) -d $(DESTDIR)$(LIBDIR)/yaws/examples/include |
---|
104 | $(INSTALL) -d $(DESTDIR)$(LIBDIR)/yaws/ebin |
---|
105 | $(INSTALL) -d $(DESTDIR)$(LIBDIR)/yaws/priv |
---|
106 | $(INSTALL) -d $(DESTDIR)$(VARDIR)/log/yaws |
---|
107 | $(INSTALL) -d $(DESTDIR)$(VARDIR)/yaws/ebin |
---|
108 | (cd ..; tar cf - ebin ) | (cd $(DESTDIR)$(LIBDIR)/yaws; tar xf - ) |
---|
109 | (cd ..; tar cf - include ) | (cd $(DESTDIR)$(LIBDIR)/yaws; tar xf - ) |
---|
110 | (cd ..; tar cf - priv/*.xsd ) | (cd $(DESTDIR)$(LIBDIR)/yaws; tar xf - ) |
---|
111 | $(INSTALL) -m 644 ../priv/mime.types $(DESTDIR)$(LIBDIR)/yaws/priv |
---|
112 | $(MAKE) IS_LOCAL_INSTALL=true gen_yaws_generated |
---|
113 | |
---|
114 | docsinstall: |
---|
115 | $(INSTALL) -d $(DESTDIR)$(VARDIR)/yaws/www |
---|
116 | (cd ..; tar cf - www ) | (cd $(DESTDIR)$(VARDIR)/yaws; tar xf - ) |
---|
117 | |
---|
118 | tags: |
---|
119 | erl -noshell -pa ../ebin -s yaws_debug mktags |
---|
120 | |
---|
121 | xref: |
---|
122 | erl -noshell -pa ../ebin -s yaws_debug xref ../ebin |
---|
123 | |
---|
124 | |
---|
125 | |
---|
126 | ## need to differentiate between local install and not |
---|
127 | gen_yaws_generated: |
---|
128 | rm -f yaws_generated.erl ../ebin/yaws_generated.$(EMULATOR) |
---|
129 | YAWS_VSN='$(YAWS_VSN)' VARDIR='$(VARDIR)' ETCDIR='$(ETCDIR)' \ |
---|
130 | ../scripts/gen-yaws-generated $(IS_LOCAL_INSTALL) > yaws_generated.erl |
---|
131 | $(MAKE) ../ebin/yaws_generated.$(EMULATOR) |
---|
132 | |
---|