You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tomcat.apache.org by mt...@apache.org on 2012/05/29 11:19:59 UTC

svn commit: r1343619 - in /tomcat/native/trunk/native: NMAKEmakefile NMAKEmakefile.inc srclib/BUILDING srclib/VERSIONS srclib/apr/ srclib/apr/NMAKEmakefile srclib/apr/apr-enable-ipv6.patch srclib/openssl/ srclib/openssl/openssl-msvcrt.patch

Author: mturk
Date: Tue May 29 09:19:58 2012
New Revision: 1343619

URL: http://svn.apache.org/viewvc?rev=1343619&view=rev
Log:
Port command line build tools from 1.1.x branch

Added:
    tomcat/native/trunk/native/NMAKEmakefile   (with props)
    tomcat/native/trunk/native/NMAKEmakefile.inc
    tomcat/native/trunk/native/srclib/BUILDING
    tomcat/native/trunk/native/srclib/apr/
    tomcat/native/trunk/native/srclib/apr/NMAKEmakefile   (with props)
    tomcat/native/trunk/native/srclib/apr/apr-enable-ipv6.patch   (with props)
    tomcat/native/trunk/native/srclib/openssl/
    tomcat/native/trunk/native/srclib/openssl/openssl-msvcrt.patch   (with props)
Modified:
    tomcat/native/trunk/native/srclib/VERSIONS

Added: tomcat/native/trunk/native/NMAKEmakefile
URL: http://svn.apache.org/viewvc/tomcat/native/trunk/native/NMAKEmakefile?rev=1343619&view=auto
==============================================================================
--- tomcat/native/trunk/native/NMAKEmakefile (added)
+++ tomcat/native/trunk/native/NMAKEmakefile Tue May 29 09:19:58 2012
@@ -0,0 +1,146 @@
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+# ====================================================================
+#
+# NMAKEmakefile   Master Tomcat Native makefile.
+# Usage:
+#                 STATIC=1  Use static version of the APR
+#                 DEBUG=1   Build DEBUG version of TCN
+#
+# Originally contributed by Mladen Turk <mturk redhat.com>
+#
+# ====================================================================
+#
+
+!IF !DEFINED(APR_DECLARE_STATIC) || "$(APR_DECLARE_STATIC)" == ""
+PROJECT = libtcnative-1
+!ELSE
+PROJECT = tcnative-1
+!ENDIF
+TARGET = DLL
+
+!include <NMAKEmakefile.inc>
+
+!IF !DEFINED(APR_DECLARE_STATIC) || "$(APR_DECLARE_STATIC)" == ""
+APR_LIB = libapr-1.lib
+!ELSE
+CFLAGS = $(CFLAGS) -DAPR_DECLARE_STATIC
+APR_LIB = apr-1.lib
+!ENDIF
+
+!IF !DEFINED(SRCDIR) || "$(SRCDIR)" == ""
+SRCDIR = .
+!ENDIF
+
+INCLUDES = -I$(SRCDIR)\include $(JAVA_INCLUDES)
+
+!IFNDEF WITH_APR
+WITH_APR = $(SRCDIR)\srclib\apr
+LDIRS = /libpath:"$(WITH_APR)\$(WORKDIR)"
+!ELSE
+LDIRS = /libpath:"$(WITH_APR)\lib"
+!ENDIF
+
+INCLUDES = $(INCLUDES) -I$(WITH_APR)\include -I$(WITH_APR)\include\arch\win32
+!IF DEFINED(WITH_OPENSSL)
+INCLUDES = $(INCLUDES) -I$(WITH_OPENSSL)\include
+LDIRS = $(LDIRS) /libpath:"$(WITH_OPENSSL)\lib"
+!ELSE
+WITH_OPENSSL = $(SRCDIR)\srclib\openssl
+INCLUDES = $(INCLUDES) $(WITH_OPENSSL)\inc32
+LDIRS = $(LDIRS) /libpath:"$(WITH_OPENSSL)\out32"
+!ENDIF
+
+LFLAGS = $(LFLAGS) /version:1.1
+LFLAGS = $(LFLAGS) user32.lib psapi.lib gdi32.lib shlwapi.lib wldap32.lib ole32.lib
+LFLAGS = $(LFLAGS) $(APR_LIB)
+LFLAGS = $(LFLAGS) libeay32.lib ssleay32.lib
+!IF DEFINED(WITH_OPENSSL)
+!ELSE
+!ENDIF
+
+CFLAGS = $(CFLAGS) -DZLIB_WINAPI -DNO_IDEA -DNO_RC5 -DNO_MDC2 -DOPENSSL_NO_IDEA \
+	-DOPENSSL_NO_RC5 -DOPENSSL_NO_MDC2 -DHAVE_OPENSSL -DHAVE_SSL_SET_STATE=1
+
+
+PDBFLAGS = -Fo$(WORKDIR)\ -Fd$(WORKDIR)\$(PROJECT)-src
+OBJECTS = \
+	$(WORKDIR)\address.obj \
+	$(WORKDIR)\bb.obj \
+	$(WORKDIR)\dir.obj \
+	$(WORKDIR)\error.obj \
+	$(WORKDIR)\file.obj \
+	$(WORKDIR)\info.obj \
+	$(WORKDIR)\jnilib.obj \
+	$(WORKDIR)\lock.obj \
+	$(WORKDIR)\misc.obj \
+	$(WORKDIR)\mmap.obj \
+	$(WORKDIR)\multicast.obj \
+	$(WORKDIR)\network.obj \
+	$(WORKDIR)\os.obj \
+	$(WORKDIR)\poll.obj \
+	$(WORKDIR)\pool.obj \
+	$(WORKDIR)\proc.obj \
+	$(WORKDIR)\shm.obj \
+	$(WORKDIR)\ssl.obj \
+	$(WORKDIR)\sslcontext.obj \
+	$(WORKDIR)\sslext.obj \
+	$(WORKDIR)\sslinfo.obj \
+	$(WORKDIR)\sslnetwork.obj \
+	$(WORKDIR)\sslutils.obj \
+	$(WORKDIR)\stdlib.obj \
+	$(WORKDIR)\user.obj \
+	$(WORKDIR)\thread.obj \
+	$(WORKDIR)\ntpipe.obj \
+	$(WORKDIR)\registry.obj \
+	$(WORKDIR)\system.obj
+
+BUILDLIB = $(PREFIX)\lib
+BUILDBIN = $(WORKDIR)\$(PROJECT).dll
+BUILDPDB = $(WORKDIR)\$(PROJECT).pdb
+BUILDRES = $(WORKDIR)\$(PROJECT).res
+BUILDMAN = $(BUILDBIN).manifest
+
+all : $(WORKDIR) $(BUILDBIN)
+
+$(BUILDLIB) :
+	@if not exist "$(BUILDLIB)\$(NULL)" mkdir "$(BUILDLIB)"
+
+$(WORKDIR) :
+	@$(MAKEWORKDIR)
+
+{$(SRCDIR)\src}.c{$(WORKDIR)}.obj:
+	$(CC) $(CFLAGS) $(INCLUDES) $(PDBFLAGS) $<
+
+{$(SRCDIR)\os\win32}.c{$(WORKDIR)}.obj:
+	$(CC) $(CFLAGS) $(INCLUDES) $(PDBFLAGS) $<
+
+$(OBJECTS): $(SRCDIR)\include\*.h
+
+$(BUILDRES): $(SRCDIR)\os\win32\libtcnative.rc $(SRCDIR)\include\*.h
+	$(RC) $(RCFLAGS) /i "$(SRCDIR)\include" /fo $(BUILDRES) $(SRCDIR)\os\win32\libtcnative.rc
+
+$(BUILDBIN): $(WORKDIR) $(OBJECTS) $(BUILDRES)
+	$(LINK) $(LFLAGS) $(OBJECTS) $(BUILDRES) $(LIBS) $(LDIRS) /pdb:$(BUILDPDB) /out:$(BUILDBIN)
+	IF EXIST $(BUILDMAN) \
+		mt -nologo -manifest $(BUILDMAN) -outputresource:$(BUILDBIN);2
+
+clean:
+	@$(CLEANTARGET)
+
+install: $(BUILDLIB) $(WORKDIR) $(BUILDBIN)
+	@xcopy "$(WORKDIR)\*.lib" "$(BUILDLIB)" /Y /Q
+	@xcopy "$(WORKDIR)\*.dll" "$(BUILDLIB)" /Y /Q

