NWGNUmakefile revision bbfffb4303e53b4700351e33848d86ac808fdccb
967e5f3c25249c779575864692935627004d3f9eChristian Maeder# Declare the sub-directories to be built here
967e5f3c25249c779575864692935627004d3f9eChristian Maeder# Get the 'head' of the build environment. This includes default targets and
967e5f3c25249c779575864692935627004d3f9eChristian Maeder# paths to tools
967e5f3c25249c779575864692935627004d3f9eChristian Maederinclude $(AP_WORK)\build\NWGNUhead.inc
fd896e2068ad7e50aed66ac18c3720ea7ff2619fChristian Maeder# build this level's files
ac19f8695aa1b2d2d1cd1319da2530edd8f46a96Christian Maeder# Make sure all needed macro's are defined
997c56f3bc74a703043010978e5013fdb074d659Christian Maeder# These directories will be at the beginning of the include list, followed by
fd896e2068ad7e50aed66ac18c3720ea7ff2619fChristian Maeder# These flags will come after CFLAGS
dea4c92f0c061d589c542d0640a18dab36dfbb46Christian Maeder# These defines will come after DEFINES
2dfc7b04f2db681992ca04175f2beb0f127c9844Christian Maeder# These flags will be added to the link.opt file
2dfc7b04f2db681992ca04175f2beb0f127c9844Christian Maeder# These values will be appended to the correct variables based on the value of
2dfc7b04f2db681992ca04175f2beb0f127c9844Christian Maederifeq "$(RELEASE)" "debug"
e1839fb37a3a2ccd457464cb0dcc5efd466dbe22Christian Maederifeq "$(RELEASE)" "noopt"
e7ce154edb906685b3fa7f6c0a764e18a4658068Christian Maederifeq "$(RELEASE)" "release"
2dfc7b04f2db681992ca04175f2beb0f127c9844Christian Maeder# These are used by the link target if an NLM is being generated
2dfc7b04f2db681992ca04175f2beb0f127c9844Christian Maeder# This is used by the link 'name' directive to name the nlm. If left blank
0a8ea95bcf0e3f84fed0b725c049ec2a956a4a28Christian Maeder# TARGET_nlm (see below) will be used.
a578ec30cded5e396a7ce9a3b469e8cd3a88246aChristian Maeder# This is used by the link '-desc ' directive.
83814002b4922114cbe7e9ba728472a0bf44aac5Christian Maeder# If left blank, NLM_NAME will be used.
83814002b4922114cbe7e9ba728472a0bf44aac5Christian MaederNLM_DESCRIPTION =
e1839fb37a3a2ccd457464cb0dcc5efd466dbe22Christian Maeder# This is used by the '-threadname' directive. If left blank,
2dfc7b04f2db681992ca04175f2beb0f127c9844Christian Maeder# NLM_NAME Thread will be used.
e1839fb37a3a2ccd457464cb0dcc5efd466dbe22Christian MaederNLM_THREAD_NAME =
4fb19f237193a3bd6778f8aee3b6dd8da5856665Christian Maeder# If this is specified, it will override VERSION value in
4fb19f237193a3bd6778f8aee3b6dd8da5856665Christian Maeder# $(AP_WORK)\build\NWGNUenvironment.inc
e1839fb37a3a2ccd457464cb0dcc5efd466dbe22Christian Maeder# If this is specified, it will override the default of 64K
2dfc7b04f2db681992ca04175f2beb0f127c9844Christian MaederNLM_STACK_SIZE =
dedabc954aa15f6ad0764472a9434dc6dafe3db2Christian Maeder# If this is specified it will be used by the link '-entry' directive
7221c71b38c871ce66eee4537cb681d468308dfbChristian MaederNLM_ENTRY_SYM =
2dfc7b04f2db681992ca04175f2beb0f127c9844Christian Maeder# If this is specified it will be used by the link '-exit' directive
842eedc62639561781b6c33533d1949693ef6cc5Christian MaederNLM_EXIT_SYM =
842eedc62639561781b6c33533d1949693ef6cc5Christian Maeder# If this is specified it will be used by the link '-check' directive
842eedc62639561781b6c33533d1949693ef6cc5Christian MaederNLM_CHECK_SYM =
0a8ea95bcf0e3f84fed0b725c049ec2a956a4a28Christian Maeder# If these are specified it will be used by the link '-flags' directive
0a8ea95bcf0e3f84fed0b725c049ec2a956a4a28Christian Maeder# If this is specified it will be linked in with the XDCData option in the def
2dfc7b04f2db681992ca04175f2beb0f127c9844Christian Maeder# file instead of the default of $(NWOS)/apache.xdc. XDCData can be disabled
2dfc7b04f2db681992ca04175f2beb0f127c9844Christian Maeder# by setting APACHE_UNIPROC in the environment
4fb19f237193a3bd6778f8aee3b6dd8da5856665Christian Maeder# If there is an NLM target, put it here
2dfc7b04f2db681992ca04175f2beb0f127c9844Christian Maeder# We are referencing substitute.nlm twice to get around a known issue with the
2dfc7b04f2db681992ca04175f2beb0f127c9844Christian Maeder# makefiles. Normally if there is only one element to be built within a
2dfc7b04f2db681992ca04175f2beb0f127c9844Christian Maeder# directory, the makefile for the single element would be called NWGNUmakefile.
0a8ea95bcf0e3f84fed0b725c049ec2a956a4a28Christian Maeder# But if there are multiples, the parent NWGNUmakefile must reference more
0a8ea95bcf0e3f84fed0b725c049ec2a956a4a28Christian Maeder# than one submakefile. Because the experimental directory might vary in the
0a8ea95bcf0e3f84fed0b725c049ec2a956a4a28Christian Maeder# number of submakefiles, but for the moment only contains one, we reference
97ee7048e63953c5617342ce38c30cbcb35cc0beChristian Maeder# it twice to allow it parent NWGNUmakefile to work properly. If another
0a8ea95bcf0e3f84fed0b725c049ec2a956a4a28Christian Maeder# submakefile is added, the extra reference to substitute.nlm should be removed.
842eedc62639561781b6c33533d1949693ef6cc5Christian MaederTARGET_nlm = \
4fb19f237193a3bd6778f8aee3b6dd8da5856665Christian Maeder# If there is an LIB target, put it here
842eedc62639561781b6c33533d1949693ef6cc5Christian MaederTARGET_lib = \
967e5f3c25249c779575864692935627004d3f9eChristian Maeder# These are the OBJ files needed to create the NLM target above.
967e5f3c25249c779575864692935627004d3f9eChristian Maeder# Paths must all use the '/' character
dedabc954aa15f6ad0764472a9434dc6dafe3db2Christian MaederFILES_nlm_objs = \
2dfc7b04f2db681992ca04175f2beb0f127c9844Christian Maeder# These are the LIB files needed to create the NLM target above.
2dfc7b04f2db681992ca04175f2beb0f127c9844Christian Maeder# These will be added as a library command in the link.opt file.
2dfc7b04f2db681992ca04175f2beb0f127c9844Christian MaederFILES_nlm_libs = \
2dfc7b04f2db681992ca04175f2beb0f127c9844Christian Maeder# These are the modules that the above NLM target depends on to load.
2dfc7b04f2db681992ca04175f2beb0f127c9844Christian Maeder# These will be added as a module command in the link.opt file.
967e5f3c25249c779575864692935627004d3f9eChristian MaederFILES_nlm_modules = \
83814002b4922114cbe7e9ba728472a0bf44aac5Christian Maeder# If the nlm has a msg file, put it's path here
2dfc7b04f2db681992ca04175f2beb0f127c9844Christian MaederFILE_nlm_msg =
2dfc7b04f2db681992ca04175f2beb0f127c9844Christian Maeder# If the nlm has a hlp file put it's path here
2dfc7b04f2db681992ca04175f2beb0f127c9844Christian MaederFILE_nlm_hlp =
2dfc7b04f2db681992ca04175f2beb0f127c9844Christian Maeder# If this is specified, it will override $(NWOS)\copyright.txt.
4fb19f237193a3bd6778f8aee3b6dd8da5856665Christian MaederFILE_nlm_copyright =
2dfc7b04f2db681992ca04175f2beb0f127c9844Christian Maeder# Any additional imports go here
2dfc7b04f2db681992ca04175f2beb0f127c9844Christian MaederFILES_nlm_Ximports = \
2dfc7b04f2db681992ca04175f2beb0f127c9844Christian Maeder# Any symbols exported to here
2dfc7b04f2db681992ca04175f2beb0f127c9844Christian MaederFILES_nlm_exports = \
2dfc7b04f2db681992ca04175f2beb0f127c9844Christian Maeder# These are the OBJ files needed to create the LIB target above.
2dfc7b04f2db681992ca04175f2beb0f127c9844Christian Maeder# Paths must all use the '/' character
7221c71b38c871ce66eee4537cb681d468308dfbChristian MaederFILES_lib_objs = \
4fb19f237193a3bd6778f8aee3b6dd8da5856665Christian Maeder# implement targets and dependancies (leave this section alone)
83814002b4922114cbe7e9ba728472a0bf44aac5Christian Maederlibs :: $(OBJDIR) $(TARGET_lib)
dedabc954aa15f6ad0764472a9434dc6dafe3db2Christian Maedernlms :: libs $(TARGET_nlm)
07b72edb610ee53b4832d132e96b0a3d8423f8ebChristian Maeder# Updated this target to create necessary directories and copy files to the
07b72edb610ee53b4832d132e96b0a3d8423f8ebChristian Maeder# correct place. (See $(AP_WORK)\build\NWGNUhead.inc for examples)
2dfc7b04f2db681992ca04175f2beb0f127c9844Christian Maederinstall :: nlms FORCE
2dfc7b04f2db681992ca04175f2beb0f127c9844Christian Maeder copy $(OBJDIR)\*.nlm $(INSTALL)\$(BASEDIR)\modules\*.*
07b72edb610ee53b4832d132e96b0a3d8423f8ebChristian Maeder# Any specialized rules here
2dfc7b04f2db681992ca04175f2beb0f127c9844Christian Maeder# Include the 'tail' makefile that has targets that depend on variables defined
2dfc7b04f2db681992ca04175f2beb0f127c9844Christian Maeder# in this makefile
include $(AP_WORK)\build\NWGNUtail.inc