From: Guenter Knauf Date: Mon, 20 Jul 2009 18:43:34 +0000 (+0000) Subject: prepare NetWare build for creating build helpers to run on build platform; X-Git-Tag: 2.2.12~6 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=9d124d6d878328221fe9fd4ff3310aadda3e1ae7;p=thirdparty%2Fapache%2Fhttpd.git prepare NetWare build for creating build helpers to run on build platform; disabled by default until gen_test_char.c is modified to allow for cross-compile. git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/branches/2.2.x@795951 13f79535-47bb-0310-9956-ffa450edef68 --- diff --git a/build/NWGNUenvironment.inc b/build/NWGNUenvironment.inc index c549eb664e4..60b7204792e 100644 --- a/build/NWGNUenvironment.inc +++ b/build/NWGNUenvironment.inc @@ -120,6 +120,7 @@ CC = mwccnlm CPP = mwccnlm LINK = mwldnlm LIB = mwldnlm -type library -w nocmdline +WIN_CC = mwcc # Setup build tools AWK = awk @@ -154,13 +155,22 @@ else VERSION_SKT = (WINSOCK) endif -# # MetroWerks static Libraries - CLIB3S = $(METROWERKS)\Novell Support\Metrowerks Support\Libraries\Runtime\mwcrtl.lib MATH3S = PLIB3S = $(METROWERKS)\Novell Support\Metrowerks Support\Libraries\MSL C++\MWCPP.lib +# MetroWerks Win32 build flags to create build tool +MWCW_MSL = "$(METROWERKS)/MSL" +MWCW_W32 = "$(METROWERKS)/Win32-x86 Support" +WIN_CFLAGS = -O2 -gccinc -nodefaults -proc 586 -w off +WIN_CFLAGS += -ir $(MWCW_MSL) -ir $(MWCW_W32) -lr $(MWCW_MSL) -lr $(MWCW_W32) +WIN_CFLAGS += -lMSL_All_x86.lib -lkernel32.lib -luser32.lib + +ifndef BUILDTOOL_AS_NLM +BUILDTOOL_AS_NLM = 1 +endif + # Base compile flags # and prefix or precompiled header added here. diff --git a/build/NWGNUmakefile b/build/NWGNUmakefile index c99c95d86aa..fac1a828ab7 100644 --- a/build/NWGNUmakefile +++ b/build/NWGNUmakefile @@ -19,11 +19,12 @@ 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 :: $(NWOS)/httpd.imp +nlms :: $(NWOS)/httpd.imp $(NWOS)/chartables.c $(NWOS)/httpd.imp : make_nw_export.awk nw_export.i @echo Generating $(subst /,\,$@) @@ -62,6 +63,36 @@ $(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 $(FILES_prebuild_headers) + @echo Creating $(subst /,\,$@) + @$< $@ + +%.exe: $(PCRE)/%.c + @echo Creating Build Helper $@ + @$(WIN_CC) $(WIN_CFLAGS) $< -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 $@ + @$(WIN_CC) $(WIN_CFLAGS) -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 + # # You can use this target if all that is needed is to copy files to the # installation area @@ -69,13 +100,19 @@ $(PCRE)/%.h: $(subst /,\,$(PCRE))\%.hw 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 /,\,$(PCRE))\config.h $(DEL) $(subst /,\,$(PCRE))\config.h - $(CHK) $(subst /,\,$(PCRE))\pcre.h $(DEL) $(subst /,\,$(PCRE))\pcre.h - $(CHK) $(subst /,\,$(NWOS))\httpd.imp $(DEL) $(subst /,\,$(NWOS))\httpd.imp + $(CHK) nw_export.i $(DEL) nw_export.i + $(CHK) cc.opt $(DEL) cc.opt + $(CHK) NWGNUversion.inc $(DEL) NWGNUversion.inc + $(CHK) $(subst /,\,$(PCRE))\config.h $(DEL) $(subst /,\,$(PCRE))\config.h + $(CHK) $(subst /,\,$(PCRE))\pcre.h $(DEL) $(subst /,\,$(PCRE))\pcre.h + $(CHK) $(subst /,\,$(NWOS))\httpd.imp $(DEL) $(subst /,\,$(NWOS))\httpd.imp $(MAKE) -C $(APR) -f NWGNUmakefile clean +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 # # Include the 'tail' makefile that has targets that depend on variables defined