NWGNUmakefile revision 78039ad02fa79fb9131c0ed1dad29421fcc9b528
72450cb9c2ca854c6d3479832c2738196c1d3282Robert Wapshott# Declare the sub-directories to be built here
6b0b9411405932b5ada376bb06d6bc3d94980d7fPeter Major# Get the 'head' of the build environment. This includes default targets and
a90aba9cbcbb8e7fe95e45590d853959efe0d354Tom Rumsey# paths to tools
72450cb9c2ca854c6d3479832c2738196c1d3282Robert Wapshottinclude $(AP_WORK)\build\NWGNUhead.inc
014065ea14b5a1e46190cd2a6014945aea15689bCraig McDonnell# build this level's files
a90aba9cbcbb8e7fe95e45590d853959efe0d354Tom Rumsey# Make sure all needed macro's are defined
a90aba9cbcbb8e7fe95e45590d853959efe0d354Tom Rumsey# These directories will be at the beginning of the include list, followed by
c414e18b750ecd647a82c14bb30f33afc32ca188Peter MajorXINCDIRS += \
a90aba9cbcbb8e7fe95e45590d853959efe0d354Tom Rumsey $(AP_WORK)/include \
42c10b520a70c6b2c67ad812cfda98ac1663f0c5Craig McDonnell# These flags will come after CFLAGS
a90aba9cbcbb8e7fe95e45590d853959efe0d354Tom Rumsey# These defines will come after DEFINES
a90aba9cbcbb8e7fe95e45590d853959efe0d354Tom RumseyXDEFINES += \
455375d46179ba24afcd3662bdfb6aaf03a9479cCraig McDonnell# These flags will be added to the link.opt file
455375d46179ba24afcd3662bdfb6aaf03a9479cCraig McDonnell# These values will be appended to the correct variables based on the value of
42c10b520a70c6b2c67ad812cfda98ac1663f0c5Craig McDonnellifeq "$(RELEASE)" "debug"
a90aba9cbcbb8e7fe95e45590d853959efe0d354Tom RumseyXINCDIRS += \
a90aba9cbcbb8e7fe95e45590d853959efe0d354Tom RumseyXDEFINES += \
72450cb9c2ca854c6d3479832c2738196c1d3282Robert Wapshottifeq "$(RELEASE)" "noopt"
a90aba9cbcbb8e7fe95e45590d853959efe0d354Tom RumseyXINCDIRS += \
a9e7fd62c12d542e82bc74c4e395b9b090fc1117Tom RumseyXDEFINES += \
a90aba9cbcbb8e7fe95e45590d853959efe0d354Tom Rumseyifeq "$(RELEASE)" "release"
a90aba9cbcbb8e7fe95e45590d853959efe0d354Tom Rumsey# These are used by the link target if an NLM is being generated
72450cb9c2ca854c6d3479832c2738196c1d3282Robert Wapshott# This is used by the link 'name' directive to name the nlm. If left blank
72450cb9c2ca854c6d3479832c2738196c1d3282Robert Wapshott# TARGET_nlm (see below) will be used.
72450cb9c2ca854c6d3479832c2738196c1d3282Robert WapshottNLM_NAME = Apache2
6b0b9411405932b5ada376bb06d6bc3d94980d7fPeter Major# This is used by the link '-desc ' directive.
6b0b9411405932b5ada376bb06d6bc3d94980d7fPeter Major# If left blank, NLM_NAME will be used.
6b0b9411405932b5ada376bb06d6bc3d94980d7fPeter MajorNLM_DESCRIPTION = Apache Web Server
455375d46179ba24afcd3662bdfb6aaf03a9479cCraig McDonnell# This is used by the '-threadname' directive. If left blank,
72450cb9c2ca854c6d3479832c2738196c1d3282Robert Wapshott# NLM_NAME Thread will be used.
a90aba9cbcbb8e7fe95e45590d853959efe0d354Tom RumseyNLM_THREAD_NAME = Apache
a90aba9cbcbb8e7fe95e45590d853959efe0d354Tom Rumsey# If this is specified, it will override VERSION value in
a90aba9cbcbb8e7fe95e45590d853959efe0d354Tom Rumsey# $(AP_WORK)\build\NWGNUenvironment.inc
a90aba9cbcbb8e7fe95e45590d853959efe0d354Tom RumseyNLM_VERSION =
a90aba9cbcbb8e7fe95e45590d853959efe0d354Tom Rumsey# If this is specified, it will override the default of 64K
a90aba9cbcbb8e7fe95e45590d853959efe0d354Tom RumseyNLM_STACK_SIZE = 65536
a90aba9cbcbb8e7fe95e45590d853959efe0d354Tom Rumsey# If this is specified it will be used by the link '-entry' directive
a90aba9cbcbb8e7fe95e45590d853959efe0d354Tom RumseyNLM_ENTRY_SYM = _LibCPrelude
014065ea14b5a1e46190cd2a6014945aea15689bCraig McDonnell# If this is specified it will be used by the link '-exit' directive
014065ea14b5a1e46190cd2a6014945aea15689bCraig McDonnellNLM_EXIT_SYM = _LibCPostlude
014065ea14b5a1e46190cd2a6014945aea15689bCraig McDonnell# If this is specified it will be used by the link '-check' directive
014065ea14b5a1e46190cd2a6014945aea15689bCraig McDonnellNLM_CHECK_SYM = _LibCCheckUnload
014065ea14b5a1e46190cd2a6014945aea15689bCraig McDonnell# If these are specified it will be used by the link '-flags' directive
014065ea14b5a1e46190cd2a6014945aea15689bCraig McDonnellNLM_FLAGS = PSEUDOPREEMPTION
014065ea14b5a1e46190cd2a6014945aea15689bCraig McDonnell# If this is specified it will be linked in with the XDCData option in the def
014065ea14b5a1e46190cd2a6014945aea15689bCraig McDonnell# file instead of the default of $(NWOS)/apache.xdc. XDCData can be disabled
014065ea14b5a1e46190cd2a6014945aea15689bCraig McDonnell# by setting APACHE_UNIPROC in the environment
014065ea14b5a1e46190cd2a6014945aea15689bCraig McDonnell# If there is an NLM target, put it here
a90aba9cbcbb8e7fe95e45590d853959efe0d354Tom RumseyTARGET_nlm = \
a9e7fd62c12d542e82bc74c4e395b9b090fc1117Tom Rumsey# If there is an LIB target, put it here
a90aba9cbcbb8e7fe95e45590d853959efe0d354Tom RumseyTARGET_lib = \
72450cb9c2ca854c6d3479832c2738196c1d3282Robert Wapshott# These are the OBJ files needed to create the NLM target above.
72450cb9c2ca854c6d3479832c2738196c1d3282Robert Wapshott# Paths must all use the '/' character
72450cb9c2ca854c6d3479832c2738196c1d3282Robert WapshottFILES_nlm_objs = \
a90aba9cbcbb8e7fe95e45590d853959efe0d354Tom Rumsey# These are the LIB files needed to create the NLM target above.
a90aba9cbcbb8e7fe95e45590d853959efe0d354Tom Rumsey# These will be added as a library command in the link.opt file.
a90aba9cbcbb8e7fe95e45590d853959efe0d354Tom RumseyFILES_nlm_libs = \
a90aba9cbcbb8e7fe95e45590d853959efe0d354Tom Rumsey# These are the modules that the above NLM target depends on to load.
a90aba9cbcbb8e7fe95e45590d853959efe0d354Tom Rumsey# These will be added as a module command in the link.opt file.
a90aba9cbcbb8e7fe95e45590d853959efe0d354Tom RumseyFILES_nlm_modules = \
a90aba9cbcbb8e7fe95e45590d853959efe0d354Tom Rumsey# If the nlm has a msg file, put it's path here
a90aba9cbcbb8e7fe95e45590d853959efe0d354Tom RumseyFILE_nlm_msg =
a90aba9cbcbb8e7fe95e45590d853959efe0d354Tom Rumsey# If the nlm has a hlp file put it's path here
a90aba9cbcbb8e7fe95e45590d853959efe0d354Tom RumseyFILE_nlm_hlp =
a90aba9cbcbb8e7fe95e45590d853959efe0d354Tom Rumsey# If this is specified, it will override $(NWOS)\copyright.txt.
a90aba9cbcbb8e7fe95e45590d853959efe0d354Tom RumseyFILE_nlm_copyright =
a90aba9cbcbb8e7fe95e45590d853959efe0d354Tom Rumsey# Any additional imports go here
a90aba9cbcbb8e7fe95e45590d853959efe0d354Tom RumseyFILES_nlm_Ximports = \
a90aba9cbcbb8e7fe95e45590d853959efe0d354Tom Rumsey GetCurrentAddressSpace \
a9e7fd62c12d542e82bc74c4e395b9b090fc1117Tom Rumsey# Any symbols exported to here
a90aba9cbcbb8e7fe95e45590d853959efe0d354Tom RumseyFILES_nlm_exports = \
a90aba9cbcbb8e7fe95e45590d853959efe0d354Tom Rumsey# These are the OBJ files needed to create the LIB target above.
a90aba9cbcbb8e7fe95e45590d853959efe0d354Tom Rumsey# Paths must all use the '/' character
a90aba9cbcbb8e7fe95e45590d853959efe0d354Tom RumseyFILES_lib_objs = \
a90aba9cbcbb8e7fe95e45590d853959efe0d354Tom Rumsey# implement targets and dependancies (leave this section alone)
a90aba9cbcbb8e7fe95e45590d853959efe0d354Tom Rumseylibs :: $(OBJDIR) $(TARGET_lib)
a90aba9cbcbb8e7fe95e45590d853959efe0d354Tom Rumseynlms :: libs $(TARGET_nlm)
32b36b012d0b3ab28eecb13555b3925237c2c5a9Peter Major# Updated this target to create necessary directories and copy files to the
a90aba9cbcbb8e7fe95e45590d853959efe0d354Tom Rumsey# correct place. (See $(AP_WORK)\build\NWGNUhead.inc for examples)
a90aba9cbcbb8e7fe95e45590d853959efe0d354Tom Rumseyinstall :: nlms FORCE
a90aba9cbcbb8e7fe95e45590d853959efe0d354Tom Rumsey -copy $(OBJDIR)\Apache2.nlm $(INSTALL)\Apache2\*.*
a9e7fd62c12d542e82bc74c4e395b9b090fc1117Tom Rumsey -copy ABOUT_APACHE $(INSTALL)\Apache2\*.*
a90aba9cbcbb8e7fe95e45590d853959efe0d354Tom Rumsey -copy README $(INSTALL)\Apache2\*.*
a90aba9cbcbb8e7fe95e45590d853959efe0d354Tom Rumsey -copy STATUS $(INSTALL)\Apache2\*.*
a90aba9cbcbb8e7fe95e45590d853959efe0d354Tom Rumsey -copy LICENSE $(INSTALL)\Apache2\*.*
a90aba9cbcbb8e7fe95e45590d853959efe0d354Tom Rumsey -copy CHANGES $(INSTALL)\Apache2\*.*
a90aba9cbcbb8e7fe95e45590d853959efe0d354Tom Rumsey -copy support\dbmmanage.in $(INSTALL)\Apache2\bin\dbmmanage.pl
a90aba9cbcbb8e7fe95e45590d853959efe0d354Tom Rumsey -copy support\logresolve.pl.in $(INSTALL)\Apache2\bin\logresolve.pl
a90aba9cbcbb8e7fe95e45590d853959efe0d354Tom Rumsey -awk -f build\mkconfnw.awk docs\conf\httpd-std.conf.in >$(INSTALL)\Apache2\conf\httpd.conf
fc8409d20f991d53ac0c4708efa04c121b73c449Tom Rumsey -copy docs\conf\magic $(INSTALL)\Apache2\conf\magic
fc8409d20f991d53ac0c4708efa04c121b73c449Tom Rumsey -copy docs\conf\mime.types $(INSTALL)\Apache2\conf\mime.types
fc8409d20f991d53ac0c4708efa04c121b73c449Tom Rumsey -copy docs\cgi-examples\printenv $(INSTALL)\Apache2\cgi-bin\printenv.pl
fc8409d20f991d53ac0c4708efa04c121b73c449Tom Rumsey @echo rem copying the docs directories > xc.bat
fc8409d20f991d53ac0c4708efa04c121b73c449Tom Rumsey @echo xcopy docs\error $(INSTALL)\Apache2\error /E /Y >> xc.bat
fc8409d20f991d53ac0c4708efa04c121b73c449Tom Rumsey @echo xcopy docs\docroot $(INSTALL)\Apache2\htdocs /E /Y >> xc.bat
fc8409d20f991d53ac0c4708efa04c121b73c449Tom Rumsey @echo xcopy docs\icons $(INSTALL)\Apache2\icons /E /Y >> xc.bat
fc8409d20f991d53ac0c4708efa04c121b73c449Tom Rumsey @echo xcopy docs\man $(INSTALL)\Apache2\man /E /Y >> xc.bat
fc8409d20f991d53ac0c4708efa04c121b73c449Tom Rumsey @echo xcopy docs\manual $(INSTALL)\Apache2\manual /E /Y >> xc.bat
c414e18b750ecd647a82c14bb30f33afc32ca188Peter Majorinstalldev :: FORCE
a9e7fd62c12d542e82bc74c4e395b9b090fc1117Tom Rumsey -copy $(subst /,\,$(AP_WORK))\include\*.h $(INSTALL)\Apache2\include\*.*
fc8409d20f991d53ac0c4708efa04c121b73c449Tom Rumsey -copy $(subst /,\,$(AP_WORK))\os\netware\*.h $(INSTALL)\Apache2\include\*.*
fc8409d20f991d53ac0c4708efa04c121b73c449Tom Rumsey -copy $(subst /,\,$(NWOS))\include\*.h $(INSTALL)\Apache2\include\*.*
a9e7fd62c12d542e82bc74c4e395b9b090fc1117Tom Rumsey -copy $(subst /,\,$(NWOS))\*.imp $(INSTALL)\Apache2\lib\*.*
a9e7fd62c12d542e82bc74c4e395b9b090fc1117Tom Rumsey -copy $(subst /,\,$(APR))\include\*.h $(INSTALL)\Apache2\include\*.*
fc8409d20f991d53ac0c4708efa04c121b73c449Tom Rumsey -copy $(subst /,\,$(APR))\arch\netware\include\*.h $(INSTALL)\Apache2\include\*.*
9ee3a25f8268ce5a37efad1bee32392cc329adbeCraig McDonnell -copy $(subst /,\,$(APRUTIL))\include\*.h $(INSTALL)\Apache2\include\*.*
a90aba9cbcbb8e7fe95e45590d853959efe0d354Tom Rumsey -copy $(subst /,\,$(APR))\*.imp $(INSTALL)\Apache2\lib\*.*
a90aba9cbcbb8e7fe95e45590d853959efe0d354Tom Rumsey# Any specialized rules here
014065ea14b5a1e46190cd2a6014945aea15689bCraig McDonnell$(OBJDIR)/%.o: server/%.c $(OBJDIR)\cc.opt
a90aba9cbcbb8e7fe95e45590d853959efe0d354Tom Rumsey @echo compiling $<
014065ea14b5a1e46190cd2a6014945aea15689bCraig McDonnell $(CC) $< -o=$(OBJDIR)\$(@F) @$(OBJDIR)\cc.opt
455375d46179ba24afcd3662bdfb6aaf03a9479cCraig McDonnell$(OBJDIR)/%.o: modules/arch/netware/%.c $(OBJDIR)\cc.opt
455375d46179ba24afcd3662bdfb6aaf03a9479cCraig McDonnell @echo compiling $<
014065ea14b5a1e46190cd2a6014945aea15689bCraig McDonnell $(CC) $< -o=$(OBJDIR)\$(@F) @$(OBJDIR)\cc.opt
014065ea14b5a1e46190cd2a6014945aea15689bCraig McDonnell$(OBJDIR)/%.o: modules/http/%.c $(OBJDIR)\cc.opt
72450cb9c2ca854c6d3479832c2738196c1d3282Robert Wapshott @echo compiling $<
72450cb9c2ca854c6d3479832c2738196c1d3282Robert Wapshott $(CC) $< -o=$(OBJDIR)\$(@F) @$(OBJDIR)\cc.opt
$(CC) $< -o=$(OBJDIR)\$(@F) @$(OBJDIR)\cc.opt
$(CC) $< -o=$(OBJDIR)\$(@F) @$(OBJDIR)\cc.opt
$(CC) $< -o=$(OBJDIR)\$(@F) @$(OBJDIR)\cc.opt
$(CC) $< -o=$(OBJDIR)\$(@F) @$(OBJDIR)\cc.opt
$(CC) $< -o=$(OBJDIR)\$(@F) @$(OBJDIR)\cc.opt
$(CC) $< -o=$(OBJDIR)\$(@F) @$(OBJDIR)\cc.opt
$(CC) $< -o=$(OBJDIR)\$(@F) @$(OBJDIR)\cc.opt
$(CC) $< -o=$(OBJDIR)\$(@F) @$(OBJDIR)\cc.opt
$(CC) $< -o=$(OBJDIR)\$(@F) @$(OBJDIR)\cc.opt
include $(AP_WORK)\build\NWGNUtail.inc