1# 2# Declare the sub-directories to be built here 3# 4 5SUBDIRS = \ 6 $(EOLIST) 7 8# 9# Get the 'head' of the build environment. This includes default targets and 10# paths to tools 11# 12 13include $(AP_WORK)/build/NWGNUhead.inc 14 15# 16# build this level's files 17 18# 19# Make sure all needed macro's are defined 20# 21ifneq "$(MAKECMDGOALS)" "clean" 22ifneq "$(findstring clobber_,$(MAKECMDGOALS))" "clobber_" 23APU_HAVE_CRYPTO = $(shell $(AWK) '/^\#define APU_HAVE_CRYPTO/{print $$3}' $(APRUTIL)/include/apu.h) 24endif 25endif 26 27# 28# These directories will be at the beginning of the include list, followed by 29# INCDIRS 30# 31XINCDIRS += \ 32 $(EOLIST) 33 34# 35# These flags will come after CFLAGS 36# 37XCFLAGS += \ 38 $(EOLIST) 39 40# 41# These defines will come after DEFINES 42# 43XDEFINES += \ 44 $(EOLIST) 45 46# 47# These flags will be added to the link.opt file 48# 49XLFLAGS += \ 50 $(EOLIST) 51 52# 53# These values will be appended to the correct variables based on the value of 54# RELEASE 55# 56ifeq "$(RELEASE)" "debug" 57XINCDIRS += \ 58 $(EOLIST) 59 60XCFLAGS += \ 61 $(EOLIST) 62 63XDEFINES += \ 64 $(EOLIST) 65 66XLFLAGS += \ 67 $(EOLIST) 68endif 69 70ifeq "$(RELEASE)" "noopt" 71XINCDIRS += \ 72 $(EOLIST) 73 74XCFLAGS += \ 75 $(EOLIST) 76 77XDEFINES += \ 78 $(EOLIST) 79 80XLFLAGS += \ 81 $(EOLIST) 82endif 83 84ifeq "$(RELEASE)" "release" 85XINCDIRS += \ 86 $(EOLIST) 87 88XCFLAGS += \ 89 $(EOLIST) 90 91XDEFINES += \ 92 $(EOLIST) 93 94XLFLAGS += \ 95 $(EOLIST) 96endif 97 98# 99# These are used by the link target if an NLM is being generated 100# This is used by the link 'name' directive to name the nlm. If left blank 101# TARGET_nlm (see below) will be used. 102# 103NLM_NAME = 104 105# 106# This is used by the link '-desc ' directive. 107# If left blank, NLM_NAME will be used. 108# 109NLM_DESCRIPTION = 110 111# 112# This is used by the '-threadname' directive. If left blank, 113# NLM_NAME Thread will be used. 114# 115NLM_THREAD_NAME = 116 117# 118# If this is specified, it will override VERSION value in 119# $(AP_WORK)/build/NWGNUenvironment.inc 120# 121NLM_VERSION = 122 123# 124# If this is specified, it will override the default of 64K 125# 126NLM_STACK_SIZE = 127 128 129# 130# If this is specified it will be used by the link '-entry' directive 131# 132NLM_ENTRY_SYM = 133 134# 135# If this is specified it will be used by the link '-exit' directive 136# 137NLM_EXIT_SYM = 138 139# 140# If this is specified it will be used by the link '-check' directive 141# 142NLM_CHECK_SYM = 143 144# 145# If these are specified it will be used by the link '-flags' directive 146# 147NLM_FLAGS = 148 149# 150# If this is specified it will be linked in with the XDCData option in the def 151# file instead of the default of $(NWOS)/apache.xdc. XDCData can be disabled 152# by setting APACHE_UNIPROC in the environment 153# 154XDCDATA = 155 156# 157# If there is an NLM target, put it here 158# 159TARGET_nlm = \ 160 $(OBJDIR)/session.nlm \ 161 $(OBJDIR)/session_cookie.nlm \ 162 $(OBJDIR)/session_dbd.nlm \ 163 $(EOLIST) 164 165# If the APU library has cryptp API then build the mod_session_crypto module 166ifeq "$(APU_HAVE_CRYPTO)" "1" 167TARGET_nlm += $(OBJDIR)/session_crypto.nlm 168endif 169 170# 171# If there is an LIB target, put it here 172# 173TARGET_lib = \ 174 $(EOLIST) 175 176# 177# These are the OBJ files needed to create the NLM target above. 178# Paths must all use the '/' character 179# 180FILES_nlm_objs = \ 181 $(EOLIST) 182 183# 184# These are the LIB files needed to create the NLM target above. 185# These will be added as a library command in the link.opt file. 186# 187FILES_nlm_libs = \ 188 $(EOLIST) 189 190# 191# These are the modules that the above NLM target depends on to load. 192# These will be added as a module command in the link.opt file. 193# 194FILES_nlm_modules = \ 195 $(EOLIST) 196 197# 198# If the nlm has a msg file, put it's path here 199# 200FILE_nlm_msg = 201 202# 203# If the nlm has a hlp file put it's path here 204# 205FILE_nlm_hlp = 206 207# 208# If this is specified, it will override $(NWOS)\copyright.txt. 209# 210FILE_nlm_copyright = 211 212# 213# Any additional imports go here 214# 215FILES_nlm_Ximports = \ 216 $(EOLIST) 217 218# 219# Any symbols exported to here 220# 221FILES_nlm_exports = \ 222 $(EOLIST) 223 224# 225# These are the OBJ files needed to create the LIB target above. 226# Paths must all use the '/' character 227# 228FILES_lib_objs = \ 229 $(EOLIST) 230 231# 232# implement targets and dependancies (leave this section alone) 233# 234 235libs :: $(OBJDIR) $(TARGET_lib) 236 237nlms :: libs $(TARGET_nlm) 238 239# 240# Updated this target to create necessary directories and copy files to the 241# correct place. (See $(AP_WORK)/build/NWGNUhead.inc for examples) 242# 243install :: nlms FORCE 244 $(call COPY,$(OBJDIR)/*.nlm, $(INSTALLBASE)/modules/) 245 246# 247# Any specialized rules here 248# 249 250# 251# Include the 'tail' makefile that has targets that depend on variables defined 252# in this makefile 253# 254 255include $(APBUILD)/NWGNUtail.inc 256 257 258