NWGNUmakefile revision 6c080a25f5991f40225209541c989d7e76c4a39d
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
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster# Declare the sub-directories to be built here
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster# Get the 'head' of the build environment. This includes default targets and
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster# paths to tools
8af80418ba1ec431c8027fa9668e5678658d3611Allan Fosterinclude $(AP_WORK)\build\NWGNUhead.inc
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster# build this level's files
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster# Make sure all needed macro's are defined
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster# These directories will be at the beginning of the include list, followed by
8af80418ba1ec431c8027fa9668e5678658d3611Allan FosterXINCDIRS += \
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster# These flags will come after CFLAGS
26304a2a091af368cfc16c977bcce6d17195360aTom Rumsey# These defines will come after DEFINES
26304a2a091af368cfc16c977bcce6d17195360aTom RumseyXDEFINES += \
26304a2a091af368cfc16c977bcce6d17195360aTom Rumsey# These flags will be added to the link.opt file
26304a2a091af368cfc16c977bcce6d17195360aTom Rumsey# These values will be appended to the correct variables based on the value of
42c10b520a70c6b2c67ad812cfda98ac1663f0c5Craig McDonnellifeq "$(RELEASE)" "debug"
8af80418ba1ec431c8027fa9668e5678658d3611Allan Fosterifeq "$(RELEASE)" "noopt"
8af80418ba1ec431c8027fa9668e5678658d3611Allan FosterXDEFINES += \
0c893a059f84246bf91e2f0fbf63e4c92f8e5165Tony Bamfordifeq "$(RELEASE)" "release"
8af80418ba1ec431c8027fa9668e5678658d3611Allan FosterXINCDIRS += \
321cc59fdbbb9b6eebdfc714f2d86b785965d50eTom RumseyXDEFINES += \
fc8409d20f991d53ac0c4708efa04c121b73c449Tom Rumsey# These are used by the link target if an NLM is being generated
fc8409d20f991d53ac0c4708efa04c121b73c449Tom Rumsey# This is used by the link 'name' directive to name the nlm. If left blank
fc8409d20f991d53ac0c4708efa04c121b73c449Tom Rumsey# TARGET_nlm (see below) will be used.
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster# This is used by the link '-desc ' directive.
7b3fa0c4c626865e92012ef9f885e91d945850eaCraig McDonnell# If left blank, NLM_NAME will be used.
8af80418ba1ec431c8027fa9668e5678658d3611Allan FosterNLM_DESCRIPTION =
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster# This is used by the '-threadname' directive. If left blank,
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster# NLM_NAME Thread will be used.
8af80418ba1ec431c8027fa9668e5678658d3611Allan FosterNLM_THREAD_NAME =
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster# If this is specified, it will override VERSION value in
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster# $(AP_WORK)\build\NWGNUenvironment.inc
8af80418ba1ec431c8027fa9668e5678658d3611Allan FosterNLM_VERSION =
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster# If this is specified, it will override the default of 64K
8af80418ba1ec431c8027fa9668e5678658d3611Allan FosterNLM_STACK_SIZE =
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster# If this is specified it will be used by the link '-entry' directive
8af80418ba1ec431c8027fa9668e5678658d3611Allan FosterNLM_ENTRY_SYM =
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster# If this is specified it will be used by the link '-exit' directive
8af80418ba1ec431c8027fa9668e5678658d3611Allan FosterNLM_EXIT_SYM =
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster# If this is specified it will be used by the link '-check' directive
8af80418ba1ec431c8027fa9668e5678658d3611Allan FosterNLM_CHECK_SYM =
fd21d481e26774c37a197c7cc8ab56096a21e7aaPhill Cunnington# If these are specified it will be used by the link '-flags' directive
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster# If this is specified it will be linked in with the XDCData option in the def
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster# file instead of the default of $(NWOS)/apache.xdc. XDCData can be disabled
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster# by setting APACHE_UNIPROC in the environment
cc7c18212481f5e9ee508afe2ffcaecb6b9330f5Craig McDonnell# If there is an NLM target, put it here
c184142912cff04e5442d8bf70febe477285fb1cCraig McDonnellTARGET_nlm = \
cc7c18212481f5e9ee508afe2ffcaecb6b9330f5Craig McDonnell# If there is an LIB target, put it here
cc7c18212481f5e9ee508afe2ffcaecb6b9330f5Craig McDonnellTARGET_lib = \
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster# These are the OBJ files needed to create the NLM target above.
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster# Paths must all use the '/' character
8af80418ba1ec431c8027fa9668e5678658d3611Allan FosterFILES_nlm_objs = \
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster# These are the LIB files needed to create the NLM target above.
321cc59fdbbb9b6eebdfc714f2d86b785965d50eTom Rumsey# These will be added as a library command in the link.opt file.
8af80418ba1ec431c8027fa9668e5678658d3611Allan FosterFILES_nlm_libs = \
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster# These are the modules that the above NLM target depends on to load.
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster# These will be added as a module command in the link.opt file.
8af80418ba1ec431c8027fa9668e5678658d3611Allan FosterFILES_nlm_modules = \
321cc59fdbbb9b6eebdfc714f2d86b785965d50eTom Rumsey# If the nlm has a msg file, put it's path here
0c893a059f84246bf91e2f0fbf63e4c92f8e5165Tony BamfordFILE_nlm_msg =
321cc59fdbbb9b6eebdfc714f2d86b785965d50eTom Rumsey# If the nlm has a hlp file put it's path here
8af80418ba1ec431c8027fa9668e5678658d3611Allan FosterFILE_nlm_hlp =
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster# If this is specified, it will override $(NWOS)\copyright.txt.
8af80418ba1ec431c8027fa9668e5678658d3611Allan FosterFILE_nlm_copyright =
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster# Any additional imports go here
8af80418ba1ec431c8027fa9668e5678658d3611Allan FosterFILES_nlm_Ximports = \
35ab1c5bca11317474fe12bdd8d22c17cdaf2697Robert Wapshott# Any symbols exported to here
8af80418ba1ec431c8027fa9668e5678658d3611Allan FosterFILES_nlm_exports = \
35ab1c5bca11317474fe12bdd8d22c17cdaf2697Robert Wapshott# These are the OBJ files needed to create the LIB target above.
35ab1c5bca11317474fe12bdd8d22c17cdaf2697Robert Wapshott# Paths must all use the '/' character
35ab1c5bca11317474fe12bdd8d22c17cdaf2697Robert WapshottFILES_lib_objs = \
35ab1c5bca11317474fe12bdd8d22c17cdaf2697Robert Wapshott# implement targets and dependancies (leave this section alone)
3cfef899c650ea8fa23c64ad5a66b8986bf77bb2Tom Rumseylibs :: $(OBJDIR) $(TARGET_lib)
35ab1c5bca11317474fe12bdd8d22c17cdaf2697Robert Wapshottnlms :: libs $(TARGET_nlm)
35ab1c5bca11317474fe12bdd8d22c17cdaf2697Robert Wapshott# Updated this target to create necessary directories and copy files to the
35ab1c5bca11317474fe12bdd8d22c17cdaf2697Robert Wapshott# correct place. (See $(AP_WORK)\build\NWGNUhead.inc for examples)
cc7c18212481f5e9ee508afe2ffcaecb6b9330f5Craig McDonnellinstall :: nlms FORCE
35ab1c5bca11317474fe12bdd8d22c17cdaf2697Robert Wapshott copy $(OBJDIR)\*.nlm $(INSTALL)\Apache2\modules\*.*
35ab1c5bca11317474fe12bdd8d22c17cdaf2697Robert Wapshott# Any specialized rules here
35ab1c5bca11317474fe12bdd8d22c17cdaf2697Robert Wapshott# Include the 'tail' makefile that has targets that depend on variables defined
35ab1c5bca11317474fe12bdd8d22c17cdaf2697Robert Wapshott# in this makefile
cc7c18212481f5e9ee508afe2ffcaecb6b9330f5Craig McDonnellinclude $(AP_WORK)\build\NWGNUtail.inc