]> git.ipfire.org Git - thirdparty/apache/httpd.git/commitdiff
Some NetWare ssl module build tweaks.
authorGuenter Knauf <fuankg@apache.org>
Wed, 28 Sep 2011 00:22:19 +0000 (00:22 +0000)
committerGuenter Knauf <fuankg@apache.org>
Wed, 28 Sep 2011 00:22:19 +0000 (00:22 +0000)
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/branches/2.2.x@1176670 13f79535-47bb-0310-9956-ffa450edef68

modules/ssl/NWGNUmakefile

index 048c1e42e98cfe4342feeecf946881547dc7aec0..933180f14a6a86fefb01686165e383e393a996dd 100644 (file)
@@ -1,6 +1,9 @@
 #
-# This Makefile requires the environment var OSSLSDK 
+# This Makefile requires the environment var OSSLSDK
 # pointing to the base directory of your OpenSSL SDK.
+# If you want to use the Novell NTLS SDK instead then
+# define NTLSSDK pointing to the base directory of the
+# SDK, and also set USE_NTLS=1
 #
 
 #
@@ -8,7 +11,7 @@
 #
 
 SUBDIRS = \
-       $(EOLIST) 
+       $(EOLIST)
 
 #
 # Get the 'head' of the build environment.  This includes default targets and
@@ -23,23 +26,37 @@ include $(AP_WORK)/build/NWGNUhead.inc
 # Make sure all needed macro's are defined
 #
 
-OSSLINC = $(OSSLSDK)/outinc_nw_libc
-OSSLLIB = $(OSSLSDK)/out_nw_libc
-OSSLAPP = $(OSSLSDK)/apps
+ifeq "$(USE_NTLS)" "1"
+SSL_INC = $(NTLSSDK)/inc
+SSL_LIB = $(NTLSSDK)/imp
+SSL_BIN = $(NTLSSDK)/bin
+SSL_APP = $(NTLSSDK)/apps
+ifneq "$(wildcard $(SSL_INC)/openssl/opensslv.h)" "$(SSL_INC)/openssl/opensslv.h"
+$(error '$(NTLSSDK)' does NOT point to a valid NTLS SDK!)
+endif
+else
+SSL_INC = $(OSSLSDK)/outinc_nw_libc
+SSL_LIB = $(OSSLSDK)/out_nw_libc
+SSL_BIN = $(OSSLSDK)/out_nw_libc
+SSL_APP = $(OSSLSDK)/apps
+ifneq "$(wildcard $(SSL_INC)/openssl/opensslv.h)" "$(SSL_INC)/openssl/opensslv.h"
+$(error '$(OSSLSDK)' does NOT point to a valid OpenSSL SDK!)
+endif
+endif
 
 #
 # These directories will be at the beginning of the include list, followed by
 # INCDIRS
 #
 XINCDIRS       += \
+                       $(SSL_INC) \
                        $(APR)/include \
                        $(APRUTIL)/include \
                        $(AP_WORK)/include \
+                       $(AP_WORK)/modules/cache \
+                       $(AP_WORK)/modules/generators \
+                       $(AP_WORK)/server/mpm/NetWare \
                        $(NWOS) \
-                       $(STDMOD)/generators \
-                       $(SERVER)/mpm/NetWare \
-                       $(OSSLINC) \
-                       $(OSSLINC)/openssl \
                        $(EOLIST)
 
 #
@@ -59,7 +76,7 @@ XDEFINES      += \
 # These flags will be added to the link.opt file
 #
 XLFLAGS                += \
-                       -l $(OSSLLIB) \
+                       -l $(SSL_LIB) \
                        $(EOLIST)
 
 #
@@ -116,10 +133,14 @@ endif
 NLM_NAME       = mod_ssl
 
 #
-# This is used by the link '-desc ' directive. 
+# This is used by the link '-desc ' directive.
 # If left blank, NLM_NAME will be used.
 #
-NLM_DESCRIPTION        = Apache $(VERSION_STR) SSL module
+ifeq "$(USE_NTLS)" "1"
+NLM_DESCRIPTION        = Apache $(VERSION_STR) SSL module (NTLS)
+else
+NLM_DESCRIPTION        = Apache $(VERSION_STR) SSL module (OpenSSL)
+endif
 
 #
 # This is used by the '-threadname' directive.  If left blank,
