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 13251876Speterifndef EnvironmentDefined 14251876Speterinclude $(APR_WORK)/build/NWGNUhead.inc 15251876Speterendif 16251876Speter 17251876Speter# 18251876Speter# build this level's files 19251876Speter 20251876Speter# 21251876Speter# Make sure all needed macro's are defined 22251876Speter# 23251876Speter 24251876Speter# LINK_STATIC = 1 25251876Speter 26251876Speter# for now defined here - should finally go into build/NWGNUenvironment.inc 27251876SpeterGDBM_INC = $(GDBMSDK)/inc 28251876SpeterGDBM_IMP = libgdbm.imp 29251876SpeterGDBM_LIB = libgdbm.lib 30251876SpeterGDBM_NLM = libgdbm 31251876Speter 32251876Speter# 33251876Speter# These directories will be at the beginning of the include list, followed by 34251876Speter# INCDIRS 35251876Speter# 36251876SpeterXINCDIRS += \ 37251876Speter $(APR)/include/arch/netware \ 38251876Speter $(APR)/include \ 39251876Speter $(APU)/include \ 40251876Speter $(APU)/include/private \ 41251876Speter $(APR) \ 42251876Speter $(GDBM_INC) \ 43251876Speter $(EOLIST) 44251876Speter 45251876Speter# 46251876Speter# These flags will come after CFLAGS 47251876Speter# 48251876SpeterXCFLAGS += \ 49251876Speter $(EOLIST) 50251876Speter 51251876Speter# 52251876Speter# These defines will come after DEFINES 53251876Speter# 54251876SpeterXDEFINES += \ 55251876Speter -DAPU_DSO_MODULE_BUILD \ 56251876Speter -DAPU_HAVE_GDBM=1 \ 57251876Speter $(EOLIST) 58251876Speter 59251876Speter# 60251876Speter# These flags will be added to the link.opt file 61251876Speter# 62251876SpeterXLFLAGS += \ 63251876Speter $(EOLIST) 64251876Speter 65251876Speterifdef LINK_STATIC 66251876SpeterXLFLAGS += \ 67251876Speter -l $(GDBMSDK)/lib \ 68251876Speter $(EOLIST) 69251876Speterelse 70251876SpeterXLFLAGS += \ 71251876Speter -l $(GDBMSDK)/imp \ 72251876Speter $(EOLIST) 73251876Speterendif 74251876Speter 75251876Speter# 76251876Speter# These values will be appended to the correct variables based on the value of 77251876Speter# RELEASE 78251876Speter# 79251876Speterifeq "$(RELEASE)" "debug" 80251876SpeterXINCDIRS += \ 81251876Speter $(EOLIST) 82251876Speter 83251876SpeterXCFLAGS += \ 84251876Speter $(EOLIST) 85251876Speter 86251876SpeterXDEFINES += \ 87251876Speter $(EOLIST) 88251876Speter 89251876SpeterXLFLAGS += \ 90251876Speter $(EOLIST) 91251876Speterendif 92251876Speter 93251876Speterifeq "$(RELEASE)" "noopt" 94251876SpeterXINCDIRS += \ 95251876Speter $(EOLIST) 96251876Speter 97251876SpeterXCFLAGS += \ 98251876Speter $(EOLIST) 99251876Speter 100251876SpeterXDEFINES += \ 101251876Speter $(EOLIST) 102251876Speter 103251876SpeterXLFLAGS += \ 104251876Speter $(EOLIST) 105251876Speterendif 106251876Speter 107251876Speterifeq "$(RELEASE)" "release" 108251876SpeterXINCDIRS += \ 109251876Speter $(EOLIST) 110251876Speter 111251876SpeterXCFLAGS += \ 112251876Speter $(EOLIST) 113251876Speter 114251876SpeterXDEFINES += \ 115251876Speter $(EOLIST) 116251876Speter 117251876SpeterXLFLAGS += \ 118251876Speter $(EOLIST) 119251876Speterendif 120251876Speter 121251876Speter# 122251876Speter# These are used by the link target if an NLM is being generated 123251876Speter# This is used by the link 'name' directive to name the nlm. If left blank 124251876Speter# TARGET_nlm (see below) will be used. 125251876Speter# 126251876SpeterNLM_NAME = dbmgdbm 127251876Speter 128251876Speter# 129251876Speter# This is used by the link '-desc ' directive. 130251876Speter# If left blank, NLM_NAME will be used. 131251876Speter# 132251876SpeterNLM_DESCRIPTION = Apache Portability Runtime Library $(VERSION_STR) GDBM Driver Module 133251876Speter 134251876Speter# 135251876Speter# This is used by the '-threadname' directive. If left blank, 136251876Speter# NLM_NAME Thread will be used. 137251876Speter# 138251876SpeterNLM_THREAD_NAME = dbmgdbm 139251876Speter 140251876Speter# 141251876Speter# If this is specified, it will override VERSION value in 142251876Speter# $(AP_WORK)\build\NWGNUenvironment.inc 143251876Speter# 144251876SpeterNLM_VERSION = 145251876Speter 146251876Speter# 147251876Speter# If this is specified, it will override the default of 64K 148251876Speter# 149251876SpeterNLM_STACK_SIZE = 8192 150251876Speter 151251876Speter 152251876Speter# 153251876Speter# If this is specified it will be used by the link '-entry' directive 154251876Speter# 155251876SpeterNLM_ENTRY_SYM = 156251876Speter 157251876Speter# 158251876Speter# If this is specified it will be used by the link '-exit' directive 159251876Speter# 160251876SpeterNLM_EXIT_SYM = 161251876Speter 162251876Speter# 163251876Speter# If this is specified it will be used by the link '-check' directive 164251876Speter# 165251876SpeterNLM_CHECK_SYM = 166251876Speter 167251876Speter# 168251876Speter# If these are specified it will be used by the link '-flags' directive 169251876Speter# 170251876SpeterNLM_FLAGS = 171251876Speter 172251876Speter# 173251876Speter# If this is specified it will be linked in with the XDCData option in the def 174251876Speter# file instead of the default of $(NWOS)/apache.xdc. XDCData can be disabled 175251876Speter# by setting APACHE_UNIPROC in the environment 176251876Speter# 177251876SpeterXDCDATA = 178251876Speter 179251876Speter# 180251876Speter# If there is an NLM target, put it here 181251876Speter# 182251876SpeterTARGET_nlm = \ 183251876Speter $(OBJDIR)\$(NLM_NAME).nlm \ 184251876Speter $(EOLIST) 185251876Speter 186251876Speter# 187251876Speter# If there is an LIB target, put it here 188251876Speter# 189251876SpeterTARGET_lib = \ 190251876Speter $(EOLIST) 191251876Speter 192251876Speter# 193251876Speter# These are the OBJ files needed to create the NLM target above. 194251876Speter# Paths must all use the '/' character 195251876Speter# 196251876SpeterFILES_nlm_objs = \ 197251876Speter $(OBJDIR)/apr_dbm_gdbm.o \ 198251876Speter $(EOLIST) 199251876Speter 200251876Speter# 201251876Speter# These are the LIB files needed to create the NLM target above. 202251876Speter# These will be added as a library command in the link.opt file. 203251876Speter# 204251876SpeterFILES_nlm_libs = \ 205251876Speter $(PRELUDE) \ 206251876Speter $(EOLIST) 207251876Speter 208251876Speterifeq ($(LINK_STATIC),1) 209251876SpeterFILES_nlm_libs += \ 210251876Speter $(GDBM_LIB) \ 211251876Speter $(EOLIST) 212251876Speterendif 213251876Speter 214251876Speter# 215251876Speter# These are the modules that the above NLM target depends on to load. 216251876Speter# These will be added as a module command in the link.opt file. 217251876Speter# 218251876SpeterFILES_nlm_modules = \ 219251876Speter aprlib \ 220251876Speter libc \ 221251876Speter $(EOLIST) 222251876Speter 223251876Speterifneq ($(LINK_STATIC),1) 224251876SpeterFILES_nlm_modules += \ 225251876Speter $(GDBM_NLM) \ 226251876Speter $(EOLIST) 227251876Speterendif 228251876Speter 229251876Speter# 230251876Speter# If the nlm has a msg file, put it's path here 231251876Speter# 232251876SpeterFILE_nlm_msg = 233251876Speter 234251876Speter# 235251876Speter# If the nlm has a hlp file put it's path here 236251876Speter# 237251876SpeterFILE_nlm_hlp = 238251876Speter 239251876Speter# 240251876Speter# If this is specified, it will override $(NWOS)\copyright.txt. 241251876Speter# 242251876SpeterFILE_nlm_copyright = 243251876Speter 244251876Speter# 245251876Speter# Any additional imports go here 246251876Speter# 247251876SpeterFILES_nlm_Ximports = \ 248251876Speter @aprlib.imp \ 249251876Speter @libc.imp \ 250251876Speter $(EOLIST) 251251876Speter 252251876Speterifneq ($(LINK_STATIC),1) 253251876SpeterFILES_nlm_Ximports += \ 254251876Speter @$(GDBM_IMP) \ 255251876Speter $(EOLIST) 256251876Speterendif 257251876Speter 258251876Speter# 259251876Speter# Any symbols exported to here 260251876Speter# 261251876SpeterFILES_nlm_exports = \ 262251876Speter apr_dbm_type_gdbm \ 263251876Speter $(EOLIST) 264251876Speter 265251876Speter# 266251876Speter# These are the OBJ files needed to create the LIB target above. 267251876Speter# Paths must all use the '/' character 268251876Speter# 269251876SpeterFILES_lib_objs = \ 270251876Speter $(EOLIST) 271251876Speter 272251876Speter# 273251876Speter# implement targets and dependancies (leave this section alone) 274251876Speter# 275251876Speter 276251876Speterlibs :: $(OBJDIR) $(TARGET_lib) 277251876Speter 278251876Speternlms :: libs $(TARGET_nlm) 279251876Speter 280251876Speter# 281251876Speter# Updated this target to create necessary directories and copy files to the 282251876Speter# correct place. (See $(AP_WORK)\build\NWGNUhead.inc for examples) 283251876Speter# 284251876Speterinstall :: nlms FORCE 285251876Speter 286251876Speter# 287251876Speter# Any specialized rules here 288251876Speter# 289251876Speter 290251876Speter# 291251876Speter# Include the 'tail' makefile that has targets that depend on variables defined 292251876Speter# in this makefile 293251876Speter# 294251876Speter 295251876Speterinclude $(APRBUILD)/NWGNUtail.inc 296251876Speter 297251876Speter 298251876Speter 299