1251876Speter#
2251876Speter# Declare the sub-directories to be built here
3251876Speter#
4251876Speter
5251876SpeterSUBDIRS = \
6251876Speter	$(EOLIST)
7251876Speter
8251876Speter#
9251876Speter# Get the 'head' of the build environment.  This includes default targets and
10251876Speter# paths to tools
11251876Speter#
12251876Speter
13251876Speterinclude $(APR_WORK)/build/NWGNUhead.inc
14251876Speter
15251876Speter#
16251876Speter# build this level's files
17251876Speter
18251876Speter#
19251876Speter# Make sure all needed macro's are defined
20251876Speter#
21251876Speter
22251876Speter#
23251876Speter# These directories will be at the beginning of the include list, followed by
24251876Speter# INCDIRS
25251876Speter#
26251876SpeterXINCDIRS	+= \
27251876Speter			$(EOLIST)
28251876Speter
29251876Speter#
30251876Speter# These flags will come after CFLAGS
31251876Speter#
32251876SpeterXCFLAGS		+= \
33251876Speter			$(EOLIST)
34251876Speter
35251876Speter#
36251876Speter# These defines will come after DEFINES
37251876Speter#
38251876SpeterXDEFINES	+= \
39251876Speter			$(EOLIST)
40251876Speter
41251876Speter#
42251876Speter# These flags will be added to the link.opt file
43251876Speter#
44251876SpeterXLFLAGS		+= \
45251876Speter			$(EOLIST)
46251876Speter
47251876Speter#
48251876Speter# These values will be appended to the correct variables based on the value of
49251876Speter# RELEASE
50251876Speter#
51251876Speterifeq "$(RELEASE)" "debug"
52251876SpeterXINCDIRS	+= \
53251876Speter			$(EOLIST)
54251876Speter
55251876SpeterXCFLAGS		+= \
56251876Speter			$(EOLIST)
57251876Speter
58251876SpeterXDEFINES	+= \
59251876Speter			$(EOLIST)
60251876Speter
61251876SpeterXLFLAGS		+= \
62251876Speter			$(EOLIST)
63251876Speterendif
64251876Speter
65251876Speterifeq "$(RELEASE)" "noopt"
66251876SpeterXINCDIRS	+= \
67251876Speter			$(EOLIST)
68251876Speter
69251876SpeterXCFLAGS		+= \
70251876Speter			$(EOLIST)
71251876Speter
72251876SpeterXDEFINES	+= \
73251876Speter			$(EOLIST)
74251876Speter
75251876SpeterXLFLAGS		+= \
76251876Speter			$(EOLIST)
77251876Speterendif
78251876Speter
79251876Speterifeq "$(RELEASE)" "release"
80251876SpeterXINCDIRS	+= \
81251876Speter			$(EOLIST)
82251876Speter
83251876SpeterXCFLAGS		+= \
84251876Speter			$(EOLIST)
85251876Speter
86251876SpeterXDEFINES	+= \
87251876Speter			$(EOLIST)
88251876Speter
89251876SpeterXLFLAGS		+= \
90251876Speter			$(EOLIST)
91251876Speterendif
92251876Speter
93251876Speter#
94251876Speter# These are used by the link target if an NLM is being generated
95251876Speter# This is used by the link 'name' directive to name the nlm.  If left blank
96251876Speter# TARGET_nlm (see below) will be used.
97251876Speter#
98251876SpeterNLM_NAME	=
99251876Speter
100251876Speter#
101251876Speter# This is used by the link '-desc ' directive.
102251876Speter# If left blank, NLM_NAME will be used.
103251876Speter#
104251876SpeterNLM_DESCRIPTION	=
105251876Speter
106251876Speter#
107251876Speter# This is used by the '-threadname' directive.  If left blank,
108251876Speter# NLM_NAME Thread will be used.
109251876Speter#
110251876SpeterNLM_THREAD_NAME	=
111251876Speter
112251876Speter#
113251876Speter# If this is specified, it will override VERSION value in
114251876Speter# $(AP_WORK)\build\NWGNUenvironment.inc
115251876Speter#
116251876SpeterNLM_VERSION	=
117251876Speter
118251876Speter#
119251876Speter# If this is specified, it will override the default of 64K
120251876Speter#
121251876SpeterNLM_STACK_SIZE	=
122251876Speter
123251876Speter
124251876Speter#
125251876Speter# If this is specified it will be used by the link '-entry' directive
126251876Speter#
127251876SpeterNLM_ENTRY_SYM	=
128251876Speter
129251876Speter#
130251876Speter# If this is specified it will be used by the link '-exit' directive
131251876Speter#
132251876SpeterNLM_EXIT_SYM	=
133251876Speter
134251876Speter#
135251876Speter# If this is specified it will be used by the link '-check' directive
136251876Speter#
137251876SpeterNLM_CHECK_SYM	=
138251876Speter
139251876Speter#
140251876Speter# If these are specified it will be used by the link '-flags' directive
141251876Speter#
142251876SpeterNLM_FLAGS	=
143251876Speter
144251876Speter#
145251876Speter# If this is specified it will be linked in with the XDCData option in the def
146251876Speter# file instead of the default of $(NWOS)/apache.xdc.  XDCData can be disabled
147251876Speter# by setting APACHE_UNIPROC in the environment
148251876Speter#
149251876SpeterXDCDATA		=
150251876Speter
151251876Speter#
152251876Speter# If there is an NLM target, put it here
153251876Speter#
154251876SpeterTARGET_nlm = \
155251876Speter	$(EOLIST)
156251876Speter
157251876Speterifeq "$(APU_HAVE_MYSQL)" "1"
158251876Speterifeq "$(wildcard apr_dbd_mysql.c)" "apr_dbd_mysql.c"
159251876SpeterTARGET_nlm += $(OBJDIR)/dbdmysql.nlm $(OBJDIR)/dbdmysql.nlm $(EOLIST)
160251876Speterendif
161251876Speterendif
162251876Speterifeq "$(APU_HAVE_PGSQL)" "1"
163251876SpeterTARGET_nlm += $(OBJDIR)/dbdpgsql.nlm $(OBJDIR)/dbdpgsql.nlm $(EOLIST)
164251876Speterendif
165251876Speterifeq "$(APU_HAVE_SQLITE2)" "1"
166251876SpeterTARGET_nlm += $(OBJDIR)/dbdsqli2.nlm $(OBJDIR)/dbdsqli2.nlm $(EOLIST)
167251876Speterendif
168251876Speterifeq "$(APU_HAVE_SQLITE3)" "1"
169251876SpeterTARGET_nlm += $(OBJDIR)/dbdsqli3.nlm $(OBJDIR)/dbdsqli3.nlm $(EOLIST)
170251876Speterendif
171251876Speterifeq "$(APU_HAVE_FREETDS)" "1"
172251876SpeterTARGET_nlm += $(OBJDIR)/dbdfreetds.nlm $(OBJDIR)/dbdfreetds.nlm $(EOLIST)
173251876Speterendif
174251876Speter
175251876Speter#
176251876Speter# If there is an LIB target, put it here
177251876Speter#
178251876SpeterTARGET_lib = \
179251876Speter	$(EOLIST)
180251876Speter
181251876Speter#
182251876Speter# These are the OBJ files needed to create the NLM target above.
183251876Speter# Paths must all use the '/' character
184251876Speter#
185251876SpeterFILES_nlm_objs = \
186251876Speter	$(EOLIST)
187251876Speter
188251876Speter#
189251876Speter# These are the LIB files needed to create the NLM target above.
190251876Speter# These will be added as a library command in the link.opt file.
191251876Speter#
192251876SpeterFILES_nlm_libs = \
193251876Speter	$(EOLIST)
194251876Speter
195251876Speter#
196251876Speter# These are the modules that the above NLM target depends on to load.
197251876Speter# These will be added as a module command in the link.opt file.
198251876Speter#
199251876SpeterFILES_nlm_modules = \
200251876Speter	$(EOLIST)
201251876Speter
202251876Speter#
203251876Speter# If the nlm has a msg file, put it's path here
204251876Speter#
205251876SpeterFILE_nlm_msg =
206251876Speter
207251876Speter#
208251876Speter# If the nlm has a hlp file put it's path here
209251876Speter#
210251876SpeterFILE_nlm_hlp =
211251876Speter
212251876Speter#
213251876Speter# If this is specified, it will override $(NWOS)\copyright.txt.
214251876Speter#
215251876SpeterFILE_nlm_copyright =
216251876Speter
217251876Speter#
218251876Speter# Any additional imports go here
219251876Speter#
220251876SpeterFILES_nlm_Ximports = \
221251876Speter	$(EOLIST)
222251876Speter
223251876Speter#
224251876Speter# Any symbols exported to here
225251876Speter#
226251876SpeterFILES_nlm_exports = \
227251876Speter	$(EOLIST)
228251876Speter
229251876Speter#
230251876Speter# These are the OBJ files needed to create the LIB target above.
231251876Speter# Paths must all use the '/' character
232251876Speter#
233251876SpeterFILES_lib_objs = \
234251876Speter	$(EOLIST)
235251876Speter
236251876Speter#
237251876Speter# implement targets and dependancies (leave this section alone)
238251876Speter#
239251876Speter
240251876Speterlibs :: $(OBJDIR) $(TARGET_lib)
241251876Speter
242251876Speternlms :: libs $(TARGET_nlm)
243251876Speter
244251876Speter#
245251876Speter# Updated this target to create necessary directories and copy files to the
246251876Speter# correct place.  (See $(AP_WORK)\build\NWGNUhead.inc for examples)
247251876Speter#
248251876Speterinstall :: nlms $(INSTDIRS) FORCE
249251876Speter	$(call COPY,$(OBJDIR)/*.nlm,$(INSTALLBASE))
250251876Speter
251251876Speter#
252251876Speter# Any specialized rules here
253251876Speter#
254251876Speter
255251876Speter#
256251876Speter# Include the 'tail' makefile that has targets that depend on variables defined
257251876Speter# in this makefile
258251876Speter#
259251876Speter
260251876Speterinclude $(APRBUILD)/NWGNUtail.inc
261251876Speter
262251876Speter
263