NWGNUmakefile revision 440cda576ca9ff6476e4a04bdb253c5023da15ee
505e75ba28b42bb3de7a6d55de825091b70cc2b2Stephen Gallagher# Declare the sub-directories to be built here
505e75ba28b42bb3de7a6d55de825091b70cc2b2Stephen Gallagher# Get the 'head' of the build environment. This includes default targets and
505e75ba28b42bb3de7a6d55de825091b70cc2b2Stephen Gallagher# paths to tools
505e75ba28b42bb3de7a6d55de825091b70cc2b2Stephen Gallagherinclude $(AP_WORK)\build\NWGNUhead.inc
505e75ba28b42bb3de7a6d55de825091b70cc2b2Stephen Gallagher# build this level's files
3996e391054a1c02ab62e1541ae21a8204bd5d0aAmitKumar# Make sure all needed macro's are defined
a473fb88e6015cf0ccbd2e9005c7e6acca18f452Pavel Březina# These directories will be at the beginning of the include list, followed by
3d9bafcbb5c0fbf23351004ded4dea6aa13127fcSumit BoseXINCDIRS += \
949fbc93defad394648b2651b43a7bbfa5bff42bSumit Bose $(AP_WORK)/include \
3d9bafcbb5c0fbf23351004ded4dea6aa13127fcSumit Bose# These flags will come after CFLAGS
949fbc93defad394648b2651b43a7bbfa5bff42bSumit Bose# These defines will come after DEFINES
949fbc93defad394648b2651b43a7bbfa5bff42bSumit BoseXDEFINES += \
a3c8390d19593b1e5277d95bfb4ab206d4785150Nikolai Kondrashov# These flags will be added to the link.opt file
3d9bafcbb5c0fbf23351004ded4dea6aa13127fcSumit Bose# These values will be appended to the correct variables based on the value of
3d9bafcbb5c0fbf23351004ded4dea6aa13127fcSumit Boseifeq "$(RELEASE)" "debug"
949fbc93defad394648b2651b43a7bbfa5bff42bSumit BoseXINCDIRS += \
3d9bafcbb5c0fbf23351004ded4dea6aa13127fcSumit BoseXDEFINES += \
3d9bafcbb5c0fbf23351004ded4dea6aa13127fcSumit Boseifeq "$(RELEASE)" "noopt"
3d9bafcbb5c0fbf23351004ded4dea6aa13127fcSumit BoseXINCDIRS += \
8babbeee01e67893af4828ddfc922ecac0be4197Pavel Reichlifeq "$(RELEASE)" "release"
8babbeee01e67893af4828ddfc922ecac0be4197Pavel ReichlXINCDIRS += \
949fbc93defad394648b2651b43a7bbfa5bff42bSumit BoseXDEFINES += \
bfb40893be20b45279a40188cf16ef0eec1f9423Sumit Bose# These are used by the link target if an NLM is being generated
bfb40893be20b45279a40188cf16ef0eec1f9423Sumit Bose# This is used by the link 'name' directive to name the nlm. If left blank
bfb40893be20b45279a40188cf16ef0eec1f9423Sumit Bose# TARGET_nlm (see below) will be used.
bfb40893be20b45279a40188cf16ef0eec1f9423Sumit BoseNLM_NAME = Apache2
bfb40893be20b45279a40188cf16ef0eec1f9423Sumit Bose# This is used by the link '-desc ' directive.
bfb40893be20b45279a40188cf16ef0eec1f9423Sumit Bose# If left blank, NLM_NAME will be used.
bfb40893be20b45279a40188cf16ef0eec1f9423Sumit BoseNLM_DESCRIPTION = Apache Web Server
bfb40893be20b45279a40188cf16ef0eec1f9423Sumit Bose# This is used by the '-threadname' directive. If left blank,
bfb40893be20b45279a40188cf16ef0eec1f9423Sumit Bose# NLM_NAME Thread will be used.
505e75ba28b42bb3de7a6d55de825091b70cc2b2Stephen GallagherNLM_THREAD_NAME = Apache
505e75ba28b42bb3de7a6d55de825091b70cc2b2Stephen Gallagher# If this is specified, it will override VERSION value in
505e75ba28b42bb3de7a6d55de825091b70cc2b2Stephen Gallagher# If this is specified, it will override the default of 64K
505e75ba28b42bb3de7a6d55de825091b70cc2b2Stephen GallagherNLM_STACK_SIZE = 65536
46222e5191473f9a46aec581273eb2eef22e23beMichal Zidek# If this is specified it will be used by the link '-entry' directive
46222e5191473f9a46aec581273eb2eef22e23beMichal ZidekNLM_ENTRY_SYM = _LibCPrelude
505e75ba28b42bb3de7a6d55de825091b70cc2b2Stephen Gallagher# If this is specified it will be used by the link '-exit' directive
505e75ba28b42bb3de7a6d55de825091b70cc2b2Stephen GallagherNLM_EXIT_SYM = _LibCPostlude
505e75ba28b42bb3de7a6d55de825091b70cc2b2Stephen Gallagher# If this is specified it will be used by the link '-check' directive
505e75ba28b42bb3de7a6d55de825091b70cc2b2Stephen GallagherNLM_CHECK_SYM = _LibCCheckUnload
bfb40893be20b45279a40188cf16ef0eec1f9423Sumit Bose# If these are specified it will be used by the link '-flags' directive
46222e5191473f9a46aec581273eb2eef22e23beMichal ZidekNLM_FLAGS = PSEUDOPREEMPTION
46222e5191473f9a46aec581273eb2eef22e23beMichal Zidek# If this is specified it will be linked in with the XDCData option in the def
46222e5191473f9a46aec581273eb2eef22e23beMichal Zidek# file instead of the default of $(NWOS)/apache.xdc. XDCData can be disabled
46222e5191473f9a46aec581273eb2eef22e23beMichal Zidek# by setting APACHE_UNIPROC in the environment
46222e5191473f9a46aec581273eb2eef22e23beMichal Zidek# If there is an NLM target, put it here
46222e5191473f9a46aec581273eb2eef22e23beMichal ZidekTARGET_nlm = \
a3c8390d19593b1e5277d95bfb4ab206d4785150Nikolai Kondrashov# If there is an LIB target, put it here
46222e5191473f9a46aec581273eb2eef22e23beMichal Zidek# These are the OBJ files needed to create the NLM target above.
46222e5191473f9a46aec581273eb2eef22e23beMichal Zidek# Paths must all use the '/' character
a3c8390d19593b1e5277d95bfb4ab206d4785150Nikolai KondrashovFILES_nlm_objs = \
a5b55bdfcda8bfce8cb2ced981773998093d7857Pavel Reichl# These are the LIB files needed to create the NLM target above.
505e75ba28b42bb3de7a6d55de825091b70cc2b2Stephen Gallagher# These will be added as a library command in the link.opt file.
505e75ba28b42bb3de7a6d55de825091b70cc2b2Stephen GallagherFILES_nlm_libs = \
505e75ba28b42bb3de7a6d55de825091b70cc2b2Stephen Gallagher# These are the modules that the above NLM target depends on to load.
505e75ba28b42bb3de7a6d55de825091b70cc2b2Stephen Gallagher# These will be added as a module command in the link.opt file.
505e75ba28b42bb3de7a6d55de825091b70cc2b2Stephen GallagherFILES_nlm_modules = \
505e75ba28b42bb3de7a6d55de825091b70cc2b2Stephen Gallagher# If the nlm has a msg file, put it's path here
505e75ba28b42bb3de7a6d55de825091b70cc2b2Stephen Gallagher# If the nlm has a hlp file put it's path here
505e75ba28b42bb3de7a6d55de825091b70cc2b2Stephen Gallagher# If this is specified, it will override $(NWOS)\copyright.txt.
505e75ba28b42bb3de7a6d55de825091b70cc2b2Stephen GallagherFILE_nlm_copyright =
505e75ba28b42bb3de7a6d55de825091b70cc2b2Stephen Gallagher# Any additional imports go here
505e75ba28b42bb3de7a6d55de825091b70cc2b2Stephen GallagherFILES_nlm_Ximports = \
505e75ba28b42bb3de7a6d55de825091b70cc2b2Stephen Gallagher GetCurrentAddressSpace \
4f3fd1fb264a7eaf3a9d062d49e071b0d17e4debStephen Gallagher# Any symbols exported to here
4f3fd1fb264a7eaf3a9d062d49e071b0d17e4debStephen GallagherFILES_nlm_exports = \
4f3fd1fb264a7eaf3a9d062d49e071b0d17e4debStephen Gallagher# These are the OBJ files needed to create the LIB target above.
4f3fd1fb264a7eaf3a9d062d49e071b0d17e4debStephen Gallagher# Paths must all use the '/' character
4f3fd1fb264a7eaf3a9d062d49e071b0d17e4debStephen GallagherFILES_lib_objs = \
4f3fd1fb264a7eaf3a9d062d49e071b0d17e4debStephen Gallagher# implement targets and dependancies (leave this section alone)
21687d1d553579e81aa43bfa20f2e70fb39e8461Lukas Slebodniklibs :: $(OBJDIR) $(TARGET_lib)
21687d1d553579e81aa43bfa20f2e70fb39e8461Lukas Slebodniknlms :: libs $(TARGET_nlm)
4f3fd1fb264a7eaf3a9d062d49e071b0d17e4debStephen Gallagher# Updated this target to create necessary directories and copy files to the
4f3fd1fb264a7eaf3a9d062d49e071b0d17e4debStephen Gallagher# correct place. (See $(AP_WORK)\build\NWGNUhead.inc for examples)
4f3fd1fb264a7eaf3a9d062d49e071b0d17e4debStephen Gallagherinstall :: nlms FORCE
4f3fd1fb264a7eaf3a9d062d49e071b0d17e4debStephen Gallagher -copy $(OBJDIR)\Apache2.nlm $(INSTALL)\Apache2\*.*
a3c8390d19593b1e5277d95bfb4ab206d4785150Nikolai Kondrashov -copy ABOUT_APACHE $(INSTALL)\Apache2\*.*
a3c8390d19593b1e5277d95bfb4ab206d4785150Nikolai Kondrashov -copy README $(INSTALL)\Apache2\*.*
4f3fd1fb264a7eaf3a9d062d49e071b0d17e4debStephen Gallagher -copy STATUS $(INSTALL)\Apache2\*.*
4f3fd1fb264a7eaf3a9d062d49e071b0d17e4debStephen Gallagher -copy LICENSE $(INSTALL)\Apache2\*.*
4f3fd1fb264a7eaf3a9d062d49e071b0d17e4debStephen Gallagher -copy CHANGES $(INSTALL)\Apache2\*.*
4f3fd1fb264a7eaf3a9d062d49e071b0d17e4debStephen Gallagher -copy support\dbmmanage.in $(INSTALL)\Apache2\bin\dbmmanage.pl
4f3fd1fb264a7eaf3a9d062d49e071b0d17e4debStephen Gallagher -copy support\logresolve.pl.in $(INSTALL)\Apache2\bin\logresolve.pl
5dedd73d90f0c1f23299f0c613f384ef902c3653Stephen Gallagher -awk -f build\mkconfnw.awk docs\conf\httpd-std.conf.in >$(INSTALL)\Apache2\conf\httpd.conf
a3c8390d19593b1e5277d95bfb4ab206d4785150Nikolai Kondrashov -copy docs\conf\magic $(INSTALL)\Apache2\conf\magic
5dedd73d90f0c1f23299f0c613f384ef902c3653Stephen Gallagher -copy docs\conf\mime.types $(INSTALL)\Apache2\conf\mime.types
5dedd73d90f0c1f23299f0c613f384ef902c3653Stephen Gallagher -copy docs\cgi-examples\printenv $(INSTALL)\Apache2\cgi-bin\printenv.pl
a3c8390d19593b1e5277d95bfb4ab206d4785150Nikolai Kondrashov @echo rem copying the docs directories > xc.bat
4f3fd1fb264a7eaf3a9d062d49e071b0d17e4debStephen Gallagher @echo xcopy docs\error $(INSTALL)\Apache2\error /E /Y >> xc.bat
4f3fd1fb264a7eaf3a9d062d49e071b0d17e4debStephen Gallagher @echo xcopy docs\docroot $(INSTALL)\Apache2\htdocs /E /Y >> xc.bat
4f3fd1fb264a7eaf3a9d062d49e071b0d17e4debStephen Gallagher @echo xcopy docs\icons $(INSTALL)\Apache2\icons /E /Y >> xc.bat
505e75ba28b42bb3de7a6d55de825091b70cc2b2Stephen Gallagher @echo xcopy docs\man $(INSTALL)\Apache2\man /E /Y >> xc.bat
505e75ba28b42bb3de7a6d55de825091b70cc2b2Stephen Gallagher @echo xcopy docs\manual $(INSTALL)\Apache2\manual /E /Y >> xc.bat
505e75ba28b42bb3de7a6d55de825091b70cc2b2Stephen Gallagherinstalldev :: FORCE
505e75ba28b42bb3de7a6d55de825091b70cc2b2Stephen Gallagher -copy $(subst /,\,$(AP_WORK))\include\*.h $(INSTALL)\Apache2\include\*.*
505e75ba28b42bb3de7a6d55de825091b70cc2b2Stephen Gallagher -copy $(subst /,\,$(AP_WORK))\os\netware\*.h $(INSTALL)\Apache2\include\*.*
505e75ba28b42bb3de7a6d55de825091b70cc2b2Stephen Gallagher -copy $(subst /,\,$(NWOS))\include\*.h $(INSTALL)\Apache2\include\*.*
505e75ba28b42bb3de7a6d55de825091b70cc2b2Stephen Gallagher -copy $(subst /,\,$(NWOS))\*.imp $(INSTALL)\Apache2\lib\*.*
505e75ba28b42bb3de7a6d55de825091b70cc2b2Stephen Gallagher -copy $(subst /,\,$(APR))\include\*.h $(INSTALL)\Apache2\include\*.*
505e75ba28b42bb3de7a6d55de825091b70cc2b2Stephen Gallagher -copy $(subst /,\,$(APR))\arch\netware\include\*.h $(INSTALL)\Apache2\include\*.*
505e75ba28b42bb3de7a6d55de825091b70cc2b2Stephen Gallagher -copy $(subst /,\,$(APRUTIL))\include\*.h $(INSTALL)\Apache2\include\*.*
505e75ba28b42bb3de7a6d55de825091b70cc2b2Stephen Gallagher -copy $(subst /,\,$(APR))\*.imp $(INSTALL)\Apache2\lib\*.*
505e75ba28b42bb3de7a6d55de825091b70cc2b2Stephen Gallagher# Any specialized rules here
cb446b6149d28c204954ae75143b89aef14115dcSumit Bose$(OBJDIR)/%.o: server/%.c $(OBJDIR)\cc.opt
505e75ba28b42bb3de7a6d55de825091b70cc2b2Stephen Gallagher @echo compiling $<
46222e5191473f9a46aec581273eb2eef22e23beMichal Zidek $(CC) $< -o=$(OBJDIR)\$(@F) @$(OBJDIR)\cc.opt
505e75ba28b42bb3de7a6d55de825091b70cc2b2Stephen Gallagher$(OBJDIR)/%.o: modules/arch/netware/%.c $(OBJDIR)\cc.opt
a3c8390d19593b1e5277d95bfb4ab206d4785150Nikolai Kondrashov @echo compiling $<
46222e5191473f9a46aec581273eb2eef22e23beMichal Zidek $(CC) $< -o=$(OBJDIR)\$(@F) @$(OBJDIR)\cc.opt
505e75ba28b42bb3de7a6d55de825091b70cc2b2Stephen Gallagher$(OBJDIR)/%.o: modules/http/%.c $(OBJDIR)\cc.opt
505e75ba28b42bb3de7a6d55de825091b70cc2b2Stephen Gallagher @echo compiling $<
cb446b6149d28c204954ae75143b89aef14115dcSumit Bose $(CC) $< -o=$(OBJDIR)\$(@F) @$(OBJDIR)\cc.opt
cb446b6149d28c204954ae75143b89aef14115dcSumit Bose @echo compiling $<
cb446b6149d28c204954ae75143b89aef14115dcSumit Bose $(CC) $< -o=$(OBJDIR)\$(@F) @$(OBJDIR)\cc.opt
a3c8390d19593b1e5277d95bfb4ab206d4785150Nikolai Kondrashov$(OBJDIR)/%.o: modules/mappers/%.c $(OBJDIR)\cc.opt
cb446b6149d28c204954ae75143b89aef14115dcSumit Bose @echo compiling $<
cb446b6149d28c204954ae75143b89aef14115dcSumit Bose $(CC) $< -o=$(OBJDIR)\$(@F) @$(OBJDIR)\cc.opt
cb446b6149d28c204954ae75143b89aef14115dcSumit Bose$(OBJDIR)/%.o: modules/generators/%.c $(OBJDIR)\cc.opt
a3c8390d19593b1e5277d95bfb4ab206d4785150Nikolai Kondrashov @echo compiling $<
cb446b6149d28c204954ae75143b89aef14115dcSumit Bose $(CC) $< -o=$(OBJDIR)\$(@F) @$(OBJDIR)\cc.opt
cb446b6149d28c204954ae75143b89aef14115dcSumit Bose$(OBJDIR)/%.o: modules/metadata/%.c $(OBJDIR)\cc.opt
cb446b6149d28c204954ae75143b89aef14115dcSumit Bose @echo compiling $<
a3c8390d19593b1e5277d95bfb4ab206d4785150Nikolai Kondrashov $(CC) $< -o=$(OBJDIR)\$(@F) @$(OBJDIR)\cc.opt
cb446b6149d28c204954ae75143b89aef14115dcSumit Bose$(OBJDIR)/%.o: modules/filters/%.c $(OBJDIR)\cc.opt
cb446b6149d28c204954ae75143b89aef14115dcSumit Bose @echo compiling $<
cb446b6149d28c204954ae75143b89aef14115dcSumit Bose $(CC) $< -o=$(OBJDIR)\$(@F) @$(OBJDIR)\cc.opt
cb446b6149d28c204954ae75143b89aef14115dcSumit Bose$(OBJDIR)/%.o: modules/loggers/%.c $(OBJDIR)\cc.opt
cb446b6149d28c204954ae75143b89aef14115dcSumit Bose @echo compiling $<
cb446b6149d28c204954ae75143b89aef14115dcSumit Bose $(CC) $< -o=$(OBJDIR)\$(@F) @$(OBJDIR)\cc.opt
cb446b6149d28c204954ae75143b89aef14115dcSumit Bose @echo compiling $<
505e75ba28b42bb3de7a6d55de825091b70cc2b2Stephen Gallagher $(CC) $< -o=$(OBJDIR)\$(@F) @$(OBJDIR)\cc.opt
505e75ba28b42bb3de7a6d55de825091b70cc2b2Stephen Gallagher$(OBJDIR)/%.o: server/mpm/netware/%.c $(OBJDIR)\cc.opt
8babbeee01e67893af4828ddfc922ecac0be4197Pavel Reichl @echo compiling $<
8babbeee01e67893af4828ddfc922ecac0be4197Pavel Reichl $(CC) $< -o=$(OBJDIR)\$(@F) @$(OBJDIR)\cc.opt
505e75ba28b42bb3de7a6d55de825091b70cc2b2Stephen Gallagher$(OBJDIR)/%.o: srclib/pcre/%.c $(OBJDIR)\cc.opt
505e75ba28b42bb3de7a6d55de825091b70cc2b2Stephen Gallagher @echo compiling $<
a3c8390d19593b1e5277d95bfb4ab206d4785150Nikolai Kondrashov $(CC) $< -o=$(OBJDIR)\$(@F) @$(OBJDIR)\cc.opt
505e75ba28b42bb3de7a6d55de825091b70cc2b2Stephen Gallagher# Include the 'tail' makefile that has targets that depend on variables defined
505e75ba28b42bb3de7a6d55de825091b70cc2b2Stephen Gallagher# in this makefile
cb446b6149d28c204954ae75143b89aef14115dcSumit Boseinclude $(AP_WORK)\build\NWGNUtail.inc