From: Guenter Knauf Date: Sun, 26 Sep 2010 09:28:51 +0000 (+0000) Subject: prepare NetWare build for creating build helpers to run on build platform; X-Git-Tag: 2.0.64~30 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=a589a42ef6d34ca58a728953d6b74d7c7220218f;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.0.x@1001396 13f79535-47bb-0310-9956-ffa450edef68 --- diff --git a/build/NWGNUenvironment.inc b/build/NWGNUenvironment.inc index 3510009b562..17d5f486bcf 100644 --- a/build/NWGNUenvironment.inc +++ b/build/NWGNUenvironment.inc @@ -111,10 +111,11 @@ endif # # MetroWerks NLM tools -CC = mwccnlm -CPP = mwccnlm +CC = mwccnlm +CPP = mwccnlm LINK = mwldnlm -LIB = mwldnlm -type library -w nocmdline +LIB = mwldnlm -type library -w nocmdline +WIN_CC = mwcc NOVI = $(NOVELLLIBC)\imports @@ -131,13 +132,22 @@ ifndef DEBUG DEFINES += -DNDEBUG 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 144c8216e7d..bc7ee5c969c 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,12 +63,42 @@ $(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 # install :: nlms FORCE - + clean :: $(CHK) nw_export.i $(DEL) nw_export.i @@ -79,4 +110,10 @@ clean :: $(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 +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