NWGNUmakefile revision 6ad55f63504cf5fe5205ed9495664519afeadcd9
59602f2a7c4e4809941583bed3e94cd26e628f1aTinderbox User# Declare the sub-directories to be built here
827f8cccb5280f4da66c46186e792d1cb9d73503Mark Andrews $(APR_WORK) \
e5a6871cd0635ecdb2bf792316a2d8c53206f4b2Tinderbox User# Get the 'head' of the build environment. This includes default targets and
950d203b64f512b85fcc093ee1e9e3e531a1aea3Tinderbox User# paths to tools
3759f10fc543747668b1ca4b4671f35b0dea8445Francis Dupontinclude $(AP_WORK)\build\NWGNUhead.inc
b91d11bfcc30b96f2c80f3a76d12e3dcc8597a68Mark Andrews# build this level's files
c651f15b30f1dae5cc2f00878fb5da5b3a35a468Mark Andrews# Make sure all needed macro's are defined
9ecb5d33470ebfb3719a1b8d56bcefdf4b27f7b2Tinderbox User# These directories will be at the beginning of the include list, followed by
e813f036c8251b6d9d2a72fa84f80c2c9d2795afMark AndrewsXINCDIRS += \
30370d905e9be3be7d9b947fd432bacecbb13bb9Evan Hunt $(APR)/include \
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrews $(APRUTIL)/include \
9ecb5d33470ebfb3719a1b8d56bcefdf4b27f7b2Tinderbox User $(AP_WORK)/include \
aa9c561961e9d877946ebaa8795fa2be054ab7bfEvan Hunt# These flags will come after CFLAGS
827f8cccb5280f4da66c46186e792d1cb9d73503Mark Andrews# These defines will come after DEFINES
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrews# These flags will be added to the link.opt file
9513a2a6670951f5cf5477fcfec9f933fcaff628Automatic Updater# These values will be appended to the correct variables based on the value of
30370d905e9be3be7d9b947fd432bacecbb13bb9Evan Huntifeq "$(RELEASE)" "debug"
0eb371ca0dab50ae3462e98794a6126198c52f4bMark AndrewsXINCDIRS += \
30370d905e9be3be7d9b947fd432bacecbb13bb9Evan HuntXDEFINES += \
fec6e13f2d1e69fe1c2b8fac36f732f124cf5398Mark Andrewsifeq "$(RELEASE)" "noopt"
2ae159b376dac23870d8005563c585acf85a4b5aEvan HuntXINCDIRS += \
c651f15b30f1dae5cc2f00878fb5da5b3a35a468Mark Andrewsifeq "$(RELEASE)" "release"
9ecb5d33470ebfb3719a1b8d56bcefdf4b27f7b2Tinderbox User# These are used by the link target if an NLM is being generated
efb0e886f18894a1d2489f1ad74ad14b579e11c7Mark Andrews# This is used by the link 'name' directive to name the nlm. If left blank
e813f036c8251b6d9d2a72fa84f80c2c9d2795afMark Andrews# TARGET_nlm (see below) will be used.
0eb371ca0dab50ae3462e98794a6126198c52f4bMark AndrewsNLM_NAME = Apache2
9ecb5d33470ebfb3719a1b8d56bcefdf4b27f7b2Tinderbox User# This is used by the link '-desc ' directive.
e813f036c8251b6d9d2a72fa84f80c2c9d2795afMark Andrews# If left blank, NLM_NAME will be used.
0eb371ca0dab50ae3462e98794a6126198c52f4bMark AndrewsNLM_DESCRIPTION = Apache Web Server $(VERSION_STR) $(VERSION_SKT)
9ecb5d33470ebfb3719a1b8d56bcefdf4b27f7b2Tinderbox User# This is used by the '-threadname' directive. If left blank,
e813f036c8251b6d9d2a72fa84f80c2c9d2795afMark Andrews# NLM_NAME Thread will be used.
0eb371ca0dab50ae3462e98794a6126198c52f4bMark AndrewsNLM_THREAD_NAME = Apache
78f3ed4bc2fcd3d270bfd599804f3b27a1db4d91Mark Andrews# This is used by the '-screenname' directive. If left blank,
e40c4e4c17d4df338e2a7db0f84d8dbb3858964cTinderbox User# 'Apache for NetWare' Thread will be used.
78f3ed4bc2fcd3d270bfd599804f3b27a1db4d91Mark AndrewsNLM_SCREEN_NAME = Apache $(VERSION_STR) for NetWare
fec6e13f2d1e69fe1c2b8fac36f732f124cf5398Mark Andrews# If this is specified, it will override VERSION value in
2a31bd531072824ef252c18303859d6af7451b00Francis Dupont# $(AP_WORK)\build\NWGNUenvironment.inc
827f8cccb5280f4da66c46186e792d1cb9d73503Mark AndrewsNLM_VERSION =
e40c4e4c17d4df338e2a7db0f84d8dbb3858964cTinderbox User# If this is specified, it will override the default of 64K
c651f15b30f1dae5cc2f00878fb5da5b3a35a468Mark AndrewsNLM_STACK_SIZE = 65536
78f3ed4bc2fcd3d270bfd599804f3b27a1db4d91Mark Andrews# If this is specified it will be used by the link '-entry' directive
7f9e2fff07b9c17e0d7a0ea7abc9304ce9d01b61Tinderbox UserNLM_ENTRY_SYM = _LibCPrelude
c651f15b30f1dae5cc2f00878fb5da5b3a35a468Mark Andrews# If this is specified it will be used by the link '-exit' directive
827f8cccb5280f4da66c46186e792d1cb9d73503Mark AndrewsNLM_EXIT_SYM = _LibCPostlude
e40c4e4c17d4df338e2a7db0f84d8dbb3858964cTinderbox User# If this is specified it will be used by the link '-check' directive
01a5c5503482fb3ba52088bf0178a7213273bf96Mark AndrewsNLM_CHECK_SYM = _LibCCheckUnload
9ecb5d33470ebfb3719a1b8d56bcefdf4b27f7b2Tinderbox User# If these are specified it will be used by the link '-flags' directive
e813f036c8251b6d9d2a72fa84f80c2c9d2795afMark AndrewsNLM_FLAGS = PSEUDOPREEMPTION
9ecb5d33470ebfb3719a1b8d56bcefdf4b27f7b2Tinderbox User# If this is specified it will be linked in with the XDCData option in the def
fe80a4909bf62b602feaf246866e9d29f7654194Automatic Updater# file instead of the default of $(NWOS)/apache.xdc. XDCData can be disabled
9ecb5d33470ebfb3719a1b8d56bcefdf4b27f7b2Tinderbox User# by setting APACHE_UNIPROC in the environment
fa0326cc2cf428f67575b6ba3b97b528a31b0010Tinderbox User# If there is an NLM target, put it here
e813f036c8251b6d9d2a72fa84f80c2c9d2795afMark AndrewsTARGET_nlm = \
9ecb5d33470ebfb3719a1b8d56bcefdf4b27f7b2Tinderbox User# If there is an LIB target, put it here
30370d905e9be3be7d9b947fd432bacecbb13bb9Evan HuntTARGET_lib = \
9ecb5d33470ebfb3719a1b8d56bcefdf4b27f7b2Tinderbox User# These are the OBJ files needed to create the NLM target above.
e813f036c8251b6d9d2a72fa84f80c2c9d2795afMark Andrews# Paths must all use the '/' character
0eb371ca0dab50ae3462e98794a6126198c52f4bMark AndrewsFILES_nlm_objs = \
933799f3641f4f78445d015008bad0038900a82aTinderbox User# Build in mod_nw_ssl if Winsock is being used
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updaterifndef USE_STDSOCKETS
19b3dc94bce93fa76bd7e066f9298630dbc9dcb4Automatic UpdaterFILES_nlm_objs += $(OBJDIR)/mod_nw_ssl.o \
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater# These are the LIB files needed to create the NLM target above.
bac4435d473c9a0281507524f084480c34aa942aTinderbox User# These will be added as a library command in the link.opt file.
91d187ce035f39073f0732ff2a401a45c3c955fbMark AndrewsFILES_nlm_libs = \
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater# These are the modules that the above NLM target depends on to load.
9cd5eb6fe0f26d65724b99216cb31dcdd12e4afdAutomatic Updater# These will be added as a module command in the link.opt file.
5e82fe9a56d17bfbd120817d00d28c5952ab4ddcTinderbox UserFILES_nlm_modules = \
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater# If the nlm has a msg file, put it's path here
c651f15b30f1dae5cc2f00878fb5da5b3a35a468Mark AndrewsFILE_nlm_msg =
c651f15b30f1dae5cc2f00878fb5da5b3a35a468Mark Andrews# If the nlm has a hlp file put it's path here
c651f15b30f1dae5cc2f00878fb5da5b3a35a468Mark AndrewsFILE_nlm_hlp =
7f9e2fff07b9c17e0d7a0ea7abc9304ce9d01b61Tinderbox User# If this is specified, it will override $(NWOS)\copyright.txt.
5affecff6e148a8e124d03f5dbac0da11e30dcc5Tinderbox UserFILE_nlm_copyright =
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User# Any additional imports go here
a2c370ca12bb0360ff7e969474ead3f788c65fffTinderbox UserFILES_nlm_Ximports = \
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater GetCurrentAddressSpace \
91216cff91b34c9ff6e846dc23f248219cafe660Andreas Gustafsson# Don't link with Winsock if standard sockets are being used
a2c370ca12bb0360ff7e969474ead3f788c65fffTinderbox Userifndef USE_STDSOCKETS
5affecff6e148a8e124d03f5dbac0da11e30dcc5Tinderbox UserFILES_nlm_Ximports += @ws2nlm.imp \
f520803b46dc189fdaf84adc87ef327d3587b435Mark Andrews# Any symbols exported to here
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox UserFILES_nlm_exports = \
c651f15b30f1dae5cc2f00878fb5da5b3a35a468Mark Andrews# These are the OBJ files needed to create the LIB target above.
9ecb5d33470ebfb3719a1b8d56bcefdf4b27f7b2Tinderbox User# Paths must all use the '/' character
9ecb5d33470ebfb3719a1b8d56bcefdf4b27f7b2Tinderbox UserFILES_lib_objs = \
015055b6e23f5c08f6a5b34726f90b62597e9e45Tinderbox User# implement targets and dependancies (leave this section alone)
c1e2310a3725eeed45e5e7c86750c64c5a02e993Francis Dupontlibs :: $(OBJDIR) $(TARGET_lib)
c1e2310a3725eeed45e5e7c86750c64c5a02e993Francis Dupontnlms :: libs $(TARGET_nlm)
3759f10fc543747668b1ca4b4671f35b0dea8445Francis Dupont# Updated this target to create necessary directories and copy files to the
827f8cccb5280f4da66c46186e792d1cb9d73503Mark Andrews# correct place. (See $(AP_WORK)\build\NWGNUhead.inc for examples)
78f3ed4bc2fcd3d270bfd599804f3b27a1db4d91Mark Andrewsinstall :: nlms FORCE
3759f10fc543747668b1ca4b4671f35b0dea8445Francis Dupont -copy $(OBJDIR)\Apache2.nlm $(INSTALL)\$(BASEDIR)\*.*
827f8cccb5280f4da66c46186e792d1cb9d73503Mark Andrews -copy ABOUT_APACHE $(INSTALL)\$(BASEDIR)\*.*
78f3ed4bc2fcd3d270bfd599804f3b27a1db4d91Mark Andrews -copy README $(INSTALL)\$(BASEDIR)\*.*
78f3ed4bc2fcd3d270bfd599804f3b27a1db4d91Mark Andrews -copy STATUS $(INSTALL)\$(BASEDIR)\*.*
3759f10fc543747668b1ca4b4671f35b0dea8445Francis Dupont -copy LICENSE $(INSTALL)\$(BASEDIR)\*.*
827f8cccb5280f4da66c46186e792d1cb9d73503Mark Andrews -copy CHANGES $(INSTALL)\$(BASEDIR)\*.*
78f3ed4bc2fcd3d270bfd599804f3b27a1db4d91Mark Andrews -copy VERSIONING $(INSTALL)\$(BASEDIR)\*.*
fec6e13f2d1e69fe1c2b8fac36f732f124cf5398Mark Andrews -copy support\dbmmanage.in $(INSTALL)\$(BASEDIR)\bin\dbmmanage.pl
3759f10fc543747668b1ca4b4671f35b0dea8445Francis Dupont -copy support\logresolve.pl.in $(INSTALL)\$(BASEDIR)\bin\logresolve.pl
827f8cccb5280f4da66c46186e792d1cb9d73503Mark Andrews -copy support\split-logfile.in $(INSTALL)\$(BASEDIR)\bin\split-logfile.pl
fec6e13f2d1e69fe1c2b8fac36f732f124cf5398Mark Andrews -$(AWK) -v BDIR=$(BASEDIR) -v PORT=$(PORT) -v SSLPORT=$(SSLPORT) -v MODSSL=$(WITH_MOD_SSL) -v BSDSKT=$(USE_STDSOCKETS) -f build\mkconfnw.awk docs\conf\httpd.conf.in >$(INSTALL)\$(BASEDIR)\conf\httpd.conf
dedefc0bdbb4e6e39eeb98aa2fc6883efec2ddb0Mark Andrews $(CHKNOT) $(INSTALL)\$(BASEDIR)\conf\extra\nul mkdir $(INSTALL)\$(BASEDIR)\conf\extra
e8fc8c884b44371784805e1e0d3100da403dd3f1Automatic Updater -$(AWK) -v BDIR=$(BASEDIR) -f build\mkconfnw.awk docs\conf\extra\httpd-autoindex.conf.in >$(INSTALL)\$(BASEDIR)\conf\extra\httpd-autoindex.conf
dedefc0bdbb4e6e39eeb98aa2fc6883efec2ddb0Mark Andrews -$(AWK) -v BDIR=$(BASEDIR) -f build\mkconfnw.awk docs\conf\extra\httpd-dav.conf.in >$(INSTALL)\$(BASEDIR)\conf\extra\httpd-dav.conf
e813f036c8251b6d9d2a72fa84f80c2c9d2795afMark Andrews -$(AWK) -v BDIR=$(BASEDIR) -f build\mkconfnw.awk docs\conf\extra\httpd-default.conf.in >$(INSTALL)\$(BASEDIR)\conf\extra\httpd-default.conf
30370d905e9be3be7d9b947fd432bacecbb13bb9Evan Hunt -$(AWK) -v BDIR=$(BASEDIR) -f build\mkconfnw.awk docs\conf\extra\httpd-info.conf.in >$(INSTALL)\$(BASEDIR)\conf\extra\httpd-info.conf
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrews -$(AWK) -v BDIR=$(BASEDIR) -f build\mkconfnw.awk docs\conf\extra\httpd-languages.conf.in >$(INSTALL)\$(BASEDIR)\conf\extra\httpd-languages.conf
dedefc0bdbb4e6e39eeb98aa2fc6883efec2ddb0Mark Andrews -$(AWK) -v BDIR=$(BASEDIR) -f build\mkconfnw.awk docs\conf\extra\httpd-manual.conf.in >$(INSTALL)\$(BASEDIR)\conf\extra\httpd-manual.conf
e8fc8c884b44371784805e1e0d3100da403dd3f1Automatic Updater -$(AWK) -v BDIR=$(BASEDIR) -f build\mkconfnw.awk docs\conf\extra\httpd-mpm.conf.in >$(INSTALL)\$(BASEDIR)\conf\extra\httpd-mpm.conf
dedefc0bdbb4e6e39eeb98aa2fc6883efec2ddb0Mark Andrews -$(AWK) -v BDIR=$(BASEDIR) -f build\mkconfnw.awk docs\conf\extra\httpd-multilang-errordoc.conf.in >$(INSTALL)\$(BASEDIR)\conf\extra\httpd-multilang-errordoc.conf
e813f036c8251b6d9d2a72fa84f80c2c9d2795afMark Andrews -$(AWK) -v BDIR=$(BASEDIR) -f build\mkconfnw.awk docs\conf\extra\httpd-userdir.conf.in >$(INSTALL)\$(BASEDIR)\conf\extra\httpd-userdir.conf
30370d905e9be3be7d9b947fd432bacecbb13bb9Evan Hunt -$(AWK) -v BDIR=$(BASEDIR) -v PORT=$(PORT) -f build\mkconfnw.awk docs\conf\extra\httpd-vhosts.conf.in >$(INSTALL)\$(BASEDIR)\conf\extra\httpd-vhosts.conf
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrews -$(AWK) -v BDIR=$(BASEDIR) -v SSLPORT=$(SSLPORT) -f build\mkconfnw.awk docs\conf\extra\httpd-ssl.conf.in >$(INSTALL)\$(BASEDIR)\conf\extra\httpd-ssl.conf
dedefc0bdbb4e6e39eeb98aa2fc6883efec2ddb0Mark Andrews -copy docs\conf\magic $(INSTALL)\$(BASEDIR)\conf\magic
e8fc8c884b44371784805e1e0d3100da403dd3f1Automatic Updater -copy docs\conf\mime.types $(INSTALL)\$(BASEDIR)\conf\mime.types
dedefc0bdbb4e6e39eeb98aa2fc6883efec2ddb0Mark Andrews -copy docs\conf\charset.conv $(INSTALL)\$(BASEDIR)\conf\charset.conv
e813f036c8251b6d9d2a72fa84f80c2c9d2795afMark Andrews -copy docs\cgi-examples\printenv $(INSTALL)\$(BASEDIR)\cgi-bin\printenv.pl
30370d905e9be3be7d9b947fd432bacecbb13bb9Evan Hunt @xcopy $(XCOPYSW) docs\error $(INSTALL)\$(BASEDIR)\error
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrews @xcopy $(XCOPYSW) docs\docroot $(INSTALL)\$(BASEDIR)\htdocs
dedefc0bdbb4e6e39eeb98aa2fc6883efec2ddb0Mark Andrews @xcopy $(XCOPYSW) docs\icons $(INSTALL)\$(BASEDIR)\icons
dedefc0bdbb4e6e39eeb98aa2fc6883efec2ddb0Mark Andrews @xcopy $(XCOPYSW) docs\man $(INSTALL)\$(BASEDIR)\man
dedefc0bdbb4e6e39eeb98aa2fc6883efec2ddb0Mark Andrews @xcopy $(XCOPYSW) docs\manual $(INSTALL)\$(BASEDIR)\manual
30370d905e9be3be7d9b947fd432bacecbb13bb9Evan Huntinstalldev :: FORCE
dedefc0bdbb4e6e39eeb98aa2fc6883efec2ddb0Mark Andrews -copy $(subst /,\,$(AP_WORK))\include\*.h $(INSTALL)\$(BASEDIR)\include\*.*
b30ec46fec40a1b246f7965fbcd341fc6cfd1cc1Mark Andrews -copy $(subst /,\,$(AP_WORK))\os\netware\*.h $(INSTALL)\$(BASEDIR)\include\*.*
39cad8fb7d7ff3436bb24ce761354afcb80d295aMark Andrews -copy $(subst /,\,$(NWOS))\*.imp $(INSTALL)\$(BASEDIR)\lib\*.*
fec6e13f2d1e69fe1c2b8fac36f732f124cf5398Mark Andrews -copy $(subst /,\,$(APR))\include\*.h $(INSTALL)\$(BASEDIR)\include\*.*
827f8cccb5280f4da66c46186e792d1cb9d73503Mark Andrews -copy $(subst /,\,$(APRUTIL))\include\*.h $(INSTALL)\$(BASEDIR)\include\*.*
01a5c5503482fb3ba52088bf0178a7213273bf96Mark Andrews -copy $(subst /,\,$(APR))\*.imp $(INSTALL)\$(BASEDIR)\lib\*.*
03ebc228ee3725738b067b6bd7082a9a731822a1Tinderbox User -copy $(subst /,\,$(NWOS))\*.xdc $(INSTALL)\$(BASEDIR)\lib\*.*
827f8cccb5280f4da66c46186e792d1cb9d73503Mark Andrewsprebuild :: FORCE
fec6e13f2d1e69fe1c2b8fac36f732f124cf5398Mark Andrews $(MAKE) -C server -f NWGNUMakefile
e64202536ea72d8f371dd0df9fc763f8d70bf886Tinderbox User $(MAKE) -C srclib/pcre -f NWGNUMakefile
015055b6e23f5c08f6a5b34726f90b62597e9e45Tinderbox User $(CHKNOT) $(PREBUILD_INST)\nul mkdir $(PREBUILD_INST)
03ebc228ee3725738b067b6bd7082a9a731822a1Tinderbox User -copy $(AP_WORK)\server\$(OBJDIR)\*.nlm $(PREBUILD_INST)\*.*
59528addd704f8d5757b54e540520f74e588a7c7Automatic Updater -copy $(AP_WORK)\srclib\pcre\$(basename $(OBJDIR))\*.nlm $(PREBUILD_INST)\*.*
757ff043760e4743dda1a10e7d58349275934902Tinderbox User# Any specialized rules here
c651f15b30f1dae5cc2f00878fb5da5b3a35a468Mark Andrewsvpath %.c server:modules/arch/netware:modules/http:modules/aaa:modules/mappers
933799f3641f4f78445d015008bad0038900a82aTinderbox Uservpath %.c modules/generators:modules/metadata:modules/filters:modules/loggers
c651f15b30f1dae5cc2f00878fb5da5b3a35a468Mark Andrewsvpath %.c os/netware:server/mpm/netware:srclib/pcre
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrews# Include the 'tail' makefile that has targets that depend on variables defined
91216cff91b34c9ff6e846dc23f248219cafe660Andreas Gustafsson# in this makefile
30370d905e9be3be7d9b947fd432bacecbb13bb9Evan Huntinclude $(AP_WORK)\build\NWGNUtail.inc