Propchange: tomcat/native/trunk/native/NMAKEmakefile
------------------------------------------------------------------------------
    svn:eol-style = native

Added: tomcat/native/trunk/native/NMAKEmakefile.inc
URL: http://svn.apache.org/viewvc/tomcat/native/trunk/native/NMAKEmakefile.inc?rev=1343619&view=auto
==============================================================================
--- tomcat/native/trunk/native/NMAKEmakefile.inc (added)
+++ tomcat/native/trunk/native/NMAKEmakefile.inc Tue May 29 09:19:58 2012
@@ -0,0 +1,347 @@
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+# @author Mladen Turk
+#
+#
+# ====================================================================
+#
+# Makefile.inc Master makefile definitions.
+#                 This file defines CPU architecture and basic compiler
+#                 and linker parameters.
+# Common params:
+#                 CPU       Compile for specified CPU. Supported CPU's are:
+#                           X86 (Common x86 architecture)
+#                           X64 (AMD64/EMT64 architecture)
+#                           I64 (Intel IA64 architecture)
+#                           If not specified it will default to the
+#                           PROCESSOR_ARCHITECTURE environment variable
+#                           or to the X86 if not specified.
+#                 WINVER    Compile for specified Windows version
+#                           WINNT   for Windows 2000 and up(default)
+#                           WINXP   for Windows XP and up
+#                           WIN2003 for Windows 2003 and up
+#                           VSITA   for Windows Vista and up
+#                           Deprecated targets (may not even compile):
+#                               NT4     for Windows NT4 and up
+#                               WIN9X   for Windows 95, 98 and Me
+#                 BUILD     Build version
+#                           RETAIL or RELEASE (default)
+#                           DEBUG
+#                 TARGET    Build application target
+#                           EXE Console executable (default)
+#                           GUI Windows GUI executable
+#                           DLL Dynamic Link Library
+#                           LIB Static library
+#               UNICODE     Build unicode version
+#                           If definded and not empty -D_UNICODE is added
+#                           to CFLAGS; -D_MBCS is added otherwise
+# Environment variables  used:
+#           EXTRA_CFLAGS    Added to the common CFLAGS
+#           EXTRA_CXXFLAGS  Added to the common CXXFLAGS
+#           EXTRA_LIBS      Added to the common LIBS
+#           EXTRA_LFLAGS    Added to the common LFLAGS
+#           EXTRA_RCFLAGS   Added to the common RCFLAGS
+#
+# Compiler tools environment variables:
+#                 CC        C compiler  (defaults to cl.exe)
+#                 CXX       C++ compiler  (defaults to $CC -TP)
+#                 CPP       C preprocessor  (defaults to $CC -EP)
+#                 LINK      Linker (defaults to link.exe)
+#                 RC        Resource compiler (defaults to rc.exe)
+#                 MT        Manifest toolkit (defaults to mt.exe)
+#                 ML        Assembler (defaults to ml.exe or ml64.exe)
+#
+# Originally contributed by Mladen Turk <mturk jboss.com>
+#
+# ====================================================================
+#
+
+# C/C++ compiler
+!IF !DEFINED(CC) || "$(CC)" == ""
+CC = cl.exe
+!ENDIF
+!IF !DEFINED(CXX) || "$(CXX)" == ""
+CXX = $(CC) -TP
+!ENDIF
+!IF !DEFINED(CPP) || "$(CPP)" == ""
+CPP = $(CC) -EP
+!ENDIF
+# Linker
+!IF !DEFINED(LINK) || "$(LINK)" == ""
+LINK = link.exe
+!ENDIF
+# Resource Compiler
+!IF !DEFINED(RC) || "$(RC)" == ""
+RC = rc.exe
+!ENDIF
+# Manifest toolkit
+!IF !DEFINED(MT) || "$(MT)" == ""
+MT = mt.exe
+!ENDIF
+
+# Use BUILD_CPU if CPU was not set
+!IF !DEFINED(CPU) || "$(CPU)" == ""
+!IF "$(BUILD_CPU)" == "i386" || "$(BUILD_CPU)" == "x86" || "$(BUILD_CPU)" == "i686"
+CPU=X86
+!ENDIF
+!IF "$(BUILD_CPU)" == "amd64" || "$(BUILD_CPU)" == "x86_64" || "$(BUILD_CPU)" == "x64"
+CPU=X64
+!ENDIF
+!IF "$(BUILD_CPU)" == "ia64" || "$(BUILD_CPU)" == "i64"
+CPU=I64
+!ENDIF
+!ENDIF
+# Figure out CPU from the current host
+!IF !DEFINED(CPU) || "$(CPU)" == ""
+!IF "$(PROCESSOR_ARCHITECTURE)" == ""
+!IF "$(PROCESSOR_ARCHITEW6432)" == ""
+CPU=X86
+!ELSE
+CPU=$(PROCESSOR_ARCHITEW6432)
+!ENDIF
+!ELSE
+CPU=$(PROCESSOR_ARCHITECTURE)
+!ENDIF
+!ENDIF
+
+!IF "$(CPU)" != "X86"
+!IF "$(CPU)" != "X64"
+!IF "$(CPU)" != "I64"
+!ERROR Must specify CPU environment variable (X86, X64, I64) $(CPU)
+!ENDIF
+!ENDIF
+!ENDIF
+
+!IF !DEFINED(TARGET) || "$(TARGET)" == ""
+TARGET=EXE
+!ENDIF
+
+!IF "$(TARGET)" != "EXE"
+!IF "$(TARGET)" != "GUI"
+!IF "$(TARGET)" != "DLL"
+!IF "$(TARGET)" != "LIB"
+!ERROR Must specify TARGET environment variable (EXE, GUI, DLL, LIB)
+!ENDIF
+!ENDIF
+!ENDIF
+!ENDIF
+
+!IF !DEFINED(WINVER) || "$(WINVER)" == ""
+WINVER=WINXP
+!ENDIF
+
+
+!IF "$(WINVER)" != "WINNT"
+!IF "$(WINVER)" != "WINXP"
+!IF "$(WINVER)" != "WIN2003"
+!IF "$(WINVER)" != "VISTA"
+!IF "$(WINVER)" != "WIN7"
+!ERROR Must specify WINVER environment variable (WINNT, WINXP, WIN2003, VISTA, WIN7)
+!ENDIF
+!ENDIF
+!ENDIF
+!ENDIF
+!ENDIF
+
+!IF "$(WINVER)" == "WINNT"
+NMAKE_WINVER = 0x0500
+_WIN32_IE = 0x0500
+!ELSEIF "$(WINVER)" == "WINXP"
+NMAKE_WINVER = 0x0501
+_WIN32_IE = 0x0600
+!ELSEIF "$(WINVER)" == "WIN2003"
+NMAKE_WINVER = 0x0502
+_WIN32_IE = 0x0600
+!ELSEIF "$(WINVER)" == "VISTA"
+NMAKE_WINVER = 0x0600
+_WIN32_IE = 0x0700
+!ELSEIF "$(WINVER)" == "WIN7"
+NMAKE_WINVER = 0x0700
+_WIN32_IE = 0x0800
+!ELSE
+!ERROR Must specify WINVER environment variable (WINNT, WINXP, WIN2003, VISTA, WIN7)
+!ENDIF
+
+NMAKE_WINNT = -DWINNT -D_WINNT -D_WIN32_WINNT=$(NMAKE_WINVER) -DWINVER=$(NMAKE_WINVER) -D_WIN32_IE=$(_WIN32_IE)
+
+!IF !DEFINED(BUILD) || "$(BUILD)" == ""
+BUILD=RELEASE
+!ENDIF
+!IFDEF RELEASE
+BUILD=RELEASE
+!ENDIF
+!IFDEF DEBUG
+BUILD=DEBUG
+!ENDIF
+!IFDEF NODEBUG
+BUILD=RELEASE
+!ENDIF
+
+!IF "$(BUILD)" != "RELEASE"
+!IF "$(BUILD)" != "DEBUG"
+!ERROR Must specify BUILD environment variable (RELEASE, DEBUG)
+!ENDIF
+!ENDIF
+
+# Common flags for all platforms
+CMN_CFLAGS = -c -nologo -DWIN32 -D_WIN32 -D_WINDOWS $(NMAKE_WINNT) -W3
+!IF "$(TARGET)" == "EXE"
+CMN_CFLAGS = $(CMN_CFLAGS) -D_CONSOLE
+!ENDIF
+# Mark that extern C newer throws C++ exception
+CMN_CFLAGS = $(CMN_CFLAGS) -EHsc
+
+!IF !DEFINED(UNICODE) || "$(UNICODE)" == ""
+CMN_CFLAGS = $(CMN_CFLAGS) -D_MBCS -DMBCS
+!ELSE
+CMN_CFLAGS = $(CMN_CFLAGS) -D_UNICODE -DUNICODE
+!ENDIF
+
+!IF "$(CPU)" == "X86"
+CPU_CFLAGS = -D_X86_=1
+MACHINE=X86
+MACHINE_LC=i386
+!ELSEIF "$(CPU)" == "X64"
+CPU_CFLAGS = -D_AMD64_=1 -DWIN64 -D_WIN64
+MACHINE=AMD64
+MACHINE_LC=amd64
+!ELSEIF "$(CPU)" == "I64"
+CPU_CFLAGS = -D_IA64_=1 -DWIN64 -D_WIN64
+MACHINE=IA64
+MACHINE_LC=ia64
+!ENDIF
+
+!IF "$(BUILD)" == "RELEASE"
+!IF "$(CPU)" == "X86"
+OPT_CFLAGS = -O2 -Ob2 -Oy- -Zi -DNDEBUG
+!ELSE
+OPT_CFLAGS = -O2 -Ob2 -Zi -DNDEBUG
+!ENDIF
+!ELSE
+OPT_CFLAGS = -Od -Zi -DDEBUG -D_DEBUG
+!ENDIF
+
+!IF DEFINED(STATIC_CRT)
+CRT_CFLAGS = -D_MT -MT
+!ELSE
+CRT_CFLAGS = -D_MT -MD
+!ENDIF
+
+!IF "$(BUILD)" == "DEBUG"
+CRT_CFLAGS = $(CRT_CFLAGS)d
+!ENDIF
+
+CFLAGS = $(CMN_CFLAGS) $(CPU_CFLAGS) $(OPT_CFLAGS) $(CRT_CFLAGS)
+
+!IF DEFINED(EXTRA_CFLAGS)
+CFLAGS = $(CFLAGS) $(EXTRA_CFLAGS)
+!ENDIF
+
+# Cleanup CXXFLAGS
+CXXFLAGS =
+!IF DEFINED(EXTRA_CXXFLAGS)
+CXXFLAGS = $(EXTRA_CXXFLAGS)
+!ENDIF
+
+# Linker section
+LIBS = kernel32.lib advapi32.lib ws2_32.lib mswsock.lib ole32.lib shell32.lib rpcrt4.lib
+# Extra libs from command line or env
+!IF DEFINED(EXTRA_LIBS)
+LIBS = $(LIBS) $(EXTRA_LIBS)
+!ENDIF
+
+# Run-Time Error Checks
+!IF "$(BUILD)" == "DEBUG"
+!IF DEFINED(RTC_CHECK)
+LIBS = $(LIBS) RunTmChk.lib
+CFLAGS = $(CFLAGS) -RTC1
+!ENDIF
+!ENDIF
+
+COMMON_LFLAGS = /NOLOGO
+
+# Always add debugging to the linker
+OPT_LFLAGS = /INCREMENTAL:NO /DEBUG
+!IF "$(BUILD)" == "RELEASE"
+OPT_LFLAGS = /OPT:REF
+!ENDIF
+
+!IF "$(TARGET)" == "EXE"
+LFLAGS = $(COMMON_LFLAGS) /SUBSYSTEM:CONSOLE /MACHINE:$(MACHINE)
+!ELSEIF "$(TARGET)" == "GUI"
+LFLAGS = $(COMMON_LFLAGS) /SUBSYSTEM:WINDOWS /MACHINE:$(MACHINE)
+!ELSEIF "$(TARGET)" == "DLL"
+LFLAGS = $(COMMON_LFLAGS) /DLL /SUBSYSTEM:WINDOWS /MACHINE:$(MACHINE)
+!ELSEIF "$(TARGET)" == "LIB"
+LFLAGS = -lib $(COMMON_LFLAGS)
+!ENDIF
+
+!IF DEFINED(EXTRA_LFLAGS)
+LFLAGS = $(LFLAGS) $(EXTRA_LFLAGS)
+!ENDIF
+
+!IF "$(TARGET)" != "LIB"
+LFLAGS = $(LFLAGS) $(OPT_LFLAGS)
+!ENDIF
+
+# Resource compiler flags
+
+RCFLAGS=/l 0x409
+!IF "$(BUILD)" == "RELEASE"
+RCFLAGS = $(RCFLAGS) /d "NDEBUG"
+!ELSE
+RCFLAGS = $(RCFLAGS) /d "_DEBUG" /d "DEBUG"
+!ENDIF
+RCFLAGS = $(RCFLAGS)
+!IF DEFINED(EXTRA_RCFLAGS)
+RCFLAGS = $(RCFLAGS) $(EXTRA_RCFLAGS)
+!ENDIF
+
+
+# Build Target dir e.g. WINNT_I386_RELEASE_DLL
+!IF !DEFINED(WORKDIR) || "$(WORKDIR)" == ""
+!IF !DEFINED(WORKDIR_EXT) || "$(WORKDIR_EXT)" == ""
+WORKDIR = $(WINVER)_$(CPU)_$(TARGET)_$(BUILD)
+WORKDIR_DLL = $(WINVER)_$(CPU)_DLL_$(BUILD)
+WORKDIR_LIB = $(WINVER)_$(CPU)_LIB_$(BUILD)
+WORKDIR_EXE = $(WINVER)_$(CPU)_EXE_$(BUILD)
+!ELSE
+WORKDIR = $(WINVER)_$(CPU)_$(BUILDIR_EXT)_$(BUILD)
+!ENDIF
+!ENDIF
+
+CLEANTARGET=if exist "$(WORKDIR)\$(NULL)" rd /s /q $(WORKDIR)
+MAKEWORKDIR=if not exist "$(WORKDIR)\$(NULL)" mkdir $(WORKDIR)
+MAKEINSTALL=if not exist "$(INSTALLLOC)\$(NULL)" mkdir $(INSTALLLOC)
+
+!IF DEFINED(JAVA_HOME) && "$(JAVA_HOME)" != ""
+JAVA_INCLUDES=-I "$(JAVA_HOME)\include" -I "$(JAVA_HOME)\include\win32"
+!ENDIF
+
+# Assembler Section
+!IF !DEFINED(ML) || "$(ML)" == ""
+!IF "$(CPU)" == "X86"
+ML = ml.exe
+AFLAGS = /coff /Zi /c
+!ELSEIF "$(CPU)" == "X64"
+ML = ml64.exe
+AFLAGS = /Zi /c
+!ELSEIF "$(CPU)" == "I64"
+ML = ml64.exe
+AFLAGS = /coff /Zi /c
+!ENDIF
+!ENDIF
+

