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