1#
2# Make sure all needed macro's are defined
3#
4
5#
6# Get the 'head' of the build environment if necessary.  This includes default
7# targets and paths to tools
8#
9
10ifndef EnvironmentDefined
11include $(APR_WORK)/build/NWGNUhead.inc
12endif
13
14#
15# These directories will be at the beginning of the include list, followed by
16# INCDIRS
17#
18XINCDIRS	+= \
19			$(APR)/include \
20			$(APR)/include/arch/NetWare \
21			$(EOLIST)
22
23#
24# These flags will come after CFLAGS
25#
26XCFLAGS		+= \
27			$(EOLIST)
28
29#
30# These defines will come after DEFINES
31#
32XDEFINES	+= \
33			$(EOLIST)
34
35#
36# These flags will be added to the link.opt file
37#
38XLFLAGS		+= \
39			$(EOLIST)
40
41#
42# These values will be appended to the correct variables based on the value of
43# RELEASE
44#
45ifeq "$(RELEASE)" "debug"
46XINCDIRS	+= \
47			$(EOLIST)
48
49XCFLAGS		+= \
50			$(EOLIST)
51
52XDEFINES	+= \
53			$(EOLIST)
54
55XLFLAGS		+= \
56			$(EOLIST)
57endif
58
59ifeq "$(RELEASE)" "noopt"
60XINCDIRS	+= \
61			$(EOLIST)
62
63XCFLAGS		+= \
64			$(EOLIST)
65
66XDEFINES	+= \
67			$(EOLIST)
68
69XLFLAGS		+= \
70			$(EOLIST)
71endif
72
73ifeq "$(RELEASE)" "release"
74XINCDIRS	+= \
75			$(EOLIST)
76
77XCFLAGS		+= \
78			$(EOLIST)
79
80XDEFINES	+= \
81			$(EOLIST)
82
83XLFLAGS		+= \
84			$(EOLIST)
85endif
86
87#
88# These are used by the link target if an NLM is being generated
89# This is used by the link 'name' directive to name the nlm.  If left blank
90# TARGET_nlm (see below) will be used.
91#
92NLM_NAME	= aprtest
93#
94# This is used by the link '-desc ' directive. 
95# If left blank, NLM_NAME will be used.
96#
97NLM_DESCRIPTION	= NLM is to test the apr layer
98
99#
100# This is used by the '-threadname' directive.  If left blank,
101# NLM_NAME Thread will be used.
102#
103NLM_THREAD_NAME	= $(NLM_NAME)
104
105#
106# This is used by the '-screenname' directive.  If left blank,
107# 'Apache for NetWare' Thread will be used.
108#
109NLM_SCREEN_NAME = aprtest
110
111#
112# If this is specified, it will override VERSION value in 
113# $(APR_WORK)/build/NWGNUenvironment.inc
114#
115NLM_VERSION	=
116
117#
118# If this is specified, it will override the default of 64K
119#
120NLM_STACK_SIZE	= 524288
121
122#
123# If this is specified it will be used by the link '-entry' directive
124#
125NLM_ENTRY_SYM	=
126
127#
128# If this is specified it will be used by the link '-exit' directive
129#
130NLM_EXIT_SYM	=
131
132#
133# If this is specified it will be used by the link '-check' directive
134#
135NLM_CHECK_SYM	=
136
137#
138# If this is specified it will be used by the link '-flags' directive
139#
140NLM_FLAGS	=
141 
142#
143# If this is specified it will be linked in with the XDCData option in the def 
144# file instead of the default of $(APR)/misc/netware/apache.xdc.  XDCData can 
145# be disabled by setting APACHE_UNIPROC in the environment
146#
147XDCDATA		= 
148
149#
150# Declare all target files (you must add your files here)
151#
152
153#
154# If there is an NLM target, put it here
155#
156TARGET_nlm = \
157	$(OBJDIR)/aprtest.nlm \
158	$(EOLIST)
159
160#
161# If there is an LIB target, put it here
162#
163TARGET_lib = \
164	$(EOLIST)
165
166#
167# These are the OBJ files needed to create the NLM target above.
168# Paths must all use the '/' character
169#
170
171FILES_nlm_objs = \
172	$(OBJDIR)/abts.o \
173	$(OBJDIR)/testargs.o \
174	$(OBJDIR)/testatomic.o \
175	$(OBJDIR)/testdir.o \
176	$(OBJDIR)/testdup.o \
177	$(OBJDIR)/testdso.o \
178	$(OBJDIR)/testenv.o \
179	$(OBJDIR)/testfilecopy.o \
180	$(OBJDIR)/testfileinfo.o \
181	$(OBJDIR)/testfile.o \
182	$(OBJDIR)/testflock.o \
183	$(OBJDIR)/testfmt.o \
184	$(OBJDIR)/testfnmatch.o \
185	$(OBJDIR)/testglobalmutex.o \
186	$(OBJDIR)/testhash.o \
187	$(OBJDIR)/testipsub.o \
188	$(OBJDIR)/testlfs.o \
189	$(OBJDIR)/testlock.o \
190        $(OBJDIR)/testcond.o \
191	$(OBJDIR)/testmmap.o \
192	$(OBJDIR)/testnames.o \
193	$(OBJDIR)/testoc.o \
194	$(OBJDIR)/testpath.o \
195	$(OBJDIR)/testpipe.o \
196	$(OBJDIR)/testpoll.o \
197	$(OBJDIR)/testpools.o \
198	$(OBJDIR)/testproc.o \
199	$(OBJDIR)/testprocmutex.o \
200	$(OBJDIR)/testrand.o \
201	$(OBJDIR)/testshm.o \
202	$(OBJDIR)/testsleep.o \
203	$(OBJDIR)/testsock.o \
204	$(OBJDIR)/testsockets.o \
205	$(OBJDIR)/testsockopt.o \
206	$(OBJDIR)/teststr.o \
207	$(OBJDIR)/teststrnatcmp.o \
208	$(OBJDIR)/testtable.o \
209	$(OBJDIR)/testtemp.o \
210	$(OBJDIR)/testthread.o \
211	$(OBJDIR)/testtime.o \
212	$(OBJDIR)/testud.o \
213	$(OBJDIR)/testuser.o \
214	$(OBJDIR)/testutil.o \
215	$(OBJDIR)/testvsn.o \
216	$(OBJDIR)/nw_misc.o \
217	$(EOLIST) 
218
219# Pending tests
220	
221#
222# These are the LIB files needed to create the NLM target above.
223# These will be added as a library command in the link.opt file.
224#
225FILES_nlm_libs = \
226	$(PRELUDE) \
227	$(EOLIST)
228
229#
230# These are the modules that the above NLM target depends on to load.
231# These will be added as a module command in the link.opt file.
232#
233FILES_nlm_modules = \
234	Libc \
235	APRLIB \
236	$(EOLIST)
237
238#
239# If the nlm has a msg file, put it's path here
240#
241FILE_nlm_msg =
242 
243#
244# If the nlm has a hlp file put it's path here
245#
246FILE_nlm_hlp =
247
248#
249# If this is specified, it will override the default copyright.
250#
251FILE_nlm_copyright =
252
253#
254# Any additional imports go here
255#
256FILES_nlm_Ximports = \
257	@libc.imp \
258	@aprlib.imp \
259	$(EOLIST)
260
261# Don't link with Winsock if standard sockets are being used
262ifndef USE_STDSOCKETS
263FILES_nlm_Ximports += @ws2nlm.imp \
264	$(EOLIST)
265endif
266
267#   
268# Any symbols exported to here
269#
270FILES_nlm_exports = \
271	$(EOLIST)
272
273#   
274# These are the OBJ files needed to create the LIB target above.
275# Paths must all use the '/' character
276#
277FILES_lib_objs = \
278	$(EOLIST)
279
280#
281# implement targets and dependancies (leave this section alone)
282#
283
284libs :: $(OBJDIR) $(TARGET_lib)
285
286nlms :: libs $(TARGET_nlm)
287
288#
289# Updated this target to create necessary directories and copy files to the 
290# correct place.  (See $(APR_WORK)/build/NWGNUhead.inc for examples)
291#
292install :: nlms FORCE
293
294#
295# Any specialized rules here
296#
297
298
299#
300# Include the 'tail' makefile that has targets that depend on variables defined
301# in this makefile
302#
303
304include $(APRBUILD)/NWGNUtail.inc
305
306