disable debug iterators in simulations on windows, since exception safety is compromised
This commit is contained in:
parent
fac9931eb6
commit
98419aee12
11
Jamfile
11
Jamfile
|
@ -480,9 +480,14 @@ feature.compose <deprecated-functions>off : <define>TORRENT_NO_DEPRECATE ;
|
||||||
|
|
||||||
feature boost-link : default static shared : propagated composite ;
|
feature boost-link : default static shared : propagated composite ;
|
||||||
|
|
||||||
feature debug-iterators : off on : composite propagated link-incompatible ;
|
# msvc enables debug iterators by default in debug builds whereas GCC and
|
||||||
feature.compose <debug-iterators>on : <define>_SCL_SECURE=1 <define>_GLIBCXX_DEBUG
|
# clang do not, that's why "default" is there. msvc has incorrect noexcept
|
||||||
|
# constructors on some containers when enabling debug iterators, so it's
|
||||||
|
# possible to turn them off
|
||||||
|
feature debug-iterators : default off on : composite propagated link-incompatible ;
|
||||||
|
feature.compose <debug-iterators>on : <define>_ITERATOR_DEBUG_LEVEL=2 <define>_GLIBCXX_DEBUG
|
||||||
<define>_GLIBCXX_DEBUG_PEDANTIC ;
|
<define>_GLIBCXX_DEBUG_PEDANTIC ;
|
||||||
|
feature.compose <debug-iterators>off : <define>_ITERATOR_DEBUG_LEVEL=0 ;
|
||||||
|
|
||||||
feature fpic : off on : composite propagated link-incompatible ;
|
feature fpic : off on : composite propagated link-incompatible ;
|
||||||
feature.compose <fpic>on : <cflags>-fPIC ;
|
feature.compose <fpic>on : <cflags>-fPIC ;
|
||||||
|
@ -508,7 +513,7 @@ feature.compose <export-extra>on : <define>TORRENT_EXPORT_EXTRA ;
|
||||||
variant test_release : release
|
variant test_release : release
|
||||||
: <asserts>production <debug-symbols>on
|
: <asserts>production <debug-symbols>on
|
||||||
<invariant-checks>full <boost-link>shared <optimization>off
|
<invariant-checks>full <boost-link>shared <optimization>off
|
||||||
<export-extra>on <debug-iterators>on <threading>multi
|
<export-extra>on <threading>multi
|
||||||
<inlining>on <deprecated-functions>off
|
<inlining>on <deprecated-functions>off
|
||||||
;
|
;
|
||||||
variant test_debug : debug
|
variant test_debug : debug
|
||||||
|
|
18
appveyor.yml
18
appveyor.yml
|
@ -68,32 +68,32 @@ cache:
|
||||||
build_script:
|
build_script:
|
||||||
# examples
|
# examples
|
||||||
- cd %ROOT_DIRECTORY%\examples
|
- cd %ROOT_DIRECTORY%\examples
|
||||||
- b2.exe --hash openssl-version=pre1.1 warnings-as-errors=on -j2 %compiler% address-model=%model% debug-iterators=on picker-debugging=on invariant-checks=full variant=%variant% %linkflags% %include% link=shared crypto=%crypto%
|
- b2.exe --hash openssl-version=pre1.1 warnings-as-errors=on -j2 %compiler% address-model=%model% picker-debugging=on invariant-checks=full variant=%variant% %linkflags% %include% link=shared crypto=%crypto%
|
||||||
|
|
||||||
# tools
|
# tools
|
||||||
- cd %ROOT_DIRECTORY%\tools
|
- cd %ROOT_DIRECTORY%\tools
|
||||||
- b2.exe --hash openssl-version=pre1.1 warnings-as-errors=on -j2 %compiler% address-model=%model% debug-iterators=on picker-debugging=on invariant-checks=full variant=%variant% %linkflags% %include% link=shared crypto=%crypto%
|
- b2.exe --hash openssl-version=pre1.1 warnings-as-errors=on -j2 %compiler% address-model=%model% picker-debugging=on invariant-checks=full variant=%variant% %linkflags% %include% link=shared crypto=%crypto%
|
||||||
|
|
||||||
# test
|
# test
|
||||||
- cd %ROOT_DIRECTORY%\test
|
- cd %ROOT_DIRECTORY%\test
|
||||||
- b2.exe --hash openssl-version=pre1.1 warnings-as-errors=on -j2 %compiler% address-model=%model% debug-iterators=on picker-debugging=on invariant-checks=full variant=%variant% %linkflags% %include% link=shared crypto=%crypto% win-tests test_upnp test_natpmp testing.execute=off
|
- b2.exe --hash openssl-version=pre1.1 warnings-as-errors=on -j2 %compiler% address-model=%model% picker-debugging=on invariant-checks=full variant=%variant% %linkflags% %include% link=shared crypto=%crypto% win-tests test_upnp test_natpmp testing.execute=off
|
||||||
|
|
||||||
# python binding
|
# python binding
|
||||||
- cd %ROOT_DIRECTORY%\bindings\python
|
- cd %ROOT_DIRECTORY%\bindings\python
|
||||||
# we use 64 bit python builds
|
# we use 64 bit python builds
|
||||||
- if defined python (
|
- if defined python (
|
||||||
b2.exe --hash openssl-version=pre1.1 warnings-as-errors=on -j2 %compiler% address-model=%model% debug-iterators=on picker-debugging=on invariant-checks=full variant=%variant% %linkflags% %include% link=shared crypto=%crypto% libtorrent-link=shared stage_module stage_dependencies
|
b2.exe --hash openssl-version=pre1.1 warnings-as-errors=on -j2 %compiler% address-model=%model% picker-debugging=on invariant-checks=full variant=%variant% %linkflags% %include% link=shared crypto=%crypto% libtorrent-link=shared stage_module stage_dependencies
|
||||||
)
|
)
|
||||||
|
|
||||||
# simulations
|
# simulations
|
||||||
- cd %ROOT_DIRECTORY%\simulation
|
- cd %ROOT_DIRECTORY%\simulation
|
||||||
- if defined sim (
|
- if defined sim (
|
||||||
b2.exe --hash openssl-version=pre1.1 warnings-as-errors=on -j2 %compiler% address-model=%model% debug-iterators=on picker-debugging=on invariant-checks=full variant=%variant% deprecated-functions=off %linkflags% %include% link=shared crypto=built-in testing.execute=off
|
b2.exe --hash openssl-version=pre1.1 warnings-as-errors=on -j2 %compiler% address-model=%model% picker-debugging=on invariant-checks=full variant=%variant% deprecated-functions=off %linkflags% %include% link=shared crypto=built-in testing.execute=off
|
||||||
)
|
)
|
||||||
|
|
||||||
test_script:
|
test_script:
|
||||||
- cd %ROOT_DIRECTORY%\test
|
- cd %ROOT_DIRECTORY%\test
|
||||||
- appveyor-retry b2.exe -l400 --hash openssl-version=pre1.1 warnings-as-errors=on -j2 %compiler% address-model=%model% debug-iterators=on picker-debugging=on invariant-checks=full variant=%variant% %linkflags% %include% link=shared crypto=%crypto% win-tests
|
- appveyor-retry b2.exe -l400 --hash openssl-version=pre1.1 warnings-as-errors=on -j2 %compiler% address-model=%model% picker-debugging=on invariant-checks=full variant=%variant% %linkflags% %include% link=shared crypto=%crypto% win-tests
|
||||||
|
|
||||||
- cd %ROOT_DIRECTORY%\bindings\python
|
- cd %ROOT_DIRECTORY%\bindings\python
|
||||||
# we use 64 bit python build
|
# we use 64 bit python build
|
||||||
|
@ -103,7 +103,11 @@ test_script:
|
||||||
)
|
)
|
||||||
|
|
||||||
# simulation tests
|
# simulation tests
|
||||||
|
# debug iterators are turned off here because msvc has issues with noexcept
|
||||||
|
# specifiers when debug iterators are enabled. Specifically, constructors that
|
||||||
|
# allocate memory are still marked as noexcept. That results in program
|
||||||
|
# termination
|
||||||
- cd %ROOT_DIRECTORY%\simulation
|
- cd %ROOT_DIRECTORY%\simulation
|
||||||
- if defined sim (
|
- if defined sim (
|
||||||
b2.exe --hash openssl-version=pre1.1 warnings-as-errors=on -j2 %compiler% address-model=%model% debug-iterators=on picker-debugging=on invariant-checks=full variant=%variant% %linkflags% %include% boost-link=default link=static crypto=built-in
|
b2.exe --hash openssl-version=pre1.1 warnings-as-errors=on -j2 %compiler% address-model=%model% debug-iterators=off picker-debugging=on invariant-checks=full test_debug %linkflags% %include% boost-link=default link=static crypto=built-in
|
||||||
)
|
)
|
||||||
|
|
|
@ -21,7 +21,6 @@ project
|
||||||
: default-build
|
: default-build
|
||||||
<threading>multi
|
<threading>multi
|
||||||
<invariant-checks>full
|
<invariant-checks>full
|
||||||
<debug-iterators>on
|
|
||||||
<asserts>on
|
<asserts>on
|
||||||
<picker-debugging>on
|
<picker-debugging>on
|
||||||
;
|
;
|
||||||
|
|
|
@ -15,7 +15,6 @@ exe test_natpmp : test_natpmp.cpp
|
||||||
<invariant-checks>full
|
<invariant-checks>full
|
||||||
<link>shared
|
<link>shared
|
||||||
<picker-debugging>on
|
<picker-debugging>on
|
||||||
<debug-iterators>on
|
|
||||||
<logging>on
|
<logging>on
|
||||||
;
|
;
|
||||||
|
|
||||||
|
@ -31,7 +30,6 @@ exe enum_if : enum_if.cpp
|
||||||
<invariant-checks>full
|
<invariant-checks>full
|
||||||
<link>shared
|
<link>shared
|
||||||
<picker-debugging>on
|
<picker-debugging>on
|
||||||
<debug-iterators>on
|
|
||||||
<logging>on
|
<logging>on
|
||||||
;
|
;
|
||||||
|
|
||||||
|
@ -96,7 +94,6 @@ project
|
||||||
<invariant-checks>full
|
<invariant-checks>full
|
||||||
<link>shared
|
<link>shared
|
||||||
<picker-debugging>on
|
<picker-debugging>on
|
||||||
<debug-iterators>on
|
|
||||||
<logging>on
|
<logging>on
|
||||||
;
|
;
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue