boinc/doc/ssl_build.txt

106 lines
3.1 KiB
Plaintext
Raw Normal View History

Boinc Core Client - HTTPS implementation
========================================
This document describes how to compile a BOINC client
that uses Secure Socket Layer (SSL) to communicate with servers.
This is not currently supported.
BUILD PROCEDURES
1 Build OpenSSL Static library which works with Boinc Client on Windows
1-1) Install Perl (to compile OpenSSL)
Download package.
URL: http://aspn.activestate.com/ASPN/Downloads/ActivePerl/index/
install.bat will start installation.
1-2) Download and install OpenSSL
URL: http://www.openssl.org/source/
2798433 Mar 17 13:13:26 2004 openssl-0.9.7d.tar.gz (PGP sign) [LATEST]
1-3) Download Assembler (to compile sslelay32.lib, libeay32.lib)
Download nasm.exe, and put it in some directory where %PATH% can find.
http://sourceforge.net/project/showfiles.php?group_id=6208
(Configure)
C:\openssl-0.9.7d>perl Configure VC-WIN32
(Build assembler code)
C:\openssl-0.9.7d>ms\do_nasm
* To compile debug library, need to add 'debug' option
in file 'do_nasm'.
perl util\mk1mf.pl debug nasm VC-WIN32 >ms\nt.mak
(Build main code)
C:\openssl-0.9.7d>nmake -f ms\nt.mak
* Before executing nt.mak, change make file 'nt.mak'
as follows:
For release build: /MD <20><> /MT, and
For debug build: /MDd <20><> /MTd
(Check library)
C:\openssl-0.9.7d>cd out32
C:\openssl-0.9.7d\out32>..\ms\test.bat
* If successfully build, you will see 'passed all tests'
messages
2 Build BOINC Client
To discriminate the libraries, rename library files:
- libeay32_release.lib ssleay32_release.lib for release build,
- and libeay32_debug.lib ssleay32_debug.lib for debug build.
2-1) Put all ssl libraries in the new directory 'SSL_Use'
(or other directories)
Directory: \boinc\SSL_Use\
(Optional) To discriminate core client executables, create new
.Net project and directory for executables:
BoincClient CUI:
Project name - boinc_cli_SSL ,
executables -
\boinc-2.19\SSL_Use\Build\Debug\boinc_cli_SSL.exe
\boinc-2.19\SSL_Use\Build\Release\boinc_cli_SSL.exe
BoincClient GUI
Project name - boinc_gui_SSL ,
executables -
\boinc-2.19\SSL_Use\Build\Debug\boinc_gui_SSL.exe
\boinc-2.19\SSL_Use\Build\Release\boinc_gui_SSL.exe
2-2) Change project configuration for boinc_gui_SSL and boinc_cli_SSL
[boinc_xxx_SSL project]-[properties]-[Linker]-[Input]
-[Additional Dependencies]
For release build:
(add) libeay32_release.lib ssleay32_release.lib
For debug build:
(add) libeay32_debug.lib ssleay32_debug.lib
[boinc_xxx_SSL project]-[properties]-[C/C++]-[General]
-[Additional Include Directories]
For release build:
(add) ../openssl-0.9.7d/inc32/
For debug build:
(add) ../openssl-0.9.7d/inc32/
2-3) Build projects