You are viewing a plain text version of this content. The canonical link for it is here.
Posted to cvs@httpd.apache.org by fu...@apache.org on 2011/10/29 15:16:45 UTC
svn commit: r1194885 - in /httpd/httpd/trunk/modules/filters: NWGNUmakefile
NWGNUproxyhtml NWGNUxml2enc
Author: fuankg
Date: Sat Oct 29 13:16:45 2011
New Revision: 1194885
URL: http://svn.apache.org/viewvc?rev=1194885&view=rev
Log:
Added proxy_html and xml2enc to NetWare build.
Added:
httpd/httpd/trunk/modules/filters/NWGNUproxyhtml (with props)
httpd/httpd/trunk/modules/filters/NWGNUxml2enc (with props)
Modified:
httpd/httpd/trunk/modules/filters/NWGNUmakefile
Modified: httpd/httpd/trunk/modules/filters/NWGNUmakefile
URL: http://svn.apache.org/viewvc/httpd/httpd/trunk/modules/filters/NWGNUmakefile?rev=1194885&r1=1194884&r2=1194885&view=diff
==============================================================================
--- httpd/httpd/trunk/modules/filters/NWGNUmakefile (original)
+++ httpd/httpd/trunk/modules/filters/NWGNUmakefile Sat Oct 29 13:16:45 2011
@@ -164,7 +164,7 @@ TARGET_nlm = \
$(OBJDIR)/reflector.nlm \
$(EOLIST)
-# If the zlib libraries source exists then build the mod_deflate module
+# If the zlib library source exists then build the mod_deflate module
ifneq "$(ZLIBSDK)" ""
ifeq "$(wildcard $(ZLIBSDK))" "$(ZLIBSDK)"
TARGET_nlm += $(OBJDIR)/deflate.nlm \
@@ -172,6 +172,16 @@ TARGET_nlm += $(OBJDIR)/deflate.nlm \
endif
endif
+# If the libxml2 library source exists then build the mod_proxy_html module
+ifneq "$(LIBXML2SDK)" ""
+ifeq "$(wildcard $(LIBXML2SDK))" "$(LIBXML2SDK)"
+TARGET_nlm += \
+ $(OBJDIR)/proxyhtml.nlm \
+ $(OBJDIR)/xml2enc.nlm \
+ $(EOLIST)
+endif
+endif
+
#
# If there is an LIB target, put it here
#
Added: httpd/httpd/trunk/modules/filters/NWGNUproxyhtml
URL: http://svn.apache.org/viewvc/httpd/httpd/trunk/modules/filters/NWGNUproxyhtml?rev=1194885&view=auto
==============================================================================
--- httpd/httpd/trunk/modules/filters/NWGNUproxyhtml (added)
+++ httpd/httpd/trunk/modules/filters/NWGNUproxyhtml Sat Oct 29 13:16:45 2011
@@ -0,0 +1,261 @@
+#
+# Make sure all needed macro's are defined
+#
+
+#
+# Get the 'head' of the build environment if necessary. This includes default
+# targets and paths to tools
+#
+
+ifndef EnvironmentDefined
+include $(AP_WORK)/build/NWGNUhead.inc
+endif
+
+#
+# These directories will be at the beginning of the include list, followed by
+# INCDIRS
+#
+XINCDIRS += \
+ $(LIBXML2SDK)/include \
+ $(APR)/include \
+ $(APRUTIL)/include \
+ $(AP_WORK)/include \
+ $(AP_WORK)/modules/http \
+ $(NWOS) \
+ $(EOLIST)
+
+#
+# These flags will come after CFLAGS
+#
+XCFLAGS += \
+ $(EOLIST)
+
+#
+# These defines will come after DEFINES
+#
+XDEFINES += \
+ $(EOLIST)
+
+#
+# These flags will be added to the link.opt file
+#
+XLFLAGS += \
+ -L$(LIBXML2SDK)/lib -llibxml2.lib \
+ $(EOLIST)
+
+#
+# These values will be appended to the correct variables based on the value of
+# RELEASE
+#
+ifeq "$(RELEASE)" "debug"
+XINCDIRS += \
+ $(EOLIST)
+
+XCFLAGS += \
+ $(EOLIST)
+
+XDEFINES += \
+ $(EOLIST)
+
+XLFLAGS += \
+ $(EOLIST)
+endif
+
+ifeq "$(RELEASE)" "noopt"
+XINCDIRS += \
+ $(EOLIST)
+
+XCFLAGS += \
+ $(EOLIST)
+
+XDEFINES += \
+ $(EOLIST)
+
+XLFLAGS += \
+ $(EOLIST)
+endif
+
+ifeq "$(RELEASE)" "release"
+XINCDIRS += \
+ $(EOLIST)
+
+XCFLAGS += \
+ $(EOLIST)
+
+XDEFINES += \
+ $(EOLIST)
+
+XLFLAGS += \
+ $(EOLIST)
+endif
+
+#
+# These are used by the link target if an NLM is being generated
+# This is used by the link 'name' directive to name the nlm. If left blank
+# TARGET_nlm (see below) will be used.
+#
+NLM_NAME = proxyhtml
+
+#
+# This is used by the link '-desc ' directive.
+# If left blank, NLM_NAME will be used.
+#
+NLM_DESCRIPTION = Apache $(VERSION_STR) Proxy HTML Module
+
+#
+# This is used by the '-threadname' directive. If left blank,
+# NLM_NAME Thread will be used.
+#
+NLM_THREAD_NAME = Proxy HTTP Module
+
+#
+# If this is specified, it will override VERSION value in
+# $(AP_WORK)/build/NWGNUenvironment.inc
+#
+NLM_VERSION =
+
+#
+# If this is specified, it will override the default of 64K
+#
+NLM_STACK_SIZE = 8192
+
+
+#
+# If this is specified it will be used by the link '-entry' directive
+#
+NLM_ENTRY_SYM =
+
+#
+# If this is specified it will be used by the link '-exit' directive
+#
+NLM_EXIT_SYM =
+
+#
+# If this is specified it will be used by the link '-check' directive
+#
+NLM_CHECK_SYM =
+
+#
+# If these are specified it will be used by the link '-flags' directive
+#
+NLM_FLAGS =
+
+#
+# If this is specified it will be linked in with the XDCData option in the def
+# file instead of the default of $(NWOS)/apache.xdc. XDCData can be disabled
+# by setting APACHE_UNIPROC in the environment
+#
+XDCDATA =
+
+#
+# If there is an NLM target, put it here
+#
+TARGET_nlm = \
+ $(OBJDIR)/$(NLM_NAME).nlm \
+ $(EOLIST)
+
+#
+# If there is an LIB target, put it here
+#
+TARGET_lib = \
+ $(EOLIST)
+
+#
+# These are the OBJ files needed to create the NLM target above.
+# Paths must all use the '/' character
+#
+FILES_nlm_objs = \
+ $(OBJDIR)/mod_proxy_html.o \
+ $(OBJDIR)/libprews.o \
+ $(EOLIST)
+
+#
+# These are the LIB files needed to create the NLM target above.
+# These will be added as a library command in the link.opt file.
+#
+FILES_nlm_libs = \
+ $(PRELUDE) \
+ $(EOLIST)
+
+#
+# These are the modules that the above NLM target depends on to load.
+# These will be added as a module command in the link.opt file.
+#
+FILES_nlm_modules = \
+ aprlib \
+ libc \
+ proxy \
+ $(EOLIST)
+
+#
+# If the nlm has a msg file, put it's path here
+#
+FILE_nlm_msg =
+
+#
+# If the nlm has a hlp file put it's path here
+#
+FILE_nlm_hlp =
+
+#
+# If this is specified, it will override $(NWOS)\copyright.txt.
+#
+FILE_nlm_copyright =
+
+#
+# Any additional imports go here
+#
+FILES_nlm_Ximports = \
+ @aprlib.imp \
+ @httpd.imp \
+ @libc.imp \
+ $(EOLIST)
+
+# Don't link with Winsock if standard sockets are being used
+ifndef USE_STDSOCKETS
+FILES_nlm_Ximports += @ws2nlm.imp \
+ $(EOLIST)
+endif
+
+#
+# Any symbols exported to here
+#
+FILES_nlm_exports = \
+ proxy_html_module \
+ $(EOLIST)
+
+#
+# These are the OBJ files needed to create the LIB target above.
+# Paths must all use the '/' character
+#
+FILES_lib_objs = \
+ $(EOLIST)
+
+#
+# implement targets and dependancies (leave this section alone)
+#
+
+libs :: $(OBJDIR) $(TARGET_lib)
+
+nlms :: libs $(TARGET_nlm)
+
+#
+# Updated this target to create necessary directories and copy files to the
+# correct place. (See $(AP_WORK)/build/NWGNUhead.inc for examples)
+#
+install :: nlms FORCE
+
+#
+# Any specialized rules here
+#
+
+vpath %.c ../arch/netware
+
+#
+# Include the 'tail' makefile that has targets that depend on variables defined
+# in this makefile
+#
+
+include $(APBUILD)/NWGNUtail.inc
+
+
Propchange: httpd/httpd/trunk/modules/filters/NWGNUproxyhtml
------------------------------------------------------------------------------
svn:eol-style = native
Added: httpd/httpd/trunk/modules/filters/NWGNUxml2enc
URL: http://svn.apache.org/viewvc/httpd/httpd/trunk/modules/filters/NWGNUxml2enc?rev=1194885&view=auto
==============================================================================
--- httpd/httpd/trunk/modules/filters/NWGNUxml2enc (added)
+++ httpd/httpd/trunk/modules/filters/NWGNUxml2enc Sat Oct 29 13:16:45 2011
@@ -0,0 +1,258 @@
+#
+# 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
+
+#
+# Make sure all needed macro's are defined
+#
+
+#
+# These directories will be at the beginning of the include list, followed by
+# INCDIRS
+#
+XINCDIRS += \
+ $(LIBXML2SDK)/include \
+ $(APR)/include \
+ $(APRUTIL)/include \
+ $(AP_WORK)/include \
+ $(NWOS) \
+ $(EOLIST)
+
+#
+# These flags will come after CFLAGS
+#
+XCFLAGS += \
+ $(EOLIST)
+
+#
+# These defines will come after DEFINES
+#
+XDEFINES += \
+ $(EOLIST)
+
+#
+# These flags will be added to the link.opt file
+#
+XLFLAGS += \
+ -L$(LIBXML2SDK)/lib -llibxml2.lib \
+ $(EOLIST)
+
+#
+# These values will be appended to the correct variables based on the value of
+# RELEASE
+#
+ifeq "$(RELEASE)" "debug"
+XINCDIRS += \
+ $(EOLIST)
+
+XCFLAGS += \
+ $(EOLIST)
+
+XDEFINES += \
+ $(EOLIST)
+
+XLFLAGS += \
+ $(EOLIST)
+endif
+
+ifeq "$(RELEASE)" "noopt"
+XINCDIRS += \
+ $(EOLIST)
+
+XCFLAGS += \
+ $(EOLIST)
+
+XDEFINES += \
+ $(EOLIST)
+
+XLFLAGS += \
+ $(EOLIST)
+endif
+
+ifeq "$(RELEASE)" "release"
+XINCDIRS += \
+ $(EOLIST)
+
+XCFLAGS += \
+ $(EOLIST)
+
+XDEFINES += \
+ $(EOLIST)
+
+XLFLAGS += \
+ $(EOLIST)
+endif
+
+#
+# These are used by the link target if an NLM is being generated
+# This is used by the link 'name' directive to name the nlm. If left blank
+# TARGET_nlm (see below) will be used.
+#
+NLM_NAME = xml2enc
+
+#
+# This is used by the link '-desc ' directive.
+# If left blank, NLM_NAME will be used.
+#
+NLM_DESCRIPTION = Apache $(VERSION_STR) xml2enc Module
+
+#
+# This is used by the '-threadname' directive. If left blank,
+# NLM_NAME Thread will be used.
+#
+NLM_THREAD_NAME = Substitute Module
+
+#
+# If this is specified, it will override VERSION value in
+# $(AP_WORK)/build/NWGNUenvironment.inc
+#
+NLM_VERSION =
+
+#
+# If this is specified, it will override the default of 64K
+#
+NLM_STACK_SIZE = 8192
+
+
+#
+# If this is specified it will be used by the link '-entry' directive
+#
+NLM_ENTRY_SYM =
+
+#
+# If this is specified it will be used by the link '-exit' directive
+#
+NLM_EXIT_SYM =
+
+#
+# If this is specified it will be used by the link '-check' directive
+#
+NLM_CHECK_SYM =
+
+#
+# If these are specified it will be used by the link '-flags' directive
+#
+NLM_FLAGS =
+
+#
+# If this is specified it will be linked in with the XDCData option in the def
+# file instead of the default of $(NWOS)/apache.xdc. XDCData can be disabled
+# by setting APACHE_UNIPROC in the environment
+#
+XDCDATA =
+
+#
+# If there is an NLM target, put it here
+#
+TARGET_nlm = \
+ $(OBJDIR)/$(NLM_NAME).nlm \
+ $(EOLIST)
+
+#
+# If there is an LIB target, put it here
+#
+TARGET_lib = \
+ $(EOLIST)
+
+#
+# These are the OBJ files needed to create the NLM target above.
+# Paths must all use the '/' character
+#
+FILES_nlm_objs = \
+ $(OBJDIR)/mod_xml2enc.o \
+ $(EOLIST)
+
+#
+# These are the LIB files needed to create the NLM target above.
+# These will be added as a library command in the link.opt file.
+#
+FILES_nlm_libs = \
+ $(PRELUDE) \
+ $(EOLIST)
+
+#
+# These are the modules that the above NLM target depends on to load.
+# These will be added as a module command in the link.opt file.
+#
+FILES_nlm_modules = \
+ aprlib \
+ libc \
+ $(EOLIST)
+
+#
+# If the nlm has a msg file, put it's path here
+#
+FILE_nlm_msg =
+
+#
+# If the nlm has a hlp file put it's path here
+#
+FILE_nlm_hlp =
+
+#
+# If this is specified, it will override $(NWOS)\copyright.txt.
+#
+FILE_nlm_copyright =
+
+#
+# Any additional imports go here
+#
+FILES_nlm_Ximports = \
+ @aprlib.imp \
+ @httpd.imp \
+ @libc.imp \
+ $(EOLIST)
+
+#
+# Any symbols exported to here
+#
+FILES_nlm_exports = \
+ xml2enc_module \
+ $(EOLIST)
+
+#
+# These are the OBJ files needed to create the LIB target above.
+# Paths must all use the '/' character
+#
+FILES_lib_objs = \
+ $(EOLIST)
+
+#
+# implement targets and dependancies (leave this section alone)
+#
+
+libs :: $(OBJDIR) $(TARGET_lib)
+
+nlms :: libs $(TARGET_nlm)
+
+#
+# Updated this target to create necessary directories and copy files to the
+# correct place. (See $(AP_WORK)/build/NWGNUhead.inc for examples)
+#
+install :: nlms FORCE
+
+#
+# Any specialized rules here
+#
+
+#
+# Include the 'tail' makefile that has targets that depend on variables defined
+# in this makefile
+#
+
+include $(APBUILD)/NWGNUtail.inc
+
+
Propchange: httpd/httpd/trunk/modules/filters/NWGNUxml2enc
------------------------------------------------------------------------------
svn:eol-style = native
Re: svn commit: r1194885 - in /httpd/httpd/trunk/modules/filters:
NWGNUmakefile NWGNUproxyhtml NWGNUxml2enc
Posted by "William A. Rowe Jr." <wr...@rowe-clan.net>.
On 10/29/2011 12:04 PM, Nick Kew wrote:
> On Sat, 29 Oct 2011 17:58:24 +0200
> Guenter Knauf <fu...@apache.org> wrote:
>
>> BTW. wouldnt it be nice to have these modules use APR|U xml APIs?
>> Without looked at your mods I guess the APR|U xml APIs are too poor?
>
> Yes. apr-xml is a subset of the functionality of expat, which is
> in turn a very limited library.
Uhmmm... didn't you just bless apr_xml with libxml2 foo? libexpat being
one of now two possible providers?
I concur that expat is insufficient for this particular application.
But the user who builds apr_xml to libxml2 is getting two for the price
of one binding.
Re: svn commit: r1194885 - in /httpd/httpd/trunk/modules/filters:
NWGNUmakefile NWGNUproxyhtml NWGNUxml2enc
Posted by Nick Kew <ni...@webthing.com>.
On Sat, 29 Oct 2011 17:58:24 +0200
Guenter Knauf <fu...@apache.org> wrote:
> BTW. wouldnt it be nice to have these modules use APR|U xml APIs?
> Without looked at your mods I guess the APR|U xml APIs are too poor?
Yes. apr-xml is a subset of the functionality of expat, which is
in turn a very limited library.
Both the new modules use functionality that doesn't exist in expat.
In the case of mod_proxy_html that's absolutely necessary, whereas
in mod_xml2enc it's mostly just an optimisation compared to using
apr_iconv for all i18n needs.
--
Nick Kew
Re: svn commit: r1194885 - in /httpd/httpd/trunk/modules/filters:
NWGNUmakefile NWGNUproxyhtml NWGNUxml2enc
Posted by Guenter Knauf <fu...@apache.org>.
Hi Nick,
Am 29.10.2011 17:14, schrieb Nick Kew:
> You're obviously the platform expert, but just one point:
>
>
>> +# These flags will be added to the link.opt file
>> +#
>> +XLFLAGS += \
>> + -L$(LIBXML2SDK)/lib -llibxml2.lib \
>> + $(EOLIST)
>
> In the *X version (and windows - though I haven't attempted
> Makefiles for that) I've deliberately not linked it in but
> recommend LoadFile instead. That avoids problems like that
> of linking multiple versions of a library, e.g through
> scripting modules like PHP.
>
> I know that's a minority opinion, but FWIW!
that gives no probs since neither NetWare nor Windows export anything
unless explicitely specified. Also these makefiles are 1st hack - I
intent to add dynamic linking as well ... ;-)
BTW. wouldnt it be nice to have these modules use APR|U xml APIs?
Without looked at your mods I guess the APR|U xml APIs are too poor?
For the Windows build files lets hope for Gregg jumping in ... :-)
Gün.
Re: svn commit: r1194885 - in /httpd/httpd/trunk/modules/filters:
NWGNUmakefile NWGNUproxyhtml NWGNUxml2enc
Posted by Nick Kew <ni...@webthing.com>.
On Sat, 29 Oct 2011 13:16:45 -0000
fuankg@apache.org wrote:
> Author: fuankg
> Date: Sat Oct 29 13:16:45 2011
> New Revision: 1194885
>
> URL: http://svn.apache.org/viewvc?rev=1194885&view=rev
> Log:
> Added proxy_html and xml2enc to NetWare build.
Thanks!
You're obviously the platform expert, but just one point:
> +# These flags will be added to the link.opt file
> +#
> +XLFLAGS += \
> + -L$(LIBXML2SDK)/lib -llibxml2.lib \
> + $(EOLIST)
In the *X version (and windows - though I haven't attempted
Makefiles for that) I've deliberately not linked it in but
recommend LoadFile instead. That avoids problems like that
of linking multiple versions of a library, e.g through
scripting modules like PHP.
I know that's a minority opinion, but FWIW!
--
Nick Kew