|
1 | | -.PHONY = all clean binary server debugserver standalone pgserver debugpgserver mongoserver debugmongoserver foreignserver mongotreetaggerserver |
| 1 | +.PHONY = clean binary server debugserver standalone pgserver debugpgserver mysqlserver debugmysqlserver mongoserver debugmongoserver foreignserver mongotreetaggerserver |
2 | 2 |
|
| 3 | +# Removed the 'all' target. It does not make sense since each build target requires a different set of defines. |
| 4 | +# So we need to clean before building each target in order compile in the right stuff. |
| 5 | +# |
| 6 | +# E.g. to build pg and mysql: |
| 7 | +# |
| 8 | +# 1. make clean pgserver |
| 9 | +# 2. make clean mysqlserver |
3 | 10 |
|
| 11 | +# Note: to build mysql targets on Ubuntu: |
| 12 | +# sudo apt-get install libmysqlclient-dev |
| 13 | + |
| 14 | +# store executable names in make variables so that cleanall target works |
| 15 | +executable.server=../BINARIES/ChatScript |
4 | 16 | server: DEFINES+= -DLOCKUSERFILE=1 -DEVSERVER=1 -DEVSERVER_FORK=1 -DDISCARDPOSTGRES=1 -DDISCARDMONGO=1 -DDISCARDMYSQL=1 |
5 | 17 | server: PGLOAD= -pthread |
6 | 18 | server: INCLUDEDIRS=-Ievserver |
7 | | -server: all |
8 | | -server: EXECUTABLE=../BINARIES/ChatScript |
| 19 | +server: binary |
| 20 | +server: EXECUTABLE=$(executable.server) |
9 | 21 | server: CFLAGS=-c -std=c++11 -Wall -funsigned-char -Wno-write-strings -Wno-char-subscripts -Wno-strict-aliasing |
10 | 22 |
|
| 23 | +executable.debugserver=../BINARIES/ChatScriptDebug |
11 | 24 | debugserver: DEFINES+= -DLOCKUSERFILE=1 -DDISCARDPOSTGRES=1 -DDISCARDMONGO=1 -DDISCARDMYSQL=1 -DDEBUG -DEVSERVER=1 -DEVSERVER_FORK=1 |
12 | 25 | debugserver: PGLOAD= -pthread |
13 | 26 | debugserver: INCLUDEDIRS=-Ievserver |
14 | | -debugserver: all |
15 | | -debugserver: EXECUTABLE=../BINARIES/ChatScriptDebug |
| 27 | +debugserver: binary |
| 28 | +debugserver: EXECUTABLE=$(executable.debugserver) |
16 | 29 | debugserver: CFLAGS=-c -std=c++11 -Wall -funsigned-char -Wno-write-strings -Wno-char-subscripts -Wno-strict-aliasing -g |
17 | 30 |
|
| 31 | +executable.standalone=../BINARIES/ChatScript |
18 | 32 | standalone: DEFINES+= -DDISCARDSERVER=1 -DDISCARDPOSTGRES=1 -DDISCARDMONGO=1 -DDISCARDMYSQL=1 -DEVSERVER=1 -DEVSERVER_FORK=1 |
19 | 33 | standalone: PGLOAD= -pthread |
20 | 34 | standalone: INCLUDEDIRS=-Ievserver |
21 | | -standalone: all |
22 | | -standalone: EXECUTABLE=../BINARIES/ChatScript |
| 35 | +standalone: binary |
| 36 | +standalone: EXECUTABLE=$(executable.standalone) |
23 | 37 | standalone: CFLAGS=-c -std=c++11 -Wall -funsigned-char -Wno-write-strings -Wno-char-subscripts -Wno-strict-aliasing |
24 | 38 |
|
| 39 | +executable.pgserver=../BINARIES/ChatScriptpg |
25 | 40 | pgserver: DEFINES+= -DLOCKUSERFILE=1 -DEVSERVER=1 -DEVSERVER_FORK=1 -DDISCARDMONGO=1 -DDISCARDMYSQL=1 |
26 | 41 | pgserver: PGLOAD= -lpq -pthread |
27 | | -pgserver: all |
28 | | -pgserver: EXECUTABLE=../BINARIES/ChatScriptpg |
| 42 | +pgserver: binary |
| 43 | +pgserver: EXECUTABLE=$(executable.pgserver) |
29 | 44 | pgserver: INCLUDEDIRS=-Ievserver -Ipostgres |
30 | 45 | pgserver: CFLAGS=-c -std=c++11 -Wall -funsigned-char -Wno-write-strings -Wno-char-subscripts -Wno-strict-aliasing |
31 | 46 |
|
32 | | -debugpgserver: DEFINES+= -DLOCKUSERFILE=1 -DDEBUG -DEVSERVER=1 -DEVSERVER_FORK=1 -DDISCARDMONGO=1 |
| 47 | +executable.debugpgserver=../BINARIES/ChatScriptpgDebug |
| 48 | +debugpgserver: DEFINES+= -DLOCKUSERFILE=1 -DDEBUG -DEVSERVER=1 -DEVSERVER_FORK=1 -DDISCARDMONGO=1 -DDISCARDMYSQL=1 |
33 | 49 | debugpgserver: PGLOAD= -lpq -pthread |
34 | | -debugpgserver: INCLUDEDIRS=-Ievserver |
35 | | -debugpgserver: all |
36 | | -debugpgserver: EXECUTABLE=../BINARIES/ChatScriptpgDebug |
| 50 | +debugpgserver: INCLUDEDIRS=-Ievserver -Ipostgres |
| 51 | +debugpgserver: binary |
| 52 | +debugpgserver: EXECUTABLE=$(executable.debugpgserver) |
37 | 53 | debugpgserver: CFLAGS=-c -std=c++11 -Wall -funsigned-char -Wno-write-strings -Wno-char-subscripts -Wno-strict-aliasing -g |
38 | 54 |
|
| 55 | +executable.mysqlserver=../BINARIES/ChatScriptMysql |
| 56 | +mysqlserver: DEFINES+= -DLOCKUSERFILE=1 -DEVSERVER=1 -DEVSERVER_FORK=1 -DDISCARDPOSTGRES=1 -DDISCARDMONGO=1 |
| 57 | +mysqlserver: PGLOAD= -lmysqlclient -pthread |
| 58 | +mysqlserver: binary |
| 59 | +mysqlserver: EXECUTABLE=$(executable.mysqlserver) |
| 60 | +mysqlserver: INCLUDEDIRS=-Ievserver |
| 61 | +mysqlserver: CFLAGS=-c -std=c++11 -Wall -funsigned-char -Wno-write-strings -Wno-char-subscripts -Wno-strict-aliasing |
| 62 | + |
| 63 | +executable.debugmysqlserver=../BINARIES/ChatScriptMysqlDebug |
| 64 | +debugmysqlserver: DEFINES+= -DLOCKUSERFILE=1 -DDEBUG -DEVSERVER=1 -DEVSERVER_FORK=1 -DDISCARDPOSTGRES=1 -DDISCARDMONGO=1 |
| 65 | +debugmysqlserver: PGLOAD= -lmysqlclient -pthread |
| 66 | +debugmysqlserver: INCLUDEDIRS=-Ievserver |
| 67 | +debugmysqlserver: binary |
| 68 | +debugmysqlserver: EXECUTABLE=$(executable.debugmysqlserver) |
| 69 | +debugmysqlserver: CFLAGS=-c -std=c++11 -Wall -funsigned-char -Wno-write-strings -Wno-char-subscripts -Wno-strict-aliasing -g |
| 70 | + |
| 71 | +executable.mongoserver=../BINARIES/ChatScriptMongo |
39 | 72 | mongoserver: DEFINES+= -DLOCKUSERFILE=1 -DEVSERVER=1 -DEVSERVER_FORK=1 -DDISCARDPOSTGRES=1 -DDISCARDMYSQL=1 |
40 | 73 | mongoserver: PGLOAD= -pthread |
41 | | -mongoserver: all |
42 | | -mongoserver: EXECUTABLE=../BINARIES/ChatScriptMongo |
| 74 | +mongoserver: binary |
| 75 | +mongoserver: EXECUTABLE=$(executable.mongoserver) |
43 | 76 | mongoserver: INCLUDEDIRS=-Iinclude -I/usr/local/include/libbson-1.0 -I/usr/local/include/libmongoc-1.0 |
44 | 77 | mongoserver: CFLAGS=-c -std=c++11 -Wall -funsigned-char -Wno-write-strings -Wno-char-subscripts -Wno-strict-aliasing -g |
45 | 78 |
|
| 79 | +executable.debugmongoserver=../BINARIES/ChatScriptMongoDebug |
46 | 80 | debugmongoserver: DEFINES+= -DLOCKUSERFILE=1 -DDEBUG -DEVSERVER=1 -DEVSERVER_FORK=1 -DDISCARDPOSTGRES=1 -DDISCARDMYSQL=1 |
47 | 81 | debugmongoserver: PGLOAD= -lpq -pthread |
48 | | -debugmongoserver: all |
| 82 | +debugmongoserver: binary |
49 | 83 | debugmongoserver: INCLUDEDIRS=-Iinclude -I/usr/local/include/libbson-1.0 -I/usr/local/include/libmongoc-1.0 |
50 | | -debugmongoserver: EXECUTABLE=../BINARIES/ChatScriptMongoDebug |
| 84 | +debugmongoserver: EXECUTABLE=$(executable.debugmongoserver) |
51 | 85 | debugmongoserver: CFLAGS=-c -std=c++11 -Wall -funsigned-char -Wno-write-strings -Wno-char-subscripts -Wno-strict-aliasing -g |
52 | 86 |
|
| 87 | +executable.foreignserver=../BINARIES/ChatScriptForeign |
53 | 88 | foreignserver: DEFINES+= -DLOCKUSERFILE=1 -DEVSERVER=1 -DEVSERVER_FORK=1 -DDISCARDPOSTGRES=1 -DDISCARDMONGO=1 -DDISCARDMYSQL=1 -DTREETAGGER=1 |
54 | 89 | foreignserver: PGLOAD= -pthread -L../treetagger -L../BINARIES -ltreetagger |
55 | 90 | foreignserver: INCLUDEDIRS=-Ievserver |
56 | | -foreignserver: all |
57 | | -foreignserver: EXECUTABLE=../BINARIES/ChatScriptForeign |
| 91 | +foreignserver: binary |
| 92 | +foreignserver: EXECUTABLE=$(executable.foreignserver) |
58 | 93 | foreignserver: CFLAGS=-c -std=c++11 -Wall -funsigned-char -Wno-write-strings -Wno-char-subscripts -Wno-strict-aliasing |
59 | 94 |
|
| 95 | +executable.mongotreetaggerserver=../BINARIES/ChatScriptMongoForeign |
60 | 96 | mongotreetaggerserver: DEFINES+= -DLOCKUSERFILE=1 -DEVSERVER=1 -DEVSERVER_FORK=1 -DDISCARDPOSTGRES=1 -DDISCARDMYSQL=1 -DTREETAGGER=1 |
61 | 97 | mongotreetaggerserver: PGLOAD= -pthread -L../treetagger -L../BINARIES -ltreetagger |
62 | 98 | mongotreetaggerserver: INCLUDEDIRS=-Iinclude -I/usr/local/include/libbson-1.0 -I/usr/local/include/libmongoc-1.0 |
63 | | -mongotreetaggerserver: all |
64 | | -mongotreetaggerserver: EXECUTABLE=../BINARIES/ChatScriptMongoForeign |
| 99 | +mongotreetaggerserver: binary |
| 100 | +mongotreetaggerserver: EXECUTABLE=$(executable.mongotreetaggerserver) |
65 | 101 | mongotreetaggerserver: CFLAGS=-c -std=c++11 -Wall -funsigned-char -Wno-write-strings -Wno-char-subscripts -Wno-strict-aliasing |
66 | 102 |
|
67 | 103 | UNAME := $(shell uname) |
@@ -93,16 +129,27 @@ debugmongoserver: LDFLAGS+= -lgcrypt -lsasl2 -lmongoc-1.0 -lbson-1.0 |
93 | 129 | mongotreetaggerserver: LDFLAGS+= -lgcrypt -lsasl2 -lmongoc-1.0 -lbson-1.0 |
94 | 130 | endif |
95 | 131 |
|
96 | | -SOURCES=constructCode.cpp duktape/duktape.c evserver.cpp csocket.cpp cs_ev.c dictionarySystem.cpp englishTagger.cpp factSystem.cpp json.cpp functionExecute.cpp english.cpp infer.cpp javascript.cpp jsmn.cpp markSystem.cpp mongodb.cpp os.cpp outputSystem.cpp patternSystem.cpp postgres.cpp privatesrc.cpp scriptCompile.cpp spellcheck.cpp secure.cpp systemVariables.cpp tagger.cpp testing.cpp textUtilities.cpp tokenSystem.cpp topicSystem.cpp userCache.cpp userSystem.cpp variableSystem.cpp mainSystem.cpp |
| 132 | +SOURCES=constructCode.cpp duktape/duktape.c evserver.cpp csocket.cpp cs_ev.c dictionarySystem.cpp englishTagger.cpp factSystem.cpp json.cpp functionExecute.cpp english.cpp infer.cpp javascript.cpp jsmn.cpp markSystem.cpp mysql.cpp mongodb.cpp os.cpp outputSystem.cpp patternSystem.cpp postgres.cpp privatesrc.cpp scriptCompile.cpp spellcheck.cpp secure.cpp systemVariables.cpp tagger.cpp testing.cpp textUtilities.cpp tokenSystem.cpp topicSystem.cpp userCache.cpp userSystem.cpp variableSystem.cpp mainSystem.cpp |
97 | 133 | OBJECTS=$(SOURCES:.cpp=.o) |
98 | | - |
99 | | -all: $(SOURCES) binary |
| 134 | + |
| 135 | +default: server |
100 | 136 |
|
101 | 137 | clean: |
102 | | - -rm -f $(EXECUTABLE) |
103 | | - -rm -f ../$(EXECUTABLE) |
104 | 138 | -rm -f *.o |
105 | 139 |
|
| 140 | +cleanall: clean |
| 141 | + -rm -f $(executable.server) |
| 142 | + -rm -f $(executable.debugserver) |
| 143 | + -rm -f $(executable.standalone) |
| 144 | + -rm -f $(executable.pgserver) |
| 145 | + -rm -f $(executable.debugpgserver) |
| 146 | + -rm -f $(executable.mysqlserver) |
| 147 | + -rm -f $(executable.debugmysqlserver) |
| 148 | + -rm -f $(executable.mongoserver) |
| 149 | + -rm -f $(executable.debugmongoserver) |
| 150 | + -rm -f $(executable.foreignserver) |
| 151 | + -rm -f $(executable.mongotreetaggerserver) |
| 152 | + |
106 | 153 | binary: $(OBJECTS) |
107 | 154 | $(CC) $(OBJECTS) $(LDFLAGS) $(DEFINES) $(INCLUDEDIRS) -o $(EXECUTABLE) |
108 | 155 |
|
|
0 commit comments