summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSamuli Seppänen <samuli@openvpn.net>2011-02-11 16:25:40 +0200
committerDavid Sommerseth <dazo@users.sourceforge.net>2011-02-27 00:59:04 +0100
commit4e4aa65e9df1bfe4b9726eacea2c75cad32c0927 (patch)
tree911f6c1f12cd8e8e9c2856b61a33594a15305167
parent26e127cd59e07825a0785db2247fdac76ff01693 (diff)
downloadopenvpn-4e4aa65e9df1bfe4b9726eacea2c75cad32c0927.tar.gz
openvpn-4e4aa65e9df1bfe4b9726eacea2c75cad32c0927.tar.xz
openvpn-4e4aa65e9df1bfe4b9726eacea2c75cad32c0927.zip
Several modifications to win/make_dist.py to allow building the NSI installer
Added copying of all remaining openvpn dependencies to dist directory so that the NSI installer script (win/openvpn.nsi) can find and use them more easily. This includes openvpn.exe, openvpnserv.exe, libpkcs11-helper-1.dll, openssl.exe, and example files. The associated, external DDL/manifest files are copied also, so that embedding them with mt.exe is easier. This is a temporary solution until nmake makefiles are modified to automate this process, except for a few of the library dependencies (lzo2.dll and libpkcs11-helper-1.dll). Signed-off-by: Samuli Seppänen <samuli@openvpn.net> Acked-by: James Yonan <james@openvpn.net> Signed-off-by: David Sommerseth <dazo@users.sourceforge.net>
-rw-r--r--win/make_dist.py28
1 files changed, 25 insertions, 3 deletions
diff --git a/win/make_dist.py b/win/make_dist.py
index a6a0563..70aaa60 100644
--- a/win/make_dist.py
+++ b/win/make_dist.py
@@ -1,5 +1,5 @@
import os
-from wb import home_fn, rm_rf, mkdir, cp_a, cp
+from wb import home_fn, rm_rf, mkdir, cp_a, cp, rename
def main(config, tap=True):
dist = config['DIST']
@@ -8,6 +8,7 @@ def main(config, tap=True):
bin = os.path.join(dist, 'bin')
i386 = os.path.join(dist, 'i386')
amd64 = os.path.join(dist, 'amd64')
+ samples = os.path.join(dist, 'samples')
# build dist and subdirectories
rm_rf(dist)
@@ -16,15 +17,34 @@ def main(config, tap=True):
if tap:
mkdir(i386)
mkdir(amd64)
+ mkdir(samples)
- # copy openvpn.exe and manifest
+ # copy openvpn.exe, openvpnserv.exe and their manifests
cp(home_fn('openvpn.exe'), bin)
cp(home_fn('openvpn.exe.manifest'), bin)
+ cp(home_fn('service-win32/openvpnserv.exe'), bin)
+ cp(home_fn('service-win32/openvpnserv.exe.manifest'), bin)
+
+ # copy openvpn-gui
+ cp(home_fn(config['OPENVPN_GUI_DIR']+"/"+config['OPENVPN_GUI']), bin)
# copy DLL dependencies
cp(home_fn(config['LZO_DIR']+'/bin/lzo2.dll'), bin)
+ cp(home_fn(config['LZO_DIR']+'/bin/lzo2.dll.manifest'), bin)
cp(home_fn(config['OPENSSL_DIR']+'/bin/libeay32.dll'), bin)
cp(home_fn(config['OPENSSL_DIR']+'/bin/ssleay32.dll'), bin)
+ cp(home_fn(config['PKCS11_HELPER_DIR']+'/lib/libpkcs11-helper-1.dll'), bin)
+ cp(home_fn(config['PKCS11_HELPER_DIR']+'/lib/libpkcs11-helper-1.dll.manifest'), bin)
+
+ # copy OpenSSL utilities (=openvpn.exe)
+ cp(home_fn(config['OPENSSL_DIR']+'/bin/openssl.exe'), bin)
+
+ # copy sample config files; renaming is necessary due to openvpn.nsi script
+ cp(home_fn('install-win32/sample.ovpn'), samples)
+ cp(home_fn('sample-config-files/client.conf'), samples)
+ cp(home_fn('sample-config-files/server.conf'), samples)
+ rename(os.path.join(samples,'client.conf'), os.path.join(samples, 'client.ovpn'))
+ rename(os.path.join(samples,'server.conf'), os.path.join(samples, 'server.ovpn'))
# copy MSVC CRT
cp_a(home_fn(config['MSVC_CRT']), bin)
@@ -40,16 +60,18 @@ def main(config, tap=True):
cp(os.path.join(dir, f), dest)
break
- # copy tapinstall
+ # Copy tapinstall.exe (usually known as devcon.exe)
dest = {'amd64' : amd64, 'i386' : i386}
for dirpath, dirnames, filenames in os.walk(home_fn('tapinstall')):
for f in filenames:
if f == 'tapinstall.exe':
+ # dir_name is either i386 or amd64
dir_name = os.path.basename(dirpath)
src = os.path.join(dirpath, f)
if dir_name in dest:
cp(src, dest[dir_name])
+
# if we are run directly, and not loaded as a module
if __name__ == "__main__":
from wb import config