# | |
# Declare the sub-directories to be built here | |
# | |
SUBDIRS = \ | |
$(EOLIST) | |
# | |
# Get the 'head' of the build environment. This includes default targets and | |
# paths to tools | |
# | |
ifndef EnvironmentDefined | |
include $(APR_WORK)\build\NWGNUhead.inc | |
endif | |
#include $(APR)\build\NWGNUcustom.inc | |
# | |
# build this level's files | |
# | |
# Make sure all needed macro's are defined | |
# | |
# LINK_STATIC = 1 | |
# for now defined here - should finally go into build/NWGNUenvironment.inc | |
MYSQL_INC = $(MYSQLSDK)/include | |
MYSQL_IMP = $(MYSQLSDK)/lib/libmysql.imp | |
MYSQL_LIB = $(MYSQLSDK)/lib/libmysqlclient_r.lib $(MYSQLSDK)/lib/libz.lib | |
MYSQL_NLM = libmysql | |
# | |
# These directories will be at the beginning of the include list, followed by | |
# INCDIRS | |
# | |
XINCDIRS += \ | |
$(APR)/include/arch/netware \ | |
$(APR)/include \ | |
$(APRUTIL)/include \ | |
$(APRUTIL)/include/private \ | |
$(APR) \ | |
$(MYSQL_INC) \ | |
$(EOLIST) | |
# | |
# These flags will come after CFLAGS | |
# | |
XCFLAGS += \ | |
$(EOLIST) | |
# | |
# These defines will come after DEFINES | |
# | |
XDEFINES += \ | |
-DAPU_HAVE_MYSQL \ | |
-DHAVE_MYSQL_H \ | |
$(EOLIST) | |
# | |
# These flags will be added to the link.opt file | |
# | |
XLFLAGS += \ | |
$(EOLIST) | |
ifdef LINK_STATIC | |
XLFLAGS += \ | |
-l $(MYSQLSDK)/lib \ | |
$(EOLIST) | |
endif | |
# | |
# These values will be appended to the correct variables based on the value of | |
# RELEASE | |
# | |
ifeq "$(RELEASE)" "debug" | |
XINCDIRS += \ | |
$(EOLIST) | |
XCFLAGS += \ | |
$(EOLIST) | |
XDEFINES += \ | |
$(EOLIST) | |
XLFLAGS += \ | |
$(EOLIST) | |
endif | |
ifeq "$(RELEASE)" "noopt" | |
XINCDIRS += \ | |
$(EOLIST) | |
XCFLAGS += \ | |
$(EOLIST) | |
XDEFINES += \ | |
$(EOLIST) | |
XLFLAGS += \ | |
$(EOLIST) | |
endif | |
ifeq "$(RELEASE)" "release" | |
XINCDIRS += \ | |
$(EOLIST) | |
XCFLAGS += \ | |
$(EOLIST) | |
XDEFINES += \ | |
$(EOLIST) | |
XLFLAGS += \ | |
$(EOLIST) | |
endif | |
# | |
# These are used by the link target if an NLM is being generated | |
# This is used by the link 'name' directive to name the nlm. If left blank | |
# TARGET_nlm (see below) will be used. | |
# | |
NLM_NAME = dbdmysql | |
# | |
# This is used by the link '-desc ' directive. | |
# If left blank, NLM_NAME will be used. | |
# | |
NLM_DESCRIPTION = Apache Portability Runtime Library $(VERSION_STR) DBD MySQL Driver Module | |
# | |
# This is used by the link '-copy ' directive. | |
# If left blank, the ASF copyright defined in NWGNUtail.inc will be used. | |
# | |
NLM_COPYRIGHT = Copyright (c) 2003-2007 WebThing Ltd and other contributors | |
# | |
# This is used by the '-threadname' directive. If left blank, | |
# NLM_NAME Thread will be used. | |
# | |
NLM_THREAD_NAME = dbdmysql | |
# | |
# If this is specified, it will override VERSION value in | |
# $(AP_WORK)\build\NWGNUenvironment.inc | |
# | |
NLM_VERSION = | |
# | |
# If this is specified, it will override the default of 64K | |
# | |
NLM_STACK_SIZE = 8192 | |
# | |
# If this is specified it will be used by the link '-entry' directive | |
# | |
NLM_ENTRY_SYM = _LibCPrelude | |
# | |
# If this is specified it will be used by the link '-exit' directive | |
# | |
NLM_EXIT_SYM = _LibCPostlude | |
# | |
# If this is specified it will be used by the link '-check' directive | |
# | |
NLM_CHECK_SYM = | |
# | |
# If these are specified it will be used by the link '-flags' directive | |
# | |
NLM_FLAGS = AUTOUNLOAD, PSEUDOPREEMPTION | |
# | |
# If this is specified it will be linked in with the XDCData option in the def | |
# file instead of the default of $(NWOS)/apache.xdc. XDCData can be disabled | |
# by setting APACHE_UNIPROC in the environment | |
# | |
XDCDATA = | |
# | |
# If there is an NLM target, put it here | |
# | |
TARGET_nlm = \ | |
$(OBJDIR)\$(NLM_NAME).nlm \ | |
$(EOLIST) | |
# | |
# If there is an LIB target, put it here | |
# | |
TARGET_lib = \ | |
$(EOLIST) | |
# | |
# These are the OBJ files needed to create the NLM target above. | |
# Paths must all use the '/' character | |
# | |
FILES_nlm_objs = \ | |
$(OBJDIR)/apr_dbd_mysql.o \ | |
$(EOLIST) | |
# | |
# These are the LIB files needed to create the NLM target above. | |
# These will be added as a library command in the link.opt file. | |
# | |
FILES_nlm_libs = \ | |
libcpre.o \ | |
$(EOLIST) | |
ifeq ($(LINK_STATIC),1) | |
FILES_nlm_libs += \ | |
$(MYSQL_LIB) \ | |
$(EOLIST) | |
endif | |
# | |
# These are the modules that the above NLM target depends on to load. | |
# These will be added as a module command in the link.opt file. | |
# | |
FILES_nlm_modules = \ | |
aprlib \ | |
libc \ | |
$(EOLIST) | |
ifneq ($(LINK_STATIC),1) | |
FILES_nlm_modules += \ | |
$(MYSQL_NLM) \ | |
$(EOLIST) | |
endif | |
# | |
# If the nlm has a msg file, put it's path here | |
# | |
FILE_nlm_msg = | |
# | |
# If the nlm has a hlp file put it's path here | |
# | |
FILE_nlm_hlp = | |
# | |
# If this is specified, it will override $(NWOS)\copyright.txt. | |
# | |
FILE_nlm_copyright = | |
# | |
# Any additional imports go here | |
# | |
FILES_nlm_Ximports = \ | |
@$(APR)/aprlib.imp \ | |
@libc.imp \ | |
$(EOLIST) | |
ifneq ($(LINK_STATIC),1) | |
FILES_nlm_Ximports += \ | |
@$(MYSQL_IMP) \ | |
$(EOLIST) | |
endif | |
# | |
# Any symbols exported to here | |
# | |
FILES_nlm_exports = \ | |
apr_dbd_mysql_driver \ | |
$(EOLIST) | |
# | |
# These are the OBJ files needed to create the LIB target above. | |
# Paths must all use the '/' character | |
# | |
FILES_lib_objs = \ | |
$(EOLIST) | |
# | |
# implement targets and dependancies (leave this section alone) | |
# | |
libs :: $(OBJDIR) $(TARGET_lib) | |
nlms :: libs $(TARGET_nlm) | |
# | |
# Updated this target to create necessary directories and copy files to the | |
# correct place. (See $(AP_WORK)\build\NWGNUhead.inc for examples) | |
# | |
install :: nlms FORCE | |
# | |
# Any specialized rules here | |
# | |
# | |
# Include the 'tail' makefile that has targets that depend on variables defined | |
# in this makefile | |
# | |
include $(APR_WORK)\build\NWGNUtail.inc | |