blob: 48d2bd110c7e5bcf8b9d4c9b8e3079ae5bcffd50 [file] [log] [blame]
James Kuszmaul4cb043c2021-01-17 11:25:51 -08001#
2# Copyright (C) 2011-2012 Michael Tuexen
3#
4# All rights reserved.
5#
6# Redistribution and use in source and binary forms, with or without
7# modification, are permitted provided that the following conditions
8# are met:
9# 1. Redistributions of source code must retain the above copyright
10# notice, this list of conditions and the following disclaimer.
11# 2. Redistributions in binary form must reproduce the above copyright
12# notice, this list of conditions and the following disclaimer in the
13# documentation and/or other materials provided with the distribution.
14# 3. Neither the name of the project nor the names of its contributors
15# may be used to endorse or promote products derived from this software
16# without specific prior written permission.
17#
18# THIS SOFTWARE IS PROVIDED BY THE PROJECT AND CONTRIBUTORS ``AS IS'' AND
19# ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
20# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
21# ARE DISCLAIMED. IN NO EVENT SHALL THE PROJECT OR CONTRIBUTORS BE LIABLE
22# FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
23# DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
24# OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
25# HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
26# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
27# OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
28# SUCH DAMAGE.
29#
30
31CFLAGS=/I. /W3 /WX
32
33CVARSDLL=-DSCTP_DEBUG -DSCTP_SIMPLE_ALLOCATOR -DSCTP_PROCESS_LEVEL_LOCKS
34CVARSDLL=$(CVARSDLL) -D__Userspace__ -D__Userspace_os_Windows
35CVARSDLL=$(CVARSDLL) -DINET -DINET6
36CVARSDLL=$(CVARSDLL) -D_LIB
37
38LINKFLAGS=/LIBPATH:. Ws2_32.lib
39
40usrsctp_OBJECTS = \
41 user_environment.obj \
42 user_mbuf.obj \
43 user_recv_thread.obj \
44 user_socket.obj \
45 sctp_asconf.obj \
46 sctp_auth.obj \
47 sctp_bsd_addr.obj \
48 sctp_callout.obj \
49 sctp_cc_functions.obj \
50 sctp_crc32.obj \
51 sctp_indata.obj \
52 sctp_input.obj \
53 sctp_output.obj \
54 sctp_pcb.obj \
55 sctp_peeloff.obj \
56 sctp_sha1.obj \
57 sctp_ss_functions.obj \
58 sctp_sysctl.obj \
59 sctp_timer.obj \
60 sctp_userspace.obj \
61 sctp_usrreq.obj \
62 sctputil.obj \
63 sctp6_usrreq.obj
64
65usrsctp_HEADERS = \
66 user_atomic.h \
67 user_environment.h \
68 user_inpcb.h \
69 user_ip6_var.h \
70 user_malloc.h \
71 user_mbuf.h \
72 user_recv_thread.h \
73 user_route.h \
74 user_socketvar.h \
75 user_uma.h \
76 user_queue.h \
77 user_ip_icmp.h \
78 user_ip6_var.h \
79 netinet\sctp.h \
80 netinet\sctp_asconf.h \
81 netinet\sctp_auth.h \
82 netinet\sctp_bsd_addr.h \
83 netinet\sctp_callout.h \
84 netinet\sctp_constants.h \
85 netinet\sctp_crc32.h \
86 netinet\sctp_header.h \
87 netinet\sctp_indata.h \
88 netinet\sctp_input.h \
89 netinet\sctp_lock_userspace.h \
90 netinet\sctp_os.h \
91 netinet\sctp_os_userspace.h \
92 netinet\sctp_output.h \
93 netinet\sctp_pcb.h \
94 netinet\sctp_peeloff.h \
95 netinet\sctp_process_lock.h \
96 netinet\sctp_sha1.h \
97 netinet\sctp_structs.h \
98 netinet\sctp_sysctl.h \
99 netinet\sctp_timer.h \
100 netinet\sctp_uio.h \
101 netinet\sctp_var.h \
102 netinet\sctputil.h \
103 netinet6\sctp6_var.h
104
105usrsctp.lib : $(usrsctp_OBJECTS)
106 lib /out:usrsctp.lib $(LINKFLAGS) $(usrsctp_OBJECTS)
107
108user_environment.obj : user_environment.c $(usrsctp_HEADERS)
109 cl $(CVARSDLL) $(CFLAGS) -c user_environment.c
110
111user_mbuf.obj : user_mbuf.c $(usrsctp_HEADERS)
112 cl $(CVARSDLL) $(CFLAGS) -c user_mbuf.c
113
114user_recv_thread.obj: user_recv_thread.c $(usrsctp_HEADERS)
115 cl $(CVARSDLL) $(CFLAGS) -c user_recv_thread.c
116
117user_socket.obj : user_socket.c $(usrsctp_HEADERS)
118 cl $(CVARSDLL) $(CFLAGS) -c user_socket.c
119
120sctp_asconf.obj : netinet\sctp_asconf.c $(usrsctp_HEADERS)
121 cl $(CVARSDLL) $(CFLAGS) -c netinet\sctp_asconf.c
122
123sctp_auth.obj : netinet\sctp_auth.c $(usrsctp_HEADERS)
124 cl $(CVARSDLL) $(CFLAGS) -c netinet\sctp_auth.c
125
126sctp_bsd_addr.obj : netinet\sctp_bsd_addr.c $(usrsctp_HEADERS)
127 cl $(CVARSDLL) $(CFLAGS) -c netinet\sctp_bsd_addr.c
128
129sctp_callout.obj : netinet\sctp_callout.c $(usrsctp_HEADERS)
130 cl $(CVARSDLL) $(CFLAGS) -c netinet\sctp_callout.c
131
132sctp_cc_functions.obj : netinet\sctp_cc_functions.c $(usrsctp_HEADERS)
133 cl $(CVARSDLL) $(CFLAGS) -c netinet\sctp_cc_functions.c
134
135sctp_crc32.obj : netinet\sctp_crc32.c $(usrsctp_HEADERS)
136 cl $(CVARSDLL) $(CFLAGS) -c netinet\sctp_crc32.c
137
138sctp_indata.obj : netinet\sctp_indata.c $(usrsctp_HEADERS)
139 cl $(CVARSDLL) $(CFLAGS) -c netinet\sctp_indata.c
140
141sctp_input.obj : netinet\sctp_input.c $(usrsctp_HEADERS)
142 cl $(CVARSDLL) $(CFLAGS) -c netinet\sctp_input.c
143
144sctp_output.obj : netinet\sctp_output.c $(usrsctp_HEADERS)
145 cl $(CVARSDLL) $(CFLAGS) -c netinet\sctp_output.c
146
147sctp_pcb.obj : netinet\sctp_pcb.c $(usrsctp_HEADERS)
148 cl $(CVARSDLL) $(CFLAGS) -c netinet\sctp_pcb.c
149
150sctp_peeloff.obj : netinet\sctp_peeloff.c $(usrsctp_HEADERS)
151 cl $(CVARSDLL) $(CFLAGS) -c netinet\sctp_peeloff.c
152
153sctp_sha1.obj : netinet\sctp_sha1.c $(usrsctp_HEADERS)
154 cl $(CVARSDLL) $(CFLAGS) -c netinet\sctp_sha1.c
155
156sctp_ss_functions.obj : netinet\sctp_ss_functions.c $(usrsctp_HEADERS)
157 cl $(CVARSDLL) $(CFLAGS) -c netinet\sctp_ss_functions.c
158
159sctp_sysctl.obj : netinet\sctp_sysctl.c $(usrsctp_HEADERS)
160 cl $(CVARSDLL) $(CFLAGS) -c netinet\sctp_sysctl.c
161
162sctp_timer.obj : netinet\sctp_timer.c $(usrsctp_HEADERS)
163 cl $(CVARSDLL) $(CFLAGS) -c netinet\sctp_timer.c
164
165sctp_userspace.obj : netinet\sctp_userspace.c $(usrsctp_HEADERS)
166 cl $(CVARSDLL) $(CFLAGS) -c netinet\sctp_userspace.c
167
168sctp_usrreq.obj : netinet\sctp_usrreq.c $(usrsctp_HEADERS)
169 cl $(CVARSDLL) $(CFLAGS) -c netinet\sctp_usrreq.c
170
171sctputil.obj : netinet\sctputil.c $(usrsctp_HEADERS)
172 cl $(CVARSDLL) $(CFLAGS) -c netinet\sctputil.c
173
174sctp6_usrreq.obj : netinet6\sctp6_usrreq.c $(usrsctp_HEADERS)
175 cl $(CVARSDLL) $(CFLAGS) -c netinet6\sctp6_usrreq.c
176
177clean:
178 del *.obj
179 del usrsctp.lib