2 # Get the 'head' of the build environment if necessary. This includes default
3 # targets and paths to tools
6 ifndef EnvironmentDefined
7 include $(AP_WORK)/build/NWGNUhead.inc
11 # build this level's files
13 # Make sure all needed macro's are defined
16 ifeq "$(WITH_ABS)" "1"
18 ifeq "$(USE_NTLS)" "1"
19 SSL_INC = $(NTLSSDK)/inc
20 SSL_LIB = $(NTLSSDK)/imp
21 SSL_BIN = $(NTLSSDK)/bin
22 SSL_APP = $(NTLSSDK)/apps
23 ifneq "$(wildcard $(SSL_INC)/openssl/opensslv.h)" "$(SSL_INC)/openssl/opensslv.h"
24 $(warning '$(NTLSSDK)' does NOT point to a valid NTLS SDK!)
27 SSL_INC = $(OSSLSDK)/outinc_nw_libc
28 SSL_LIB = $(OSSLSDK)/out_nw_libc
29 SSL_BIN = $(OSSLSDK)/out_nw_libc
30 SSL_APP = $(OSSLSDK)/apps
31 ifneq "$(wildcard $(SSL_INC)/openssl/opensslv.h)" "$(SSL_INC)/openssl/opensslv.h"
32 $(warning '$(OSSLSDK)' does NOT point to a valid OpenSSL SDK!)
35 ifeq "$(wildcard $(SSL_INC)/openssl/opensslv.h)" "$(SSL_INC)/openssl/opensslv.h"
42 # These directories will be at the beginning of the include list, followed by
62 # These flags will come after CFLAGS
68 # These defines will come after DEFINES
76 # These flags will be added to the link.opt file
84 # These values will be appended to the correct variables based on the value of
87 ifeq "$(RELEASE)" "debug"
101 ifeq "$(RELEASE)" "noopt"
115 ifeq "$(RELEASE)" "release"
130 # These are used by the link target if an NLM is being generated
131 # This is used by the link 'name' directive to name the nlm. If left blank
132 # TARGET_nlm (see below) will be used.
141 # This is used by the link '-desc ' directive.
142 # If left blank, NLM_NAME will be used.
144 NLM_DESCRIPTION = Apache $(VERSION_STR) Benchmark Utility for NetWare
147 # This is used by the '-threadname' directive. If left blank,
148 # NLM_NAME Thread will be used.
150 NLM_THREAD_NAME = $(NLM_NAME)
153 # This is used by the '-screenname' directive. If left blank,
154 # 'Apache for NetWare' Thread will be used.
156 #NLM_SCREEN_NAME = Apache Bench
157 NLM_SCREEN_NAME = DEFAULT
160 # If this is specified, it will override VERSION value in
161 # $(AP_WORK)\build\NWGNUenvironment.inc
166 # If this is specified, it will override the default of 64K
168 NLM_STACK_SIZE = 65536
172 # If this is specified it will be used by the link '-entry' directive
174 NLM_ENTRY_SYM = _LibCPrelude
177 # If this is specified it will be used by the link '-exit' directive
179 NLM_EXIT_SYM = _LibCPostlude
182 # If this is specified it will be used by the link '-check' directive
187 # If these are specified it will be used by the link '-flags' directive
189 NLM_FLAGS = AUTOUNLOAD, PSEUDOPREEMPTION
192 # If this is specified it will be linked in with the XDCData option in the def
193 # file instead of the default of $(NWOS)/apache.xdc. XDCData can be disabled
194 # by setting APACHE_UNIPROC in the environment
199 # If there is an NLM target, put it here
202 $(OBJDIR)/$(NLM_NAME).nlm \
206 # If there is an LIB target, put it here
212 # These are the OBJ files needed to create the NLM target above.
213 # Paths must all use the '/' character
220 # These are the LIB files needed to create the NLM target above.
221 # These will be added as a library command in the link.opt file.
228 ifneq "$(USE_NTLS)" "1"
230 $(SSL_LIB)/crypto.lib \
237 # These are the modules that the above NLM target depends on to load.
238 # These will be added as a module command in the link.opt file.
240 FILES_nlm_modules = \
246 ifeq "$(USE_NTLS)" "1"
247 FILES_nlm_modules += ntls \
253 # If the nlm has a msg file, put it's path here
258 # If the nlm has a hlp file put it's path here
263 # If this is specified, it will override $(NWOS)\copyright.txt.
268 # Any additional imports go here
270 FILES_nlm_Ximports = \
275 # Don't link with Winsock if standard sockets are being used
276 ifneq "$(USE_STDSOCKETS)" "1"
277 FILES_nlm_Ximports += @ws2nlm.imp \
282 ifeq "$(USE_NTLS)" "1"
283 FILES_nlm_Ximports += @ntls.imp \
286 FILES_nlm_Ximports += \
287 GetProcessSwitchCount \
289 GetSuperHighResolutionTimer \
295 # Any symbols exported to here
297 FILES_nlm_exports = \
301 # These are the OBJ files needed to create the LIB target above.
302 # Paths must all use the '/' character
308 # implement targets and dependancies (leave this section alone)
311 libs :: $(OBJDIR) $(TARGET_lib)
313 nlms :: libs $(TARGET_nlm)
316 # Updated this target to create necessary directories and copy files to the
317 # correct place. (See $(AP_WORK)\build\NWGNUhead.inc for examples)
319 install :: nlms FORCE
322 # Any specialized rules here
326 # Include the 'tail' makefile that has targets that depend on variables defined
330 include $(AP_WORK)/build/NWGNUtail.inc