forked from premiere/premiere-libtorrent
added more fixes to Jamfile in order to make it build on windows
This commit is contained in:
parent
3e4a136be7
commit
97099dc0ca
97
Jamfile
97
Jamfile
|
@ -19,16 +19,24 @@ if ! $(BOOST_ROOT)
|
||||||
|
|
||||||
use-project /boost : $(BOOST_ROOT) ;
|
use-project /boost : $(BOOST_ROOT) ;
|
||||||
|
|
||||||
# rule for linking the correct library when using openssl
|
# rule for linking the correct libraries depending
|
||||||
rule link-openssl ( properties * )
|
# on features and target-os
|
||||||
|
rule linking ( properties * )
|
||||||
{
|
{
|
||||||
local result ;
|
local result ;
|
||||||
|
|
||||||
|
# openssl libraries, if enabled
|
||||||
if <openssl>sha-1 in $(properties) || <openssl>pe in $(properties)
|
if <openssl>sha-1 in $(properties) || <openssl>pe in $(properties)
|
||||||
{
|
{
|
||||||
if [ os.name ] = NT
|
if <target-os>windows in $(properties)
|
||||||
{
|
{
|
||||||
result += <library>ssleay <library>libeay ;
|
result += <library>ssleay32
|
||||||
|
<library>libeay32
|
||||||
|
<library>advapi32
|
||||||
|
<library>user32
|
||||||
|
<library>shell32
|
||||||
|
<library>gdi32
|
||||||
|
;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
@ -36,11 +44,31 @@ rule link-openssl ( properties * )
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
# socket functions on windows require winsock libraries
|
||||||
|
if <target-os>windows in $(properties) || <target-os>cygwin in $(properties)
|
||||||
|
{
|
||||||
|
result += <library>ws2_32
|
||||||
|
<library>wsock32
|
||||||
|
<define>WIN32_LEAN_AND_MEAN
|
||||||
|
<define>_WIN32_WINNT=0x0500
|
||||||
|
<define>__USE_W32_SOCKETS
|
||||||
|
<define>WIN32
|
||||||
|
<define>_WIN32
|
||||||
|
;
|
||||||
|
}
|
||||||
|
|
||||||
|
# clock_gettime on linux requires librt
|
||||||
|
if <target-os>linux in $(properties)
|
||||||
|
{
|
||||||
|
result += <library>rt ;
|
||||||
|
}
|
||||||
|
|
||||||
return $(result) ;
|
return $(result) ;
|
||||||
}
|
}
|
||||||
|
|
||||||
# rule for adding the right source files when using openssl and/or PE
|
# rule for adding the right source files
|
||||||
rule use-openssl ( properties * )
|
# depending on target-os and features
|
||||||
|
rule building ( properties * )
|
||||||
{
|
{
|
||||||
local result ;
|
local result ;
|
||||||
|
|
||||||
|
@ -56,6 +84,15 @@ rule use-openssl ( properties * )
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if <target-os>windows in $(properties)
|
||||||
|
{
|
||||||
|
result += <source>src/file_win.cpp ;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
result += <source>src/file.cpp ;
|
||||||
|
}
|
||||||
|
|
||||||
return $(result) ;
|
return $(result) ;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -88,11 +125,27 @@ feature.compose <statistics>on : <define>TORRENT_STATS ;
|
||||||
feature upnp-logging : off on : composite propagated link-incompatible ;
|
feature upnp-logging : off on : composite propagated link-incompatible ;
|
||||||
feature.compose <upnp-logging>on : <define>TORRENT_UPNP_LOGGING ;
|
feature.compose <upnp-logging>on : <define>TORRENT_UPNP_LOGGING ;
|
||||||
|
|
||||||
lib ssleay : : <name>ssleay32 ;
|
# required for openssl on windows
|
||||||
lib libeay : : <name>libeay32 ;
|
lib ssleay32 : : <name>ssleay32 ;
|
||||||
|
lib libeay32 : : <name>libeay32 ;
|
||||||
|
lib advapi32 : : <name>Advapi32 ;
|
||||||
|
lib user32 : : <name>User32 ;
|
||||||
|
lib shell32 : : <name>shell32 ;
|
||||||
|
lib gdi32 : : <name>gdi32 ;
|
||||||
|
|
||||||
|
# openssl on linux/bsd/macos etc.
|
||||||
lib crypto : : <name>crypto ;
|
lib crypto : : <name>crypto ;
|
||||||
|
|
||||||
|
# time functions used on linux require librt
|
||||||
|
lib librt : : <name>rt ;
|
||||||
|
|
||||||
|
# libz
|
||||||
lib zlib-target : : <name>z ;
|
lib zlib-target : : <name>z ;
|
||||||
|
|
||||||
|
# socket libraries on windows
|
||||||
|
lib wsock32 : : <name>wsock32 ;
|
||||||
|
lib ws2_32 : : <name>ws2_32 ;
|
||||||
|
|
||||||
SOURCES =
|
SOURCES =
|
||||||
allocate_resources
|
allocate_resources
|
||||||
alert
|
alert
|
||||||
|
@ -160,26 +213,6 @@ ZLIB_SOURCES =
|
||||||
zutil
|
zutil
|
||||||
;
|
;
|
||||||
|
|
||||||
local defines ;
|
|
||||||
local libs ;
|
|
||||||
|
|
||||||
if [ os.name ] = CYGWIN || [ os.name ] = NT
|
|
||||||
{
|
|
||||||
lib wsock32 : : <name>wsock32 ;
|
|
||||||
lib ws2_32 : : <name>ws2_32 ;
|
|
||||||
libs += ws2_32 wsock32 ;
|
|
||||||
defines += WIN32_LEAN_AND_MEAN ;
|
|
||||||
defines += _WIN32_WINNT=0x0500 ;
|
|
||||||
defines += __USE_W32_SOCKETS ;
|
|
||||||
defines += WIN32 ;
|
|
||||||
defines += _WIN32 ;
|
|
||||||
SOURCES += file_win ;
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
SOURCES += file ;
|
|
||||||
}
|
|
||||||
|
|
||||||
local usage-requirements =
|
local usage-requirements =
|
||||||
<include>./include
|
<include>./include
|
||||||
<include>./include/libtorrent
|
<include>./include/libtorrent
|
||||||
|
@ -188,10 +221,9 @@ local usage-requirements =
|
||||||
<variant>release:<define>NDEBUG
|
<variant>release:<define>NDEBUG
|
||||||
<define>BOOST_ALL_NO_LIB
|
<define>BOOST_ALL_NO_LIB
|
||||||
<define>_FILE_OFFSET_BITS=64
|
<define>_FILE_OFFSET_BITS=64
|
||||||
<define>$(defines)
|
|
||||||
<library>/boost/thread//boost_thread #/<link>static
|
<library>/boost/thread//boost_thread #/<link>static
|
||||||
<library>/boost/filesystem//boost_filesystem #/<link>static
|
<library>/boost/filesystem//boost_filesystem #/<link>static
|
||||||
<conditional>@link-openssl
|
<conditional>@linking
|
||||||
<zlib>system:<library>zlib-target
|
<zlib>system:<library>zlib-target
|
||||||
# these compiler settings just makes the compiler standard conforming
|
# these compiler settings just makes the compiler standard conforming
|
||||||
<toolset>msvc:<cxxflags>/Zc:wchar_t
|
<toolset>msvc:<cxxflags>/Zc:wchar_t
|
||||||
|
@ -201,11 +233,12 @@ local usage-requirements =
|
||||||
<toolset>msvc:<define>_CRT_SECURE_NO_DEPRECATE
|
<toolset>msvc:<define>_CRT_SECURE_NO_DEPRECATE
|
||||||
;
|
;
|
||||||
|
|
||||||
|
project torrent ;
|
||||||
|
|
||||||
lib torrent
|
lib torrent
|
||||||
|
|
||||||
: # sources
|
: # sources
|
||||||
src/$(SOURCES).cpp
|
src/$(SOURCES).cpp
|
||||||
$(libs)
|
|
||||||
|
|
||||||
: # requirements
|
: # requirements
|
||||||
<define>BOOST_THREAD_USE_LIB
|
<define>BOOST_THREAD_USE_LIB
|
||||||
|
@ -214,7 +247,7 @@ lib torrent
|
||||||
<dht-support>on:<source>src/$(KADEMLIA_SOURCES).cpp
|
<dht-support>on:<source>src/$(KADEMLIA_SOURCES).cpp
|
||||||
<dht-support>logging:<source>src/$(KADEMLIA_SOURCES).cpp
|
<dht-support>logging:<source>src/$(KADEMLIA_SOURCES).cpp
|
||||||
<zlib>shipped:<source>zlib/$(ZLIB_SOURCES).c
|
<zlib>shipped:<source>zlib/$(ZLIB_SOURCES).c
|
||||||
<conditional>@use-openssl
|
<conditional>@building
|
||||||
$(usage-requirements)
|
$(usage-requirements)
|
||||||
|
|
||||||
: # default build
|
: # default build
|
||||||
|
|
|
@ -1039,8 +1039,9 @@ int main(int ac, char* av[])
|
||||||
else if (i->blocks[j].state == block_info::requested) out << str;
|
else if (i->blocks[j].state == block_info::requested) out << str;
|
||||||
else out << " ";
|
else out << " ";
|
||||||
#else
|
#else
|
||||||
if (i->finished_blocks[j]) out << "#";
|
if (i->blocks[j].state == block_info::finished) out << "#";
|
||||||
else if (i->requested_blocks[j]) out << str;
|
else if (i->blocks[j].state == block_info::writing) out << "+";
|
||||||
|
else if (i->blocks[j].state == block_info::requested) out << str;
|
||||||
else out << " ";
|
else out << " ";
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue