source: tags/0.5/Makefile @ 9

Last change on this file since 9 was 9, checked in by willem, 11 years ago

willem

File size: 2.6 KB
Line 
1CGI_PROGRAMS       = cgitest prenv stoposserver
2CLIENT_PROGRAMS    = stoposclient
3OTHER_PROGRAMS     = testpool stoposzztostr
4
5STOPOSSERVER_OBJS  = stoposserver.o stopos_pool.o stopos_key.o gdbm_pool.o flatfile_pool.o files_pool.o mysql_pool.o
6STOPOSSERVER_LIBS = -lgdbm -lmysqlcppconn libwutils.a
7PRENV_OBJS         = prenv.o
8CGITEST_OBJS       = cgitest.o
9
10STOPOSCLIENT_OBJS  = stoposclient.o wrequest.o shellenv.o
11STOPOSCLIENT_LIBS  = -lcurl libwutils.a
12
13TESTPOOL_OBJS      = test_pool.o gdbm_pool.o stopos_key.o stopos_pool.o flatfile_pool.o files_pool.o mysql_pool.o clocks.o
14TESTPOOL_LIBS      = -lgdbm -lmysqlcppconn libwutils.a
15
16STOPOSZZTOSTR_OBJS = stoposzztostr.o
17STOPOSZZTOSTR_LIBS = libwutils.a
18
19PROGRAMS           = $(CGI_PROGRAMS) $(CLIENT_PROGRAMS) $(OTHER_PROGRAMS)
20
21HTML_FILES         = index.html
22
23HTML_INSTALL_DIR   = $(HOME)/myroot/usr/local/www
24CGI_INSTALL_DIR    = $(HTML_INSTALL_DIR)/cgi-bin
25
26CGI_LIBS           = $(cgic_lib)
27CGI_INC            = -I./cgic205
28
29all: $(PROGRAMS)
30
31CGI_OBJS           = $(CGITEST_OBJS) $(PRENV_OBJS) $(STOPOSSERVER_OBJS)
32CGI_SRCS           = $(CGI_OBJS:.o=.cpp)
33
34CLIENT_OBJS        = $(STOPOSCLIENT_OBJS)
35CLIENT_SRCS        = $(CLIENT_OBJS:.o=.cpp)
36
37OTHER_OBJS         = $(TESTPOOL_OBJS)
38OTHER_SRCS         = $(OTHER_OBJS:.o=.cpp)
39
40SRCS = $(sort $(CGI_SRCS) $(OTHER_SRCS) $(CLIENT_SRCS) wutils.cpp)
41
42CXX      = g++
43CXXFLAGS = -g -Wall #-O3
44CC       = gcc
45CFLAGS   = -g -Wall #-O3
46
47stoposserver: $(STOPOSSERVER_OBJS) libwutils.a
48        $(CXX) -o $@ $(CXXFLAGS) $(STOPOSSERVER_OBJS) $(STOPOSSERVER_LIBS)
49
50stoposclient: $(STOPOSCLIENT_OBJS) libwutils.a
51        $(CXX) -o $@ $(CXXFLAGS) $(STOPOSCLIENT_OBJS) $(STOPOSCLIENT_LIBS)
52
53
54cgitest: $(CGITEST_OBJS) $(cgic_lib) 
55        $(CXX) -o $@ $(CXXFLAGS) $(CGITEST_OBJS) $(CGI_INC) $(CGI_LIBS)
56
57prenv:  $(PRENV_OBJS) 
58        $(CXX) -o $@ $(CXXFLAGS) $(PRENV_OBJS)
59
60testpool:  $(TESTPOOL_OBJS) libwutils.a
61        $(CXX) -o $@ $(CXXFLAGS) $(TESTPOOL_OBJS) $(TESTPOOL_LIBS)
62
63stoposzztostr: $(STOPOSZZTOSTR_OBJS) libwutils.a
64        $(CXX) -o $@ $(CXXFLAGS) $(STOPOSZZTOSTR_OBJS) $(STOPOSZZTOSTR_LIBS)
65
66libwutils.a: wutils.o
67        ar -r $@ wutils.o
68
69%.o:    %.cpp
70        $(CXX) $(CXXFLAGS) $(CGI_INC) -c -o $@ $<
71
72%.o:    %.c
73        $(CC) $(CCFLAGS) -c -o $@ $<
74
75cgic_lib  = cgic205/libcgic.a
76
77$(cgic_lib): 
78        $(MAKE) -C cgic205 libcgic.a
79
80include .depend
81
82.depend dep:
83        $(CXX) -M $(SRCS) $(CGI_INC) > .depend
84
85clean:
86        rm -f *.o libwutils.a $(PROGRAMS) .depend
87
88realclean: clean
89        $(MAKE) -C cgic205 clean
90
91install: install_cgi install_html all
92       
93install_cgi:    $(CGI_PROGRAMS)
94        mkdir -p $(CGI_INSTALL_DIR)
95        install $(CGI_PROGRAMS) $(CGI_INSTALL_DIR)
96
97install_html:
98        mkdir -p $(HTML_INSTALL_DIR)
99        install $(HTML_FILES) -m 644 $(HTML_INSTALL_DIR)
Note: See TracBrowser for help on using the repository browser.