Added: tomcat/native/trunk/native/srclib/BUILDING
URL: http://svn.apache.org/viewvc/tomcat/native/trunk/native/srclib/BUILDING?rev=1343619&view=auto
==============================================================================
--- tomcat/native/trunk/native/srclib/BUILDING (added)
+++ tomcat/native/trunk/native/srclib/BUILDING Tue May 29 09:19:58 2012
@@ -0,0 +1,42 @@
+Building apr on windows
+-----------------------
+
+Apply apr-enable-ipv6.patch.
+This will enable IPV6 support for windows builds.
+
+Open Visual Studio command prompt and execute
+nmake -f NMAKEMakefile BUILD_CPU=x86 APR_DECLARE_STATIC=1
+
+For building 64-bit version execute
+nmake -f NMAKEMakefile BUILD_CPU=x64 APR_DECLARE_STATIC=1
+
+Make sure you select the correct Visual Studio command prompt
+environment before calling nmake so that correct
+compiler is setup for the target architecture.
+
+
+Building OpenSSL
+----------------
+
+Apply openssl-msvcrt.patch
+
+This patch makes sure that static version of OpenSSL libraries
+is linked to msvcrt.dll instead statically linking msvcrt.
+Without that patch it won't be possible to create statically linked
+Tomcat native .dll
+
+Then follow the standard OpenSSL make procedure ...
+
+> perl Configure VC-WIN32
+> ms\do_nasm
+> nmake -f ms\nt.mak
+
+For 64-bit Windows use
+> perl Configure VC-WIN64A
+> ms\do_win64a
+> nmake -f ms\nt.mak
+
+For 64-bit Windows on Itanium processor use
+> perl Configure VC-WIN64I
+> ms\do_win64i
+> nmake -f ms\nt.mak