@@ -128,16 +149,16 @@ NLM_DESCRIPTION   = Apache $(VERSION_STR) SSL module
 NLM_THREAD_NAME        = $(NLM_NAME)
 
 #
-# If this is specified, it will override VERSION value in 
+# If this is specified, it will override VERSION value in
 # $(AP_WORK)/build/NWGNUenvironment.inc
 #
-NLM_VERSION    = 
+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
@@ -158,13 +179,13 @@ NLM_CHECK_SYM     =
 # If this is 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 
+# 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                = 
+XDCDATA                =
 
 #
 # Declare all target files (you must add your files here)
@@ -196,10 +217,15 @@ FILES_nlm_objs := $(patsubst %.c,$(OBJDIR)/%.o,$(wildcard *.c))
 #
 FILES_nlm_libs = \
        $(PRELUDE) \
-       $(OSSLLIB)/crypto.lib \
-       $(OSSLLIB)/ssl.lib \
        $(EOLIST)
 
+ifneq "$(USE_NTLS)" "1"
+FILES_nlm_libs += \
+       $(SSL_LIB)/crypto.lib \
+       $(SSL_LIB)/ssl.lib \
+       $(EOLIST)
+endif
+
 #
 # 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.
@@ -209,11 +235,16 @@ FILES_nlm_modules = \
        Libc \
        $(EOLIST)
 
+ifeq "$(USE_NTLS)" "1"
+FILES_nlm_modules += ntls \
+       $(EOLIST)
+endif
+
 #
 # 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
 #
@@ -231,25 +262,33 @@ FILES_nlm_Ximports = \
        @libc.imp \
        @aprlib.imp \
        @httpd.imp \
+       $(EOLIST)
+
+# Don't link with Winsock if standard sockets are being used
+ifneq "$(USE_STDSOCKETS)" "1"
+FILES_nlm_Ximports += @ws2nlm.imp \
+       $(EOLIST)
+endif
+
+ifeq "$(USE_NTLS)" "1"
+FILES_nlm_Ximports += @ntls.imp \
+       $(EOLIST)
+else
+FILES_nlm_Ximports += \
        GetProcessSwitchCount \
        RunningProcess \
        GetSuperHighResolutionTimer \
        $(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 = \
        ssl_module \
        $(EOLIST)
 
-#   
+#
 # These are the OBJ files needed to create the LIB target above.
 # Paths must all use the '/' character
 #
@@ -265,32 +304,19 @@ libs :: $(OBJDIR) $(TARGET_lib)
 nlms :: libs $(TARGET_nlm)
 
 #
-# Updated this target to create necessary directories and copy files to the 
+# 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
-       $(call COPY,$(OBJDIR)/*.nlm, $(INSTALLBASE)/modules/)
-       $(call COPY,$(OSSLLIB)/openssl.nlm ,$(INSTALLBASE)/bin/)
-       $(call COPY,$(OSSLAPP)/openssl.cnf ,$(INSTALLBASE)/bin/)
+       $(call COPY,$(OBJDIR)/*.nlm,        $(INSTALLBASE)/modules/)
+       $(call COPY,$(SSL_BIN)/openssl.nlm, $(INSTALLBASE)/bin/)
+       $(call COPY,$(SSL_APP)/openssl.cnf, $(INSTALLBASE)/bin/)
 
 #
 # Any specialized rules here
 #
 vpath %.c $(AP_WORK)/modules/arch/netware
 
-# Make sure that the build doesn't attempt to regenerate the shipping files.
-# On Windows we use 'copy /b file.ext +,,' to assign the current time and date
-# to a file without modifying the file (the TOUCH macro uses this) - see also:
-# http://technet.microsoft.com/en-us/library/bb490886.aspx
-ssl_expr_parse.h : ssl_expr_parse.y
-       $(call TOUCH, $@)
-
-ssl_expr_parse.c : ssl_expr_parse.y
-       $(call TOUCH, $@)
-
-ssl_expr_scan.c : ssl_expr_scan.l
-       $(call TOUCH, $@)
-
 #
 # Include the 'tail' makefile that has targets that depend on variables defined
 # in this makefile