2 # Licensed to the Apache Software Foundation (ASF) under one or more
3 # contributor license agreements. See the NOTICE file distributed with
4 # this work for additional information regarding copyright ownership.
5 # The ASF licenses this file to You under the Apache License, Version 2.0
6 # (the "License"); you may not use this file except in compliance with
7 # the License. You may obtain a copy of the License at
9 # http://www.apache.org/licenses/LICENSE-2.0
11 # Unless required by applicable law or agreed to in writing, software
12 # distributed under the License is distributed on an "AS IS" BASIS,
13 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 # See the License for the specific language governing permissions and
15 # limitations under the License.
19 # NetWare Makefile for mod_jk (uses build system of Apache 2.x - gnu make)
20 # created by Guenter Knauf <fuankg@apache.org>
23 ifneq "$(wildcard $(JAVA_HOME)/include/netware/jni_md.h)" "$(JAVA_HOME)/include/netware/jni_md.h"
24 $(error JAVA_HOME does not point to a valid NetWare Java SDK!)
28 # Declare the sub-directories to be built here
35 # Get the 'head' of the build environment. This includes default targets and
39 include $(AP_WORK)/build/NWGNUhead.inc
42 # build this level's files
45 # Make sure all needed macro's are defined
51 # These directories will be at the beginning of the include list, followed by
60 $(JAVA_HOME)/include \
61 $(JAVA_HOME)/include/netware \
65 # These flags will come after CFLAGS
71 # These defines will come after DEFINES
79 # These flags will be added to the link.opt file
85 # These values will be appended to the correct variables based on the value of
88 ifeq "$(RELEASE)" "debug"
102 ifeq "$(RELEASE)" "noopt"
116 ifeq "$(RELEASE)" "release"
131 # These are used by the link target if an NLM is being generated
132 # This is used by the link 'name' directive to name the nlm. If left blank
133 # TARGET_nlm (see below) will be used.
138 # This is used by the link '-desc ' directive.
139 # If left blank, NLM_NAME will be used.
141 NLM_DESCRIPTION = Apache $(VERSION_STR) plugin for Tomcat $(JK_VERSION_STR)
144 # This is used by the link '-copy ' directive.
145 # If left blank, the ASF copyright defined in NWGNUtail.inc will be used.
150 # This is used by the '-threadname' directive. If left blank,
151 # NLM_NAME Thread will be used.
153 NLM_THREAD_NAME = JK Module
156 # If this is specified, it will override VERSION value in
157 # $(AP_WORK)\build\NWGNUenvironment.inc
159 NLM_VERSION = $(JK_VERSION)
162 # If this is specified, it will override the default of 64K
164 NLM_STACK_SIZE = 49152
168 # If this is specified it will be used by the link '-entry' directive
170 NLM_ENTRY_SYM = _LibCPrelude
173 # If this is specified it will be used by the link '-exit' directive
175 NLM_EXIT_SYM = _LibCPostlude
178 # If this is specified it will be used by the link '-check' directive
183 # If these are specified it will be used by the link '-flags' directive
185 NLM_FLAGS = AUTOUNLOAD, PSEUDOPREEMPTION
188 # If this is specified it will be linked in with the XDCData option in the def
189 # file instead of the default of $(NWOS)/apache.xdc. XDCData can be disabled
190 # by setting APACHE_UNIPROC in the environment
195 # If there is an NLM target, put it here
198 $(OBJDIR)/$(NLM_NAME).nlm \
202 # If there is an LIB target, put it here
208 # These are the OBJ files needed to create the NLM target above.
209 # Paths must all use the '/' character
212 $(OBJDIR)/jk_nwmain.o \
213 $(OBJDIR)/jk_ajp12_worker.o \
214 $(OBJDIR)/jk_ajp13.o \
215 $(OBJDIR)/jk_ajp13_worker.o \
216 $(OBJDIR)/jk_ajp14.o \
217 $(OBJDIR)/jk_ajp14_worker.o \
218 $(OBJDIR)/jk_ajp_common.o \
219 $(OBJDIR)/jk_connect.o \
220 $(OBJDIR)/jk_context.o \
221 $(OBJDIR)/jk_jni_worker.o \
222 $(OBJDIR)/jk_lb_worker.o \
225 $(OBJDIR)/jk_msg_buff.o \
226 $(OBJDIR)/jk_pool.o \
228 $(OBJDIR)/jk_sockbuf.o \
229 $(OBJDIR)/jk_status.o \
230 $(OBJDIR)/jk_uri_worker_map.o \
232 $(OBJDIR)/jk_util.o \
233 $(OBJDIR)/jk_worker.o \
238 # These are the LIB files needed to create the NLM target above.
239 # These will be added as a library command in the link.opt file.
242 $(NOVELLLIBC)/imports/libcpre.o \
246 # These are the modules that the above NLM target depends on to load.
247 # These will be added as a module command in the link.opt file.
249 FILES_nlm_modules = \
255 # If the nlm has a msg file, put it's path here
260 # If the nlm has a hlp file put it's path here
265 # If this is specified, it will override $(NWOS)\copyright.txt.
270 # Any additional imports go here
272 FILES_nlm_Ximports = \
280 # Any symbols exported to here
282 FILES_nlm_exports = \
287 # These are the OBJ files needed to create the LIB target above.
288 # Paths must all use the '/' character
294 # implement targets and dependancies (leave this section alone)
297 libs :: $(OBJDIR) $(TARGET_lib)
299 nlms :: libs $(TARGET_nlm)
302 # Updated this target to create necessary directories and copy files to the
303 # correct place. (See $(AP_WORK)\build\NWGNUhead.inc for examples)
305 install :: nlms FORCE
306 copy $(OBJDIR)\*.nlm $(INSTALL)\Apache2\modules\*.*
309 # Any specialized rules here
312 vpath %.c $(JKCOMMON)
314 $(OBJDIR)/version.inc: $(JKCOMMON)/jk_version.h $(OBJDIR)
316 @awk -f ../../support/get_ver.awk $< > $@
320 # Include the version info retrieved from jk_version.h
323 -include $(OBJDIR)/version.inc
326 # Include the 'tail' makefile that has targets that depend on variables defined
330 include $(AP_WORK)/build/NWGNUtail.inc