Modified: tomcat/native/trunk/native/srclib/VERSIONS
URL: http://svn.apache.org/viewvc/tomcat/native/trunk/native/srclib/VERSIONS?rev=1343619&r1=1343618&r2=1343619&view=diff
==============================================================================
--- tomcat/native/trunk/native/srclib/VERSIONS (original)
+++ tomcat/native/trunk/native/srclib/VERSIONS Tue May 29 09:19:58 2012
@@ -1,4 +1,4 @@
 Use the following version of the libraries
 
-- APR 1.4.3, http://apr.apache.org
-- OpenSSL 0.9.8k, http://www.openssl.org
+- APR 1.4.6, http://apr.apache.org
+- OpenSSL 1.0.0g, http://www.openssl.org

Added: tomcat/native/trunk/native/srclib/apr/NMAKEmakefile
URL: http://svn.apache.org/viewvc/tomcat/native/trunk/native/srclib/apr/NMAKEmakefile?rev=1343619&view=auto
==============================================================================
--- tomcat/native/trunk/native/srclib/apr/NMAKEmakefile (added)
+++ tomcat/native/trunk/native/srclib/apr/NMAKEmakefile Tue May 29 09:19:58 2012
@@ -0,0 +1,234 @@
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+# ====================================================================
+#
+# NMAKEmakefile   Master APR makefile.
+# Usage:
+#                 DLL=1     Build DLL version
+#                 DEBUG=1   Build DEBUG version of APR
+#
+# Originally contributed by Mladen Turk <mturk redhat.com>
+#
+# ====================================================================
+#
+
+!IF !DEFINED(APR_DECLARE_STATIC) || "$(APR_DECLARE_STATIC)" == ""
+TARGET=DLL
+EXTRA_CFLAGS = -DAPR_DECLARE_EXPORT
+PROJECT = libapr-1
+!ELSE
+TARGET=LIB
+EXTRA_CFLAGS = -DAPR_DECLARE_STATIC
+PROJECT = apr-1
+!ENDIF
+
+!IF !DEFINED(SRCDIR) || "$(SRCDIR)" == ""
+SRCDIR = .
+!ENDIF
+
+!include <..\..\NMAKEMakefile.inc>
+
+
+!IF "$(TARGET)" != "LIB"
+LFLAGS = $(LFLAGS) /version:1.4
+!ENDIF
+INCLUDES = -I$(SRCDIR)\include -I$(SRCDIR)\include\arch -I$(SRCDIR)\include\arch\win32 -I$(SRCDIR)\include\arch\unix
+PDBFLAGS = -Fo$(WORKDIR)\ -Fd$(WORKDIR)\$(PROJECT)-src
+OBJECTS = \
+	$(WORKDIR)\apr_atomic.obj \
+	$(WORKDIR)\dso.obj \
+	$(WORKDIR)\buffer.obj \
+	$(WORKDIR)\copy.obj \
+	$(WORKDIR)\dir.obj \
+	$(WORKDIR)\fileacc.obj \
+	$(WORKDIR)\filedup.obj \
+	$(WORKDIR)\filepath.obj \
+	$(WORKDIR)\filepath_util.obj \
+	$(WORKDIR)\filestat.obj \
+	$(WORKDIR)\filesys.obj \
+	$(WORKDIR)\flock.obj \
+	$(WORKDIR)\fullrw.obj \
+	$(WORKDIR)\mktemp.obj \
+	$(WORKDIR)\open.obj \
+	$(WORKDIR)\pipe.obj \
+	$(WORKDIR)\readwrite.obj \
+	$(WORKDIR)\seek.obj \
+	$(WORKDIR)\tempdir.obj \
+	$(WORKDIR)\proc_mutex.obj \
+	$(WORKDIR)\thread_cond.obj \
+	$(WORKDIR)\thread_mutex.obj \
+	$(WORKDIR)\thread_rwlock.obj \
+	$(WORKDIR)\apr_pools.obj \
+	$(WORKDIR)\apr_app.obj \
+	$(WORKDIR)\charset.obj \
+	$(WORKDIR)\env.obj \
+	$(WORKDIR)\errorcodes.obj \
+	$(WORKDIR)\getopt.obj \
+	$(WORKDIR)\internal.obj \
+	$(WORKDIR)\misc.obj \
+	$(WORKDIR)\otherchild.obj \
+	$(WORKDIR)\rand.obj \
+	$(WORKDIR)\start.obj \
+	$(WORKDIR)\utf8.obj \
+	$(WORKDIR)\version.obj \
+	$(WORKDIR)\common.obj \
+	$(WORKDIR)\mmap.obj \
+	$(WORKDIR)\inet_ntop.obj \
+	$(WORKDIR)\inet_pton.obj \
+	$(WORKDIR)\multicast.obj \
+	$(WORKDIR)\sendrecv.obj \
+	$(WORKDIR)\sockaddr.obj \
+	$(WORKDIR)\sockets.obj \
+	$(WORKDIR)\socket_util.obj \
+	$(WORKDIR)\sockopt.obj \
+	$(WORKDIR)\apr_getpass.obj \
+	$(WORKDIR)\poll.obj \
+	$(WORKDIR)\pollcb.obj \
+	$(WORKDIR)\pollset.obj \
+	$(WORKDIR)\select.obj \
+	$(WORKDIR)\apr_random.obj \
+	$(WORKDIR)\sha2.obj \
+	$(WORKDIR)\sha2_glue.obj \
+	$(WORKDIR)\shm.obj \
+	$(WORKDIR)\apr_cpystrn.obj \
+	$(WORKDIR)\apr_fnmatch.obj \
+	$(WORKDIR)\apr_snprintf.obj \
+	$(WORKDIR)\apr_strings.obj \
+	$(WORKDIR)\apr_strnatcmp.obj \
+	$(WORKDIR)\apr_strtok.obj \
+	$(WORKDIR)\apr_hash.obj \
+	$(WORKDIR)\apr_tables.obj \
+	$(WORKDIR)\proc.obj \
+	$(WORKDIR)\signals.obj \
+	$(WORKDIR)\thread.obj \
+	$(WORKDIR)\threadpriv.obj \
+	$(WORKDIR)\time.obj \
+	$(WORKDIR)\timestr.obj \
+	$(WORKDIR)\groupinfo.obj \
+	$(WORKDIR)\userinfo.obj
+
+BUILDINC = $(PREFIX)\include\apr-1
+BUILDLIB = $(PREFIX)\lib
+!IF "$(TARGET)" == "DLL"
+BUILDBIN = $(WORKDIR)\$(PROJECT).dll
+BUILDPDB = $(WORKDIR)\$(PROJECT).pdb
+BUILDRES = $(WORKDIR)\$(PROJECT).res
+BUILDMAN = $(BUILDBIN).manifest
+!ELSE
+BUILDBIN = $(WORKDIR)\$(PROJECT).lib
+!ENDIF
+
+all : $(WORKDIR) $(BUILDBIN)
+
+$(BUILDINC) :
+	@if not exist "$(BUILDINC)\arch\win32\$(NULL)" mkdir "$(BUILDINC)\arch\win32"
+
+$(BUILDLIB) :
+	@if not exist "$(BUILDLIB)\$(NULL)" mkdir "$(BUILDLIB)"
+
+$(WORKDIR) :
+	@$(MAKEWORKDIR)
+
+$(SRCDIR)\include\apr.h: $(SRCDIR)\include\apr.hw
+	-@copy $(SRCDIR)\include\apr.hw $(SRCDIR)\include\apr.h
+    
+{$(SRCDIR)\atomic\win32}.c{$(WORKDIR)}.obj:
+	$(CC) $(CFLAGS) $(INCLUDES) $(PDBFLAGS) $<
+
+{$(SRCDIR)\dso\win32}.c{$(WORKDIR)}.obj:
+	$(CC) $(CFLAGS) $(INCLUDES) $(PDBFLAGS) $<
+
+{$(SRCDIR)\file_io\unix}.c{$(WORKDIR)}.obj:
+	$(CC) $(CFLAGS) $(INCLUDES) $(PDBFLAGS) $<
+
+{$(SRCDIR)\file_io\win32}.c{$(WORKDIR)}.obj:
+	$(CC) $(CFLAGS) $(INCLUDES) $(PDBFLAGS) $<
+
+{$(SRCDIR)\locks\win32}.c{$(WORKDIR)}.obj:
+	$(CC) $(CFLAGS) $(INCLUDES) $(PDBFLAGS) $<
+
+{$(SRCDIR)\memory\unix}.c{$(WORKDIR)}.obj:
+	$(CC) $(CFLAGS) $(INCLUDES) $(PDBFLAGS) $<
+
+{$(SRCDIR)\misc\unix}.c{$(WORKDIR)}.obj:
+	$(CC) $(CFLAGS) $(INCLUDES) $(PDBFLAGS) $<
+
+{$(SRCDIR)\misc\win32}.c{$(WORKDIR)}.obj:
+	$(CC) $(CFLAGS) $(INCLUDES) $(PDBFLAGS) $<
+
+{$(SRCDIR)\mmap\unix}.c{$(WORKDIR)}.obj:
+	$(CC) $(CFLAGS) $(INCLUDES) $(PDBFLAGS) $<
+
+{$(SRCDIR)\mmap\win32}.c{$(WORKDIR)}.obj:
+	$(CC) $(CFLAGS) $(INCLUDES) $(PDBFLAGS) $<
+
+{$(SRCDIR)\network_io\unix}.c{$(WORKDIR)}.obj:
+	$(CC) $(CFLAGS) $(INCLUDES) $(PDBFLAGS) $<
+
+{$(SRCDIR)\network_io\win32}.c{$(WORKDIR)}.obj:
+	$(CC) $(CFLAGS) $(INCLUDES) $(PDBFLAGS) $<
+
+{$(SRCDIR)\passwd}.c{$(WORKDIR)}.obj:
+	$(CC) $(CFLAGS) $(INCLUDES) $(PDBFLAGS) $<
+
+{$(SRCDIR)\poll\unix}.c{$(WORKDIR)}.obj:
+	$(CC) $(CFLAGS) $(INCLUDES) $(PDBFLAGS) $<
+
+{$(SRCDIR)\random\unix}.c{$(WORKDIR)}.obj:
+	$(CC) $(CFLAGS) $(INCLUDES) $(PDBFLAGS) $<
+
+{$(SRCDIR)\shmem\win32}.c{$(WORKDIR)}.obj:
+	$(CC) $(CFLAGS) $(INCLUDES) $(PDBFLAGS) $<
+
+{$(SRCDIR)\strings}.c{$(WORKDIR)}.obj:
+	$(CC) $(CFLAGS) $(INCLUDES) $(PDBFLAGS) $<
+
+{$(SRCDIR)\tables}.c{$(WORKDIR)}.obj:
+	$(CC) $(CFLAGS) $(INCLUDES) $(PDBFLAGS) $<
+
+{$(SRCDIR)\threadproc\win32}.c{$(WORKDIR)}.obj:
+	$(CC) $(CFLAGS) $(INCLUDES) $(PDBFLAGS) $<
+
+{$(SRCDIR)\time\win32}.c{$(WORKDIR)}.obj:
+	$(CC) $(CFLAGS) $(INCLUDES) $(PDBFLAGS) $<
+
+{$(SRCDIR)\user\win32}.c{$(WORKDIR)}.obj:
+	$(CC) $(CFLAGS) $(INCLUDES) $(PDBFLAGS) $<
+
+$(OBJECTS): $(SRCDIR)\include\apr.h
+
+!IF "$(TARGET)" == "DLL"
+$(BUILDRES): libapr.rc $(SRCDIR)\include\apr.h
+	$(RC) $(RCFLAGS) /i "$(SRCDIR)\include" /d "APR_VERSION_ONLY" /fo $(BUILDRES) libapr.rc
+$(BUILDBIN): $(WORKDIR) $(OBJECTS) $(BUILDRES)
+	$(LINK) $(LFLAGS) $(OBJECTS) $(BUILDRES) $(LIBS) /pdb:$(BUILDPDB) /out:$(BUILDBIN)
+	IF EXIST $(BUILDMAN) \
+		mt -nologo -manifest $(BUILDMAN) -outputresource:$(BUILDBIN);2
+!ELSE
+$(BUILDBIN): $(WORKDIR) $(OBJECTS)
+	$(LINK) $(LFLAGS) $(OBJECTS) /out:$(BUILDBIN)
+!ENDIF
+
+clean:
+	@$(CLEANTARGET)
+
+install: $(BUILDINC) $(BUILDLIB) $(WORKDIR) $(BUILDBIN)
+	@xcopy "$(SRCDIR)\include\*.h" "$(BUILDINC)" /Y /Q
+	@xcopy "$(SRCDIR)\include\arch\apr_private_common.h" "$(BUILDINC)\arch" /Y /Q
+	@xcopy "$(SRCDIR)\include\arch\win32\*.h" "$(BUILDINC)\arch\win32" /Y /Q
+	@xcopy "$(WORKDIR)\*.lib" "$(BUILDLIB)" /Y /Q
+	@xcopy "$(WORKDIR)\*.dll" "$(BUILDLIB)" /Y /Q 2>NUL
+

