#
# Declare the sub-directories to be built here
#

SUBDIRS = \
	$(EOLIST) 

#
# Get the 'head' of the build environment.  This includes default targets and
# paths to tools
#

include $(AP_WORK)\build\NWGNUhead.inc

#
# build this level's files

FILES_prebuild_headers = \
	$(APR)/include/apr.h \
	$(APRUTIL)/include/apu.h \
	$(APRUTIL)/include/apr_ldap.h \
	$(NWOS)/test_char.h \
	$(PCRE)/config.h \
	$(PCRE)/pcre.h \
	$(EOLIST) 
    
nlms :: libs $(NWOS)/httpd.imp $(DAV)/main/dav.imp

libs :: $(NWOS)/chartables.c

#libs :: chkapr $(NWOS)/chartables.c

$(DAV)/main/dav.imp : make_nw_export.awk $(DAV)/main/mod_dav.h
	@echo $(DL)Creating  $@$(DL)
	$(AWK) -v EXPPREFIX=APACHE2 -f $^ >$@

$(NWOS)/httpd.imp : make_nw_export.awk nw_export.i
	@echo $(DL)Creating  $@$(DL)
	$(AWK) -v EXPPREFIX=APACHE2 -f $^ >$@
    
nw_export.i : nw_export.inc $(FILES_prebuild_headers) cc.opt
	@echo $(DL)Creating  $@$(DL)
	$(CC) $< @cc.opt

cc.opt : NWGNUmakefile $(AP_WORK)\build\NWGNUenvironment.inc $(AP_WORK)\build\NWGNUtail.inc $(AP_WORK)\build\NWGNUhead.inc
	$(CHK) $@ $(DEL) $@
	@echo -P >> $@
	@echo -EP >> $@
	@echo -nosyspath >> $@
	@echo -w nocmdline >> $@
	@echo -DNETWARE >> $@
	@echo -DCORE_PRIVATE >> $@
	@echo -I..\include >> $@
	@echo -I..\modules\http >> $@
	@echo -I..\modules\aaa >> $@
	@echo -I..\os\netware >> $@
	@echo -I..\server\mpm\netware >> $@
	@echo -I$(APR)\include >> $@
	@echo -I$(APRUTIL)\include >> $@
	@echo -ir $(NOVELLLIBC) >> $@

$(APR)/include/%.h: $(subst /,\,$(APR))\include\%.hnw
	@echo $(DL)Creating  $@$(DL)
	copy $< $(subst /,\,$(APR))\include\$(@F)

$(APRUTIL)/include/%.h: $(subst /,\,$(APRUTIL))\include\%.hnw
	@echo $(DL)Creating  $@$(DL)
	copy $< $(subst /,\,$(APRUTIL))\include\$(@F)

$(PCRE)/%.h: $(subst /,\,$(PCRE))\%.hw
	@echo Creating $(subst /,\,$@)
	copy $< $(subst /,\,$(PCRE))\$(@F)

ifneq "$(BUILDTOOL_AS_NLM)" "1"

$(NWOS)/chartables.c: dftables.exe $(PCRE)/dftables.c
	@echo Creating $(subst /,\,$@)
	@$< > $@

%.exe: $(PCRE)/%.c $(PCRE)/config.h $(PCRE)/pcre.h
	@echo Creating Build Helper $@
	$(CC_FOR_BUILD) $(CFLAGS_FOR_BUILD) $< -o $@

$(NWOS)/test_char.h: gen_test_char.exe $(AP_WORK)/server/gen_test_char.c
	@echo Creating $(subst /,\,$@)
	@$< > $@

%.exe: $(AP_WORK)/server/%.c
	@echo Creating Build Helper $@
	$(CC_FOR_BUILD) $(CFLAGS_FOR_BUILD) -DCROSS_COMPILE $< -o $@

else

ifneq "$(wildcard $(NWOS)/chartables.c)" "$(NWOS)/chartables.c"
$(error Error: required source $(NWOS)/chartables.c not found!)
endif

ifneq "$(wildcard $(NWOS)/test_char.h)" "$(NWOS)/test_char.h"
$(error Error: required header $(NWOS)/test_char.h not found!)
endif

endif

#
# Check for minimum APR version
#
chkapr: $(APR)/build/nw_ver.awk $(APR)/include/apr_version.h
	@echo $(DL)Checking for APR version...$(DL)
	$(AWK) -v WANTED=$(APR_WANTED) -f $^

#
# You can use this target if all that is needed is to copy files to the
# installation area
#
install :: nlms FORCE


clean ::
	$(CHK) nw_export.i                                  $(DEL) nw_export.i
	$(CHK) cc.opt                                       $(DEL) cc.opt
	$(CHK) NWGNUversion.inc                             $(DEL) NWGNUversion.inc
	$(CHK) $(subst /,\,$(APR))\include\apr.h            $(DEL) $(subst /,\,$(APR))\include\apr.h
	$(CHK) $(subst /,\,$(APRUTIL))\include\apu.h        $(DEL) $(subst /,\,$(APRUTIL))\include\apu.h
	$(CHK) $(subst /,\,$(APRUTIL))\include\apr_ldap.h   $(DEL) $(subst /,\,$(APRUTIL))\include\apr_ldap.h
	$(CHK) $(subst /,\,$(PCRE))\config.h                $(DEL) $(subst /,\,$(PCRE))\config.h
	$(CHK) $(subst /,\,$(PCRE))\pcre.h                  $(DEL) $(subst /,\,$(PCRE))\pcre.h
	$(CHK) $(subst /,\,$(DAV))\main\dav.imp             $(DEL) $(subst /,\,$(DAV))\main\dav.imp
	$(CHK) $(subst /,\,$(NWOS))\httpd.imp               $(DEL) $(subst /,\,$(NWOS))\httpd.imp
ifneq "$(BUILDTOOL_AS_NLM)" "1"
	$(CHK) $(subst /,\,$(NWOS))\chartables.c            $(DEL) $(subst /,\,$(NWOS))\chartables.c
	$(CHK) $(subst /,\,$(NWOS))\test_char.h             $(DEL) $(subst /,\,$(NWOS))\test_char.h
	$(CHK) dftables.exe                                 $(DEL) dftables.exe
	$(CHK) gen_test_char.exe                            $(DEL) gen_test_char.exe
endif
    
