diff options
Diffstat (limited to 'main/openvpn/build')
| -rw-r--r-- | main/openvpn/build/Makefile.am | 17 | ||||
| -rw-r--r-- | main/openvpn/build/ltrc.inc | 23 | ||||
| -rw-r--r-- | main/openvpn/build/msvc/Makefile.am | 15 | ||||
| -rw-r--r-- | main/openvpn/build/msvc/msvc-generate/Makefile.am | 18 | ||||
| -rwxr-xr-x | main/openvpn/build/msvc/msvc-generate/Makefile.mak | 13 | ||||
| -rw-r--r-- | main/openvpn/build/msvc/msvc-generate/msvc-generate.js | 118 | ||||
| -rw-r--r-- | main/openvpn/build/msvc/msvc-generate/msvc-generate.vcxproj | 69 | 
7 files changed, 273 insertions, 0 deletions
diff --git a/main/openvpn/build/Makefile.am b/main/openvpn/build/Makefile.am new file mode 100644 index 00000000..b53ff52d --- /dev/null +++ b/main/openvpn/build/Makefile.am @@ -0,0 +1,17 @@ +# +#  OpenVPN -- An application to securely tunnel IP networks +#             over a single UDP port, with support for SSL/TLS-based +#             session authentication and key exchange, +#             packet encryption, packet authentication, and +#             packet compression. +# +#  Copyright (C) 2002-2010 OpenVPN Technologies, Inc. <sales@openvpn.net> +# + +MAINTAINERCLEANFILES = \ +	$(srcdir)/Makefile.in + +EXTRA_DIST = \ +	ltrc.inc + +SUBDIRS = msvc diff --git a/main/openvpn/build/ltrc.inc b/main/openvpn/build/ltrc.inc new file mode 100644 index 00000000..701f200d --- /dev/null +++ b/main/openvpn/build/ltrc.inc @@ -0,0 +1,23 @@ +# +#  OpenVPN -- An application to securely tunnel IP networks +#             over a single UDP port, with support for SSL/TLS-based +#             session authentication and key exchange, +#             packet encryption, packet authentication, and +#             packet compression. +# +#  Copyright (C) 2008-2012 Alon Bar-Lev <alon.barlev@gmail.com> +# +# Required to build Windows resource file + +RCCOMPILE = $(RC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ +	$(AM_CPPFLAGS) $(CPPFLAGS) +LTRCCOMPILE = $(LIBTOOL) --mode=compile --tag=RC $(RCCOMPILE) + +.rc.lo: +	$(LTRCCOMPILE) -i "$<" -o "$@" + +.rc.o: +	$(RCCOMPILE) -i "$<" -o "$@" + +.mc.rc: +	$(WINDMC) "$<" diff --git a/main/openvpn/build/msvc/Makefile.am b/main/openvpn/build/msvc/Makefile.am new file mode 100644 index 00000000..7dc3def0 --- /dev/null +++ b/main/openvpn/build/msvc/Makefile.am @@ -0,0 +1,15 @@ +# +#  OpenVPN -- An application to securely tunnel IP networks +#             over a single UDP port, with support for SSL/TLS-based +#             session authentication and key exchange, +#             packet encryption, packet authentication, and +#             packet compression. +# +#  Copyright (C) 2002-2010 OpenVPN Technologies, Inc. <sales@openvpn.net> +#  Copyright (C) 2006-2012 Alon Bar-Lev <alon.barlev@gmail.com> +# + +MAINTAINERCLEANFILES = \ +	$(srcdir)/Makefile.in + +SUBDIRS = msvc-generate diff --git a/main/openvpn/build/msvc/msvc-generate/Makefile.am b/main/openvpn/build/msvc/msvc-generate/Makefile.am new file mode 100644 index 00000000..539fb6ce --- /dev/null +++ b/main/openvpn/build/msvc/msvc-generate/Makefile.am @@ -0,0 +1,18 @@ +# +#  OpenVPN -- An application to securely tunnel IP networks +#             over a single UDP port, with support for SSL/TLS-based +#             session authentication and key exchange, +#             packet encryption, packet authentication, and +#             packet compression. +# +#  Copyright (C) 2002-2010 OpenVPN Technologies, Inc. <sales@openvpn.net> +#  Copyright (C) 2006-2012 Alon Bar-Lev <alon.barlev@gmail.com> +# + +MAINTAINERCLEANFILES = \ +	$(srcdir)/Makefile.in + +dist_noinst_DATA = \ +	msvc-generate.vcxproj \ +	Makefile.mak \ +	msvc-generate.js diff --git a/main/openvpn/build/msvc/msvc-generate/Makefile.mak b/main/openvpn/build/msvc/msvc-generate/Makefile.mak new file mode 100755 index 00000000..72415f17 --- /dev/null +++ b/main/openvpn/build/msvc/msvc-generate/Makefile.mak @@ -0,0 +1,13 @@ +# Copyright (C) 2008-2012 Alon Bar-Lev <alon.barlev@gmail.com> + +CONFIG=$(SOURCEBASE)/version.m4 +INPUT=$(SOURCEBASE)/config-msvc-version.h.in +OUTPUT=$(SOURCEBASE)/config-msvc-version.h + +all:	$(OUTPUT) + +$(OUTPUT): $(INPUT) $(CONFIG) +	cscript //nologo msvc-generate.js --config="$(CONFIG)" --input="$(INPUT)" --output="$(OUTPUT)" + +clean: +	-del "$(OUTPUT)" diff --git a/main/openvpn/build/msvc/msvc-generate/msvc-generate.js b/main/openvpn/build/msvc/msvc-generate/msvc-generate.js new file mode 100644 index 00000000..d9564cfd --- /dev/null +++ b/main/openvpn/build/msvc/msvc-generate/msvc-generate.js @@ -0,0 +1,118 @@ +/* + * msvc-generate.js  - string transformation + * + * Copyright (C) 2008-2012 Alon Bar-Lev <alon.barlev@gmail.com> + * + * BSD License + * ============ + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * + *     o Redistributions of source code must retain the above copyright notice, + *       this list of conditions and the following disclaimer. + *     o Redistributions in binary form must reproduce the above copyright + *       notice, this list of conditions and the following disclaimer in the + *       documentation and/or other materials provided with the distribution. + *     o Neither the name of the Alon Bar-Lev nor the names of its + *       contributors may be used to endorse or promote products derived from + *       this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" + * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE + * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF + * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS + * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN + * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + * POSSIBILITY OF SUCH DAMAGE. + * + */ + +var ForReading = 1; +var fso = new ActiveXObject("Scripting.FileSystemObject"); +var input = "nul"; +var output = "nul"; +var files = new Array(); +var env = new Array(); + +function initialize() { +	for (var i=0;i<WScript.Arguments.length;i++) { +		var arg = WScript.Arguments(i); +		if (arg.match(/^--input=(.*)$/)) { +			input=RegExp.$1; +		} +		else if (arg.match(/^--output=(.*)$/)) { +			output=RegExp.$1; +		} +		else if (arg.match(/^--config=(.*)$/)) { +			files.push(RegExp.$1); +		} +		else if (arg.match(/^--var=([^=]*)=(.*)$/)) { +			env[RegExp.$1] = RegExp.$2; +		} +	} +} + +function process_config(vars, file) { +	try { +		var fin = fso.OpenTextFile(file, ForReading); + +		while (!fin.AtEndOfStream) { +			var content = fin.ReadLine(); +			if (content.match(/^[ \t]*define\(\[(.*)\],[ \t]*\[(.*)\]\)[ \t]*/)) { +				vars[RegExp.$1] = RegExp.$2; +			} +		} +	} +	catch(e) { +		throw new Error(1, "Cannot process '" + file + "'."); +	} +} + +function process_file(vars, input, output) { +	var fin = fso.OpenTextFile(input, ForReading); +	var fout = fso.CreateTextFile(output); +	var content = fin.ReadAll(); + +	for (var i in vars) { +		content = content.replace(new RegExp("@"+i+"@", "g"), vars[i]); +	} + +	fout.Write(content); +} + +function build_vars() { +	var vars = new Array(); +	for (var f in files) { +		process_config(vars, files[f]); +	} +	for (var e in env) { +		vars[e] = env[e]; +	} +	return vars; +} + +function main() { +	try { +		initialize(); + +		var vars = build_vars(); + +		process_file( +			vars, +			input, +			output +		); + +		WScript.Quit(0); +	} +	catch(e) { +		WScript.Echo("ERROR: when procssing " + output + ": " + e.description); +		WScript.Quit(1); +	} +} + +main(); diff --git a/main/openvpn/build/msvc/msvc-generate/msvc-generate.vcxproj b/main/openvpn/build/msvc/msvc-generate/msvc-generate.vcxproj new file mode 100644 index 00000000..e6491aba --- /dev/null +++ b/main/openvpn/build/msvc/msvc-generate/msvc-generate.vcxproj @@ -0,0 +1,69 @@ +<?xml version="1.0" encoding="utf-8"?>
 +<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
 +  <ItemGroup Label="ProjectConfigurations">
 +    <ProjectConfiguration Include="Debug|Win32">
 +      <Configuration>Debug</Configuration>
 +      <Platform>Win32</Platform>
 +    </ProjectConfiguration>
 +    <ProjectConfiguration Include="Release|Win32">
 +      <Configuration>Release</Configuration>
 +      <Platform>Win32</Platform>
 +    </ProjectConfiguration>
 +  </ItemGroup>
 +  <PropertyGroup Label="Globals">
 +    <ProjectGuid>{8598C2C8-34C4-47A1-99B0-7C295A890615}</ProjectGuid>
 +    <RootNamespace>msvc-generate</RootNamespace>
 +    <Keyword>MakeFileProj</Keyword>
 +  </PropertyGroup>
 +  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
 +  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
 +    <ConfigurationType>Makefile</ConfigurationType>
 +  </PropertyGroup>
 +  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
 +    <ConfigurationType>Makefile</ConfigurationType>
 +  </PropertyGroup>
 +  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
 +  <ImportGroup Label="ExtensionSettings">
 +  </ImportGroup>
 +  <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
 +    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
 +  </ImportGroup>
 +  <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
 +    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
 +  </ImportGroup>
 +  <PropertyGroup Label="UserMacros" />
 +  <PropertyGroup>
 +    <_ProjectFileVersion>10.0.30319.1</_ProjectFileVersion>
 +    <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(Configuration)\</OutDir>
 +    <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(Configuration)\</IntDir>
 +    <NMakeBuildCommandLine Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">nmake -f Makefile.mak all</NMakeBuildCommandLine>
 +    <NMakeReBuildCommandLine Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">nmake -f Makefile.mak clean all</NMakeReBuildCommandLine>
 +    <NMakeCleanCommandLine Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">nmake -f Makefile.mak clean</NMakeCleanCommandLine>
 +    <NMakeOutput Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">config-msvc-version.h</NMakeOutput>
 +    <NMakePreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">WIN32;_DEBUG;$(NMakePreprocessorDefinitions)</NMakePreprocessorDefinitions>
 +    <NMakeIncludeSearchPath Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(NMakeIncludeSearchPath)</NMakeIncludeSearchPath>
 +    <NMakeForcedIncludes Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(NMakeForcedIncludes)</NMakeForcedIncludes>
 +    <NMakeAssemblySearchPath Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(NMakeAssemblySearchPath)</NMakeAssemblySearchPath>
 +    <NMakeForcedUsingAssemblies Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(NMakeForcedUsingAssemblies)</NMakeForcedUsingAssemblies>
 +    <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(Configuration)\</OutDir>
 +    <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(Configuration)\</IntDir>
 +    <NMakeBuildCommandLine Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">nmake -f Makefile.mak all</NMakeBuildCommandLine>
 +    <NMakeReBuildCommandLine Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">nmake -f Makefile.mak clean all</NMakeReBuildCommandLine>
 +    <NMakeCleanCommandLine Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">nmake -f Makefile.mak clean</NMakeCleanCommandLine>
 +    <NMakeOutput Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">config-msvc-version.h</NMakeOutput>
 +    <NMakePreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">WIN32;NDEBUG;$(NMakePreprocessorDefinitions)</NMakePreprocessorDefinitions>
 +    <NMakeIncludeSearchPath Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(NMakeIncludeSearchPath)</NMakeIncludeSearchPath>
 +    <NMakeForcedIncludes Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(NMakeForcedIncludes)</NMakeForcedIncludes>
 +    <NMakeAssemblySearchPath Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(NMakeAssemblySearchPath)</NMakeAssemblySearchPath>
 +    <NMakeForcedUsingAssemblies Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(NMakeForcedUsingAssemblies)</NMakeForcedUsingAssemblies>
 +  </PropertyGroup>
 +  <ItemDefinitionGroup>
 +  </ItemDefinitionGroup>
 +  <ItemGroup>
 +    <None Include="Makefile.mak" />
 +    <None Include="msc-generate.js" />
 +  </ItemGroup>
 +  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
 +  <ImportGroup Label="ExtensionTargets">
 +  </ImportGroup>
 +</Project>
\ No newline at end of file  | 