Propchange: tomcat/native/trunk/native/srclib/apr/NMAKEmakefile
------------------------------------------------------------------------------
    svn:eol-style = native

Added: tomcat/native/trunk/native/srclib/apr/apr-enable-ipv6.patch
URL: http://svn.apache.org/viewvc/tomcat/native/trunk/native/srclib/apr/apr-enable-ipv6.patch?rev=1343619&view=auto
==============================================================================
--- tomcat/native/trunk/native/srclib/apr/apr-enable-ipv6.patch (added)
+++ tomcat/native/trunk/native/srclib/apr/apr-enable-ipv6.patch Tue May 29 09:19:58 2012
@@ -0,0 +1,20 @@
+--- include/apr.hw
++++ include/apr.hw
+@@ -276,7 +276,7 @@
+ #define APR_HAVE_IN_ADDR        1
+ #define APR_HAVE_INET_ADDR      1
+ #define APR_HAVE_INET_NETWORK   0
+-#define APR_HAVE_IPV6           0
++#define APR_HAVE_IPV6           1
+ #define APR_HAVE_MEMMOVE        1
+ #define APR_HAVE_SETRLIMIT      0
+ #define APR_HAVE_SIGACTION      0
+@@ -340,7 +340,7 @@
+ /* If we have a TCP implementation that can be "corked", what flag
+  * do we use?
+  */
+-#define APR_TCP_NOPUSH_FLAG       @apr_tcp_nopush_flag@
++#define APR_TCP_NOPUSH_FLAG       0
+ 
+ /* Is the TCP_NODELAY socket option inherited from listening sockets?
+  */

