diff options
author | james <james@e7ae566f-a301-0410-adde-c780ea21d3b5> | 2007-03-06 06:48:09 +0000 |
---|---|---|
committer | james <james@e7ae566f-a301-0410-adde-c780ea21d3b5> | 2007-03-06 06:48:09 +0000 |
commit | f9ad66c789308d99576ca5d28b1bedf973957ab2 (patch) | |
tree | 2bd88a8bf758ac32c8e8e85bfdeb2cd068626536 /tap-win32/SOURCES.in | |
parent | Allow installation of TAP-Win64 (diff) | |
download | openvpn-f9ad66c789308d99576ca5d28b1bedf973957ab2.tar.xz |
Changes to Windows build environment, to allow straightforward building
directly from an svn checkout or export.
install-win32/version.nsi contains high-level version info.
The script install-win32/winconfig should be run initially to set up
build configuration files.
Then make can be executed as such:
. autodefs/nsidefs.sh
make -f makefile.w32 -j 2
git-svn-id: http://svn.openvpn.net/projects/openvpn/branches/BETA21/openvpn@1757 e7ae566f-a301-0410-adde-c780ea21d3b5
Diffstat (limited to 'tap-win32/SOURCES.in')
-rwxr-xr-x | tap-win32/SOURCES.in | 72 |
1 files changed, 72 insertions, 0 deletions
diff --git a/tap-win32/SOURCES.in b/tap-win32/SOURCES.in new file mode 100755 index 0000000..63479a0 --- /dev/null +++ b/tap-win32/SOURCES.in @@ -0,0 +1,72 @@ +# Build TAP-Win32 driver. +# Build Command: build -cef + +MAJORCOMP=ntos +MINORCOMP=ndis + +TARGETNAME=tap0901 +TARGETTYPE=DRIVER +TARGETPATH=. +TARGETLIBS=$(DDK_LIB_PATH)\ndis.lib $(DDK_LIB_PATH)\ntstrsafe.lib +INCLUDES=$(DDK_INCLUDE_PATH) + +# The TAP version numbers here must be >= +# TAP_WIN32_MIN_x values defined in +# config-win32.h +C_DEFINES= +C_DEFINES=$(C_DEFINES) -DTAP_DRIVER_MAJOR_VERSION=@@PRODUCT_TAP_MAJOR_VER@@ +C_DEFINES=$(C_DEFINES) -DTAP_DRIVER_MINOR_VERSION=@@PRODUCT_TAP_MINOR_VER@@ + +# Use 00:FF:XX:XX:XX:XX format MAC addresses where +# the Xs are random (like Linux tap driver). +# +# Don't allow TAP device to be opened by more than one process +# at a time. +C_DEFINES=$(C_DEFINES) + +# Produce the same symbolic information for both free & checked builds. +# This will allow us to perform full source-level debugging on both +# builds without affecting the free build's performance. +!IF "$(DDKBUILDENV)" != "chk" +NTDEBUGTYPE=both +USE_PDB=1 +!ELSE +NTDEBUGTYPE=both +USE_PDB=1 +!ENDIF + +# Set compiler optimizations: +# /Ox - Full optimization enabled +# /Os - favor speed over size when optimizing +# /Od - Disable all optimizations +# /Oi - Enable optimization for intrinsic functions +# /Fc - Generate mixed assembler/source code files +# +# For both checked and free builds, make sure that any intrinsic +# functions are compiled correctly. To do this, ensure that /Oi +# is selected for both free and checked builds. There is a bug in +# VC++ 6.0 (at least through SP4) where, if you specify any +# intrinsic functions in your code with "#pragma intrinsic" but +# you don't have the /Oi optimization enabled, neither a call +# to the function, nor the intrinsic inline version of the function +# will end up in your object code. This bug only applies to free +# builds, but just to be safe we'll make sure that the flag is +# enabled for all builds. + +!IF "$(DDKBUILDENV)" != "chk" +MSC_OPTIMIZATION=/Ox /Oi /Fc +!ELSE +MSC_OPTIMIZATION=/Od /Oi /Fc +!ENDIF + +# Generate a linker map file just in case we need one for debugging +LINKER_FLAGS=$(LINKER_FLAGS) /MAP /MAPINFO:EXPORTS /MAPINFO:LINES + +# Generate a browser information file for use in IDE development +BROWSER_INFO=1 +BROWSERFILE=$(TARGETNAME).BSC -n + +# Abort compilation on warnings. +MSC_WARNING_LEVEL=/W3 /WX + +SOURCES=tapdrvr.c resource.rc |