1319e71fd1680ca4864afe0b1aca2b8c8e4a1ee4Stef Walter#
1319e71fd1680ca4864afe0b1aca2b8c8e4a1ee4Stef Walter# Declare the sub-directories to be built here
1319e71fd1680ca4864afe0b1aca2b8c8e4a1ee4Stef Walter#
b742179ac0790068380618ab72a06af18544f09cPavel Březina
1319e71fd1680ca4864afe0b1aca2b8c8e4a1ee4Stef WalterSUBDIRS = \
1319e71fd1680ca4864afe0b1aca2b8c8e4a1ee4Stef Walter $(EOLIST)
1319e71fd1680ca4864afe0b1aca2b8c8e4a1ee4Stef Walter
1319e71fd1680ca4864afe0b1aca2b8c8e4a1ee4Stef Walter#
1319e71fd1680ca4864afe0b1aca2b8c8e4a1ee4Stef Walter# Get the 'head' of the build environment. This includes default targets and
1319e71fd1680ca4864afe0b1aca2b8c8e4a1ee4Stef Walter# paths to tools
1319e71fd1680ca4864afe0b1aca2b8c8e4a1ee4Stef Walter#
1319e71fd1680ca4864afe0b1aca2b8c8e4a1ee4Stef Walter
1319e71fd1680ca4864afe0b1aca2b8c8e4a1ee4Stef Walterinclude $(AP_WORK)/build/NWGNUhead.inc
1319e71fd1680ca4864afe0b1aca2b8c8e4a1ee4Stef Walter
1319e71fd1680ca4864afe0b1aca2b8c8e4a1ee4Stef Walter#
1319e71fd1680ca4864afe0b1aca2b8c8e4a1ee4Stef Walter# build this level's files
1319e71fd1680ca4864afe0b1aca2b8c8e4a1ee4Stef Walter
1319e71fd1680ca4864afe0b1aca2b8c8e4a1ee4Stef Walter#
1319e71fd1680ca4864afe0b1aca2b8c8e4a1ee4Stef Walter# Make sure all needed macro's are defined
1319e71fd1680ca4864afe0b1aca2b8c8e4a1ee4Stef Walter#
1319e71fd1680ca4864afe0b1aca2b8c8e4a1ee4Stef Walterifneq "$(MAKECMDGOALS)" "clean"
b742179ac0790068380618ab72a06af18544f09cPavel Březinaifneq "$(findstring clobber_,$(MAKECMDGOALS))" "clobber_"
b742179ac0790068380618ab72a06af18544f09cPavel BřezinaAPU_HAVE_CRYPTO = $(shell $(AWK) '/^\#define APU_HAVE_CRYPTO/{print $$3}' $(APRUTIL)/include/apu.h)
1319e71fd1680ca4864afe0b1aca2b8c8e4a1ee4Stef Walterendif
1319e71fd1680ca4864afe0b1aca2b8c8e4a1ee4Stef Walterendif
1319e71fd1680ca4864afe0b1aca2b8c8e4a1ee4Stef Walter
1319e71fd1680ca4864afe0b1aca2b8c8e4a1ee4Stef Walter#
df4e1db5d41c903ae57fd880acc76a0ad84aa7b2Pavel Březina# These directories will be at the beginning of the include list, followed by
1319e71fd1680ca4864afe0b1aca2b8c8e4a1ee4Stef Walter# INCDIRS
b742179ac0790068380618ab72a06af18544f09cPavel Březina#
b742179ac0790068380618ab72a06af18544f09cPavel BřezinaXINCDIRS += \
b742179ac0790068380618ab72a06af18544f09cPavel Březina $(EOLIST)
b742179ac0790068380618ab72a06af18544f09cPavel Březina
b742179ac0790068380618ab72a06af18544f09cPavel Březina#
b742179ac0790068380618ab72a06af18544f09cPavel Březina# These flags will come after CFLAGS
b742179ac0790068380618ab72a06af18544f09cPavel Březina#
b742179ac0790068380618ab72a06af18544f09cPavel BřezinaXCFLAGS += \
b742179ac0790068380618ab72a06af18544f09cPavel Březina $(EOLIST)
b742179ac0790068380618ab72a06af18544f09cPavel Březina
b742179ac0790068380618ab72a06af18544f09cPavel Březina#
b742179ac0790068380618ab72a06af18544f09cPavel Březina# These defines will come after DEFINES
b742179ac0790068380618ab72a06af18544f09cPavel Březina#
b742179ac0790068380618ab72a06af18544f09cPavel BřezinaXDEFINES += \
b742179ac0790068380618ab72a06af18544f09cPavel Březina $(EOLIST)
b742179ac0790068380618ab72a06af18544f09cPavel Březina
b742179ac0790068380618ab72a06af18544f09cPavel Březina#
b742179ac0790068380618ab72a06af18544f09cPavel Březina# These flags will be added to the link.opt file
b742179ac0790068380618ab72a06af18544f09cPavel Březina#
b742179ac0790068380618ab72a06af18544f09cPavel BřezinaXLFLAGS += \
b742179ac0790068380618ab72a06af18544f09cPavel Březina $(EOLIST)
b742179ac0790068380618ab72a06af18544f09cPavel Březina
b742179ac0790068380618ab72a06af18544f09cPavel Březina#
b742179ac0790068380618ab72a06af18544f09cPavel Březina# These values will be appended to the correct variables based on the value of
b742179ac0790068380618ab72a06af18544f09cPavel Březina# RELEASE
b742179ac0790068380618ab72a06af18544f09cPavel Březina#
b742179ac0790068380618ab72a06af18544f09cPavel Březinaifeq "$(RELEASE)" "debug"
b742179ac0790068380618ab72a06af18544f09cPavel BřezinaXINCDIRS += \
b742179ac0790068380618ab72a06af18544f09cPavel Březina $(EOLIST)
b742179ac0790068380618ab72a06af18544f09cPavel Březina
b742179ac0790068380618ab72a06af18544f09cPavel BřezinaXCFLAGS += \
b742179ac0790068380618ab72a06af18544f09cPavel Březina $(EOLIST)
b742179ac0790068380618ab72a06af18544f09cPavel Březina
b742179ac0790068380618ab72a06af18544f09cPavel BřezinaXDEFINES += \
b742179ac0790068380618ab72a06af18544f09cPavel Březina $(EOLIST)
b742179ac0790068380618ab72a06af18544f09cPavel Březina
b742179ac0790068380618ab72a06af18544f09cPavel BřezinaXLFLAGS += \
b742179ac0790068380618ab72a06af18544f09cPavel Březina $(EOLIST)
b742179ac0790068380618ab72a06af18544f09cPavel Březinaendif
b742179ac0790068380618ab72a06af18544f09cPavel Březina
b742179ac0790068380618ab72a06af18544f09cPavel Březinaifeq "$(RELEASE)" "noopt"
b742179ac0790068380618ab72a06af18544f09cPavel BřezinaXINCDIRS += \
b742179ac0790068380618ab72a06af18544f09cPavel Březina $(EOLIST)
b742179ac0790068380618ab72a06af18544f09cPavel Březina
b742179ac0790068380618ab72a06af18544f09cPavel BřezinaXCFLAGS += \
b742179ac0790068380618ab72a06af18544f09cPavel Březina $(EOLIST)
b742179ac0790068380618ab72a06af18544f09cPavel Březina
b742179ac0790068380618ab72a06af18544f09cPavel BřezinaXDEFINES += \
b742179ac0790068380618ab72a06af18544f09cPavel Březina $(EOLIST)
b742179ac0790068380618ab72a06af18544f09cPavel Březina
b742179ac0790068380618ab72a06af18544f09cPavel BřezinaXLFLAGS += \
b742179ac0790068380618ab72a06af18544f09cPavel Březina $(EOLIST)
b742179ac0790068380618ab72a06af18544f09cPavel Březinaendif
b742179ac0790068380618ab72a06af18544f09cPavel Březina
b742179ac0790068380618ab72a06af18544f09cPavel Březinaifeq "$(RELEASE)" "release"
b742179ac0790068380618ab72a06af18544f09cPavel BřezinaXINCDIRS += \
b742179ac0790068380618ab72a06af18544f09cPavel Březina $(EOLIST)
b742179ac0790068380618ab72a06af18544f09cPavel Březina
b742179ac0790068380618ab72a06af18544f09cPavel BřezinaXCFLAGS += \
b742179ac0790068380618ab72a06af18544f09cPavel Březina $(EOLIST)
b742179ac0790068380618ab72a06af18544f09cPavel Březina
b742179ac0790068380618ab72a06af18544f09cPavel BřezinaXDEFINES += \
b742179ac0790068380618ab72a06af18544f09cPavel Březina $(EOLIST)
b742179ac0790068380618ab72a06af18544f09cPavel Březina
b742179ac0790068380618ab72a06af18544f09cPavel BřezinaXLFLAGS += \
b742179ac0790068380618ab72a06af18544f09cPavel Březina $(EOLIST)
b742179ac0790068380618ab72a06af18544f09cPavel Březinaendif
b742179ac0790068380618ab72a06af18544f09cPavel Březina
b742179ac0790068380618ab72a06af18544f09cPavel Březina#
b742179ac0790068380618ab72a06af18544f09cPavel Březina# These are used by the link target if an NLM is being generated
b742179ac0790068380618ab72a06af18544f09cPavel Březina# This is used by the link 'name' directive to name the nlm. If left blank
b742179ac0790068380618ab72a06af18544f09cPavel Březina# TARGET_nlm (see below) will be used.
b742179ac0790068380618ab72a06af18544f09cPavel Březina#
b742179ac0790068380618ab72a06af18544f09cPavel BřezinaNLM_NAME =
b742179ac0790068380618ab72a06af18544f09cPavel Březina
b742179ac0790068380618ab72a06af18544f09cPavel Březina#
b742179ac0790068380618ab72a06af18544f09cPavel Březina# This is used by the link '-desc ' directive.
b742179ac0790068380618ab72a06af18544f09cPavel Březina# If left blank, NLM_NAME will be used.
b742179ac0790068380618ab72a06af18544f09cPavel Březina#
b742179ac0790068380618ab72a06af18544f09cPavel BřezinaNLM_DESCRIPTION =
b742179ac0790068380618ab72a06af18544f09cPavel Březina
b742179ac0790068380618ab72a06af18544f09cPavel Březina#
b742179ac0790068380618ab72a06af18544f09cPavel Březina# This is used by the '-threadname' directive. If left blank,
b742179ac0790068380618ab72a06af18544f09cPavel Březina# NLM_NAME Thread will be used.
b742179ac0790068380618ab72a06af18544f09cPavel Březina#
b742179ac0790068380618ab72a06af18544f09cPavel BřezinaNLM_THREAD_NAME =
b742179ac0790068380618ab72a06af18544f09cPavel Březina
b742179ac0790068380618ab72a06af18544f09cPavel Březina#
b742179ac0790068380618ab72a06af18544f09cPavel Březina# If this is specified, it will override VERSION value in
b742179ac0790068380618ab72a06af18544f09cPavel Březina# $(AP_WORK)/build/NWGNUenvironment.inc
b742179ac0790068380618ab72a06af18544f09cPavel Březina#
b742179ac0790068380618ab72a06af18544f09cPavel BřezinaNLM_VERSION =
b742179ac0790068380618ab72a06af18544f09cPavel Březina
b742179ac0790068380618ab72a06af18544f09cPavel Březina#
b742179ac0790068380618ab72a06af18544f09cPavel Březina# If this is specified, it will override the default of 64K
b742179ac0790068380618ab72a06af18544f09cPavel Březina#
b742179ac0790068380618ab72a06af18544f09cPavel BřezinaNLM_STACK_SIZE =
b742179ac0790068380618ab72a06af18544f09cPavel Březina
df4e1db5d41c903ae57fd880acc76a0ad84aa7b2Pavel Březina
df4e1db5d41c903ae57fd880acc76a0ad84aa7b2Pavel Březina#
df4e1db5d41c903ae57fd880acc76a0ad84aa7b2Pavel Březina# If this is specified it will be used by the link '-entry' directive
b742179ac0790068380618ab72a06af18544f09cPavel Březina#
b742179ac0790068380618ab72a06af18544f09cPavel BřezinaNLM_ENTRY_SYM =
b742179ac0790068380618ab72a06af18544f09cPavel Březina
b742179ac0790068380618ab72a06af18544f09cPavel Březina#
b742179ac0790068380618ab72a06af18544f09cPavel Březina# If this is specified it will be used by the link '-exit' directive
b742179ac0790068380618ab72a06af18544f09cPavel Březina#
b742179ac0790068380618ab72a06af18544f09cPavel BřezinaNLM_EXIT_SYM =
b742179ac0790068380618ab72a06af18544f09cPavel Březina
df4e1db5d41c903ae57fd880acc76a0ad84aa7b2Pavel Březina#
b742179ac0790068380618ab72a06af18544f09cPavel Březina# If this is specified it will be used by the link '-check' directive
b742179ac0790068380618ab72a06af18544f09cPavel Březina#
b742179ac0790068380618ab72a06af18544f09cPavel BřezinaNLM_CHECK_SYM =
b742179ac0790068380618ab72a06af18544f09cPavel Březina
df4e1db5d41c903ae57fd880acc76a0ad84aa7b2Pavel Březina#
b742179ac0790068380618ab72a06af18544f09cPavel Březina# If these are specified it will be used by the link '-flags' directive
b742179ac0790068380618ab72a06af18544f09cPavel Březina#
b742179ac0790068380618ab72a06af18544f09cPavel BřezinaNLM_FLAGS =
b742179ac0790068380618ab72a06af18544f09cPavel Březina
b742179ac0790068380618ab72a06af18544f09cPavel Březina#
df4e1db5d41c903ae57fd880acc76a0ad84aa7b2Pavel Březina# If this is specified it will be linked in with the XDCData option in the def
b742179ac0790068380618ab72a06af18544f09cPavel Březina# file instead of the default of $(NWOS)/apache.xdc. XDCData can be disabled
b742179ac0790068380618ab72a06af18544f09cPavel Březina# by setting APACHE_UNIPROC in the environment
b742179ac0790068380618ab72a06af18544f09cPavel Březina#
b742179ac0790068380618ab72a06af18544f09cPavel BřezinaXDCDATA =
b742179ac0790068380618ab72a06af18544f09cPavel Březina
b742179ac0790068380618ab72a06af18544f09cPavel Březina#
b742179ac0790068380618ab72a06af18544f09cPavel Březina# If there is an NLM target, put it here
b742179ac0790068380618ab72a06af18544f09cPavel Březina#
b742179ac0790068380618ab72a06af18544f09cPavel BřezinaTARGET_nlm = \
b742179ac0790068380618ab72a06af18544f09cPavel Březina $(OBJDIR)/session.nlm \
b742179ac0790068380618ab72a06af18544f09cPavel Březina $(OBJDIR)/session_cookie.nlm \
b742179ac0790068380618ab72a06af18544f09cPavel Březina $(OBJDIR)/session_dbd.nlm \
b742179ac0790068380618ab72a06af18544f09cPavel Březina $(EOLIST)
b742179ac0790068380618ab72a06af18544f09cPavel Březina
b742179ac0790068380618ab72a06af18544f09cPavel Březina# If the APU library has cryptp API then build the mod_session_crypto module
b742179ac0790068380618ab72a06af18544f09cPavel Březinaifeq "$(APU_HAVE_CRYPTO)" "1"
b742179ac0790068380618ab72a06af18544f09cPavel BřezinaTARGET_nlm += $(OBJDIR)/session_crypto.nlm
b742179ac0790068380618ab72a06af18544f09cPavel Březinaendif
b742179ac0790068380618ab72a06af18544f09cPavel Březina
b742179ac0790068380618ab72a06af18544f09cPavel Březina#
b742179ac0790068380618ab72a06af18544f09cPavel Březina# If there is an LIB target, put it here
b742179ac0790068380618ab72a06af18544f09cPavel Březina#
b742179ac0790068380618ab72a06af18544f09cPavel BřezinaTARGET_lib = \
b742179ac0790068380618ab72a06af18544f09cPavel Březina $(EOLIST)
b742179ac0790068380618ab72a06af18544f09cPavel Březina
b742179ac0790068380618ab72a06af18544f09cPavel Březina#
b742179ac0790068380618ab72a06af18544f09cPavel Březina# These are the OBJ files needed to create the NLM target above.
b742179ac0790068380618ab72a06af18544f09cPavel Březina# Paths must all use the '/' character
b742179ac0790068380618ab72a06af18544f09cPavel Březina#
b742179ac0790068380618ab72a06af18544f09cPavel BřezinaFILES_nlm_objs = \
b742179ac0790068380618ab72a06af18544f09cPavel Březina $(EOLIST)
b742179ac0790068380618ab72a06af18544f09cPavel Březina
b742179ac0790068380618ab72a06af18544f09cPavel Březina#
b742179ac0790068380618ab72a06af18544f09cPavel Březina# These are the LIB files needed to create the NLM target above.
b742179ac0790068380618ab72a06af18544f09cPavel Březina# These will be added as a library command in the link.opt file.
b742179ac0790068380618ab72a06af18544f09cPavel Březina#
b742179ac0790068380618ab72a06af18544f09cPavel BřezinaFILES_nlm_libs = \
b742179ac0790068380618ab72a06af18544f09cPavel Březina $(EOLIST)
b742179ac0790068380618ab72a06af18544f09cPavel Březina
b742179ac0790068380618ab72a06af18544f09cPavel Březina#
b742179ac0790068380618ab72a06af18544f09cPavel Březina# These are the modules that the above NLM target depends on to load.
b742179ac0790068380618ab72a06af18544f09cPavel Březina# These will be added as a module command in the link.opt file.
b742179ac0790068380618ab72a06af18544f09cPavel Březina#
b742179ac0790068380618ab72a06af18544f09cPavel BřezinaFILES_nlm_modules = \
b742179ac0790068380618ab72a06af18544f09cPavel Březina $(EOLIST)
b742179ac0790068380618ab72a06af18544f09cPavel Březina
b742179ac0790068380618ab72a06af18544f09cPavel Březina#
b742179ac0790068380618ab72a06af18544f09cPavel Březina# If the nlm has a msg file, put it's path here
b742179ac0790068380618ab72a06af18544f09cPavel Březina#
b742179ac0790068380618ab72a06af18544f09cPavel BřezinaFILE_nlm_msg =
b742179ac0790068380618ab72a06af18544f09cPavel Březina
df4e1db5d41c903ae57fd880acc76a0ad84aa7b2Pavel Březina#
df4e1db5d41c903ae57fd880acc76a0ad84aa7b2Pavel Březina# If the nlm has a hlp file put it's path here
df4e1db5d41c903ae57fd880acc76a0ad84aa7b2Pavel Březina#
df4e1db5d41c903ae57fd880acc76a0ad84aa7b2Pavel BřezinaFILE_nlm_hlp =
df4e1db5d41c903ae57fd880acc76a0ad84aa7b2Pavel Březina
df4e1db5d41c903ae57fd880acc76a0ad84aa7b2Pavel Březina#
df4e1db5d41c903ae57fd880acc76a0ad84aa7b2Pavel Březina# If this is specified, it will override $(NWOS)\copyright.txt.
df4e1db5d41c903ae57fd880acc76a0ad84aa7b2Pavel Březina#
df4e1db5d41c903ae57fd880acc76a0ad84aa7b2Pavel BřezinaFILE_nlm_copyright =
b742179ac0790068380618ab72a06af18544f09cPavel Březina
b742179ac0790068380618ab72a06af18544f09cPavel Březina#
b742179ac0790068380618ab72a06af18544f09cPavel Březina# Any additional imports go here
b742179ac0790068380618ab72a06af18544f09cPavel Březina#
b742179ac0790068380618ab72a06af18544f09cPavel BřezinaFILES_nlm_Ximports = \
b742179ac0790068380618ab72a06af18544f09cPavel Březina $(EOLIST)
b742179ac0790068380618ab72a06af18544f09cPavel Březina
b742179ac0790068380618ab72a06af18544f09cPavel Březina#
b742179ac0790068380618ab72a06af18544f09cPavel Březina# Any symbols exported to here
b742179ac0790068380618ab72a06af18544f09cPavel Březina#
b742179ac0790068380618ab72a06af18544f09cPavel BřezinaFILES_nlm_exports = \
b742179ac0790068380618ab72a06af18544f09cPavel Březina $(EOLIST)
b742179ac0790068380618ab72a06af18544f09cPavel Březina
b742179ac0790068380618ab72a06af18544f09cPavel Březina#
df4e1db5d41c903ae57fd880acc76a0ad84aa7b2Pavel Březina# These are the OBJ files needed to create the LIB target above.
b742179ac0790068380618ab72a06af18544f09cPavel Březina# Paths must all use the '/' character
b742179ac0790068380618ab72a06af18544f09cPavel Březina#
b742179ac0790068380618ab72a06af18544f09cPavel BřezinaFILES_lib_objs = \
b742179ac0790068380618ab72a06af18544f09cPavel Březina $(EOLIST)
b742179ac0790068380618ab72a06af18544f09cPavel Březina
b742179ac0790068380618ab72a06af18544f09cPavel Březina#
b742179ac0790068380618ab72a06af18544f09cPavel Březina# implement targets and dependancies (leave this section alone)
b742179ac0790068380618ab72a06af18544f09cPavel Březina#
b742179ac0790068380618ab72a06af18544f09cPavel Březina
b742179ac0790068380618ab72a06af18544f09cPavel Březinalibs :: $(OBJDIR) $(TARGET_lib)
b742179ac0790068380618ab72a06af18544f09cPavel Březina
b742179ac0790068380618ab72a06af18544f09cPavel Březinanlms :: libs $(TARGET_nlm)
b742179ac0790068380618ab72a06af18544f09cPavel Březina
b742179ac0790068380618ab72a06af18544f09cPavel Březina#
b742179ac0790068380618ab72a06af18544f09cPavel Březina# Updated this target to create necessary directories and copy files to the
b742179ac0790068380618ab72a06af18544f09cPavel Březina# correct place. (See $(AP_WORK)/build/NWGNUhead.inc for examples)
b742179ac0790068380618ab72a06af18544f09cPavel Březina#
b742179ac0790068380618ab72a06af18544f09cPavel Březinainstall :: nlms FORCE
b742179ac0790068380618ab72a06af18544f09cPavel Březina $(call COPY,$(OBJDIR)/*.nlm, $(INSTALLBASE)/modules/)
b742179ac0790068380618ab72a06af18544f09cPavel Březina
b742179ac0790068380618ab72a06af18544f09cPavel Březina#
b742179ac0790068380618ab72a06af18544f09cPavel Březina# Any specialized rules here
b742179ac0790068380618ab72a06af18544f09cPavel Březina#
b742179ac0790068380618ab72a06af18544f09cPavel Březina
b742179ac0790068380618ab72a06af18544f09cPavel Březina#
b742179ac0790068380618ab72a06af18544f09cPavel Březina# Include the 'tail' makefile that has targets that depend on variables defined
b742179ac0790068380618ab72a06af18544f09cPavel Březina# in this makefile
b742179ac0790068380618ab72a06af18544f09cPavel Březina#
b742179ac0790068380618ab72a06af18544f09cPavel Březina
b742179ac0790068380618ab72a06af18544f09cPavel Březinainclude $(APBUILD)/NWGNUtail.inc
b742179ac0790068380618ab72a06af18544f09cPavel Březina
b742179ac0790068380618ab72a06af18544f09cPavel Březina
b742179ac0790068380618ab72a06af18544f09cPavel Březina