-- Samuli Seppänen Community Manager OpenVPN Technologies, Inc irc freenode net: mattock
From c5d50576b9be6175132da67a57306bf41611f791 Mon Sep 17 00:00:00 2001 From: =?utf-8?q?Samuli=20Sepp=C3=A4nen?= <sam...@openvpn.net> Date: Mon, 3 Jan 2011 16:07:28 +0200 Subject: [PATCH 2/6] Added openvpnserv.exe building to win/msvc.mak.in --- win/msvc.mak.in | 46 ++++++++++++++++++++++++++++++---------------- 1 files changed, 30 insertions(+), 16 deletions(-) diff --git a/win/msvc.mak.in b/win/msvc.mak.in index 5d94a6e..66e546c 100644 --- a/win/msvc.mak.in +++ b/win/msvc.mak.in @@ -1,12 +1,15 @@ -# This makefile builds the user-mode component -# of OpenVPN for Windows in the Visual Studio 2008 environment. - -# To build: -# python win\config.py -# nmake /f msvc.mak - -# Each of the OPENSSL and LZO dirs should have 'lib' and 'include' -# directories under them. +# This makefile builds the user-mode component of OpenVPN for Windows in the +# Visual Studio 2008 environment. Note that this file is basis for the real +# makefile (..\msvc.mak) but unusable as is. The real makefile is automatically +# generated during the build process by the Python build scripts. +# +# A few details are in order: +# +# - Everything between @<< and << is inserted into a s.c. "in-line file". This +# file drives the linker (link.exe). +# - HEADERS_OBJS is expanded to all all header and source files listed in +# ..\Makefile.am +# - OPENSSL_DIR and LZO_DIR are dynamically created from settings.in OPENSSL = @OPENSSL_DIR@ OPENSSL_DYNAMIC = libeay32.lib ssleay32.lib @@ -18,9 +21,13 @@ INCLUDE_DIRS = -I$(OPENSSL)/include -I$(LZO)/include LIBS = $(OPENSSL_DYNAMIC) $(LZO_DYNAMIC) ws2_32.lib crypt32.lib iphlpapi.lib winmm.lib user32.lib gdi32.lib advapi32.lib wininet.lib +# Some of these libs may not be needed +SERVLIBS = ws2_32.lib crypt32.lib iphlpapi.lib winmm.lib user32.lib gdi32.lib advapi32.lib wininet.lib + LIB_DIRS = -LIBPATH:$(OPENSSL)\lib -LIBPATH:$(LZO)\lib EXE = openvpn.exe +SERVEXE = openvpnserv.exe CPP=cl.exe CPP_ARG_COMMON=/nologo /W3 -DWIN32 -DWIN32_LEAN_AND_MEAN -D_CONSOLE -D_MBCS -D_CRT_SECURE_NO_DEPRECATE $(INCLUDE_DIRS) /FD /c @@ -30,24 +37,31 @@ LINK32=link.exe !ifdef PRODUCT_OPENVPN_DEBUG # debug: CPP_PROJ=$(CPP_ARG_COMMON) /MD /Z7 -LINK32_FLAGS=/nologo /subsystem:console /incremental:no /opt:ref /opt:icf /debug /out:"$(EXE)" -# old debug: -#CPP_PROJ=$(CPP_ARG_COMMON) /MDd /Zi /Od -D_DEBUG -#LINK32_FLAGS=/nologo /subsystem:console /incremental:no /debug /out:"$(EXE)" +LINK32_FLAGS=/nologo /subsystem:console /incremental:no /opt:ref /opt:icf /debug !else # release: CPP_PROJ=$(CPP_ARG_COMMON) /O2 /MD -DNDEBUG -LINK32_FLAGS=/nologo /subsystem:console /incremental:no /out:"$(EXE)" +LINK32_FLAGS=/nologo /subsystem:console /incremental:no !endif -# HEADERS and OBJS definitions, automatically generated +# HEADERS and OBJS definitions, automatically generated from ../Makefile.am @HEADERS_OBJS@ +SERVOBJS = \ + openvpnserv.obj \ + service.obj + openvpn : $(OBJS) $(LINK32) @<< - $(LINK32_FLAGS) $(LIB_DIRS) $(LIBS) $(OBJS) + $(LINK32_FLAGS) "/out:$(EXE)" $(LIB_DIRS) $(LIBS) $(OBJS) << +openvpnserv : openvpn $(SERVOBJS) + $(LINK32) @<< + $(LINK32_FLAGS) "/out:$(SERVEXE)" $(SERVLIBS) $(SERVOBJS) +<< + + clean : del /Q $(OBJS) $(EXE) *.idb *.pdb -- 1.6.3.3