summaryrefslogtreecommitdiff
path: root/makefile.inc.win32
blob: df9b7bfbe5c9f0372382c304ecc6b719a317f9aa (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
#
# Anope IRC Services 1.7.7 for Windows
#
#  Contact us at info@anope.org
#
# Please read COPYING and README for further details.
#
# Based on the original code of Epona by Lara.
# Based on the original code of Services by Andy Church.
#

# Please read and edit the configurations options below.


# Set which IRCd to compile for
#  1 DreamForge 4.6.7   [dated IRCd, upgrade to a current one]
#  2 Bahamut 1.4.27     [or later]
#  3 UnrealIRCd 3.1.1   [or later]
#  4 UltimateIRCd 2.8.2 [or later]
#  5 UltimateIRCd 3.0.0 [alpha26 or later]
#  6 Hybrid IRCd 7.0    [experimental]
#  7 ViagraIRCd 1.3.x   [or later]
#  8 PTlink 6.15.0      [experimental]
#  9 RageIRCd 2.0       [beta-3 or later]
# 10 Unreal 3.2         [Unreal 3.2 beta19 or later] (default)
# 11 Solid IRCD 3.4.x   [Solid IRCD 3.4.6 or later]
# 12 Plexus 2.0         [or later]
# 13 Ratbox 2.0.6       [or later]
# 14 ShadowIRCD 4.0x    [beta 7 or later]

IRCD=10


# Set this to 1 to enable MySQL support
USE_MYSQL=0
# Set this to the path where the MySQL includes can be found
#MYSQL_INC="c:\\mysql\\include\\"
# Set this to the path where the MySQL libraries can be found
#MYSQL_LIB="c:\\mysql\\lib\\opt\\"

# Set this to 1 to enable the proxy scanner
PROXY_SCANNER=0

# Set this to 1 to enable database encryption
DB_ENCRYPTION=0

# If you want to change the names/locations of files/folders, you
# can do that here.
PROGRAM=anope.exe
BINDEST=bin
DATDEST=data

# If you are compiling using VC6, or get __ftol2 errors, please uncomment
# the following line:
#VC6=/QIfist

# If you are getting errors such as 'Cannot find wsock32.lib', then change
# the following line to the path where the library files can be found.
#LIBPATH=C:\\Program Files\\Microsoft Visual Studio .NET 2003\\Vc7\\lib
LIBPATH=

# If you edited the line above, uncomment the next line.
LFLAGS=/LIBPATH:"$(LIBPATH)"


###############################################################
#Don't touch anything below unless you know what you are doing#
###############################################################


CC=cl
RC=rc
MAKE=nmake -f makefile.win32
BASE_CFLAGS=/O2 /MD
LIBS=wsock32.lib advapi32.lib /NODEFAULTLIB:libcmtd.lib
ELIBS=
MLIBS=

!IFNDEF IRCTYPE
!IF $(IRCD) == 1
IRCTYPE=IRC_DREAMFORGE
CAPAB_C=dreamforge.c
CAPAB_O=dreamforge.obj
!ELSEIF $(IRCD) == 2
IRCTYPE=/D IRC_BAHAMUT
CAPAB_C=bahamut.c
CAPAB_O=bahamut.obj
!ELSEIF $(IRCD) == 3
IRCTYPE=/D IRC_UNREAL31
CAPAB_C=unreal31.c
CAPAB_O=unreal31.obj
!ELSEIF $(IRCD) == 4
IRCTYPE=/D IRC_ULTIMATE2
CAPAB_C=ultimate2.c
CAPAB_O=ultimate2.obj
!ELSEIF $(IRCD) == 5
IRCTYPE=/D IRC_ULTIMATE33
CAPAB_C=ultimate3.c
CAPAB_O=ultimate3.obj
!ELSEIF $(IRCD) == 6
IRCTYPE=/D IRC_HYBRID
CAPAB_C=hybrid.c
CAPAB_O=hybrid.obj
!ELSEIF $(IRCD) == 7
IRCTYPE=/D IRC_VIAGRA
CAPAB_C=hybrid.c
CAPAB_O=hybrid.obj
!ELSEIF $(IRCD) == 8
IRCTYPE=/D IRC_PTLINK
CAPAB_C=ptlink.c
CAPAB_O=ptlink.obj
!ELSEIF $(IRCD) == 9
IRCTYPE=/D IRC_RAGE2
CAPAB_C=rageircd.c
CAPAB_O=rageircd.obj
!ELSEIF $(IRCD) == 10
IRCTYPE=/D IRC_UNREAL32
CAPAB_C=unreal32.c
CAPAB_O=unreal32.obj
!ELSEIF $(IRCD) == 11
IRCTYPE=/D IRC_SOLID
CAPAB_C=solidircd.c
CAPAB_O=solidircd.obj
!ELSEIF $(IRCD) == 12
IRCTYPE=/D IRC_PLEXUS
CAPAB_C=plexus.c
CAPAB_O=plexus.obj
!ELSEIF $(IRCD) == 13
IRCTYPE=/D IRC_RATBOX
CAPAB_C=ratbox.c
CAPAB_O=ratbox.obj
!ELSEIF $(IRCD) == 14
IRCTYPE=/D IRC_SHADOWIRCD
CAPAB_C=shadowircd.c
CAPAB_O=shadowircd.obj
!ELSE
!ERROR Invalid IRCd
!ENDIF
!ENDIF

!IF $(USE_MYSQL) == 1
!IF $(MYSQL_LIB) != ""
LIBS=$(LIBS) /LIBPATH:$(MYSQL_LIB)
MYSQL_LIB_PATH=/LIBPATH:$(MYSQL_LIB)
!ENDIF
!IF $(MYSQL_INC) != ""
BASE_CFLAGS=$(BASE_CFLAGS) /I $(MYSQL_INC)
MYSQL_INC_PATH=/I $(MYSQL_INC)
!ENDIF
RDB_C=rdb.c
RDB_O=rdb.obj

MYSQL_C=mysql.c
MYSQL_O=mysql.obj
BASE_CFLAGS=/D USE_MYSQL /D USE_RDB $(BASE_CFLAGS) /D HAVE_MYSQL_MYSQL_H

MYPASQL_BUILD=$(CC) /LD $(MYSQL_INC_PATH) src\mypasql.c /link $(MYSQL_LIB_PATH) $(LFLAGS) \
/DEF:src\mypasql.def libmysql.lib zlib.lib ws2_32.lib advapi32.lib /NODEFAULTLIB:LIBCMTD.lib

LIBS=$(LIBS) libmysql.lib zlib.lib
!ENDIF

!IF $(PROXY_SCANNER) == 1
BASE_CFLAGS=/D USE_THREADS $(BASE_CFLAGS)
!ENDIF

!IF $(DB_ENCRYPTION) == 1
BASE_CFLAGS=/D USE_ENCRYPTION $(BASE_CFLAGS)
!ENDIF

# Note that changing any of these options (or, in fact, anything in this
# file) will automatically cause a full rebuild of Services.

# Compilation options:
#        -DCLEAN_COMPILE         Attempt to compile without any warnings (note that
#                            this may reduce performance)
#        -DSTREAMLINED    Leave out "fancy" options to enhance performance

CDEFS =

# Add any extra flags you want here.  The default line enables warnings and
# debugging symbols on GCC.  If you have a non-GCC compiler, you may want
# to comment it out or change it.

MORE_CFLAGS = /I"../include"
CFLAGS = /nologo $(VC6) $(CDEFS) $(BASE_CFLAGS) $(MORE_CFLAGS)