Propchange: tomcat/native/trunk/native/srclib/apr/apr-enable-ipv6.patch
------------------------------------------------------------------------------
    svn:eol-style = LF

Added: tomcat/native/trunk/native/srclib/openssl/openssl-msvcrt.patch
URL: http://svn.apache.org/viewvc/tomcat/native/trunk/native/srclib/openssl/openssl-msvcrt.patch?rev=1343619&view=auto
==============================================================================
--- tomcat/native/trunk/native/srclib/openssl/openssl-msvcrt.patch (added)
+++ tomcat/native/trunk/native/srclib/openssl/openssl-msvcrt.patch Tue May 29 09:19:58 2012
@@ -0,0 +1,28 @@
+--- util/pl/VC-32.pl
++++ util/pl/VC-32.pl
+@@ -33,7 +33,7 @@
+     # considered safe to ignore.
+     # 
+     $base_cflags= " $mf_cflag";
+-    my $f = $shlib?' /MD':' /MT';
++    my $f = ' /MD';
+     $lib_cflag='/Zl' if (!$shlib);	# remove /DEFAULTLIBs from static lib
+     $opt_cflags=$f.' /Ox';
+     $dbg_cflags=$f.'d /Od -DDEBUG -D_DEBUG';
+@@ -114,7 +114,7 @@
+ else	# Win32
+     {
+     $base_cflags= " $mf_cflag";
+-    my $f = $shlib?' /MD':' /MT';
++    my $f = ' /MD';
+     $lib_cflag='/Zl' if (!$shlib);	# remove /DEFAULTLIBs from static lib
+     $opt_cflags=$f.' /Ox /O2 /Ob2';
+     $dbg_cflags=$f.'d /Od -DDEBUG -D_DEBUG';
+@@ -165,6 +165,7 @@
+ 	{
+ 	$ex_libs.=' gdi32.lib advapi32.lib crypt32.lib user32.lib';
+ 	$ex_libs.=' bufferoverflowu.lib' if ($FLAVOR =~ /WIN64/ and `cl 2>&1` =~ /14\.00\.4[0-9]{4}\./);
++	$ex_libs.=' $(EXTRA_LIBS)';
+ 	# WIN32 UNICODE build gets linked with unicows.lib for
+ 	# backward compatibility with Win9x.
+ 	$ex_libs="unicows.lib $ex_libs" if ($FLAVOR =~ /WIN32/ and $cflags =~ /\-DUNICODE/);

Propchange: tomcat/native/trunk/native/srclib/openssl/openssl-msvcrt.patch
------------------------------------------------------------------------------
    svn:eol-style = LF



---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tomcat.apache.org
For additional commands, e-mail: dev-help@tomcat.apache.org